@truelab/truelogic 4.2.0 → 4.3.0-0
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/100.min.js +1 -1
- package/dist/103.min.js +1 -1
- package/dist/113.min.js +1 -1
- package/dist/172.min.js +1 -1
- package/dist/180.min.js +1 -1
- package/dist/201.min.js +1 -1
- package/dist/203.min.js +1 -1
- package/dist/266.min.js +1 -1
- package/dist/282.min.js +1 -1
- package/dist/383.min.js +1 -1
- package/dist/4.min.js +1 -1
- package/dist/423.min.js +1 -1
- package/dist/487.min.js +1 -1
- package/dist/546.min.js +1 -1
- package/dist/585.min.js +1 -1
- package/dist/59.min.js +1 -1
- package/dist/683.min.js +1 -1
- package/dist/699.min.js +1 -1
- package/dist/728.min.js +1 -1
- package/dist/755.min.js +1 -1
- package/dist/756.min.js +1 -1
- package/dist/761.min.js +1 -1
- package/dist/763.min.js +1 -1
- package/dist/80.min.js +1 -1
- package/dist/887.48666879.css +3 -0
- package/dist/887.min.js +1 -0
- package/dist/90.min.js +1 -1
- package/dist/929.min.js +1 -1
- package/dist/937.min.js +1 -1
- package/dist/988.min.js +1 -1
- package/dist/assets/events-empty.e864d6cd0e2060d9eb98.webp +0 -0
- package/dist/assets/locales/cs.json +5 -1
- package/dist/assets/locales/de.json +5 -1
- package/dist/assets/locales/en.json +5 -1
- package/dist/assets/locales/es.json +5 -1
- package/dist/assets/locales/fi.json +5 -1
- package/dist/assets/locales/fr.json +5 -1
- package/dist/assets/locales/hi.json +5 -1
- package/dist/assets/locales/hr.json +5 -1
- package/dist/assets/locales/id.json +5 -1
- package/dist/assets/locales/it.json +5 -1
- package/dist/assets/locales/ja.json +5 -1
- package/dist/assets/locales/kk.json +5 -1
- package/dist/assets/locales/ko.json +5 -1
- package/dist/assets/locales/nl.json +5 -1
- package/dist/assets/locales/no.json +5 -1
- package/dist/assets/locales/pl.json +5 -1
- package/dist/assets/locales/pt.json +5 -1
- package/dist/assets/locales/ru.json +5 -1
- package/dist/assets/locales/sc_en.json +26 -22
- package/dist/assets/locales/sr.json +5 -1
- package/dist/assets/locales/sv.json +5 -1
- package/dist/assets/locales/th.json +5 -1
- package/dist/assets/locales/tr.json +5 -1
- package/dist/assets/locales/uk.json +5 -1
- package/dist/assets/locales/vi.json +5 -1
- package/dist/assets/locales/zh.json +5 -1
- package/dist/truelogic.min.css +1 -1
- package/dist/truelogic.min.js +1 -1
- package/dist/types/src/app/lib/functions/getConfigurationNonCriticalImages.test.d.ts +1 -0
- package/dist/types/src/app/lib/singletones/publicEmitter.d.ts +9 -0
- package/dist/types/src/app/store.d.ts +35 -30
- package/dist/types/src/entities/autoplay/model/autoPlaySlice.d.ts +7 -6
- package/dist/types/src/entities/bonus/model/bonusSlice.d.ts +35 -30
- package/dist/types/src/entities/gameInfo/index.d.ts +3 -1
- package/dist/types/src/entities/gameInfo/lib/getGameInfoSections.d.ts +24 -0
- package/dist/types/src/entities/gameInfo/lib/getGameInfoSections.test.d.ts +1 -0
- package/dist/types/src/entities/gameInfo/model/gameInfoSlice.d.ts +4 -3
- package/dist/types/src/entities/gameInfo/model/types.d.ts +23 -2
- package/dist/types/src/entities/menu/index.d.ts +2 -1
- package/dist/types/src/entities/menu/model/menuSlice.d.ts +34 -0
- package/dist/types/src/entities/menu/model/menuSlice.test.d.ts +1 -0
- package/dist/types/src/entities/modals/index.d.ts +0 -1
- package/dist/types/src/entities/payTable/model/types.d.ts +5 -0
- package/dist/types/src/entities/payTable/ui/PayTableConstructor/PayTableConstructor.d.ts +13 -1
- package/dist/types/src/entities/payTable/ui/PayTableConstructor/PayTableConstructor.stories.d.ts +8 -1
- package/dist/types/src/entities/payTable/ui/PayTableConstructor/items/PayTableLine.stories.d.ts +5 -1
- package/dist/types/src/entities/payTable/ui/PayTableConstructor/items/PayTableSymbolGridV1.stories.d.ts +5 -1
- package/dist/types/src/entities/payTable/ui/PayTableConstructor/items/PayTableSymbolSpecialV1.stories.d.ts +5 -1
- package/dist/types/src/entities/payTable/ui/PayTableConstructor/items/PayTableSymbolSpecialV2.stories.d.ts +5 -1
- package/dist/types/src/entities/payTable/ui/PayTableConstructor/items/PayTableTitle.stories.d.ts +5 -1
- package/dist/types/src/entities/realityCheck/index.d.ts +0 -1
- package/dist/types/src/entities/roundsHistory/ui/RoundsHistoryCard.d.ts +1 -0
- package/dist/types/src/entities/sound/ui/SoundSettingsSwitcher/SoundSettingsSwitcher.d.ts +1 -0
- package/dist/types/src/features/menu/index.d.ts +2 -1
- package/dist/types/src/features/menu/lib/useInfoClick.d.ts +10 -0
- package/dist/types/src/features/menu/ui/InfoButton/InfoButton.d.ts +15 -0
- package/dist/types/src/features/menu/ui/PanelInfo/PanelInfo.d.ts +11 -0
- package/dist/types/src/modules/promoLobby/app/model/index.d.ts +2 -2
- package/dist/types/src/modules/promoLobby/app/model/promoLobbySlice.d.ts +30 -2
- package/dist/types/src/modules/promoLobby/app/model/promoLobbySlice.test.d.ts +1 -0
- package/dist/types/src/modules/promoLobby/app/model/types.d.ts +6 -1
- package/dist/types/src/modules/promoLobby/entities/modals/index.d.ts +0 -2
- package/dist/types/src/modules/promoLobby/entities/modals/ui/ModalBase.d.ts +1 -1
- package/dist/types/src/modules/promoLobby/entities/modals/ui/ModalBaseHeader.d.ts +1 -1
- package/dist/types/src/modules/promoLobby/entities/prizeDrop/lib/isTrueTokenCampaign.d.ts +2 -0
- package/dist/types/src/modules/promoLobby/entities/prizeDrop/ui/PrizeDropEvents/PrizeDropEventsEmpty.d.ts +5 -0
- package/dist/types/src/modules/promoLobby/entities/prizeDrop/ui/PrizeDropEvents/PrizeDropEventsList.d.ts +2 -0
- package/dist/types/src/modules/promoLobby/entities/prizeDrop/ui/PrizeDropEvents/components/PrizeDropEventsPrizes.d.ts +4 -0
- package/dist/types/src/modules/promoLobby/shared/lib/analytics/promoLobbyAnalytics.d.ts +2 -1
- package/dist/types/src/modules/promoLobby/shared/lib/analytics/subscribePromoLobbyAnalytics.d.ts +9 -0
- package/dist/types/src/modules/promoLobby/shared/lib/hooks/useHasNotifications.d.ts +7 -3
- package/dist/types/src/modules/promoLobby/shared/modals/modalsSlice.d.ts +2 -1
- package/dist/types/src/modules/promoLobby/styles/tailwind.config.d.ts +3 -1
- package/dist/types/src/modules/promoLobby/widgets/panel/ui/PanelPromoLobby.d.ts +1 -4
- package/dist/types/src/modules/promoLobby/widgets/promoLobbyTab/index.d.ts +1 -0
- package/dist/types/src/modules/promoLobby/widgets/promoLobbyTab/ui/PromoLobbyTab.d.ts +7 -0
- package/dist/types/src/modules/promoLobby/widgets/topBar/ui/TopBar.d.ts +9 -0
- package/dist/types/src/sandbox/config.d.ts +10 -12
- package/dist/types/src/sandbox/gui/gui.d.ts +3 -6
- package/dist/types/src/sandbox/gui/helpers/index.d.ts +1 -1
- package/dist/types/src/sandbox/gui/helpers/serializationGameInfo.d.ts +6 -0
- package/dist/types/src/sandbox/gui/sections/configuration/gameInfo/index.d.ts +12 -0
- package/dist/types/src/sandbox/gui/sections/configuration/gameInfo/items/generateInfoItem.d.ts +11 -0
- package/dist/types/src/sandbox/gui/sections/configuration/gameInfo/items/generateLineItem.d.ts +11 -0
- package/dist/types/src/sandbox/gui/sections/configuration/gameInfo/items/generateSymbolItem.d.ts +11 -0
- package/dist/types/src/sandbox/gui/sections/configuration/gameInfo/items/index.d.ts +3 -0
- package/dist/types/src/sandbox/gui/sections/promoLobby/index.d.ts +8 -0
- package/dist/types/src/sandbox/presets/index.d.ts +1 -0
- package/dist/types/src/sandbox/presets/prizeDrop/campaignsList.d.ts +2 -0
- package/dist/types/src/sandbox/presets/prizeDrop/lobbyInit.d.ts +2 -0
- package/dist/types/src/sandbox/types/GameInfo.d.ts +11 -0
- package/dist/types/src/sandbox/types/PayTable.d.ts +1 -6
- package/dist/types/src/shared/api/config/types.d.ts +4 -0
- package/dist/types/src/shared/api/modules/promoLobby/config.d.ts +4 -0
- package/dist/types/src/shared/lib/classes/integration/OperatorAbstractService.d.ts +0 -2
- package/dist/types/src/shared/lib/classes/integration/OperatorBaseService.d.ts +0 -4
- package/dist/types/src/shared/lib/classes/integration/OperatorGeneralService.d.ts +1 -3
- package/dist/types/src/shared/lib/constants/cssVars.d.ts +7 -0
- package/dist/types/src/shared/lib/constants/index.d.ts +1 -0
- package/dist/types/src/shared/lib/constants/widgetZIndex.d.ts +1 -0
- package/dist/types/src/shared/lib/functions/formatCount.d.ts +5 -0
- package/dist/types/src/shared/lib/functions/index.d.ts +1 -0
- package/dist/types/src/shared/lib/hooks/index.d.ts +1 -1
- package/dist/types/src/shared/lib/hooks/useElementsBottomCssVar.d.ts +14 -0
- package/dist/types/src/shared/lib/panelLayout/types.d.ts +2 -2
- package/dist/types/src/shared/lib/singletones/analyticsEmitter.d.ts +0 -1
- package/dist/types/src/shared/lib/singletones/gameEmitter.d.ts +1 -1
- package/dist/types/src/shared/lib/singletones/operatorEmitter.d.ts +0 -2
- package/dist/types/src/shared/lib/store/redux.d.ts +14 -12
- package/dist/types/src/shared/lib/tests/utils/getPreloadedState.d.ts +7 -6
- package/dist/types/src/shared/lib/tests/utils/setupTestStore.d.ts +14 -12
- package/dist/types/src/shared/model/menu/types.d.ts +2 -1
- package/dist/types/src/shared/model/modals/index.d.ts +1 -1
- package/dist/types/src/shared/model/modals/modalsSlice.d.ts +2 -3
- package/dist/types/src/shared/modules/menuInnerPage.d.ts +25 -0
- package/dist/types/src/shared/modules/menuTabsRegistry.d.ts +3 -0
- package/dist/types/src/shared/ui/CustomScroll/CustomScroll.d.ts +3 -0
- package/dist/types/src/shared/ui/FixedWidthLabel/FixedWidthLabel.d.ts +1 -0
- package/dist/types/src/shared/ui/InfoConstructor/InfoConstructor.d.ts +3 -1
- package/dist/types/src/shared/ui/InfoConstructor/items/InfoIconListItem.d.ts +4 -1
- package/dist/types/src/shared/ui/InfoSeparator/InfoSeparator.d.ts +13 -0
- package/dist/types/src/shared/ui/InfoSeparator/index.d.ts +1 -0
- package/dist/types/src/shared/ui/SettingsSwitchCard/SettingsSwitchCard.d.ts +16 -0
- package/dist/types/src/shared/ui/SettingsSwitchCard/index.d.ts +1 -0
- package/dist/types/src/shared/ui/Switch/index.d.ts +0 -2
- package/dist/types/src/shared/ui/TabBar/TabBar.d.ts +16 -0
- package/dist/types/src/shared/ui/TabBar/TabBar.stories.d.ts +1804 -0
- package/dist/types/src/shared/ui/TabBar/TabBarIconButton.d.ts +8 -0
- package/dist/types/src/shared/ui/TabBar/TabBarItem.d.ts +12 -0
- package/dist/types/src/shared/ui/TabBar/index.d.ts +3 -0
- package/dist/types/src/shared/ui/TapAnywhere/TapAnywhere.d.ts +4 -2
- package/dist/types/src/widgets/menu/index.d.ts +3 -0
- package/dist/types/src/widgets/menu/lib/selectors.d.ts +11 -0
- package/dist/types/src/widgets/menu/lib/useMenuTabs.d.ts +25 -0
- package/dist/types/src/widgets/menu/ui/GameInfoLight/GameInfoLight.d.ts +16 -0
- package/dist/types/src/widgets/menu/ui/MenuHeader/MenuHeader.d.ts +18 -0
- package/dist/types/src/widgets/menu/ui/MenuTabBar/MenuTabBar.d.ts +11 -0
- package/dist/types/src/widgets/menu/ui/MenuTabContent/MenuTabContent.d.ts +17 -0
- package/dist/types/src/widgets/menu/ui/ModalMenu/ModalMenu.test.d.ts +1 -0
- package/dist/types/src/widgets/menu/ui/tabs/ActivityTab.d.ts +2 -0
- package/dist/types/src/widgets/menu/ui/tabs/ActivityTab.test.d.ts +1 -0
- package/dist/types/src/widgets/menu/ui/tabs/GameInfoTab.d.ts +14 -0
- package/dist/types/src/widgets/menu/ui/tabs/GameInfoTab.test.d.ts +1 -0
- package/dist/types/src/widgets/menu/ui/tabs/RealityCheckSettings.d.ts +7 -0
- package/dist/types/src/widgets/menu/ui/tabs/RealityCheckSettings.test.d.ts +1 -0
- package/dist/types/src/widgets/menu/ui/tabs/RoundDetailsPage.d.ts +9 -0
- package/dist/types/src/widgets/menu/ui/tabs/SettingsTab.d.ts +2 -0
- package/dist/types/src/widgets/{modals/ui/ModalSettings.stories.d.ts → menu/ui/tabs/SettingsTab.stories.d.ts} +3 -3
- package/dist/types/src/widgets/modals/index.d.ts +0 -7
- package/dist/types/src/widgets/modals/ui/ModalRealityCheckReminder.test.d.ts +1 -0
- package/package.json +1 -1
- package/dist/318.a4e04288.css +0 -3
- package/dist/318.min.js +0 -1
- package/dist/assets/coming-soon.378973f1d8788623bbe9.webp +0 -0
- package/dist/assets/true-coin.1428441fe478e319cb4e.webp +0 -0
- package/dist/types/src/entities/menu/ui/MenuSwitchItem.d.ts +0 -6
- package/dist/types/src/entities/menu/ui/MenuSwitchItem.stories.d.ts +0 -35
- package/dist/types/src/entities/modals/ui/ModalMenuItemCard.d.ts +0 -8
- package/dist/types/src/entities/realityCheck/ui/RealityCheckSwitcher/RealityCheckSwitcher.d.ts +0 -7
- package/dist/types/src/features/menu/ui/PanelMenu/PanelMenu.d.ts +0 -10
- package/dist/types/src/modules/promoLobby/entities/modals/ui/ModalFullHeightBase.d.ts +0 -10
- package/dist/types/src/modules/promoLobby/entities/modals/ui/ModalMenuItemCard.d.ts +0 -8
- package/dist/types/src/modules/promoLobby/screens/InfoScreen/InfoScreen.d.ts +0 -1
- package/dist/types/src/modules/promoLobby/screens/ProfileScreen/ProfileScreen.d.ts +0 -1
- package/dist/types/src/modules/promoLobby/shared/lib/constants/index.d.ts +0 -1
- package/dist/types/src/modules/promoLobby/shared/lib/constants/widgetZIndex.d.ts +0 -3
- package/dist/types/src/modules/promoLobby/shared/lib/hooks/usePromoLobbyAnalyticsEvents.d.ts +0 -1
- package/dist/types/src/modules/promoLobby/widgets/modals/ui/ModalPromoLobby.d.ts +0 -2
- package/dist/types/src/modules/promoLobby/widgets/navbar/index.d.ts +0 -2
- package/dist/types/src/modules/promoLobby/widgets/navbar/lib/navbarConfig.d.ts +0 -7
- package/dist/types/src/modules/promoLobby/widgets/navbar/ui/Navbar.d.ts +0 -1
- package/dist/types/src/modules/promoLobby/widgets/navbar/ui/NavbarItem.d.ts +0 -12
- package/dist/types/src/sandbox/gui/helpers/serializationPayTable.d.ts +0 -3
- package/dist/types/src/sandbox/gui/sections/configuration/gameInfo.d.ts +0 -2
- package/dist/types/src/sandbox/gui/sections/configuration/payTable.d.ts +0 -2
- package/dist/types/src/shared/lib/hooks/useFullScreen.d.ts +0 -5
- package/dist/types/src/shared/lib/hooks/useFullScreenSupport.d.ts +0 -1
- package/dist/types/src/shared/model/fullScreen/fullScreenSlice.d.ts +0 -7
- package/dist/types/src/shared/model/fullScreen/index.d.ts +0 -1
- package/dist/types/src/shared/ui/Switch/SwitchItem.d.ts +0 -21
- package/dist/types/src/shared/ui/Switch/SwitchItem.stories.d.ts +0 -14
- package/dist/types/src/widgets/modals/ui/ModalGameInfo.d.ts +0 -1
- package/dist/types/src/widgets/modals/ui/ModalMenu/ModalMenu.stories.d.ts +0 -17
- package/dist/types/src/widgets/modals/ui/ModalPayTable.d.ts +0 -1
- package/dist/types/src/widgets/modals/ui/ModalPayTable.stories.d.ts +0 -15
- package/dist/types/src/widgets/modals/ui/ModalRealityCheck.d.ts +0 -1
- package/dist/types/src/widgets/modals/ui/ModalRoundDetails.d.ts +0 -1
- package/dist/types/src/widgets/modals/ui/ModalRoundsHistory.d.ts +0 -1
- package/dist/types/src/widgets/modals/ui/ModalSettings.d.ts +0 -1
- package/dist/types/src/widgets/topBar/ui/TopBar.d.ts +0 -5
- /package/dist/types/src/{widgets → modules/promoLobby/widgets}/topBar/index.d.ts +0 -0
- /package/dist/types/src/widgets/{modals → menu}/ui/ModalMenu/ModalMenu.d.ts +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { TPayTableSeparator, TPayTableSymbolGridV1, TPayTableSymbolSpecialV1, TPayTableSymbolSpecialV2, TPayTableTitle } from '../../entities/payTable';
|
|
2
2
|
export type TStoredPayTableSymbolSetting = {
|
|
3
3
|
type: 'default' | 'custom' | 'dynamic';
|
|
4
4
|
content: string;
|
|
@@ -11,8 +11,3 @@ export type TStoredPayTableLine = {
|
|
|
11
11
|
lineBreak?: boolean;
|
|
12
12
|
};
|
|
13
13
|
export type TStoredPayTableItem = TPayTableTitle | TStoredPayTableSymbol | TStoredPayTableLine | TPayTableSeparator;
|
|
14
|
-
export type TStoredPayTableConfig = {
|
|
15
|
-
background?: TPayTableConfig['background'];
|
|
16
|
-
items: TStoredPayTableItem[];
|
|
17
|
-
symbolsGridV1Gap?: TSymbolsGridV1Gap;
|
|
18
|
-
};
|
|
@@ -67,6 +67,10 @@ export type TSessionUrls = {
|
|
|
67
67
|
export type TPrizeDrop = {
|
|
68
68
|
apiUrl: string;
|
|
69
69
|
token: string;
|
|
70
|
+
/** Feature flag for the PromoLobby Wallet. Absent means "keep the value from the init config" (default `false`). */
|
|
71
|
+
wallet?: boolean;
|
|
72
|
+
/** Feature flag for the PromoLobby Rewards Hub. Absent means "keep the value from the init config" (default `false`). */
|
|
73
|
+
rewardsHub?: boolean;
|
|
70
74
|
};
|
|
71
75
|
export type TSessionSettings = {
|
|
72
76
|
mode: TSessionMode;
|
|
@@ -4,6 +4,10 @@ import { TApiRewardsClaimFake, TApiRewardsListFake } from '../../../../shared/ap
|
|
|
4
4
|
import { TApiTransactionsFake, TApiWalletConvertFake } from '../../../../shared/api/modules/promoLobby/wallet';
|
|
5
5
|
export type TPromoLobbyConfig = {
|
|
6
6
|
enabled?: boolean;
|
|
7
|
+
/** Feature flag. When `false` (default) the Wallet is hidden inside PromoLobby. */
|
|
8
|
+
wallet?: boolean;
|
|
9
|
+
/** Feature flag. When `false` (default) the Rewards Hub is hidden inside PromoLobby. */
|
|
10
|
+
rewardsHub?: boolean;
|
|
7
11
|
lang?: string;
|
|
8
12
|
url?: string;
|
|
9
13
|
token?: string;
|
|
@@ -60,6 +60,4 @@ export default abstract class OperatorAbstractService {
|
|
|
60
60
|
sendHistoryShow(): Promise<void>;
|
|
61
61
|
sendSettingsUpdate(_data: TSettingsData): Promise<void>;
|
|
62
62
|
sendGameExit(): Promise<void>;
|
|
63
|
-
sendFullscreenEnabled(): Promise<void>;
|
|
64
|
-
sendFullscreenDisabled(): Promise<void>;
|
|
65
63
|
}
|
|
@@ -5,8 +5,6 @@ export declare enum EOperatorBaseSendEvents {
|
|
|
5
5
|
gameCompleted = "gameCompleted",
|
|
6
6
|
changeBalance = "changeBalance",
|
|
7
7
|
leaveTheGame = "leaveTheGame",
|
|
8
|
-
fullscreenOn = "fullscreen-on",
|
|
9
|
-
fullscreenOff = "fullscreen-off",
|
|
10
8
|
modalRefill = "modalRefill"
|
|
11
9
|
}
|
|
12
10
|
export type TEventOptions = {
|
|
@@ -32,6 +30,4 @@ export declare class OperatorBaseService extends OperatorAbstractService {
|
|
|
32
30
|
sendRoundFinished(data: TRoundFinishData): Promise<void>;
|
|
33
31
|
sendDepositShow(): Promise<void>;
|
|
34
32
|
sendGameExit(): Promise<void>;
|
|
35
|
-
sendFullscreenEnabled(): Promise<void>;
|
|
36
|
-
sendFullscreenDisabled(): Promise<void>;
|
|
37
33
|
}
|
|
@@ -24,9 +24,7 @@ export declare enum EEventSend {
|
|
|
24
24
|
sendDepositShow = "sendDepositShow",
|
|
25
25
|
sendHistoryShow = "sendHistoryShow",
|
|
26
26
|
sendSettingsUpdate = "sendSettingsUpdate",
|
|
27
|
-
sendGameExit = "sendGameExit"
|
|
28
|
-
sendFullscreenEnabled = "sendFullscreenEnabled",
|
|
29
|
-
sendFullscreenDisabled = "sendFullscreenDisabled"
|
|
27
|
+
sendGameExit = "sendGameExit"
|
|
30
28
|
}
|
|
31
29
|
export declare class OperatorGeneralService {
|
|
32
30
|
protected operatorServices: OperatorAbstractService[];
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bottom edge of the top line texts (game title, time, lines/RTP), published by the TopLine
|
|
3
|
+
* widget via `useElementsBottomCssVar`. The menu shell keeps its header 3px below it, the way
|
|
4
|
+
* the mockups do when the texts wrap; consumers give `var()` a 20px fallback — the mockup's
|
|
5
|
+
* one-row status bar.
|
|
6
|
+
*/
|
|
7
|
+
export declare const TOP_LINE_TEXTS_BOTTOM_CSS_VAR = "--top-line-texts-bottom";
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Plain integer counters (prizes left, winners, prize counts) with the locale's group separator —
|
|
3
|
+
* `1578` reads as `1,578`. Money keeps going through `cashService`, this is for bare counts.
|
|
4
|
+
*/
|
|
5
|
+
export declare const formatCount: (value: number | undefined | null, lang: string) => string;
|
|
@@ -3,6 +3,7 @@ export { bleachColor } from './bleachColor';
|
|
|
3
3
|
export { camelToKebab } from './camelToKebab';
|
|
4
4
|
export { hexToHsl, hslToHex, parseHSL, toHSL } from './colors';
|
|
5
5
|
export { debounce } from './debounce';
|
|
6
|
+
export { formatCount } from './formatCount';
|
|
6
7
|
export { formatDate } from './formatDate';
|
|
7
8
|
export { formatTime } from './formatTime';
|
|
8
9
|
export { getBase64Image } from './getBase64Image';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export { useClickOutside } from './useClickOutside';
|
|
2
2
|
export { useDebounce } from './useDebounce';
|
|
3
3
|
export { useElementInViewPort } from './useElementInViewPort';
|
|
4
|
+
export { useElementsBottomCssVar } from './useElementsBottomCssVar';
|
|
4
5
|
export { useEnv } from './useEnv';
|
|
5
|
-
export { useFullScreenSupport } from './useFullScreenSupport';
|
|
6
6
|
export { useGameTime } from './useGameTime';
|
|
7
7
|
export { useHoldDown } from './useHoldDown';
|
|
8
8
|
export { useOffline } from './useOffline';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { RefObject } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Keeps a CSS custom property on the document root equal to the bottom edge of the tallest of
|
|
4
|
+
* the given elements, measured from the container's top in layout px — rects are normalized by
|
|
5
|
+
* the container's own scale, so the game root `transform: scale()` does not leak into the value.
|
|
6
|
+
*
|
|
7
|
+
* Lets a widget position itself under another widget from a different layer of the overlay
|
|
8
|
+
* stack with plain CSS on the consumer side: `var(--the-name, <fallback>)`. The property is
|
|
9
|
+
* removed when the publishing widget unmounts, so the consumer falls back to its default.
|
|
10
|
+
*
|
|
11
|
+
* The set of elements may change between renders (a ref target appearing with its feature,
|
|
12
|
+
* free rounds starting mid-session) — the observer re-attaches whenever it does.
|
|
13
|
+
*/
|
|
14
|
+
export declare const useElementsBottomCssVar: (name: string, containerRef: RefObject<HTMLElement>, refs: RefObject<HTMLElement>[]) => void;
|
|
@@ -6,12 +6,12 @@ export declare enum EArea {
|
|
|
6
6
|
slot4 = "[grid-area:slot4] mp:mb-8"
|
|
7
7
|
}
|
|
8
8
|
export type TPanelLayout = {
|
|
9
|
-
/** Menu button without a slot is rendered floating outside the plate */
|
|
10
|
-
menu?: EArea;
|
|
11
9
|
stakeAmounts: EArea;
|
|
12
10
|
autoPlay?: EArea;
|
|
13
11
|
fastPlay?: EArea;
|
|
14
12
|
bonus?: EArea;
|
|
13
|
+
/** Info button slot on the plate; unset — the Info button is the round one in the screen corner */
|
|
14
|
+
info?: EArea;
|
|
15
15
|
/** Narrow plate: one button on each side of the spin button */
|
|
16
16
|
isNarrow: boolean;
|
|
17
17
|
};
|
|
@@ -86,7 +86,6 @@ export type TAnalyticsEvents = {
|
|
|
86
86
|
['prizeDrop:won']: (params: TAnalyticsCustomParams) => void;
|
|
87
87
|
['notification_badge_shown']: () => void;
|
|
88
88
|
['notification_badge_cleared']: () => void;
|
|
89
|
-
['promoLobby:infoViewed']: () => void;
|
|
90
89
|
['promoLobby:opened']: () => void;
|
|
91
90
|
['promoLobby:closed']: () => void;
|
|
92
91
|
['wallet:opened']: () => void;
|
|
@@ -74,7 +74,7 @@ export type TAutoPlayStartedResponse = {
|
|
|
74
74
|
number: number;
|
|
75
75
|
isStopUponBonusGame: boolean;
|
|
76
76
|
};
|
|
77
|
-
export type TButtonName = 'play' | 'stop' | 'bets' | 'menu' | 'bonus' | 'bonusBetOff' | 'bonusFeature' | 'bonusFeatureBuy' | 'modalClose' | 'autoPlay' | 'autoPlayStop' | 'autoPlayOption' | 'autoPlayStart' | 'menuCard' | 'lobby' | 'return' | 'service' | 'welcome' | 'levelUp' | 'levelDown' | 'cashUp' | 'cashDown' | 'historyCard' | 'copy' | 'replay' | 'settingsCard' | 'realityCheck' | 'realityCheckSelect' | 'choice' | 'freeRounds';
|
|
77
|
+
export type TButtonName = 'play' | 'stop' | 'bets' | 'menu' | 'bonus' | 'bonusBetOff' | 'bonusFeature' | 'bonusFeatureBuy' | 'modalClose' | 'autoPlay' | 'autoPlayStop' | 'autoPlayOption' | 'autoPlayStart' | 'menuCard' | 'info' | 'lobby' | 'return' | 'service' | 'welcome' | 'levelUp' | 'levelDown' | 'cashUp' | 'cashDown' | 'historyCard' | 'copy' | 'replay' | 'settingsCard' | 'realityCheck' | 'realityCheckSelect' | 'choice' | 'freeRounds';
|
|
78
78
|
export type TSliderName = 'welcome' | 'bets' | 'autoplay';
|
|
79
79
|
export type TFreeRoundResultResponse = {
|
|
80
80
|
count: number;
|
|
@@ -5,8 +5,6 @@ export type TOperatorEvents = {
|
|
|
5
5
|
['round:ended']: (options: TRoundFinishData) => void;
|
|
6
6
|
['balance:changed']: (balance: number) => void;
|
|
7
7
|
['game:left']: () => void;
|
|
8
|
-
['fullscreen:enabled']: () => void;
|
|
9
|
-
['fullscreen:disabled']: () => void;
|
|
10
8
|
['modal:refill']: () => void;
|
|
11
9
|
['loading:started']: () => void;
|
|
12
10
|
['loading.progress:changed']: (progress: number) => void;
|
|
@@ -65,7 +65,6 @@ export declare const useAppDispatch: import("react-redux").UseDispatch<import("r
|
|
|
65
65
|
inactivityTimeout: number;
|
|
66
66
|
};
|
|
67
67
|
modals: {
|
|
68
|
-
hasOpenedByModule: boolean;
|
|
69
68
|
hasOpened: boolean;
|
|
70
69
|
current: import("../../model/modals").TModalName[];
|
|
71
70
|
configs: {
|
|
@@ -260,7 +259,8 @@ export declare const useAppDispatch: import("react-redux").UseDispatch<import("r
|
|
|
260
259
|
};
|
|
261
260
|
gameInfo: {
|
|
262
261
|
deferredConfig: import("../../../index").TGameInfoConfig;
|
|
263
|
-
containers: import("
|
|
262
|
+
containers: import("../../../entities/gameInfo").TGameInfoContainer[];
|
|
263
|
+
symbolsGridV1Gap: import("../../../entities/payTable").TSymbolsGridV1Gap;
|
|
264
264
|
background?: string | {
|
|
265
265
|
portrait?: string;
|
|
266
266
|
landscape?: string;
|
|
@@ -287,10 +287,6 @@ export declare const useAppDispatch: import("react-redux").UseDispatch<import("r
|
|
|
287
287
|
apiRoundReplay: import("../../../app/config/types/apiRoundReplay").TApiRoundReplayState;
|
|
288
288
|
gameSettings: import("../../api/config").TGameSettings;
|
|
289
289
|
complianceSettings: import("../../api/config").TComplianceSettings;
|
|
290
|
-
fullScreen: {
|
|
291
|
-
isFullScreenSupported: boolean;
|
|
292
|
-
isFullScreenEnabled: boolean;
|
|
293
|
-
};
|
|
294
290
|
topLine: {
|
|
295
291
|
config: import("../../../index").TTopLineConfig;
|
|
296
292
|
};
|
|
@@ -320,6 +316,11 @@ export declare const useAppDispatch: import("react-redux").UseDispatch<import("r
|
|
|
320
316
|
};
|
|
321
317
|
showed?: boolean;
|
|
322
318
|
};
|
|
319
|
+
menu: {
|
|
320
|
+
activeTab: import("../../../entities/menu").TMenuTab;
|
|
321
|
+
isTabBarHidden: boolean;
|
|
322
|
+
entry: import("../../../entities/menu").TMenuEntry;
|
|
323
|
+
};
|
|
323
324
|
} & import("redux-persist/es/persistReducer").PersistPartial, undefined, import("redux").UnknownAction> & import("redux").Dispatch<import("redux").Action>>;
|
|
324
325
|
export declare const useAppSelector: import("react-redux").UseSelector<{
|
|
325
326
|
viewPort: import("../../viewPort/lib/types").TViewPortState;
|
|
@@ -388,7 +389,6 @@ export declare const useAppSelector: import("react-redux").UseSelector<{
|
|
|
388
389
|
inactivityTimeout: number;
|
|
389
390
|
};
|
|
390
391
|
modals: {
|
|
391
|
-
hasOpenedByModule: boolean;
|
|
392
392
|
hasOpened: boolean;
|
|
393
393
|
current: import("../../model/modals").TModalName[];
|
|
394
394
|
configs: {
|
|
@@ -583,7 +583,8 @@ export declare const useAppSelector: import("react-redux").UseSelector<{
|
|
|
583
583
|
};
|
|
584
584
|
gameInfo: {
|
|
585
585
|
deferredConfig: import("../../../index").TGameInfoConfig;
|
|
586
|
-
containers: import("
|
|
586
|
+
containers: import("../../../entities/gameInfo").TGameInfoContainer[];
|
|
587
|
+
symbolsGridV1Gap: import("../../../entities/payTable").TSymbolsGridV1Gap;
|
|
587
588
|
background?: string | {
|
|
588
589
|
portrait?: string;
|
|
589
590
|
landscape?: string;
|
|
@@ -610,10 +611,6 @@ export declare const useAppSelector: import("react-redux").UseSelector<{
|
|
|
610
611
|
apiRoundReplay: import("../../../app/config/types/apiRoundReplay").TApiRoundReplayState;
|
|
611
612
|
gameSettings: import("../../api/config").TGameSettings;
|
|
612
613
|
complianceSettings: import("../../api/config").TComplianceSettings;
|
|
613
|
-
fullScreen: {
|
|
614
|
-
isFullScreenSupported: boolean;
|
|
615
|
-
isFullScreenEnabled: boolean;
|
|
616
|
-
};
|
|
617
614
|
topLine: {
|
|
618
615
|
config: import("../../../index").TTopLineConfig;
|
|
619
616
|
};
|
|
@@ -643,6 +640,11 @@ export declare const useAppSelector: import("react-redux").UseSelector<{
|
|
|
643
640
|
};
|
|
644
641
|
showed?: boolean;
|
|
645
642
|
};
|
|
643
|
+
menu: {
|
|
644
|
+
activeTab: import("../../../entities/menu").TMenuTab;
|
|
645
|
+
isTabBarHidden: boolean;
|
|
646
|
+
entry: import("../../../entities/menu").TMenuEntry;
|
|
647
|
+
};
|
|
646
648
|
} & import("redux-persist/es/persistReducer").PersistPartial>;
|
|
647
649
|
export declare const useAppStore: import("react-redux").UseStore<TAppStore>;
|
|
648
650
|
export declare const createAppSlice: <State, CaseReducers extends import("@reduxjs/toolkit").SliceCaseReducers<State>, Name extends string, Selectors extends import("@reduxjs/toolkit").SliceSelectors<State>, ReducerPath extends string = Name>(options: import("@reduxjs/toolkit").CreateSliceOptions<State, CaseReducers, Name, ReducerPath, Selectors>) => import("@reduxjs/toolkit").Slice<State, CaseReducers, Name, ReducerPath, Selectors>;
|
|
@@ -65,7 +65,6 @@ export declare const getPreloadedState: (storePartial?: DeepPartial<TRootState>)
|
|
|
65
65
|
inactivityTimeout: number;
|
|
66
66
|
};
|
|
67
67
|
modals: {
|
|
68
|
-
hasOpenedByModule: boolean;
|
|
69
68
|
hasOpened: boolean;
|
|
70
69
|
current: import("../../../model/modals").TModalName[];
|
|
71
70
|
configs: {
|
|
@@ -260,7 +259,8 @@ export declare const getPreloadedState: (storePartial?: DeepPartial<TRootState>)
|
|
|
260
259
|
};
|
|
261
260
|
gameInfo: {
|
|
262
261
|
deferredConfig: import("../../../../index").TGameInfoConfig;
|
|
263
|
-
containers: import("
|
|
262
|
+
containers: import("../../../../entities/gameInfo").TGameInfoContainer[];
|
|
263
|
+
symbolsGridV1Gap: import("../../../../entities/payTable").TSymbolsGridV1Gap;
|
|
264
264
|
background?: string | {
|
|
265
265
|
portrait?: string;
|
|
266
266
|
landscape?: string;
|
|
@@ -287,10 +287,6 @@ export declare const getPreloadedState: (storePartial?: DeepPartial<TRootState>)
|
|
|
287
287
|
apiRoundReplay: import("../../../../app/config/types/apiRoundReplay").TApiRoundReplayState;
|
|
288
288
|
gameSettings: import("../../../api/config").TGameSettings;
|
|
289
289
|
complianceSettings: import("../../../api/config").TComplianceSettings;
|
|
290
|
-
fullScreen: {
|
|
291
|
-
isFullScreenSupported: boolean;
|
|
292
|
-
isFullScreenEnabled: boolean;
|
|
293
|
-
};
|
|
294
290
|
topLine: {
|
|
295
291
|
config: import("../../../../index").TTopLineConfig;
|
|
296
292
|
};
|
|
@@ -320,4 +316,9 @@ export declare const getPreloadedState: (storePartial?: DeepPartial<TRootState>)
|
|
|
320
316
|
};
|
|
321
317
|
showed?: boolean;
|
|
322
318
|
};
|
|
319
|
+
menu: {
|
|
320
|
+
activeTab: import("../../../../entities/menu").TMenuTab;
|
|
321
|
+
isTabBarHidden: boolean;
|
|
322
|
+
entry: import("../../../../entities/menu").TMenuEntry;
|
|
323
|
+
};
|
|
323
324
|
} & import("redux-persist/es/persistReducer").PersistPartial;
|
|
@@ -65,7 +65,6 @@ export declare const setupTestStore: (storePartial?: DeepPartial<TRootState>) =>
|
|
|
65
65
|
inactivityTimeout: number;
|
|
66
66
|
};
|
|
67
67
|
modals: {
|
|
68
|
-
hasOpenedByModule: boolean;
|
|
69
68
|
hasOpened: boolean;
|
|
70
69
|
current: import("../../../model/modals").TModalName[];
|
|
71
70
|
configs: {
|
|
@@ -260,7 +259,8 @@ export declare const setupTestStore: (storePartial?: DeepPartial<TRootState>) =>
|
|
|
260
259
|
};
|
|
261
260
|
gameInfo: {
|
|
262
261
|
deferredConfig: import("../../../../index").TGameInfoConfig;
|
|
263
|
-
containers: import("
|
|
262
|
+
containers: import("../../../../entities/gameInfo").TGameInfoContainer[];
|
|
263
|
+
symbolsGridV1Gap: import("../../../../entities/payTable").TSymbolsGridV1Gap;
|
|
264
264
|
background?: string | {
|
|
265
265
|
portrait?: string;
|
|
266
266
|
landscape?: string;
|
|
@@ -287,10 +287,6 @@ export declare const setupTestStore: (storePartial?: DeepPartial<TRootState>) =>
|
|
|
287
287
|
apiRoundReplay: import("../../../../app/config/types/apiRoundReplay").TApiRoundReplayState;
|
|
288
288
|
gameSettings: import("../../../api/config").TGameSettings;
|
|
289
289
|
complianceSettings: import("../../../api/config").TComplianceSettings;
|
|
290
|
-
fullScreen: {
|
|
291
|
-
isFullScreenSupported: boolean;
|
|
292
|
-
isFullScreenEnabled: boolean;
|
|
293
|
-
};
|
|
294
290
|
topLine: {
|
|
295
291
|
config: import("../../../../index").TTopLineConfig;
|
|
296
292
|
};
|
|
@@ -320,6 +316,11 @@ export declare const setupTestStore: (storePartial?: DeepPartial<TRootState>) =>
|
|
|
320
316
|
};
|
|
321
317
|
showed?: boolean;
|
|
322
318
|
};
|
|
319
|
+
menu: {
|
|
320
|
+
activeTab: import("../../../../entities/menu").TMenuTab;
|
|
321
|
+
isTabBarHidden: boolean;
|
|
322
|
+
entry: import("../../../../entities/menu").TMenuEntry;
|
|
323
|
+
};
|
|
323
324
|
} & import("redux-persist/es/persistReducer").PersistPartial, import("redux").Action, import("@reduxjs/toolkit").Tuple<[import("redux").StoreEnhancer<{
|
|
324
325
|
dispatch: import("redux-thunk").ThunkDispatch<{
|
|
325
326
|
viewPort: import("../../../viewPort/lib/types").TViewPortState;
|
|
@@ -388,7 +389,6 @@ export declare const setupTestStore: (storePartial?: DeepPartial<TRootState>) =>
|
|
|
388
389
|
inactivityTimeout: number;
|
|
389
390
|
};
|
|
390
391
|
modals: {
|
|
391
|
-
hasOpenedByModule: boolean;
|
|
392
392
|
hasOpened: boolean;
|
|
393
393
|
current: import("../../../model/modals").TModalName[];
|
|
394
394
|
configs: {
|
|
@@ -583,7 +583,8 @@ export declare const setupTestStore: (storePartial?: DeepPartial<TRootState>) =>
|
|
|
583
583
|
};
|
|
584
584
|
gameInfo: {
|
|
585
585
|
deferredConfig: import("../../../../index").TGameInfoConfig;
|
|
586
|
-
containers: import("
|
|
586
|
+
containers: import("../../../../entities/gameInfo").TGameInfoContainer[];
|
|
587
|
+
symbolsGridV1Gap: import("../../../../entities/payTable").TSymbolsGridV1Gap;
|
|
587
588
|
background?: string | {
|
|
588
589
|
portrait?: string;
|
|
589
590
|
landscape?: string;
|
|
@@ -610,10 +611,6 @@ export declare const setupTestStore: (storePartial?: DeepPartial<TRootState>) =>
|
|
|
610
611
|
apiRoundReplay: import("../../../../app/config/types/apiRoundReplay").TApiRoundReplayState;
|
|
611
612
|
gameSettings: import("../../../api/config").TGameSettings;
|
|
612
613
|
complianceSettings: import("../../../api/config").TComplianceSettings;
|
|
613
|
-
fullScreen: {
|
|
614
|
-
isFullScreenSupported: boolean;
|
|
615
|
-
isFullScreenEnabled: boolean;
|
|
616
|
-
};
|
|
617
614
|
topLine: {
|
|
618
615
|
config: import("../../../../index").TTopLineConfig;
|
|
619
616
|
};
|
|
@@ -643,5 +640,10 @@ export declare const setupTestStore: (storePartial?: DeepPartial<TRootState>) =>
|
|
|
643
640
|
};
|
|
644
641
|
showed?: boolean;
|
|
645
642
|
};
|
|
643
|
+
menu: {
|
|
644
|
+
activeTab: import("../../../../entities/menu").TMenuTab;
|
|
645
|
+
isTabBarHidden: boolean;
|
|
646
|
+
entry: import("../../../../entities/menu").TMenuEntry;
|
|
647
|
+
};
|
|
646
648
|
} & import("redux-persist/es/persistReducer").PersistPartial, undefined, import("redux").UnknownAction>;
|
|
647
649
|
}>, import("redux").StoreEnhancer]>>;
|
|
@@ -6,5 +6,6 @@ export type TMenuConfig = {
|
|
|
6
6
|
isSoundsVisible: boolean;
|
|
7
7
|
/** @deprecated Fast play is no longer shown in the game menu, the flag has no effect. */
|
|
8
8
|
isFastPlayVisible?: boolean;
|
|
9
|
-
|
|
9
|
+
/** @deprecated Full screen is no longer part of the product, the flag has no effect. */
|
|
10
|
+
isFullScreenVisible?: boolean;
|
|
10
11
|
};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export type { TModalName } from './modalsSlice';
|
|
2
|
-
export { closeModal, getCurrentModal, getIsPlayStartBlockedByModals, getModalsIsModalMode, modalsReducer, openModal, resetModalsServiceAutoplayType,
|
|
2
|
+
export { closeModal, getCurrentModal, getIsPlayStartBlockedByModals, getModalsIsModalMode, modalsReducer, openModal, resetModalsServiceAutoplayType, setIsModalReady, setModalConfigs, setModalReady, setModalsError, setModalsServiceAutoplayType, setModalsServiceErrorData, } from './modalsSlice';
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import type { TAutoplayServiceModalType } from '../../../entities/autoplay';
|
|
2
2
|
import { TAppThunkAction } from '../../../shared/lib/store';
|
|
3
3
|
import { TMenuConfig } from '../menu';
|
|
4
|
-
export type TModalName = 'menu' | 'bonusFeature' | 'autoplay' | '
|
|
4
|
+
export type TModalName = 'menu' | 'bonusFeature' | 'autoplay' | 'realityCheckReminder' | 'replay' | 'serviceMaxBet' | 'serviceInsufficientFunds' | 'serviceRestore' | 'serviceMaxWin' | 'serviceQuitTheGame' | 'serviceConnectionLost' | 'serviceError' | 'serviceFatalError' | 'serviceSessionExpired' | 'serviceAutoplay' | 'freeRounds' | 'freeRoundsResult' | 'prizeDropCongratulation' | 'prizeDropUnclaimed' | 'prizeDrop' | 'prizeDropSuccess' | 'prizeDropResult' | 'prizeDropLive' | 'prizeDropJoinError' | 'stakeAmounts';
|
|
5
5
|
type TModalConfigs = {
|
|
6
6
|
menu: TMenuConfig;
|
|
7
7
|
};
|
|
8
8
|
type TModalsState = {
|
|
9
|
-
hasOpenedByModule: boolean;
|
|
10
9
|
hasOpened: boolean;
|
|
11
10
|
current: TModalName[];
|
|
12
11
|
configs: TModalConfigs;
|
|
@@ -23,7 +22,7 @@ type TModalsError = {
|
|
|
23
22
|
export declare const closeModal: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<TModalName, "modals/closeModal">, setModalConfigs: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<TMenuConfig, "modals/setModalConfigs">, setModalReady: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"modals/setModalReady">, setModalsServiceAutoplayType: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<TAutoplayServiceModalType, "modals/setModalsServiceAutoplayType">, setIsModalReady: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<boolean, "modals/setIsModalReady">, resetModalsServiceAutoplayType: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"modals/resetModalsServiceAutoplayType">, setModalsServiceErrorData: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<{
|
|
24
23
|
name: string;
|
|
25
24
|
message: string;
|
|
26
|
-
}, "modals/setModalsServiceErrorData">, setHasOpened: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<boolean, "modals/setHasOpened">, addCurrent: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<TModalName, "modals/addCurrent">, focusModal: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<TModalName, "modals/focusModal"
|
|
25
|
+
}, "modals/setModalsServiceErrorData">, setHasOpened: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<boolean, "modals/setHasOpened">, addCurrent: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<TModalName, "modals/addCurrent">, focusModal: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<TModalName, "modals/focusModal">;
|
|
27
26
|
export declare const getModalsIsModalMode: import("reselect").Selector<{
|
|
28
27
|
modals: TModalsState;
|
|
29
28
|
}, boolean, []> & {
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { FC, ReactNode } from 'react';
|
|
2
|
+
/** An inner page of a tab: it renames the header and puts a back button in it. */
|
|
3
|
+
export type TMenuInnerPage = {
|
|
4
|
+
title: string;
|
|
5
|
+
onBack: () => void;
|
|
6
|
+
};
|
|
7
|
+
type TMenuInnerPageContext = {
|
|
8
|
+
page: TMenuInnerPage | null;
|
|
9
|
+
openPage: (page: TMenuInnerPage) => void;
|
|
10
|
+
closePage: () => void;
|
|
11
|
+
};
|
|
12
|
+
type TProps = {
|
|
13
|
+
children: ReactNode;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Lets the active tab take over the menu header — the round details page, for one, replaces the
|
|
17
|
+
* tab title with its own and swaps the home and sound buttons for a back button. Kept in React
|
|
18
|
+
* rather than in the store: `onBack` is a callback, and the page dies with the tab anyway.
|
|
19
|
+
*
|
|
20
|
+
* Lives in `shared` on purpose, like `menuTabsRegistry`: tabs contributed by a module (the promo
|
|
21
|
+
* lobby event page) open inner pages too, and a module must not depend on a core widget.
|
|
22
|
+
*/
|
|
23
|
+
export declare const MenuInnerPageProvider: FC<TProps>;
|
|
24
|
+
export declare const useMenuInnerPage: () => TMenuInnerPageContext;
|
|
25
|
+
export {};
|
|
@@ -2,6 +2,9 @@ import React from 'react';
|
|
|
2
2
|
type TCustomScrollProps = {
|
|
3
3
|
children: React.ReactNode;
|
|
4
4
|
className?: string;
|
|
5
|
+
/** Classes for the moving content box — e.g. `flex min-h-full flex-col` to let short content
|
|
6
|
+
* stretch to the full scroll height instead of hugging its own. */
|
|
7
|
+
contentClassName?: string;
|
|
5
8
|
initialScrollToSelector?: string;
|
|
6
9
|
};
|
|
7
10
|
declare const CustomScroll: React.FC<TCustomScrollProps>;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { TInfoContainer } from '../../../shared/ui/InfoConstructor';
|
|
2
2
|
type TProps = {
|
|
3
3
|
containers: TInfoContainer[];
|
|
4
|
+
/** Where the game menu entry point is — a panel plate slot or the round corner button; the `info` list icon mirrors it */
|
|
5
|
+
isInfoButtonOnPanel?: boolean;
|
|
4
6
|
};
|
|
5
|
-
export declare const InfoConstructor: ({ containers }: TProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export declare const InfoConstructor: ({ containers, isInfoButtonOnPanel }: TProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
8
|
export {};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { FC } from 'react';
|
|
2
|
-
|
|
2
|
+
/** `game-menu` is the pre-redesign name of the menu entry point icon, kept as an alias of `info` */
|
|
3
|
+
export type TInfoIconName = 'spin' | 'info' | 'game-menu' | 'bet-size' | 'autoplay' | 'spin-speed' | 'buy-feature' | 'true-world';
|
|
3
4
|
export type TInfoIconListItem = {
|
|
4
5
|
type: 'icon-list-item';
|
|
5
6
|
icon: TInfoIconName;
|
|
@@ -8,6 +9,8 @@ export type TInfoIconListItem = {
|
|
|
8
9
|
};
|
|
9
10
|
type TProps = {
|
|
10
11
|
item: TInfoIconListItem;
|
|
12
|
+
/** The Info button sits in a panel plate slot (true) or is the round one in the screen corner (false) */
|
|
13
|
+
isInfoButtonOnPanel?: boolean;
|
|
11
14
|
};
|
|
12
15
|
export declare const InfoIconListItem: FC<TProps>;
|
|
13
16
|
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { FC, HTMLAttributes } from 'react';
|
|
2
|
+
type TProps = {
|
|
3
|
+
/** Vertical rhythm around the line — it differs per page, the line itself does not. */
|
|
4
|
+
className?: string;
|
|
5
|
+
} & HTMLAttributes<HTMLDivElement>;
|
|
6
|
+
/**
|
|
7
|
+
* Hairline divider of the info pages: a horizontal gradient fading out to both ends.
|
|
8
|
+
*
|
|
9
|
+
* Vertical spacing is left to the caller — the paytable separates its own blocks tighter than
|
|
10
|
+
* the gap between whole sections of the Game Info page.
|
|
11
|
+
*/
|
|
12
|
+
export declare const InfoSeparator: FC<TProps>;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { InfoSeparator } from './InfoSeparator';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { FC, HTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
type TProps = {
|
|
3
|
+
icon: ReactNode;
|
|
4
|
+
label: string;
|
|
5
|
+
isActive: boolean;
|
|
6
|
+
onToggle: (event: React.MouseEvent) => void;
|
|
7
|
+
switchTestId?: string;
|
|
8
|
+
/** Settings the switch reveals — a divider appears above them. */
|
|
9
|
+
children?: ReactNode;
|
|
10
|
+
} & HTMLAttributes<HTMLDivElement>;
|
|
11
|
+
/**
|
|
12
|
+
* A settings plate: a row with an icon, a caption and a switch, growing downwards with the
|
|
13
|
+
* settings that switch controls (sound volumes, reality check intervals).
|
|
14
|
+
*/
|
|
15
|
+
export declare const SettingsSwitchCard: FC<TProps>;
|
|
16
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { SettingsSwitchCard } from './SettingsSwitchCard';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { FC, HTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
type TProps = {
|
|
3
|
+
children: ReactNode;
|
|
4
|
+
/** Position of the highlighted tab among the items, -1 for none */
|
|
5
|
+
activeIndex?: number;
|
|
6
|
+
} & HTMLAttributes<HTMLDivElement>;
|
|
7
|
+
/**
|
|
8
|
+
* Translucent blurred plate holding `TabBarItem`s (and the Close button in its own plate):
|
|
9
|
+
* a horizontal row in portrait, a vertical rail in landscape.
|
|
10
|
+
*
|
|
11
|
+
* The active-tab highlight is a single plate that travels to the picked tab instead of a
|
|
12
|
+
* background on each item. Its position comes straight from the tab index and the fixed UI-kit
|
|
13
|
+
* sizes — no DOM measuring, which also keeps it right inside the `transform: scale()` game root.
|
|
14
|
+
*/
|
|
15
|
+
export declare const TabBar: FC<TProps>;
|
|
16
|
+
export {};
|