@smartico/public-api 0.0.380 → 0.0.381
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/CLAUDE.md +103 -0
- package/README.md +32 -10
- package/dist/Base/ClassId.d.ts +2 -0
- package/dist/Jackpots/JackpotDetails.d.ts +14 -15
- package/dist/Jackpots/JackpotPot.d.ts +10 -6
- package/dist/Raffle/GetRaffleWonPrizesRequest.d.ts +9 -0
- package/dist/Raffle/GetRaffleWonPrizesResponse.d.ts +52 -0
- package/dist/Raffle/index.d.ts +2 -0
- package/dist/SmarticoAPI.d.ts +6 -1
- package/dist/SmarticoLib/index.d.ts +5 -1
- package/dist/WSAPI/WSAPIAvatars.d.ts +267 -49
- package/dist/WSAPI/WSAPIBonuses.d.ts +224 -10
- package/dist/WSAPI/WSAPIGamePick.d.ts +538 -253
- package/dist/WSAPI/WSAPIGeneral.d.ts +156 -14
- package/dist/WSAPI/WSAPIInbox.d.ts +547 -58
- package/dist/WSAPI/WSAPIJackpots.d.ts +292 -57
- package/dist/WSAPI/WSAPILeaderBoard.d.ts +127 -13
- package/dist/WSAPI/WSAPIMiniGames.d.ts +465 -49
- package/dist/WSAPI/WSAPIRaffles.d.ts +576 -52
- package/dist/WSAPI/WSAPITournaments.d.ts +3 -3
- package/dist/WSAPI/WSAPITypes.d.ts +243 -132
- package/dist/WSAPI/WSAPIUser.d.ts +193 -43
- package/dist/index.js +3409 -615
- package/dist/index.js.map +1 -1
- package/dist/index.modern.mjs +3391 -608
- package/dist/index.modern.mjs.map +1 -1
- package/docs/Callbacks.md +162 -0
- package/docs/SmarticoObject.md +445 -0
- package/docs/Transforms.md +99 -0
- package/docs/api/README.md +26 -0
- package/docs/api/classes/WSAPIAvatars.md +282 -54
- package/docs/api/classes/WSAPIBonuses.md +233 -12
- package/docs/api/classes/WSAPIClans.md +380 -10
- package/docs/api/classes/WSAPIGamePick.md +555 -26
- package/docs/api/classes/WSAPIGeneral.md +165 -16
- package/docs/api/classes/WSAPIInbox.md +588 -64
- package/docs/api/classes/WSAPIJackpots.md +320 -66
- package/docs/api/classes/WSAPILeaderBoard.md +133 -15
- package/docs/api/classes/WSAPIMiniGames.md +501 -64
- package/docs/api/classes/WSAPIMissions.md +58 -79
- package/docs/api/classes/WSAPIRaffles.md +647 -69
- package/docs/api/classes/WSAPIStore.md +83 -108
- package/docs/api/classes/WSAPITournaments.md +495 -28
- package/docs/api/classes/WSAPIUser.md +520 -83
- package/docs/api/documents/Callbacks.md +162 -0
- package/docs/api/documents/SmarticoObject.md +445 -0
- package/docs/api/documents/Transforms.md +99 -0
- package/docs/api/enumerations/BonusStatus-1.md +11 -6
- package/docs/api/enumerations/JoinClanErrorCode.md +81 -0
- package/docs/api/enumerations/TournamentRegistrationError.md +12 -0
- package/docs/api/functions/clanTournamentPlayersTransform.md +13 -0
- package/docs/api/interfaces/AvatarCustomized.md +25 -0
- package/docs/api/interfaces/AvatarDefinition.md +94 -0
- package/docs/api/interfaces/AvatarPrompt.md +45 -0
- package/docs/api/interfaces/BonusMetaMap-1.md +4 -1
- package/docs/api/interfaces/BonusTemplateMetaMap-1.md +9 -4
- package/docs/api/interfaces/Clan.md +4 -0
- package/docs/api/interfaces/ClanInfo.md +109 -0
- package/docs/api/interfaces/ClanMember.md +53 -0
- package/docs/api/interfaces/ClanTournamentPlayerRaw.md +67 -0
- package/docs/api/interfaces/GemsDiamondsLog.md +43 -0
- package/docs/api/interfaces/GetClanInfoResponse.md +61 -0
- package/docs/api/interfaces/GetClanTournamentPlayersResponse.md +81 -0
- package/docs/api/interfaces/GetRaffleWonPrizesRequest.md +59 -0
- package/docs/api/interfaces/GetRaffleWonPrizesResponse.md +95 -0
- package/docs/api/interfaces/InboxMarkMessageAction.md +10 -2
- package/docs/api/interfaces/JackpotDetails.md +14 -15
- package/docs/api/interfaces/JackpotPot.md +9 -6
- package/docs/api/interfaces/LeaderBoardDetailsT.md +14 -8
- package/docs/api/interfaces/LeaderBoardUserT.md +8 -5
- package/docs/api/interfaces/LeaderBoardsRewardsT.md +7 -0
- package/docs/api/interfaces/PointsLog.md +43 -0
- package/docs/api/interfaces/RaffleWonPrize.md +59 -0
- package/docs/api/interfaces/RaffleWonPrizePublicMeta.md +27 -0
- package/docs/api/interfaces/RaffleWonPrizeUser.md +43 -0
- package/docs/api/interfaces/TAchCategory.md +2 -7
- package/docs/api/interfaces/TAvatarCustomized.md +4 -4
- package/docs/api/interfaces/TAvatarDefinition.md +13 -14
- package/docs/api/interfaces/TAvatarPrompt.md +6 -6
- package/docs/api/interfaces/TBonus.md +16 -8
- package/docs/api/interfaces/TBuyStoreItemResult.md +4 -29
- package/docs/api/interfaces/TClaimBonusResult.md +5 -5
- package/docs/api/interfaces/TClan.md +8 -4
- package/docs/api/interfaces/TClanInfo.md +47 -0
- package/docs/api/interfaces/TClanJoinResult.md +11 -1
- package/docs/api/interfaces/TClanTournamentPlayer.md +55 -0
- package/docs/api/interfaces/TClanTournamentPlayersResult.md +27 -0
- package/docs/api/interfaces/TClans.md +3 -1
- package/docs/api/interfaces/TGetTranslations.md +4 -0
- package/docs/api/interfaces/TInboxMessage.md +14 -6
- package/docs/api/interfaces/TInboxMessageBody.md +18 -12
- package/docs/api/interfaces/TLevel.md +17 -20
- package/docs/api/interfaces/TLevelCurrent.md +19 -18
- package/docs/api/interfaces/TMiniGamePlayBatchResult.md +14 -6
- package/docs/api/interfaces/TMiniGamePlayResult.md +9 -4
- package/docs/api/interfaces/TMissionClaimRewardResult.md +1 -9
- package/docs/api/interfaces/TMissionOptInResult.md +1 -5
- package/docs/api/interfaces/TMissionOrBadge.md +4 -7
- package/docs/api/interfaces/TRaffleOptinResponse.md +4 -2
- package/docs/api/interfaces/TSegmentCheckResult.md +10 -0
- package/docs/api/interfaces/TSetAvatarResult.md +3 -3
- package/docs/api/interfaces/TStoreItem.md +3 -13
- package/docs/api/interfaces/TTournament.md +1 -1
- package/docs/api/interfaces/TTournamentDetailed.md +1 -1
- package/docs/api/interfaces/TTournamentRegistrationResult.md +4 -2
- package/docs/api/interfaces/TUICustomSection.md +23 -19
- package/docs/api/interfaces/TUserProfile.md +18 -16
- package/docs/api/interfaces/TransformedRaffleClaimPrizeResponse.md +6 -2
- package/docs/api/interfaces/UserLevelExtraCountersT.md +9 -2
- package/docs/api/type-aliases/ActivityLogEntry.md +3 -0
- package/docs/native/ADDING_METHODS.md +7 -2
- package/docs/native/PROTOCOL.md +337 -0
- package/docs/ui/avatars/UIGuide_getAvatarPrompts.md +100 -0
- package/docs/ui/avatars/UIGuide_getAvatarsCustomized.md +90 -0
- package/docs/ui/avatars/UIGuide_getAvatarsList.md +105 -0
- package/docs/ui/avatars/UIGuide_setAvatar.md +118 -0
- package/docs/ui/bonuses/UIGuide_claimBonus.md +144 -0
- package/docs/ui/bonuses/UIGuide_getBonuses.md +176 -0
- package/docs/ui/gamepick/UIGuide_gamePickGetActiveRound.md +99 -0
- package/docs/ui/gamepick/UIGuide_gamePickGetActiveRounds.md +76 -0
- package/docs/ui/gamepick/UIGuide_gamePickGetBoard.md +81 -0
- package/docs/ui/gamepick/UIGuide_gamePickGetGameInfo.md +78 -0
- package/docs/ui/gamepick/UIGuide_gamePickGetHistory.md +55 -0
- package/docs/ui/gamepick/UIGuide_gamePickGetRoundInfoForUser.md +71 -0
- package/docs/ui/gamepick/UIGuide_gamePickGetUserInfo.md +64 -0
- package/docs/ui/gamepick/UIGuide_gamePickSubmitSelection.md +103 -0
- package/docs/ui/gamepick/UIGuide_gamePickSubmitSelectionQuiz.md +67 -0
- package/docs/ui/general/UIGuide_getCustomSections.md +137 -0
- package/docs/ui/general/UIGuide_getRelatedItemsForGame.md +140 -0
- package/docs/ui/inbox/UIGuide_deleteInboxMessage.md +135 -0
- package/docs/ui/inbox/UIGuide_getInboxMessageBody.md +133 -0
- package/docs/ui/inbox/UIGuide_getInboxMessages.md +186 -0
- package/docs/ui/inbox/UIGuide_markInboxMessageAsRead.md +122 -0
- package/docs/ui/inbox/UIGuide_markUnmarkInboxMessageAsFavorite.md +84 -0
- package/docs/ui/jackpots/UIGuide_getJackpotEligibleGames.md +73 -0
- package/docs/ui/jackpots/UIGuide_getJackpotWinners.md +83 -0
- package/docs/ui/jackpots/UIGuide_jackpotGet.md +138 -0
- package/docs/ui/jackpots/UIGuide_jackpotOptIn.md +85 -0
- package/docs/ui/jackpots/UIGuide_jackpotOptOut.md +65 -0
- package/docs/ui/leaderboard/UIGuide_getLeaderBoard.md +166 -0
- package/docs/ui/minigames/UIGuide_getMiniGames.md +153 -0
- package/docs/ui/minigames/UIGuide_getMiniGamesHistory.md +90 -0
- package/docs/ui/minigames/UIGuide_playMiniGame.md +150 -0
- package/docs/ui/minigames/UIGuide_playMiniGameBatch.md +128 -0
- package/docs/ui/raffles/UIGuide_claimRafflePrize.md +99 -0
- package/docs/ui/raffles/UIGuide_getRaffleDrawRun.md +117 -0
- package/docs/ui/raffles/UIGuide_getRaffleDrawRunsHistory.md +92 -0
- package/docs/ui/raffles/UIGuide_getRaffleWonPrizes.md +120 -0
- package/docs/ui/raffles/UIGuide_getRaffles.md +175 -0
- package/docs/ui/raffles/UIGuide_requestRaffleOptin.md +114 -0
- package/docs/ui/user/UIGuide_getActivityLog.md +130 -0
- package/docs/ui/user/UIGuide_getLevels.md +47 -42
- package/package.json +1 -1
- package/src/Base/ClassId.ts +2 -0
- package/src/Jackpots/JackpotDetails.ts +14 -15
- package/src/Jackpots/JackpotPot.ts +10 -6
- package/src/Raffle/GetRaffleWonPrizesRequest.ts +12 -0
- package/src/Raffle/GetRaffleWonPrizesResponse.ts +56 -0
- package/src/Raffle/index.ts +3 -1
- package/src/SmarticoAPI.ts +14 -1
- package/src/SmarticoLib/index.ts +4 -0
- package/src/WSAPI/WSAPIAvatars.ts +267 -49
- package/src/WSAPI/WSAPIBonuses.ts +224 -10
- package/src/WSAPI/WSAPIGamePick.ts +538 -253
- package/src/WSAPI/WSAPIGeneral.ts +156 -14
- package/src/WSAPI/WSAPIInbox.ts +545 -56
- package/src/WSAPI/WSAPIJackpots.ts +297 -61
- package/src/WSAPI/WSAPILeaderBoard.ts +127 -13
- package/src/WSAPI/WSAPIMiniGames.ts +465 -49
- package/src/WSAPI/WSAPIRaffles.ts +592 -64
- package/src/WSAPI/WSAPITournaments.ts +3 -3
- package/src/WSAPI/WSAPITypes.ts +243 -132
- package/src/WSAPI/WSAPIUser.ts +193 -43
- package/tsconfig.json +9 -1
package/CLAUDE.md
ADDED
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
# public-api (`@smartico/public-api`)
|
|
2
|
+
|
|
3
|
+
Smartico's public WebSocket SDK. This code is compiled (by the `tracker`
|
|
4
|
+
repo's Rollup) straight into the browser bundles served from CloudFront —
|
|
5
|
+
**every line here ships to end users' browsers.**
|
|
6
|
+
|
|
7
|
+
## Conventions / footguns
|
|
8
|
+
|
|
9
|
+
- **Keep code compact — it's bundle size.** This SDK is shipped to the
|
|
10
|
+
browser, so added code is added download weight for every end user. Prefer
|
|
11
|
+
the smallest implementation that does the job:
|
|
12
|
+
- **Don't write a transform that is ~1:1 with the wire shape.** If a
|
|
13
|
+
protocol response is already the shape consumers need, expose the
|
|
14
|
+
`…Response` protocol type directly instead of defining a parallel `T…`
|
|
15
|
+
interface plus a `…Transform()` mapper. Reserve transforms for cases
|
|
16
|
+
that genuinely reshape, flatten, rename, or compute (e.g.
|
|
17
|
+
`raffleTransform`, `drawRunTransform`).
|
|
18
|
+
- Don't add parallel type hierarchies, defensive copies, or wrapper layers
|
|
19
|
+
that don't earn their bytes.
|
|
20
|
+
- Favor reusing existing helpers/types over introducing near-duplicates.
|
|
21
|
+
- TSDoc/comments are stripped from the bundle — document generously; it's
|
|
22
|
+
only runtime code that counts against size.
|
|
23
|
+
|
|
24
|
+
## Documentation (`docs/`)
|
|
25
|
+
|
|
26
|
+
The SDK ships a documentation set under `docs/`. It mixes **TypeDoc-generated
|
|
27
|
+
reference** with **hand-authored concept/guide docs**. Build wiring lives in
|
|
28
|
+
`package.json` (the `doc` script) and `tsconfig.json` (`typedocOptions`).
|
|
29
|
+
|
|
30
|
+
### Layout — what is generated vs hand-authored
|
|
31
|
+
|
|
32
|
+
| Path | Created by | What it is |
|
|
33
|
+
|---|---|---|
|
|
34
|
+
| `docs/api/` | **Generated** by `typedoc` | The API reference — one page per WSAPI class / interface / enum / type / function, built from the TSDoc in `src/`. Subfolders: `classes/`, `interfaces/`, `enumerations/`, `type-aliases/`, `functions/`, `variables/`, `documents/`. Wiped and rebuilt on every `npm run doc` (`cleanOutputDir: true`). **Never hand-edit — changes are overwritten.** To add a page, add the source `.ts` to `typedocOptions.entryPoints` in `tsconfig.json`; never hand-create the `.md`. |
|
|
35
|
+
| `docs/ui/<domain>/UIGuide_<method>.md` | Hand-authored | Per-method UI guidance (rendering patterns, polling cadence, CTA gating). Method TSDoc links here via a relative `[UI Guide](../../docs/ui/...)` reference instead of inlining long UI prose. One folder per domain (`raffles`, `store`, `missions`, …). |
|
|
36
|
+
| `docs/SmarticoObject.md` | Hand-authored | Reference for the global `_smartico` object's **core** methods (`init`, identify, deep links, widget embedding, push). Sourced from the tracker repo's `../tracker/src/tracker/Smartico.ts` — these methods live in the tracker, not here. |
|
|
37
|
+
| `docs/Callbacks.md` | Hand-authored | The `_smartico.on(...)` lifecycle/engagement event catalogue. Sourced from the tracker's external-callback enum + its `triggerExternalCallBack` sites. |
|
|
38
|
+
| `docs/Transforms.md` | Hand-authored | Concept doc for the raw-protocol → friendly-`T`-type transform layer (the `T`-type / `*Transform` fn / `*T` method convention described above). |
|
|
39
|
+
| `docs/native/PROTOCOL.md`, `docs/native/ADDING_METHODS.md` | Hand-authored | Raw WebSocket protocol spec for native (Kotlin/Swift) clients, which speak the wire directly and do **not** get the JS transforms. Documents raw request/response shapes + `ClassId`s — the one place `ClassId` values are allowed in docs. |
|
|
40
|
+
|
|
41
|
+
The three concept docs (`SmarticoObject.md`, `Callbacks.md`, `Transforms.md`)
|
|
42
|
+
are wired into TypeDoc via `typedocOptions.projectDocuments`, so they render
|
|
43
|
+
inside the generated `docs/api` site alongside the reference.
|
|
44
|
+
|
|
45
|
+
### Build
|
|
46
|
+
|
|
47
|
+
- `npm run doc` = `typedoc && node scripts/postdoc-cleanup.js`.
|
|
48
|
+
- `typedoc` is driven entirely by `typedocOptions` in `tsconfig.json`:
|
|
49
|
+
`entryPoints` (the `src/**` files whose exports become reference pages —
|
|
50
|
+
**add new public types/classes here or they won't appear in `docs/api`**),
|
|
51
|
+
`out: docs/api`, `projectDocuments`, the markdown + merge-modules plugins, and
|
|
52
|
+
flags (`excludePrivate`, `excludeProtected`, `disableSources`,
|
|
53
|
+
`cleanOutputDir`, …).
|
|
54
|
+
- `scripts/postdoc-cleanup.js` post-processes what TypeDoc can't configure away:
|
|
55
|
+
strips inheritance-chain "Extends / Extended by" blocks, strips methods
|
|
56
|
+
duplicated onto every subclass by the prototype chain, and rewrites the
|
|
57
|
+
`_media/`-copied UI-guide links back to `docs/ui/` (single source of truth).
|
|
58
|
+
- **`npm run doc` is human-triggered after a batch of approved doc edits — do
|
|
59
|
+
not run it as part of a code change, and never edit `docs/api/**` by hand.**
|
|
60
|
+
|
|
61
|
+
### Authoring rules (from the `api-tsdoc` / `api-tsdoc-final` skills)
|
|
62
|
+
|
|
63
|
+
These docs are the **public SDK contract** read by 3rd-party integrators, so all
|
|
64
|
+
TSDoc and concept-doc content is strictly consumer-facing:
|
|
65
|
+
|
|
66
|
+
- **No internal references** in `/** */` blocks or concept docs: no DB
|
|
67
|
+
schemas/tables, server class/file refs, `ClassId` values (except in
|
|
68
|
+
`PROTOCOL.md`, the raw spec), internal enum/status numbers, cache/infra names,
|
|
69
|
+
Jira refs, or BO admin paths. Describe *behavior*, not implementation. Call
|
|
70
|
+
the in-tracker reference UI **"the default Smartico UI."**
|
|
71
|
+
- **Type docs vs method docs split.** `WSAPITypes.ts` field comments are terse
|
|
72
|
+
one-line definitions ("what is this field"); the `WSAPI<Domain>.ts` method
|
|
73
|
+
TSDoc carries narrative usage prose ("what you do with it" — preconditions,
|
|
74
|
+
error tables, refresh/cache semantics, idempotency, visitor mode). Don't
|
|
75
|
+
duplicate a field-by-field reference into the method TSDoc.
|
|
76
|
+
- **Wrapper result types** (`err_code` / `err_message`) get a one-line pointer
|
|
77
|
+
to the owning method's TSDoc, not a duplicated error table.
|
|
78
|
+
- `@example` blocks use `console.log` / `console.error` with descriptive
|
|
79
|
+
messages stating what the consumer's UI should do — never pseudo-handlers
|
|
80
|
+
(`toast`, `showError`) or internal types.
|
|
81
|
+
- `/api-tsdoc <method>` enriches one method (+ its UI guide); `/api-tsdoc-final`
|
|
82
|
+
runs the whole release doc batch (callbacks, `_smartico` object, native
|
|
83
|
+
protocol, transforms, method TSDocs) and stops at a prepared commit message.
|
|
84
|
+
Both **never commit and never run `npm run doc`.**
|
|
85
|
+
|
|
86
|
+
### Relationship to the `tracker` repo (`../tracker`)
|
|
87
|
+
|
|
88
|
+
This package is published to npm as `@smartico/public-api` and **consumed** by
|
|
89
|
+
the sibling `../tracker` repo, which is what actually ships to browsers. In
|
|
90
|
+
`../tracker/src/tracker/Smartico.ts` the tracker constructs a `SmarticoAPI` and
|
|
91
|
+
exposes its `getWSCalls()` result as `_smartico.api` (the `WSAPI` surface these
|
|
92
|
+
docs document), plus a visitor-mode `_smartico.vapi`. Consequences:
|
|
93
|
+
|
|
94
|
+
- The `docs/api` reference documents exactly the `_smartico.api.*` methods the
|
|
95
|
+
tracker re-exports. A method added here (e.g. `getRaffleWonPrizes`) reaches
|
|
96
|
+
`_smartico.api` only once the tracker bumps its dependency
|
|
97
|
+
(`npm run bump-tracker`, i.e. `npm install @smartico/public-api@latest` in
|
|
98
|
+
`../tracker`) and re-bundles.
|
|
99
|
+
- `docs/SmarticoObject.md` documents the *other* half — the core `_smartico.*`
|
|
100
|
+
methods that live in the tracker's `Smartico.ts`, not in this repo. Keeping it
|
|
101
|
+
current means reading that tracker file (the `api-tsdoc-final` batch diffs it).
|
|
102
|
+
- `docs/Callbacks.md` likewise tracks the tracker's external-callback enum and
|
|
103
|
+
emit sites.
|
package/README.md
CHANGED
|
@@ -38,29 +38,51 @@ _smartico.api.getMiniGames( { onUpdate: miniGamesUpdates} ).then( games => {
|
|
|
38
38
|
|
|
39
39
|
```
|
|
40
40
|
|
|
41
|
+
## The `_smartico` object
|
|
42
|
+
|
|
43
|
+
Beyond `_smartico.api.*`, the global `_smartico` object exposes core methods for initialization, user identity, language, deep links, embedding widgets, and push — `_smartico.init(...)`, `_smartico.online(...)`, `_smartico.dp(...)`, `_smartico.showWidget(...)`, etc.
|
|
44
|
+
|
|
45
|
+
See the [**`_smartico` object reference**](docs/SmarticoObject.md) for the most important core methods, their arguments, and usage notes.
|
|
46
|
+
|
|
47
|
+
## Event callbacks
|
|
48
|
+
|
|
49
|
+
Beyond the `_smartico.api.*` request/response methods, the SDK emits lifecycle and engagement events (user identified, balance changed, gamification widget opened, mini-game won, jackpot hit, …). Subscribe with `_smartico.on('<event>', handler)`:
|
|
50
|
+
|
|
51
|
+
```javascript
|
|
52
|
+
|
|
53
|
+
_smartico.on('props_change', (props) => {
|
|
54
|
+
console.log('User properties changed', props);
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
See the [**Event callbacks reference**](docs/Callbacks.md) for the full list of events, when each fires, and the handler arguments.
|
|
60
|
+
|
|
41
61
|
## API reference
|
|
42
62
|
|
|
43
63
|
The SDK surface is split across one class per feature area, joined by an internal inheritance chain. Consumers always call `_smartico.api.<methodName>(...)` — the chain is an implementation detail; never import the domain classes directly.
|
|
44
64
|
|
|
45
65
|
| Domain | Reference | Methods | UI Guides |
|
|
46
66
|
|---|---|---|---|
|
|
47
|
-
| **User / Profile / Levels** | [`WSAPIUser`](docs/api/classes/WSAPIUser.md) | `getUserProfile`, `checkSegmentMatch`, `checkSegmentListMatch`, `getLevels`, `getCurrentLevel`, `getUserLevelExtraCounters`, `getActivityLog` | [`getUserProfile`](docs/ui/user/UIGuide_getUserProfile.md) · [`getLevels`](docs/ui/user/UIGuide_getLevels.md) |
|
|
48
|
-
| **General / Utility** | [`WSAPIGeneral`](docs/api/classes/WSAPIGeneral.md) | `getCustomSections`, `getTranslations`, `getRelatedItemsForGame` |
|
|
67
|
+
| **User / Profile / Levels** | [`WSAPIUser`](docs/api/classes/WSAPIUser.md) | `getUserProfile`, `checkSegmentMatch`, `checkSegmentListMatch`, `getLevels`, `getCurrentLevel`, `getUserLevelExtraCounters`, `getActivityLog` | [`getUserProfile`](docs/ui/user/UIGuide_getUserProfile.md) · [`getLevels`](docs/ui/user/UIGuide_getLevels.md) · [`getActivityLog`](docs/ui/user/UIGuide_getActivityLog.md) |
|
|
68
|
+
| **General / Utility** | [`WSAPIGeneral`](docs/api/classes/WSAPIGeneral.md) | `getCustomSections`, `getTranslations`, `getRelatedItemsForGame` | [`getCustomSections`](docs/ui/general/UIGuide_getCustomSections.md) · [`getRelatedItemsForGame`](docs/ui/general/UIGuide_getRelatedItemsForGame.md) |
|
|
49
69
|
| **Missions & Badges** | [`WSAPIMissions`](docs/api/classes/WSAPIMissions.md) | `getMissions`, `getBadges`, `getAchCategories`, `requestMissionOptIn`, `requestMissionClaimReward` | [`getMissions`](docs/ui/missions/UIGuide_getMissions.md) · [`getBadges`](docs/ui/missions/UIGuide_getBadges.md) · [`getAchCategories`](docs/ui/missions/UIGuide_getAchCategories.md) · [`requestMissionOptIn`](docs/ui/missions/UIGuide_requestMissionOptIn.md) · [`requestMissionClaimReward`](docs/ui/missions/UIGuide_requestMissionClaimReward.md) |
|
|
50
|
-
| **Bonuses** | [`WSAPIBonuses`](docs/api/classes/WSAPIBonuses.md) | `getBonuses`, `claimBonus` |
|
|
70
|
+
| **Bonuses** | [`WSAPIBonuses`](docs/api/classes/WSAPIBonuses.md) | `getBonuses`, `claimBonus` | [`getBonuses`](docs/ui/bonuses/UIGuide_getBonuses.md) · [`claimBonus`](docs/ui/bonuses/UIGuide_claimBonus.md) |
|
|
51
71
|
| **Store / Shop** | [`WSAPIStore`](docs/api/classes/WSAPIStore.md) | `getStoreItems`, `buyStoreItem`, `getStoreCategories`, `getStorePurchasedItems` | [`getStoreItems`](docs/ui/store/UIGuide_getStoreItems.md) · [`buyStoreItem`](docs/ui/store/UIGuide_buyStoreItem.md) · [`getStoreCategories`](docs/ui/store/UIGuide_getStoreCategories.md) · [`getStorePurchasedItems`](docs/ui/store/UIGuide_getStorePurchasedItems.md) |
|
|
52
72
|
| **Tournaments** | [`WSAPITournaments`](docs/api/classes/WSAPITournaments.md) | `getTournamentsList`, `getTournamentInstanceInfo`, `registerInTournament`, `getClanTournamentPlayers` | [`getTournamentsList`](docs/ui/tournaments/UIGuide_getTournamentsList.md) · [`getTournamentInstanceInfo`](docs/ui/tournaments/UIGuide_getTournamentInstanceInfo.md) · [`registerInTournament`](docs/ui/tournaments/UIGuide_registerInTournament.md) · [`getClanTournamentPlayers`](docs/ui/tournaments/UIGuide_getClanTournamentPlayers.md) |
|
|
53
73
|
| **Clans** | [`WSAPIClans`](docs/api/classes/WSAPIClans.md) | `getClans`, `getClanInfo`, `joinClan` | [`getClans`](docs/ui/clans/UIGuide_getClans.md) · [`getClanInfo`](docs/ui/clans/UIGuide_getClanInfo.md) · [`joinClan`](docs/ui/clans/UIGuide_joinClan.md) |
|
|
54
|
-
| **Jackpots** | [`WSAPIJackpots`](docs/api/classes/WSAPIJackpots.md) | `jackpotGet`, `jackpotOptIn`, `jackpotOptOut`, `getJackpotWinners`, `getJackpotEligibleGames` |
|
|
55
|
-
| **Raffles / Draws** | [`WSAPIRaffles`](docs/api/classes/WSAPIRaffles.md) | `getRaffles`, `getRaffleDrawRun`, `getRaffleDrawRunsHistory`, `claimRafflePrize`, `requestRaffleOptin` |
|
|
56
|
-
| **MiniGames / SAW** | [`WSAPIMiniGames`](docs/api/classes/WSAPIMiniGames.md) | `getMiniGames`, `getMiniGamesHistory`, `playMiniGame`, `miniGameWinAcknowledgeRequest`, `playMiniGameBatch` |
|
|
57
|
-
| **Avatars** | [`WSAPIAvatars`](docs/api/classes/WSAPIAvatars.md) | `getAvatarsList`, `getAvatarsCustomized`, `getAvatarPrompts`, `setAvatar` |
|
|
58
|
-
| **Game Pick (sports / quiz)** | [`WSAPIGamePick`](docs/api/classes/WSAPIGamePick.md) | `gamePickGet*`, `gamePickSubmit*` (9 methods) |
|
|
59
|
-
| **Leaderboard** | [`WSAPILeaderBoard`](docs/api/classes/WSAPILeaderBoard.md) | `getLeaderBoard` |
|
|
60
|
-
| **Inbox / Messages / Engagement** | [`WSAPIInbox`](docs/api/classes/WSAPIInbox.md) | `getInboxMessages`, `getInboxUnreadCount`, `getInboxMessageBody`, `markInboxMessageAsRead`, `markAllInboxMessagesAsRead`, `markUnmarkInboxMessageAsFavorite`, `deleteInboxMessage`, `deleteAllInboxMessages`, `reportImpressionEvent`, `reportClickEvent` |
|
|
74
|
+
| **Jackpots** | [`WSAPIJackpots`](docs/api/classes/WSAPIJackpots.md) | `jackpotGet`, `jackpotOptIn`, `jackpotOptOut`, `getJackpotWinners`, `getJackpotEligibleGames` | [`jackpotGet`](docs/ui/jackpots/UIGuide_jackpotGet.md) · [`jackpotOptIn`](docs/ui/jackpots/UIGuide_jackpotOptIn.md) · [`jackpotOptOut`](docs/ui/jackpots/UIGuide_jackpotOptOut.md) · [`getJackpotWinners`](docs/ui/jackpots/UIGuide_getJackpotWinners.md) · [`getJackpotEligibleGames`](docs/ui/jackpots/UIGuide_getJackpotEligibleGames.md) |
|
|
75
|
+
| **Raffles / Draws** | [`WSAPIRaffles`](docs/api/classes/WSAPIRaffles.md) | `getRaffles`, `getRaffleDrawRun`, `getRaffleDrawRunsHistory`, `claimRafflePrize`, `requestRaffleOptin`, `getRaffleWonPrizes` | [`getRaffles`](docs/ui/raffles/UIGuide_getRaffles.md) · [`getRaffleDrawRun`](docs/ui/raffles/UIGuide_getRaffleDrawRun.md) · [`getRaffleDrawRunsHistory`](docs/ui/raffles/UIGuide_getRaffleDrawRunsHistory.md) · [`claimRafflePrize`](docs/ui/raffles/UIGuide_claimRafflePrize.md) · [`requestRaffleOptin`](docs/ui/raffles/UIGuide_requestRaffleOptin.md) · [`getRaffleWonPrizes`](docs/ui/raffles/UIGuide_getRaffleWonPrizes.md) |
|
|
76
|
+
| **MiniGames / SAW** | [`WSAPIMiniGames`](docs/api/classes/WSAPIMiniGames.md) | `getMiniGames`, `getMiniGamesHistory`, `playMiniGame`, `miniGameWinAcknowledgeRequest`, `playMiniGameBatch` | [`getMiniGames`](docs/ui/minigames/UIGuide_getMiniGames.md) · [`getMiniGamesHistory`](docs/ui/minigames/UIGuide_getMiniGamesHistory.md) · [`playMiniGame`](docs/ui/minigames/UIGuide_playMiniGame.md) · [`playMiniGameBatch`](docs/ui/minigames/UIGuide_playMiniGameBatch.md) |
|
|
77
|
+
| **Avatars** | [`WSAPIAvatars`](docs/api/classes/WSAPIAvatars.md) | `getAvatarsList`, `getAvatarsCustomized`, `getAvatarPrompts`, `setAvatar` | [`getAvatarsList`](docs/ui/avatars/UIGuide_getAvatarsList.md) · [`getAvatarsCustomized`](docs/ui/avatars/UIGuide_getAvatarsCustomized.md) · [`getAvatarPrompts`](docs/ui/avatars/UIGuide_getAvatarPrompts.md) · [`setAvatar`](docs/ui/avatars/UIGuide_setAvatar.md) |
|
|
78
|
+
| **Game Pick (sports / quiz)** | [`WSAPIGamePick`](docs/api/classes/WSAPIGamePick.md) | `gamePickGet*`, `gamePickSubmit*` (9 methods) | [`gamePickGetActiveRounds`](docs/ui/gamepick/UIGuide_gamePickGetActiveRounds.md) · [`gamePickGetActiveRound`](docs/ui/gamepick/UIGuide_gamePickGetActiveRound.md) · [`gamePickGetHistory`](docs/ui/gamepick/UIGuide_gamePickGetHistory.md) · [`gamePickGetBoard`](docs/ui/gamepick/UIGuide_gamePickGetBoard.md) · [`gamePickSubmitSelection`](docs/ui/gamepick/UIGuide_gamePickSubmitSelection.md) · [`gamePickSubmitSelectionQuiz`](docs/ui/gamepick/UIGuide_gamePickSubmitSelectionQuiz.md) · [`gamePickGetUserInfo`](docs/ui/gamepick/UIGuide_gamePickGetUserInfo.md) · [`gamePickGetGameInfo`](docs/ui/gamepick/UIGuide_gamePickGetGameInfo.md) · [`gamePickGetRoundInfoForUser`](docs/ui/gamepick/UIGuide_gamePickGetRoundInfoForUser.md) |
|
|
79
|
+
| **Leaderboard** | [`WSAPILeaderBoard`](docs/api/classes/WSAPILeaderBoard.md) | `getLeaderBoard` | [`getLeaderBoard`](docs/ui/leaderboard/UIGuide_getLeaderBoard.md) |
|
|
80
|
+
| **Inbox / Messages / Engagement** | [`WSAPIInbox`](docs/api/classes/WSAPIInbox.md) | `getInboxMessages`, `getInboxUnreadCount`, `getInboxMessageBody`, `markInboxMessageAsRead`, `markAllInboxMessagesAsRead`, `markUnmarkInboxMessageAsFavorite`, `deleteInboxMessage`, `deleteAllInboxMessages`, `reportImpressionEvent`, `reportClickEvent` | [`getInboxMessages`](docs/ui/inbox/UIGuide_getInboxMessages.md) · [`getInboxMessageBody`](docs/ui/inbox/UIGuide_getInboxMessageBody.md) · [`markInboxMessageAsRead`](docs/ui/inbox/UIGuide_markInboxMessageAsRead.md) · [`markUnmarkInboxMessageAsFavorite`](docs/ui/inbox/UIGuide_markUnmarkInboxMessageAsFavorite.md) · [`deleteInboxMessage`](docs/ui/inbox/UIGuide_deleteInboxMessage.md) |
|
|
61
81
|
|
|
62
82
|
The shared return / param types live in [`WSAPITypes`](docs/api/classes/WSAPITypes.md). For the full type / enum / interface listing, see [`docs/api/globals.md`](docs/api/globals.md).
|
|
63
83
|
|
|
84
|
+
These friendly `T`-prefixed types (`TStoreItem`, `TAvatarDefinition`, …) are produced by the SDK's **transform functions**, which normalize the raw WebSocket protocol shapes into a cleaner form. See [**Transform functions**](docs/Transforms.md) for the concept and naming conventions (`T`-types, `*Transform` functions, `*T` methods).
|
|
85
|
+
|
|
64
86
|
### Where to look for working examples
|
|
65
87
|
|
|
66
88
|
The class reference pages above describe **API behavior** — preconditions, error codes, refresh semantics, cache, idempotency, side effects, visitor mode. They do not include long-form UI prescriptions.
|
package/dist/Base/ClassId.d.ts
CHANGED
|
@@ -129,6 +129,8 @@ export declare enum ClassId {
|
|
|
129
129
|
RAF_CLAIM_PRIZE_RESPONSE = 909,
|
|
130
130
|
RAF_OPTIN_REQUEST = 916,
|
|
131
131
|
RAF_OPTIN_RESPONSE = 917,
|
|
132
|
+
RAF_GET_WON_PRIZES_REQUEST = 920,
|
|
133
|
+
RAF_GET_WON_PRIZES_RESPONSE = 921,
|
|
132
134
|
BNR_GET_BANNER_PLACEMENTS_REQUEST = 950,
|
|
133
135
|
BNR_GET_BANNER_PLACEMENTS_RESPONSE = 951,
|
|
134
136
|
BNR_GET_BANNER_CONTENT_REQUEST = 952,
|
|
@@ -3,34 +3,33 @@ import { JackpotPot } from './JackpotPot';
|
|
|
3
3
|
import { JackpotPublicMeta } from './JackpotPublicMeta';
|
|
4
4
|
import { JackpotType } from './JackpotType';
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* Flag is_opted_in indicates if the current user is opted in to the jackpot
|
|
6
|
+
* One jackpot template the user is eligible for, with its live pot snapshot.
|
|
7
|
+
* Returned by `jackpotGet()`.
|
|
9
8
|
*/
|
|
10
9
|
interface JackpotDetails {
|
|
11
|
-
/** ID of the
|
|
10
|
+
/** Stable numeric ID of the template; pass to opt-in / opt-out / winners / eligible-games methods. */
|
|
12
11
|
jp_template_id: number;
|
|
13
|
-
/**
|
|
12
|
+
/** Whether the jackpot has a shared pot or one independent per user; see {@link JackpotType}. */
|
|
14
13
|
jp_type_id: JackpotType;
|
|
15
|
-
/**
|
|
14
|
+
/** Display data: name, description, image_url, winner / not-winner HTML templates, custom_data (JSON-parsed). */
|
|
16
15
|
jp_public_meta: JackpotPublicMeta;
|
|
17
|
-
/**
|
|
16
|
+
/** Native jackpot currency (ISO 4217). Used for winner-history amounts. */
|
|
18
17
|
jp_currency: string;
|
|
19
|
-
/**
|
|
18
|
+
/** Current user's wallet currency. Used to display the pot via `pot.current_pot_amount_user_currency`. */
|
|
20
19
|
user_currency: string;
|
|
21
|
-
/**
|
|
20
|
+
/** Whether the contribution is a fixed amount or a percentage of the bet; see {@link JackpotContributionType}. */
|
|
22
21
|
contribution_type: JackpotContributionType;
|
|
23
|
-
/**
|
|
22
|
+
/** Amount of contribution per qualifying bet — fixed value or percentage depending on `contribution_type`. */
|
|
24
23
|
contribution_value: number;
|
|
25
|
-
/**
|
|
24
|
+
/** Live pot snapshot (amount, temperature, last explosion timestamp). */
|
|
26
25
|
pot: JackpotPot;
|
|
27
|
-
/**
|
|
26
|
+
/** `true` when the current user is currently opted in. */
|
|
28
27
|
is_opted_in: boolean;
|
|
29
|
-
/**
|
|
28
|
+
/** `true` when every game in the operator catalog contributes; if `true`, skip `getJackpotEligibleGames`. */
|
|
30
29
|
ach_related_game_allow_all: boolean;
|
|
31
|
-
/**
|
|
30
|
+
/** Number of users currently opted in; always `1` for `JackpotType.Personal`. */
|
|
32
31
|
registration_count: number;
|
|
33
|
-
/**
|
|
32
|
+
/** Operator flag: whether the winners list should be displayed. Enforced client-side only — gate `getJackpotWinners` calls on this. */
|
|
34
33
|
expose_winners_over_api: boolean;
|
|
35
34
|
}
|
|
36
35
|
export { JackpotDetails };
|
|
@@ -8,18 +8,22 @@ declare enum JackPotTemparature {
|
|
|
8
8
|
/** burning, current pot > min amount + 0.5 * (max amount - min amount). E.g. mid of allowed explosion range */
|
|
9
9
|
BURNING = 3
|
|
10
10
|
}
|
|
11
|
+
/**
|
|
12
|
+
* Live snapshot of one jackpot pot's value and temperature.
|
|
13
|
+
* Embedded on `JackpotDetails.pot`; refreshed at the 1 s SDK cache TTL.
|
|
14
|
+
*/
|
|
11
15
|
interface JackpotPot {
|
|
12
|
-
/** ID
|
|
16
|
+
/** Template ID this pot belongs to. */
|
|
13
17
|
jp_template_id: number;
|
|
14
|
-
/** ID of the
|
|
18
|
+
/** Stable numeric ID of the current pot instance (rotates when the pot explodes). */
|
|
15
19
|
jp_pot_id: number;
|
|
16
|
-
/**
|
|
20
|
+
/** Current pot amount in the jackpot's native currency (`jp_currency`). */
|
|
17
21
|
current_pot_amount: number;
|
|
18
|
-
/**
|
|
22
|
+
/** Current pot amount converted to the user's wallet currency (`user_currency`). */
|
|
19
23
|
current_pot_amount_user_currency: number;
|
|
20
|
-
/**
|
|
24
|
+
/** Unix ms timestamp of when this pot last exploded; `0` if it has never exploded. */
|
|
21
25
|
explode_date_ts: number;
|
|
22
|
-
/**
|
|
26
|
+
/** Heat band of the pot relative to its explosion range; see {@link JackPotTemparature}. */
|
|
23
27
|
current_pot_temperature: JackPotTemparature;
|
|
24
28
|
}
|
|
25
29
|
export { JackpotPot, JackPotTemparature };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ProtocolMessage } from "../Base/ProtocolMessage";
|
|
2
|
+
export interface GetRaffleWonPrizesRequest extends ProtocolMessage {
|
|
3
|
+
/** ID of the raffle to fetch the current user's won prizes for. */
|
|
4
|
+
raffle_id: number;
|
|
5
|
+
/** Zero-based index of the first won-prize row to return (pagination). */
|
|
6
|
+
offset: number;
|
|
7
|
+
/** Maximum number of won-prize rows to return (pagination). */
|
|
8
|
+
limit: number;
|
|
9
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { ProtocolResponse } from '../Base/ProtocolResponse';
|
|
2
|
+
/** Presentation meta for a won prize. */
|
|
3
|
+
export interface RaffleWonPrizePublicMeta {
|
|
4
|
+
/** Name of the prize, e.g. '1 $'. */
|
|
5
|
+
name: string;
|
|
6
|
+
/** Indicates whether the chance to win should be hidden in the UI. */
|
|
7
|
+
hide_chance_to_win: boolean;
|
|
8
|
+
/** URL of the image that represents the prize. */
|
|
9
|
+
image_url: string;
|
|
10
|
+
}
|
|
11
|
+
/** A single prize the user won within the raffle. */
|
|
12
|
+
export interface RaffleWonPrize {
|
|
13
|
+
/** Unique ID of the winning row (pass to `claimRafflePrize` when `requires_claim` is `true`). */
|
|
14
|
+
raf_won_id: number;
|
|
15
|
+
/** ID of the prize definition. */
|
|
16
|
+
prize_id: number;
|
|
17
|
+
/** Run-instance ID of the draw that awarded this prize. */
|
|
18
|
+
raffle_run_id: number;
|
|
19
|
+
/** Schedule ID of the draw that awarded this prize. */
|
|
20
|
+
draw_id: number;
|
|
21
|
+
/** Presentation meta (name / image). */
|
|
22
|
+
public_meta: RaffleWonPrizePublicMeta;
|
|
23
|
+
/** Whether this prize requires a claim action from the user. */
|
|
24
|
+
requires_claim: boolean;
|
|
25
|
+
/** Epoch ms when the prize was claimed; `null` when not yet claimed. */
|
|
26
|
+
claimed_date: number | null;
|
|
27
|
+
}
|
|
28
|
+
/** The user the won-prizes list belongs to. */
|
|
29
|
+
export interface RaffleWonPrizeUser {
|
|
30
|
+
/** Internal user ID. */
|
|
31
|
+
user_id: number;
|
|
32
|
+
/** Avatar image: a full URL for a system avatar, otherwise an avatar token to resolve against the widget's avatar domain. */
|
|
33
|
+
avatar_id: string;
|
|
34
|
+
/** Numeric ID of the user's selected avatar definition. */
|
|
35
|
+
avatar_real_id: number;
|
|
36
|
+
/** Public username; server-masked for other users (e.g. `"32:r*****"`). */
|
|
37
|
+
public_username?: string;
|
|
38
|
+
/** Always `null` on the wire — use `avatar_id`. */
|
|
39
|
+
avatar_url?: string | null;
|
|
40
|
+
}
|
|
41
|
+
export interface GetRaffleWonPrizesResponse extends ProtocolResponse {
|
|
42
|
+
/** The user the won prizes belong to; `null` when `won_prizes` is empty. */
|
|
43
|
+
user: RaffleWonPrizeUser | null;
|
|
44
|
+
/** Page of won prizes for the requested raffle, newest-first. */
|
|
45
|
+
won_prizes: RaffleWonPrize[];
|
|
46
|
+
/** Total number of won prizes for this user/raffle across all draws (for pagination). */
|
|
47
|
+
total: number;
|
|
48
|
+
/** Zero-based offset of this page (echoes the resolved request). */
|
|
49
|
+
offset: number;
|
|
50
|
+
/** Page size (echoes the resolved request). */
|
|
51
|
+
limit: number;
|
|
52
|
+
}
|
package/dist/Raffle/index.d.ts
CHANGED
package/dist/SmarticoAPI.d.ts
CHANGED
|
@@ -23,7 +23,7 @@ import { GetRafflesResponse } from './Raffle/GetRafflesResponse';
|
|
|
23
23
|
import { GetActivityLogResponse } from './ActivityLog';
|
|
24
24
|
import { GetClanListResponse, GetClanInfoResponse } from './Clans';
|
|
25
25
|
import { InboxCategories } from './Inbox/InboxCategories';
|
|
26
|
-
import { GetDrawRunResponse, GetRaffleDrawRunsHistoryResponse, RaffleClaimPrizeResponse, RaffleOptinResponse } from './Raffle';
|
|
26
|
+
import { GetDrawRunResponse, GetRaffleDrawRunsHistoryResponse, RaffleClaimPrizeResponse, RaffleOptinResponse, GetRaffleWonPrizesResponse } from './Raffle';
|
|
27
27
|
import { GetAvatarsListResponse } from './Avatars/GetAvatarsListResponse';
|
|
28
28
|
import { GetAvatarsCustomizedResponse } from './Avatars/GetAvatarsCustomizedResponse';
|
|
29
29
|
import { GetAvatarPromptsResponse } from './Avatars/GetAvatarPromptsResponse';
|
|
@@ -214,6 +214,11 @@ declare class SmarticoAPI {
|
|
|
214
214
|
draw_id: number;
|
|
215
215
|
raffle_run_id: number;
|
|
216
216
|
}): Promise<RaffleOptinResponse>;
|
|
217
|
+
getRaffleWonPrizes(user_ext_id: string, props: {
|
|
218
|
+
raffle_id: number;
|
|
219
|
+
offset: number;
|
|
220
|
+
limit: number;
|
|
221
|
+
}): Promise<GetRaffleWonPrizesResponse>;
|
|
217
222
|
getActivityLog(user_ext_id: string, startTimeSeconds: number, endTimeSeconds: number, limit: number, offset: number): Promise<GetActivityLogResponse>;
|
|
218
223
|
getActivityLogT(user_ext_id: string, startTimeSeconds: number, endTimeSeconds: number, from?: number, to?: number): Promise<TActivityLog[]>;
|
|
219
224
|
}
|
|
@@ -2105,10 +2105,12 @@ declare enum EWidgetType {
|
|
|
2105
2105
|
}
|
|
2106
2106
|
declare enum EXTERNAL_CALLBACK_KEY {
|
|
2107
2107
|
INIT = "init",
|
|
2108
|
+
LABEL_INIT_COMPLETED = "label_init_completed",
|
|
2108
2109
|
IDENTIFY = "identify",
|
|
2109
2110
|
LOGIN = "login",
|
|
2110
2111
|
LOGOUT = "logout",
|
|
2111
2112
|
USER_PROPS_CHANGE = "props_change",
|
|
2113
|
+
PAGE_NAVIGATION = "page_navigation",
|
|
2112
2114
|
SESSION_BASED_DP_DETECTED = "session_based_dp_detected",
|
|
2113
2115
|
GF_CLOSING = "gf_closing",
|
|
2114
2116
|
GF_STARTING = "gf_starting",
|
|
@@ -2117,7 +2119,9 @@ declare enum EXTERNAL_CALLBACK_KEY {
|
|
|
2117
2119
|
INBOX_STARTING = "inbox_starting",
|
|
2118
2120
|
PROTOCOL_ERROR = "protocol_error",
|
|
2119
2121
|
MNIGAME_WIN = "mini_game_win",
|
|
2120
|
-
ACH_GAME_OPENING = "ach_game_opening"
|
|
2122
|
+
ACH_GAME_OPENING = "ach_game_opening",
|
|
2123
|
+
JACKPOT_WIN = "jackpot_win",
|
|
2124
|
+
GF_UX = "gf_ux"
|
|
2121
2125
|
}
|
|
2122
2126
|
declare enum DpType {
|
|
2123
2127
|
AskPushPermissions = "ask_push_permissions",
|