diff --git a/js/src/api/types.ts b/js/src/api/types.ts index 3f4fde1..3bf50ec 100644 --- a/js/src/api/types.ts +++ b/js/src/api/types.ts @@ -158,7 +158,7 @@ export type PaperProperties = z.infer; export const ReactionsSchema = z.record(z.string(), z.array(z.string())).optional(); export type Reactions = z.infer; -export const REACTION_EMOJIS = ["\u{1F44D}", "\u{2764}\u{FE0F}", "\u{1F525}", "\u{1F440}", "\u{2705}", "\u{2753}"] as const; +export const REACTION_EMOJIS = ["\u{1F44D}", "\u{2764}\u{FE0F}", "\u{1F525}", "\u{1F440}", "\u{2705}", "\u{2753}", "\u{1F602}"] as const; export interface ParticlePropertiesMap { stream: StreamProperties; diff --git a/js/src/features/particles/reaction-bar.tsx b/js/src/features/particles/reaction-bar.tsx index 87aaf03..2c9bdf3 100644 --- a/js/src/features/particles/reaction-bar.tsx +++ b/js/src/features/particles/reaction-bar.tsx @@ -37,7 +37,7 @@ export function ReactionBar({ reactions, currentHumanId, humans, onToggle }: Rea }; return ( -
+
{/* Existing reaction pills */} {activeEmojis.map((emoji) => { const reactors = reactions![emoji]; @@ -58,7 +58,7 @@ export function ReactionBar({ reactions, currentHumanId, humans, onToggle }: Rea {reactors.length} - + {getReactorNames(reactors, humans)} @@ -67,7 +67,7 @@ export function ReactionBar({ reactions, currentHumanId, humans, onToggle }: Rea {/* Expand / picker toggle */} {expanded ? ( -
+
{REACTION_EMOJIS.map((emoji) => { // Skip emojis that already have pills if (activeEmojis.includes(emoji)) return null; @@ -75,7 +75,7 @@ export function ReactionBar({ reactions, currentHumanId, humans, onToggle }: Rea diff --git a/js/src/features/particles/stream-view.tsx b/js/src/features/particles/stream-view.tsx index 68a8d2b..c96fbe1 100644 --- a/js/src/features/particles/stream-view.tsx +++ b/js/src/features/particles/stream-view.tsx @@ -138,7 +138,7 @@ const STREAM_VIEW_KEYBINDINGS: KeybindingGroup[] = [ { label: "Reactions", bindings: [ - { keys: ["1-6"], description: "Toggle emoji reaction" }, + { keys: ["1-7"], description: "Toggle emoji reaction" }, ], }, ]; @@ -288,7 +288,7 @@ export function StreamView({ path, streamParticle }: StreamViewProps) { e.preventDefault(); setShowKeybindings((v) => !v); break; - case "1": case "2": case "3": case "4": case "5": case "6": + case "1": case "2": case "3": case "4": case "5": case "6": case "7": e.preventDefault(); handleToggleReaction(REACTION_EMOJIS[parseInt(e.key) - 1]); break; @@ -419,7 +419,7 @@ export function StreamView({ path, streamParticle }: StreamViewProps) { {/* Reaction bar — always visible */} {currentParticle && ( -
+