react-native-daro 1.0.12 → 1.0.13
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/darom/impl/DaroMRewardedAdModuleImpl.kt +8 -2
- package/ios/DaroMAdBannerViewManager.swift +4 -0
- package/lib/commonjs/AppOpenAd.js +129 -70
- package/lib/commonjs/AppOpenAd.js.map +1 -1
- package/lib/commonjs/EventEmitter.js +39 -11
- package/lib/commonjs/EventEmitter.js.map +1 -1
- package/lib/commonjs/InterstitialAd.js +129 -70
- package/lib/commonjs/InterstitialAd.js.map +1 -1
- package/lib/commonjs/LightPopupAd.js +143 -80
- package/lib/commonjs/LightPopupAd.js.map +1 -1
- package/lib/commonjs/RewardedAd.js +138 -80
- package/lib/commonjs/RewardedAd.js.map +1 -1
- package/lib/commonjs/index.js +0 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/types/AdEvent.js +17 -0
- package/lib/commonjs/types/AdEvent.js.map +1 -1
- package/lib/module/AppOpenAd.js +129 -71
- package/lib/module/AppOpenAd.js.map +1 -1
- package/lib/module/EventEmitter.js +37 -10
- package/lib/module/EventEmitter.js.map +1 -1
- package/lib/module/InterstitialAd.js +130 -72
- package/lib/module/InterstitialAd.js.map +1 -1
- package/lib/module/LightPopupAd.js +145 -83
- package/lib/module/LightPopupAd.js.map +1 -1
- package/lib/module/RewardedAd.js +139 -82
- package/lib/module/RewardedAd.js.map +1 -1
- package/lib/module/index.js +0 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/types/AdEvent.js +18 -1
- package/lib/module/types/AdEvent.js.map +1 -1
- package/lib/typescript/commonjs/src/AppOpenAd.d.ts +47 -2
- package/lib/typescript/commonjs/src/AppOpenAd.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/EventEmitter.d.ts +9 -1
- package/lib/typescript/commonjs/src/EventEmitter.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/InterstitialAd.d.ts +47 -2
- package/lib/typescript/commonjs/src/InterstitialAd.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/LightPopupAd.d.ts +51 -2
- package/lib/typescript/commonjs/src/LightPopupAd.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/RewardedAd.d.ts +51 -2
- package/lib/typescript/commonjs/src/RewardedAd.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/index.d.ts +1 -1
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/types/AdEvent.d.ts +24 -0
- package/lib/typescript/commonjs/src/types/AdEvent.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/types/LightPopupAd.d.ts +1 -5
- package/lib/typescript/commonjs/src/types/LightPopupAd.d.ts.map +1 -1
- package/lib/typescript/module/src/AppOpenAd.d.ts +47 -2
- package/lib/typescript/module/src/AppOpenAd.d.ts.map +1 -1
- package/lib/typescript/module/src/EventEmitter.d.ts +9 -1
- package/lib/typescript/module/src/EventEmitter.d.ts.map +1 -1
- package/lib/typescript/module/src/InterstitialAd.d.ts +47 -2
- package/lib/typescript/module/src/InterstitialAd.d.ts.map +1 -1
- package/lib/typescript/module/src/LightPopupAd.d.ts +51 -2
- package/lib/typescript/module/src/LightPopupAd.d.ts.map +1 -1
- package/lib/typescript/module/src/RewardedAd.d.ts +51 -2
- package/lib/typescript/module/src/RewardedAd.d.ts.map +1 -1
- package/lib/typescript/module/src/index.d.ts +1 -1
- package/lib/typescript/module/src/index.d.ts.map +1 -1
- package/lib/typescript/module/src/types/AdEvent.d.ts +24 -0
- package/lib/typescript/module/src/types/AdEvent.d.ts.map +1 -1
- package/lib/typescript/module/src/types/LightPopupAd.d.ts +1 -5
- package/lib/typescript/module/src/types/LightPopupAd.d.ts.map +1 -1
- package/package.json +6 -2
- package/react-native-daro-m.podspec +1 -1
- package/src/AppOpenAd.ts +172 -104
- package/src/EventEmitter.ts +60 -14
- package/src/InterstitialAd.ts +159 -103
- package/src/LightPopupAd.ts +183 -97
- package/src/RewardedAd.ts +181 -122
- package/src/index.tsx +19 -11
- package/src/types/AdEvent.ts +39 -2
- package/src/types/LightPopupAd.ts +2 -7
- package/lib/commonjs/types/AppOpenAd.js +0 -6
- package/lib/commonjs/types/AppOpenAd.js.map +0 -1
- package/lib/commonjs/types/FullScreenAd.js +0 -6
- package/lib/commonjs/types/FullScreenAd.js.map +0 -1
- package/lib/commonjs/types/InterstitialAd.js +0 -6
- package/lib/commonjs/types/InterstitialAd.js.map +0 -1
- package/lib/commonjs/types/RewardedAd.js +0 -6
- package/lib/commonjs/types/RewardedAd.js.map +0 -1
- package/lib/module/types/AppOpenAd.js +0 -4
- package/lib/module/types/AppOpenAd.js.map +0 -1
- package/lib/module/types/FullScreenAd.js +0 -4
- package/lib/module/types/FullScreenAd.js.map +0 -1
- package/lib/module/types/InterstitialAd.js +0 -4
- package/lib/module/types/InterstitialAd.js.map +0 -1
- package/lib/module/types/RewardedAd.js +0 -4
- package/lib/module/types/RewardedAd.js.map +0 -1
- package/lib/typescript/commonjs/src/types/AppOpenAd.d.ts +0 -3
- package/lib/typescript/commonjs/src/types/AppOpenAd.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/types/FullScreenAd.d.ts +0 -21
- package/lib/typescript/commonjs/src/types/FullScreenAd.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/types/InterstitialAd.d.ts +0 -3
- package/lib/typescript/commonjs/src/types/InterstitialAd.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/types/RewardedAd.d.ts +0 -9
- package/lib/typescript/commonjs/src/types/RewardedAd.d.ts.map +0 -1
- package/lib/typescript/module/src/types/AppOpenAd.d.ts +0 -3
- package/lib/typescript/module/src/types/AppOpenAd.d.ts.map +0 -1
- package/lib/typescript/module/src/types/FullScreenAd.d.ts +0 -21
- package/lib/typescript/module/src/types/FullScreenAd.d.ts.map +0 -1
- package/lib/typescript/module/src/types/InterstitialAd.d.ts +0 -3
- package/lib/typescript/module/src/types/InterstitialAd.d.ts.map +0 -1
- package/lib/typescript/module/src/types/RewardedAd.d.ts +0 -9
- package/lib/typescript/module/src/types/RewardedAd.d.ts.map +0 -1
- package/src/types/AppOpenAd.ts +0 -3
- package/src/types/FullScreenAd.ts +0 -28
- package/src/types/InterstitialAd.ts +0 -3
- package/src/types/RewardedAd.ts +0 -15
|
@@ -1,4 +1,53 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
1
|
+
import type { AdDisplayFailedInfo, AdInfo, AdLoadFailedInfo, AdRewardInfo } from './types/AdInfo';
|
|
2
|
+
import { AdEventType, RewardedAdEventType, type RewardedAdEventPayloadMap } from './types/AdEvent';
|
|
3
|
+
export declare class RewardedAd {
|
|
4
|
+
private readonly adUnitId;
|
|
5
|
+
private readonly eventEmitter;
|
|
6
|
+
private constructor();
|
|
7
|
+
static createForAdRequest(adUnitId: string): RewardedAd;
|
|
8
|
+
isAdReady(): Promise<boolean>;
|
|
9
|
+
load(): void;
|
|
10
|
+
show(customData?: string | null): void;
|
|
11
|
+
addAdEventListener<T extends AdEventType | RewardedAdEventType>(type: T, listener: (info: RewardedAdEventPayloadMap[T]) => void): () => void;
|
|
12
|
+
removeAllListeners(): void;
|
|
13
|
+
/** @deprecated `RewardedAd.createForAdRequest(adUnitId)` 인스턴스의 `isAdReady()`를 사용하세요. */
|
|
14
|
+
static isAdReady(adUnitId: string): Promise<boolean>;
|
|
15
|
+
/** @deprecated `RewardedAd.createForAdRequest(adUnitId)` 인스턴스의 `load()`를 사용하세요. */
|
|
16
|
+
static loadAd(adUnitId: string): void;
|
|
17
|
+
/** @deprecated `RewardedAd.createForAdRequest(adUnitId)` 인스턴스의 `show()`를 사용하세요. */
|
|
18
|
+
static showAd(adUnitId: string, customData?: string | null): void;
|
|
19
|
+
/** @deprecated `addAdEventListener(AdEventType.LOADED, ...)`를 인스턴스에서 사용하세요. */
|
|
20
|
+
static addAdLoadedEventListener(listener: (adInfo: AdInfo) => void): void;
|
|
21
|
+
/** @deprecated 인스턴스의 `addAdEventListener` disposer를 사용하세요. */
|
|
22
|
+
static removeAdLoadedEventListener(): void;
|
|
23
|
+
/** @deprecated `addAdEventListener(AdEventType.LOAD_FAILED, ...)`를 인스턴스에서 사용하세요. */
|
|
24
|
+
static addAdLoadFailedEventListener(listener: (errorInfo: AdLoadFailedInfo) => void): void;
|
|
25
|
+
/** @deprecated 인스턴스의 `addAdEventListener` disposer를 사용하세요. */
|
|
26
|
+
static removeAdLoadFailedEventListener(): void;
|
|
27
|
+
/** @deprecated `addAdEventListener(AdEventType.CLICKED, ...)`를 인스턴스에서 사용하세요. */
|
|
28
|
+
static addAdClickedEventListener(listener: (adInfo: AdInfo) => void): void;
|
|
29
|
+
/** @deprecated 인스턴스의 `addAdEventListener` disposer를 사용하세요. */
|
|
30
|
+
static removeAdClickedEventListener(): void;
|
|
31
|
+
/** @deprecated `addAdEventListener(AdEventType.DISPLAYED, ...)`를 인스턴스에서 사용하세요. */
|
|
32
|
+
static addAdDisplayedEventListener(listener: (adInfo: AdInfo) => void): void;
|
|
33
|
+
/** @deprecated 인스턴스의 `addAdEventListener` disposer를 사용하세요. */
|
|
34
|
+
static removeAdDisplayedEventListener(): void;
|
|
35
|
+
/** @deprecated `addAdEventListener(AdEventType.FAILED_TO_DISPLAY, ...)`를 인스턴스에서 사용하세요. */
|
|
36
|
+
static addAdFailedToDisplayEventListener(listener: (errorInfo: AdDisplayFailedInfo) => void): void;
|
|
37
|
+
/** @deprecated 인스턴스의 `addAdEventListener` disposer를 사용하세요. */
|
|
38
|
+
static removeAdFailedToDisplayEventListener(): void;
|
|
39
|
+
/** @deprecated `addAdEventListener(AdEventType.HIDDEN, ...)`를 인스턴스에서 사용하세요. */
|
|
40
|
+
static addAdHiddenEventListener(listener: (adInfo: AdInfo) => void): void;
|
|
41
|
+
/** @deprecated 인스턴스의 `addAdEventListener` disposer를 사용하세요. */
|
|
42
|
+
static removeAdHiddenEventListener(): void;
|
|
43
|
+
/** @deprecated `addAdEventListener(AdEventType.IMPRESSION_RECORDED, ...)`를 인스턴스에서 사용하세요. */
|
|
44
|
+
static addAdImpressionRecordedListener(listener: (adInfo: AdInfo) => void): void;
|
|
45
|
+
/** @deprecated 인스턴스의 `addAdEventListener` disposer를 사용하세요. */
|
|
46
|
+
static removeAdImpressionRecordedListener(): void;
|
|
47
|
+
/** @deprecated `addAdEventListener(RewardedAdEventType.RECEIVED_REWARD, ...)`를 인스턴스에서 사용하세요. */
|
|
48
|
+
static addAdReceivedRewardEventListener(listener: (adInfo: AdRewardInfo) => void): void;
|
|
49
|
+
/** @deprecated 인스턴스의 `addAdEventListener` disposer를 사용하세요. */
|
|
50
|
+
static removeAdReceivedRewardEventListener(): void;
|
|
51
|
+
}
|
|
3
52
|
export default RewardedAd;
|
|
4
53
|
//# sourceMappingURL=RewardedAd.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RewardedAd.d.ts","sourceRoot":"","sources":["../../../../src/RewardedAd.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RewardedAd.d.ts","sourceRoot":"","sources":["../../../../src/RewardedAd.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,mBAAmB,EACnB,MAAM,EACN,gBAAgB,EAChB,YAAY,EACb,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,KAAK,yBAAyB,EAC/B,MAAM,iBAAiB,CAAC;AA2BzB,qBAAa,UAAU;IAGD,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAF7C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwB;IAErD,OAAO;IAEP,MAAM,CAAC,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU;IAIvD,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAI7B,IAAI,IAAI,IAAI;IAIZ,IAAI,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAItC,kBAAkB,CAAC,CAAC,SAAS,WAAW,GAAG,mBAAmB,EAC5D,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,IAAI,EAAE,yBAAyB,CAAC,CAAC,CAAC,KAAK,IAAI,GACrD,MAAM,IAAI;IAWb,kBAAkB,IAAI,IAAI;IAM1B,wFAAwF;IACxF,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIpD,mFAAmF;IACnF,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIrC,mFAAmF;IACnF,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAIjE,+EAA+E;IAC/E,MAAM,CAAC,wBAAwB,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIzE,8DAA8D;IAC9D,MAAM,CAAC,2BAA2B,IAAI,IAAI;IAI1C,oFAAoF;IACpF,MAAM,CAAC,4BAA4B,CACjC,QAAQ,EAAE,CAAC,SAAS,EAAE,gBAAgB,KAAK,IAAI,GAC9C,IAAI;IAIP,8DAA8D;IAC9D,MAAM,CAAC,+BAA+B,IAAI,IAAI;IAI9C,gFAAgF;IAChF,MAAM,CAAC,yBAAyB,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAI1E,8DAA8D;IAC9D,MAAM,CAAC,4BAA4B,IAAI,IAAI;IAI3C,kFAAkF;IAClF,MAAM,CAAC,2BAA2B,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAI5E,8DAA8D;IAC9D,MAAM,CAAC,8BAA8B,IAAI,IAAI;IAI7C,0FAA0F;IAC1F,MAAM,CAAC,iCAAiC,CACtC,QAAQ,EAAE,CAAC,SAAS,EAAE,mBAAmB,KAAK,IAAI,GACjD,IAAI;IAIP,8DAA8D;IAC9D,MAAM,CAAC,oCAAoC,IAAI,IAAI;IAInD,+EAA+E;IAC/E,MAAM,CAAC,wBAAwB,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIzE,8DAA8D;IAC9D,MAAM,CAAC,2BAA2B,IAAI,IAAI;IAI1C,4FAA4F;IAC5F,MAAM,CAAC,+BAA+B,CACpC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GACjC,IAAI;IAIP,8DAA8D;IAC9D,MAAM,CAAC,kCAAkC,IAAI,IAAI;IAIjD,gGAAgG;IAChG,MAAM,CAAC,gCAAgC,CACrC,QAAQ,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,GACvC,IAAI;IAIP,8DAA8D;IAC9D,MAAM,CAAC,mCAAmC,IAAI,IAAI;CAGnD;AAED,eAAe,UAAU,CAAC"}
|
|
@@ -4,7 +4,7 @@ export { InterstitialAd } from './InterstitialAd';
|
|
|
4
4
|
export { RewardedAd } from './RewardedAd';
|
|
5
5
|
export { LightPopupAd } from './LightPopupAd';
|
|
6
6
|
export { NativeAdView } from './nativeAd/NativeAdView';
|
|
7
|
-
export { BodyView, CallToActionView, IconView, MediaView, TitleView } from './nativeAd/NativeAdViewComponents';
|
|
7
|
+
export { BodyView, CallToActionView, IconView, MediaView, TitleView, } from './nativeAd/NativeAdViewComponents';
|
|
8
8
|
export declare function initialize(): Promise<void>;
|
|
9
9
|
export declare function showMediationDebugger(): Promise<void>;
|
|
10
10
|
export declare function setUserId(userId: String): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.tsx"],"names":[],"mappings":"AAEA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EACL,QAAQ,EACR,gBAAgB,EAChB,QAAQ,EACR,SAAS,EACT,SAAS,GACV,MAAM,mCAAmC,CAAC;AAmB3C,wBAAsB,UAAU,kBAE/B;AAED,wBAAsB,qBAAqB,kBAE1C;AAED,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,iBAE7C"}
|
|
@@ -4,4 +4,28 @@ export type AdEventListener<T extends AdEventObject> = (event: T) => void;
|
|
|
4
4
|
export type AdNativeEvent<T extends AdEventObject> = {
|
|
5
5
|
nativeEvent: T;
|
|
6
6
|
};
|
|
7
|
+
export declare enum AdEventType {
|
|
8
|
+
LOADED = "LOADED",
|
|
9
|
+
LOAD_FAILED = "LOAD_FAILED",
|
|
10
|
+
CLICKED = "CLICKED",
|
|
11
|
+
DISPLAYED = "DISPLAYED",
|
|
12
|
+
FAILED_TO_DISPLAY = "FAILED_TO_DISPLAY",
|
|
13
|
+
HIDDEN = "HIDDEN",
|
|
14
|
+
IMPRESSION_RECORDED = "IMPRESSION_RECORDED"
|
|
15
|
+
}
|
|
16
|
+
export declare enum RewardedAdEventType {
|
|
17
|
+
RECEIVED_REWARD = "RECEIVED_REWARD"
|
|
18
|
+
}
|
|
19
|
+
export interface AdEventPayloadMap {
|
|
20
|
+
[AdEventType.LOADED]: AdInfo;
|
|
21
|
+
[AdEventType.LOAD_FAILED]: AdLoadFailedInfo;
|
|
22
|
+
[AdEventType.CLICKED]: AdInfo;
|
|
23
|
+
[AdEventType.DISPLAYED]: AdInfo;
|
|
24
|
+
[AdEventType.FAILED_TO_DISPLAY]: AdDisplayFailedInfo;
|
|
25
|
+
[AdEventType.HIDDEN]: AdInfo;
|
|
26
|
+
[AdEventType.IMPRESSION_RECORDED]: AdInfo;
|
|
27
|
+
}
|
|
28
|
+
export interface RewardedAdEventPayloadMap extends AdEventPayloadMap {
|
|
29
|
+
[RewardedAdEventType.RECEIVED_REWARD]: AdRewardInfo;
|
|
30
|
+
}
|
|
7
31
|
//# sourceMappingURL=AdEvent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdEvent.d.ts","sourceRoot":"","sources":["../../../../../src/types/AdEvent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"AdEvent.d.ts","sourceRoot":"","sources":["../../../../../src/types/AdEvent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACN,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACb,MAAM,UAAU,CAAC;AAElB,MAAM,MAAM,aAAa,GACrB,MAAM,GACN,gBAAgB,GAChB,mBAAmB,GACnB,YAAY,CAAC;AAGjB,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,aAAa,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;AAG1E,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,aAAa,IAAI;IAAE,WAAW,EAAE,CAAC,CAAA;CAAE,CAAC;AAExE,oBAAY,WAAW;IACrB,MAAM,WAAW;IACjB,WAAW,gBAAgB;IAC3B,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,iBAAiB,sBAAsB;IACvC,MAAM,WAAW;IACjB,mBAAmB,wBAAwB;CAC5C;AAED,oBAAY,mBAAmB;IAC7B,eAAe,oBAAoB;CACpC;AAED,MAAM,WAAW,iBAAiB;IAChC,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAC7B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC5C,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC9B,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAChC,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,mBAAmB,CAAC;IACrD,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAC7B,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC3C;AAED,MAAM,WAAW,yBAA0B,SAAQ,iBAAiB;IAClE,CAAC,mBAAmB,CAAC,eAAe,CAAC,EAAE,YAAY,CAAC;CACrD"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
import type { ColorValue } from
|
|
2
|
-
import type { FullScreenAdType } from "./FullScreenAd";
|
|
3
|
-
export interface LightPopupAdType extends FullScreenAdType {
|
|
4
|
-
setLightPopupAdConfiguration: (adUnitId: string, configuration: LightPopupAdConfiguration) => void;
|
|
5
|
-
}
|
|
1
|
+
import type { ColorValue } from 'react-native';
|
|
6
2
|
export interface LightPopupAdConfiguration {
|
|
7
3
|
backgroundColor?: ColorValue;
|
|
8
4
|
cardViewBackgroundColor?: ColorValue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LightPopupAd.d.ts","sourceRoot":"","sources":["../../../../../src/types/LightPopupAd.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"LightPopupAd.d.ts","sourceRoot":"","sources":["../../../../../src/types/LightPopupAd.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,WAAW,yBAAyB;IACxC,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B,uBAAuB,CAAC,EAAE,UAAU,CAAC;IACrC,oBAAoB,CAAC,EAAE,UAAU,CAAC;IAClC,0BAA0B,CAAC,EAAE,UAAU,CAAC;IACxC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oBAAoB,CAAC,EAAE,UAAU,CAAC;IAClC,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,aAAa,CAAC,EAAE,UAAU,CAAC;IAC3B,kBAAkB,CAAC,EAAE,UAAU,CAAC;IAChC,wBAAwB,CAAC,EAAE,UAAU,CAAC;CACvC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-daro",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.13",
|
|
4
4
|
"description": "Daro React Native Module for Android and iOS",
|
|
5
5
|
"source": "./src/index.tsx",
|
|
6
6
|
"main": "./lib/commonjs/index.js",
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"typecheck": "tsc",
|
|
44
44
|
"lint": "eslint \"**/*.{js,ts,tsx}\"",
|
|
45
45
|
"clean": "del-cli android/build example/android/build example/android/app/build example/ios/build lib",
|
|
46
|
-
"
|
|
46
|
+
"prepublishOnly": "bob build",
|
|
47
47
|
"release": "release-it"
|
|
48
48
|
},
|
|
49
49
|
"keywords": [
|
|
@@ -99,6 +99,10 @@
|
|
|
99
99
|
"modulePathIgnorePatterns": [
|
|
100
100
|
"<rootDir>/example/node_modules",
|
|
101
101
|
"<rootDir>/lib/"
|
|
102
|
+
],
|
|
103
|
+
"testPathIgnorePatterns": [
|
|
104
|
+
"/node_modules/",
|
|
105
|
+
"/__helpers__/"
|
|
102
106
|
]
|
|
103
107
|
},
|
|
104
108
|
"release-it": {
|
|
@@ -16,7 +16,7 @@ Pod::Spec.new do |s|
|
|
|
16
16
|
|
|
17
17
|
s.source_files = "ios/**/*.{h,m,mm,swift}"
|
|
18
18
|
|
|
19
|
-
s.dependency "DaroAds", "1.1.
|
|
19
|
+
s.dependency "DaroAds", "1.1.59"
|
|
20
20
|
|
|
21
21
|
# Use install_modules_dependencies helper to install the dependencies if React Native version >=0.71.0.
|
|
22
22
|
# See https://github.com/facebook/react-native/blob/febf6b7f33fdb4904669f99d795eba4c0f95d7bf/scripts/cocoapods/new_architecture.rb#L79.
|
package/src/AppOpenAd.ts
CHANGED
|
@@ -1,113 +1,181 @@
|
|
|
1
1
|
import { NativeModules } from 'react-native';
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
import {
|
|
3
|
+
addEventListener,
|
|
4
|
+
removeEventListener,
|
|
5
|
+
AdEventEmitter,
|
|
6
|
+
} from './EventEmitter';
|
|
7
|
+
import type {
|
|
8
|
+
AdDisplayFailedInfo,
|
|
9
|
+
AdInfo,
|
|
10
|
+
AdLoadFailedInfo,
|
|
11
|
+
} from './types/AdInfo';
|
|
12
|
+
import { AdEventType, type AdEventPayloadMap } from './types/AdEvent';
|
|
5
13
|
|
|
6
14
|
const { DaroMModule } = NativeModules;
|
|
7
15
|
|
|
8
16
|
const {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
17
|
+
ON_APPOPEN_AD_LOADED_EVENT,
|
|
18
|
+
ON_APPOPEN_AD_LOAD_FAILED_EVENT,
|
|
19
|
+
ON_APPOPEN_AD_CLICKED_EVENT,
|
|
20
|
+
ON_APPOPEN_AD_DISPLAYED_EVENT,
|
|
21
|
+
ON_APPOPEN_AD_FAILED_TO_DISPLAY_EVENT,
|
|
22
|
+
ON_APPOPEN_AD_HIDDEN_EVENT,
|
|
23
|
+
ON_APPOPEN_AD_IMPRESSION_RECORDED,
|
|
16
24
|
} = DaroMModule.getConstants();
|
|
17
25
|
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
const
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
}
|
|
26
|
+
const NATIVE_EVENT_BY_TYPE: Record<AdEventType, string> = {
|
|
27
|
+
[AdEventType.LOADED]: ON_APPOPEN_AD_LOADED_EVENT,
|
|
28
|
+
[AdEventType.LOAD_FAILED]: ON_APPOPEN_AD_LOAD_FAILED_EVENT,
|
|
29
|
+
[AdEventType.CLICKED]: ON_APPOPEN_AD_CLICKED_EVENT,
|
|
30
|
+
[AdEventType.DISPLAYED]: ON_APPOPEN_AD_DISPLAYED_EVENT,
|
|
31
|
+
[AdEventType.FAILED_TO_DISPLAY]: ON_APPOPEN_AD_FAILED_TO_DISPLAY_EVENT,
|
|
32
|
+
[AdEventType.HIDDEN]: ON_APPOPEN_AD_HIDDEN_EVENT,
|
|
33
|
+
[AdEventType.IMPRESSION_RECORDED]: ON_APPOPEN_AD_IMPRESSION_RECORDED,
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
export class AppOpenAd {
|
|
37
|
+
private readonly eventEmitter = new AdEventEmitter();
|
|
38
|
+
|
|
39
|
+
private constructor(private readonly adUnitId: string) {}
|
|
40
|
+
|
|
41
|
+
static createForAdRequest(adUnitId: string): AppOpenAd {
|
|
42
|
+
return new AppOpenAd(adUnitId);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
isAdReady(): Promise<boolean> {
|
|
46
|
+
return DaroMModule.isAppOpenAdReady(this.adUnitId);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
load(): void {
|
|
50
|
+
DaroMModule.loadAppOpenAd(this.adUnitId);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
show(placement?: string | null, customData?: string | null): void {
|
|
54
|
+
DaroMModule.showAppOpenAd(
|
|
55
|
+
this.adUnitId,
|
|
56
|
+
placement ?? undefined,
|
|
57
|
+
customData ?? undefined
|
|
58
|
+
);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
addAdEventListener<T extends AdEventType>(
|
|
62
|
+
type: T,
|
|
63
|
+
listener: (info: AdEventPayloadMap[T]) => void
|
|
64
|
+
): () => void {
|
|
65
|
+
const nativeEvent = NATIVE_EVENT_BY_TYPE[type];
|
|
66
|
+
const adUnitId = this.adUnitId;
|
|
67
|
+
return this.eventEmitter.addEventListener(nativeEvent, (payload: any) => {
|
|
68
|
+
if (payload?.adUnitId !== undefined && payload.adUnitId !== adUnitId) {
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
listener(payload);
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
removeAllListeners(): void {
|
|
76
|
+
this.eventEmitter.removeAllListeners();
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
// ---- Deprecated static API (backward compatibility) ----
|
|
80
|
+
|
|
81
|
+
/** @deprecated `AppOpenAd.createForAdRequest(adUnitId)` 인스턴스의 `isAdReady()`를 사용하세요. */
|
|
82
|
+
static isAdReady(adUnitId: string): Promise<boolean> {
|
|
83
|
+
return DaroMModule.isAppOpenAdReady(adUnitId);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
/** @deprecated `AppOpenAd.createForAdRequest(adUnitId)` 인스턴스의 `load()`를 사용하세요. */
|
|
87
|
+
static loadAd(adUnitId: string): void {
|
|
88
|
+
DaroMModule.loadAppOpenAd(adUnitId);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
/** @deprecated `AppOpenAd.createForAdRequest(adUnitId)` 인스턴스의 `show()`를 사용하세요. */
|
|
92
|
+
static showAd(
|
|
93
|
+
adUnitId: string,
|
|
94
|
+
placement?: string | null,
|
|
95
|
+
customData?: string | null
|
|
96
|
+
): void {
|
|
97
|
+
DaroMModule.showAppOpenAd(
|
|
98
|
+
adUnitId,
|
|
99
|
+
placement ?? undefined,
|
|
100
|
+
customData ?? undefined
|
|
101
|
+
);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/** @deprecated `addAdEventListener(AdEventType.LOADED, ...)`를 인스턴스에서 사용하세요. */
|
|
105
|
+
static addAdLoadedEventListener(listener: (adInfo: AdInfo) => void): void {
|
|
106
|
+
addEventListener(ON_APPOPEN_AD_LOADED_EVENT, listener);
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
/** @deprecated 인스턴스의 `addAdEventListener` disposer를 사용하세요. */
|
|
110
|
+
static removeAdLoadedEventListener(): void {
|
|
111
|
+
removeEventListener(ON_APPOPEN_AD_LOADED_EVENT);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
/** @deprecated `addAdEventListener(AdEventType.LOAD_FAILED, ...)`를 인스턴스에서 사용하세요. */
|
|
115
|
+
static addAdLoadFailedEventListener(
|
|
116
|
+
listener: (errorInfo: AdLoadFailedInfo) => void
|
|
117
|
+
): void {
|
|
118
|
+
addEventListener(ON_APPOPEN_AD_LOAD_FAILED_EVENT, listener);
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
/** @deprecated 인스턴스의 `addAdEventListener` disposer를 사용하세요. */
|
|
122
|
+
static removeAdLoadFailedEventListener(): void {
|
|
123
|
+
removeEventListener(ON_APPOPEN_AD_LOAD_FAILED_EVENT);
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
/** @deprecated `addAdEventListener(AdEventType.CLICKED, ...)`를 인스턴스에서 사용하세요. */
|
|
127
|
+
static addAdClickedEventListener(listener: (adInfo: AdInfo) => void): void {
|
|
128
|
+
addEventListener(ON_APPOPEN_AD_CLICKED_EVENT, listener);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
/** @deprecated 인스턴스의 `addAdEventListener` disposer를 사용하세요. */
|
|
132
|
+
static removeAdClickedEventListener(): void {
|
|
133
|
+
removeEventListener(ON_APPOPEN_AD_CLICKED_EVENT);
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
/** @deprecated `addAdEventListener(AdEventType.DISPLAYED, ...)`를 인스턴스에서 사용하세요. */
|
|
137
|
+
static addAdDisplayedEventListener(listener: (adInfo: AdInfo) => void): void {
|
|
138
|
+
addEventListener(ON_APPOPEN_AD_DISPLAYED_EVENT, listener);
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
/** @deprecated 인스턴스의 `addAdEventListener` disposer를 사용하세요. */
|
|
142
|
+
static removeAdDisplayedEventListener(): void {
|
|
143
|
+
removeEventListener(ON_APPOPEN_AD_DISPLAYED_EVENT);
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
/** @deprecated `addAdEventListener(AdEventType.FAILED_TO_DISPLAY, ...)`를 인스턴스에서 사용하세요. */
|
|
147
|
+
static addAdFailedToDisplayEventListener(
|
|
148
|
+
listener: (errorInfo: AdDisplayFailedInfo) => void
|
|
149
|
+
): void {
|
|
150
|
+
addEventListener(ON_APPOPEN_AD_FAILED_TO_DISPLAY_EVENT, listener);
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
/** @deprecated 인스턴스의 `addAdEventListener` disposer를 사용하세요. */
|
|
154
|
+
static removeAdFailedToDisplayEventListener(): void {
|
|
155
|
+
removeEventListener(ON_APPOPEN_AD_FAILED_TO_DISPLAY_EVENT);
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
/** @deprecated `addAdEventListener(AdEventType.HIDDEN, ...)`를 인스턴스에서 사용하세요. */
|
|
159
|
+
static addAdHiddenEventListener(listener: (adInfo: AdInfo) => void): void {
|
|
160
|
+
addEventListener(ON_APPOPEN_AD_HIDDEN_EVENT, listener);
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
/** @deprecated 인스턴스의 `addAdEventListener` disposer를 사용하세요. */
|
|
164
|
+
static removeAdHiddenEventListener(): void {
|
|
165
|
+
removeEventListener(ON_APPOPEN_AD_HIDDEN_EVENT);
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
/** @deprecated `addAdEventListener(AdEventType.IMPRESSION_RECORDED, ...)`를 인스턴스에서 사용하세요. */
|
|
169
|
+
static addAdImpressionRecordedListener(
|
|
170
|
+
listener: (adInfo: AdInfo) => void
|
|
171
|
+
): void {
|
|
172
|
+
addEventListener(ON_APPOPEN_AD_IMPRESSION_RECORDED, listener);
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
/** @deprecated 인스턴스의 `addAdEventListener` disposer를 사용하세요. */
|
|
176
|
+
static removeAdImpressionRecordedListener(): void {
|
|
177
|
+
removeEventListener(ON_APPOPEN_AD_IMPRESSION_RECORDED);
|
|
178
|
+
}
|
|
179
|
+
}
|
|
112
180
|
|
|
113
181
|
export default AppOpenAd;
|
package/src/EventEmitter.ts
CHANGED
|
@@ -5,21 +5,67 @@ import type { AdEventObject, AdEventListener } from './types/AdEvent';
|
|
|
5
5
|
const { DaroMModule } = NativeModules;
|
|
6
6
|
|
|
7
7
|
const emitter = new NativeEventEmitter(DaroMModule);
|
|
8
|
-
const subscriptions:
|
|
9
|
-
|
|
10
|
-
export const addEventListener = <T extends AdEventObject>(
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
8
|
+
const subscriptions: Map<string, Set<EventSubscription>> = new Map();
|
|
9
|
+
|
|
10
|
+
export const addEventListener = <T extends AdEventObject>(
|
|
11
|
+
event: string,
|
|
12
|
+
handler: AdEventListener<T>
|
|
13
|
+
): (() => void) => {
|
|
14
|
+
const subscription: EventSubscription = emitter.addListener(event, handler);
|
|
15
|
+
|
|
16
|
+
if (!subscriptions.has(event)) {
|
|
17
|
+
subscriptions.set(event, new Set());
|
|
18
|
+
}
|
|
19
|
+
subscriptions.get(event)!.add(subscription);
|
|
20
|
+
|
|
21
|
+
return () => {
|
|
22
|
+
subscription.remove();
|
|
23
|
+
subscriptions.get(event)?.delete(subscription);
|
|
24
|
+
};
|
|
17
25
|
};
|
|
18
26
|
|
|
19
27
|
export const removeEventListener = (event: string): void => {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
currentSubscription.remove();
|
|
23
|
-
delete subscriptions[event];
|
|
24
|
-
}
|
|
28
|
+
subscriptions.get(event)?.forEach((sub) => sub.remove());
|
|
29
|
+
subscriptions.delete(event);
|
|
25
30
|
};
|
|
31
|
+
|
|
32
|
+
export class AdEventEmitter {
|
|
33
|
+
private emitter: NativeEventEmitter;
|
|
34
|
+
private subscriptions: Map<string, Set<EventSubscription>> = new Map();
|
|
35
|
+
|
|
36
|
+
constructor() {
|
|
37
|
+
this.emitter = new NativeEventEmitter(DaroMModule);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
addEventListener<T extends AdEventObject>(
|
|
41
|
+
event: string,
|
|
42
|
+
handler: AdEventListener<T>
|
|
43
|
+
): () => void {
|
|
44
|
+
const subscription: EventSubscription = this.emitter.addListener(
|
|
45
|
+
event,
|
|
46
|
+
handler
|
|
47
|
+
);
|
|
48
|
+
|
|
49
|
+
if (!this.subscriptions.has(event)) {
|
|
50
|
+
this.subscriptions.set(event, new Set());
|
|
51
|
+
}
|
|
52
|
+
this.subscriptions.get(event)!.add(subscription);
|
|
53
|
+
|
|
54
|
+
return () => {
|
|
55
|
+
subscription.remove();
|
|
56
|
+
this.subscriptions.get(event)?.delete(subscription);
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
removeEventListener(event: string): void {
|
|
61
|
+
this.subscriptions.get(event)?.forEach((sub) => sub.remove());
|
|
62
|
+
this.subscriptions.delete(event);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
removeAllListeners(): void {
|
|
66
|
+
for (const subs of this.subscriptions.values()) {
|
|
67
|
+
subs.forEach((sub) => sub.remove());
|
|
68
|
+
}
|
|
69
|
+
this.subscriptions.clear();
|
|
70
|
+
}
|
|
71
|
+
}
|