Skip to content

Commit a652eea

Browse files
committed
Merge branch 'feat-multisynq-react' into develop
2 parents 45e507e + 175a4cd commit a652eea

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+1595
-1593
lines changed

package-lock.json

+1,408-1,259
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/react-together/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
"test": "jest"
2727
},
2828
"dependencies": {
29-
"@croquet/react": "^2.3.0-1",
29+
"@multisynq/react": "^1.0.0",
3030
"object-hash": "^3.0.0",
3131
"primeicons": "^7.0.0",
3232
"qrcode.react": "^3.1.0"

packages/react-together/src/components/ReactTogether.tsx

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { CroquetRoot } from '@croquet/react'
1+
import { MultisynqRoot } from '@multisynq/react'
22
import { ReactTogetherContext } from '../context'
33
import ReactTogetherModel from '../models/ReactTogetherModel'
44
import { deriveNickname as defaultDeriveNickname } from '../utils'
@@ -74,7 +74,7 @@ export default function ReactTogether<D>({
7474
}
7575

7676
return (
77-
<CroquetRoot
77+
<MultisynqRoot
7878
sessionParams={{
7979
model,
8080
name,
@@ -90,6 +90,6 @@ export default function ReactTogether<D>({
9090
<ReactTogetherContext.Provider value={{ deriveNickname, rememberUsers }}>
9191
{children}
9292
</ReactTogetherContext.Provider>
93-
</CroquetRoot>
93+
</MultisynqRoot>
9494
)
9595
}

packages/react-together/src/hooks/index.ts

+17-16
Original file line numberDiff line numberDiff line change
@@ -12,23 +12,24 @@ import useNicknames from './useNicknames'
1212
import useStateTogether from './useStateTogether'
1313
import useStateTogetherWithPerUserValues from './useStateTogetherWithPerUserValues'
1414

15-
// Create hook alias from @croquet/react
16-
import { useIsJoined } from '@croquet/react'
15+
// Create hook alias from @multisynq/react
16+
import { useIsJoined } from '@multisynq/react'
1717
const useIsTogether = useIsJoined
1818

1919
export {
20-
useAllNicknames,
21-
useChat,
22-
useConnectedUsers,
23-
useCreateRandomSession,
24-
useCursors,
25-
useFunctionTogether,
26-
useHoveringUsers,
27-
useIsTogether,
28-
useJoinUrl,
29-
useLeaveSession,
30-
useMyId,
31-
useNicknames,
32-
useStateTogether,
33-
useStateTogetherWithPerUserValues
20+
useAllNicknames,
21+
useChat,
22+
useConnectedUsers,
23+
useCreateRandomSession,
24+
useCursors,
25+
useFunctionTogether,
26+
useHoveringUsers,
27+
useIsTogether,
28+
useJoinUrl,
29+
useLeaveSession,
30+
useMyId,
31+
useNicknames,
32+
useStateTogether,
33+
useStateTogetherWithPerUserValues
3434
}
35+

packages/react-together/src/hooks/useChat.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { useCroquetContext, usePublish } from '@croquet/react'
1+
import { useMultisynqContext, usePublish } from '@multisynq/react'
22
import { useCallback, useEffect, useState } from 'react'
33
import { ChatMessage } from '../components/Chat'
44
import ReactTogetherModel, { getChat } from '../models/ReactTogetherModel'
@@ -8,7 +8,7 @@ const EMPTY_ARRAY: ChatMessage[] = []
88

99
export default function useChat(rtKey: string) {
1010
const myId = useMyId()
11-
const { view, model } = useCroquetContext<ReactTogetherModel>()
11+
const { view, model } = useMultisynqContext<ReactTogetherModel>()
1212

1313
const [messages, setMessages] = useState<ChatMessage[]>(() => {
1414
if (!model) return EMPTY_ARRAY

packages/react-together/src/hooks/useConnectedUsers.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { useJoinedViews as ujv, useModelRoot } from '@croquet/react'
1+
import { useJoinedViews as ujv, useModelRoot } from '@multisynq/react'
22
import ReactTogetherModel from '../models/ReactTogetherModel'
33
import useAllNicknames from './useAllNicknames'
44
import useMyId from './useMyId'

packages/react-together/src/hooks/useCreateRandomSession.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { App, useSetSession } from '@croquet/react'
1+
import { App, useSetSession } from '@multisynq/react'
22
import { useCallback } from 'react'
33

44
export default function useCreateRandomSession() {

packages/react-together/src/hooks/useFunctionTogether.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
import { useCroquetContext } from '@croquet/react'
1+
import { useMultisynqContext } from '@multisynq/react'
22
import { useCallback, useEffect } from 'react'
33

44
export default function useFunctionTogether<
55
T extends (...args: Parameters<T>) => void
66
>(rtKey: string, callback: T): T {
7-
const { view, model } = useCroquetContext()
7+
const { view, model } = useMultisynqContext()
88

99
useEffect(() => {
1010
if (view) {

packages/react-together/src/hooks/useJoinUrl.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { useSessionParams } from '@croquet/react'
1+
import { useSessionParams } from '@multisynq/react'
22
import { useMemo } from 'react'
33
import { useIsTogether } from '.'
44
import { getJoinUrl } from '../utils'

packages/react-together/src/hooks/useLeaveSession.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { useLeaveSession as uls } from '@croquet/react'
1+
import { useLeaveSession as uls } from '@multisynq/react'
22
import { useCallback } from 'react'
33
import { getCleanUrl } from '../utils'
44

packages/react-together/src/hooks/useMyId.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { useModelRoot, useViewId } from '@croquet/react'
1+
import { useModelRoot, useViewId } from '@multisynq/react'
22
import ReactTogetherModel, { getUserId } from '../models/ReactTogetherModel'
33

44
export default function useMyId() {

packages/react-together/src/hooks/useStateTogether.ts

+7-7
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
import { useCroquetContext } from '@croquet/react'
1+
import { useMultisynqContext } from '@multisynq/react'
22
import {
3-
Dispatch,
4-
SetStateAction,
5-
useCallback,
6-
useEffect,
7-
useState
3+
Dispatch,
4+
SetStateAction,
5+
useCallback,
6+
useEffect,
7+
useState
88
} from 'react'
99
import ReactTogetherModel from '../models/ReactTogetherModel'
1010
import getNewValue from './getNewValue'
@@ -29,7 +29,7 @@ export default function useStateTogether<T>(
2929
// If no session is active, it behaves like a normal useState hook,
3030
// maintaining local state only.
3131

32-
const { session, view, model } = useCroquetContext<ReactTogetherModel>()
32+
const { session, view, model } = useMultisynqContext<ReactTogetherModel>()
3333

3434
const [value, set_value] = useState<T>(() => {
3535
// This function runs only during the initial render.

packages/react-together/src/hooks/useStateTogetherWithPerUserValues.ts

+7-7
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
import { useCroquetContext } from '@croquet/react'
1+
import { useMultisynqContext } from '@multisynq/react'
22
import hash_fn, { NotUndefined } from 'object-hash'
33
import {
4-
Dispatch,
5-
SetStateAction,
6-
useCallback,
7-
useEffect,
8-
useState
4+
Dispatch,
5+
SetStateAction,
6+
useCallback,
7+
useEffect,
8+
useState
99
} from 'react'
1010
import ReactTogetherModel from '../models/ReactTogetherModel'
1111
import getNewValue from './getNewValue'
@@ -129,7 +129,7 @@ export default function useStateTogetherWithPerUserValues<
129129
// https://react.dev/reference/react/useState
130130
const [actualInitialValue] = useState(initialValue)
131131

132-
const { session, view, model } = useCroquetContext<ReactTogetherModel>()
132+
const { session, view, model } = useMultisynqContext<ReactTogetherModel>()
133133
const myId = useMyId()
134134

135135
const [allValuesState, setAllValuesState] = useState<LocalState<T>>(() => {

packages/react-together/src/index.ts

+5-4
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
// Re-export @croquet/react as is into CroquetReact
2-
// export type { CroquetSession, CroquetSessionParameters } from '@croquet/react'
3-
import * as CroquetReact from '@croquet/react'
4-
export { CroquetReact }
1+
// Re-export @multisynq/react as is into MultisynqReact
2+
// export type { MultisynqSession, MultisynqSessionParameters } from '@multisynq/react'
3+
import * as MultisynqReact from '@multisynq/react'
4+
export { MultisynqReact }
55

66
export * from './components'
77
export * from './hooks'
88
export * from './models'
99
export * as utils from './utils'
10+

packages/react-together/src/models/ChatModel.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { ReactModel } from '@croquet/react'
1+
import { ReactModel } from '@multisynq/react'
22
import { ChatMessage } from '../components/Chat'
33

44
interface SendMessageArgs {

packages/react-together/src/models/ReactTogetherModel.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { ReactModel, ViewInfo } from '@croquet/react'
1+
import { ReactModel, ViewInfo } from '@multisynq/react'
22
import { UseStateTogetherWithPerUserValuesOptions } from '../hooks/useStateTogetherWithPerUserValues'
33
import ChatModel from './ChatModel'
44

packages/react-together/vite.config.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export default defineConfig({
1818
external: (id) =>
1919
[
2020
'react',
21-
'@croquet',
21+
'@multisynq',
2222
'color-hash',
2323
'object-hash',
2424
'primereact',

playground/src/tinyRpg/components/Board.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import { CroquetReact } from 'react-together'
1+
import { MultisynqReact } from 'react-together'
22
import { CELL_SIZE } from '../constants'
33
import { OverrideModel } from '../models'
44

5-
const { useModelSelector } = CroquetReact
5+
const { useModelSelector } = MultisynqReact
66

77
export default function Board() {
88
const GRID_HEIGHT =

playground/src/tinyRpg/components/Coins.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
import { CroquetReact } from 'react-together'
1+
import { MultisynqReact } from 'react-together'
22
import { Coin } from '../components'
33
import { OverrideModel } from '../models'
44
import { numberToPosition } from '../models/TinyRpgModel'
55

6-
const { useModelSelector } = CroquetReact
6+
const { useModelSelector } = MultisynqReact
77

88
export default function Coins() {
99
const coins = useModelSelector((model: OverrideModel) =>

playground/src/tinyRpg/components/MultipleModels.tsx

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import { useState } from 'react'
2-
import { CroquetReact, useMyId, useStateTogether } from 'react-together'
2+
import { MultisynqReact, useMyId, useStateTogether } from 'react-together'
33
import { OverrideModel } from '../models'
44
import TinyRpgTogether from './TinyRpgTogether'
55

6-
const { useModelRoot, usePublish, useSubscribe } = CroquetReact
6+
const { useModelRoot, usePublish, useSubscribe } = MultisynqReact
77

88
export function MultipleModels() {
99
const [count, setCount] = useStateTogether('count', 0)
@@ -20,7 +20,7 @@ export function MultipleModels() {
2020
<div className="flex justify-center gap-5 mt-5">
2121
<div>
2222
<h6>
23-
<pre>Croquet.Model </pre>Auto-Counter
23+
<pre>Multisynq.Model </pre>Auto-Counter
2424
</h6>
2525
<div className="text-xs text-neutral-500">Click to reset</div>
2626
<button className="text-xl" onClick={() => publishReset()}>

playground/src/tinyRpg/components/Player.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import { CroquetReact } from 'react-together'
1+
import { MultisynqReact } from 'react-together'
22
import { CELL_SIZE } from '../constants'
33
import { OverrideModel } from '../models'
44

5-
const { useModelSelector } = CroquetReact
5+
const { useModelSelector } = MultisynqReact
66

77
const stringToColor = (s: string) => {
88
return [

playground/src/tinyRpg/components/Players.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
import { CroquetReact } from 'react-together'
1+
import { MultisynqReact } from 'react-together'
22
import { OverrideModel } from '../models'
33
import Player from './Player'
4-
const { useModelSelector } = CroquetReact
4+
const { useModelSelector } = MultisynqReact
55

66
export default function Players() {
77
const players = useModelSelector((m: OverrideModel) => [

playground/src/tinyRpg/components/ScoreLabel.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import { CroquetReact, useMyId } from 'react-together'
1+
import { MultisynqReact, useMyId } from 'react-together'
22
import { OverrideModel } from '../models'
33
import Label from './Label'
44

5-
const { useModelSelector } = CroquetReact
5+
const { useModelSelector } = MultisynqReact
66

77
export default function ScoreLabel() {
88
const myId = useMyId()!

playground/src/tinyRpg/components/TeamScoreLabel.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import { CroquetReact } from 'react-together'
1+
import { MultisynqReact } from 'react-together'
22
import { OverrideModel } from '../models'
33
import Label from './Label'
44

5-
const { useModelSelector } = CroquetReact
5+
const { useModelSelector } = MultisynqReact
66

77
export default function TeamScoreLabel() {
88
const value = useModelSelector((m: OverrideModel) =>

playground/src/tinyRpg/components/TinyRpgTogether.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
import { useCallback, useEffect } from 'react'
2-
import { CroquetReact, useMyId } from 'react-together'
2+
import { MultisynqReact, useMyId } from 'react-together'
33
import { ArrowButtons, Board, Coins, Players, Scores } from '.'
44
import { OverrideModel } from '../models'
55
import { MoveArgs } from '../models/TinyRpgModel'
66

7-
const { useModelSelector, usePublish } = CroquetReact
7+
const { useModelSelector, usePublish } = MultisynqReact
88

99
export default function TinyRpgTogether() {
1010
// console.log('<TinyRpg/>')

playground/src/tinyRpg/models/CounterModel.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import { CroquetReact } from 'react-together'
1+
import { MultisynqReact } from 'react-together'
22

3-
const { Model } = CroquetReact
3+
const { Model } = MultisynqReact
44

55
export default class CounterModel extends Model {
66
count: number

playground/src/tinyRpg/models/TinyRpgModel.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import { CroquetReact } from 'react-together'
1+
import { MultisynqReact } from 'react-together';
22

3-
const { ReactModel } = CroquetReact
3+
const { ReactModel } = MultisynqReact
44

55
export type Direction = 'up' | 'down' | 'left' | 'right'
66
export type Position = { x: number; y: number }

0 commit comments

Comments
 (0)