atom.io 0.33.4 → 0.33.6
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/data/index.d.ts +2 -7
- package/dist/data/index.d.ts.map +1 -1
- package/dist/eslint-plugin/index.d.ts +0 -6
- package/dist/eslint-plugin/index.d.ts.map +1 -1
- package/dist/internal/index.d.ts +12 -100
- package/dist/internal/index.d.ts.map +1 -1
- package/dist/internal/index.js +35 -35
- package/dist/internal/index.js.map +1 -1
- package/dist/introspection/index.d.ts +0 -8
- package/dist/introspection/index.d.ts.map +1 -1
- package/dist/introspection/index.js +9 -9
- package/dist/introspection/index.js.map +1 -1
- package/dist/json/index.d.ts +1 -6
- package/dist/json/index.d.ts.map +1 -1
- package/dist/main/index.d.ts +3 -28
- package/dist/main/index.d.ts.map +1 -1
- package/dist/main/index.js +4 -6
- package/dist/main/index.js.map +1 -1
- package/dist/react/index.d.ts +0 -5
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +7 -11
- package/dist/react/index.js.map +1 -1
- package/dist/react-devtools/index.css +9 -7
- package/dist/react-devtools/index.css.map +1 -1
- package/dist/react-devtools/index.d.ts +1 -12
- package/dist/react-devtools/index.d.ts.map +1 -1
- package/dist/react-devtools/index.js +7 -4
- package/dist/react-devtools/index.js.map +1 -1
- package/dist/realtime/index.d.ts +0 -2
- package/dist/realtime/index.d.ts.map +1 -1
- package/dist/realtime/index.js.map +1 -1
- package/dist/realtime-client/index.d.ts +13 -38
- package/dist/realtime-client/index.d.ts.map +1 -1
- package/dist/realtime-client/index.js +4 -6
- package/dist/realtime-client/index.js.map +1 -1
- package/dist/realtime-react/index.d.ts +7 -25
- package/dist/realtime-react/index.d.ts.map +1 -1
- package/dist/realtime-react/index.js +23 -42
- package/dist/realtime-react/index.js.map +1 -1
- package/dist/realtime-server/index.d.ts +11 -31
- package/dist/realtime-server/index.d.ts.map +1 -1
- package/dist/realtime-server/index.js +6 -6
- package/dist/realtime-server/index.js.map +1 -1
- package/dist/realtime-testing/index.d.ts +0 -1
- package/dist/realtime-testing/index.js +1 -1
- package/dist/realtime-testing/index.js.map +1 -1
- package/dist/transceivers/set-rtx/index.d.ts +0 -1
- package/dist/web/index.d.ts +0 -1
- package/package.json +37 -28
- package/src/internal/families/dispose-from-store.ts +1 -1
- package/src/internal/mutable/create-mutable-atom.ts +2 -6
- package/src/internal/set-state/set-into-store.ts +1 -1
- package/src/internal/store/withdraw.ts +13 -13
- package/src/internal/timeline/time-travel.ts +0 -2
- package/src/introspection/attach-type-selectors.ts +1 -1
- package/src/main/index.ts +2 -8
- package/src/main/logger.ts +2 -2
- package/src/react-devtools/AtomIODevtools.tsx +2 -2
- package/src/react-devtools/StateEditor.tsx +1 -5
- package/src/react-devtools/Updates.tsx +3 -5
- package/src/react-devtools/devtools.css +9 -7
- package/src/react-devtools/elastic-input/NumberInput.tsx +1 -1
- package/src/react-devtools/error-boundary/ReactErrorBoundary.tsx +1 -1
- package/src/react-devtools/json-editor/developer-interface.tsx +1 -1
- package/src/react-devtools/json-editor/editors-by-type/utilities/cast-json.ts +1 -1
- package/src/realtime/shared-room-store.ts +0 -3
- package/src/realtime-react/use-pull-selector.ts +0 -1
- package/src/realtime-react/use-single-effect.ts +2 -0
- package/src/realtime-server/continuity/prepare-to-sync-realtime-continuity.ts +1 -1
- package/src/realtime-server/continuity/subscribe-to-continuity-actions.ts +0 -2
- package/src/realtime-server/ipc-sockets/parent-socket.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["effect: () => (() => void) | undefined | void","deps: unknown[]","effect: () => (() => void) | undefined | void","RealtimeContext: React.Context<RealtimeReactStore>","RealtimeProvider: React.FC<{\n\tchildren: React.ReactNode\n\tsocket: Socket | null\n}>","RTC","key: string","create: (socket: Socket) => (() => void) | undefined","token: AtomIO.RegularAtomToken<J>","family: AtomIO.RegularAtomFamilyToken<J, K>","subKey: Key","token: AtomIO.MutableAtomToken<T, J>","familyToken: AtomIO.MutableAtomFamilyToken<T, J, K>","key: Key","token: AtomIO.SelectorToken<J>","familyToken: AtomIO.SelectorFamilyToken<T, K>","key: Key","token: AtomIO.WritableToken<J>","token: AtomIO.TransactionToken<F>","token: ContinuityToken"],"sources":["../../src/realtime-react/use-single-effect.ts","../../src/realtime-react/on-mount.ts","../../src/realtime-react/realtime-context.tsx","../../src/realtime-react/use-realtime-service.ts","../../src/realtime-react/use-pull-atom.ts","../../src/realtime-react/use-pull-atom-family-member.ts","../../src/realtime-react/use-pull-mutable-atom.ts","../../src/realtime-react/use-pull-mutable-family-member.ts","../../src/realtime-react/use-pull-selector.ts","../../src/realtime-react/use-pull-selector-family-member.ts","../../src/realtime-react/use-push.ts","../../src/realtime-react/use-server-action.ts","../../src/realtime-react/use-sync-continuity.ts"],"sourcesContent":["import * as React from \"react\"\n\n// @ts-expect-error this is a safe way to check a property on the global object\nconst { NODE_ENV } = globalThis[`env`] ?? {}\nconst IN_DEV = NODE_ENV === `development`\n\nfunction noop() {}\n\nexport function useSingleEffect(\n\teffect: () => (() => void) | undefined | void,\n\tdeps: unknown[],\n): void {\n\tif (IN_DEV) {\n\t\tconst cleanup = React.useRef<() => void>(noop)\n\t\tReact.useEffect(() => {\n\t\t\tlet dispose = cleanup.current\n\t\t\tif (dispose === noop) {\n\t\t\t\tdispose = effect() ?? noop\n\t\t\t\tcleanup.current = dispose\n\t\t\t} else {\n\t\t\t\treturn () => {\n\t\t\t\t\tdispose()\n\t\t\t\t\tcleanup.current = noop\n\t\t\t\t}\n\t\t\t}\n\t\t}, deps)\n\t} else {\n\t\tReact.useEffect(effect, deps)\n\t}\n}\n","import { useSingleEffect } from \"./use-single-effect\"\n\nexport function onMount(effect: () => (() => void) | undefined | void): void {\n\tuseSingleEffect(effect, [])\n}\n","import { useI } from \"atom.io/react\"\nimport * as RTC from \"atom.io/realtime-client\"\nimport * as React from \"react\"\nimport type { Socket } from \"socket.io-client\"\n\nexport type RealtimeReactStore = {\n\tsocket: Socket | null\n\tservices: Map<\n\t\tstring,\n\t\t[consumerCount: number, dispose: (() => void) | undefined]\n\t> | null\n}\n\nexport const RealtimeContext: React.Context<RealtimeReactStore> =\n\tReact.createContext({\n\t\tsocket: null,\n\t\tservices: null,\n\t})\n\nexport const RealtimeProvider: React.FC<{\n\tchildren: React.ReactNode\n\tsocket: Socket | null\n}> = ({ children, socket }) => {\n\tconst services = React.useRef(new Map<string, [number, () => void]>()).current\n\tconst setMyId = useI(RTC.myIdState__INTERNAL)\n\tReact.useEffect(() => {\n\t\tsetMyId(socket?.id)\n\t\tsocket?.on(`connect`, () => {\n\t\t\tsetMyId(socket.id)\n\t\t})\n\t\tsocket?.on(`disconnect`, () => {\n\t\t\tsetMyId(undefined)\n\t\t})\n\t}, [socket, setMyId])\n\treturn (\n\t\t<RealtimeContext.Provider value={{ socket, services }}>\n\t\t\t{children}\n\t\t</RealtimeContext.Provider>\n\t)\n}\n","import * as React from \"react\"\nimport type { Socket } from \"socket.io-client\"\n\nimport { onMount } from \"./on-mount\"\nimport { RealtimeContext } from \"./realtime-context\"\n\nexport function useRealtimeService(\n\tkey: string,\n\tcreate: (socket: Socket) => (() => void) | undefined,\n): void {\n\tconst { socket, services } = React.useContext(RealtimeContext)\n\tonMount(() => {\n\t\tlet service = services?.get(key)\n\t\tif (service) {\n\t\t\tservice[0]++\n\t\t} else {\n\t\t\tconst dispose = socket ? create(socket) : undefined\n\t\t\tservice = [1, dispose]\n\t\t\tservices?.set(key, service)\n\t\t}\n\t\treturn () => {\n\t\t\tif (service) {\n\t\t\t\tservice[0]--\n\t\t\t\tif (service[0] === 0) {\n\t\t\t\t\tservice[1]?.()\n\t\t\t\t\tservices?.delete(key)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t})\n}\n","import type * as AtomIO from \"atom.io\"\nimport type { Json } from \"atom.io/json\"\nimport { StoreContext, useO } from \"atom.io/react\"\nimport * as RTC from \"atom.io/realtime-client\"\nimport * as React from \"react\"\n\nimport { useRealtimeService } from \"./use-realtime-service\"\n\nexport function usePullAtom<J extends Json.Serializable>(\n\ttoken: AtomIO.RegularAtomToken<J>,\n): J {\n\tconst store = React.useContext(StoreContext)\n\tuseRealtimeService(`pull:${token.key}`, (socket) =>\n\t\tRTC.pullAtom(store, socket, token),\n\t)\n\treturn useO(token)\n}\n","import type * as AtomIO from \"atom.io\"\nimport { findInStore } from \"atom.io/internal\"\nimport type { Canonical, Json } from \"atom.io/json\"\nimport { StoreContext, useO } from \"atom.io/react\"\nimport * as RTC from \"atom.io/realtime-client\"\nimport * as React from \"react\"\n\nimport { useRealtimeService } from \"./use-realtime-service\"\n\nexport function usePullAtomFamilyMember<\n\tJ extends Json.Serializable,\n\tK extends Canonical,\n\tKey extends K,\n>(family: AtomIO.RegularAtomFamilyToken<J, K>, subKey: Key): J {\n\tconst store = React.useContext(StoreContext)\n\tconst token = findInStore(store, family, subKey)\n\tuseRealtimeService(`pull:${token.key}`, (socket) =>\n\t\tRTC.pullAtomFamilyMember(store, socket, token),\n\t)\n\treturn useO(token)\n}\n","import type * as AtomIO from \"atom.io\"\nimport type { Transceiver } from \"atom.io/internal\"\nimport type { Json } from \"atom.io/json\"\nimport { StoreContext, useO } from \"atom.io/react\"\nimport * as RTC from \"atom.io/realtime-client\"\nimport * as React from \"react\"\n\nimport { useRealtimeService } from \"./use-realtime-service\"\n\nexport function usePullMutable<\n\tT extends Transceiver<any>,\n\tJ extends Json.Serializable,\n>(token: AtomIO.MutableAtomToken<T, J>): T {\n\tconst store = React.useContext(StoreContext)\n\tuseRealtimeService(`pull:${token.key}`, (socket) =>\n\t\tRTC.pullMutableAtom(store, socket, token),\n\t)\n\treturn useO(token)\n}\n","import type * as AtomIO from \"atom.io\"\nimport type { Transceiver } from \"atom.io/internal\"\nimport { findInStore } from \"atom.io/internal\"\nimport type { Canonical, Json } from \"atom.io/json\"\nimport { StoreContext, useO } from \"atom.io/react\"\nimport * as RTC from \"atom.io/realtime-client\"\nimport * as React from \"react\"\n\nimport { useRealtimeService } from \"./use-realtime-service\"\n\nexport function usePullMutableAtomFamilyMember<\n\tT extends Transceiver<any>,\n\tJ extends Json.Serializable,\n\tK extends Canonical,\n\tKey extends K,\n>(familyToken: AtomIO.MutableAtomFamilyToken<T, J, K>, key: Key): T {\n\tconst store = React.useContext(StoreContext)\n\tconst token = findInStore(store, familyToken, key)\n\tuseRealtimeService(`pull:${token.key}`, (socket) =>\n\t\tRTC.pullMutableAtomFamilyMember(store, socket, token),\n\t)\n\treturn useO(token)\n}\n","import type * as AtomIO from \"atom.io\"\nimport { findInStore } from \"atom.io/internal\"\nimport type { Json } from \"atom.io/json\"\nimport { StoreContext, useO } from \"atom.io/react\"\nimport * as RTC from \"atom.io/realtime-client\"\nimport * as React from \"react\"\n\nimport { useRealtimeService } from \"./use-realtime-service\"\n\nexport function usePullSelector<J extends Json.Serializable>(\n\ttoken: AtomIO.SelectorToken<J>,\n): J {\n\tconst store = React.useContext(StoreContext)\n\tuseRealtimeService(`pull:${token.key}`, (socket) =>\n\t\tRTC.pullSelector(store, socket, token),\n\t)\n\treturn useO(token)\n}\n","import type * as AtomIO from \"atom.io\"\nimport { findInStore } from \"atom.io/internal\"\nimport type { Canonical } from \"atom.io/json\"\nimport { StoreContext, useO } from \"atom.io/react\"\nimport * as RTC from \"atom.io/realtime-client\"\nimport * as React from \"react\"\n\nimport { useRealtimeService } from \"./use-realtime-service\"\n\nexport function usePullSelectorFamilyMember<\n\tT,\n\tK extends Canonical,\n\tKey extends K,\n>(familyToken: AtomIO.SelectorFamilyToken<T, K>, key: Key): T {\n\tconst store = React.useContext(StoreContext)\n\tconst token = findInStore(store, familyToken, key)\n\tuseRealtimeService(`pull:${token.key}`, (socket) =>\n\t\tRTC.pullSelectorFamilyMember(store, socket, token),\n\t)\n\n\treturn useO(token)\n}\n","import type * as AtomIO from \"atom.io\"\nimport type { Json } from \"atom.io/json\"\nimport { StoreContext, useI } from \"atom.io/react\"\nimport * as RTC from \"atom.io/realtime-client\"\nimport * as React from \"react\"\n\nimport { useRealtimeService } from \"./use-realtime-service\"\n\nexport function usePush<J extends Json.Serializable>(\n\ttoken: AtomIO.WritableToken<J>,\n): <New extends J>(next: New | ((old: J) => New)) => void {\n\tconst store = React.useContext(StoreContext)\n\tuseRealtimeService(`push:${token.key}`, (socket) =>\n\t\tRTC.pushState(store, socket, token),\n\t)\n\treturn useI(token)\n}\n","import type * as AtomIO from \"atom.io\"\nimport type { Func } from \"atom.io/internal\"\nimport { actUponStore, arbitrary } from \"atom.io/internal\"\nimport { StoreContext } from \"atom.io/react\"\nimport * as RTC from \"atom.io/realtime-client\"\nimport * as React from \"react\"\n\nimport { useRealtimeService } from \"./use-realtime-service\"\n\nexport function useServerAction<F extends Func>(\n\ttoken: AtomIO.TransactionToken<F>,\n): (...parameters: Parameters<F>) => ReturnType<F> {\n\tconst store = React.useContext(StoreContext)\n\n\tuseRealtimeService(`tx:${token.key}`, (socket) =>\n\t\tRTC.serverAction(store, socket, token),\n\t)\n\treturn actUponStore(store, token, arbitrary())\n}\n","import { StoreContext } from \"atom.io/react\"\nimport type { ContinuityToken } from \"atom.io/realtime\"\nimport { syncContinuity } from \"atom.io/realtime-client\"\nimport * as React from \"react\"\n\nimport { useRealtimeService } from \"./use-realtime-service\"\n\nexport function useSyncContinuity(token: ContinuityToken): void {\n\tconst store = React.useContext(StoreContext)\n\tuseRealtimeService(`tx-sync:${token.key}`, (socket) => {\n\t\treturn syncContinuity(store, socket, token)\n\t})\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["effect: () => (() => void) | undefined | void","deps: unknown[]","effect: () => (() => void) | undefined | void","RealtimeContext: React.Context<RealtimeReactStore>","RealtimeProvider: React.FC<{\n\tchildren: React.ReactNode\n\tsocket: Socket | null\n}>","key: string","create: (socket: Socket) => (() => void) | undefined","token: AtomIO.RegularAtomToken<J>","family: AtomIO.RegularAtomFamilyToken<J, K>","subKey: Key","token: AtomIO.MutableAtomToken<T, J>","familyToken: AtomIO.MutableAtomFamilyToken<T, J, K>","key: Key","token: AtomIO.SelectorToken<J>","familyToken: AtomIO.SelectorFamilyToken<T, K>","key: Key","token: AtomIO.WritableToken<J>","token: AtomIO.TransactionToken<F>","token: ContinuityToken"],"sources":["../../src/realtime-react/use-single-effect.ts","../../src/realtime-react/on-mount.ts","../../src/realtime-react/realtime-context.tsx","../../src/realtime-react/use-realtime-service.ts","../../src/realtime-react/use-pull-atom.ts","../../src/realtime-react/use-pull-atom-family-member.ts","../../src/realtime-react/use-pull-mutable-atom.ts","../../src/realtime-react/use-pull-mutable-family-member.ts","../../src/realtime-react/use-pull-selector.ts","../../src/realtime-react/use-pull-selector-family-member.ts","../../src/realtime-react/use-push.ts","../../src/realtime-react/use-server-action.ts","../../src/realtime-react/use-sync-continuity.ts"],"sourcesContent":["/** biome-ignore-all lint/correctness/useHookAtTopLevel: intentional */\n\nimport * as React from \"react\"\n\n// @ts-expect-error this is a safe way to check a property on the global object\nconst { NODE_ENV } = globalThis[`env`] ?? {}\nconst IN_DEV = NODE_ENV === `development`\n\nfunction noop() {}\n\nexport function useSingleEffect(\n\teffect: () => (() => void) | undefined | void,\n\tdeps: unknown[],\n): void {\n\tif (IN_DEV) {\n\t\tconst cleanup = React.useRef<() => void>(noop)\n\t\tReact.useEffect(() => {\n\t\t\tlet dispose = cleanup.current\n\t\t\tif (dispose === noop) {\n\t\t\t\tdispose = effect() ?? noop\n\t\t\t\tcleanup.current = dispose\n\t\t\t} else {\n\t\t\t\treturn () => {\n\t\t\t\t\tdispose()\n\t\t\t\t\tcleanup.current = noop\n\t\t\t\t}\n\t\t\t}\n\t\t}, deps)\n\t} else {\n\t\tReact.useEffect(effect, deps)\n\t}\n}\n","import { useSingleEffect } from \"./use-single-effect\"\n\nexport function onMount(effect: () => (() => void) | undefined | void): void {\n\tuseSingleEffect(effect, [])\n}\n","import { useI } from \"atom.io/react\"\nimport * as RTC from \"atom.io/realtime-client\"\nimport * as React from \"react\"\nimport type { Socket } from \"socket.io-client\"\n\nexport type RealtimeReactStore = {\n\tsocket: Socket | null\n\tservices: Map<\n\t\tstring,\n\t\t[consumerCount: number, dispose: (() => void) | undefined]\n\t> | null\n}\n\nexport const RealtimeContext: React.Context<RealtimeReactStore> =\n\tReact.createContext({\n\t\tsocket: null,\n\t\tservices: null,\n\t})\n\nexport const RealtimeProvider: React.FC<{\n\tchildren: React.ReactNode\n\tsocket: Socket | null\n}> = ({ children, socket }) => {\n\tconst services = React.useRef(new Map<string, [number, () => void]>()).current\n\tconst setMyId = useI(RTC.myIdState__INTERNAL)\n\tReact.useEffect(() => {\n\t\tsetMyId(socket?.id)\n\t\tsocket?.on(`connect`, () => {\n\t\t\tsetMyId(socket.id)\n\t\t})\n\t\tsocket?.on(`disconnect`, () => {\n\t\t\tsetMyId(undefined)\n\t\t})\n\t}, [socket, setMyId])\n\treturn (\n\t\t<RealtimeContext.Provider value={{ socket, services }}>\n\t\t\t{children}\n\t\t</RealtimeContext.Provider>\n\t)\n}\n","import * as React from \"react\"\nimport type { Socket } from \"socket.io-client\"\n\nimport { onMount } from \"./on-mount\"\nimport { RealtimeContext } from \"./realtime-context\"\n\nexport function useRealtimeService(\n\tkey: string,\n\tcreate: (socket: Socket) => (() => void) | undefined,\n): void {\n\tconst { socket, services } = React.useContext(RealtimeContext)\n\tonMount(() => {\n\t\tlet service = services?.get(key)\n\t\tif (service) {\n\t\t\tservice[0]++\n\t\t} else {\n\t\t\tconst dispose = socket ? create(socket) : undefined\n\t\t\tservice = [1, dispose]\n\t\t\tservices?.set(key, service)\n\t\t}\n\t\treturn () => {\n\t\t\tif (service) {\n\t\t\t\tservice[0]--\n\t\t\t\tif (service[0] === 0) {\n\t\t\t\t\tservice[1]?.()\n\t\t\t\t\tservices?.delete(key)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t})\n}\n","import type * as AtomIO from \"atom.io\"\nimport type { Json } from \"atom.io/json\"\nimport { StoreContext, useO } from \"atom.io/react\"\nimport * as RTC from \"atom.io/realtime-client\"\nimport * as React from \"react\"\n\nimport { useRealtimeService } from \"./use-realtime-service\"\n\nexport function usePullAtom<J extends Json.Serializable>(\n\ttoken: AtomIO.RegularAtomToken<J>,\n): J {\n\tconst store = React.useContext(StoreContext)\n\tuseRealtimeService(`pull:${token.key}`, (socket) =>\n\t\tRTC.pullAtom(store, socket, token),\n\t)\n\treturn useO(token)\n}\n","import type * as AtomIO from \"atom.io\"\nimport { findInStore } from \"atom.io/internal\"\nimport type { Canonical, Json } from \"atom.io/json\"\nimport { StoreContext, useO } from \"atom.io/react\"\nimport * as RTC from \"atom.io/realtime-client\"\nimport * as React from \"react\"\n\nimport { useRealtimeService } from \"./use-realtime-service\"\n\nexport function usePullAtomFamilyMember<\n\tJ extends Json.Serializable,\n\tK extends Canonical,\n\tKey extends K,\n>(family: AtomIO.RegularAtomFamilyToken<J, K>, subKey: Key): J {\n\tconst store = React.useContext(StoreContext)\n\tconst token = findInStore(store, family, subKey)\n\tuseRealtimeService(`pull:${token.key}`, (socket) =>\n\t\tRTC.pullAtomFamilyMember(store, socket, token),\n\t)\n\treturn useO(token)\n}\n","import type * as AtomIO from \"atom.io\"\nimport type { Transceiver } from \"atom.io/internal\"\nimport type { Json } from \"atom.io/json\"\nimport { StoreContext, useO } from \"atom.io/react\"\nimport * as RTC from \"atom.io/realtime-client\"\nimport * as React from \"react\"\n\nimport { useRealtimeService } from \"./use-realtime-service\"\n\nexport function usePullMutable<\n\tT extends Transceiver<any>,\n\tJ extends Json.Serializable,\n>(token: AtomIO.MutableAtomToken<T, J>): T {\n\tconst store = React.useContext(StoreContext)\n\tuseRealtimeService(`pull:${token.key}`, (socket) =>\n\t\tRTC.pullMutableAtom(store, socket, token),\n\t)\n\treturn useO(token)\n}\n","import type * as AtomIO from \"atom.io\"\nimport type { Transceiver } from \"atom.io/internal\"\nimport { findInStore } from \"atom.io/internal\"\nimport type { Canonical, Json } from \"atom.io/json\"\nimport { StoreContext, useO } from \"atom.io/react\"\nimport * as RTC from \"atom.io/realtime-client\"\nimport * as React from \"react\"\n\nimport { useRealtimeService } from \"./use-realtime-service\"\n\nexport function usePullMutableAtomFamilyMember<\n\tT extends Transceiver<any>,\n\tJ extends Json.Serializable,\n\tK extends Canonical,\n\tKey extends K,\n>(familyToken: AtomIO.MutableAtomFamilyToken<T, J, K>, key: Key): T {\n\tconst store = React.useContext(StoreContext)\n\tconst token = findInStore(store, familyToken, key)\n\tuseRealtimeService(`pull:${token.key}`, (socket) =>\n\t\tRTC.pullMutableAtomFamilyMember(store, socket, token),\n\t)\n\treturn useO(token)\n}\n","import type * as AtomIO from \"atom.io\"\nimport type { Json } from \"atom.io/json\"\nimport { StoreContext, useO } from \"atom.io/react\"\nimport * as RTC from \"atom.io/realtime-client\"\nimport * as React from \"react\"\n\nimport { useRealtimeService } from \"./use-realtime-service\"\n\nexport function usePullSelector<J extends Json.Serializable>(\n\ttoken: AtomIO.SelectorToken<J>,\n): J {\n\tconst store = React.useContext(StoreContext)\n\tuseRealtimeService(`pull:${token.key}`, (socket) =>\n\t\tRTC.pullSelector(store, socket, token),\n\t)\n\treturn useO(token)\n}\n","import type * as AtomIO from \"atom.io\"\nimport { findInStore } from \"atom.io/internal\"\nimport type { Canonical } from \"atom.io/json\"\nimport { StoreContext, useO } from \"atom.io/react\"\nimport * as RTC from \"atom.io/realtime-client\"\nimport * as React from \"react\"\n\nimport { useRealtimeService } from \"./use-realtime-service\"\n\nexport function usePullSelectorFamilyMember<\n\tT,\n\tK extends Canonical,\n\tKey extends K,\n>(familyToken: AtomIO.SelectorFamilyToken<T, K>, key: Key): T {\n\tconst store = React.useContext(StoreContext)\n\tconst token = findInStore(store, familyToken, key)\n\tuseRealtimeService(`pull:${token.key}`, (socket) =>\n\t\tRTC.pullSelectorFamilyMember(store, socket, token),\n\t)\n\n\treturn useO(token)\n}\n","import type * as AtomIO from \"atom.io\"\nimport type { Json } from \"atom.io/json\"\nimport { StoreContext, useI } from \"atom.io/react\"\nimport * as RTC from \"atom.io/realtime-client\"\nimport * as React from \"react\"\n\nimport { useRealtimeService } from \"./use-realtime-service\"\n\nexport function usePush<J extends Json.Serializable>(\n\ttoken: AtomIO.WritableToken<J>,\n): <New extends J>(next: New | ((old: J) => New)) => void {\n\tconst store = React.useContext(StoreContext)\n\tuseRealtimeService(`push:${token.key}`, (socket) =>\n\t\tRTC.pushState(store, socket, token),\n\t)\n\treturn useI(token)\n}\n","import type * as AtomIO from \"atom.io\"\nimport type { Func } from \"atom.io/internal\"\nimport { actUponStore, arbitrary } from \"atom.io/internal\"\nimport { StoreContext } from \"atom.io/react\"\nimport * as RTC from \"atom.io/realtime-client\"\nimport * as React from \"react\"\n\nimport { useRealtimeService } from \"./use-realtime-service\"\n\nexport function useServerAction<F extends Func>(\n\ttoken: AtomIO.TransactionToken<F>,\n): (...parameters: Parameters<F>) => ReturnType<F> {\n\tconst store = React.useContext(StoreContext)\n\n\tuseRealtimeService(`tx:${token.key}`, (socket) =>\n\t\tRTC.serverAction(store, socket, token),\n\t)\n\treturn actUponStore(store, token, arbitrary())\n}\n","import { StoreContext } from \"atom.io/react\"\nimport type { ContinuityToken } from \"atom.io/realtime\"\nimport { syncContinuity } from \"atom.io/realtime-client\"\nimport * as React from \"react\"\n\nimport { useRealtimeService } from \"./use-realtime-service\"\n\nexport function useSyncContinuity(token: ContinuityToken): void {\n\tconst store = React.useContext(StoreContext)\n\tuseRealtimeService(`tx-sync:${token.key}`, (socket) => {\n\t\treturn syncContinuity(store, socket, token)\n\t})\n}\n"],"mappings":"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"}
|
|
@@ -1,10 +1,5 @@
|
|
|
1
1
|
import { Store, Subject, Transceiver } from "atom.io/internal";
|
|
2
2
|
import { Canonical, Json, JsonIO, stringified } from "atom.io/json";
|
|
3
|
-
import * as AtomIO$5 from "atom.io";
|
|
4
|
-
import * as AtomIO$4 from "atom.io";
|
|
5
|
-
import * as AtomIO$3 from "atom.io";
|
|
6
|
-
import * as AtomIO$2 from "atom.io";
|
|
7
|
-
import * as AtomIO$1 from "atom.io";
|
|
8
3
|
import * as AtomIO from "atom.io";
|
|
9
4
|
import { Hierarchy, JoinToken, Loadable, MutableAtomToken, ReadonlyPureSelectorFamilyToken, RegularAtomFamilyToken, TransactionUpdate, TransactionUpdateContent, WritableToken } from "atom.io";
|
|
10
5
|
import { SetRTX, SetRTXJson } from "atom.io/transceivers/set-rtx";
|
|
@@ -17,7 +12,6 @@ declare function prepareToExposeRealtimeContinuity({
|
|
|
17
12
|
socket: initialSocket,
|
|
18
13
|
store
|
|
19
14
|
}: ServerConfig): ExposeRealtimeContinuity;
|
|
20
|
-
|
|
21
15
|
//#endregion
|
|
22
16
|
//#region src/realtime-server/ipc-sockets/custom-socket.d.ts
|
|
23
17
|
type Events = Json.Object<string, Json.Serializable[]>;
|
|
@@ -37,7 +31,6 @@ declare class CustomSocket<I extends Events, O extends Events> implements Socket
|
|
|
37
31
|
off<Event extends keyof O>(event: Event, listener?: (...args: O[Event]) => void): this;
|
|
38
32
|
offAny(listener: (event: string, ...args: Json.Array) => void): this;
|
|
39
33
|
}
|
|
40
|
-
|
|
41
34
|
//#endregion
|
|
42
35
|
//#region src/realtime-server/ipc-sockets/child-socket.d.ts
|
|
43
36
|
/* eslint-disable no-console */
|
|
@@ -53,7 +46,6 @@ declare class ChildSocket<I extends Events, O extends Events> extends CustomSock
|
|
|
53
46
|
protected handleLog(arg: Json.Serializable): void;
|
|
54
47
|
constructor(process: ChildProcessWithoutNullStreams, key: string, logger?: Pick<Console, `error` | `info` | `warn`>);
|
|
55
48
|
}
|
|
56
|
-
|
|
57
49
|
//#endregion
|
|
58
50
|
//#region src/realtime-server/ipc-sockets/parent-socket.d.ts
|
|
59
51
|
declare class SubjectSocket<I extends Events, O extends Events> extends CustomSocket<I, O> {
|
|
@@ -84,55 +76,48 @@ declare class ParentSocket<I extends Events & { [id in string as `relay:${id}`]:
|
|
|
84
76
|
constructor();
|
|
85
77
|
relay(attachServices: (socket: SubjectSocket<any, any>) => (() => void) | void): void;
|
|
86
78
|
}
|
|
87
|
-
|
|
88
79
|
//#endregion
|
|
89
80
|
//#region src/realtime-server/realtime-action-receiver.d.ts
|
|
90
81
|
type ActionReceiver = ReturnType<typeof realtimeActionReceiver>;
|
|
91
82
|
declare function realtimeActionReceiver({
|
|
92
83
|
socket,
|
|
93
84
|
store
|
|
94
|
-
}: ServerConfig): <F extends JsonIO>(tx: AtomIO
|
|
95
|
-
|
|
85
|
+
}: ServerConfig): <F extends JsonIO>(tx: AtomIO.TransactionToken<F>) => () => void;
|
|
96
86
|
//#endregion
|
|
97
87
|
//#region src/realtime-server/realtime-family-provider.d.ts
|
|
98
88
|
type FamilyProvider = ReturnType<typeof realtimeAtomFamilyProvider>;
|
|
99
89
|
declare function realtimeAtomFamilyProvider({
|
|
100
90
|
socket,
|
|
101
91
|
store
|
|
102
|
-
}: ServerConfig): <J extends Json.Serializable, K extends Canonical>(family: AtomIO
|
|
103
|
-
|
|
92
|
+
}: ServerConfig): <J extends Json.Serializable, K extends Canonical>(family: AtomIO.RegularAtomFamilyToken<J, K>, index: AtomIO.ReadableToken<Iterable<K>>) => () => void;
|
|
104
93
|
//#endregion
|
|
105
94
|
//#region src/realtime-server/realtime-mutable-family-provider.d.ts
|
|
106
95
|
type MutableFamilyProvider = ReturnType<typeof realtimeMutableFamilyProvider>;
|
|
107
96
|
declare function realtimeMutableFamilyProvider({
|
|
108
97
|
socket,
|
|
109
98
|
store
|
|
110
|
-
}: ServerConfig): <T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical>(family: AtomIO
|
|
111
|
-
|
|
99
|
+
}: ServerConfig): <T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical>(family: AtomIO.MutableAtomFamilyToken<T, J, K>, index: AtomIO.ReadableToken<Iterable<K>>) => () => void;
|
|
112
100
|
//#endregion
|
|
113
101
|
//#region src/realtime-server/realtime-mutable-provider.d.ts
|
|
114
102
|
type MutableProvider = ReturnType<typeof realtimeMutableProvider>;
|
|
115
103
|
declare function realtimeMutableProvider({
|
|
116
104
|
socket,
|
|
117
105
|
store
|
|
118
|
-
}: ServerConfig): <Core extends Transceiver<Json.Serializable>, SerializableCore extends Json.Serializable>(token: AtomIO
|
|
119
|
-
|
|
106
|
+
}: ServerConfig): <Core extends Transceiver<Json.Serializable>, SerializableCore extends Json.Serializable>(token: AtomIO.MutableAtomToken<Core, SerializableCore>) => () => void;
|
|
120
107
|
//#endregion
|
|
121
108
|
//#region src/realtime-server/realtime-server-stores/server-room-external-actions.d.ts
|
|
122
|
-
declare const createRoomTX: AtomIO
|
|
123
|
-
type CreateRoomIO = AtomIO
|
|
124
|
-
declare const joinRoomTX: AtomIO
|
|
125
|
-
type JoinRoomIO = AtomIO
|
|
126
|
-
declare const leaveRoomTX: AtomIO
|
|
127
|
-
type LeaveRoomIO = AtomIO
|
|
128
|
-
declare const destroyRoomTX: AtomIO
|
|
129
|
-
|
|
109
|
+
declare const createRoomTX: AtomIO.TransactionToken<(roomId: string, script: string, options?: string[]) => Loadable<ChildSocket<any, any>>>;
|
|
110
|
+
type CreateRoomIO = AtomIO.TransactionIO<typeof createRoomTX>;
|
|
111
|
+
declare const joinRoomTX: AtomIO.TransactionToken<(roomId: string, userId: string, enteredAtEpoch: number) => UserInRoomMeta>;
|
|
112
|
+
type JoinRoomIO = AtomIO.TransactionIO<typeof joinRoomTX>;
|
|
113
|
+
declare const leaveRoomTX: AtomIO.TransactionToken<(roomId: string, userId: string) => void>;
|
|
114
|
+
type LeaveRoomIO = AtomIO.TransactionIO<typeof leaveRoomTX>;
|
|
115
|
+
declare const destroyRoomTX: AtomIO.TransactionToken<(roomId: string) => void>;
|
|
130
116
|
//#endregion
|
|
131
117
|
//#region src/realtime-server/realtime-server-stores/server-room-external-store.d.ts
|
|
132
118
|
type RoomArguments = [script: string, options: string[]] | [script: string];
|
|
133
119
|
declare const roomArgumentsAtoms: RegularAtomFamilyToken<RoomArguments, string>;
|
|
134
120
|
declare const roomSelectors: ReadonlyPureSelectorFamilyToken<Loadable<ChildSocket<any, any>>, string>;
|
|
135
|
-
|
|
136
121
|
//#endregion
|
|
137
122
|
//#region src/realtime-server/realtime-server-stores/server-user-store.d.ts
|
|
138
123
|
type SocketKey = `socket::${string}`;
|
|
@@ -146,7 +131,6 @@ declare const socketAtoms: RegularAtomFamilyToken<Socket | null, SocketKey>;
|
|
|
146
131
|
declare const socketIndex: MutableAtomToken<SetRTX<SocketKey>, SetRTXJson<SocketKey>>;
|
|
147
132
|
declare const userIndex: MutableAtomToken<SetRTX<UserKey>, SetRTXJson<UserKey>>;
|
|
148
133
|
declare const usersOfSockets: JoinToken<`user`, UserKey, `socket`, SocketKey, `1:1`>;
|
|
149
|
-
|
|
150
134
|
//#endregion
|
|
151
135
|
//#region src/realtime-server/realtime-server-stores/server-sync-store.d.ts
|
|
152
136
|
// export const completeUpdateAtoms = atomFamily<
|
|
@@ -178,7 +162,6 @@ declare const redactorAtoms: RegularAtomFamilyToken<{
|
|
|
178
162
|
// })
|
|
179
163
|
type ContinuitySyncTransactionUpdate = Pick<TransactionUpdate<any>, `epoch` | `id` | `key` | `output` | `updates`>;
|
|
180
164
|
declare const userUnacknowledgedQueues: RegularAtomFamilyToken<ContinuitySyncTransactionUpdate[], UserKey>;
|
|
181
|
-
|
|
182
165
|
//#endregion
|
|
183
166
|
//#region src/realtime-server/realtime-state-provider.d.ts
|
|
184
167
|
type StateProvider = ReturnType<typeof realtimeStateProvider>;
|
|
@@ -186,7 +169,6 @@ declare function realtimeStateProvider({
|
|
|
186
169
|
socket,
|
|
187
170
|
store
|
|
188
171
|
}: ServerConfig): <J extends Json.Serializable>(token: AtomIO.WritableToken<J>) => () => void;
|
|
189
|
-
|
|
190
172
|
//#endregion
|
|
191
173
|
//#region src/realtime-server/realtime-state-receiver.d.ts
|
|
192
174
|
type StateReceiver = ReturnType<typeof realtimeStateReceiver>;
|
|
@@ -194,7 +176,6 @@ declare function realtimeStateReceiver({
|
|
|
194
176
|
socket,
|
|
195
177
|
store
|
|
196
178
|
}: ServerConfig): <J extends Json.Serializable>(token: WritableToken<J>) => () => void;
|
|
197
|
-
|
|
198
179
|
//#endregion
|
|
199
180
|
//#region src/realtime-server/index.d.ts
|
|
200
181
|
type Socket = {
|
|
@@ -209,7 +190,6 @@ type ServerConfig = {
|
|
|
209
190
|
socket: Socket;
|
|
210
191
|
store?: Store;
|
|
211
192
|
};
|
|
212
|
-
|
|
213
193
|
//#endregion
|
|
214
194
|
export { ActionReceiver, ChildSocket, ContinuitySyncTransactionUpdate, CreateRoomIO, CustomSocket, EventBuffer, Events, ExposeRealtimeContinuity, FamilyProvider, JoinRoomIO, LeaveRoomIO, MutableFamilyProvider, MutableProvider, ParentSocket, RoomArguments, RoomKey, ServerConfig, Socket, SocketKey, SocketSystemHierarchy, StateProvider, StateReceiver, StringifiedEvent, SubjectSocket, UserKey, createRoomTX, destroyRoomTX, joinRoomTX, leaveRoomTX, prepareToExposeRealtimeContinuity, realtimeActionReceiver, realtimeAtomFamilyProvider, realtimeMutableFamilyProvider, realtimeMutableProvider, realtimeStateProvider, realtimeStateReceiver, redactTransactionUpdateContent, redactorAtoms, roomArgumentsAtoms, roomSelectors, socketAtoms, socketIndex, userIndex, userUnacknowledgedQueues, usersOfSockets };
|
|
215
195
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":["continuity: ContinuityToken","event: string","event: Event","emit: <Event extends keyof I>(\n\t\t\tevent: Event,\n\t\t\t...args: I[Event]\n\t\t) => CustomSocket<I, O>","listener: (...args: O[Event]) => void","listener: (event: string, ...args: Json.Array) => void","listener?: (...args: O[Event]) => void","arg: Json.Serializable","process: ChildProcessWithoutNullStreams","key: string","logger?: Pick<Console, `error` | `info` | `warn`>","id: string","socket: SubjectSocket<any, any>","attachServices: (socket: SubjectSocket<any, any>) => (() => void) | void","tx: AtomIO.TransactionToken<F>","family: AtomIO.RegularAtomFamilyToken<J, K>","index: AtomIO.ReadableToken<Iterable<K>>","family: AtomIO.MutableAtomFamilyToken<T, J, K>","index: AtomIO.ReadableToken<Iterable<K>>","token: AtomIO.MutableAtomToken<Core, SerializableCore>","createRoomTX: AtomIO.TransactionToken<\n\t(\n\t\troomId: string,\n\t\tscript: string,\n\t\toptions?: string[],\n\t) => Loadable<ChildSocket<any, any>>\n>","roomId: string","script: string","options?: string[]","joinRoomTX: AtomIO.TransactionToken<\n\t(roomId: string, userId: string, enteredAtEpoch: number) => UserInRoomMeta\n>","userId: string","enteredAtEpoch: number","leaveRoomTX: AtomIO.TransactionToken<\n\t(roomId: string, userId: string) => void\n>","destroyRoomTX: AtomIO.TransactionToken<(roomId: string) => void>","roomArgumentsAtoms: RegularAtomFamilyToken<RoomArguments, string>","roomSelectors: ReadonlyPureSelectorFamilyToken<\n\tLoadable<ChildSocket<any, any>>,\n\tstring\n>","socketAtoms: RegularAtomFamilyToken<Socket | null, SocketKey>","socketIndex: MutableAtomToken<\n\tSetRTX<SocketKey>,\n\tSetRTXJson<SocketKey>\n>","userIndex: MutableAtomToken<\n\tSetRTX<UserKey>,\n\tSetRTXJson<UserKey>\n>","usersOfSockets: JoinToken<\n\t`user`,\n\tUserKey,\n\t`socket`,\n\tSocketKey,\n\t`1:1`\n>","visibleStateKeys: string[]","updates: TransactionUpdateContent[]","redactorAtoms: RegularAtomFamilyToken<\n\t{\n\t\tocclude: (updates: TransactionUpdateContent[]) => TransactionUpdateContent[]\n\t},\n\tUserKey\n>","userUnacknowledgedQueues: RegularAtomFamilyToken<\n\tContinuitySyncTransactionUpdate[],\n\tUserKey\n>","token: AtomIO.WritableToken<J>","token: WritableToken<J>","event: string","listener: (...args: Json.Serializable[]) => void","listener: (event: string, ...args: Json.Serializable[]) => void"],"sources":["../../src/realtime-server/continuity/prepare-to-sync-realtime-continuity.ts","../../src/realtime-server/ipc-sockets/custom-socket.ts","../../src/realtime-server/ipc-sockets/child-socket.ts","../../src/realtime-server/ipc-sockets/parent-socket.ts","../../src/realtime-server/realtime-action-receiver.ts","../../src/realtime-server/realtime-family-provider.ts","../../src/realtime-server/realtime-mutable-family-provider.ts","../../src/realtime-server/realtime-mutable-provider.ts","../../src/realtime-server/realtime-server-stores/server-room-external-actions.ts","../../src/realtime-server/realtime-server-stores/server-room-external-store.ts","../../src/realtime-server/realtime-server-stores/server-user-store.ts","../../src/realtime-server/realtime-server-stores/server-sync-store.ts","../../src/realtime-server/realtime-state-provider.ts","../../src/realtime-server/realtime-state-receiver.ts","../../src/realtime-server/index.ts"],"sourcesContent":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":["continuity: ContinuityToken","event: string","event: Event","emit: <Event extends keyof I>(\n\t\t\tevent: Event,\n\t\t\t...args: I[Event]\n\t\t) => CustomSocket<I, O>","listener: (...args: O[Event]) => void","listener: (event: string, ...args: Json.Array) => void","listener?: (...args: O[Event]) => void","arg: Json.Serializable","process: ChildProcessWithoutNullStreams","key: string","logger?: Pick<Console, `error` | `info` | `warn`>","id: string","socket: SubjectSocket<any, any>","attachServices: (socket: SubjectSocket<any, any>) => (() => void) | void","tx: AtomIO.TransactionToken<F>","family: AtomIO.RegularAtomFamilyToken<J, K>","index: AtomIO.ReadableToken<Iterable<K>>","family: AtomIO.MutableAtomFamilyToken<T, J, K>","index: AtomIO.ReadableToken<Iterable<K>>","token: AtomIO.MutableAtomToken<Core, SerializableCore>","createRoomTX: AtomIO.TransactionToken<\n\t(\n\t\troomId: string,\n\t\tscript: string,\n\t\toptions?: string[],\n\t) => Loadable<ChildSocket<any, any>>\n>","roomId: string","script: string","options?: string[]","joinRoomTX: AtomIO.TransactionToken<\n\t(roomId: string, userId: string, enteredAtEpoch: number) => UserInRoomMeta\n>","userId: string","enteredAtEpoch: number","leaveRoomTX: AtomIO.TransactionToken<\n\t(roomId: string, userId: string) => void\n>","destroyRoomTX: AtomIO.TransactionToken<(roomId: string) => void>","roomArgumentsAtoms: RegularAtomFamilyToken<RoomArguments, string>","roomSelectors: ReadonlyPureSelectorFamilyToken<\n\tLoadable<ChildSocket<any, any>>,\n\tstring\n>","socketAtoms: RegularAtomFamilyToken<Socket | null, SocketKey>","socketIndex: MutableAtomToken<\n\tSetRTX<SocketKey>,\n\tSetRTXJson<SocketKey>\n>","userIndex: MutableAtomToken<\n\tSetRTX<UserKey>,\n\tSetRTXJson<UserKey>\n>","usersOfSockets: JoinToken<\n\t`user`,\n\tUserKey,\n\t`socket`,\n\tSocketKey,\n\t`1:1`\n>","visibleStateKeys: string[]","updates: TransactionUpdateContent[]","redactorAtoms: RegularAtomFamilyToken<\n\t{\n\t\tocclude: (updates: TransactionUpdateContent[]) => TransactionUpdateContent[]\n\t},\n\tUserKey\n>","userUnacknowledgedQueues: RegularAtomFamilyToken<\n\tContinuitySyncTransactionUpdate[],\n\tUserKey\n>","token: AtomIO.WritableToken<J>","token: WritableToken<J>","event: string","listener: (...args: Json.Serializable[]) => void","listener: (event: string, ...args: Json.Serializable[]) => void"],"sources":["../../src/realtime-server/continuity/prepare-to-sync-realtime-continuity.ts","../../src/realtime-server/ipc-sockets/custom-socket.ts","../../src/realtime-server/ipc-sockets/child-socket.ts","../../src/realtime-server/ipc-sockets/parent-socket.ts","../../src/realtime-server/realtime-action-receiver.ts","../../src/realtime-server/realtime-family-provider.ts","../../src/realtime-server/realtime-mutable-family-provider.ts","../../src/realtime-server/realtime-mutable-provider.ts","../../src/realtime-server/realtime-server-stores/server-room-external-actions.ts","../../src/realtime-server/realtime-server-stores/server-room-external-store.ts","../../src/realtime-server/realtime-server-stores/server-user-store.ts","../../src/realtime-server/realtime-server-stores/server-sync-store.ts","../../src/realtime-server/realtime-state-provider.ts","../../src/realtime-server/realtime-state-receiver.ts","../../src/realtime-server/index.ts"],"sourcesContent":[],"mappings":"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"}
|
|
@@ -19,8 +19,8 @@ var CustomSocket = class {
|
|
|
19
19
|
emit;
|
|
20
20
|
constructor(emit) {
|
|
21
21
|
this.emit = emit;
|
|
22
|
-
this.listeners = new Map();
|
|
23
|
-
this.globalListeners = new Set();
|
|
22
|
+
this.listeners = /* @__PURE__ */ new Map();
|
|
23
|
+
this.globalListeners = /* @__PURE__ */ new Set();
|
|
24
24
|
}
|
|
25
25
|
on(event, listener) {
|
|
26
26
|
const listeners = this.listeners.get(event);
|
|
@@ -200,7 +200,7 @@ var ParentSocket = class extends CustomSocket {
|
|
|
200
200
|
});
|
|
201
201
|
this.process = process;
|
|
202
202
|
this.process.stdin.resume();
|
|
203
|
-
this.relays = new Map();
|
|
203
|
+
this.relays = /* @__PURE__ */ new Map();
|
|
204
204
|
this.relayServices = [];
|
|
205
205
|
this.process.stdin.on(`data`, (buffer) => {
|
|
206
206
|
const chunk = buffer.toString();
|
|
@@ -579,7 +579,7 @@ function prepareToExposeRealtimeContinuity({ socket: initialSocket, store = IMPL
|
|
|
579
579
|
return () => {};
|
|
580
580
|
}
|
|
581
581
|
const socketKeyState = findRelationsInStore(usersOfSockets, userKey, store).socketKeyOfUser;
|
|
582
|
-
const
|
|
582
|
+
const _unsubscribeFromSocketTracking = subscribeToState(store, socketKeyState, `sync-continuity:${continuityKey}:${userKey}`, ({ newValue: newSocketKey }) => {
|
|
583
583
|
store.logger.info(`👋`, `continuity`, continuityKey, `seeing ${userKey} on new socket ${newSocketKey}`);
|
|
584
584
|
if (newSocketKey === null) {
|
|
585
585
|
store.logger.warn(`❌`, `continuity`, continuityKey, `User (${userKey}) is not connected to a socket, waiting for them to reappear.`);
|
|
@@ -637,7 +637,7 @@ function realtimeActionReceiver({ socket, store = IMPLICIT.STORE }) {
|
|
|
637
637
|
//#region src/realtime-server/realtime-family-provider.ts
|
|
638
638
|
function realtimeAtomFamilyProvider({ socket, store = IMPLICIT.STORE }) {
|
|
639
639
|
return function familyProvider(family, index) {
|
|
640
|
-
const unsubCallbacksByKey = new Map();
|
|
640
|
+
const unsubCallbacksByKey = /* @__PURE__ */ new Map();
|
|
641
641
|
const fillUnsubRequest = (key) => {
|
|
642
642
|
socket.off(`unsub:${key}`, fillUnsubRequest);
|
|
643
643
|
const unsub = unsubCallbacksByKey.get(key);
|
|
@@ -674,7 +674,7 @@ function realtimeAtomFamilyProvider({ socket, store = IMPLICIT.STORE }) {
|
|
|
674
674
|
//#region src/realtime-server/realtime-mutable-family-provider.ts
|
|
675
675
|
function realtimeMutableFamilyProvider({ socket, store = IMPLICIT.STORE }) {
|
|
676
676
|
return function mutableFamilyProvider(family, index) {
|
|
677
|
-
const unsubCallbacksByKey = new Map();
|
|
677
|
+
const unsubCallbacksByKey = /* @__PURE__ */ new Map();
|
|
678
678
|
const fillUnsubRequest = (key) => {
|
|
679
679
|
socket.off(`unsub:${key}`, fillUnsubRequest);
|
|
680
680
|
const unsub = unsubCallbacksByKey.get(key);
|