@smartico/public-api 0.0.254 → 0.0.256
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Quiz/MarketsAnswersType.d.ts +22 -0
- package/dist/Raffle/GetDrawResponse.d.ts +5 -0
- package/dist/SmarticoAPI.d.ts +6 -2
- package/dist/SmarticoPublicAPI.d.ts +23 -0
- package/dist/Store/BuyShopItemErrorCode.d.ts +10 -0
- package/dist/Store/BuyShopItemRequest.d.ts +4 -0
- package/dist/Store/BuyShopItemResponse.d.ts +4 -0
- package/dist/Store/GetCategoriesShopResponse.d.ts +5 -0
- package/dist/Store/GetShopItemsResponse.d.ts +5 -0
- package/dist/Store/ShopCategory.d.ts +5 -0
- package/dist/Store/ShopCategoryPublicMeta.d.ts +4 -0
- package/dist/Store/ShopItem.d.ts +9 -0
- package/dist/Store/ShopItemPublicMeta.d.ts +10 -0
- package/dist/Store/ShopItemType.d.ts +4 -0
- package/dist/Store/StorItemPruchased.d.ts +6 -0
- package/dist/WSAPI/WSAPITypes.d.ts +6 -0
- package/dist/index.js +15 -6
- package/dist/index.js.map +1 -1
- package/dist/index.modern.mjs +16 -5
- package/dist/index.modern.mjs.map +1 -1
- package/dist/service/index.d.ts +5 -0
- package/dist/service/types/ErrorCodes.d.ts +13 -0
- package/dist/service/types/GRequest.d.ts +16 -0
- package/dist/service/types/GResponse.d.ts +10 -0
- package/dist/service/types/Game/GameAttemptType.d.ts +6 -0
- package/dist/service/types/Game/GameCanPlayType.d.ts +10 -0
- package/dist/service/types/Game/GameExternalStatus.d.ts +6 -0
- package/dist/service/types/Game/GameInfo.d.ts +9 -0
- package/dist/service/types/Game/GamePick.d.ts +90 -0
- package/dist/service/types/Game/GameUtil.d.ts +7 -0
- package/dist/service/types/SmarticoProto/GetTranslationsRequest.d.ts +7 -0
- package/dist/service/types/SmarticoProto/GetTranslationsResponse.d.ts +7 -0
- package/dist/service/types/SmarticoProto/ProtocolMessage.d.ts +5 -0
- package/dist/service/types/SmarticoProto/ProtocolRequest.d.ts +6 -0
- package/dist/service/types/SmarticoProto/ProtocolResponse.d.ts +5 -0
- package/dist/service/types/SmarticoProto/PublicLabelInfo.d.ts +34 -0
- package/dist/service/types/SmarticoProto/PublicProperties.d.ts +11 -0
- package/dist/service/types/SmarticoProto/ResponseIdentify.d.ts +12 -0
- package/dist/service/types/SmarticoProto/SAW/SAWAcknowledgeType.d.ts +5 -0
- package/dist/service/types/SmarticoProto/SAW/SAWBuyInType.d.ts +5 -0
- package/dist/service/types/SmarticoProto/SAW/SAWDoSpinRequest.d.ts +5 -0
- package/dist/service/types/SmarticoProto/SAW/SAWDoSpinResponse.d.ts +15 -0
- package/dist/service/types/SmarticoProto/SAW/SAWGameType.d.ts +10 -0
- package/dist/service/types/SmarticoProto/SAW/SAWGetTemplatesRequest.d.ts +3 -0
- package/dist/service/types/SmarticoProto/SAW/SAWGetTemplatesResponse.d.ts +5 -0
- package/dist/service/types/SmarticoProto/SAW/SAWPrize.d.ts +11 -0
- package/dist/service/types/SmarticoProto/SAW/SAWPrizeType.d.ts +8 -0
- package/dist/service/types/SmarticoProto/SAW/SAWPrizeUI.d.ts +13 -0
- package/dist/service/types/SmarticoProto/SAW/SAWTemplate.d.ts +21 -0
- package/dist/service/types/SmarticoProto/SAW/SAWTemplateUI.d.ts +31 -0
- package/dist/service/types/SmarticoProto/SAW/SAWWinSoundType.d.ts +12 -0
- package/dist/service/types/SmarticoProto/TranslationArea.d.ts +9 -0
- package/dist/service/types/User/UserInfo.d.ts +10 -0
- package/dist/util/Util.d.ts +51 -0
- package/docs/interfaces/JackpotEligibleGame.md +2 -0
- package/docs/interfaces/TStoreItem.md +24 -0
- package/package.json +1 -1
- package/src/SmarticoAPI.ts +4 -4
- package/src/Store/StoreItem.ts +4 -1
- package/src/WSAPI/WSAPI.ts +3 -3
- package/src/WSAPI/WSAPITypes.ts +6 -0
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ErrorCodes, ErrorCodesGame } from './types/ErrorCodes';
|
|
2
|
+
import { GBaseRequest } from './types/GRequest';
|
|
3
|
+
import { GResponseBase, GResponse } from './types/GResponse';
|
|
4
|
+
import { SAWSpinErrorCode } from './types/SmarticoProto/SAW/SAWDoSpinResponse';
|
|
5
|
+
export { ErrorCodes, ErrorCodesGame, SAWSpinErrorCode, GBaseRequest, GResponseBase, GResponse, };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { SAWSpinErrorCode } from "./SmarticoProto/SAW/SAWDoSpinResponse";
|
|
2
|
+
export declare const ErrorCodes_FatalStartingRange = 100000;
|
|
3
|
+
export declare enum ErrorCodesGame {
|
|
4
|
+
OK = 0,
|
|
5
|
+
NoBetsUpdatedOnSubmit = 3,
|
|
6
|
+
RepeatRequest_Unhandled = 4,
|
|
7
|
+
Fatal_NotValidHash,
|
|
8
|
+
Fatal_WrongCustomerID,
|
|
9
|
+
Fatal_TemplateNotFound,
|
|
10
|
+
Fatal_NoOpenRounds,
|
|
11
|
+
Fatal_Unhandled
|
|
12
|
+
}
|
|
13
|
+
export type ErrorCodes = SAWSpinErrorCode | ErrorCodesGame;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
interface GBaseRequest {
|
|
2
|
+
customer_id: string;
|
|
3
|
+
ext_user_id: string;
|
|
4
|
+
int_user_id: number;
|
|
5
|
+
smartico_ext_user_id: string;
|
|
6
|
+
ext_game_id: number;
|
|
7
|
+
lang: string;
|
|
8
|
+
hash: string;
|
|
9
|
+
zoom?: number;
|
|
10
|
+
label_api_key?: string;
|
|
11
|
+
brand_key?: string;
|
|
12
|
+
bridgeId?: string;
|
|
13
|
+
height?: 'auto' | string;
|
|
14
|
+
theme?: string;
|
|
15
|
+
}
|
|
16
|
+
export { GBaseRequest };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ResponseIdentifyLabelInfo } from "../SmarticoProto/PublicLabelInfo";
|
|
2
|
+
import { GamePickRoundBase } from "./GamePick";
|
|
3
|
+
import { SAWTemplate } from "../SmarticoProto/SAW/SAWTemplate";
|
|
4
|
+
interface GameInfo {
|
|
5
|
+
sawTemplate: SAWTemplate;
|
|
6
|
+
allRounds: GamePickRoundBase[];
|
|
7
|
+
labelInfo: ResponseIdentifyLabelInfo;
|
|
8
|
+
}
|
|
9
|
+
export { GameInfo };
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
declare enum GamePickMarketType {
|
|
2
|
+
Goals = 1,
|
|
3
|
+
Winner = 2
|
|
4
|
+
}
|
|
5
|
+
declare enum GamePickResolutionType {
|
|
6
|
+
None = 0,
|
|
7
|
+
Lost = 2,
|
|
8
|
+
PartialWin = 3,
|
|
9
|
+
FullWin = 4
|
|
10
|
+
}
|
|
11
|
+
declare enum GPRoundStatus {
|
|
12
|
+
Other = -1,
|
|
13
|
+
NoEventsDefined = 1,
|
|
14
|
+
NoMoreBetsAllowed = 2,
|
|
15
|
+
AllEventsResolved_ButNotRound = 3,
|
|
16
|
+
RoundResolved = 4
|
|
17
|
+
}
|
|
18
|
+
interface GamePickEventMeta {
|
|
19
|
+
event_name?: string;
|
|
20
|
+
team1_name: string;
|
|
21
|
+
team1_image: string;
|
|
22
|
+
team2_name: string;
|
|
23
|
+
team2_image: string;
|
|
24
|
+
team1_result?: number;
|
|
25
|
+
team2_result?: number;
|
|
26
|
+
}
|
|
27
|
+
interface GamePickEvent {
|
|
28
|
+
gp_event_id: number;
|
|
29
|
+
event_resolution_date: number;
|
|
30
|
+
match_date: number;
|
|
31
|
+
market_type_id: GamePickMarketType;
|
|
32
|
+
event_meta: GamePickEventMeta;
|
|
33
|
+
user_placed_bet: boolean;
|
|
34
|
+
team1_user_selection: number;
|
|
35
|
+
team2_user_selection: number;
|
|
36
|
+
resolution_type_id: GamePickResolutionType;
|
|
37
|
+
resolution_score?: number;
|
|
38
|
+
is_open_for_bets?: boolean;
|
|
39
|
+
}
|
|
40
|
+
interface GamePickRoundBase {
|
|
41
|
+
round_id: number;
|
|
42
|
+
round_row_id: number;
|
|
43
|
+
round_name: string;
|
|
44
|
+
round_description: string;
|
|
45
|
+
open_date: number;
|
|
46
|
+
last_bet_date: number;
|
|
47
|
+
resolution_date: number;
|
|
48
|
+
score_full_win: number;
|
|
49
|
+
score_part_win: number;
|
|
50
|
+
score_lost: number;
|
|
51
|
+
is_active_now: boolean;
|
|
52
|
+
is_resolved: boolean;
|
|
53
|
+
round_status_id: GPRoundStatus;
|
|
54
|
+
events_total: number;
|
|
55
|
+
events_resolved: number;
|
|
56
|
+
public_meta: {
|
|
57
|
+
round_name: string;
|
|
58
|
+
round_description: string;
|
|
59
|
+
_translations: {
|
|
60
|
+
[key: string]: {
|
|
61
|
+
round_name: string;
|
|
62
|
+
round_description: string;
|
|
63
|
+
};
|
|
64
|
+
};
|
|
65
|
+
};
|
|
66
|
+
next_round_open_date: number;
|
|
67
|
+
}
|
|
68
|
+
interface GamePickRoundBoard extends GamePickRoundBase {
|
|
69
|
+
my_user: GamePickBoardUser;
|
|
70
|
+
users: GamePickBoardUser[];
|
|
71
|
+
}
|
|
72
|
+
interface GamePickRound extends GamePickRoundBase {
|
|
73
|
+
events: GamePickEvent[];
|
|
74
|
+
user_score: number;
|
|
75
|
+
user_placed_bet: boolean;
|
|
76
|
+
has_open_for_bet_events?: boolean;
|
|
77
|
+
has_not_submitted_changes?: boolean;
|
|
78
|
+
}
|
|
79
|
+
interface GamePickBoardUser {
|
|
80
|
+
ext_user_id: string;
|
|
81
|
+
int_user_id: number;
|
|
82
|
+
public_username: string;
|
|
83
|
+
avatar_url: string;
|
|
84
|
+
gp_position: number;
|
|
85
|
+
resolution_score: number;
|
|
86
|
+
full_wins_count: number;
|
|
87
|
+
part_wins_count: number;
|
|
88
|
+
lost_count: number;
|
|
89
|
+
}
|
|
90
|
+
export { GamePickRoundBase, GamePickRound, GamePickEvent, GamePickMarketType, GamePickResolutionType, GamePickEventMeta, GPRoundStatus, GamePickRoundBoard, GamePickBoardUser };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { GameInfo } from "./GameInfo";
|
|
2
|
+
import { GamePickRound, GamePickRoundBase } from "./GamePick";
|
|
3
|
+
declare class GameUtil {
|
|
4
|
+
static getRoundName(round: GamePickRoundBase, gameInfo: GameInfo): string;
|
|
5
|
+
static getRoundDescription(round: GamePickRound, gameInfo: GameInfo): string;
|
|
6
|
+
}
|
|
7
|
+
export { GameUtil };
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export declare enum PublicLabelSettings {
|
|
2
|
+
FCM_SENDER_ID = "FCM_SENDER_ID",
|
|
3
|
+
PUBLIC_API_URL = "PUBLIC_API_URL",
|
|
4
|
+
FCM_SW_URL = "FCM_SW_URL",
|
|
5
|
+
RECORDING_ENABLED_FOR_ALL_USERS = "RECORDING_ENABLED_FOR_ALL_USERS",
|
|
6
|
+
JS_INJECTION = "JS_INJECTION",
|
|
7
|
+
GAMIFICATION_UI_MAIN = "GAMIFICATION_UI_MAIN",
|
|
8
|
+
GAMIFICATION_UI_WIDGET = "GAMIFICATION_UI_WIDGET",
|
|
9
|
+
GAMIFICATION_UI_MINI_GAME = "GAMIFICATION_UI_MINI_GAME",
|
|
10
|
+
GAMIFICATION_UI_SETTINGS = "GAMIFICATION_UI_SETTINGS",
|
|
11
|
+
GAMIFICATION_UI_MAIN_TEST = "GAMIFICATION_UI_MAIN_TEST",
|
|
12
|
+
GAMIFICATION_UI_WIDGET_TEST = "GAMIFICATION_UI_WIDGET_TEST",
|
|
13
|
+
GAMIFICATION_UI_SETTINGS_TEST = "GAMIFICATION_UI_SETTINGS_TEST",
|
|
14
|
+
FRONT_END_ALLOWED_LANGUAGES = "FRONT_END_ALLOWED_LANGUAGES",
|
|
15
|
+
FRONT_END_ALLOW_DOMAINS = "FRONT_END_ALLOW_DOMAINS",
|
|
16
|
+
DELAY_ENGAGEMENT_EXECUTION_ON_LOGIN_MS = "DELAY_ENGAGEMENT_EXECUTION_ON_LOGIN_MS",
|
|
17
|
+
SHADOW_LABEL_PUBLIC_KEY = "SHADOW_LABEL_PUBLIC_KEY",
|
|
18
|
+
DYNAMIC_IMAGE_DOMAIN = "DYNAMIC_IMAGE_DOMAIN",
|
|
19
|
+
GAMIFICATION_UI_LEVEL_ENABLED = "GAMIFICATION_UI_LEVEL_ENABLED",
|
|
20
|
+
GAMIFICATION_UI_LEVEL_IMAGE_MOB = "GAMIFICATION_UI_LEVEL_IMAGE_MOB",
|
|
21
|
+
GAMIFICATION_UI_LEVEL_IMAGE_DESK = "GAMIFICATION_UI_LEVEL_IMAGE_DESK",
|
|
22
|
+
GAMIFICATION_LEVELS_LOGIC2 = "GAMIFICATION_LEVELS_LOGIC2",
|
|
23
|
+
AVATAR_CUSTOM_IMAGE_MAX_ID = "AVATAR_CUSTOM_IMAGE_MAX_ID",
|
|
24
|
+
AVATAR_CUSTOM_IMAGE_FOLDER = "AVATAR_CUSTOM_IMAGE_FOLDER",
|
|
25
|
+
RETENTION_GAMES_CUSTOMER_ID = "RETENTION_GAMES_CUSTOMER_ID",
|
|
26
|
+
GAMIFICATION_SHOW_POWERED_BY = "GAMIFICATION_SHOW_POWERED_BY",
|
|
27
|
+
_system_leader_board_mask_username = "_system_leader_board_mask_username"
|
|
28
|
+
}
|
|
29
|
+
export interface ResponseIdentifyLabelInfo {
|
|
30
|
+
settings: {
|
|
31
|
+
[key: string]: string;
|
|
32
|
+
};
|
|
33
|
+
label_id: string;
|
|
34
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export interface PublicProperties {
|
|
2
|
+
core_user_language?: string;
|
|
3
|
+
ach_points_balance?: number;
|
|
4
|
+
ach_points_ever?: number;
|
|
5
|
+
ach_points_board_period_type_1?: number;
|
|
6
|
+
ach_points_board_period_type_2?: number;
|
|
7
|
+
ach_level_current_id?: number;
|
|
8
|
+
ach_level_current?: string;
|
|
9
|
+
core_is_test_account?: boolean;
|
|
10
|
+
ach_gamification_in_control_group?: boolean;
|
|
11
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ProtocolResponse } from "./ProtocolResponse";
|
|
2
|
+
import { PublicProperties } from "./PublicProperties";
|
|
3
|
+
interface ResponseIdentify extends ProtocolResponse {
|
|
4
|
+
user_id: number;
|
|
5
|
+
ext_user_id: string;
|
|
6
|
+
public_username: string;
|
|
7
|
+
avatar_id: string;
|
|
8
|
+
job: boolean;
|
|
9
|
+
props?: PublicProperties;
|
|
10
|
+
pubic_username_set: boolean;
|
|
11
|
+
}
|
|
12
|
+
export { ResponseIdentify };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ProtocolResponse } from "../ProtocolResponse";
|
|
2
|
+
export declare enum SAWSpinErrorCode {
|
|
3
|
+
SAW_OK = 0,
|
|
4
|
+
SAW_NO_SPINS = 40001,
|
|
5
|
+
SAW_PRIZE_POOL_EMPTY = 40002,
|
|
6
|
+
SAW_NOT_ENOUGH_POINTS = 40003,
|
|
7
|
+
SAW_FAILED_MAX_SPINS_REACHED = 40004
|
|
8
|
+
}
|
|
9
|
+
export interface SAWDoSpinResponse extends ProtocolResponse {
|
|
10
|
+
errCode: SAWSpinErrorCode;
|
|
11
|
+
errMsg?: string;
|
|
12
|
+
request_id: string;
|
|
13
|
+
saw_prize_id: number;
|
|
14
|
+
first_spin_in_period: number;
|
|
15
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { SAWPrizeType } from "./SAWPrizeType";
|
|
2
|
+
import { SAWPrizeUI } from "./SAWPrizeUI";
|
|
3
|
+
export interface SAWPrize {
|
|
4
|
+
saw_prize_id: number;
|
|
5
|
+
saw_prize_ui_definition: SAWPrizeUI;
|
|
6
|
+
prize_value?: number;
|
|
7
|
+
prize_type_id: SAWPrizeType;
|
|
8
|
+
place_from?: number;
|
|
9
|
+
place_to?: number;
|
|
10
|
+
sawUniqueWinId?: string;
|
|
11
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { SAWAcknowledgeType } from "./SAWAcknowledgeType";
|
|
2
|
+
import { SAWWinSoundType } from "./SAWWinSoundType";
|
|
3
|
+
export interface SAWPrizeUI {
|
|
4
|
+
position?: number;
|
|
5
|
+
name: string;
|
|
6
|
+
aknowledge_message: string;
|
|
7
|
+
sectors: number[];
|
|
8
|
+
acknowledge_type: SAWAcknowledgeType;
|
|
9
|
+
acknowledge_dp?: string;
|
|
10
|
+
font_size?: number;
|
|
11
|
+
sound_type: SAWWinSoundType;
|
|
12
|
+
icon?: string;
|
|
13
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { SAWBuyInType } from "./SAWBuyInType";
|
|
2
|
+
import { SAWGameType } from "./SAWGameType";
|
|
3
|
+
import { SAWPrize } from "./SAWPrize";
|
|
4
|
+
import { SAWTemplateUI } from "./SAWTemplateUI";
|
|
5
|
+
export interface SAWTemplate {
|
|
6
|
+
saw_template_id: number;
|
|
7
|
+
saw_game_type_id: SAWGameType;
|
|
8
|
+
saw_template_ui_definition: SAWTemplateUI;
|
|
9
|
+
saw_buyin_type_id: SAWBuyInType;
|
|
10
|
+
buyin_cost_points?: number;
|
|
11
|
+
visibile_when_can_spin: boolean;
|
|
12
|
+
spin_count?: number;
|
|
13
|
+
prizes: SAWPrize[];
|
|
14
|
+
is_visible: boolean;
|
|
15
|
+
jackpot_add_on_attempt: number;
|
|
16
|
+
jackpot_current: number;
|
|
17
|
+
jackpot_guaranteed: number;
|
|
18
|
+
maxActiveSpinsAllowed: number;
|
|
19
|
+
maxSpinsCount: number;
|
|
20
|
+
maxSpinsPediodMs: number;
|
|
21
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export declare enum AskForUsername {
|
|
2
|
+
NOASK = "no-ask",
|
|
3
|
+
ONSUMBIT = "on-submit"
|
|
4
|
+
}
|
|
5
|
+
export interface SAWTemplateUI {
|
|
6
|
+
skin: string;
|
|
7
|
+
name: string;
|
|
8
|
+
description?: string;
|
|
9
|
+
over_limit_message?: string;
|
|
10
|
+
no_attempts_message?: string;
|
|
11
|
+
thumbnail?: string;
|
|
12
|
+
sectors_count: number;
|
|
13
|
+
priority: number;
|
|
14
|
+
flow_builder_only: boolean;
|
|
15
|
+
background_image?: string;
|
|
16
|
+
background_image_mobile?: string;
|
|
17
|
+
background_sound?: string;
|
|
18
|
+
scratch_logo?: string;
|
|
19
|
+
scratch_cover?: string;
|
|
20
|
+
scratch_bg_desktop?: string;
|
|
21
|
+
scratch_bg_mobile?: string;
|
|
22
|
+
scratch_cursor?: string;
|
|
23
|
+
custom_css?: string;
|
|
24
|
+
custom_skin_folder?: string;
|
|
25
|
+
jackpot_symbol?: string;
|
|
26
|
+
promo_image?: string;
|
|
27
|
+
promo_text?: string;
|
|
28
|
+
ask_for_username?: AskForUsername;
|
|
29
|
+
show_prize_board?: boolean;
|
|
30
|
+
max_spins_period_ms?: number;
|
|
31
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { TSMap } from "typescript-map";
|
|
2
|
+
declare class Util {
|
|
3
|
+
private constructor();
|
|
4
|
+
static isNumber(value: string): boolean;
|
|
5
|
+
static parseNumber(v: string): number | null;
|
|
6
|
+
static parseBoolean(v: string | boolean): boolean | null;
|
|
7
|
+
static escapeRegExp(v: string): string;
|
|
8
|
+
static nullToEmpty(val: string): string;
|
|
9
|
+
static nullTo0(val: number): number;
|
|
10
|
+
static isNotEmpty(val: string): boolean;
|
|
11
|
+
static isNotNull(val: any): boolean;
|
|
12
|
+
static isNull(val: any): boolean;
|
|
13
|
+
static isArrayNotEmpty(val: any[]): boolean;
|
|
14
|
+
static isArrayEmpty(val: any[]): boolean;
|
|
15
|
+
static isObjectEmpty(val: any): boolean;
|
|
16
|
+
static isMapNotEmpty(val: TSMap<any, any>): boolean;
|
|
17
|
+
static isMapEmpty(val: TSMap<any, any>): boolean;
|
|
18
|
+
static objectToMap<K, V>(obj: any): TSMap<K, V> | null;
|
|
19
|
+
static keyByValue(obj: any, value: any): string | null;
|
|
20
|
+
static greaterThen0(val: number): boolean;
|
|
21
|
+
static not0(val: number): boolean;
|
|
22
|
+
static lessThen0(val: number): boolean;
|
|
23
|
+
static compareUndefined(o1: any, o2: any): number;
|
|
24
|
+
static compareArrayLength<T>(o1: T[], o2: T[]): number;
|
|
25
|
+
static compareObject(a: {
|
|
26
|
+
[key: string]: any;
|
|
27
|
+
}, b: {
|
|
28
|
+
[key: string]: any;
|
|
29
|
+
}): boolean;
|
|
30
|
+
static compareArrays<T>(arr1: T[], arr2: T[], comparator: (t1: T, t2: T) => number): number;
|
|
31
|
+
static compareBool(o1: boolean, o2: boolean): number;
|
|
32
|
+
static compareNumber(o1: number, o2: number): number;
|
|
33
|
+
static compareString(o1: string, o2: string): number;
|
|
34
|
+
static range(from: number, to: number): number[];
|
|
35
|
+
static has(array: any[], val: any): boolean;
|
|
36
|
+
static isEmpty(val: string): boolean;
|
|
37
|
+
static checkNotNull<T>(reference: T, msg?: string): T;
|
|
38
|
+
static randomInt(min: number, max: number): number;
|
|
39
|
+
static randomArr<T>(arr: T[]): T | undefined;
|
|
40
|
+
static remove<T>(arr: T[], item: T): boolean;
|
|
41
|
+
static replaceAll(value: string, regex: string, replacement: string | number): string;
|
|
42
|
+
static to<T, U = any>(promise: Promise<T>, errorExt?: object): Promise<[U | null, T | undefined]>;
|
|
43
|
+
static isObject(item: any): boolean;
|
|
44
|
+
static merge(target: any, ...sources: any[]): any;
|
|
45
|
+
static deepCopy(source: object): object;
|
|
46
|
+
static uuid: () => string;
|
|
47
|
+
static getStackTrace(): string | undefined;
|
|
48
|
+
static shuffleArray(array: any[]): any[];
|
|
49
|
+
static buildValidationHash(ext_user_id: string, ext_game_id: number, customer_id: string, secretKey: string): string;
|
|
50
|
+
}
|
|
51
|
+
export { Util };
|
|
@@ -180,3 +180,27 @@ ___
|
|
|
180
180
|
• `Optional` **active\_till\_date**: `number`
|
|
181
181
|
|
|
182
182
|
The date when the store item will be available till
|
|
183
|
+
|
|
184
|
+
___
|
|
185
|
+
|
|
186
|
+
### discounted\_price
|
|
187
|
+
|
|
188
|
+
• `Optional` **discounted\_price**: `number`
|
|
189
|
+
|
|
190
|
+
The discounted price of the store item
|
|
191
|
+
|
|
192
|
+
___
|
|
193
|
+
|
|
194
|
+
### discount\_price\_ribbon
|
|
195
|
+
|
|
196
|
+
• `Optional` **discount\_price\_ribbon**: `string`
|
|
197
|
+
|
|
198
|
+
The ribbon of the discounted price.
|
|
199
|
+
|
|
200
|
+
___
|
|
201
|
+
|
|
202
|
+
### custom\_ribbon\_image
|
|
203
|
+
|
|
204
|
+
• `Optional` **custom\_ribbon\_image**: `string`
|
|
205
|
+
|
|
206
|
+
The custom ribbon image of the discounted price.
|
package/package.json
CHANGED
package/src/SmarticoAPI.ts
CHANGED
|
@@ -505,18 +505,18 @@ class SmarticoAPI {
|
|
|
505
505
|
return GetJackpotWinnersResponseTransform((await this.getJackpotWinners(user_ext_id, limit, offset, jp_template_id)).winners);
|
|
506
506
|
}
|
|
507
507
|
|
|
508
|
-
public async getJackpotEligibleGames(user_ext_id: string, jp_template_id: number): Promise<GetJackpotEligibleGamesResponse> {
|
|
508
|
+
public async getJackpotEligibleGames(user_ext_id: string, { jp_template_id } : { jp_template_id: number }): Promise<GetJackpotEligibleGamesResponse> {
|
|
509
509
|
const message = this.buildMessage<GetJackpotEligibleGamesRequest, GetJackpotEligibleGamesResponse>(
|
|
510
510
|
user_ext_id,
|
|
511
511
|
ClassId.JP_GET_ELIGIBLE_GAMES_REQUEST,
|
|
512
512
|
{ jp_template_id },
|
|
513
513
|
);
|
|
514
514
|
|
|
515
|
-
return await this.send<GetJackpotEligibleGamesResponse>(message, ClassId.JP_GET_ELIGIBLE_GAMES_RESPONSE)
|
|
515
|
+
return await this.send<GetJackpotEligibleGamesResponse>(message, ClassId.JP_GET_ELIGIBLE_GAMES_RESPONSE);;
|
|
516
516
|
}
|
|
517
517
|
|
|
518
|
-
public async getJackpotEligibleGamesT(user_ext_id: string, jp_template_id: number ): Promise<TGetJackpotEligibleGamesResponse> {
|
|
519
|
-
return GetJackpotEligibleGamesResponseTransform(
|
|
518
|
+
public async getJackpotEligibleGamesT(user_ext_id: string, { jp_template_id } : { jp_template_id: number }): Promise<TGetJackpotEligibleGamesResponse> {
|
|
519
|
+
return GetJackpotEligibleGamesResponseTransform(await this.getJackpotEligibleGames(user_ext_id, { jp_template_id }));
|
|
520
520
|
}
|
|
521
521
|
|
|
522
522
|
public async sawGetTemplates(
|
package/src/Store/StoreItem.ts
CHANGED
|
@@ -48,7 +48,10 @@ export const StoreItemTransform = (items: StoreItem[]): TStoreItem[] => {
|
|
|
48
48
|
category_ids: r.categoryIds ?? [],
|
|
49
49
|
pool: r.shopPool,
|
|
50
50
|
custom_data: IntUtils.JsonOrText(r.itemPublicMeta.custom_data),
|
|
51
|
-
active_till_date: r.activeTillDate
|
|
51
|
+
active_till_date: r.activeTillDate,
|
|
52
|
+
discounted_price: r.itemPublicMeta.discount_prize,
|
|
53
|
+
discount_price_ribbon: r.itemPublicMeta.discount_prize_ribbon,
|
|
54
|
+
custom_ribbon_image: r.itemPublicMeta.custom_ribbon_image,
|
|
52
55
|
};
|
|
53
56
|
return x;
|
|
54
57
|
});
|
package/src/WSAPI/WSAPI.ts
CHANGED
|
@@ -1112,15 +1112,15 @@ export class WSAPI {
|
|
|
1112
1112
|
*
|
|
1113
1113
|
*/
|
|
1114
1114
|
|
|
1115
|
-
public async getJackpotEligibleGames({ jp_template_id, onUpdate }: { jp_template_id: number, onUpdate?: () => void }): Promise<TGetJackpotEligibleGamesResponse> {
|
|
1115
|
+
public async getJackpotEligibleGames({ jp_template_id, onUpdate } : { jp_template_id: number, onUpdate?: () => void }): Promise<TGetJackpotEligibleGamesResponse> {
|
|
1116
1116
|
if (onUpdate) {
|
|
1117
1117
|
this.onUpdateCallback.set(onUpdateContextKey.JackpotEligibleGames, onUpdate);
|
|
1118
1118
|
}
|
|
1119
1119
|
|
|
1120
1120
|
return OCache.use(
|
|
1121
|
-
onUpdateContextKey.JackpotEligibleGames,
|
|
1121
|
+
onUpdateContextKey.JackpotEligibleGames + jp_template_id,
|
|
1122
1122
|
ECacheContext.WSAPI,
|
|
1123
|
-
() => this.api.getJackpotEligibleGamesT(null, jp_template_id),
|
|
1123
|
+
() => this.api.getJackpotEligibleGamesT(null, { jp_template_id }),
|
|
1124
1124
|
JACKPOT_ELIGIBLE_GAMES_CACHE_SEC,
|
|
1125
1125
|
);
|
|
1126
1126
|
}
|
package/src/WSAPI/WSAPITypes.ts
CHANGED
|
@@ -477,6 +477,12 @@ export interface TStoreItem {
|
|
|
477
477
|
purchase_type: 'points' | 'gems' | 'diamonds';
|
|
478
478
|
/** The date when the store item will be available till */
|
|
479
479
|
active_till_date?: number;
|
|
480
|
+
/** The discounted price of the store item */
|
|
481
|
+
discounted_price?: number;
|
|
482
|
+
/** The ribbon of the discounted price. */
|
|
483
|
+
discount_price_ribbon?: string;
|
|
484
|
+
/** The custom ribbon image of the discounted price. */
|
|
485
|
+
custom_ribbon_image?: string;
|
|
480
486
|
}
|
|
481
487
|
|
|
482
488
|
/**
|