Skip to content

Commit

Permalink
Merge pull request #749 from mafia-rust/main
Browse files Browse the repository at this point in the history
Update!
  • Loading branch information
Jack-Papel authored Dec 29, 2024
2 parents e8b4086 + f9e74d5 commit 2cb5027
Show file tree
Hide file tree
Showing 62 changed files with 1,157 additions and 821 deletions.
1 change: 1 addition & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@
"Thanos",
"Tidyable",
"tungstenite",
"uncategorized",
"unclicked",
"Unswappable",
"Uzumaki",
Expand Down
32 changes: 31 additions & 1 deletion client/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 3 additions & 1 deletion client/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,16 @@
"react-dom": "^18.2.0",
"react-helmet": "^6.1.0",
"react-resizable-panels": "^2.1.6",
"react-responsive-masonry": "^2.6.0",
"react-scripts": "^5.0.1",
"react-virtuoso": "^4.12.0",
"typescript": "^4",
"web-vitals": "^2.1.4"
},
"devDependencies": {
"@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2",
"@types/react-helmet": "^6.1.11"
"@types/react-helmet": "^6.1.11",
"@types/react-responsive-masonry": "^2.1.3"
},
"scripts": {
"start": "react-scripts start",
Expand Down
4 changes: 1 addition & 3 deletions client/src/components/ChatMessage.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -156,9 +156,7 @@ const ChatElement = React.memo((
}
defaultOpen={GAME_MANAGER.getMySpectator()}
>
<div className="grave-message">
<GraveComponent grave={message.variant.grave} playerNames={playerNames}/>
</div>
<GraveComponent grave={message.variant.grave} playerNames={playerNames}/>
</DetailsSummary>
</div>;
}
Expand Down
4 changes: 2 additions & 2 deletions client/src/components/DetailsSummary.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ export default function DetailsSummary(props: Readonly<{
}, [props.open, openState, props.disabled]);

return <div className={"details-summary-container "+(props.className??"")}>
<div className="details-summary-summary-container"
<div className={"details-summary-summary-container"+(open ? " open" : "")}
onClick={() => {
if(props.disabled) return;
setOpen(!open);
Expand All @@ -33,7 +33,7 @@ export default function DetailsSummary(props: Readonly<{
>
{(props.dropdownArrow === undefined || props.dropdownArrow === true) ?
((props.disabled === undefined || props.disabled===false) ?
<Icon>{open ? "expand_more" : "expand_less"}</Icon>
<Icon>{open ? "keyboard_arrow_down" : "keyboard_arrow_right"}</Icon>
:
<Icon>close</Icon>
) :
Expand Down
40 changes: 23 additions & 17 deletions client/src/components/TextAreaDropdown.tsx
Original file line number Diff line number Diff line change
@@ -1,17 +1,19 @@
import { ReactElement, useEffect, useMemo, useState } from "react";
import React, { ReactElement, useEffect, useMemo, useState } from "react";
import StyledText from "./StyledText";
import { sanitizePlayerMessage } from "./ChatMessage";
import GAME_MANAGER, { replaceMentions } from "..";
import React from "react";
import { Button } from "./Button";
import Icon from "./Icon";
import translate from "../game/lang";
import "./textAreaDropdown.css";
import DetailsSummary from "./DetailsSummary";

export function TextDropdownArea(props: Readonly<{
titleString: string,
savedText: string,
defaultOpen?: boolean,
open?: boolean,
dropdownArrow?: boolean,
onAdd?: () => void,
onSubtract?: () => void,
onSave: (text: string) => void,
Expand All @@ -37,26 +39,29 @@ export function TextDropdownArea(props: Readonly<{
}

return (
<details className="text-area-dropdown" open={props.open ?? false}>
<summary>
<TextDropdownLabel
titleString={props.titleString}
savedText={props.savedText}
field={field}
onAdd={props.onAdd}
onSubtract={props.onSubtract}
onSave={save}
cantPost={props.cantPost}
/>
</summary>
<DetailsSummary
className="text-area-dropdown"
dropdownArrow={props.dropdownArrow}
defaultOpen={props.defaultOpen}
open={props.open}
summary={<TextDropdownLabel
titleString={props.titleString}
savedText={props.savedText}
field={field}
onAdd={props.onAdd}
onSubtract={props.onSubtract}
onSave={save}
cantPost={props.cantPost}
/>}
>
{unsaved ? "Unsaved" : ""}
<PrettyTextArea
field={field}
setField={setField}
save={save}
send={send}
/>
</details>
</DetailsSummary>
)
}

Expand Down Expand Up @@ -144,11 +149,12 @@ function PrettyTextArea(props: Readonly<{
const [writing, setWriting] = useState<boolean>(false);
const [hover, setHover] = useState<boolean>(false);

return <div
return <div className="pretty-text-area"
onMouseEnter={() => setHover(true)}
onMouseLeave={() => setHover(false)}
onTouchEnd={() => setWriting(true)}
onFocus={() => setWriting(true)}
onBlur={() => setWriting(false)}
onBlur={() => {setWriting(false); setHover(false)}}
>
{(!writing && !hover)
? <div className="textarea">
Expand Down
Loading

0 comments on commit 2cb5027

Please sign in to comment.