@gamepark/react-game 6.16.0 → 6.17.2
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/GameProvider/GameContext.d.ts +2 -0
- package/dist/components/GameProvider/GameContext.js.map +1 -1
- package/dist/components/GameProvider/GameProvider.js +5 -3
- package/dist/components/GameProvider/GameProvider.js.map +1 -1
- package/dist/components/JournalTabs/Chat/Chat.d.ts +7 -0
- package/dist/components/JournalTabs/Chat/Chat.js +37 -0
- package/dist/components/JournalTabs/Chat/Chat.js.map +1 -0
- package/dist/components/JournalTabs/Chat/ChatMessage.d.ts +7 -0
- package/dist/components/JournalTabs/Chat/ChatMessage.js +29 -0
- package/dist/components/JournalTabs/Chat/ChatMessage.js.map +1 -0
- package/dist/components/JournalTabs/Chat/ChatMessageAuthor.d.ts +3 -0
- package/dist/components/JournalTabs/Chat/ChatMessageAuthor.js +37 -0
- package/dist/components/JournalTabs/Chat/ChatMessageAuthor.js.map +1 -0
- package/dist/components/JournalTabs/Chat/ChatTextInput.d.ts +19 -0
- package/dist/components/JournalTabs/Chat/ChatTextInput.js +71 -0
- package/dist/components/JournalTabs/Chat/ChatTextInput.js.map +1 -0
- package/dist/components/JournalTabs/Chat/CommonChat.d.ts +12 -0
- package/dist/components/JournalTabs/Chat/CommonChat.js +58 -0
- package/dist/components/JournalTabs/Chat/CommonChat.js.map +1 -0
- package/dist/components/JournalTabs/Chat/LocalChat.d.ts +6 -0
- package/dist/components/JournalTabs/Chat/LocalChat.js +49 -0
- package/dist/components/JournalTabs/Chat/LocalChat.js.map +1 -0
- package/dist/components/JournalTabs/Chat/RemoteChat.d.ts +7 -0
- package/dist/components/JournalTabs/Chat/RemoteChat.js +46 -0
- package/dist/components/JournalTabs/Chat/RemoteChat.js.map +1 -0
- package/dist/components/JournalTabs/Chat/SignInToChat.d.ts +1 -0
- package/dist/components/JournalTabs/Chat/SignInToChat.js +35 -0
- package/dist/components/JournalTabs/Chat/SignInToChat.js.map +1 -0
- package/dist/components/JournalTabs/Chat/index.d.ts +5 -0
- package/dist/components/JournalTabs/Chat/index.js +22 -0
- package/dist/components/JournalTabs/Chat/index.js.map +1 -0
- package/dist/components/JournalTabs/History/ActionHistoryEntry.d.ts +12 -0
- package/dist/components/JournalTabs/History/ActionHistoryEntry.js +62 -0
- package/dist/components/JournalTabs/History/ActionHistoryEntry.js.map +1 -0
- package/dist/components/JournalTabs/History/History.d.ts +6 -0
- package/dist/components/JournalTabs/History/History.js +54 -0
- package/dist/components/JournalTabs/History/History.js.map +1 -0
- package/dist/components/JournalTabs/History/HistoryEntry.d.ts +11 -0
- package/dist/components/JournalTabs/History/HistoryEntry.js +42 -0
- package/dist/components/JournalTabs/History/HistoryEntry.js.map +1 -0
- package/dist/components/JournalTabs/History/MaterialHistory.d.ts +11 -0
- package/dist/components/JournalTabs/History/MaterialHistory.js +3 -0
- package/dist/components/JournalTabs/History/MaterialHistory.js.map +1 -0
- package/dist/components/JournalTabs/History/PlayerActionHistory.d.ts +8 -0
- package/dist/components/JournalTabs/History/PlayerActionHistory.js +42 -0
- package/dist/components/JournalTabs/History/PlayerActionHistory.js.map +1 -0
- package/dist/components/JournalTabs/History/PlayerHistoryEntry.d.ts +8 -0
- package/dist/components/JournalTabs/History/PlayerHistoryEntry.js +44 -0
- package/dist/components/JournalTabs/History/PlayerHistoryEntry.js.map +1 -0
- package/dist/components/JournalTabs/History/StartHistory.d.ts +2 -0
- package/dist/components/JournalTabs/History/StartHistory.js +30 -0
- package/dist/components/JournalTabs/History/StartHistory.js.map +1 -0
- package/dist/components/JournalTabs/History/index.d.ts +5 -0
- package/dist/components/JournalTabs/History/index.js +22 -0
- package/dist/components/JournalTabs/History/index.js.map +1 -0
- package/dist/components/JournalTabs/JournalTabs.d.ts +5 -0
- package/dist/components/JournalTabs/JournalTabs.js +74 -0
- package/dist/components/JournalTabs/JournalTabs.js.map +1 -0
- package/dist/components/JournalTabs/index.d.ts +1 -0
- package/dist/components/JournalTabs/index.js +18 -0
- package/dist/components/JournalTabs/index.js.map +1 -0
- package/dist/components/Picture/Picture.js +1 -0
- package/dist/components/Picture/Picture.js.map +1 -1
- package/dist/components/PlayerPanel/PlayerPanel.d.ts +4 -3
- package/dist/components/PlayerPanel/PlayerPanel.js +16 -10
- package/dist/components/PlayerPanel/PlayerPanel.js.map +1 -1
- package/dist/components/buttons/PlayMoveButton/PlayMoveButton.js +21 -23
- package/dist/components/buttons/PlayMoveButton/PlayMoveButton.js.map +1 -1
- package/dist/components/dialogs/FailuresDialog.js +3 -3
- package/dist/components/dialogs/FailuresDialog.js.map +1 -1
- package/dist/components/dialogs/ResultDialog/ResultDialog.js +9 -6
- package/dist/components/dialogs/ResultDialog/ResultDialog.js.map +1 -1
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialogContent.js +5 -5
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialogContent.js.map +1 -1
- package/dist/components/dialogs/RulesDialog/RulesDialog.d.ts +1 -1
- package/dist/components/dialogs/RulesDialog/RulesDialog.js +1 -1
- package/dist/components/dialogs/RulesDialog/RulesDialog.js.map +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.js +1 -0
- package/dist/components/index.js.map +1 -1
- package/dist/components/material/Dices/CubicDiceDescription.d.ts +5 -4
- package/dist/components/material/Dices/CubicDiceDescription.js +5 -5
- package/dist/components/material/Dices/CubicDiceDescription.js.map +1 -1
- package/dist/components/material/DraggableMaterial.d.ts +2 -0
- package/dist/components/material/DraggableMaterial.js +65 -33
- package/dist/components/material/DraggableMaterial.js.map +1 -1
- package/dist/components/material/FlatMaterial/FlatMaterial.d.ts +10 -10
- package/dist/components/material/FlatMaterial/FlatMaterial.js +19 -19
- package/dist/components/material/FlatMaterial/FlatMaterial.js.map +1 -1
- package/dist/components/material/GameTable/DraggableStockItem.d.ts +4 -0
- package/dist/components/material/GameTable/DraggableStockItem.js +82 -0
- package/dist/components/material/GameTable/DraggableStockItem.js.map +1 -0
- package/dist/components/material/GameTable/DynamicItemsDisplay.d.ts +4 -0
- package/dist/components/material/GameTable/DynamicItemsDisplay.js +72 -0
- package/dist/components/material/GameTable/DynamicItemsDisplay.js.map +1 -0
- package/dist/components/material/GameTable/FocusableElement.d.ts +13 -0
- package/dist/components/material/GameTable/FocusableElement.js +63 -0
- package/dist/components/material/GameTable/FocusableElement.js.map +1 -0
- package/dist/components/material/GameTable/FocusableLocation.d.ts +8 -0
- package/dist/components/material/GameTable/FocusableLocation.js +37 -0
- package/dist/components/material/GameTable/FocusableLocation.js.map +1 -0
- package/dist/components/material/GameTable/FocusableLocations.d.ts +0 -0
- package/dist/components/material/GameTable/FocusableLocations.js +2 -0
- package/dist/components/material/GameTable/FocusableLocations.js.map +1 -0
- package/dist/components/material/GameTable/GameMaterialDisplay.d.ts +7 -1
- package/dist/components/material/GameTable/GameMaterialDisplay.js +16 -133
- package/dist/components/material/GameTable/GameMaterialDisplay.js.map +1 -1
- package/dist/components/material/GameTable/GameTable.d.ts +2 -0
- package/dist/components/material/GameTable/GameTable.js +7 -6
- package/dist/components/material/GameTable/GameTable.js.map +1 -1
- package/dist/components/material/GameTable/GameTableNavigation.d.ts +5 -1
- package/dist/components/material/GameTable/GameTableNavigation.js +18 -6
- package/dist/components/material/GameTable/GameTableNavigation.js.map +1 -1
- package/dist/components/material/GameTable/ItemDisplay.d.ts +15 -0
- package/dist/components/material/GameTable/ItemDisplay.js +51 -0
- package/dist/components/material/GameTable/ItemDisplay.js.map +1 -0
- package/dist/components/material/GameTable/StaticItemsDisplay.d.ts +4 -0
- package/dist/components/material/GameTable/StaticItemsDisplay.js +67 -0
- package/dist/components/material/GameTable/StaticItemsDisplay.js.map +1 -0
- package/dist/components/material/GameTable/StaticLocationsDisplay.d.ts +4 -0
- package/dist/components/material/GameTable/StaticLocationsDisplay.js +35 -0
- package/dist/components/material/GameTable/StaticLocationsDisplay.js.map +1 -0
- package/dist/components/material/GameTable/focus/FocusProvider.d.ts +10 -0
- package/dist/components/material/GameTable/focus/FocusProvider.js +78 -0
- package/dist/components/material/GameTable/focus/FocusProvider.js.map +1 -0
- package/dist/components/material/GameTable/focus/FocusableElement.d.ts +13 -0
- package/dist/components/material/GameTable/focus/FocusableElement.js +63 -0
- package/dist/components/material/GameTable/focus/FocusableElement.js.map +1 -0
- package/dist/components/material/GameTable/focus/FocusableLocation.d.ts +8 -0
- package/dist/components/material/GameTable/focus/FocusableLocation.js +38 -0
- package/dist/components/material/GameTable/focus/FocusableLocation.js.map +1 -0
- package/dist/components/material/GameTable/focus/LocationsWithFocus.d.ts +8 -0
- package/dist/components/material/GameTable/focus/LocationsWithFocus.js +30 -0
- package/dist/components/material/GameTable/focus/LocationsWithFocus.js.map +1 -0
- package/dist/components/material/GameTable/focus/MaterialFocus.d.ts +20 -0
- package/dist/components/material/GameTable/focus/MaterialFocus.js +3 -0
- package/dist/components/material/GameTable/focus/MaterialFocus.js.map +1 -0
- package/dist/components/material/GameTable/focus/index.d.ts +3 -0
- package/dist/components/material/GameTable/focus/index.js +20 -0
- package/dist/components/material/GameTable/focus/index.js.map +1 -0
- package/dist/components/material/GameTable/index.d.ts +1 -0
- package/dist/components/material/GameTable/index.js +1 -0
- package/dist/components/material/GameTable/index.js.map +1 -1
- package/dist/components/material/GameTable/locations.utils.d.ts +0 -0
- package/dist/components/material/GameTable/locations.utils.js +2 -0
- package/dist/components/material/GameTable/locations.utils.js.map +1 -0
- package/dist/components/material/MaterialComponent.d.ts +2 -2
- package/dist/components/material/MaterialComponent.js +7 -7
- package/dist/components/material/MaterialComponent.js.map +1 -1
- package/dist/components/material/MaterialDescription.d.ts +10 -9
- package/dist/components/material/MaterialDescription.js +11 -38
- package/dist/components/material/MaterialDescription.js.map +1 -1
- package/dist/components/material/MobileMaterialDescription.d.ts +9 -0
- package/dist/components/material/MobileMaterialDescription.js +68 -0
- package/dist/components/material/MobileMaterialDescription.js.map +1 -0
- package/dist/components/material/Writing/WritingDescription.d.ts +5 -5
- package/dist/components/material/Writing/WritingDescription.js +15 -15
- package/dist/components/material/Writing/WritingDescription.js.map +1 -1
- package/dist/components/material/animations/CreateItemAnimations.d.ts +2 -1
- package/dist/components/material/animations/CreateItemAnimations.js +10 -3
- package/dist/components/material/animations/CreateItemAnimations.js.map +1 -1
- package/dist/components/material/animations/MaterialGameAnimations.d.ts +1 -1
- package/dist/components/material/animations/MaterialGameAnimations.js +1 -1
- package/dist/components/material/animations/MaterialGameAnimations.js.map +1 -1
- package/dist/components/material/animations/MoveItemAnimations.js +1 -1
- package/dist/components/material/animations/MoveItemAnimations.js.map +1 -1
- package/dist/components/material/index.d.ts +1 -0
- package/dist/components/material/index.js +1 -0
- package/dist/components/material/index.js.map +1 -1
- package/dist/components/material/locations/LocationDescription.d.ts +1 -2
- package/dist/components/material/locations/LocationDescription.js +1 -4
- package/dist/components/material/locations/LocationDescription.js.map +1 -1
- package/dist/components/material/locations/LocationsMask.d.ts +1 -1
- package/dist/components/material/locations/LocationsMask.js +1 -3
- package/dist/components/material/locations/LocationsMask.js.map +1 -1
- package/dist/components/material/locations/SimpleDropArea.js +65 -34
- package/dist/components/material/locations/SimpleDropArea.js.map +1 -1
- package/dist/components/material/utils/useIsAnimatingPlayerAction.js +8 -3
- package/dist/components/material/utils/useIsAnimatingPlayerAction.js.map +1 -1
- package/dist/components/menus/EjectPlayer/EjectPlayerButton.js +2 -2
- package/dist/components/menus/EjectPlayer/EjectPlayerButton.js.map +1 -1
- package/dist/components/menus/EjectPlayer/EjectPlayerDialog.js +2 -2
- package/dist/components/menus/EjectPlayer/EjectPlayerDialog.js.map +1 -1
- package/dist/components/menus/EjectPlayer/EjectPlayerPopButton.js +2 -2
- package/dist/components/menus/EjectPlayer/EjectPlayerPopButton.js.map +1 -1
- package/dist/components/menus/Fullscreen/FullscreenButton.js +3 -2
- package/dist/components/menus/Fullscreen/FullscreenButton.js.map +1 -1
- package/dist/components/menus/Fullscreen/FullscreenDialog.js +2 -2
- package/dist/components/menus/Fullscreen/FullscreenDialog.js.map +1 -1
- package/dist/components/menus/Fullscreen/FullscreenPopButton.js +3 -2
- package/dist/components/menus/Fullscreen/FullscreenPopButton.js.map +1 -1
- package/dist/components/menus/Menu/Menu.js +19 -19
- package/dist/components/menus/Menu/Menu.js.map +1 -1
- package/dist/components/menus/RestartTutorialButton/RestartTutorialButton.js +2 -2
- package/dist/components/menus/RestartTutorialButton/RestartTutorialButton.js.map +1 -1
- package/dist/components/menus/SoundButton/SoundButton.js +3 -2
- package/dist/components/menus/SoundButton/SoundButton.js.map +1 -1
- package/dist/components/menus/TimeStatsButton/TimeStatsButton.js +2 -2
- package/dist/components/menus/TimeStatsButton/TimeStatsButton.js.map +1 -1
- package/dist/components/menus/UndoButton/UndoButton.js +2 -2
- package/dist/components/menus/UndoButton/UndoButton.js.map +1 -1
- package/dist/components/menus/UndoButton/UndoPopButton.js +2 -2
- package/dist/components/menus/UndoButton/UndoPopButton.js.map +1 -1
- package/dist/components/tutorial/FocusableElement.d.ts +0 -0
- package/dist/components/tutorial/FocusableElement.js +2 -0
- package/dist/components/tutorial/FocusableElement.js.map +1 -0
- package/dist/components/tutorial/MaterialTutorial.d.ts +4 -14
- package/dist/components/tutorial/MaterialTutorial.js +1 -60
- package/dist/components/tutorial/MaterialTutorial.js.map +1 -1
- package/dist/components/tutorial/MaterialTutorialDisplay.js +39 -24
- package/dist/components/tutorial/MaterialTutorialDisplay.js.map +1 -1
- package/dist/components/tutorial/TutorialRulesWrapper.js +25 -5
- package/dist/components/tutorial/TutorialRulesWrapper.js.map +1 -1
- package/dist/css/GameTheme.d.ts +4 -0
- package/dist/css/GameTheme.js +3 -0
- package/dist/css/GameTheme.js.map +1 -1
- package/dist/hooks/useHistory.d.ts +6 -0
- package/dist/hooks/useHistory.js +82 -0
- package/dist/hooks/useHistory.js.map +1 -0
- package/dist/hooks/useLegalMoves.js +5 -3
- package/dist/hooks/useLegalMoves.js.map +1 -1
- package/dist/hooks/useRankedPlayers.js.map +1 -1
- package/dist/hooks/useZoomToElements.d.ts +9 -1
- package/dist/hooks/useZoomToElements.js +20 -17
- package/dist/hooks/useZoomToElements.js.map +1 -1
- package/dist/locators/ItemLocator.d.ts +1 -1
- package/dist/locators/ItemLocator.js +3 -3
- package/dist/locators/ItemLocator.js.map +1 -1
- package/dist/utilities/findIfUnique.util.d.ts +1 -0
- package/dist/utilities/findIfUnique.util.js +17 -0
- package/dist/utilities/findIfUnique.util.js.map +1 -0
- package/dist/utilities/index.d.ts +1 -0
- package/dist/utilities/index.js +1 -0
- package/dist/utilities/index.js.map +1 -1
- package/package.json +3 -3
|
@@ -2,6 +2,7 @@ import { Animations, TutorialDescription } from '@gamepark/react-client';
|
|
|
2
2
|
import { RulesCreator } from '@gamepark/rules-api';
|
|
3
3
|
import React, { ComponentType } from 'react';
|
|
4
4
|
import { ItemLocatorRecord } from '../../locators';
|
|
5
|
+
import { MaterialHistoryProps } from '../JournalTabs/History/MaterialHistory';
|
|
5
6
|
import { MaterialDescriptionRecord } from '../material';
|
|
6
7
|
export type GameContext<Game = any, Move = any, PlayerId extends number = number, MaterialType extends number = number, LocationType extends number = number> = {
|
|
7
8
|
game: string;
|
|
@@ -15,6 +16,7 @@ export type GameContext<Game = any, Move = any, PlayerId extends number = number
|
|
|
15
16
|
optionsSpec?: any;
|
|
16
17
|
animations?: Animations<Game, Move, PlayerId>;
|
|
17
18
|
tutorial?: TutorialDescription<Game, Move, PlayerId>;
|
|
19
|
+
MaterialHistory?: ComponentType<MaterialHistoryProps<Game, Move, PlayerId>>;
|
|
18
20
|
hasSounds?: boolean;
|
|
19
21
|
};
|
|
20
22
|
export type MaterialGameContext<Game = any, Move = any, PlayerId extends number = number, MaterialType extends number = number, LocationType extends number = number> = GameContext<Game, Move, PlayerId, MaterialType, LocationType> & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GameContext.js","sourceRoot":"","sources":["../../../src/components/GameProvider/GameContext.ts"],"names":[],"mappings":";;;;;;AAEA,gDAA4C;
|
|
1
|
+
{"version":3,"file":"GameContext.js","sourceRoot":"","sources":["../../../src/components/GameProvider/GameContext.ts"],"names":[],"mappings":";;;;;;AAEA,gDAA4C;AAyB5C;IACE;QACE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;IACxC,CAAC;IACH,mBAAC;AAAD,CAAC,AAJD,IAIC;AAGD,IAAM,cAAc,GAAgB,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAA;AAExD,QAAA,WAAW,GAAG,eAAK,CAAC,aAAa,CAAc,cAAc,CAAC,CAAA;AAE3E,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE;IACzC,mBAAW,CAAC,WAAW,GAAG,aAAa,CAAA;CACxC"}
|
|
@@ -60,9 +60,11 @@ var gameId = query.get('game');
|
|
|
60
60
|
var locale = query.get('locale') || 'en';
|
|
61
61
|
var GameProvider = function (_a) {
|
|
62
62
|
var materialI18n = _a.materialI18n, _b = _a.theme, theme = _b === void 0 ? {} : _b, children = _a.children, props = __rest(_a, ["materialI18n", "theme", "children"]);
|
|
63
|
-
|
|
64
|
-
(0,
|
|
65
|
-
|
|
63
|
+
(0, react_2.useEffect)(function () {
|
|
64
|
+
if ((0, tutorial_1.isMaterialTutorial)(props.tutorial)) {
|
|
65
|
+
(0, TutorialRulesWrapper_1.wrapRulesWithTutorial)(props.tutorial, props.Rules);
|
|
66
|
+
}
|
|
67
|
+
}, [props.tutorial, props.Rules]);
|
|
66
68
|
var webP = (0, hooks_1.useWebP)();
|
|
67
69
|
var emotionCache = (0, react_2.useMemo)(function () { return (0, cache_1.default)({
|
|
68
70
|
key: 'css', stylisPlugins: (webP ? [webPReplace, stylis_1.prefixer] : [stylis_1.prefixer])
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GameProvider.js","sourceRoot":"","sources":["../../../src/components/GameProvider/GameProvider.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,yDAA0D;AAC1D,wCAAiF;AACjF,+
|
|
1
|
+
{"version":3,"file":"GameProvider.js","sourceRoot":"","sources":["../../../src/components/GameProvider/GameProvider.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
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
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
14
|
+
var t = {};
|
|
15
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
16
|
+
t[p] = s[p];
|
|
17
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
18
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
19
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
20
|
+
t[p[i]] = s[p[i]];
|
|
21
|
+
}
|
|
22
|
+
return t;
|
|
23
|
+
};
|
|
24
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
+
exports.Chat = void 0;
|
|
26
|
+
var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
27
|
+
var LocalChat_1 = require("./LocalChat");
|
|
28
|
+
var RemoteChat_1 = require("./RemoteChat");
|
|
29
|
+
var Chat = function (props) {
|
|
30
|
+
var gameId = props.gameId, open = props.open, rest = __rest(props, ["gameId", "open"]);
|
|
31
|
+
if (!gameId) {
|
|
32
|
+
return (0, jsx_runtime_1.jsx)(LocalChat_1.LocalChat, __assign({ open: open }, rest));
|
|
33
|
+
}
|
|
34
|
+
return (0, jsx_runtime_1.jsx)(RemoteChat_1.RemoteChat, __assign({ gameId: gameId, open: open }, rest));
|
|
35
|
+
};
|
|
36
|
+
exports.Chat = Chat;
|
|
37
|
+
//# sourceMappingURL=Chat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Chat.js","sourceRoot":"","sources":["../../../../src/components/JournalTabs/Chat/Chat.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,yCAAuC;AACvC,2CAAyC;AAOlC,IAAM,IAAI,GAAkB,UAAC,KAAK;IAC/B,IAAA,MAAM,GAAoB,KAAK,OAAzB,EAAE,IAAI,GAAc,KAAK,KAAnB,EAAK,IAAI,UAAK,KAAK,EAAjC,kBAAyB,CAAF,CAAU;IACvC,IAAI,CAAC,MAAM,EAAE;QACX,OAAO,uBAAC,qBAAS,aAAC,IAAI,EAAE,IAAI,IAAO,IAAI,EAAI,CAAA;KAC5C;IAED,OAAO,uBAAC,uBAAU,aAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,IAAO,IAAI,EAAI,CAAA;AAC9D,CAAC,CAAA;AAPY,QAAA,IAAI,QAOhB"}
|
|
@@ -0,0 +1,29 @@
|
|
|
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.ChatMessage = void 0;
|
|
19
|
+
var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
20
|
+
var react_1 = require("@emotion/react");
|
|
21
|
+
var ChatMessageAuthor_1 = require("./ChatMessageAuthor");
|
|
22
|
+
var ChatMessage = function (_a) {
|
|
23
|
+
var message = _a.message, showAuthor = _a.showAuthor;
|
|
24
|
+
return (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [showAuthor && (0, jsx_runtime_1.jsx)(ChatMessageAuthor_1.ChatMessageAuthor, { author: message.userId }), (0, jsx_runtime_1.jsx)("p", __assign({ css: textCss }, { children: message.text }))] });
|
|
25
|
+
};
|
|
26
|
+
exports.ChatMessage = ChatMessage;
|
|
27
|
+
var textCss = (0, react_1.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n line-height: 1.5;\n margin: 0;\n word-break: break-word;\n font-size: 0.7em\n"], ["\n line-height: 1.5;\n margin: 0;\n word-break: break-word;\n font-size: 0.7em\n"])));
|
|
28
|
+
var templateObject_1;
|
|
29
|
+
//# sourceMappingURL=ChatMessage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChatMessage.js","sourceRoot":"","sources":["../../../../src/components/JournalTabs/Chat/ChatMessage.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AACA,wCAAoC;AAEpC,yDAAuD;AAOhD,IAAM,WAAW,GAAG,UAAC,EAA8B;QAA5B,OAAO,aAAA,EAAE,UAAU,gBAAA;IAAc,OAAA,6DAC5D,UAAU,IAAI,uBAAC,qCAAiB,IAAC,MAAM,EAAE,OAAO,CAAC,MAAM,GAAG,EAC3D,uCAAG,GAAG,EAAE,OAAO,gBAAG,OAAO,CAAC,IAAI,IAAK,IAClC;AAH4D,CAG5D,CAAA;AAHU,QAAA,WAAW,eAGrB;AAEH,IAAM,OAAO,OAAG,WAAG,0JAAA,sFAKlB,IAAA,CAAA"}
|
|
@@ -0,0 +1,37 @@
|
|
|
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 __importDefault = (this && this.__importDefault) || function (mod) {
|
|
18
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
|
+
};
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
exports.ChatMessageAuthor = void 0;
|
|
22
|
+
var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
23
|
+
var react_1 = require("@emotion/react");
|
|
24
|
+
var avataaars_1 = __importDefault(require("@gamepark/avataaars"));
|
|
25
|
+
var react_client_1 = require("@gamepark/react-client");
|
|
26
|
+
var react_i18next_1 = require("react-i18next");
|
|
27
|
+
var ChatMessageAuthor = function (_a) {
|
|
28
|
+
var author = _a.author;
|
|
29
|
+
var t = (0, react_i18next_1.useTranslation)().t;
|
|
30
|
+
var _b = (0, react_client_1.useMessageAuthor)(author), avatar = _b.avatar, name = _b.name;
|
|
31
|
+
return (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(avataaars_1.default, __assign({ style: { width: '2.25em', height: '2.25em', position: 'absolute', left: '0' }, circle: true }, avatar)), name && (0, jsx_runtime_1.jsx)("p", __assign({ css: [authorCss] }, { children: name })), !name && (0, jsx_runtime_1.jsx)("p", __assign({ css: [authorCss, anonymous] }, { children: t('Anonymous') }))] });
|
|
32
|
+
};
|
|
33
|
+
exports.ChatMessageAuthor = ChatMessageAuthor;
|
|
34
|
+
var authorCss = (0, react_1.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n font-weight: bold;\n line-height: 1.5;\n margin: 4px 0 0;\n font-size: 0.7em\n"], ["\n font-weight: bold;\n line-height: 1.5;\n margin: 4px 0 0;\n font-size: 0.7em\n"])));
|
|
35
|
+
var anonymous = (0, react_1.css)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n font-style: italic;\n color: gray;\n"], ["\n font-style: italic;\n color: gray;\n"])));
|
|
36
|
+
var templateObject_1, templateObject_2;
|
|
37
|
+
//# sourceMappingURL=ChatMessageAuthor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChatMessageAuthor.js","sourceRoot":"","sources":["../../../../src/components/JournalTabs/Chat/ChatMessageAuthor.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AACA,wCAAoC;AACpC,kEAAwC;AACxC,uDAAyD;AACzD,+CAA8C;AAEvC,IAAM,iBAAiB,GAAG,UAAC,EAA8B;QAA5B,MAAM,YAAA;IAChC,IAAA,CAAC,GAAK,IAAA,8BAAc,GAAE,EAArB,CAAqB;IACxB,IAAA,KAAmB,IAAA,+BAAgB,EAAC,MAAM,CAAC,EAAzC,MAAM,YAAA,EAAE,IAAI,UAA6B,CAAA;IAEjD,OAAO,6DACL,uBAAC,mBAAM,aAAC,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,MAAM,UAAK,MAAM,EAAG,EAC1G,IAAI,IAAI,uCAAG,GAAG,EAAE,CAAC,SAAS,CAAC,gBAAG,IAAI,IAAK,EACvC,CAAC,IAAI,IAAI,uCAAG,GAAG,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,gBAAG,CAAC,CAAC,WAAW,CAAC,IAAK,IAC7D,CAAA;AACL,CAAC,CAAA;AATY,QAAA,iBAAiB,qBAS7B;AAED,IAAM,SAAS,OAAG,WAAG,2JAAA,uFAKpB,IAAA,CAAA;AAED,IAAM,SAAS,OAAG,WAAG,+GAAA,2CAGpB,IAAA,CAAA"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Message } from '@gamepark/react-client';
|
|
2
|
+
import { FC } from 'react';
|
|
3
|
+
type LocalChatTextInputProps = {
|
|
4
|
+
onMessageSent: (message: Message) => void;
|
|
5
|
+
messages: number;
|
|
6
|
+
open: boolean;
|
|
7
|
+
};
|
|
8
|
+
export declare const LocalChatTextInput: FC<LocalChatTextInputProps>;
|
|
9
|
+
type RemoteChatTextInputProps = {
|
|
10
|
+
channel: string;
|
|
11
|
+
open: boolean;
|
|
12
|
+
};
|
|
13
|
+
export declare const RemoteChatTextInput: FC<RemoteChatTextInputProps>;
|
|
14
|
+
type ChatInputProps = {
|
|
15
|
+
onSubmit: (text: string) => void;
|
|
16
|
+
open: boolean;
|
|
17
|
+
};
|
|
18
|
+
export declare const ChatInput: FC<ChatInputProps>;
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,71 @@
|
|
|
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.ChatInput = exports.RemoteChatTextInput = exports.LocalChatTextInput = void 0;
|
|
19
|
+
var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
20
|
+
var react_1 = require("@emotion/react");
|
|
21
|
+
var free_regular_svg_icons_1 = require("@fortawesome/free-regular-svg-icons");
|
|
22
|
+
var react_fontawesome_1 = require("@fortawesome/react-fontawesome");
|
|
23
|
+
var react_client_1 = require("@gamepark/react-client");
|
|
24
|
+
var react_2 = require("react");
|
|
25
|
+
var react_i18next_1 = require("react-i18next");
|
|
26
|
+
var css_1 = require("../../../css");
|
|
27
|
+
var LocalChatTextInput = function (props) {
|
|
28
|
+
var onMessageSent = props.onMessageSent, messages = props.messages, open = props.open;
|
|
29
|
+
var onSubmit = function (t) {
|
|
30
|
+
if (!t)
|
|
31
|
+
return;
|
|
32
|
+
onMessageSent({ id: "".concat(messages), text: t, date: new Date().toISOString(), userId: 'dev' });
|
|
33
|
+
};
|
|
34
|
+
return (0, jsx_runtime_1.jsx)(exports.ChatInput, { open: open, onSubmit: onSubmit });
|
|
35
|
+
};
|
|
36
|
+
exports.LocalChatTextInput = LocalChatTextInput;
|
|
37
|
+
var RemoteChatTextInput = function (props) {
|
|
38
|
+
var channel = props.channel, open = props.open;
|
|
39
|
+
var sendMessage = (0, react_client_1.useSendMessage)()[0];
|
|
40
|
+
var onSubmit = function (text) {
|
|
41
|
+
sendMessage({ variables: { channel: channel, text: text } }).catch(console.error);
|
|
42
|
+
};
|
|
43
|
+
return (0, jsx_runtime_1.jsx)(exports.ChatInput, { open: open, onSubmit: onSubmit });
|
|
44
|
+
};
|
|
45
|
+
exports.RemoteChatTextInput = RemoteChatTextInput;
|
|
46
|
+
var ChatInput = function (props) {
|
|
47
|
+
var open = props.open, onSubmit = props.onSubmit;
|
|
48
|
+
var _a = (0, react_2.useState)(''), text = _a[0], setText = _a[1];
|
|
49
|
+
var t = (0, react_i18next_1.useTranslation)().t;
|
|
50
|
+
var inputRef = (0, react_2.useRef)(null);
|
|
51
|
+
(0, react_2.useEffect)(function () {
|
|
52
|
+
if (open && inputRef.current) {
|
|
53
|
+
inputRef.current.focus();
|
|
54
|
+
}
|
|
55
|
+
}, [open]);
|
|
56
|
+
var doSubmit = function (event) {
|
|
57
|
+
event.preventDefault();
|
|
58
|
+
onSubmit(text);
|
|
59
|
+
setText('');
|
|
60
|
+
};
|
|
61
|
+
return ((0, jsx_runtime_1.jsxs)("form", __assign({ css: [messageBar, !open && hidden], onSubmit: doSubmit }, { children: [(0, jsx_runtime_1.jsx)("input", { ref: inputRef, type: "text", placeholder: t('Type a message'), css: textInputCss, value: text, onChange: function (event) { return setText(event.target.value); } }), (0, jsx_runtime_1.jsx)("button", __assign({ disabled: !text, "aria-label": t('Send'), title: t('Send'), css: [css_1.buttonResetCss, sendButtonStyle, !text && disableSubmit] }, { children: (0, jsx_runtime_1.jsx)(react_fontawesome_1.FontAwesomeIcon, { css: !text && transparent, icon: free_regular_svg_icons_1.faPaperPlane }) }))] })));
|
|
62
|
+
};
|
|
63
|
+
exports.ChatInput = ChatInput;
|
|
64
|
+
var disableSubmit = (0, react_1.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n cursor: not-allowed;\n"], ["\n cursor: not-allowed;\n"])));
|
|
65
|
+
var transparent = (0, react_1.css)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n opacity: 0.4;\n"], ["\n opacity: 0.4;\n"])));
|
|
66
|
+
var hidden = (0, react_1.css)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n display: none;\n"], ["\n display: none;\n"])));
|
|
67
|
+
var messageBar = (0, react_1.css)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n width: 100%;\n padding: 0.5em;\n background: #28B8CE;\n display: flex;\n font-size: 0.5em;\n"], ["\n width: 100%;\n padding: 0.5em;\n background: #28B8CE;\n display: flex;\n font-size: 0.5em;\n"])));
|
|
68
|
+
var textInputCss = (0, react_1.css)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n flex-grow: 1;\n border: none;\n border-radius: 1em;\n padding: 0.5em 0.8em;\n\n &:focus-visible {\n outline: none;\n }\n"], ["\n flex-grow: 1;\n border: none;\n border-radius: 1em;\n padding: 0.5em 0.8em;\n\n &:focus-visible {\n outline: none;\n }\n"])));
|
|
69
|
+
var sendButtonStyle = (0, react_1.css)(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n background: none;\n color: white;\n font-size: 1.5em;\n"], ["\n background: none;\n color: white;\n font-size: 1.5em;\n"])));
|
|
70
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6;
|
|
71
|
+
//# sourceMappingURL=ChatTextInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChatTextInput.js","sourceRoot":"","sources":["../../../../src/components/JournalTabs/Chat/ChatTextInput.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { FC, MutableRefObject, ReactElement } from 'react';
|
|
2
|
+
type CommonChatProps = {
|
|
3
|
+
gameId?: string;
|
|
4
|
+
loading?: boolean;
|
|
5
|
+
hasMoreMessages?: boolean;
|
|
6
|
+
messages: any[];
|
|
7
|
+
fetchMore?: () => void;
|
|
8
|
+
Input: ReactElement;
|
|
9
|
+
shouldScroll: MutableRefObject<boolean>;
|
|
10
|
+
};
|
|
11
|
+
export declare const CommonChat: FC<CommonChatProps>;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,58 @@
|
|
|
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
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
29
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
30
|
+
};
|
|
31
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
32
|
+
exports.CommonChat = void 0;
|
|
33
|
+
var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
34
|
+
var react_1 = require("@emotion/react");
|
|
35
|
+
var react_2 = require("react");
|
|
36
|
+
var react_infinite_scroller_1 = __importDefault(require("react-infinite-scroller"));
|
|
37
|
+
var ChatMessage_1 = require("./ChatMessage");
|
|
38
|
+
var CommonChat = function (props) {
|
|
39
|
+
var loading = props.loading, hasMoreMessages = props.hasMoreMessages, messages = props.messages, shouldScroll = props.shouldScroll, Input = props.Input, fetchMore = props.fetchMore, rest = __rest(props, ["loading", "hasMoreMessages", "messages", "shouldScroll", "Input", "fetchMore"]);
|
|
40
|
+
var scrollRef = (0, react_2.useRef)(null);
|
|
41
|
+
(0, react_2.useEffect)(function () {
|
|
42
|
+
if (!scrollRef.current)
|
|
43
|
+
return;
|
|
44
|
+
var _a = scrollRef.current, scrollHeight = _a.scrollHeight, clientHeight = _a.clientHeight;
|
|
45
|
+
if (shouldScroll.current) {
|
|
46
|
+
scrollRef.current.scrollTo({ top: scrollHeight - clientHeight, behavior: 'smooth' });
|
|
47
|
+
shouldScroll.current = false;
|
|
48
|
+
}
|
|
49
|
+
}, [messages]);
|
|
50
|
+
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("div", __assign({ ref: scrollRef, id: "fui", css: scrollCss }, rest, { children: (0, jsx_runtime_1.jsx)(react_infinite_scroller_1.default, __assign({ css: scrollContentCss, useWindow: false, isReverse: true, getScrollParent: function () { return scrollRef.current; }, hasMore: !loading && hasMoreMessages && messages.length > 0, loadMore: fetchMore ? fetchMore : (function () { return undefined; }) }, { children: messages.map(function (message, index) {
|
|
51
|
+
return (0, jsx_runtime_1.jsx)(ChatMessage_1.ChatMessage, { message: message, showAuthor: index === 0 || messages[index - 1].userId !== message.userId }, message.id);
|
|
52
|
+
}) })) })), Input] }));
|
|
53
|
+
};
|
|
54
|
+
exports.CommonChat = CommonChat;
|
|
55
|
+
var scrollCss = (0, react_1.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n overflow-x: hidden;\n overflow-y: scroll;\n scrollbar-color: rgba(74, 74, 74, 0.3) transparent;\n scrollbar-width: thin;\n margin-top: 0.5em;\n margin-left: 0.5em;\n margin-right: 8px;\n\n &::-webkit-scrollbar {\n width: 6px\n }\n\n &::-webkit-scrollbar-thumb {\n border-radius: 7px;\n background-color: rgba(74, 74, 74, 0.3);\n }\n\n align-self: stretch;\n display: flex;\n flex-direction: column;\n"], ["\n overflow-x: hidden;\n overflow-y: scroll;\n scrollbar-color: rgba(74, 74, 74, 0.3) transparent;\n scrollbar-width: thin;\n margin-top: 0.5em;\n margin-left: 0.5em;\n margin-right: 8px;\n\n &::-webkit-scrollbar {\n width: 6px\n }\n\n &::-webkit-scrollbar-thumb {\n border-radius: 7px;\n background-color: rgba(74, 74, 74, 0.3);\n }\n\n align-self: stretch;\n display: flex;\n flex-direction: column;\n"])));
|
|
56
|
+
var scrollContentCss = (0, react_1.css)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n position: relative;\n padding-left: 2.5em;\n padding-right: 1em;\n padding-bottom: 0.5em;\n font-size: 0.7em;\n"], ["\n position: relative;\n padding-left: 2.5em;\n padding-right: 1em;\n padding-bottom: 0.5em;\n font-size: 0.7em;\n"])));
|
|
57
|
+
var templateObject_1, templateObject_2;
|
|
58
|
+
//# sourceMappingURL=CommonChat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CommonChat.js","sourceRoot":"","sources":["../../../../src/components/JournalTabs/Chat/CommonChat.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,wCAAoC;AACpC,+BAA6E;AAC7E,oFAAoD;AACpD,6CAA2C;AAYpC,IAAM,UAAU,GAAwB,UAAC,KAAK;IAC3C,IAAA,OAAO,GAAyE,KAAK,QAA9E,EAAE,eAAe,GAAwD,KAAK,gBAA7D,EAAE,QAAQ,GAA8C,KAAK,SAAnD,EAAE,YAAY,GAAgC,KAAK,aAArC,EAAE,KAAK,GAAyB,KAAK,MAA9B,EAAE,SAAS,GAAc,KAAK,UAAnB,EAAK,IAAI,UAAK,KAAK,EAAvF,gFAA+E,CAAF,CAAU;IAC7F,IAAM,SAAS,GAAG,IAAA,cAAM,EAAiB,IAAI,CAAC,CAAA;IAC9C,IAAA,iBAAS,EAAC;QACR,IAAI,CAAC,SAAS,CAAC,OAAO;YAAE,OAAM;QACxB,IAAA,KAAiC,SAAS,CAAC,OAAO,EAAhD,YAAY,kBAAA,EAAE,YAAY,kBAAsB,CAAA;QACxD,IAAI,YAAY,CAAC,OAAO,EAAE;YACxB,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,YAAY,GAAG,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAA;YACpF,YAAY,CAAC,OAAO,GAAG,KAAK,CAAA;SAC7B;IACH,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEd,OAAO,CACL,6DACE,yCAAK,GAAG,EAAE,SAAS,EAAE,EAAE,EAAC,KAAK,EAAC,GAAG,EAAE,SAAS,IAAO,IAAI,cACrD,uBAAC,iCAAc,aAAC,GAAG,EAAE,gBAAgB,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,QAAC,eAAe,EAAE,cAAM,OAAA,SAAS,CAAC,OAAO,EAAjB,CAAiB,EAC3F,OAAO,EAAE,CAAC,OAAO,IAAI,eAAe,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAC3D,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,cAAM,OAAA,SAAS,EAAT,CAAS,CAAC,gBAChE,QAAQ,CAAC,GAAG,CAAC,UAAC,OAAO,EAAE,KAAK;wBAC3B,OAAA,uBAAC,yBAAW,IAAkB,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,IAAtG,OAAO,CAAC,EAAE,CAA+F;oBAA3H,CAA2H,CAC5H,IACc,IACb,EACL,KAAK,IACL,CACJ,CAAA;AACH,CAAC,CAAA;AA1BY,QAAA,UAAU,cA0BtB;AAGD,IAAM,SAAS,OAAG,WAAG,gfAAA,4aAqBpB,IAAA,CAAA;AAED,IAAM,gBAAgB,OAAG,WAAG,6LAAA,yHAM3B,IAAA,CAAA"}
|
|
@@ -0,0 +1,49 @@
|
|
|
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
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
14
|
+
var t = {};
|
|
15
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
16
|
+
t[p] = s[p];
|
|
17
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
18
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
19
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
20
|
+
t[p[i]] = s[p[i]];
|
|
21
|
+
}
|
|
22
|
+
return t;
|
|
23
|
+
};
|
|
24
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
25
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
26
|
+
if (ar || !(i in from)) {
|
|
27
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
28
|
+
ar[i] = from[i];
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
32
|
+
};
|
|
33
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
34
|
+
exports.LocalChat = void 0;
|
|
35
|
+
var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
36
|
+
var react_1 = require("react");
|
|
37
|
+
var ChatTextInput_1 = require("./ChatTextInput");
|
|
38
|
+
var CommonChat_1 = require("./CommonChat");
|
|
39
|
+
var LocalChat = function (props) {
|
|
40
|
+
var open = props.open, rest = __rest(props, ["open"]);
|
|
41
|
+
var shouldScroll = (0, react_1.useRef)(false);
|
|
42
|
+
var _a = (0, react_1.useState)([]), messages = _a[0], setMessages = _a[1];
|
|
43
|
+
(0, react_1.useEffect)(function () {
|
|
44
|
+
shouldScroll.current = true;
|
|
45
|
+
}, [messages]);
|
|
46
|
+
return (0, jsx_runtime_1.jsx)(CommonChat_1.CommonChat, __assign({ messages: messages, shouldScroll: shouldScroll, Input: (0, jsx_runtime_1.jsx)(ChatTextInput_1.LocalChatTextInput, __assign({ open: open, messages: messages.length, onMessageSent: function (m) { return setMessages(function (messages) { return __spreadArray(__spreadArray([], messages, true), [m], false); }); } }, rest)) }, rest));
|
|
47
|
+
};
|
|
48
|
+
exports.LocalChat = LocalChat;
|
|
49
|
+
//# sourceMappingURL=LocalChat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LocalChat.js","sourceRoot":"","sources":["../../../../src/components/JournalTabs/Chat/LocalChat.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,+BAAuE;AACvE,iDAAoD;AACpD,2CAAyC;AAMlC,IAAM,SAAS,GAAwB,UAAC,KAAK;IAC1C,IAAA,IAAI,GAAc,KAAK,KAAnB,EAAK,IAAI,UAAK,KAAK,EAAzB,QAAiB,CAAF,CAAU;IAC/B,IAAM,YAAY,GAAG,IAAA,cAAM,EAAC,KAAK,CAAC,CAAA;IAC5B,IAAA,KAA0B,IAAA,gBAAQ,EAAY,EAAE,CAAC,EAAhD,QAAQ,QAAA,EAAE,WAAW,QAA2B,CAAA;IAEvD,IAAA,iBAAS,EAAC;QACR,YAAY,CAAC,OAAO,GAAG,IAAI,CAAA;IAC7B,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEd,OAAO,uBAAC,uBAAU,aAChB,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,uBAAC,kCAAkB,aAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,EAAE,aAAa,EAAE,UAAC,CAAU,IAAK,OAAA,WAAW,CAAC,UAAC,QAAQ,IAAK,uCAAI,QAAQ,UAAE,CAAC,WAAf,CAAgB,CAAC,EAA3C,CAA2C,IAAO,IAAI,EAAI,IACtJ,IAAI,EAEE,CAAA;AACf,CAAC,CAAA;AAhBY,QAAA,SAAS,aAgBrB"}
|
|
@@ -0,0 +1,46 @@
|
|
|
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
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
14
|
+
var t = {};
|
|
15
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
16
|
+
t[p] = s[p];
|
|
17
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
18
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
19
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
20
|
+
t[p[i]] = s[p[i]];
|
|
21
|
+
}
|
|
22
|
+
return t;
|
|
23
|
+
};
|
|
24
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
+
exports.RemoteChat = void 0;
|
|
26
|
+
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
27
|
+
var react_client_1 = require("@gamepark/react-client");
|
|
28
|
+
var react_1 = require("react");
|
|
29
|
+
var hooks_1 = require("../../../hooks");
|
|
30
|
+
var ChatTextInput_1 = require("./ChatTextInput");
|
|
31
|
+
var CommonChat_1 = require("./CommonChat");
|
|
32
|
+
var SignInToChat_1 = require("./SignInToChat");
|
|
33
|
+
var RemoteChat = function (props) {
|
|
34
|
+
var _a;
|
|
35
|
+
var gameId = props.gameId, open = props.open, rest = __rest(props, ["gameId", "open"]);
|
|
36
|
+
var me = (0, react_client_1.useMe)();
|
|
37
|
+
var playerId = (0, hooks_1.usePlayerId)();
|
|
38
|
+
var shouldScroll = (0, react_1.useRef)(false);
|
|
39
|
+
var _b = (0, react_client_1.useChatMessages)(gameId, function () {
|
|
40
|
+
shouldScroll.current = true;
|
|
41
|
+
}), messages = _b.messages, hasMoreMessages = _b.hasMoreMessages, loading = _b.loading, fetchMore = _b.fetchMore;
|
|
42
|
+
var doFetchMore = function () { return fetchMore({ variables: { channel: "game=".concat(gameId), maxDate: messages[0].date } }); };
|
|
43
|
+
return (0, jsx_runtime_1.jsx)(CommonChat_1.CommonChat, __assign({ loading: loading, hasMoreMessages: hasMoreMessages, messages: messages, shouldScroll: shouldScroll, fetchMore: doFetchMore, Input: playerId || ((_a = me === null || me === void 0 ? void 0 : me.user) === null || _a === void 0 ? void 0 : _a.id) ? (0, jsx_runtime_1.jsx)(ChatTextInput_1.RemoteChatTextInput, { channel: "game=".concat(gameId), open: open }) : (0, jsx_runtime_1.jsx)(SignInToChat_1.SignInToChat, {}) }, rest));
|
|
44
|
+
};
|
|
45
|
+
exports.RemoteChat = RemoteChat;
|
|
46
|
+
//# sourceMappingURL=RemoteChat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RemoteChat.js","sourceRoot":"","sources":["../../../../src/components/JournalTabs/Chat/RemoteChat.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAA+D;AAC/D,+BAAkD;AAClD,wCAA4C;AAC5C,iDAAqD;AACrD,2CAAyC;AACzC,+CAA6C;AAOtC,IAAM,UAAU,GAAwB,UAAC,KAAK;;IAC3C,IAAA,MAAM,GAAoB,KAAK,OAAzB,EAAE,IAAI,GAAc,KAAK,KAAnB,EAAK,IAAI,UAAK,KAAK,EAAjC,kBAAyB,CAAF,CAAU;IACvC,IAAM,EAAE,GAAG,IAAA,oBAAK,GAAE,CAAA;IAClB,IAAM,QAAQ,GAAG,IAAA,mBAAW,GAAE,CAAA;IAC9B,IAAM,YAAY,GAAG,IAAA,cAAM,EAAC,KAAK,CAAC,CAAA;IAC5B,IAAA,KAAoD,IAAA,8BAAe,EAAC,MAAM,EAAE;QAChF,YAAY,CAAC,OAAO,GAAG,IAAI,CAAA;IAC7B,CAAC,CAAC,EAFM,QAAQ,cAAA,EAAE,eAAe,qBAAA,EAAE,OAAO,aAAA,EAAE,SAAS,eAEnD,CAAA;IAEF,IAAM,WAAW,GAAG,cAAM,OAAA,SAAS,CAAC,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,eAAQ,MAAM,CAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,EAAlF,CAAkF,CAAA;IAE5G,OAAO,uBAAC,uBAAU,aAChB,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,WAAW,EACtB,KAAK,EAAE,QAAQ,KAAI,MAAA,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,IAAI,0CAAE,EAAE,CAAA,CAAC,CAAC,CAAC,uBAAC,mCAAmB,IAAC,OAAO,EAAE,eAAQ,MAAM,CAAE,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,uBAAC,2BAAY,KAAE,IAC5G,IAAI,EACT,CAAA;AACJ,CAAC,CAAA;AApBY,QAAA,UAAU,cAoBtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const SignInToChat: () => import("@emotion/react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,35 @@
|
|
|
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.SignInToChat = void 0;
|
|
19
|
+
var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
20
|
+
var react_1 = require("@emotion/react");
|
|
21
|
+
var react_client_1 = require("@gamepark/react-client");
|
|
22
|
+
var react_i18next_1 = require("react-i18next");
|
|
23
|
+
var css_1 = require("../../../css");
|
|
24
|
+
var SignInToChat = function () {
|
|
25
|
+
var t = (0, react_i18next_1.useTranslation)().t;
|
|
26
|
+
var query = new URLSearchParams(window.location.search);
|
|
27
|
+
var locale = query.get('locale') || 'en';
|
|
28
|
+
return ((0, jsx_runtime_1.jsxs)("div", __assign({ css: style }, { children: [(0, jsx_runtime_1.jsx)("p", __assign({ css: textCss }, { children: t('sign-in-to-chat') })), (0, jsx_runtime_1.jsx)("button", __assign({ css: [css_1.buttonResetCss, signInButtonCss], onClick: function () { return window.location.href = "".concat(react_client_1.PLATFORM_URI, "/").concat(locale, "/auth/sign-in?callbackUrl=").concat(encodeURIComponent(window.location.href)); } }, { children: t('Sign in') }))] })));
|
|
29
|
+
};
|
|
30
|
+
exports.SignInToChat = SignInToChat;
|
|
31
|
+
var style = (0, react_1.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n width: 100%;\n padding: 8px 16px;\n text-align: center;\n"], ["\n width: 100%;\n padding: 8px 16px;\n text-align: center;\n"])));
|
|
32
|
+
var textCss = (0, react_1.css)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n line-height: 1.5;\n margin: 0;\n font-weight: bold;\n"], ["\n line-height: 1.5;\n margin: 0;\n font-weight: bold;\n"])));
|
|
33
|
+
var signInButtonCss = (0, react_1.css)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n padding: 0.2em 0.5em;\n border-radius: 2em;\n border: 0.05em solid #002448;\n color: #002448;\n background: transparent;\n font-size: 1.25em;\n\n &:focus, &:hover {\n background: #c2ebf1;\n }\n\n &:active {\n background: #ade4ec;\n }\n"], ["\n padding: 0.2em 0.5em;\n border-radius: 2em;\n border: 0.05em solid #002448;\n color: #002448;\n background: transparent;\n font-size: 1.25em;\n\n &:focus, &:hover {\n background: #c2ebf1;\n }\n\n &:active {\n background: #ade4ec;\n }\n"])));
|
|
34
|
+
var templateObject_1, templateObject_2, templateObject_3;
|
|
35
|
+
//# sourceMappingURL=SignInToChat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SignInToChat.js","sourceRoot":"","sources":["../../../../src/components/JournalTabs/Chat/SignInToChat.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AACA,wCAAoC;AACpC,uDAAqD;AACrD,+CAA8C;AAC9C,oCAA6C;AAEtC,IAAM,YAAY,GAAG;IAClB,IAAA,CAAC,GAAK,IAAA,8BAAc,GAAE,EAArB,CAAqB;IAC9B,IAAM,KAAK,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IACzD,IAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAA;IAC1C,OAAO,CACL,0CAAK,GAAG,EAAE,KAAK,iBACb,uCAAG,GAAG,EAAE,OAAO,gBAAG,CAAC,CAAC,iBAAiB,CAAC,IAAK,EAC3C,4CAAQ,GAAG,EAAE,CAAC,oBAAc,EAAE,eAAe,CAAC,EACtC,OAAO,EAAE,cAAM,OAAA,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,UAAG,2BAAY,cAAI,MAAM,uCAA6B,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAE,EAAvH,CAAuH,gBAC3I,CAAC,CAAC,SAAS,CAAC,IACN,KACL,CACP,CAAA;AACH,CAAC,CAAA;AAbY,QAAA,YAAY,gBAaxB;AAED,IAAM,KAAK,OAAG,WAAG,qIAAA,iEAIhB,IAAA,CAAA;AAED,IAAM,OAAO,OAAG,WAAG,iIAAA,6DAIlB,IAAA,CAAA;AAED,IAAM,eAAe,OAAG,WAAG,oUAAA,gQAe1B,IAAA,CAAA"}
|
|
@@ -0,0 +1,22 @@
|
|
|
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("./Chat"), exports);
|
|
18
|
+
__exportStar(require("./ChatMessage"), exports);
|
|
19
|
+
__exportStar(require("./ChatMessageAuthor"), exports);
|
|
20
|
+
__exportStar(require("./ChatTextInput"), exports);
|
|
21
|
+
__exportStar(require("./SignInToChat"), exports);
|
|
22
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/JournalTabs/Chat/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAsB;AACtB,gDAA6B;AAC7B,sDAAmC;AACnC,kDAA+B;AAC/B,iDAA8B"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { PlayerHistoryEntryProps } from './PlayerHistoryEntry';
|
|
3
|
+
export type ActionHistoryEntryProps = {
|
|
4
|
+
consequence?: boolean;
|
|
5
|
+
noPlayer?: boolean;
|
|
6
|
+
depth?: number;
|
|
7
|
+
picture?: string;
|
|
8
|
+
pictureCss?: any;
|
|
9
|
+
getColor?: (playerId: number) => string;
|
|
10
|
+
playerId?: number;
|
|
11
|
+
} & PlayerHistoryEntryProps;
|
|
12
|
+
export declare const ActionHistoryEntry: FC<ActionHistoryEntryProps>;
|