@gamepark/react-game 6.0.0-alpha.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/components/Avatar/Avatar.d.ts +8 -0
- package/dist/components/Avatar/Avatar.js +63 -0
- package/dist/components/Avatar/Avatar.js.map +1 -0
- package/dist/components/Avatar/ChatSpeechBubble.d.ts +8 -0
- package/dist/components/Avatar/ChatSpeechBubble.js +62 -0
- package/dist/components/Avatar/ChatSpeechBubble.js.map +1 -0
- package/dist/components/Avatar/SpeechBubble.d.ts +15 -0
- package/dist/components/Avatar/SpeechBubble.js +73 -0
- package/dist/components/Avatar/SpeechBubble.js.map +1 -0
- package/dist/components/Avatar/index.d.ts +3 -0
- package/dist/components/Avatar/index.js +20 -0
- package/dist/components/Avatar/index.js.map +1 -0
- package/dist/components/Chat/Chat.d.ts +3 -0
- package/dist/components/Chat/Chat.js +81 -0
- package/dist/components/Chat/Chat.js.map +1 -0
- package/dist/components/Chat/ChatMessage.d.ts +7 -0
- package/dist/components/Chat/ChatMessage.js +30 -0
- package/dist/components/Chat/ChatMessage.js.map +1 -0
- package/dist/components/Chat/ChatMessageAuthor.d.ts +3 -0
- package/dist/components/Chat/ChatMessageAuthor.js +35 -0
- package/dist/components/Chat/ChatMessageAuthor.js.map +1 -0
- package/dist/components/Chat/ChatTextInput.d.ts +7 -0
- package/dist/components/Chat/ChatTextInput.js +45 -0
- package/dist/components/Chat/ChatTextInput.js.map +1 -0
- package/dist/components/Chat/SignInToChat.d.ts +1 -0
- package/dist/components/Chat/SignInToChat.js +36 -0
- package/dist/components/Chat/SignInToChat.js.map +1 -0
- package/dist/components/Chat/index.d.ts +5 -0
- package/dist/components/Chat/index.js +22 -0
- package/dist/components/Chat/index.js.map +1 -0
- package/dist/components/GamePoints/GamePointIcon.d.ts +2 -0
- package/dist/components/GamePoints/GamePointIcon.js +26 -0
- package/dist/components/GamePoints/GamePointIcon.js.map +1 -0
- package/dist/components/GamePoints/GamePoints.d.ts +8 -0
- package/dist/components/GamePoints/GamePoints.js +58 -0
- package/dist/components/GamePoints/GamePoints.js.map +1 -0
- package/dist/components/GamePoints/index.d.ts +2 -0
- package/dist/components/GamePoints/index.js +19 -0
- package/dist/components/GamePoints/index.js.map +1 -0
- package/dist/components/GameProvider/GameContext.d.ts +20 -0
- package/dist/components/GameProvider/GameContext.js +20 -0
- package/dist/components/GameProvider/GameContext.js.map +1 -0
- package/dist/components/GameProvider/GameProvider.d.ts +5 -0
- package/dist/components/GameProvider/GameProvider.js +113 -0
- package/dist/components/GameProvider/GameProvider.js.map +1 -0
- package/dist/components/GameProvider/index.d.ts +2 -0
- package/dist/components/GameProvider/index.js +19 -0
- package/dist/components/GameProvider/index.js.map +1 -0
- package/dist/components/Header/Header.d.ts +7 -0
- package/dist/components/Header/Header.js +46 -0
- package/dist/components/Header/Header.js.map +1 -0
- package/dist/components/Header/MaterialHeader.d.ts +9 -0
- package/dist/components/Header/MaterialHeader.js +41 -0
- package/dist/components/Header/MaterialHeader.js.map +1 -0
- package/dist/components/Header/index.d.ts +2 -0
- package/dist/components/Header/index.js +19 -0
- package/dist/components/Header/index.js.map +1 -0
- package/dist/components/ImagesLoader/ImagesLoader.d.ts +6 -0
- package/dist/components/ImagesLoader/ImagesLoader.js +24 -0
- package/dist/components/ImagesLoader/ImagesLoader.js.map +1 -0
- package/dist/components/ImagesLoader/index.d.ts +1 -0
- package/dist/components/ImagesLoader/index.js +18 -0
- package/dist/components/ImagesLoader/index.js.map +1 -0
- package/dist/components/Letterbox/Letterbox.d.ts +8 -0
- package/dist/components/Letterbox/Letterbox.js +43 -0
- package/dist/components/Letterbox/Letterbox.js.map +1 -0
- package/dist/components/Letterbox/index.d.ts +1 -0
- package/dist/components/Letterbox/index.js +18 -0
- package/dist/components/Letterbox/index.js.map +1 -0
- package/dist/components/LoadingScreen/LoadingScreen.d.ts +10 -0
- package/dist/components/LoadingScreen/LoadingScreen.js +76 -0
- package/dist/components/LoadingScreen/LoadingScreen.js.map +1 -0
- package/dist/components/LoadingScreen/index.d.ts +1 -0
- package/dist/components/LoadingScreen/index.js +18 -0
- package/dist/components/LoadingScreen/index.js.map +1 -0
- package/dist/components/Picture/Picture.d.ts +8 -0
- package/dist/components/Picture/Picture.js +34 -0
- package/dist/components/Picture/Picture.js.map +1 -0
- package/dist/components/Picture/index.d.ts +1 -0
- package/dist/components/Picture/index.js +18 -0
- package/dist/components/Picture/index.js.map +1 -0
- package/dist/components/PlayerPanel/PlayerPanel.d.ts +7 -0
- package/dist/components/PlayerPanel/PlayerPanel.js +57 -0
- package/dist/components/PlayerPanel/PlayerPanel.js.map +1 -0
- package/dist/components/PlayerPanel/index.d.ts +1 -0
- package/dist/components/PlayerPanel/index.js +18 -0
- package/dist/components/PlayerPanel/index.js.map +1 -0
- package/dist/components/PlayerTimer/PlayerTimer.d.ts +8 -0
- package/dist/components/PlayerTimer/PlayerTimer.js +69 -0
- package/dist/components/PlayerTimer/PlayerTimer.js.map +1 -0
- package/dist/components/PlayerTimer/index.d.ts +1 -0
- package/dist/components/PlayerTimer/index.js +18 -0
- package/dist/components/PlayerTimer/index.js.map +1 -0
- package/dist/components/buttons/PlayMoveButton/PlayMoveButton.d.ts +13 -0
- package/dist/components/buttons/PlayMoveButton/PlayMoveButton.js +66 -0
- package/dist/components/buttons/PlayMoveButton/PlayMoveButton.js.map +1 -0
- package/dist/components/buttons/PlayMoveButton/index.d.ts +1 -0
- package/dist/components/buttons/PlayMoveButton/index.js +18 -0
- package/dist/components/buttons/PlayMoveButton/index.js.map +1 -0
- package/dist/components/buttons/ThemeButton/ThemeButton.d.ts +3 -0
- package/dist/components/buttons/ThemeButton/ThemeButton.js +22 -0
- package/dist/components/buttons/ThemeButton/ThemeButton.js.map +1 -0
- package/dist/components/buttons/ThemeButton/index.d.ts +1 -0
- package/dist/components/buttons/ThemeButton/index.js +18 -0
- package/dist/components/buttons/ThemeButton/index.js.map +1 -0
- package/dist/components/buttons/index.d.ts +2 -0
- package/dist/components/buttons/index.js +19 -0
- package/dist/components/buttons/index.js.map +1 -0
- package/dist/components/dialogs/Dialog.d.ts +12 -0
- package/dist/components/dialogs/Dialog.js +63 -0
- package/dist/components/dialogs/Dialog.js.map +1 -0
- package/dist/components/dialogs/FailuresDialog.d.ts +2 -0
- package/dist/components/dialogs/FailuresDialog.js +69 -0
- package/dist/components/dialogs/FailuresDialog.js.map +1 -0
- package/dist/components/dialogs/ResultDialog/RematchDisplay.d.ts +6 -0
- package/dist/components/dialogs/ResultDialog/RematchDisplay.js +58 -0
- package/dist/components/dialogs/ResultDialog/RematchDisplay.js.map +1 -0
- package/dist/components/dialogs/ResultDialog/RematchSection.d.ts +5 -0
- package/dist/components/dialogs/ResultDialog/RematchSection.js +42 -0
- package/dist/components/dialogs/ResultDialog/RematchSection.js.map +1 -0
- package/dist/components/dialogs/ResultDialog/ResultDialog.d.ts +7 -0
- package/dist/components/dialogs/ResultDialog/ResultDialog.js +107 -0
- package/dist/components/dialogs/ResultDialog/ResultDialog.js.map +1 -0
- package/dist/components/dialogs/ResultDialog/index.d.ts +1 -0
- package/dist/components/dialogs/ResultDialog/index.js +18 -0
- package/dist/components/dialogs/ResultDialog/index.js.map +1 -0
- package/dist/components/dialogs/RulesDialog/LocationRulesDialogContent.d.ts +11 -0
- package/dist/components/dialogs/RulesDialog/LocationRulesDialogContent.js +42 -0
- package/dist/components/dialogs/RulesDialog/LocationRulesDialogContent.js.map +1 -0
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialog.d.ts +4 -0
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialog.js +42 -0
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialog.js.map +1 -0
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialogContent.d.ts +9 -0
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialogContent.js +49 -0
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialogContent.js.map +1 -0
- package/dist/components/dialogs/RulesDialog/RulesDialog.d.ts +7 -0
- package/dist/components/dialogs/RulesDialog/RulesDialog.js +44 -0
- package/dist/components/dialogs/RulesDialog/RulesDialog.js.map +1 -0
- package/dist/components/dialogs/RulesDialog/index.d.ts +2 -0
- package/dist/components/dialogs/RulesDialog/index.js +19 -0
- package/dist/components/dialogs/RulesDialog/index.js.map +1 -0
- package/dist/components/dialogs/index.d.ts +4 -0
- package/dist/components/dialogs/index.js +21 -0
- package/dist/components/dialogs/index.js.map +1 -0
- package/dist/components/index.d.ts +12 -0
- package/dist/components/index.js +29 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/material/Board/Board.d.ts +17 -0
- package/dist/components/material/Board/Board.js +34 -0
- package/dist/components/material/Board/Board.js.map +1 -0
- package/dist/components/material/Board/index.d.ts +1 -0
- package/dist/components/material/Board/index.js +18 -0
- package/dist/components/material/Board/index.js.map +1 -0
- package/dist/components/material/Card/Card.d.ts +23 -0
- package/dist/components/material/Card/Card.js +49 -0
- package/dist/components/material/Card/Card.js.map +1 -0
- package/dist/components/material/Card/index.d.ts +1 -0
- package/dist/components/material/Card/index.js +18 -0
- package/dist/components/material/Card/index.js.map +1 -0
- package/dist/components/material/DraggableMaterial.d.ts +14 -0
- package/dist/components/material/DraggableMaterial.js +112 -0
- package/dist/components/material/DraggableMaterial.js.map +1 -0
- package/dist/components/material/DropAreas/SimpleDropArea.d.ts +12 -0
- package/dist/components/material/DropAreas/SimpleDropArea.js +121 -0
- package/dist/components/material/DropAreas/SimpleDropArea.js.map +1 -0
- package/dist/components/material/DropAreas/index.d.ts +1 -0
- package/dist/components/material/DropAreas/index.js +18 -0
- package/dist/components/material/DropAreas/index.js.map +1 -0
- package/dist/components/material/GameTable/GameMaterialDisplay.d.ts +1 -0
- package/dist/components/material/GameTable/GameMaterialDisplay.js +107 -0
- package/dist/components/material/GameTable/GameMaterialDisplay.js.map +1 -0
- package/dist/components/material/GameTable/GameTable.d.ts +18 -0
- package/dist/components/material/GameTable/GameTable.js +53 -0
- package/dist/components/material/GameTable/GameTable.js.map +1 -0
- package/dist/components/material/GameTable/GameTableContent.d.ts +18 -0
- package/dist/components/material/GameTable/GameTableContent.js +48 -0
- package/dist/components/material/GameTable/GameTableContent.js.map +1 -0
- package/dist/components/material/GameTable/index.d.ts +1 -0
- package/dist/components/material/GameTable/index.js +18 -0
- package/dist/components/material/GameTable/index.js.map +1 -0
- package/dist/components/material/Items.d.ts +4 -0
- package/dist/components/material/Items.js +3 -0
- package/dist/components/material/Items.js.map +1 -0
- package/dist/components/material/MaterialAnimations.d.ts +28 -0
- package/dist/components/material/MaterialAnimations.js +172 -0
- package/dist/components/material/MaterialAnimations.js.map +1 -0
- package/dist/components/material/MaterialComponent.d.ts +20 -0
- package/dist/components/material/MaterialComponent.js +101 -0
- package/dist/components/material/MaterialComponent.js.map +1 -0
- package/dist/components/material/MaterialComponentType.d.ts +7 -0
- package/dist/components/material/MaterialComponentType.js +12 -0
- package/dist/components/material/MaterialComponentType.js.map +1 -0
- package/dist/components/material/MaterialDescription.d.ts +20 -0
- package/dist/components/material/MaterialDescription.js +3 -0
- package/dist/components/material/MaterialDescription.js.map +1 -0
- package/dist/components/material/MaterialGameAnimations.d.ts +10 -0
- package/dist/components/material/MaterialGameAnimations.js +47 -0
- package/dist/components/material/MaterialGameAnimations.js.map +1 -0
- package/dist/components/material/Token/Token.d.ts +18 -0
- package/dist/components/material/Token/Token.js +34 -0
- package/dist/components/material/Token/Token.js.map +1 -0
- package/dist/components/material/Token/index.d.ts +1 -0
- package/dist/components/material/Token/index.js +18 -0
- package/dist/components/material/Token/index.js.map +1 -0
- package/dist/components/material/index.d.ts +11 -0
- package/dist/components/material/index.js +28 -0
- package/dist/components/material/index.js.map +1 -0
- package/dist/components/material/utils/IsLocationSubset.d.ts +2 -0
- package/dist/components/material/utils/IsLocationSubset.js +12 -0
- package/dist/components/material/utils/IsLocationSubset.js.map +1 -0
- package/dist/components/material/utils/IsMoveOnItem.d.ts +2 -0
- package/dist/components/material/utils/IsMoveOnItem.js +13 -0
- package/dist/components/material/utils/IsMoveOnItem.js.map +1 -0
- package/dist/components/material/utils/IsMoveThisItem.d.ts +2 -0
- package/dist/components/material/utils/IsMoveThisItem.js +12 -0
- package/dist/components/material/utils/IsMoveThisItem.js.map +1 -0
- package/dist/components/material/utils/IsMoveThisItemToLocation.d.ts +3 -0
- package/dist/components/material/utils/IsMoveThisItemToLocation.js +11 -0
- package/dist/components/material/utils/IsMoveThisItemToLocation.js.map +1 -0
- package/dist/components/material/utils/IsMoveToLocation.d.ts +2 -0
- package/dist/components/material/utils/IsMoveToLocation.js +13 -0
- package/dist/components/material/utils/IsMoveToLocation.js.map +1 -0
- package/dist/components/material/utils/IsMoveToStock.d.ts +4 -0
- package/dist/components/material/utils/IsMoveToStock.js +18 -0
- package/dist/components/material/utils/IsMoveToStock.js.map +1 -0
- package/dist/components/material/utils/index.d.ts +5 -0
- package/dist/components/material/utils/index.js +22 -0
- package/dist/components/material/utils/index.js.map +1 -0
- package/dist/components/menus/ContrastThemeButton/ContrastThemeButton.d.ts +4 -0
- package/dist/components/menus/ContrastThemeButton/ContrastThemeButton.js +27 -0
- package/dist/components/menus/ContrastThemeButton/ContrastThemeButton.js.map +1 -0
- package/dist/components/menus/ContrastThemeButton/index.d.ts +1 -0
- package/dist/components/menus/ContrastThemeButton/index.js +18 -0
- package/dist/components/menus/ContrastThemeButton/index.js.map +1 -0
- package/dist/components/menus/EjectPlayer/EjectPlayerButton.d.ts +2 -0
- package/dist/components/menus/EjectPlayer/EjectPlayerButton.js +35 -0
- package/dist/components/menus/EjectPlayer/EjectPlayerButton.js.map +1 -0
- package/dist/components/menus/EjectPlayer/EjectPlayerDialog.d.ts +10 -0
- package/dist/components/menus/EjectPlayer/EjectPlayerDialog.js +79 -0
- package/dist/components/menus/EjectPlayer/EjectPlayerDialog.js.map +1 -0
- package/dist/components/menus/EjectPlayer/EjectPlayerPopButton.d.ts +2 -0
- package/dist/components/menus/EjectPlayer/EjectPlayerPopButton.js +37 -0
- package/dist/components/menus/EjectPlayer/EjectPlayerPopButton.js.map +1 -0
- package/dist/components/menus/EjectPlayer/index.d.ts +3 -0
- package/dist/components/menus/EjectPlayer/index.js +20 -0
- package/dist/components/menus/EjectPlayer/index.js.map +1 -0
- package/dist/components/menus/Fullscreen/FullscreenButton.d.ts +1 -0
- package/dist/components/menus/Fullscreen/FullscreenButton.js +28 -0
- package/dist/components/menus/Fullscreen/FullscreenButton.js.map +1 -0
- package/dist/components/menus/Fullscreen/FullscreenDialog.d.ts +2 -0
- package/dist/components/menus/Fullscreen/FullscreenDialog.js +47 -0
- package/dist/components/menus/Fullscreen/FullscreenDialog.js.map +1 -0
- package/dist/components/menus/Fullscreen/FullscreenPopButton.d.ts +1 -0
- package/dist/components/menus/Fullscreen/FullscreenPopButton.js +40 -0
- package/dist/components/menus/Fullscreen/FullscreenPopButton.js.map +1 -0
- package/dist/components/menus/Fullscreen/index.d.ts +3 -0
- package/dist/components/menus/Fullscreen/index.js +20 -0
- package/dist/components/menus/Fullscreen/index.js.map +1 -0
- package/dist/components/menus/GiveUpButton/GiveUpButton.d.ts +1 -0
- package/dist/components/menus/GiveUpButton/GiveUpButton.js +47 -0
- package/dist/components/menus/GiveUpButton/GiveUpButton.js.map +1 -0
- package/dist/components/menus/GiveUpButton/index.d.ts +1 -0
- package/dist/components/menus/GiveUpButton/index.js +18 -0
- package/dist/components/menus/GiveUpButton/index.js.map +1 -0
- package/dist/components/menus/Menu/LogoIcon.d.ts +2 -0
- package/dist/components/menus/Menu/LogoIcon.js +18 -0
- package/dist/components/menus/Menu/LogoIcon.js.map +1 -0
- package/dist/components/menus/Menu/Menu.d.ts +3 -0
- package/dist/components/menus/Menu/Menu.js +103 -0
- package/dist/components/menus/Menu/Menu.js.map +1 -0
- package/dist/components/menus/Menu/MenuPopButton.d.ts +7 -0
- package/dist/components/menus/Menu/MenuPopButton.js +52 -0
- package/dist/components/menus/Menu/MenuPopButton.js.map +1 -0
- package/dist/components/menus/Menu/NavButton.d.ts +7 -0
- package/dist/components/menus/Menu/NavButton.js +33 -0
- package/dist/components/menus/Menu/NavButton.js.map +1 -0
- package/dist/components/menus/Menu/index.d.ts +1 -0
- package/dist/components/menus/Menu/index.js +18 -0
- package/dist/components/menus/Menu/index.js.map +1 -0
- package/dist/components/menus/RestartTutorialButton/RestartTutorialButton.d.ts +1 -0
- package/dist/components/menus/RestartTutorialButton/RestartTutorialButton.js +36 -0
- package/dist/components/menus/RestartTutorialButton/RestartTutorialButton.js.map +1 -0
- package/dist/components/menus/RestartTutorialButton/index.d.ts +1 -0
- package/dist/components/menus/RestartTutorialButton/index.js +18 -0
- package/dist/components/menus/RestartTutorialButton/index.js.map +1 -0
- package/dist/components/menus/Result/Medal.d.ts +4 -0
- package/dist/components/menus/Result/Medal.js +42 -0
- package/dist/components/menus/Result/Medal.js.map +1 -0
- package/dist/components/menus/Result/MedalBronze.d.ts +2 -0
- package/dist/components/menus/Result/MedalBronze.js +18 -0
- package/dist/components/menus/Result/MedalBronze.js.map +1 -0
- package/dist/components/menus/Result/MedalGold.d.ts +2 -0
- package/dist/components/menus/Result/MedalGold.js +18 -0
- package/dist/components/menus/Result/MedalGold.js.map +1 -0
- package/dist/components/menus/Result/MedalSilver.d.ts +2 -0
- package/dist/components/menus/Result/MedalSilver.js +18 -0
- package/dist/components/menus/Result/MedalSilver.js.map +1 -0
- package/dist/components/menus/Result/ResultButton.d.ts +2 -0
- package/dist/components/menus/Result/ResultButton.js +26 -0
- package/dist/components/menus/Result/ResultButton.js.map +1 -0
- package/dist/components/menus/Result/ResultPopButton.d.ts +2 -0
- package/dist/components/menus/Result/ResultPopButton.js +37 -0
- package/dist/components/menus/Result/ResultPopButton.js.map +1 -0
- package/dist/components/menus/Result/index.d.ts +3 -0
- package/dist/components/menus/Result/index.js +20 -0
- package/dist/components/menus/Result/index.js.map +1 -0
- package/dist/components/menus/SoundButton/SoundButton.d.ts +1 -0
- package/dist/components/menus/SoundButton/SoundButton.js +34 -0
- package/dist/components/menus/SoundButton/SoundButton.js.map +1 -0
- package/dist/components/menus/SoundButton/index.d.ts +1 -0
- package/dist/components/menus/SoundButton/index.js +18 -0
- package/dist/components/menus/SoundButton/index.js.map +1 -0
- package/dist/components/menus/TimeStatsButton/TimeStatsButton.d.ts +1 -0
- package/dist/components/menus/TimeStatsButton/TimeStatsButton.js +76 -0
- package/dist/components/menus/TimeStatsButton/TimeStatsButton.js.map +1 -0
- package/dist/components/menus/TimeStatsButton/index.d.ts +1 -0
- package/dist/components/menus/TimeStatsButton/index.js +18 -0
- package/dist/components/menus/TimeStatsButton/index.js.map +1 -0
- package/dist/components/menus/UndoButton/UndoButton.d.ts +1 -0
- package/dist/components/menus/UndoButton/UndoButton.js +29 -0
- package/dist/components/menus/UndoButton/UndoButton.js.map +1 -0
- package/dist/components/menus/UndoButton/UndoPopButton.d.ts +1 -0
- package/dist/components/menus/UndoButton/UndoPopButton.js +36 -0
- package/dist/components/menus/UndoButton/UndoPopButton.js.map +1 -0
- package/dist/components/menus/UndoButton/index.d.ts +2 -0
- package/dist/components/menus/UndoButton/index.js +19 -0
- package/dist/components/menus/UndoButton/index.js.map +1 -0
- package/dist/components/menus/index.d.ts +5 -0
- package/dist/components/menus/index.js +22 -0
- package/dist/components/menus/index.js.map +1 -0
- package/dist/components/menus/menuCss.d.ts +10 -0
- package/dist/components/menus/menuCss.js +28 -0
- package/dist/components/menus/menuCss.js.map +1 -0
- package/dist/css/backgroundCss.d.ts +1 -0
- package/dist/css/backgroundCss.js +12 -0
- package/dist/css/backgroundCss.js.map +1 -0
- package/dist/css/buttonCss.d.ts +3 -0
- package/dist/css/buttonCss.js +14 -0
- package/dist/css/buttonCss.js.map +1 -0
- package/dist/css/componentSizeCss.d.ts +9 -0
- package/dist/css/componentSizeCss.js +20 -0
- package/dist/css/componentSizeCss.js.map +1 -0
- package/dist/css/cursorCss.d.ts +3 -0
- package/dist/css/cursorCss.js +13 -0
- package/dist/css/cursorCss.js.map +1 -0
- package/dist/css/index.d.ts +6 -0
- package/dist/css/index.js +23 -0
- package/dist/css/index.js.map +1 -0
- package/dist/css/shineEffect.d.ts +1 -0
- package/dist/css/shineEffect.js +12 -0
- package/dist/css/shineEffect.js.map +1 -0
- package/dist/css/transformCss.d.ts +1 -0
- package/dist/css/transformCss.js +18 -0
- package/dist/css/transformCss.js.map +1 -0
- package/dist/hooks/index.d.ts +24 -0
- package/dist/hooks/index.js +41 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/useActions.d.ts +2 -0
- package/dist/hooks/useActions.js +9 -0
- package/dist/hooks/useActions.js.map +1 -0
- package/dist/hooks/useAnimations.d.ts +4 -0
- package/dist/hooks/useAnimations.js +37 -0
- package/dist/hooks/useAnimations.js.map +1 -0
- package/dist/hooks/useContrastTheme.d.ts +7 -0
- package/dist/hooks/useContrastTheme.js +27 -0
- package/dist/hooks/useContrastTheme.js.map +1 -0
- package/dist/hooks/useFailures.d.ts +1 -0
- package/dist/hooks/useFailures.js +11 -0
- package/dist/hooks/useFailures.js.map +1 -0
- package/dist/hooks/useFullscreen.d.ts +5 -0
- package/dist/hooks/useFullscreen.js +36 -0
- package/dist/hooks/useFullscreen.js.map +1 -0
- package/dist/hooks/useGame.d.ts +1 -0
- package/dist/hooks/useGame.js +9 -0
- package/dist/hooks/useGame.js.map +1 -0
- package/dist/hooks/useGiveUp.d.ts +1 -0
- package/dist/hooks/useGiveUp.js +17 -0
- package/dist/hooks/useGiveUp.js.map +1 -0
- package/dist/hooks/useItemLocator.d.ts +2 -0
- package/dist/hooks/useItemLocator.js +11 -0
- package/dist/hooks/useItemLocator.js.map +1 -0
- package/dist/hooks/useKeyDown.d.ts +1 -0
- package/dist/hooks/useKeyDown.js +17 -0
- package/dist/hooks/useKeyDown.js.map +1 -0
- package/dist/hooks/useLegalMoves.d.ts +2 -0
- package/dist/hooks/useLegalMoves.js +23 -0
- package/dist/hooks/useLegalMoves.js.map +1 -0
- package/dist/hooks/useMaterialAnimations.d.ts +2 -0
- package/dist/hooks/useMaterialAnimations.js +17 -0
- package/dist/hooks/useMaterialAnimations.js.map +1 -0
- package/dist/hooks/useMaterialDescription.d.ts +2 -0
- package/dist/hooks/useMaterialDescription.js +11 -0
- package/dist/hooks/useMaterialDescription.js.map +1 -0
- package/dist/hooks/useNow.d.ts +6 -0
- package/dist/hooks/useNow.js +22 -0
- package/dist/hooks/useNow.js.map +1 -0
- package/dist/hooks/useNumberOfPlayers.d.ts +1 -0
- package/dist/hooks/useNumberOfPlayers.js +7 -0
- package/dist/hooks/useNumberOfPlayers.js.map +1 -0
- package/dist/hooks/useOpponentWithMaxTime.d.ts +5 -0
- package/dist/hooks/useOpponentWithMaxTime.js +41 -0
- package/dist/hooks/useOpponentWithMaxTime.js.map +1 -0
- package/dist/hooks/usePlay.d.ts +6 -0
- package/dist/hooks/usePlay.js +24 -0
- package/dist/hooks/usePlay.js.map +1 -0
- package/dist/hooks/usePlayerId.d.ts +1 -0
- package/dist/hooks/usePlayerId.js +7 -0
- package/dist/hooks/usePlayerId.js.map +1 -0
- package/dist/hooks/usePlayerName.d.ts +1 -0
- package/dist/hooks/usePlayerName.js +9 -0
- package/dist/hooks/usePlayerName.js.map +1 -0
- package/dist/hooks/usePlayerTime.d.ts +1 -0
- package/dist/hooks/usePlayerTime.js +37 -0
- package/dist/hooks/usePlayerTime.js.map +1 -0
- package/dist/hooks/usePlayers.d.ts +8 -0
- package/dist/hooks/usePlayers.js +65 -0
- package/dist/hooks/usePlayers.js.map +1 -0
- package/dist/hooks/useRules.d.ts +2 -0
- package/dist/hooks/useRules.js +17 -0
- package/dist/hooks/useRules.js.map +1 -0
- package/dist/hooks/useScale.d.ts +1 -0
- package/dist/hooks/useScale.js +16 -0
- package/dist/hooks/useScale.js.map +1 -0
- package/dist/hooks/useSound.d.ts +1 -0
- package/dist/hooks/useSound.js +20 -0
- package/dist/hooks/useSound.js.map +1 -0
- package/dist/hooks/useStocks.d.ts +2 -0
- package/dist/hooks/useStocks.js +12 -0
- package/dist/hooks/useStocks.js.map +1 -0
- package/dist/hooks/useUndo.d.ts +7 -0
- package/dist/hooks/useUndo.js +58 -0
- package/dist/hooks/useUndo.js.map +1 -0
- package/dist/hooks/useWebP.d.ts +1 -0
- package/dist/hooks/useWebP.js +64 -0
- package/dist/hooks/useWebP.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +22 -0
- package/dist/index.js.map +1 -0
- package/dist/locators/DeckLocator.d.ts +9 -0
- package/dist/locators/DeckLocator.js +49 -0
- package/dist/locators/DeckLocator.js.map +1 -0
- package/dist/locators/HandLocator.d.ts +14 -0
- package/dist/locators/HandLocator.js +70 -0
- package/dist/locators/HandLocator.js.map +1 -0
- package/dist/locators/ItemLocator.d.ts +67 -0
- package/dist/locators/ItemLocator.js +204 -0
- package/dist/locators/ItemLocator.js.map +1 -0
- package/dist/locators/LineLocator.d.ts +8 -0
- package/dist/locators/LineLocator.js +45 -0
- package/dist/locators/LineLocator.js.map +1 -0
- package/dist/locators/PileLocator.d.ts +13 -0
- package/dist/locators/PileLocator.js +69 -0
- package/dist/locators/PileLocator.js.map +1 -0
- package/dist/locators/index.d.ts +5 -0
- package/dist/locators/index.js +22 -0
- package/dist/locators/index.js.map +1 -0
- package/dist/translation/index.d.ts +1 -0
- package/dist/translation/index.js +18 -0
- package/dist/translation/index.js.map +1 -0
- package/dist/translation/setupTranslation.d.ts +5 -0
- package/dist/translation/setupTranslation.js +33 -0
- package/dist/translation/setupTranslation.js.map +1 -0
- package/dist/utilities/combineEventListeners.d.ts +1 -0
- package/dist/utilities/combineEventListeners.js +19 -0
- package/dist/utilities/combineEventListeners.js.map +1 -0
- package/dist/utilities/index.d.ts +1 -0
- package/dist/utilities/index.js +18 -0
- package/dist/utilities/index.js.map +1 -0
- package/package.json +68 -0
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** @jsxImportSource @emotion/react */
|
|
2
|
+
import { HTMLAttributes } from 'react';
|
|
3
|
+
import { Location, MaterialMove } from '@gamepark/rules-api';
|
|
4
|
+
export type SimpleDropAreaProps<P extends number = number, M extends number = number, L extends number = number> = {
|
|
5
|
+
location: Location<P, L>;
|
|
6
|
+
legalMoves: MaterialMove<P, M, L>[];
|
|
7
|
+
onShortClick?: () => void;
|
|
8
|
+
onLongClick?: () => void;
|
|
9
|
+
dragOnly?: boolean;
|
|
10
|
+
} & HTMLAttributes<HTMLDivElement>;
|
|
11
|
+
export declare const SimpleDropArea: <P extends number = number, M extends number = number, L extends number = number>({ location, legalMoves, onShortClick, onLongClick, dragOnly, ...props }: SimpleDropAreaProps<P, M, L>) => import("@emotion/react/jsx-runtime").JSX.Element;
|
|
12
|
+
export declare function isDropLocation<P extends number = number, L extends number = number>(data?: Record<string, any>): data is Location<P, L>;
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
+
return cooked;
|
|
5
|
+
};
|
|
6
|
+
var __assign = (this && this.__assign) || function () {
|
|
7
|
+
__assign = Object.assign || function(t) {
|
|
8
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
9
|
+
s = arguments[i];
|
|
10
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
11
|
+
t[p] = s[p];
|
|
12
|
+
}
|
|
13
|
+
return t;
|
|
14
|
+
};
|
|
15
|
+
return __assign.apply(this, arguments);
|
|
16
|
+
};
|
|
17
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
18
|
+
var t = {};
|
|
19
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
20
|
+
t[p] = s[p];
|
|
21
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
22
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
23
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
24
|
+
t[p[i]] = s[p[i]];
|
|
25
|
+
}
|
|
26
|
+
return t;
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.isDropLocation = exports.SimpleDropArea = void 0;
|
|
30
|
+
var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
31
|
+
/** @jsxImportSource @emotion/react */
|
|
32
|
+
var react_1 = require("react");
|
|
33
|
+
var rules_api_1 = require("@gamepark/rules-api");
|
|
34
|
+
var react_2 = require("@emotion/react");
|
|
35
|
+
var use_long_press_1 = require("use-long-press");
|
|
36
|
+
var hooks_1 = require("../../../hooks");
|
|
37
|
+
var css_1 = require("../../../css");
|
|
38
|
+
var core_1 = require("@dnd-kit/core");
|
|
39
|
+
var utils_1 = require("../utils");
|
|
40
|
+
var DraggableMaterial_1 = require("../DraggableMaterial");
|
|
41
|
+
var utilities_1 = require("../../../utilities");
|
|
42
|
+
var useStocks_1 = require("../../../hooks/useStocks");
|
|
43
|
+
var SimpleDropArea = function (_a) {
|
|
44
|
+
var location = _a.location, legalMoves = _a.legalMoves, onShortClick = _a.onShortClick, onLongClick = _a.onLongClick, dragOnly = _a.dragOnly, props = __rest(_a, ["location", "legalMoves", "onShortClick", "onLongClick", "dragOnly"]);
|
|
45
|
+
var locator = (0, hooks_1.useItemLocator)(location.type);
|
|
46
|
+
var stocks = (0, useStocks_1.useStocks)();
|
|
47
|
+
var rules = (0, hooks_1.useRules)();
|
|
48
|
+
var play = (0, hooks_1.usePlay)();
|
|
49
|
+
var player = (0, hooks_1.usePlayerId)();
|
|
50
|
+
if (!onLongClick && legalMoves.length === 1) {
|
|
51
|
+
onLongClick = function () { return play(legalMoves[0], { delayed: rules === null || rules === void 0 ? void 0 : rules.isUnpredictableMove(legalMoves[0], player) }); };
|
|
52
|
+
}
|
|
53
|
+
if (!onShortClick && (locator === null || locator === void 0 ? void 0 : locator.getLocationRules)) {
|
|
54
|
+
onShortClick = function () { return play((0, rules_api_1.displayLocationRules)(location), { local: true }); };
|
|
55
|
+
if (!onLongClick) {
|
|
56
|
+
onLongClick = function () { return play((0, rules_api_1.displayLocationRules)(location), { local: true }); };
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
var _b = (0, core_1.useDroppable)({
|
|
60
|
+
id: JSON.stringify(location),
|
|
61
|
+
disabled: !legalMoves.length,
|
|
62
|
+
data: location
|
|
63
|
+
}), isOver = _b.isOver, active = _b.active, setNodeRef = _b.setNodeRef;
|
|
64
|
+
var draggedItem = (0, DraggableMaterial_1.isDraggedItem)(active === null || active === void 0 ? void 0 : active.data.current) ? active === null || active === void 0 ? void 0 : active.data.current : undefined;
|
|
65
|
+
var canDrop = draggedItem !== undefined && legalMoves.filter(function (move) {
|
|
66
|
+
return rules === null || rules === void 0 ? void 0 : rules.isMoveTrigger(move, function (move) {
|
|
67
|
+
return (0, utils_1.isMoveThisItemToLocation)(move, draggedItem.type, draggedItem.index, location, stocks);
|
|
68
|
+
});
|
|
69
|
+
}).length === 1;
|
|
70
|
+
var animations = (0, hooks_1.useAnimations)(function (animation) { return animation.action.playerId === player; });
|
|
71
|
+
var _c = (0, react_1.useState)(false), clicking = _c[0], setClicking = _c[1];
|
|
72
|
+
var listeners = (0, use_long_press_1.useLongPress)(function () { return onLongClick && onLongClick(); }, {
|
|
73
|
+
detect: use_long_press_1.LongPressEventType.Pointer,
|
|
74
|
+
cancelOnMovement: 5,
|
|
75
|
+
threshold: 600,
|
|
76
|
+
onStart: function (event) {
|
|
77
|
+
setClicking(true);
|
|
78
|
+
if (onShortClick || onLongClick) {
|
|
79
|
+
event.stopPropagation();
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
onFinish: function () { return setClicking(false); },
|
|
83
|
+
onCancel: function (_, _a) {
|
|
84
|
+
var reason = _a.reason;
|
|
85
|
+
setClicking(false);
|
|
86
|
+
if (onShortClick && reason === use_long_press_1.LongPressCallbackReason.CancelledByRelease) {
|
|
87
|
+
setTimeout(function () { return onShortClick && onShortClick(); });
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
filterEvents: function (event) { return !event.button; } // Ignore clicks on mouse buttons > 0
|
|
91
|
+
})();
|
|
92
|
+
if (!canDrop && dragOnly)
|
|
93
|
+
return null;
|
|
94
|
+
return (0, jsx_runtime_1.jsx)("div", __assign({ ref: setNodeRef, css: [
|
|
95
|
+
!draggedItem && (onShortClick || onLongClick) && hoverHighlight, clicking && clickingAnimation,
|
|
96
|
+
(canDrop || (!draggedItem && legalMoves.length > 0 && !animations.length)) && css_1.shineEffect,
|
|
97
|
+
canDrop && isOver && dropHighlight
|
|
98
|
+
] }, props, (0, utilities_1.combineEventListeners)(listeners, props)));
|
|
99
|
+
};
|
|
100
|
+
exports.SimpleDropArea = SimpleDropArea;
|
|
101
|
+
var hoverHighlight = (0, react_2.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n &:hover {\n background-color: rgba(255, 255, 255, 0.2);\n }\n"], ["\n &:hover {\n background-color: rgba(255, 255, 255, 0.2);\n }\n"])));
|
|
102
|
+
var clickingKeyframes = (0, react_2.keyframes)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n from {\n background-color: rgba(255, 255, 255, 0.2);\n }\n to {\n background-color: rgba(0, 255, 0, 0.5);\n }\n"], ["\n from {\n background-color: rgba(255, 255, 255, 0.2);\n }\n to {\n background-color: rgba(0, 255, 0, 0.5);\n }\n"])));
|
|
103
|
+
var longClickThreshold = 600;
|
|
104
|
+
var clickingAnimation = (0, react_2.css)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n animation: ", " ", "ms ease-in-out;\n"], ["\n animation: ", " ", "ms ease-in-out;\n"])), clickingKeyframes, longClickThreshold);
|
|
105
|
+
var dropHighlight = (0, react_2.css)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n background-color: rgba(0, 255, 0, 0.5);\n"], ["\n background-color: rgba(0, 255, 0, 0.5);\n"])));
|
|
106
|
+
var getMoveItemTypes = function (move, rules) {
|
|
107
|
+
switch (move.kind) {
|
|
108
|
+
case rules_api_1.MoveKind.ItemMove:
|
|
109
|
+
return move.type === rules_api_1.ItemMoveType.Move ? [move.itemType] : [];
|
|
110
|
+
case rules_api_1.MoveKind.CustomMove:
|
|
111
|
+
return rules.play(move).flatMap(function (move) { return getMoveItemTypes(move, rules); });
|
|
112
|
+
default:
|
|
113
|
+
return [];
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
function isDropLocation(data) {
|
|
117
|
+
return typeof (data === null || data === void 0 ? void 0 : data.type) === 'number';
|
|
118
|
+
}
|
|
119
|
+
exports.isDropLocation = isDropLocation;
|
|
120
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4;
|
|
121
|
+
//# sourceMappingURL=SimpleDropArea.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SimpleDropArea.js","sourceRoot":"","sources":["../../../../src/components/material/DropAreas/SimpleDropArea.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './SimpleDropArea';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./SimpleDropArea"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/material/DropAreas/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAgC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const GameMaterialDisplay: () => import("@emotion/react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
+
return cooked;
|
|
5
|
+
};
|
|
6
|
+
var __assign = (this && this.__assign) || function () {
|
|
7
|
+
__assign = Object.assign || function(t) {
|
|
8
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
9
|
+
s = arguments[i];
|
|
10
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
11
|
+
t[p] = s[p];
|
|
12
|
+
}
|
|
13
|
+
return t;
|
|
14
|
+
};
|
|
15
|
+
return __assign.apply(this, arguments);
|
|
16
|
+
};
|
|
17
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
18
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
19
|
+
if (ar || !(i in from)) {
|
|
20
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
21
|
+
ar[i] = from[i];
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
25
|
+
};
|
|
26
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
27
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
28
|
+
};
|
|
29
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
+
exports.GameMaterialDisplay = void 0;
|
|
31
|
+
var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
32
|
+
var react_1 = require("react");
|
|
33
|
+
var hooks_1 = require("../../../hooks");
|
|
34
|
+
var rules_api_1 = require("@gamepark/rules-api");
|
|
35
|
+
var pickBy_1 = __importDefault(require("lodash/pickBy"));
|
|
36
|
+
var utils_1 = require("../utils");
|
|
37
|
+
var MaterialComponent_1 = require("../MaterialComponent");
|
|
38
|
+
var css_1 = require("../../../css");
|
|
39
|
+
var DraggableMaterial_1 = require("../DraggableMaterial");
|
|
40
|
+
var dialogs_1 = require("../../dialogs");
|
|
41
|
+
var core_1 = require("@dnd-kit/core");
|
|
42
|
+
var react_2 = require("@emotion/react");
|
|
43
|
+
var GameProvider_1 = require("../../GameProvider");
|
|
44
|
+
var GameMaterialDisplay = function () {
|
|
45
|
+
var _a, _b;
|
|
46
|
+
var context = (0, react_1.useContext)(GameProvider_1.gameContext);
|
|
47
|
+
var material = (_a = context.material) !== null && _a !== void 0 ? _a : {};
|
|
48
|
+
var locators = (_b = context.locators) !== null && _b !== void 0 ? _b : {};
|
|
49
|
+
var player = (0, hooks_1.usePlayerId)();
|
|
50
|
+
var rules = (0, hooks_1.useRules)();
|
|
51
|
+
var legalMoves = (0, hooks_1.useLegalMoves)();
|
|
52
|
+
var play = (0, hooks_1.usePlay)();
|
|
53
|
+
var _c = (0, react_1.useState)(), draggedItem = _c[0], setDraggedItem = _c[1];
|
|
54
|
+
(0, core_1.useDndMonitor)({
|
|
55
|
+
onDragStart: function (event) { return (0, DraggableMaterial_1.isDraggedItem)(event.active.data.current) && setDraggedItem(event.active.data.current); },
|
|
56
|
+
onDragEnd: function () { return setDraggedItem(undefined); }
|
|
57
|
+
});
|
|
58
|
+
if (!rules)
|
|
59
|
+
return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {});
|
|
60
|
+
var game = rules === null || rules === void 0 ? void 0 : rules.game;
|
|
61
|
+
var commonContext = { game: game, player: player, material: material, locators: locators };
|
|
62
|
+
return (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [Object.entries(material).map(function (_a) {
|
|
63
|
+
var stringType = _a[0], description = _a[1];
|
|
64
|
+
if (!description.items)
|
|
65
|
+
return null;
|
|
66
|
+
var type = parseInt(stringType);
|
|
67
|
+
var innerLocators = (0, pickBy_1.default)(locators, function (locator) { return locator.parentItemType === type; });
|
|
68
|
+
var innerLocations = Object.keys(innerLocators).map(function (type) { return parseInt(type); });
|
|
69
|
+
return description.items(game, player).map(function (item) {
|
|
70
|
+
var _a;
|
|
71
|
+
var legalMovesTo = innerLocations.length > 0 ? legalMoves.filter(function (move) { return rules.isMoveTrigger(move, function (move) { return (0, utils_1.isMoveOnItem)(move, item.id, innerLocations); }); }) : undefined;
|
|
72
|
+
var locator = locators[item.location.type];
|
|
73
|
+
return __spreadArray([], Array((_a = item.quantity) !== null && _a !== void 0 ? _a : 1), true).map(function (_, index) {
|
|
74
|
+
var context = __assign(__assign({}, commonContext), { type: type, index: index });
|
|
75
|
+
return (0, jsx_runtime_1.jsx)(MaterialComponent_1.MaterialComponent, { type: type, itemId: item.id, withLocations: true, legalMovesTo: legalMovesTo, css: [css_1.pointerCursorCss, css_1.transformCss.apply(void 0, locator.transformItem(item, context))], onShortClick: function () { return play((0, rules_api_1.displayMaterialRules)(type, index, item), { local: true }); } }, "".concat(stringType, "_").concat(index));
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
}), rules && game && Object.entries(game.items).map(function (_a) {
|
|
79
|
+
var stringType = _a[0], items = _a[1];
|
|
80
|
+
if (!items)
|
|
81
|
+
return null;
|
|
82
|
+
var type = parseInt(stringType);
|
|
83
|
+
return items.map(function (item, index) {
|
|
84
|
+
var _a;
|
|
85
|
+
var locator = locators[item.location.type];
|
|
86
|
+
return __spreadArray([], Array((_a = item.quantity) !== null && _a !== void 0 ? _a : 1), true).map(function (_, displayIndex) {
|
|
87
|
+
var context = __assign(__assign({}, commonContext), { type: type, index: displayIndex });
|
|
88
|
+
if (locator.hide(item, context))
|
|
89
|
+
return null;
|
|
90
|
+
var itemMoves = legalMoves.filter(function (move) { return rules.isMoveTrigger(move, function (move) { return (0, utils_1.isMoveThisItem)(move, type, index); }); });
|
|
91
|
+
var draggingToSameLocation = !!draggedItem && legalMoves.some(function (move) {
|
|
92
|
+
return (0, utils_1.isMoveThisItemToLocation)(move, draggedItem.type, draggedItem.index, item.location);
|
|
93
|
+
});
|
|
94
|
+
return (0, jsx_runtime_1.jsx)(DraggableMaterial_1.DraggableMaterial, { type: type, item: item, index: index, displayIndex: displayIndex, withLocations: true, disabled: !itemMoves.length, postTransform: locator.transformItem(item, context).join(' '), css: draggingToSameLocation && noPointerEvents, onShortClick: function () { return play((0, rules_api_1.displayMaterialRules)(type, index, item), { local: true }); }, onLongClick: itemMoves.length === 1 ?
|
|
95
|
+
function () { return play(itemMoves[0], { delayed: rules.isUnpredictableMove(itemMoves[0], player) }); }
|
|
96
|
+
: undefined }, "".concat(type, "_").concat(index, "_").concat(displayIndex));
|
|
97
|
+
});
|
|
98
|
+
});
|
|
99
|
+
}), Object.entries(locators).map(function (_a) {
|
|
100
|
+
var locator = _a[1];
|
|
101
|
+
return locator.createLocations(legalMoves, rules, commonContext);
|
|
102
|
+
}), (0, jsx_runtime_1.jsx)(dialogs_1.MaterialRulesDialog, { open: !!(game === null || game === void 0 ? void 0 : game.rulesDisplay), close: function () { return play(rules_api_1.closeRulesDisplay, { local: true }); } })] });
|
|
103
|
+
};
|
|
104
|
+
exports.GameMaterialDisplay = GameMaterialDisplay;
|
|
105
|
+
var noPointerEvents = (0, react_2.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n pointer-events: none;\n"], ["\n pointer-events: none;\n"])));
|
|
106
|
+
var templateObject_1;
|
|
107
|
+
//# sourceMappingURL=GameMaterialDisplay.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GameMaterialDisplay.js","sourceRoot":"","sources":["../../../../src/components/material/GameTable/GameMaterialDisplay.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/** @jsxImportSource @emotion/react */
|
|
2
|
+
import { FC } from 'react';
|
|
3
|
+
export type GameTableProps = {
|
|
4
|
+
xMin: number;
|
|
5
|
+
xMax: number;
|
|
6
|
+
yMin: number;
|
|
7
|
+
yMax: number;
|
|
8
|
+
zoomMin?: number;
|
|
9
|
+
zoomMax?: number;
|
|
10
|
+
perspective?: number;
|
|
11
|
+
margin?: {
|
|
12
|
+
left: number;
|
|
13
|
+
top: number;
|
|
14
|
+
right: number;
|
|
15
|
+
bottom: number;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
export declare const GameTable: FC<GameTableProps>;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.GameTable = void 0;
|
|
15
|
+
var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
16
|
+
/** @jsxImportSource @emotion/react */
|
|
17
|
+
var react_1 = require("react");
|
|
18
|
+
var rules_api_1 = require("@gamepark/rules-api");
|
|
19
|
+
var react_zoom_pan_pinch_1 = require("react-zoom-pan-pinch");
|
|
20
|
+
var hooks_1 = require("../../../hooks");
|
|
21
|
+
var core_1 = require("@dnd-kit/core");
|
|
22
|
+
var modifiers_1 = require("@dnd-kit/modifiers");
|
|
23
|
+
var utils_1 = require("../utils");
|
|
24
|
+
var GameTableContent_1 = require("./GameTableContent");
|
|
25
|
+
var useStocks_1 = require("../../../hooks/useStocks");
|
|
26
|
+
var DraggableMaterial_1 = require("../DraggableMaterial");
|
|
27
|
+
var DropAreas_1 = require("../DropAreas");
|
|
28
|
+
var wheel = { step: 0.05 };
|
|
29
|
+
var doubleClick = { disabled: true };
|
|
30
|
+
var GameTable = function (props) {
|
|
31
|
+
var _a = props.zoomMin, zoomMin = _a === void 0 ? 1 : _a, _b = props.zoomMax, zoomMax = _b === void 0 ? 1 : _b;
|
|
32
|
+
var _c = (0, react_1.useState)(false), dragging = _c[0], setDragging = _c[1];
|
|
33
|
+
var play = (0, hooks_1.usePlay)();
|
|
34
|
+
var playerId = (0, hooks_1.usePlayerId)();
|
|
35
|
+
var rules = (0, hooks_1.useRules)();
|
|
36
|
+
var legalMoves = (0, hooks_1.useLegalMoves)();
|
|
37
|
+
var stocks = (0, useStocks_1.useStocks)();
|
|
38
|
+
var onDragEnd = (0, react_1.useCallback)(function (event) {
|
|
39
|
+
setDragging(false);
|
|
40
|
+
if (event.over && (0, DraggableMaterial_1.isDraggedItem)(event.active.data.current) && (0, DropAreas_1.isDropLocation)(event.over.data.current)) {
|
|
41
|
+
var _a = event.active.data.current, type_1 = _a.type, index_1 = _a.index, displayIndex = _a.displayIndex;
|
|
42
|
+
var location_1 = event.over.data.current;
|
|
43
|
+
var moves = legalMoves.filter(function (move) { return rules.isMoveTrigger(move, function (move) { return (0, utils_1.isMoveThisItemToLocation)(move, type_1, index_1, location_1, stocks); }); });
|
|
44
|
+
if (moves.length === 1) {
|
|
45
|
+
play((0, rules_api_1.dropItemMove)(type_1, index_1, displayIndex), { local: true });
|
|
46
|
+
play(moves[0], { delayed: rules.isUnpredictableMove(moves[0], playerId) });
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}, [play, rules, legalMoves]);
|
|
50
|
+
return ((0, jsx_runtime_1.jsx)(core_1.DndContext, __assign({ measuring: { draggable: { measure: core_1.getClientRect }, droppable: { measure: core_1.getClientRect } }, modifiers: [modifiers_1.snapCenterToCursor], onDragStart: function () { return setDragging(true); }, onDragEnd: onDragEnd, onDragCancel: function () { return setDragging(false); } }, { children: (0, jsx_runtime_1.jsx)(react_zoom_pan_pinch_1.TransformWrapper, __assign({ minScale: zoomMin / zoomMax, maxScale: 1, initialScale: zoomMin / zoomMax, centerOnInit: true, wheel: wheel, panning: { disabled: dragging }, disablePadding: true, doubleClick: doubleClick }, { children: (0, jsx_runtime_1.jsx)(GameTableContent_1.GameTableContent, __assign({}, props)) })) })));
|
|
51
|
+
};
|
|
52
|
+
exports.GameTable = GameTable;
|
|
53
|
+
//# sourceMappingURL=GameTable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GameTable.js","sourceRoot":"","sources":["../../../../src/components/material/GameTable/GameTable.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/** @jsxImportSource @emotion/react */
|
|
2
|
+
import { FC } from 'react';
|
|
3
|
+
export type GameTableContentProps = {
|
|
4
|
+
xMin: number;
|
|
5
|
+
xMax: number;
|
|
6
|
+
yMin: number;
|
|
7
|
+
yMax: number;
|
|
8
|
+
zoomMin?: number;
|
|
9
|
+
zoomMax?: number;
|
|
10
|
+
perspective?: number;
|
|
11
|
+
margin?: {
|
|
12
|
+
left: number;
|
|
13
|
+
top: number;
|
|
14
|
+
right: number;
|
|
15
|
+
bottom: number;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
export declare const GameTableContent: FC<GameTableContentProps>;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
+
return cooked;
|
|
5
|
+
};
|
|
6
|
+
var __assign = (this && this.__assign) || function () {
|
|
7
|
+
__assign = Object.assign || function(t) {
|
|
8
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
9
|
+
s = arguments[i];
|
|
10
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
11
|
+
t[p] = s[p];
|
|
12
|
+
}
|
|
13
|
+
return t;
|
|
14
|
+
};
|
|
15
|
+
return __assign.apply(this, arguments);
|
|
16
|
+
};
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.GameTableContent = void 0;
|
|
19
|
+
var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
20
|
+
/** @jsxImportSource @emotion/react */
|
|
21
|
+
var react_1 = require("react");
|
|
22
|
+
var react_2 = require("@emotion/react");
|
|
23
|
+
var react_zoom_pan_pinch_1 = require("react-zoom-pan-pinch");
|
|
24
|
+
var css_1 = require("../../../css");
|
|
25
|
+
var GameMaterialDisplay_1 = require("./GameMaterialDisplay");
|
|
26
|
+
var GameTableContent = function (props) {
|
|
27
|
+
var perspective = props.perspective, xMin = props.xMin, xMax = props.xMax, yMin = props.yMin, yMax = props.yMax, _a = props.zoomMax, zoomMax = _a === void 0 ? 1 : _a, _b = props.margin, margin = _b === void 0 ? { left: 0, right: 0, top: 7, bottom: 0 } : _b;
|
|
28
|
+
var centerView = (0, react_zoom_pan_pinch_1.useControls)().centerView;
|
|
29
|
+
(0, react_1.useEffect)(function () {
|
|
30
|
+
var handler = function () { return centerView(); };
|
|
31
|
+
window.addEventListener('resize', handler);
|
|
32
|
+
return function () {
|
|
33
|
+
window.removeEventListener('resize', handler);
|
|
34
|
+
};
|
|
35
|
+
}, []);
|
|
36
|
+
return ((0, jsx_runtime_1.jsx)(react_zoom_pan_pinch_1.TransformComponent, __assign({ wrapperStyle: {
|
|
37
|
+
position: 'absolute',
|
|
38
|
+
margin: "".concat(margin.top, "em ").concat(margin.right, "em ").concat(margin.bottom, "em ").concat(margin.left, "em"),
|
|
39
|
+
transformStyle: 'preserve-3d',
|
|
40
|
+
height: "calc(100% - ".concat(margin.top + margin.bottom, "em)"),
|
|
41
|
+
width: "calc(100% - ".concat(margin.left + margin.right, "em)"),
|
|
42
|
+
overflow: 'visible'
|
|
43
|
+
} }, { children: (0, jsx_runtime_1.jsx)("div", __assign({ css: [tableCss(xMin, xMax, yMin, yMax), (0, css_1.fontSizeCss)(zoomMax), perspective && (0, css_1.perspectiveCss)(perspective)] }, { children: (0, jsx_runtime_1.jsx)(GameMaterialDisplay_1.GameMaterialDisplay, {}) })) })));
|
|
44
|
+
};
|
|
45
|
+
exports.GameTableContent = GameTableContent;
|
|
46
|
+
var tableCss = function (xMin, xMax, yMin, yMax) { return (0, react_2.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n transform-style: preserve-3d;\n width: ", "em;\n height: ", "em;\n\n > * {\n position: absolute;\n top: ", "em;\n left: ", "em;\n transform-style: preserve-3d;\n }\n"], ["\n transform-style: preserve-3d;\n width: ", "em;\n height: ", "em;\n\n > * {\n position: absolute;\n top: ", "em;\n left: ", "em;\n transform-style: preserve-3d;\n }\n"])), xMax - xMin, yMax - yMin, -yMin, -xMin); };
|
|
47
|
+
var templateObject_1;
|
|
48
|
+
//# sourceMappingURL=GameTableContent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GameTableContent.js","sourceRoot":"","sources":["../../../../src/components/material/GameTable/GameTableContent.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,+BAAqC;AACrC,wCAAoC;AACpC,6DAAsE;AACtE,oCAA0D;AAC1D,6DAA2D;AAapD,IAAM,gBAAgB,GAA8B,UAAC,KAAK;IACvD,IAAA,WAAW,GAA6F,KAAK,YAAlG,EAAE,IAAI,GAAuF,KAAK,KAA5F,EAAE,IAAI,GAAiF,KAAK,KAAtF,EAAE,IAAI,GAA2E,KAAK,KAAhF,EAAE,IAAI,GAAqE,KAAK,KAA1E,EAAE,KAAmE,KAAK,QAA7D,EAAX,OAAO,mBAAG,CAAC,KAAA,EAAE,KAAsD,KAAK,OAAV,EAAjD,MAAM,mBAAG,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAA,CAAU;IAE7G,IAAA,UAAU,GAAK,IAAA,kCAAW,GAAE,WAAlB,CAAkB;IACpC,IAAA,iBAAS,EAAC;QACR,IAAM,OAAO,GAAG,cAAM,OAAA,UAAU,EAAE,EAAZ,CAAY,CAAA;QAClC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAC1C,OAAO;YACL,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAC/C,CAAC,CAAA;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,OAAO,CACL,uBAAC,yCAAkB,aAAC,YAAY,EAAE;YAChC,QAAQ,EAAE,UAAU;YACpB,MAAM,EAAE,UAAG,MAAM,CAAC,GAAG,gBAAM,MAAM,CAAC,KAAK,gBAAM,MAAM,CAAC,MAAM,gBAAM,MAAM,CAAC,IAAI,OAAI;YAC/E,cAAc,EAAE,aAAa;YAC7B,MAAM,EAAE,sBAAe,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,QAAK;YACtD,KAAK,EAAE,sBAAe,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,KAAK,QAAK;YACrD,QAAQ,EAAE,SAAS;SACpB,gBACC,yCAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,IAAA,iBAAW,EAAC,OAAO,CAAC,EAAE,WAAW,IAAI,IAAA,oBAAc,EAAC,WAAW,CAAC,CAAC,gBAC5G,uBAAC,yCAAmB,KAAE,IAClB,IACa,CACtB,CAAA;AACH,CAAC,CAAA;AA1BY,QAAA,gBAAgB,oBA0B5B;AAED,IAAM,QAAQ,GAAG,UAAC,IAAY,EAAE,IAAY,EAAE,IAAY,EAAE,IAAY,IAAK,WAAA,WAAG,+PAAA,8CAErE,EAAW,iBACV,EAAW,oDAIZ,EAAK,iBACJ,EAAK,+CAGhB,KATU,IAAI,GAAG,IAAI,EACV,IAAI,GAAG,IAAI,EAIZ,CAAC,IAAI,EACJ,CAAC,IAAI,GAR4D,CAW5E,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './GameTable';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./GameTable"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/material/GameTable/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA2B"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export type ItemCustomization<Props, ItemId extends number = number> = {
|
|
2
|
+
[Property in keyof Props]: Props[Property] extends object | undefined ? ItemCustomization<Props[Property], ItemId> : ItemProp<Props[Property], ItemId>;
|
|
3
|
+
};
|
|
4
|
+
export type ItemProp<T, ItemId extends number = number> = T | Record<ItemId, T> | ((id?: ItemId) => T);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Items.js","sourceRoot":"","sources":["../../../src/components/material/Items.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Animation, AnimationContext, Animations } from '@gamepark/react-client';
|
|
2
|
+
import { CreateItem, DeleteItem, DisplayedItem, ItemMove, MaterialGame, MaterialMove, MaterialRules, MoveItem } from '@gamepark/rules-api';
|
|
3
|
+
import { Interpolation, Theme } from '@emotion/react';
|
|
4
|
+
import { ItemLocator } from '../../locators';
|
|
5
|
+
import { MaterialDescription } from './MaterialDescription';
|
|
6
|
+
export declare class MaterialAnimations<P extends number = number, M extends number = number, L extends number = number> extends Animations<MaterialGame<P, M, L>, ItemMove<P, M, L>, P> {
|
|
7
|
+
getPreDuration(move: ItemMove<P, M, L>, context: AnimationContext<MaterialGame<P, M, L>, MaterialMove<P, M, L>, P>): number;
|
|
8
|
+
getPostDuration(move: ItemMove<P, M, L>, context: AnimationContext<MaterialGame<P, M, L>, MaterialMove<P, M, L>, P>): number;
|
|
9
|
+
moveDuration(_move: ItemMove<P, M, L>, _context: AnimationContext<MaterialGame<P, M, L>, MaterialMove<P, M, L>, P>): number;
|
|
10
|
+
getItemAnimation(item: DisplayedItem<M>, animation: Animation<ItemMove<P, M, L>>, context: ItemAnimationContext<P, M, L>): Interpolation<Theme>;
|
|
11
|
+
protected getCreateItemAnimation(item: DisplayedItem<M>, animation: Animation<CreateItem<P, M, L>>, context: ItemAnimationContext<P, M, L>): Interpolation<Theme>;
|
|
12
|
+
protected fadein(duration: number): import("@emotion/utils").SerializedStyles;
|
|
13
|
+
protected getStockLocation(itemType: M, { rules, ...context }: ItemAnimationContext<P, M, L>): string;
|
|
14
|
+
protected getKeyframesFromOrigin(origin: string, _item: DisplayedItem<M>, _animation: Animation<ItemMove<P, M, L>>, _context: ItemAnimationContext<P, M, L>): import("@emotion/serialize").Keyframes;
|
|
15
|
+
protected getMoveItemAnimation(item: DisplayedItem<M>, animation: Animation<MoveItem<P, M, L>>, context: ItemAnimationContext<P, M, L>): Interpolation<Theme>;
|
|
16
|
+
private closestItemRotation;
|
|
17
|
+
private transformItem;
|
|
18
|
+
private closestRotation;
|
|
19
|
+
private getRotation;
|
|
20
|
+
protected getKeyframesToDestination(destination: string, _item: DisplayedItem<M>, _animation: Animation<ItemMove<P, M, L>>, _context: ItemAnimationContext<P, M, L>): import("@emotion/serialize").Keyframes;
|
|
21
|
+
protected getDeleteItemAnimation(item: DisplayedItem<M>, animation: Animation<DeleteItem<M>>, context: ItemAnimationContext<P, M, L>): Interpolation<Theme>;
|
|
22
|
+
}
|
|
23
|
+
export type ItemAnimationContext<P extends number = number, M extends number = number, L extends number = number> = {
|
|
24
|
+
material: Record<M, MaterialDescription<P, M, L>>;
|
|
25
|
+
locators: Record<L, ItemLocator<P, M, L>>;
|
|
26
|
+
rules: MaterialRules<P, M, L>;
|
|
27
|
+
player?: P;
|
|
28
|
+
};
|