@jolibox/implement 1.1.13 → 1.1.14-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.rush/temp/package-deps_build.json +16 -8
- package/dist/common/rewards/__tests__/can-use-jolicoin.test.d.ts +1 -0
- package/dist/common/rewards/fetch-reward.d.ts +2 -0
- package/dist/common/rewards/index.d.ts +18 -0
- package/dist/common/rewards/registers/use-ads.d.ts +3 -0
- package/dist/common/rewards/registers/use-jolicoin.d.ts +10 -0
- package/dist/common/rewards/registers/utils/index.d.ts +2 -0
- package/dist/common/rewards/reward-helper.d.ts +14 -0
- package/dist/common/rewards/type.d.ts +23 -0
- package/dist/common/utils/index.d.ts +7 -0
- package/dist/index.js +3 -3
- package/dist/index.native.js +73 -6
- package/esbuild.config.js +28 -8
- package/implement.build.log +2 -2
- package/package.json +4 -4
- package/src/common/rewards/__tests__/can-use-jolicoin.test.ts +94 -0
- package/src/common/rewards/fetch-reward.ts +39 -0
- package/src/common/rewards/index.ts +20 -0
- package/src/common/rewards/registers/use-ads.ts +9 -0
- package/src/common/rewards/registers/use-jolicoin.ts +99 -0
- package/src/common/rewards/registers/utils/index.ts +11 -0
- package/src/common/rewards/reward-helper.ts +56 -0
- package/src/common/rewards/type.ts +25 -0
- package/src/common/utils/index.ts +7 -0
- package/src/h5/api/ads.ts +20 -1
- package/src/native/api/ads.ts +29 -1
- package/src/native/api/navigate.ts +15 -0
- package/src/native/network/create-fetch.ts +5 -1
- package/src/native/ui/retention.ts +3 -2
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
"packages/implement/.rush/temp/shrinkwrap-deps.json": "409982f688cb8365b288673bcc40782cb7dedd5f",
|
|
4
4
|
"packages/implement/.eslintrc.js": "7a3d2747dc887655ca9e2d3ff621f7dfd98500b9",
|
|
5
5
|
"packages/implement/README.md": "5660cd88848b7a5428394cc34d881a35dd402188",
|
|
6
|
-
"packages/implement/esbuild.config.js": "
|
|
7
|
-
"packages/implement/package.json": "
|
|
6
|
+
"packages/implement/esbuild.config.js": "876db4e384d8543b66a0b61d8f7b277a36dfb4e0",
|
|
7
|
+
"packages/implement/package.json": "e591243b55ba4f40fb09160f65895d1f167d3bed",
|
|
8
8
|
"packages/implement/src/common/ads/ads-action-detection.ts": "5a7b9f85d7eab9e744f8a9fc7638063f43baa214",
|
|
9
9
|
"packages/implement/src/common/ads/anti-cheating.test.ts": "e2ff3dc6760cfd28d0f8c15703d7fb20d43df583",
|
|
10
10
|
"packages/implement/src/common/ads/anti-cheating.ts": "a3ffb6a78e289e1c0ce45c7f7c0cee000e75e541",
|
|
@@ -46,8 +46,16 @@
|
|
|
46
46
|
"packages/implement/src/common/report/task-track/index.ts": "056d4ce9121648e94aa177e8e6b261adb455d244",
|
|
47
47
|
"packages/implement/src/common/report/track.ts": "1c71050f8caadfe7065f0db5a4a0708c264c21b4",
|
|
48
48
|
"packages/implement/src/common/report/types.ts": "fd127bfd31586f1d712152ef60a4e9175f8bfe8f",
|
|
49
|
-
"packages/implement/src/common/
|
|
50
|
-
"packages/implement/src/
|
|
49
|
+
"packages/implement/src/common/rewards/__tests__/can-use-jolicoin.test.ts": "ec0f7225cb1b322e9278a3d8d6848bc50190696a",
|
|
50
|
+
"packages/implement/src/common/rewards/fetch-reward.ts": "7cc61f44ed5b111f7904daceb1fc6e3396ee34be",
|
|
51
|
+
"packages/implement/src/common/rewards/index.ts": "f6160318ce7393684ebf229729b3168beb0c2d99",
|
|
52
|
+
"packages/implement/src/common/rewards/registers/use-ads.ts": "e6eb324d5ac39d0a5df478760fdf0ee75fded1b5",
|
|
53
|
+
"packages/implement/src/common/rewards/registers/use-jolicoin.ts": "7ed8663eb9fcb524c3449dbadc0ecb6a7f6107a3",
|
|
54
|
+
"packages/implement/src/common/rewards/registers/utils/index.ts": "a297dfc50b091368fba6e12e67663693f14ac1b8",
|
|
55
|
+
"packages/implement/src/common/rewards/reward-helper.ts": "2113cbd370da5be4beaf88bed865f1846e43d472",
|
|
56
|
+
"packages/implement/src/common/rewards/type.ts": "75c8444405686dbee1628f6d67c4a6b803e0623e",
|
|
57
|
+
"packages/implement/src/common/utils/index.ts": "6e2af1b721d5a9caf8fa40fd22fc73a2fdd5c4c0",
|
|
58
|
+
"packages/implement/src/h5/api/ads.ts": "a329694886a101b9627b0df61254a619e1acddbe",
|
|
51
59
|
"packages/implement/src/h5/api/base.ts": "ead2c3cdcbe174b0e725c31a3885c7985bd8f667",
|
|
52
60
|
"packages/implement/src/h5/api/get-system-info.ts": "158d66156c720446457318b7eaa9112452114dbb",
|
|
53
61
|
"packages/implement/src/h5/api/index.ts": "81b815f5ac8e1bd3e3f019f94c28bd5522a36193",
|
|
@@ -65,20 +73,20 @@
|
|
|
65
73
|
"packages/implement/src/h5/report/task-tracker.ts": "9b55e81e5c20d459ff851f70689e9280e89c0e63",
|
|
66
74
|
"packages/implement/src/index.native.ts": "96cc46c8919ba2333600e9c3ee100f47c511a79a",
|
|
67
75
|
"packages/implement/src/index.ts": "d0ca7b5312b0a258ae8887e725440c70190442f7",
|
|
68
|
-
"packages/implement/src/native/api/ads.ts": "
|
|
76
|
+
"packages/implement/src/native/api/ads.ts": "9958f0e3819b1e015e875df9a924c05983c1b950",
|
|
69
77
|
"packages/implement/src/native/api/base.ts": "c4c4d04519cdbc3a08226c620f6314ee3b151435",
|
|
70
78
|
"packages/implement/src/native/api/get-system-info.ts": "187333a4eca5304e896360d1496744cb7535ab49",
|
|
71
79
|
"packages/implement/src/native/api/index.ts": "39c85b6c6d93f91d9ecc4a96a38a39a425d5487a",
|
|
72
80
|
"packages/implement/src/native/api/keyboard.ts": "cb65da6e8cbfb7ef4a21582acd74f450a0e3c894",
|
|
73
81
|
"packages/implement/src/native/api/lifecycle.ts": "857beae3012fcb89396ac8e485c9d9b3df737db2",
|
|
74
82
|
"packages/implement/src/native/api/login.ts": "b820416100228e12df434238685a02e4b07a24c1",
|
|
75
|
-
"packages/implement/src/native/api/navigate.ts": "
|
|
83
|
+
"packages/implement/src/native/api/navigate.ts": "ce37b7ee66ee74261db7fbede254e0e70891402f",
|
|
76
84
|
"packages/implement/src/native/api/request.ts": "d2b5fb71eff0dfda5f24ca7ddf11fa4704c35eee",
|
|
77
85
|
"packages/implement/src/native/api/storage.ts": "4e5886d5cdb4db50ab7fcdc24392569f749f4c93",
|
|
78
86
|
"packages/implement/src/native/api/task.ts": "26e06a3d6bbeaed34fd704d096e712448296607e",
|
|
79
87
|
"packages/implement/src/native/bootstrap/index.ts": "12b491efeb62cc19c41fc613f725314cce38e969",
|
|
80
88
|
"packages/implement/src/native/bootstrap/init-env.ts": "b7514d5d2db60da990575c1426243777aee57748",
|
|
81
|
-
"packages/implement/src/native/network/create-fetch.ts": "
|
|
89
|
+
"packages/implement/src/native/network/create-fetch.ts": "348e6af474257596663befbbf4179f18a2dec489",
|
|
82
90
|
"packages/implement/src/native/network/index.ts": "f57653dfa388545cbe7fb0a3f1eb9603c6208f45",
|
|
83
91
|
"packages/implement/src/native/network/report.ts": "705e9614faeb0611c9c57ced998885bdc3a02d11",
|
|
84
92
|
"packages/implement/src/native/network/types.ts": "4e8eb72bf0b0b26a5298ce42d96855d27769be51",
|
|
@@ -86,7 +94,7 @@
|
|
|
86
94
|
"packages/implement/src/native/report/errors/index.ts": "40e60ee03e0b91cdb0a143a2bea07f5d1e5d6dd7",
|
|
87
95
|
"packages/implement/src/native/report/index.ts": "2df4598a1004c3f7764ac7a90528e44772b41943",
|
|
88
96
|
"packages/implement/src/native/report/task-tracker.ts": "8905391993830700027cc78c80a76c0750ab0d43",
|
|
89
|
-
"packages/implement/src/native/ui/retention.ts": "
|
|
97
|
+
"packages/implement/src/native/ui/retention.ts": "96e18984b55fb87463f6aff84c80351b9d4cc61c",
|
|
90
98
|
"packages/implement/tsconfig.json": "b150f4b2ef4eb9d98f92135d481fe530eb7145b5"
|
|
91
99
|
},
|
|
92
100
|
"arguments": "npm run clean && npm run build:esm && tsc "
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { EventEmitter } from '@jolibox/common';
|
|
2
|
+
import { IUnlockOption, IJoliCoin } from './type';
|
|
3
|
+
export declare const rewardsHelper: {
|
|
4
|
+
registerRewardHandler<T extends import("./reward-helper").RewardType>(type: T, handler: import("./reward-helper").RewardHandler<T>): void;
|
|
5
|
+
handleReward<T extends import("./reward-helper").RewardType>(rewardsTypes: T[], ...args: Parameters<import("./reward-helper").RewardHandler<T>>): Promise<any>;
|
|
6
|
+
registerRewardsFetcher<T extends import("./reward-helper").RewardType>(fetcher: (...args: any[]) => Promise<T[]>): Promise<void>;
|
|
7
|
+
getRewardsTypes(...args: unknown[]): Promise<import("./reward-helper").RewardType[]>;
|
|
8
|
+
};
|
|
9
|
+
export * from './registers/use-ads';
|
|
10
|
+
export * from './registers/use-jolicoin';
|
|
11
|
+
export interface IUnlockOptionsEvent {
|
|
12
|
+
options: IUnlockOption[];
|
|
13
|
+
userJoliCoin: IJoliCoin;
|
|
14
|
+
}
|
|
15
|
+
export declare const UnlockOptionsEventName: "UNLOCK_OPTIONS_CHANGED";
|
|
16
|
+
export declare const unlockOptionsEmitter: EventEmitter<{
|
|
17
|
+
UNLOCK_OPTIONS_CHANGED: [IUnlockOptionsEvent];
|
|
18
|
+
}, "UNLOCK_OPTIONS_CHANGED">;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { IHttpClient } from '@/common/http';
|
|
2
|
+
import { IAdBreakParams } from '@/common/ads';
|
|
3
|
+
export type JolicoinRewardsHandler = (params: IAdBreakParams) => Promise<boolean>;
|
|
4
|
+
export declare const createJolicoinRewardHandler: (httpClient: IHttpClient, { onUnlockSuccess, onUnlockFailed }: {
|
|
5
|
+
onUnlockSuccess?: (data: {
|
|
6
|
+
quantity: number;
|
|
7
|
+
balance: number;
|
|
8
|
+
}) => void;
|
|
9
|
+
onUnlockFailed?: () => void;
|
|
10
|
+
}) => JolicoinRewardsHandler;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export type RewardType = 'ADS' | 'JOLI_COIN';
|
|
2
|
+
import type { AdsRewardsHandler } from './registers/use-ads';
|
|
3
|
+
export interface RewardHandlerMap {
|
|
4
|
+
ADS: AdsRewardsHandler;
|
|
5
|
+
JOLI_COIN: (params?: unknown) => Promise<boolean>;
|
|
6
|
+
}
|
|
7
|
+
export type RewardHandler<T extends RewardType> = RewardHandlerMap[T];
|
|
8
|
+
export declare function createRewardsHelper(): {
|
|
9
|
+
registerRewardHandler<T extends RewardType>(type: T, handler: RewardHandler<T>): void;
|
|
10
|
+
handleReward<T extends RewardType>(rewardsTypes: T[], ...args: Parameters<RewardHandler<T>>): Promise<any>;
|
|
11
|
+
registerRewardsFetcher<T extends RewardType>(fetcher: (...args: any[]) => Promise<T[]>): Promise<void>;
|
|
12
|
+
getRewardsTypes(...args: unknown[]): Promise<RewardType[]>;
|
|
13
|
+
};
|
|
14
|
+
export type RewardsHelper = ReturnType<typeof createRewardsHelper>;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export interface IJoliCoin {
|
|
2
|
+
balance: number;
|
|
3
|
+
enableAutoDeduct: boolean;
|
|
4
|
+
}
|
|
5
|
+
export type IUnlockOptionType = 'JOLI_COIN' | 'ADS';
|
|
6
|
+
interface IJoliCoinChoice {
|
|
7
|
+
joliCoinQuantity: number;
|
|
8
|
+
}
|
|
9
|
+
export interface IUnlockOption {
|
|
10
|
+
type: IUnlockOptionType;
|
|
11
|
+
joliCoinChoices: IJoliCoinChoice[];
|
|
12
|
+
}
|
|
13
|
+
export interface IJolicoinRewardOption {
|
|
14
|
+
code: 'SUCCESS' | 'ERROR' | 'PARAMETER_ERROR' | 'EPISODE_LOCK_JUMP';
|
|
15
|
+
message: string;
|
|
16
|
+
data: {
|
|
17
|
+
unlockOptions?: IUnlockOption[];
|
|
18
|
+
};
|
|
19
|
+
extra: {
|
|
20
|
+
joliCoin: IJoliCoin;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
export {};
|
|
@@ -1,8 +1,15 @@
|
|
|
1
1
|
declare const JOLIBOX_CUSTOM_ADS_EVENT_TYPE = "JOLIBOX_ADS_EVENT";
|
|
2
|
+
declare const JOLIBOX_CUSTOM_REWARDS_EVENT_TYPE = "JOLIBOX_CUSTOM_REWARDS_EVENT";
|
|
2
3
|
interface JoliboxCustomEvent {
|
|
3
4
|
[JOLIBOX_CUSTOM_ADS_EVENT_TYPE]: {
|
|
4
5
|
isAdShowing: boolean;
|
|
5
6
|
};
|
|
7
|
+
[JOLIBOX_CUSTOM_REWARDS_EVENT_TYPE]: {
|
|
8
|
+
['JOLI_COIN']?: {
|
|
9
|
+
quantity: number;
|
|
10
|
+
balance: number;
|
|
11
|
+
};
|
|
12
|
+
};
|
|
6
13
|
}
|
|
7
14
|
export declare const notifyCustomEvent: <T extends keyof JoliboxCustomEvent>(eventName: T, data: JoliboxCustomEvent[T]) => void;
|
|
8
15
|
export {};
|