@oddsmith/ui 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/components/os-leaderboard-casino/assets/fallback/config.json +1 -1
- package/dist/components/os-leaderboard-casino/assets/fallback/defaults/glam-sections.json +3 -3
- package/dist/components/os-leaderboard-casino/assets/fallback/labels.json +1 -1
- package/dist/components/os-leaderboard-casino/assets/fallback/labels.json.js +7 -7
- package/dist/components/os-leaderboard-casino/assets/fallback/manifest.json +1 -1
- package/dist/components/os-leaderboard-casino/assets/fallback/presets.json +1 -1
- package/dist/components/os-leaderboard-casino/assets/fallback/presets.json.js +1 -1
- package/dist/components/os-leaderboard-casino/assets/fallback/resolved-presets.json +4 -4
- package/dist/components/os-leaderboard-casino/assets/fallback/resolved-presets.json.js +1 -1
- package/dist/components/os-leaderboard-casino/constants/defaults.d.ts +8 -0
- package/dist/components/os-leaderboard-casino/constants/index.d.ts +2 -0
- package/dist/components/os-leaderboard-casino/constants/tags.d.ts +22 -0
- package/dist/components/os-leaderboard-casino/constants/tags.js +6 -4
- package/dist/components/os-leaderboard-casino/constants/tags.js.map +1 -1
- package/dist/components/os-leaderboard-casino/container/os-leaderboard-casino.d.ts +35 -0
- package/dist/components/os-leaderboard-casino/container/os-leaderboard-casino.host.d.ts +13 -0
- package/dist/components/os-leaderboard-casino/container/os-leaderboard-casino.js +5 -5
- package/dist/components/os-leaderboard-casino/index.d.ts +36 -0
- package/dist/components/os-leaderboard-casino/index.js +23 -23
- package/dist/components/os-leaderboard-casino/integration/assemble-assets.d.ts +21 -0
- package/dist/components/os-leaderboard-casino/integration/assets-context.d.ts +26 -0
- package/dist/components/os-leaderboard-casino/integration/defaults-glam.d.ts +14 -0
- package/dist/components/os-leaderboard-casino/integration/defaults-new-money.d.ts +3 -0
- package/dist/components/os-leaderboard-casino/integration/index.d.ts +5 -0
- package/dist/components/os-leaderboard-casino/integration/labels.d.ts +1 -0
- package/dist/components/os-leaderboard-casino/integration/load-assets.d.ts +9 -0
- package/dist/components/os-leaderboard-casino/integration/presets.d.ts +1 -0
- package/dist/components/os-leaderboard-casino/integration/resolve-input.d.ts +20 -0
- package/dist/components/os-leaderboard-casino/integration/resolve-input.js +3 -3
- package/dist/components/os-leaderboard-casino/integration/themes.d.ts +1 -0
- package/dist/components/os-leaderboard-casino/sections/climb-section/climb-section.d.ts +19 -0
- package/dist/components/os-leaderboard-casino/sections/climb-section/climb-section.host.d.ts +15 -0
- package/dist/components/os-leaderboard-casino/sections/events-banner/components/event-icons.d.ts +5 -0
- package/dist/components/os-leaderboard-casino/sections/events-banner/events-banner.d.ts +16 -0
- package/dist/components/os-leaderboard-casino/sections/events-banner/events-banner.host.d.ts +8 -0
- package/dist/components/os-leaderboard-casino/sections/events-banner/events-banner.js +1 -0
- package/dist/components/os-leaderboard-casino/sections/events-banner/events-banner.js.map +1 -1
- package/dist/components/os-leaderboard-casino/sections/footer-section/footer-section.d.ts +10 -0
- package/dist/components/os-leaderboard-casino/sections/footer-section/footer-section.host.d.ts +3 -0
- package/dist/components/os-leaderboard-casino/sections/footer-section/footer-section.js +1 -0
- package/dist/components/os-leaderboard-casino/sections/footer-section/footer-section.js.map +1 -1
- package/dist/components/os-leaderboard-casino/sections/games-section/components/game-images.d.ts +1 -0
- package/dist/components/os-leaderboard-casino/sections/games-section/games-section.d.ts +20 -0
- package/dist/components/os-leaderboard-casino/sections/games-section/games-section.host.d.ts +7 -0
- package/dist/components/os-leaderboard-casino/sections/header-section/header-section.d.ts +12 -0
- package/dist/components/os-leaderboard-casino/sections/header-section/header-section.host.d.ts +8 -0
- package/dist/components/os-leaderboard-casino/sections/hero-section/hero-section.d.ts +37 -0
- package/dist/components/os-leaderboard-casino/sections/hero-section/hero-section.host.d.ts +20 -0
- package/dist/components/os-leaderboard-casino/sections/hero-section/hero-section.js +1 -0
- package/dist/components/os-leaderboard-casino/sections/hero-section/hero-section.js.map +1 -1
- package/dist/components/os-leaderboard-casino/sections/legals-section/legals-section.d.ts +18 -0
- package/dist/components/os-leaderboard-casino/sections/legals-section/legals-section.host.d.ts +8 -0
- package/dist/components/os-leaderboard-casino/sections/legals-section/legals-section.js +1 -0
- package/dist/components/os-leaderboard-casino/sections/legals-section/legals-section.js.map +1 -1
- package/dist/components/os-leaderboard-casino/sections/live-feed-section/live-feed-section.d.ts +13 -0
- package/dist/components/os-leaderboard-casino/sections/live-feed-section/live-feed-section.host.d.ts +8 -0
- package/dist/components/os-leaderboard-casino/sections/marquee-section/components/win-icons.d.ts +3 -0
- package/dist/components/os-leaderboard-casino/sections/marquee-section/marquee-item.d.ts +14 -0
- package/dist/components/os-leaderboard-casino/sections/marquee-section/marquee-section.d.ts +42 -0
- package/dist/components/os-leaderboard-casino/sections/marquee-section/marquee-section.host.d.ts +8 -0
- package/dist/components/os-leaderboard-casino/sections/marquee-section/marquee-variants.d.ts +6 -0
- package/dist/components/os-leaderboard-casino/sections/prize-section/components/medal-coin/medal-coin.d.ts +16 -0
- package/dist/components/os-leaderboard-casino/sections/prize-section/components/medal-coin/medal-coin.js +71 -0
- package/dist/components/os-leaderboard-casino/sections/prize-section/components/medal-coin/medal-coin.js.map +1 -0
- package/dist/components/os-leaderboard-casino/sections/prize-section/components/medal-coin/medal-coin.scss.js +5 -0
- package/dist/components/os-leaderboard-casino/sections/prize-section/components/medal-coin/medal-coin.scss.js.map +1 -0
- package/dist/components/os-leaderboard-casino/sections/prize-section/prize-section.d.ts +23 -0
- package/dist/components/os-leaderboard-casino/sections/prize-section/prize-section.host.d.ts +11 -0
- package/dist/components/os-leaderboard-casino/sections/prize-section/prize-section.js +15 -14
- package/dist/components/os-leaderboard-casino/sections/prize-section/prize-section.js.map +1 -1
- package/dist/components/os-leaderboard-casino/sections/stats-section/components/stat-band/stat-band.d.ts +17 -0
- package/dist/components/os-leaderboard-casino/sections/stats-section/components/stat-card/stat-card.d.ts +15 -0
- package/dist/components/os-leaderboard-casino/sections/stats-section/components/stat-chip/stat-chip.d.ts +17 -0
- package/dist/components/os-leaderboard-casino/sections/stats-section/components/stat-gauge/stat-gauge.d.ts +14 -0
- package/dist/components/os-leaderboard-casino/sections/stats-section/components/stat-icons.d.ts +5 -0
- package/dist/components/os-leaderboard-casino/sections/stats-section/components/stat-icons.js +11 -0
- package/dist/components/os-leaderboard-casino/sections/stats-section/components/stat-icons.js.map +1 -0
- package/dist/components/os-leaderboard-casino/sections/stats-section/components/stat-meter/stat-meter.d.ts +17 -0
- package/dist/components/os-leaderboard-casino/sections/stats-section/components/stat-rail/stat-rail.d.ts +17 -0
- package/dist/components/os-leaderboard-casino/sections/stats-section/components/stat-rail/stat-rail.js +61 -0
- package/dist/components/os-leaderboard-casino/sections/stats-section/components/stat-rail/stat-rail.js.map +1 -0
- package/dist/components/os-leaderboard-casino/sections/stats-section/components/stat-rail/stat-rail.scss.js +5 -0
- package/dist/components/os-leaderboard-casino/sections/stats-section/components/stat-rail/stat-rail.scss.js.map +1 -0
- package/dist/components/os-leaderboard-casino/sections/stats-section/stats-section.d.ts +16 -0
- package/dist/components/os-leaderboard-casino/sections/stats-section/stats-section.host.d.ts +13 -0
- package/dist/components/os-leaderboard-casino/sections/stats-section/stats-section.js +14 -12
- package/dist/components/os-leaderboard-casino/sections/stats-section/stats-section.js.map +1 -1
- package/dist/components/os-leaderboard-casino/sections/table-section/table-section.d.ts +31 -0
- package/dist/components/os-leaderboard-casino/sections/table-section/table-section.host.d.ts +15 -0
- package/dist/components/os-leaderboard-casino/sections/table-section/table-section.js +1 -0
- package/dist/components/os-leaderboard-casino/sections/table-section/table-section.js.map +1 -1
- package/dist/components/os-leaderboard-casino/services/adapter.service.d.ts +11 -0
- package/dist/components/os-leaderboard-casino/services/icon.service.d.ts +28 -0
- package/dist/components/os-leaderboard-casino/services/index.d.ts +2 -0
- package/dist/components/os-leaderboard-casino/theme/index.d.ts +3 -0
- package/dist/components/os-leaderboard-casino/theme/prize-icons.d.ts +1 -0
- package/dist/components/os-leaderboard-casino/theme/prize-resolve.d.ts +5 -0
- package/dist/components/os-leaderboard-casino/theme/styles.d.ts +9 -0
- package/dist/components/os-leaderboard-casino/theme/vip-icons.d.ts +2 -0
- package/dist/components/os-leaderboard-casino/theme/vip-mark.d.ts +7 -0
- package/dist/components/os-leaderboard-casino/types/assets.d.ts +40 -0
- package/dist/components/os-leaderboard-casino/types/data.d.ts +106 -0
- package/dist/components/os-leaderboard-casino/types/events.d.ts +18 -0
- package/dist/components/os-leaderboard-casino/types/icons.d.ts +18 -0
- package/dist/components/os-leaderboard-casino/types/input.d.ts +73 -0
- package/dist/components/os-leaderboard-casino/types/ledger.d.ts +67 -0
- package/dist/components/os-leaderboard-casino/types/sections.d.ts +200 -0
- package/dist/components/os-leaderboard-casino/types/state.d.ts +69 -0
- package/dist/shared/lib/lit/component.d.ts +5 -0
- package/dist/shared/lib/lit/safe-custom-element.d.ts +5 -0
- package/dist/shared/lib/lit/scss.d.ts +3 -0
- package/dist/shared/lib/lit/template.d.ts +3 -0
- package/package.json +3 -2
- package/dist/index.d.ts +0 -734
package/dist/index.d.ts
DELETED
|
@@ -1,734 +0,0 @@
|
|
|
1
|
-
import { CSSResult } from 'lit';
|
|
2
|
-
import { LitElement } from 'lit';
|
|
3
|
-
import { nothing } from 'lit';
|
|
4
|
-
import { PropertyValues } from 'lit';
|
|
5
|
-
import { TemplateResult } from 'lit';
|
|
6
|
-
|
|
7
|
-
/** Maps facade state into the glam layout shell. */
|
|
8
|
-
export declare class AdapterService {
|
|
9
|
-
toLayout(state: OsLeaderboardCasinoState): OsLeaderboardCasinoLayout;
|
|
10
|
-
applyThemeVars(host: HTMLElement, state: OsLeaderboardCasinoState): void;
|
|
11
|
-
private buildLayout;
|
|
12
|
-
private isEnabled;
|
|
13
|
-
private mainOrder;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export declare const adapterService: AdapterService;
|
|
17
|
-
|
|
18
|
-
/** Apply input (+ optional assets bundle) to a mounted element. */
|
|
19
|
-
export declare function applyLeaderboardCasinoInput(host: LeaderboardCasinoHost, input: LeaderboardCasinoInput, assets?: LeaderboardCasinoAssetsBundle | null): void;
|
|
20
|
-
|
|
21
|
-
export declare function assembleAssetsBundle(parts: AssembledAssetsParts): LeaderboardCasinoAssetsBundle;
|
|
22
|
-
|
|
23
|
-
declare type AssembledAssetsParts = {
|
|
24
|
-
labels: LeaderboardCasinoLabels;
|
|
25
|
-
themes: readonly LeaderboardCasinoAssetsTheme[];
|
|
26
|
-
presets: LeaderboardCasinoAssetsBundle['presets'];
|
|
27
|
-
catalog: readonly LeaderboardCasinoPresetMeta[];
|
|
28
|
-
resolvedPresets: Record<string, OsLeaderboardCasinoState>;
|
|
29
|
-
};
|
|
30
|
-
|
|
31
|
-
/** Campaign visual asset. */
|
|
32
|
-
declare interface Asset {
|
|
33
|
-
uuid: string;
|
|
34
|
-
createdTs: string;
|
|
35
|
-
name: string;
|
|
36
|
-
label: string;
|
|
37
|
-
comment: string;
|
|
38
|
-
url: string;
|
|
39
|
-
tags: string[];
|
|
40
|
-
type: AssetType;
|
|
41
|
-
sportType: SportType;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
declare type AssetType = 'GAME' | 'REPORT' | 'FONT' | 'CLIENT' | 'AUDIO';
|
|
45
|
-
|
|
46
|
-
declare type Category = 'all' | 'slots' | 'hybrid' | 'tables' | 'video-poker' | 'keno' | 'arcade' | 'blackjack' | 'roulette' | 'poker' | 'baccarat' | 'live';
|
|
47
|
-
|
|
48
|
-
export declare const DEFAULT_OS_LEADERBOARD_CASINO_PRESET_ID: "golden";
|
|
49
|
-
|
|
50
|
-
export declare const EMPTY_OS_LEADERBOARD_CASINO_STATE: OsLeaderboardCasinoState;
|
|
51
|
-
|
|
52
|
-
export declare type GameIconName = 'game.cards' | 'game.chips' | 'game.dice' | 'game.gates-of-olympus' | 'game.roulette' | 'game.slot-machine';
|
|
53
|
-
|
|
54
|
-
export declare function getFallbackAssetsBundle(): LeaderboardCasinoAssetsBundle;
|
|
55
|
-
|
|
56
|
-
export declare function getOsLeaderboardCasinoPreset(id: string, bundle?: LeaderboardCasinoAssetsBundle): OsLeaderboardCasinoPreset | undefined;
|
|
57
|
-
|
|
58
|
-
export declare function getTheme(id: OsLeaderboardCasinoThemeId, bundle?: LeaderboardCasinoAssetsBundle): OsLeaderboardCasinoThemeOption;
|
|
59
|
-
|
|
60
|
-
export declare interface IconHandle {
|
|
61
|
-
name: IconName;
|
|
62
|
-
kind: 'svg' | 'image';
|
|
63
|
-
url?: string;
|
|
64
|
-
svg(): TemplateResult;
|
|
65
|
-
render(options?: IconRenderOptions): TemplateResult;
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
export declare type IconName = PrizeIconName | GameIconName | WinIconName | StatIconName | VipIconName;
|
|
69
|
-
|
|
70
|
-
export declare interface IconRenderOptions {
|
|
71
|
-
className?: string;
|
|
72
|
-
alt?: string;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
/** Registry-backed icon loader for os-leaderboard-casino. */
|
|
76
|
-
export declare class IconService {
|
|
77
|
-
private readonly registry;
|
|
78
|
-
private loadPromise;
|
|
79
|
-
private loaded;
|
|
80
|
-
/** Load all bundled SVG and game image icons. Call once on app start. */
|
|
81
|
-
load(): Promise<void>;
|
|
82
|
-
/** Pick a loaded icon by registry name, e.g. `prize.free-spins`. */
|
|
83
|
-
get(name: string): IconHandle;
|
|
84
|
-
has(name: string): boolean;
|
|
85
|
-
resolvePrizeIconName(label: LabelKey | string | undefined): PrizeIconName;
|
|
86
|
-
resolveGameIconName(id: string, index: number): GameIconName;
|
|
87
|
-
resolveWinIconName(name: string, index: number): WinIconName;
|
|
88
|
-
resolveStatIconName(name: string): StatIconName;
|
|
89
|
-
render(name: string, options?: IconRenderOptions): TemplateResult;
|
|
90
|
-
svg(name: string): TemplateResult;
|
|
91
|
-
url(name: string): string;
|
|
92
|
-
private assertLoaded;
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
export declare const iconService: IconService;
|
|
96
|
-
|
|
97
|
-
/** Localized content container. */
|
|
98
|
-
declare interface LabelKey {
|
|
99
|
-
uuid?: string;
|
|
100
|
-
key?: string;
|
|
101
|
-
description?: string;
|
|
102
|
-
hint?: string;
|
|
103
|
-
values: LabelValue[];
|
|
104
|
-
labelType: LabelType;
|
|
105
|
-
enValue?: string;
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
/**
|
|
109
|
-
* Domain types for the casino leaderboard splash.
|
|
110
|
-
* Source: ai-context/casino-leaderboard-real/domain.md
|
|
111
|
-
*/
|
|
112
|
-
declare type LabelType = 'CORE_GAME' | 'ON_DEMAND' | 'COMPETITOR';
|
|
113
|
-
|
|
114
|
-
declare interface LabelValue {
|
|
115
|
-
value: string;
|
|
116
|
-
language: string;
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
/** Relative paths loaded from a free-tier assets directory. */
|
|
120
|
-
export declare const LEADERBOARD_CASINO_ASSET_FILES: {
|
|
121
|
-
readonly labels: "labels.json";
|
|
122
|
-
readonly themes: "themes.json";
|
|
123
|
-
readonly presets: "presets.json";
|
|
124
|
-
readonly catalog: "catalog.json";
|
|
125
|
-
readonly resolvedPresets: "resolved-presets.json";
|
|
126
|
-
};
|
|
127
|
-
|
|
128
|
-
/** Default path under parent app static `assets/`. */
|
|
129
|
-
export declare const LEADERBOARD_CASINO_DEFAULT_ASSETS_BASE = "/assets/producer_output/os-leaderboard-casino/free";
|
|
130
|
-
|
|
131
|
-
export declare const LEADERBOARD_CASINO_PRESET_CATALOG: readonly LeaderboardCasinoPresetMeta[];
|
|
132
|
-
|
|
133
|
-
/** Static JSON bundle the parent app provides (or ships under `/assets/...`). */
|
|
134
|
-
export declare interface LeaderboardCasinoAssetsBundle {
|
|
135
|
-
version: 1;
|
|
136
|
-
labels: LeaderboardCasinoLabels;
|
|
137
|
-
themes: readonly LeaderboardCasinoAssetsTheme[];
|
|
138
|
-
presets: {
|
|
139
|
-
defaultPresetId: LeaderboardCasinoPresetId;
|
|
140
|
-
presets: readonly LeaderboardCasinoAssetsPreset[];
|
|
141
|
-
};
|
|
142
|
-
catalog: readonly LeaderboardCasinoPresetMeta[];
|
|
143
|
-
resolvedPresets: Record<string, OsLeaderboardCasinoState>;
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
/** Parent passes inline JSON and/or a base URL to static files under `assets/`. */
|
|
147
|
-
export declare interface LeaderboardCasinoAssetsInput {
|
|
148
|
-
/** Full bundle — preferred when parent already loaded JSON. */
|
|
149
|
-
bundle?: LeaderboardCasinoAssetsBundle | null;
|
|
150
|
-
/** e.g. `/assets/producer_output/os-leaderboard-casino/free` — loads `bundle.json`. */
|
|
151
|
-
baseUrl?: string;
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
export declare interface LeaderboardCasinoAssetsPreset {
|
|
155
|
-
id: LeaderboardCasinoPresetId;
|
|
156
|
-
label: string;
|
|
157
|
-
description: string;
|
|
158
|
-
appearance: OsLeaderboardCasinoConfig['appearance'];
|
|
159
|
-
themeId: string;
|
|
160
|
-
config: {
|
|
161
|
-
labels?: LeaderboardCasinoLabels;
|
|
162
|
-
enabled: readonly OsLeaderboardCasinoSectionId[];
|
|
163
|
-
mainOrder?: readonly OsLeaderboardCasinoMainSectionId[];
|
|
164
|
-
};
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
export declare interface LeaderboardCasinoAssetsTheme {
|
|
168
|
-
id: string;
|
|
169
|
-
label: string;
|
|
170
|
-
description?: string;
|
|
171
|
-
appearance: OsLeaderboardCasinoConfig['appearance'];
|
|
172
|
-
vars?: Record<string, string>;
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
/** Copy + palette overrides (theme + labels only on free tier). */
|
|
176
|
-
export declare interface LeaderboardCasinoBranding {
|
|
177
|
-
themeId?: string;
|
|
178
|
-
labels?: Partial<LeaderboardCasinoLabels>;
|
|
179
|
-
/** CSS custom properties applied on the host element. */
|
|
180
|
-
themeVars?: Record<string, string>;
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
/** Live campaign fields your backend already has. Everything else is optional. */
|
|
184
|
-
export declare interface LeaderboardCasinoCampaign {
|
|
185
|
-
uuid?: string;
|
|
186
|
-
title?: string;
|
|
187
|
-
description?: string;
|
|
188
|
-
/** ISO string or epoch ms */
|
|
189
|
-
endAt?: string | number;
|
|
190
|
-
finished?: boolean;
|
|
191
|
-
prizePool?: {
|
|
192
|
-
value: number;
|
|
193
|
-
currency?: string;
|
|
194
|
-
};
|
|
195
|
-
participantCount?: number;
|
|
196
|
-
footerText?: string;
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
export declare type LeaderboardCasinoHost = HTMLElement & {
|
|
200
|
-
state: OsLeaderboardCasinoState;
|
|
201
|
-
uuid?: string;
|
|
202
|
-
finished?: boolean;
|
|
203
|
-
input?: LeaderboardCasinoInput | null;
|
|
204
|
-
assets?: LeaderboardCasinoAssetsBundle | null;
|
|
205
|
-
assetsBaseUrl?: string;
|
|
206
|
-
};
|
|
207
|
-
|
|
208
|
-
/**
|
|
209
|
-
* Primary integration shape for the free npm package.
|
|
210
|
-
*
|
|
211
|
-
* @example
|
|
212
|
-
* ```ts
|
|
213
|
-
* board.input = {
|
|
214
|
-
* branding: { themeId: 'glam-emerald', labels: { cta: 'Play now' } },
|
|
215
|
-
* campaign: {
|
|
216
|
-
* uuid: api.id,
|
|
217
|
-
* title: api.name,
|
|
218
|
-
* endAt: api.endsAt,
|
|
219
|
-
* prizePool: { value: api.pool, currency: 'USD' },
|
|
220
|
-
* },
|
|
221
|
-
* players: api.leaderboard,
|
|
222
|
-
* };
|
|
223
|
-
* ```
|
|
224
|
-
*/
|
|
225
|
-
export declare interface LeaderboardCasinoInput {
|
|
226
|
-
/** Defaults to `golden` — the only free-tier layout. */
|
|
227
|
-
preset?: LeaderboardCasinoPresetId;
|
|
228
|
-
branding?: LeaderboardCasinoBranding;
|
|
229
|
-
campaign?: LeaderboardCasinoCampaign;
|
|
230
|
-
players?: LeaderboardCasinoPlayer[];
|
|
231
|
-
}
|
|
232
|
-
|
|
233
|
-
export declare interface LeaderboardCasinoLabels {
|
|
234
|
-
back?: string;
|
|
235
|
-
live?: string;
|
|
236
|
-
cta?: string;
|
|
237
|
-
}
|
|
238
|
-
|
|
239
|
-
/** Normalized player row — maps to glam preview table internally. */
|
|
240
|
-
export declare interface LeaderboardCasinoPlayer {
|
|
241
|
-
id?: string;
|
|
242
|
-
username: string;
|
|
243
|
-
rank: number;
|
|
244
|
-
points?: number;
|
|
245
|
-
winnings?: number;
|
|
246
|
-
isCurrentUser?: boolean;
|
|
247
|
-
}
|
|
248
|
-
|
|
249
|
-
/**
|
|
250
|
-
* Free-tier public integration API.
|
|
251
|
-
* Layout is fixed on the golden preset — customize theme colors, copy, and data only.
|
|
252
|
-
*/
|
|
253
|
-
/** Built-in full glam layout shipped with @oddsmith/ui. */
|
|
254
|
-
export declare type LeaderboardCasinoPresetId = 'golden';
|
|
255
|
-
|
|
256
|
-
export declare interface LeaderboardCasinoPresetMeta {
|
|
257
|
-
id: LeaderboardCasinoPresetId;
|
|
258
|
-
label: string;
|
|
259
|
-
description: string;
|
|
260
|
-
appearance: 'glam' | 'new-money';
|
|
261
|
-
defaultThemeId: string;
|
|
262
|
-
}
|
|
263
|
-
|
|
264
|
-
declare type LeaderboardStatus = 'upcoming' | 'active' | 'completed' | 'cancelled';
|
|
265
|
-
|
|
266
|
-
/** Lit template slot — real fragment or `nothing` when a section is omitted. */
|
|
267
|
-
declare type LitTemplate = TemplateResult | typeof nothing;
|
|
268
|
-
|
|
269
|
-
/**
|
|
270
|
-
* Load free-tier JSON from the parent app. Falls back to bundled
|
|
271
|
-
* `assets/fallback/*.json` when remote files fail.
|
|
272
|
-
*/
|
|
273
|
-
export declare function loadLeaderboardCasinoAssets(baseUrl?: string): Promise<LeaderboardCasinoAssetsBundle>;
|
|
274
|
-
|
|
275
|
-
/** Bundled fallback exports for dev tooling. */
|
|
276
|
-
export declare const OS_LEADERBOARD_CASINO_LABELS: LeaderboardCasinoLabels;
|
|
277
|
-
|
|
278
|
-
/** Client events emitted by `<os-leaderboard-casino>` (bubbling, composed). */
|
|
279
|
-
export declare const OS_LEADERBOARD_CASINO_OPEN = "leaderboard-open";
|
|
280
|
-
|
|
281
|
-
export declare const OS_LEADERBOARD_CASINO_PRESETS: readonly LeaderboardCasinoAssetsPreset[];
|
|
282
|
-
|
|
283
|
-
export declare const OS_LEADERBOARD_CASINO_PRIZE_CLICK = "prize-click";
|
|
284
|
-
|
|
285
|
-
export declare const OS_LEADERBOARD_CASINO_REFRESH = "refresh";
|
|
286
|
-
|
|
287
|
-
export declare const OS_LEADERBOARD_CASINO_SEARCH_CHANGE = "search-change";
|
|
288
|
-
|
|
289
|
-
/** Root custom element for the package. */
|
|
290
|
-
export declare const OS_LEADERBOARD_CASINO_TAG = "os-leaderboard-casino";
|
|
291
|
-
|
|
292
|
-
export declare const OS_LEADERBOARD_CASINO_THEMES: readonly LeaderboardCasinoAssetsTheme[];
|
|
293
|
-
|
|
294
|
-
/**
|
|
295
|
-
* Config-driven casino leaderboard.
|
|
296
|
-
* Parent provides static JSON via `.assets` or `assets-base-url`.
|
|
297
|
-
* Bundled `assets/fallback/*.json` is used when parent files fail to load.
|
|
298
|
-
*/
|
|
299
|
-
export declare class OsLeaderboardCasino extends LitElement implements OsLeaderboardCasinoHost {
|
|
300
|
-
static styles: CSSResult[];
|
|
301
|
-
assets: LeaderboardCasinoAssetsBundle | null;
|
|
302
|
-
assetsBaseUrl: string;
|
|
303
|
-
input: LeaderboardCasinoInput | null;
|
|
304
|
-
state: OsLeaderboardCasinoState;
|
|
305
|
-
uuid: string;
|
|
306
|
-
finished: boolean;
|
|
307
|
-
private assetsLoadTask;
|
|
308
|
-
connectedCallback(): void;
|
|
309
|
-
get layout(): OsLeaderboardCasinoLayout;
|
|
310
|
-
get mainOrder(): string[];
|
|
311
|
-
private ensureAssetsLoaded;
|
|
312
|
-
private applyInputToState;
|
|
313
|
-
protected willUpdate(changed: PropertyValues<this>): void;
|
|
314
|
-
private renderMainSection;
|
|
315
|
-
renderMarquee(): typeof nothing | TemplateResult<1>;
|
|
316
|
-
renderEventsBanner(): typeof nothing | TemplateResult<1>;
|
|
317
|
-
renderHero(): typeof nothing | TemplateResult<1>;
|
|
318
|
-
renderMainSections(): TemplateResult<1>;
|
|
319
|
-
renderFooter(): typeof nothing | TemplateResult<1>;
|
|
320
|
-
renderLegals(): typeof nothing | TemplateResult<1>;
|
|
321
|
-
protected render(): TemplateResult;
|
|
322
|
-
}
|
|
323
|
-
|
|
324
|
-
export declare type OsLeaderboardCasinoAppearance = 'glam';
|
|
325
|
-
|
|
326
|
-
/** Current user's progress towards the next prize tier. Omit to hide. */
|
|
327
|
-
declare interface OsLeaderboardCasinoClimbSection {
|
|
328
|
-
title?: string;
|
|
329
|
-
username: string;
|
|
330
|
-
rank: number;
|
|
331
|
-
points: number;
|
|
332
|
-
vip?: boolean;
|
|
333
|
-
/** Rank that unlocks the next prize tier, e.g. 10. */
|
|
334
|
-
nextTierRank: number;
|
|
335
|
-
/** Prize label of the next tier, e.g. "Free Spins ×10". */
|
|
336
|
-
nextTierLabel: string;
|
|
337
|
-
/** Points still needed to reach the next tier. */
|
|
338
|
-
pointsToNextTier: number;
|
|
339
|
-
/** Progress towards the next tier, 0–1. */
|
|
340
|
-
progress: number;
|
|
341
|
-
/** Rank places gained (+) or lost (−) today. */
|
|
342
|
-
trend?: number;
|
|
343
|
-
}
|
|
344
|
-
|
|
345
|
-
export declare interface OsLeaderboardCasinoConfig {
|
|
346
|
-
appearance: OsLeaderboardCasinoAppearance;
|
|
347
|
-
themeId: string;
|
|
348
|
-
labels?: OsLeaderboardCasinoLabels;
|
|
349
|
-
enabled: readonly OsLeaderboardCasinoSectionId[];
|
|
350
|
-
mainOrder?: readonly OsLeaderboardCasinoMainSectionId[];
|
|
351
|
-
/** Palette overrides — CSS custom properties on the host. */
|
|
352
|
-
themeVars?: Record<string, string>;
|
|
353
|
-
}
|
|
354
|
-
|
|
355
|
-
/** Accent palette for promotional event cards. */
|
|
356
|
-
declare type OsLeaderboardCasinoEventAccent = 'gold' | 'violet' | 'green' | 'red';
|
|
357
|
-
|
|
358
|
-
/** One rotating promotional event. */
|
|
359
|
-
declare interface OsLeaderboardCasinoEventItem {
|
|
360
|
-
id: string;
|
|
361
|
-
icon?: string;
|
|
362
|
-
title: string;
|
|
363
|
-
subtitle?: string;
|
|
364
|
-
accent?: OsLeaderboardCasinoEventAccent;
|
|
365
|
-
}
|
|
366
|
-
|
|
367
|
-
/** Auto-rotating events banner. Omit to hide. */
|
|
368
|
-
declare interface OsLeaderboardCasinoEventsSection {
|
|
369
|
-
events: OsLeaderboardCasinoEventItem[];
|
|
370
|
-
/** Rotation interval; defaults to 4500ms. */
|
|
371
|
-
rotateMs?: number;
|
|
372
|
-
}
|
|
373
|
-
|
|
374
|
-
declare interface OsLeaderboardCasinoFeedItem {
|
|
375
|
-
id: string;
|
|
376
|
-
type: OsLeaderboardCasinoFeedType;
|
|
377
|
-
username: string;
|
|
378
|
-
message: string;
|
|
379
|
-
amount?: number;
|
|
380
|
-
currency?: string;
|
|
381
|
-
timestamp: string;
|
|
382
|
-
vip?: boolean;
|
|
383
|
-
}
|
|
384
|
-
|
|
385
|
-
/** Live activity feed entry. */
|
|
386
|
-
declare type OsLeaderboardCasinoFeedType = 'win' | 'join' | 'rank-up' | 'prize-drop';
|
|
387
|
-
|
|
388
|
-
/** Page footer — plain text attribution only. */
|
|
389
|
-
declare interface OsLeaderboardCasinoFooterSection {
|
|
390
|
-
text?: string;
|
|
391
|
-
}
|
|
392
|
-
|
|
393
|
-
/** One qualifying game tile. */
|
|
394
|
-
declare interface OsLeaderboardCasinoGameItem {
|
|
395
|
-
id: string;
|
|
396
|
-
title: string;
|
|
397
|
-
emoji?: string;
|
|
398
|
-
imageUrl?: string;
|
|
399
|
-
provider?: string;
|
|
400
|
-
/** Boost badge, e.g. "2× points". */
|
|
401
|
-
boost?: string;
|
|
402
|
-
accent?: OsLeaderboardCasinoEventAccent;
|
|
403
|
-
/** Display heat score, e.g. "100.0". Derived when omitted. */
|
|
404
|
-
heatScore?: number | string;
|
|
405
|
-
/** Players tracked, e.g. "25K". Derived when omitted. */
|
|
406
|
-
tracked?: string;
|
|
407
|
-
/** Largest win multiplier, e.g. "80,085x". Derived when omitted. */
|
|
408
|
-
maxHit?: string;
|
|
409
|
-
}
|
|
410
|
-
|
|
411
|
-
/** Horizontal strip of games that earn leaderboard points. Omit to hide. */
|
|
412
|
-
declare interface OsLeaderboardCasinoGamesSection {
|
|
413
|
-
title?: string;
|
|
414
|
-
games: OsLeaderboardCasinoGameItem[];
|
|
415
|
-
}
|
|
416
|
-
|
|
417
|
-
/** Top bar: campaign branding. Omit `header` to hide. */
|
|
418
|
-
declare interface OsLeaderboardCasinoHeaderSection {
|
|
419
|
-
title: string;
|
|
420
|
-
subtitle?: string;
|
|
421
|
-
backButton?: {
|
|
422
|
-
label?: string;
|
|
423
|
-
};
|
|
424
|
-
}
|
|
425
|
-
|
|
426
|
-
export declare interface OsLeaderboardCasinoHeroSection extends Omit<OsLeaderboardCasinoHeroSection_2, 'endTs'> {
|
|
427
|
-
endTs?: string | number;
|
|
428
|
-
showCta?: boolean;
|
|
429
|
-
ctaLabel?: string;
|
|
430
|
-
isRefreshing?: boolean;
|
|
431
|
-
}
|
|
432
|
-
|
|
433
|
-
/** Banner, contest name/description, end date, status. */
|
|
434
|
-
declare interface OsLeaderboardCasinoHeroSection_2 {
|
|
435
|
-
bannerAsset?: Asset;
|
|
436
|
-
title: string;
|
|
437
|
-
description?: string;
|
|
438
|
-
endTs?: string;
|
|
439
|
-
status?: LeaderboardStatus;
|
|
440
|
-
/** Headline figure, e.g. total prize pool ("$18,100"). */
|
|
441
|
-
prizePool?: string;
|
|
442
|
-
prizePoolLabel?: string;
|
|
443
|
-
/**
|
|
444
|
-
* Numeric prize pool. When set, takes precedence over `prizePool` and
|
|
445
|
-
* value changes animate with a rolling odometer count-up.
|
|
446
|
-
*/
|
|
447
|
-
prizePoolValue?: number;
|
|
448
|
-
prizePoolCurrency?: string;
|
|
449
|
-
}
|
|
450
|
-
|
|
451
|
-
/** Host API required by `os-leaderboard-casino.html`. */
|
|
452
|
-
declare interface OsLeaderboardCasinoHost {
|
|
453
|
-
readonly uuid: string;
|
|
454
|
-
readonly finished: boolean;
|
|
455
|
-
readonly mainOrder: string[];
|
|
456
|
-
renderMarquee(): LitTemplate;
|
|
457
|
-
renderEventsBanner(): LitTemplate;
|
|
458
|
-
renderHero(): LitTemplate;
|
|
459
|
-
renderMainSections(): LitTemplate;
|
|
460
|
-
renderFooter(): LitTemplate;
|
|
461
|
-
renderLegals(): LitTemplate;
|
|
462
|
-
}
|
|
463
|
-
|
|
464
|
-
export declare interface OsLeaderboardCasinoLabels {
|
|
465
|
-
back?: string;
|
|
466
|
-
live?: string;
|
|
467
|
-
cta?: string;
|
|
468
|
-
}
|
|
469
|
-
|
|
470
|
-
/**
|
|
471
|
-
* Layout config for `<os-leaderboard-casino>`.
|
|
472
|
-
* Only keys you pass are rendered, in order:
|
|
473
|
-
* marquee → events-banner → hero → main column (+ live-feed rail) →
|
|
474
|
-
* footer. The main column renders prize → stats → games → climb →
|
|
475
|
-
* table by default; pass `mainOrder` to rearrange it.
|
|
476
|
-
*/
|
|
477
|
-
declare interface OsLeaderboardCasinoLayout {
|
|
478
|
-
marquee?: OsLeaderboardCasinoMarqueeSection;
|
|
479
|
-
header?: OsLeaderboardCasinoHeaderSection;
|
|
480
|
-
eventsBanner?: OsLeaderboardCasinoEventsSection;
|
|
481
|
-
hero?: OsLeaderboardCasinoHeroSection_2;
|
|
482
|
-
prize?: OsLeaderboardCasinoPrizeSection_2;
|
|
483
|
-
stats?: OsLeaderboardCasinoStatsSection;
|
|
484
|
-
games?: OsLeaderboardCasinoGamesSection;
|
|
485
|
-
liveFeed?: OsLeaderboardCasinoLiveFeedSection;
|
|
486
|
-
climb?: OsLeaderboardCasinoClimbSection;
|
|
487
|
-
table?: OsLeaderboardCasinoTableView;
|
|
488
|
-
footer?: OsLeaderboardCasinoFooterSection;
|
|
489
|
-
legals?: OsLeaderboardCasinoLegalsSection;
|
|
490
|
-
/** Custom order for the main-column sections. */
|
|
491
|
-
mainOrder?: OsLeaderboardCasinoMainSectionId_2[];
|
|
492
|
-
}
|
|
493
|
-
|
|
494
|
-
declare interface OsLeaderboardCasinoLegalLink {
|
|
495
|
-
label: string;
|
|
496
|
-
type: OsLeaderboardCasinoLegalLinkType;
|
|
497
|
-
/** URL for external links. Defaults to https://www.google.com. */
|
|
498
|
-
href?: string;
|
|
499
|
-
/** Body text for the popup dialog when type is 'internal'. Falls back to a default notice. */
|
|
500
|
-
content?: string;
|
|
501
|
-
}
|
|
502
|
-
|
|
503
|
-
declare type OsLeaderboardCasinoLegalLinkType = 'external' | 'internal';
|
|
504
|
-
|
|
505
|
-
/** Legal links strip — rules, FAQ, T&Cs. External links open in a new tab; internal links show a popup. */
|
|
506
|
-
declare interface OsLeaderboardCasinoLegalsSection {
|
|
507
|
-
links: OsLeaderboardCasinoLegalLink[];
|
|
508
|
-
}
|
|
509
|
-
|
|
510
|
-
/** Live activity rail. Omit to hide. */
|
|
511
|
-
declare interface OsLeaderboardCasinoLiveFeedSection {
|
|
512
|
-
title?: string;
|
|
513
|
-
items: OsLeaderboardCasinoFeedItem[];
|
|
514
|
-
/** Max entries rendered; defaults to 8. */
|
|
515
|
-
maxVisible?: number;
|
|
516
|
-
}
|
|
517
|
-
|
|
518
|
-
export declare type OsLeaderboardCasinoMainSectionId = 'prize' | 'stats' | 'games' | 'climb' | 'table';
|
|
519
|
-
|
|
520
|
-
/** Sections rendered inside the main column (orderable via `mainOrder`). */
|
|
521
|
-
declare type OsLeaderboardCasinoMainSectionId_2 = 'prize' | 'stats' | 'games' | 'climb' | 'table';
|
|
522
|
-
|
|
523
|
-
/** One entry in the scrolling winners marquee. */
|
|
524
|
-
declare interface OsLeaderboardCasinoMarqueeItem {
|
|
525
|
-
id: string;
|
|
526
|
-
/** Game ID matching the games section — resolves the same PNG icon. */
|
|
527
|
-
gameId?: string;
|
|
528
|
-
icon?: string;
|
|
529
|
-
text: string;
|
|
530
|
-
amount?: number;
|
|
531
|
-
currency?: string;
|
|
532
|
-
vip?: boolean;
|
|
533
|
-
}
|
|
534
|
-
|
|
535
|
-
/** Infinitely-scrolling winners ticker at the very top. Omit to hide. */
|
|
536
|
-
declare interface OsLeaderboardCasinoMarqueeSection {
|
|
537
|
-
items: OsLeaderboardCasinoMarqueeItem[];
|
|
538
|
-
/** Seconds for one full loop; defaults to 30. */
|
|
539
|
-
speedSec?: number;
|
|
540
|
-
}
|
|
541
|
-
|
|
542
|
-
export declare interface OsLeaderboardCasinoOpenDetail {
|
|
543
|
-
uuid: string;
|
|
544
|
-
}
|
|
545
|
-
|
|
546
|
-
export declare type OsLeaderboardCasinoPreset = LeaderboardCasinoAssetsPreset;
|
|
547
|
-
|
|
548
|
-
export declare interface OsLeaderboardCasinoPrizeClickDetail {
|
|
549
|
-
prize: QuizPrize;
|
|
550
|
-
}
|
|
551
|
-
|
|
552
|
-
export declare interface OsLeaderboardCasinoPrizeSection {
|
|
553
|
-
title?: string;
|
|
554
|
-
strategyLabel?: string;
|
|
555
|
-
prizePackage?: QuizPrizePackage;
|
|
556
|
-
allocationStrategy?: PrizeAllocationStrategy;
|
|
557
|
-
tiers?: PrizeTier[];
|
|
558
|
-
}
|
|
559
|
-
|
|
560
|
-
/** Prize package + allocation strategy. */
|
|
561
|
-
declare interface OsLeaderboardCasinoPrizeSection_2 {
|
|
562
|
-
title?: string;
|
|
563
|
-
prizePackage?: QuizPrizePackage;
|
|
564
|
-
allocationStrategy?: PrizeAllocationStrategy;
|
|
565
|
-
}
|
|
566
|
-
|
|
567
|
-
export declare interface OsLeaderboardCasinoRefreshDetail {
|
|
568
|
-
uuid: string;
|
|
569
|
-
}
|
|
570
|
-
|
|
571
|
-
export declare interface OsLeaderboardCasinoSearchChangeDetail {
|
|
572
|
-
query: string;
|
|
573
|
-
}
|
|
574
|
-
|
|
575
|
-
export declare interface OsLeaderboardCasinoSectionData {
|
|
576
|
-
marquee?: OsLeaderboardCasinoMarqueeSection;
|
|
577
|
-
events?: OsLeaderboardCasinoEventsSection;
|
|
578
|
-
hero?: OsLeaderboardCasinoHeroSection;
|
|
579
|
-
prize?: OsLeaderboardCasinoPrizeSection;
|
|
580
|
-
stats?: OsLeaderboardCasinoStatsSection;
|
|
581
|
-
games?: OsLeaderboardCasinoGamesSection & {
|
|
582
|
-
items?: OsLeaderboardCasinoGameItem[];
|
|
583
|
-
};
|
|
584
|
-
climb?: OsLeaderboardCasinoClimbSection;
|
|
585
|
-
table?: OsLeaderboardCasinoTableSection;
|
|
586
|
-
footer?: OsLeaderboardCasinoFooterSection;
|
|
587
|
-
legals?: OsLeaderboardCasinoLegalsSection;
|
|
588
|
-
}
|
|
589
|
-
|
|
590
|
-
export declare type OsLeaderboardCasinoSectionId = 'marquee' | 'events' | 'hero' | OsLeaderboardCasinoMainSectionId | 'footer' | 'legals';
|
|
591
|
-
|
|
592
|
-
export declare type OsLeaderboardCasinoSectionPatch = {
|
|
593
|
-
[K in keyof OsLeaderboardCasinoSectionData]?: Partial<NonNullable<OsLeaderboardCasinoSectionData[K]>>;
|
|
594
|
-
};
|
|
595
|
-
|
|
596
|
-
export declare interface OsLeaderboardCasinoState {
|
|
597
|
-
config: OsLeaderboardCasinoConfig;
|
|
598
|
-
sections: OsLeaderboardCasinoSectionData;
|
|
599
|
-
}
|
|
600
|
-
|
|
601
|
-
/** Participation statistics. */
|
|
602
|
-
declare interface OsLeaderboardCasinoStatsSection {
|
|
603
|
-
totalParticipants: number;
|
|
604
|
-
totalPrizes?: number;
|
|
605
|
-
biggestWin?: number;
|
|
606
|
-
biggestWinCurrency?: string;
|
|
607
|
-
}
|
|
608
|
-
|
|
609
|
-
export declare interface OsLeaderboardCasinoTableSection {
|
|
610
|
-
mode: 'preview' | 'ledger';
|
|
611
|
-
title?: string;
|
|
612
|
-
topPlayers?: UserRank[];
|
|
613
|
-
currentUser?: UserRank | Player;
|
|
614
|
-
ctaLabel?: string;
|
|
615
|
-
players?: Player[];
|
|
616
|
-
searchPlaceholder?: string;
|
|
617
|
-
filters?: {
|
|
618
|
-
searchQuery?: string;
|
|
619
|
-
timeframe?: TimeFrame;
|
|
620
|
-
category?: Category;
|
|
621
|
-
};
|
|
622
|
-
}
|
|
623
|
-
|
|
624
|
-
/** Top players preview + optional pinned current user. */
|
|
625
|
-
declare interface OsLeaderboardCasinoTableView {
|
|
626
|
-
topPlayers: UserRank[];
|
|
627
|
-
currentUser?: UserRank | Player;
|
|
628
|
-
/** CTA into the rankings view; defaults provided. */
|
|
629
|
-
ctaLabel?: string;
|
|
630
|
-
/** Prize tiers — used to resolve row prizes by rank (matches prize section). */
|
|
631
|
-
prizes?: QuizPrize[];
|
|
632
|
-
}
|
|
633
|
-
|
|
634
|
-
export declare type OsLeaderboardCasinoThemeId = string;
|
|
635
|
-
|
|
636
|
-
declare type OsLeaderboardCasinoThemeOption = LeaderboardCasinoAssetsTheme;
|
|
637
|
-
|
|
638
|
-
declare interface Player {
|
|
639
|
-
id: string;
|
|
640
|
-
username: string;
|
|
641
|
-
avatar?: string;
|
|
642
|
-
rank: number;
|
|
643
|
-
previousRank?: number;
|
|
644
|
-
totalWinnings: number;
|
|
645
|
-
scoreLabel?: string;
|
|
646
|
-
prize?: number;
|
|
647
|
-
mostPlayed?: string;
|
|
648
|
-
points?: number;
|
|
649
|
-
totalBet?: number;
|
|
650
|
-
winRate: number;
|
|
651
|
-
gamesPlayed: number;
|
|
652
|
-
streak: number;
|
|
653
|
-
level: number;
|
|
654
|
-
badges: string[];
|
|
655
|
-
isOnline?: boolean;
|
|
656
|
-
favoriteGame?: string;
|
|
657
|
-
biggestWin?: number;
|
|
658
|
-
/** Legacy mock field — not used by glam integration input. */
|
|
659
|
-
vipTier?: string;
|
|
660
|
-
}
|
|
661
|
-
|
|
662
|
-
declare type PrizeAllocationStrategy = 'BEST_PRIZE' | 'SPLIT_PRIZE';
|
|
663
|
-
|
|
664
|
-
export declare type PrizeIconName = 'prize.grand-jackpot' | 'prize.elite-bonus' | 'prize.high-roller' | 'prize.free-spins' | 'prize.casino-credits' | 'prize.mystery-bonus' | 'prize.default';
|
|
665
|
-
|
|
666
|
-
declare interface PrizeTier {
|
|
667
|
-
id: string;
|
|
668
|
-
label: string;
|
|
669
|
-
value: number;
|
|
670
|
-
currency?: string;
|
|
671
|
-
rankFrom: number;
|
|
672
|
-
rankTo: number;
|
|
673
|
-
}
|
|
674
|
-
|
|
675
|
-
declare interface QuizPrize {
|
|
676
|
-
uuid: string;
|
|
677
|
-
/** Display label; may be transformed client-side. */
|
|
678
|
-
label: LabelKey | string;
|
|
679
|
-
/** Monetary value when applicable. */
|
|
680
|
-
value?: number;
|
|
681
|
-
currency?: string;
|
|
682
|
-
/** Inclusive rank range this prize covers. */
|
|
683
|
-
rankFrom: number;
|
|
684
|
-
rankTo: number;
|
|
685
|
-
iconUrl?: string;
|
|
686
|
-
}
|
|
687
|
-
|
|
688
|
-
declare interface QuizPrizePackage {
|
|
689
|
-
uuid: string;
|
|
690
|
-
name?: string;
|
|
691
|
-
prizes: QuizPrize[];
|
|
692
|
-
}
|
|
693
|
-
|
|
694
|
-
export declare function resolveAssetsBundle(assets?: LeaderboardCasinoAssetsBundle | null): LeaderboardCasinoAssetsBundle;
|
|
695
|
-
|
|
696
|
-
/**
|
|
697
|
-
* Resolve integration input into render state using the provided assets bundle.
|
|
698
|
-
* Falls back to bundled `assets/fallback/fallback.json` when `assets` is omitted.
|
|
699
|
-
*/
|
|
700
|
-
export declare function resolveLeaderboardCasinoInput(input: LeaderboardCasinoInput, assets?: LeaderboardCasinoAssetsBundle | null): OsLeaderboardCasinoState;
|
|
701
|
-
|
|
702
|
-
declare type SportType = string;
|
|
703
|
-
|
|
704
|
-
export declare type StatIconName = 'stat.users' | 'stat.gift' | 'stat.clock';
|
|
705
|
-
|
|
706
|
-
declare type TimeFrame = 'today' | 'week' | 'month' | 'all';
|
|
707
|
-
|
|
708
|
-
/** Represents a leaderboard position. */
|
|
709
|
-
declare interface UserRank {
|
|
710
|
-
username: string;
|
|
711
|
-
rank: number;
|
|
712
|
-
points: number;
|
|
713
|
-
/** Total wager volume in the active window (money spent). */
|
|
714
|
-
totalBet?: number;
|
|
715
|
-
prize: QuizPrize | null;
|
|
716
|
-
splitCount: number;
|
|
717
|
-
/** Current user flag. */
|
|
718
|
-
you: boolean;
|
|
719
|
-
/** VIP player — shows gold badge across the layout. */
|
|
720
|
-
vip?: boolean;
|
|
721
|
-
showBorder?: boolean;
|
|
722
|
-
/** Rank at the previous snapshot — used to render ▲/▼ trend. */
|
|
723
|
-
previousRank?: number;
|
|
724
|
-
/** Win rate as an integer percentage, e.g. 68 = 68%. */
|
|
725
|
-
winRate?: number;
|
|
726
|
-
/** Number of qualifying games played in the active window. */
|
|
727
|
-
gamesPlayed?: number;
|
|
728
|
-
}
|
|
729
|
-
|
|
730
|
-
declare type VipIconName = 'vip.crown';
|
|
731
|
-
|
|
732
|
-
export declare type WinIconName = 'win.bag' | 'win.coin' | 'win.trophy' | 'win.fire' | 'win.gem' | 'win.bolt';
|
|
733
|
-
|
|
734
|
-
export { }
|