@fishjam-cloud/react-client 0.9.0 → 0.10.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.
Files changed (96) hide show
  1. package/dist/{DeviceManager.d.ts → devices/DeviceManager.d.ts} +2 -3
  2. package/dist/devices/DeviceManager.d.ts.map +1 -0
  3. package/dist/{DeviceManager.js → devices/DeviceManager.js} +4 -4
  4. package/dist/devices/constraints.d.ts.map +1 -0
  5. package/dist/{mediaInitializer.d.ts → devices/mediaInitializer.d.ts} +1 -1
  6. package/dist/devices/mediaInitializer.d.ts.map +1 -0
  7. package/dist/{mediaInitializer.js → devices/mediaInitializer.js} +1 -1
  8. package/dist/fishjamProvider.d.ts.map +1 -1
  9. package/dist/fishjamProvider.js +6 -6
  10. package/dist/hooks/devices/useCamera.js +2 -2
  11. package/dist/hooks/devices/useInitializeDevices.js +3 -3
  12. package/dist/hooks/devices/useMicrophone.js +2 -2
  13. package/dist/hooks/internal/device/useDeviceApi.d.ts +10 -0
  14. package/dist/hooks/internal/device/useDeviceApi.d.ts.map +1 -0
  15. package/dist/hooks/{devices → internal/device}/useDeviceApi.js +1 -1
  16. package/dist/hooks/internal/device/useDeviceManager.d.ts +4 -0
  17. package/dist/hooks/internal/device/useDeviceManager.d.ts.map +1 -0
  18. package/dist/hooks/internal/useFishjamClientState.d.ts +10 -0
  19. package/dist/hooks/internal/useFishjamClientState.d.ts.map +1 -0
  20. package/dist/hooks/internal/useFishjamClient_DO_NOT_USE.d.ts +7 -0
  21. package/dist/hooks/internal/useFishjamClient_DO_NOT_USE.d.ts.map +1 -0
  22. package/dist/hooks/{useFishjamContext.d.ts → internal/useFishjamContext.d.ts} +4 -4
  23. package/dist/hooks/internal/useFishjamContext.d.ts.map +1 -0
  24. package/dist/hooks/internal/usePeerStatus.d.ts +7 -0
  25. package/dist/hooks/internal/usePeerStatus.d.ts.map +1 -0
  26. package/dist/hooks/internal/useReconnection.d.ts.map +1 -0
  27. package/dist/hooks/{useTrackManager.d.ts → internal/useTrackManager.d.ts} +4 -4
  28. package/dist/hooks/internal/useTrackManager.d.ts.map +1 -0
  29. package/dist/hooks/{useTrackManager.js → internal/useTrackManager.js} +8 -4
  30. package/dist/hooks/useConnection.d.ts +22 -8
  31. package/dist/hooks/useConnection.d.ts.map +1 -1
  32. package/dist/hooks/useConnection.js +10 -13
  33. package/dist/hooks/usePeers.d.ts +10 -6
  34. package/dist/hooks/usePeers.d.ts.map +1 -1
  35. package/dist/hooks/usePeers.js +17 -16
  36. package/dist/hooks/useScreenShare.d.ts +1 -3
  37. package/dist/hooks/useScreenShare.d.ts.map +1 -1
  38. package/dist/hooks/useScreenShare.js +7 -3
  39. package/dist/hooks/useUpdatePeerMetadata.d.ts +5 -0
  40. package/dist/hooks/useUpdatePeerMetadata.d.ts.map +1 -0
  41. package/dist/hooks/useUpdatePeerMetadata.js +9 -0
  42. package/dist/hooks/useVAD.d.ts.map +1 -1
  43. package/dist/hooks/useVAD.js +3 -3
  44. package/dist/index.d.ts +13 -4
  45. package/dist/index.d.ts.map +1 -1
  46. package/dist/index.js +9 -2
  47. package/dist/internal.d.ts +2 -0
  48. package/dist/internal.d.ts.map +1 -0
  49. package/dist/internal.js +1 -0
  50. package/dist/types/internal.d.ts +5 -16
  51. package/dist/types/internal.d.ts.map +1 -1
  52. package/dist/types/public.d.ts +10 -9
  53. package/dist/types/public.d.ts.map +1 -1
  54. package/dist/utils/bandwidth.d.ts +2 -0
  55. package/dist/utils/bandwidth.d.ts.map +1 -1
  56. package/dist/utils/bandwidth.js +3 -1
  57. package/dist/utils/localStorage.d.ts +1 -2
  58. package/dist/utils/localStorage.d.ts.map +1 -1
  59. package/dist/utils/track.d.ts +4 -8
  60. package/dist/utils/track.d.ts.map +1 -1
  61. package/dist/utils/track.js +6 -4
  62. package/package.json +10 -10
  63. package/dist/DeviceManager.d.ts.map +0 -1
  64. package/dist/constraints.d.ts.map +0 -1
  65. package/dist/hooks/deviceManagers/useDeviceManager.d.ts +0 -4
  66. package/dist/hooks/deviceManagers/useDeviceManager.d.ts.map +0 -1
  67. package/dist/hooks/devices/useDeviceApi.d.ts +0 -10
  68. package/dist/hooks/devices/useDeviceApi.d.ts.map +0 -1
  69. package/dist/hooks/internal.d.ts +0 -2
  70. package/dist/hooks/internal.d.ts.map +0 -1
  71. package/dist/hooks/internal.js +0 -1
  72. package/dist/hooks/public.d.ts +0 -10
  73. package/dist/hooks/public.d.ts.map +0 -1
  74. package/dist/hooks/public.js +0 -9
  75. package/dist/hooks/useFishjamClientState.d.ts +0 -10
  76. package/dist/hooks/useFishjamClientState.d.ts.map +0 -1
  77. package/dist/hooks/useFishjamClient_DO_NOT_USE.d.ts +0 -7
  78. package/dist/hooks/useFishjamClient_DO_NOT_USE.d.ts.map +0 -1
  79. package/dist/hooks/useFishjamContext.d.ts.map +0 -1
  80. package/dist/hooks/usePeerStatus.d.ts +0 -8
  81. package/dist/hooks/usePeerStatus.d.ts.map +0 -1
  82. package/dist/hooks/useReconnection.d.ts.map +0 -1
  83. package/dist/hooks/useStatus.d.ts +0 -6
  84. package/dist/hooks/useStatus.d.ts.map +0 -1
  85. package/dist/hooks/useStatus.js +0 -8
  86. package/dist/hooks/useTrackManager.d.ts.map +0 -1
  87. package/dist/mediaInitializer.d.ts.map +0 -1
  88. /package/dist/{constraints.d.ts → devices/constraints.d.ts} +0 -0
  89. /package/dist/{constraints.js → devices/constraints.js} +0 -0
  90. /package/dist/hooks/{deviceManagers → internal/device}/useDeviceManager.js +0 -0
  91. /package/dist/hooks/{useFishjamClientState.js → internal/useFishjamClientState.js} +0 -0
  92. /package/dist/hooks/{useFishjamClient_DO_NOT_USE.js → internal/useFishjamClient_DO_NOT_USE.js} +0 -0
  93. /package/dist/hooks/{useFishjamContext.js → internal/useFishjamContext.js} +0 -0
  94. /package/dist/hooks/{usePeerStatus.js → internal/usePeerStatus.js} +0 -0
  95. /package/dist/hooks/{useReconnection.d.ts → internal/useReconnection.d.ts} +0 -0
  96. /package/dist/hooks/{useReconnection.js → internal/useReconnection.js} +0 -0
@@ -1,7 +1,6 @@
1
- import type { DeviceError, DeviceManagerStatus, DeviceState, Media, MediaManager } from "./types/internal";
1
+ import type { DeviceError, DeviceManagerStatus, DeviceState, Media, MediaManager } from "../types/internal";
2
2
  import type TypedEmitter from "typed-emitter";
3
- import type { PersistLastDeviceHandlers, TrackMiddleware } from "./types/public";
4
- export type DeviceType = "audio" | "video";
3
+ import type { PersistLastDeviceHandlers, TrackMiddleware, DeviceType } from "../types/public";
5
4
  export type DeviceManagerEvents = {
6
5
  managerStarted: (event: DeviceState & {
7
6
  constraints: MediaTrackConstraints | undefined;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeviceManager.d.ts","sourceRoot":"","sources":["../../src/devices/DeviceManager.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { prepareMediaTrackConstraints } from "./constraints";
2
2
  import EventEmitter from "events";
3
- import { MiddlewareManager } from "./devices/MiddlewareManager";
4
- import { createStorageConfig } from "./utils/localStorage";
5
- import { setupOnEndedCallback } from "./utils/track";
6
- import { parseUserMediaError } from "./utils/errors";
3
+ import { MiddlewareManager } from "./MiddlewareManager";
4
+ import { createStorageConfig } from "../utils/localStorage";
5
+ import { setupOnEndedCallback } from "../utils/track";
6
+ import { parseUserMediaError } from "../utils/errors";
7
7
  const NOOP = () => { };
8
8
  export class DeviceManager extends EventEmitter {
9
9
  constraints;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constraints.d.ts","sourceRoot":"","sources":["../../src/devices/constraints.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,EAAE,qBAErC,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,qBAerC,CAAC;AAEF,eAAO,MAAM,gCAAgC,EAAE,sBAM9C,CAAC;AAEF,eAAO,MAAM,4BAA4B,aAC7B,MAAM,GAAG,SAAS,eACf,qBAAqB,GAAG,SAAS,GAAG,OAAO,KACvD,qBAAqB,GAAG,OAM1B,CAAC;AAEF,eAAO,MAAM,kBAAkB,oBACZ,MAAM,GAAG,SAAS,eACtB,qBAAqB,GAAG,SAAS,GAAG,OAAO,KACvD,qBAAqB,GAAG,SAAS,GAAG,OAUtC,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { DeviceError } from "./types/internal";
1
+ import type { DeviceError } from "../types/internal";
2
2
  type AudioVideo<T> = {
3
3
  audio: T;
4
4
  video: T;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mediaInitializer.d.ts","sourceRoot":"","sources":["../../src/devices/mediaInitializer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAkB,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrE,KAAK,UAAU,CAAC,CAAC,IAAI;IAAE,KAAK,EAAE,CAAC,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,CAAC;AAE5C,KAAK,gBAAgB,GAAG,UAAU,CAAC,qBAAqB,GAAG,SAAS,GAAG,OAAO,CAAC,CAAC;AAEhF,KAAK,eAAe,GAAG,UAAU,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;AAsB1D,eAAO,MAAM,iBAAiB,gBACf,sBAAsB,iBACrB,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,KAC3C,OAAO,CAAC,CAAC,WAAW,GAAG,IAAI,EAAE,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,CAuB9D,CAAC;AAIF,eAAO,MAAM,kBAAkB,WACrB,WAAW,gBACL,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,WACnC,eAAe,EAAE,eACb,gBAAgB,mBACZ,eAAe,KAC/B,OAAO,CAAC,CAAC,WAAW,GAAG,IAAI,EAAE,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,CAsB9D,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { prepareConstraints } from "./constraints";
2
- import { NOT_FOUND_ERROR, OVERCONSTRAINED_ERROR, PERMISSION_DENIED, UNHANDLED_ERROR } from "./utils/errors";
2
+ import { NOT_FOUND_ERROR, OVERCONSTRAINED_ERROR, PERMISSION_DENIED, UNHANDLED_ERROR } from "../utils/errors";
3
3
  const defaultErrors = { audio: null, video: null };
4
4
  const tryToGetAudioOnlyThenVideoOnly = async (constraints, deviceErrors = defaultErrors, transformConstraint = () => false) => {
5
5
  const audioOnly = await getAvailableMedia({ ...constraints, video: transformConstraint(constraints.video) }, { ...deviceErrors, audio: null });
@@ -1 +1 @@
1
- {"version":3,"file":"fishjamProvider.d.ts","sourceRoot":"","sources":["../src/fishjamProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAGvD,OAAO,EAAiB,KAAK,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAO/E,OAAO,KAAK,EAAE,eAAe,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAItG,UAAU,oBAAqB,SAAQ,iBAAiB;IACtD,SAAS,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC;IACtC,WAAW,CAAC,EAAE,IAAI,CAAC,sBAAsB,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC;IAC9D,iBAAiB,CAAC,EAAE,OAAO,GAAG,yBAAyB,CAAC;IACxD,eAAe,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IAC3C,gBAAgB,CAAC,EAAE,mBAAmB,GAAG,KAAK,CAAC;IAC/C,oBAAoB,CAAC,EAAE,mBAAmB,GAAG,KAAK,CAAC;CACpD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,oBAAoB,GACrB,EAAE,oBAAoB,2CA8DtB"}
1
+ {"version":3,"file":"fishjamProvider.d.ts","sourceRoot":"","sources":["../src/fishjamProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAEvD,OAAO,EAAiB,KAAK,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAO/E,OAAO,KAAK,EAAE,eAAe,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAItG,UAAU,oBAAqB,SAAQ,iBAAiB;IACtD,SAAS,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC;IACtC,WAAW,CAAC,EAAE,IAAI,CAAC,sBAAsB,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC;IAC9D,iBAAiB,CAAC,EAAE,OAAO,GAAG,yBAAyB,CAAC;IACxD,eAAe,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IAC3C,gBAAgB,CAAC,EAAE,mBAAmB,GAAG,KAAK,CAAC;IAC/C,oBAAoB,CAAC,EAAE,mBAAmB,GAAG,KAAK,CAAC;CACpD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,oBAAoB,GACrB,EAAE,oBAAoB,2CA8DtB"}
@@ -1,12 +1,12 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useRef } from "react";
3
- import { useTrackManager } from "./hooks/useTrackManager";
3
+ import { useTrackManager } from "./hooks/internal/useTrackManager";
4
4
  import { FishjamClient } from "@fishjam-cloud/ts-client";
5
- import { FishjamContext } from "./hooks/useFishjamContext";
6
- import { DeviceManager } from "./DeviceManager";
7
- import { usePeerStatus } from "./hooks/usePeerStatus";
8
- import { useFishjamClientState } from "./hooks/useFishjamClientState";
9
- import { AUDIO_TRACK_CONSTRAINTS, VIDEO_TRACK_CONSTRAINTS } from "./constraints";
5
+ import { FishjamContext } from "./hooks/internal/useFishjamContext";
6
+ import { DeviceManager } from "./devices/DeviceManager";
7
+ import { usePeerStatus } from "./hooks/internal/usePeerStatus";
8
+ import { useFishjamClientState } from "./hooks/internal/useFishjamClientState";
9
+ import { AUDIO_TRACK_CONSTRAINTS, VIDEO_TRACK_CONSTRAINTS } from "./devices/constraints";
10
10
  import { useScreenShareManager } from "./hooks/useScreenShare";
11
11
  import { mergeWithDefaultBandwitdthLimits } from "./utils/bandwidth";
12
12
  /**
@@ -1,5 +1,5 @@
1
- import { useFishjamContext } from "../useFishjamContext";
2
- import { useDeviceApi } from "./useDeviceApi";
1
+ import { useFishjamContext } from "../internal/useFishjamContext";
2
+ import { useDeviceApi } from "../internal/device/useDeviceApi";
3
3
  /**
4
4
  *
5
5
  * @category Devices
@@ -1,7 +1,7 @@
1
1
  import { useCallback } from "react";
2
- import { prepareConstraints } from "../../constraints";
3
- import { getAvailableMedia, getCorrectedResult } from "../../mediaInitializer";
4
- import { useFishjamContext } from "../useFishjamContext";
2
+ import { prepareConstraints } from "../../devices/constraints";
3
+ import { getAvailableMedia, getCorrectedResult } from "../../devices/mediaInitializer";
4
+ import { useFishjamContext } from "../internal/useFishjamContext";
5
5
  /**
6
6
  *
7
7
  * @category Devices
@@ -1,5 +1,5 @@
1
- import { useFishjamContext } from "../useFishjamContext";
2
- import { useDeviceApi } from "./useDeviceApi";
1
+ import { useFishjamContext } from "../internal/useFishjamContext";
2
+ import { useDeviceApi } from "../internal/device/useDeviceApi";
3
3
  /**
4
4
  *
5
5
  * @category Devices
@@ -0,0 +1,10 @@
1
+ import type { TrackManager } from "../../../types/internal";
2
+ import type { Device } from "../../../types/public";
3
+ import type { DeviceManager } from "../../../devices/DeviceManager";
4
+ type DeviceApiDependencies = {
5
+ trackManager: TrackManager;
6
+ deviceManager: DeviceManager;
7
+ };
8
+ export declare const useDeviceApi: ({ trackManager, deviceManager }: DeviceApiDependencies) => Device;
9
+ export {};
10
+ //# sourceMappingURL=useDeviceApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDeviceApi.d.ts","sourceRoot":"","sources":["../../../../src/hooks/internal/device/useDeviceApi.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAGpE,KAAK,qBAAqB,GAAG;IAC3B,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,YAAY,oCAAqC,qBAAqB,KAAG,MAkCrF,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { useMemo } from "react";
2
- import { useDeviceManager } from "../deviceManagers/useDeviceManager";
2
+ import { useDeviceManager } from "./useDeviceManager";
3
3
  export const useDeviceApi = ({ trackManager, deviceManager }) => {
4
4
  const { deviceState, status, type } = useDeviceManager(deviceManager);
5
5
  const { currentTrack } = trackManager;
@@ -0,0 +1,4 @@
1
+ import type { DeviceManagerState } from "../../../types/internal";
2
+ import type { DeviceManager } from "../../../devices/DeviceManager";
3
+ export declare const useDeviceManager: (deviceManager: DeviceManager) => DeviceManagerState;
4
+ //# sourceMappingURL=useDeviceManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDeviceManager.d.ts","sourceRoot":"","sources":["../../../../src/hooks/internal/device/useDeviceManager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAuB,MAAM,gCAAgC,CAAC;AAezF,eAAO,MAAM,gBAAgB,kBAAmB,aAAa,uBAoC5D,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { Component, Peer, FishjamClient, GenericMetadata } from "@fishjam-cloud/ts-client";
2
+ import type { PeerId } from "../../types/internal";
3
+ export interface FishjamClientState<P = GenericMetadata, S = GenericMetadata> {
4
+ peers: Record<PeerId, Peer<P, S>>;
5
+ components: Record<string, Component>;
6
+ localPeer: Peer<P, S> | null;
7
+ isReconnecting: boolean;
8
+ }
9
+ export declare function useFishjamClientState<P, S>(fishjamClient: FishjamClient<P, S>): FishjamClientState<P, S>;
10
+ //# sourceMappingURL=useFishjamClientState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFishjamClientState.d.ts","sourceRoot":"","sources":["../../../src/hooks/internal/useFishjamClientState.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAiB,IAAI,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC/G,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AA0CnD,MAAM,WAAW,kBAAkB,CAAC,CAAC,GAAG,eAAe,EAAE,CAAC,GAAG,eAAe;IAC1E,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACtC,SAAS,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;IAC7B,cAAc,EAAE,OAAO,CAAC;CACzB;AAMD,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAwCxG"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ *
3
+ * @category Connection
4
+ * @deprecated
5
+ */
6
+ export declare function useFishjamClient_DO_NOT_USE(): import("@fishjam-cloud/ts-client").FishjamClient<import("@fishjam-cloud/ts-client").GenericMetadata, import("@fishjam-cloud/ts-client").GenericMetadata>;
7
+ //# sourceMappingURL=useFishjamClient_DO_NOT_USE.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFishjamClient_DO_NOT_USE.d.ts","sourceRoot":"","sources":["../../../src/hooks/internal/useFishjamClient_DO_NOT_USE.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAgB,2BAA2B,6JAI1C"}
@@ -1,11 +1,11 @@
1
1
  import type { FishjamClient } from "@fishjam-cloud/ts-client";
2
2
  import { type MutableRefObject } from "react";
3
- import type { PeerMetadata, TrackMetadata, TrackManager } from "../types/internal";
4
- import type { DeviceManager } from "../DeviceManager";
3
+ import type { TrackManager } from "../../types/internal";
4
+ import type { DeviceManager } from "../../devices/DeviceManager";
5
5
  import type { FishjamClientState } from "./useFishjamClientState";
6
- import type { BandwidthLimits, PeerStatus, ScreenshareApi } from "../types/public";
6
+ import type { BandwidthLimits, PeerStatus, ScreenshareApi } from "../../types/public";
7
7
  export type FishjamContextType = {
8
- fishjamClientRef: MutableRefObject<FishjamClient<PeerMetadata, TrackMetadata>>;
8
+ fishjamClientRef: MutableRefObject<FishjamClient>;
9
9
  videoDeviceManagerRef: MutableRefObject<DeviceManager>;
10
10
  audioDeviceManagerRef: MutableRefObject<DeviceManager>;
11
11
  hasDevicesBeenInitializedRef: MutableRefObject<boolean>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFishjamContext.d.ts","sourceRoot":"","sources":["../../../src/hooks/internal/useFishjamContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAiB,KAAK,gBAAgB,EAAc,MAAM,OAAO,CAAC;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEtF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,gBAAgB,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAClD,qBAAqB,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACvD,qBAAqB,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACvD,4BAA4B,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACxD,kBAAkB,EAAE,cAAc,CAAC;IACnC,UAAU,EAAE,UAAU,CAAC;IACvB,iBAAiB,EAAE,YAAY,CAAC;IAChC,iBAAiB,EAAE,YAAY,CAAC;IAChC,WAAW,EAAE,kBAAkB,CAAC;IAChC,eAAe,EAAE,eAAe,CAAC;CAClC,CAAC;AAEF,eAAO,MAAM,cAAc,oDAAiD,CAAC;AAE7E,wBAAgB,iBAAiB,IAGb,kBAAkB,CACrC"}
@@ -0,0 +1,7 @@
1
+ import type { FishjamClient } from "@fishjam-cloud/ts-client";
2
+ import type { PeerStatus } from "../../types/public";
3
+ export declare const usePeerStatus: (client: FishjamClient) => {
4
+ readonly peerStatus: PeerStatus;
5
+ readonly getCurrentPeerStatus: () => PeerStatus;
6
+ };
7
+ //# sourceMappingURL=usePeerStatus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePeerStatus.d.ts","sourceRoot":"","sources":["../../../src/hooks/internal/usePeerStatus.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD,eAAO,MAAM,aAAa,WAAY,aAAa;;;CA8ClD,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useReconnection.d.ts","sourceRoot":"","sources":["../../../src/hooks/internal/useReconnection.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEnE;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAO,kBA6BlC,CAAC"}
@@ -1,9 +1,9 @@
1
- import type { FishjamClient } from "@fishjam-cloud/ts-client";
2
- import type { MediaManager, PeerMetadata, TrackManager, TrackMetadata } from "../types/internal";
3
- import type { BandwidthLimits, PeerStatus, StartStreamingProps } from "../types/public";
1
+ import { type FishjamClient } from "@fishjam-cloud/ts-client";
2
+ import type { MediaManager, TrackManager } from "../../types/internal";
3
+ import type { BandwidthLimits, PeerStatus, StartStreamingProps } from "../../types/public";
4
4
  interface TrackManagerConfig {
5
5
  mediaManager: MediaManager;
6
- tsClient: FishjamClient<PeerMetadata, TrackMetadata>;
6
+ tsClient: FishjamClient;
7
7
  getCurrentPeerStatus: () => PeerStatus;
8
8
  bandwidthLimits: BandwidthLimits;
9
9
  autoStreamProps?: StartStreamingProps | false;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTrackManager.d.ts","sourceRoot":"","sources":["../../../src/hooks/internal/useTrackManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,aAAa,EAAsB,MAAM,0BAA0B,CAAC;AAC3F,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGvE,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,mBAAmB,EAAmB,MAAM,oBAAoB,CAAC;AAE5G,UAAU,kBAAkB;IAC1B,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,aAAa,CAAC;IACxB,oBAAoB,EAAE,MAAM,UAAU,CAAC;IACvC,eAAe,EAAE,eAAe,CAAC;IACjC,eAAe,CAAC,EAAE,mBAAmB,GAAG,KAAK,CAAC;CAC/C;AAWD,eAAO,MAAM,eAAe,wFAMzB,kBAAkB,KAAG,YAgMvB,CAAC"}
@@ -1,4 +1,5 @@
1
- import { getConfigAndBandwidthFromProps, getRemoteOrLocalTrack } from "../utils/track";
1
+ import { Variant } from "@fishjam-cloud/ts-client";
2
+ import { getConfigAndBandwidthFromProps, getRemoteOrLocalTrack } from "../../utils/track";
2
3
  import { useCallback, useEffect, useMemo, useState } from "react";
3
4
  const TRACK_TYPE_TO_DEVICE = {
4
5
  video: "camera",
@@ -21,7 +22,7 @@ export const useTrackManager = ({ mediaManager, tsClient, getCurrentPeerStatus,
21
22
  await tsClient.replaceTrack(currentTrackId, newTrack);
22
23
  }
23
24
  const stop = useCallback(() => mediaManager.stop(), [mediaManager]);
24
- const startStreaming = useCallback(async (props = { simulcast: ["l", "m", "h"] }) => {
25
+ const startStreaming = useCallback(async (props = { simulcast: [Variant.VARIANT_LOW, Variant.VARIANT_MEDIUM, Variant.VARIANT_HIGH] }) => {
25
26
  if (currentTrackId)
26
27
  throw Error("Track already added");
27
28
  const media = mediaManager.getMedia();
@@ -32,9 +33,12 @@ export const useTrackManager = ({ mediaManager, tsClient, getCurrentPeerStatus,
32
33
  return track.trackId;
33
34
  // see `getRemoteOrLocalTrackContext()` explanation
34
35
  setCurrentTrackId(media.track.id);
35
- const displayName = tsClient.getLocalPeer()?.metadata?.peer?.displayName;
36
36
  const deviceType = getDeviceType(mediaManager);
37
- const trackMetadata = { type: deviceType, displayName, paused: false };
37
+ const trackMetadata = { type: deviceType, paused: false };
38
+ const displayName = tsClient.getLocalPeer()?.metadata?.peer?.displayName;
39
+ if (typeof displayName === "string") {
40
+ trackMetadata.displayName = displayName;
41
+ }
38
42
  const [maxBandwidth, simulcastConfig] = getConfigAndBandwidthFromProps(props.simulcast, bandwidthLimits);
39
43
  const remoteTrackId = await tsClient.addTrack(media.track, trackMetadata, simulcastConfig, maxBandwidth);
40
44
  setCurrentTrackId(remoteTrackId);
@@ -1,12 +1,26 @@
1
- import type { ConnectConfig } from "../types/public";
1
+ import type { GenericMetadata } from "@fishjam-cloud/ts-client";
2
+ export interface JoinRoomConfig<PeerMetadata extends GenericMetadata = GenericMetadata> {
3
+ /**
4
+ * fishjam URL
5
+ */
6
+ url: string;
7
+ /**
8
+ * token received from server (or Room Manager)
9
+ */
10
+ peerToken: string;
11
+ /**
12
+ * string indexed record with metadata, that will be available to all other peers
13
+ */
14
+ peerMetadata?: PeerMetadata;
15
+ }
2
16
  /**
3
- *
4
17
  * @category Connection
18
+ * @returns
5
19
  */
6
- export declare function useConnect(): (config: ConnectConfig) => Promise<void>;
7
- /**
8
- *
9
- * @category Connection
10
- */
11
- export declare function useDisconnect(): () => void;
20
+ export declare function useConnection(): {
21
+ joinRoom: <PeerMetadata extends GenericMetadata = GenericMetadata>({ url, peerToken, peerMetadata, }: JoinRoomConfig<PeerMetadata>) => Promise<void>;
22
+ leaveRoom: () => void;
23
+ peerStatus: import("..").PeerStatus;
24
+ reconnectionStatus: import("@fishjam-cloud/ts-client").ReconnectionStatus;
25
+ };
12
26
  //# sourceMappingURL=useConnection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useConnection.d.ts","sourceRoot":"","sources":["../../src/hooks/useConnection.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD;;;GAGG;AACH,wBAAgB,UAAU,IAAI,CAAC,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,CAIrE;AAED;;;GAGG;AACH,wBAAgB,aAAa,eAM5B"}
1
+ {"version":3,"file":"useConnection.d.ts","sourceRoot":"","sources":["../../src/hooks/useConnection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAIhE,MAAM,WAAW,cAAc,CAAC,YAAY,SAAS,eAAe,GAAG,eAAe;IACpF;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED;;;GAGG;AACH,wBAAgB,aAAa;eAOxB,YAAY,SAAS,eAAe,uDAIlC,cAAc,CAAC,YAAY,CAAC;;;;EASlC"}
@@ -1,20 +1,17 @@
1
1
  import { useCallback } from "react";
2
- import { useFishjamContext } from "./useFishjamContext";
2
+ import { useFishjamContext } from "./internal/useFishjamContext";
3
+ import { useReconnection } from "./internal/useReconnection";
3
4
  /**
4
- *
5
5
  * @category Connection
6
+ * @returns
6
7
  */
7
- export function useConnect() {
8
- const client = useFishjamContext().fishjamClientRef.current;
9
- return useCallback((config) => client.connect({ ...config, peerMetadata: config.peerMetadata ?? {} }), [client]);
10
- }
11
- /**
12
- *
13
- * @category Connection
14
- */
15
- export function useDisconnect() {
16
- const client = useFishjamContext().fishjamClientRef.current;
17
- return useCallback(() => {
8
+ export function useConnection() {
9
+ const context = useFishjamContext();
10
+ const client = context.fishjamClientRef.current;
11
+ const reconnectionStatus = useReconnection();
12
+ const joinRoom = useCallback(({ url, peerToken, peerMetadata, }) => client.connect({ url, token: peerToken, peerMetadata: peerMetadata ?? {} }), [client]);
13
+ const leaveRoom = useCallback(() => {
18
14
  client.disconnect();
19
15
  }, [client]);
16
+ return { joinRoom, leaveRoom, peerStatus: context.peerStatus, reconnectionStatus };
20
17
  }
@@ -1,27 +1,31 @@
1
- import type { PeerWithTracks } from "../types/public";
1
+ import type { DistinguishedTracks, PeerState } from "../types/internal";
2
+ export type PeerWithTracks<P, S> = PeerState<P, S> & DistinguishedTracks;
2
3
  /**
3
4
  * Result type for the usePeers hook.
4
5
  */
5
- export type UsePeersResult = {
6
+ export type UsePeersResult<P, S> = {
6
7
  /**
7
8
  * The local peer with distinguished tracks (camera, microphone, screen share).
8
9
  * Will be null if the local peer is not found.
9
10
  */
10
- localPeer: PeerWithTracks | null;
11
+ localPeer: PeerWithTracks<P, S> | null;
11
12
  /**
12
13
  * Array of remote peers with distinguished tracks (camera, microphone, screen share).
13
14
  */
14
- remotePeers: PeerWithTracks[];
15
+ remotePeers: PeerWithTracks<P, S>[];
15
16
  /**
16
17
  * @deprecated Use remotePeers instead
17
18
  * Legacy array containing remote peers.
18
19
  * This property will be removed in future versions.
19
20
  */
20
- peers: PeerWithTracks[];
21
+ peers: PeerWithTracks<P, S>[];
21
22
  };
22
23
  /**
23
24
  *
24
25
  * @category Connection
26
+ *
27
+ * @typeParam P Type of metadata set by peer while connecting to a room.
28
+ * @typeParam S Type of metadata set by the server while creating a peer.
25
29
  */
26
- export declare function usePeers(): UsePeersResult;
30
+ export declare function usePeers<P = Record<string, unknown>, S = Record<string, unknown>>(): UsePeersResult<P, S>;
27
31
  //# sourceMappingURL=usePeers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"usePeers.d.ts","sourceRoot":"","sources":["../../src/hooks/usePeers.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAS,MAAM,iBAAiB,CAAC;AA2C7D;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B;;;OAGG;IACH,SAAS,EAAE,cAAc,GAAG,IAAI,CAAC;IAEjC;;OAEG;IACH,WAAW,EAAE,cAAc,EAAE,CAAC;IAE9B;;;;OAIG;IACH,KAAK,EAAE,cAAc,EAAE,CAAC;CACzB,CAAC;AAEF;;;GAGG;AACH,wBAAgB,QAAQ,IAAI,cAAc,CAYzC"}
1
+ {"version":3,"file":"usePeers.d.ts","sourceRoot":"","sources":["../../src/hooks/usePeers.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAExE,MAAM,MAAM,cAAc,CAAC,CAAC,EAAE,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,mBAAmB,CAAC;AAiCzE;;GAEG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,EAAE,CAAC,IAAI;IACjC;;;OAGG;IACH,SAAS,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;IAEvC;;OAEG;IACH,WAAW,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IAEpC;;;;OAIG;IACH,KAAK,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;CAC/B,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAQzG"}
@@ -1,12 +1,4 @@
1
- import { useFishjamContext } from "./useFishjamContext";
2
- function getPeerWithDistinguishedTracks(peerState) {
3
- const peerTracks = Object.values(peerState.tracks ?? {});
4
- const cameraTrack = peerTracks.find(({ metadata }) => metadata?.type === "camera");
5
- const microphoneTrack = peerTracks.find(({ metadata }) => metadata?.type === "microphone");
6
- const screenShareVideoTrack = peerTracks.find(({ metadata }) => metadata?.type === "screenShareVideo");
7
- const screenShareAudioTrack = peerTracks.find(({ metadata }) => metadata?.type === "screenShareAudio");
8
- return { ...peerState, cameraTrack, microphoneTrack, screenShareVideoTrack, screenShareAudioTrack };
9
- }
1
+ import { useFishjamContext } from "./internal/useFishjamContext";
10
2
  function trackContextToTrack(track) {
11
3
  return {
12
4
  metadata: track.metadata,
@@ -18,23 +10,32 @@ function trackContextToTrack(track) {
18
10
  track: track.track,
19
11
  };
20
12
  }
21
- function endpointToPeerState(peer) {
22
- const tracks = [...peer.tracks].reduce((acc, [, track]) => ({ ...acc, [track.trackId]: trackContextToTrack(track) }), {});
13
+ function getPeerWithDistinguishedTracks(peer) {
14
+ const tracks = [...peer.tracks.values()].map(trackContextToTrack);
15
+ const cameraTrack = tracks.find(({ metadata }) => metadata?.type === "camera");
16
+ const microphoneTrack = tracks.find(({ metadata }) => metadata?.type === "microphone");
17
+ const screenShareVideoTrack = tracks.find(({ metadata }) => metadata?.type === "screenShareVideo");
18
+ const screenShareAudioTrack = tracks.find(({ metadata }) => metadata?.type === "screenShareAudio");
23
19
  return {
24
- metadata: peer.metadata,
25
20
  id: peer.id,
21
+ metadata: peer.metadata,
26
22
  tracks,
23
+ cameraTrack,
24
+ microphoneTrack,
25
+ screenShareVideoTrack,
26
+ screenShareAudioTrack,
27
27
  };
28
28
  }
29
29
  /**
30
30
  *
31
31
  * @category Connection
32
+ *
33
+ * @typeParam P Type of metadata set by peer while connecting to a room.
34
+ * @typeParam S Type of metadata set by the server while creating a peer.
32
35
  */
33
36
  export function usePeers() {
34
37
  const { clientState } = useFishjamContext();
35
- const localPeer = clientState.localPeer
36
- ? getPeerWithDistinguishedTracks(endpointToPeerState(clientState.localPeer))
37
- : null;
38
- const remotePeers = Object.values(clientState.peers).map((peer) => getPeerWithDistinguishedTracks(endpointToPeerState(peer)));
38
+ const localPeer = clientState.localPeer ? getPeerWithDistinguishedTracks(clientState.localPeer) : null;
39
+ const remotePeers = Object.values(clientState.peers).map((peer) => getPeerWithDistinguishedTracks(peer));
39
40
  return { localPeer, remotePeers, peers: remotePeers };
40
41
  }
@@ -1,8 +1,7 @@
1
1
  import type { FishjamClient } from "@fishjam-cloud/ts-client";
2
2
  import type { ScreenshareApi, PeerStatus } from "../types/public";
3
- import type { PeerMetadata, TrackMetadata } from "../types/internal";
4
3
  interface ScreenShareManagerProps {
5
- fishjamClient: FishjamClient<PeerMetadata, TrackMetadata>;
4
+ fishjamClient: FishjamClient;
6
5
  getCurrentPeerStatus: () => PeerStatus;
7
6
  }
8
7
  /**
@@ -11,6 +10,5 @@ interface ScreenShareManagerProps {
11
10
  */
12
11
  export declare const useScreenShareManager: ({ fishjamClient, getCurrentPeerStatus, }: ScreenShareManagerProps) => ScreenshareApi;
13
12
  export declare const useScreenShare: () => ScreenshareApi;
14
- export declare const getTracksFromStream: (stream: MediaStream) => [MediaStreamTrack, MediaStreamTrack | null];
15
13
  export {};
16
14
  //# sourceMappingURL=useScreenShare.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useScreenShare.d.ts","sourceRoot":"","sources":["../../src/hooks/useScreenShare.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,KAAK,EAAoB,cAAc,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACpF,OAAO,KAAK,EAAE,YAAY,EAAoB,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGvF,UAAU,uBAAuB;IAC/B,aAAa,EAAE,aAAa,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IAC1D,oBAAoB,EAAE,MAAM,UAAU,CAAC;CACxC;AAED;;;GAGG;AACH,eAAO,MAAM,qBAAqB,6CAG/B,uBAAuB,KAAG,cAqI5B,CAAC;AAEF,eAAO,MAAM,cAAc,sBAI1B,CAAC;AAEF,eAAO,MAAM,mBAAmB,WAAY,WAAW,KAAG,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,IAAI,CAKnG,CAAC"}
1
+ {"version":3,"file":"useScreenShare.d.ts","sourceRoot":"","sources":["../../src/hooks/useScreenShare.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,KAAK,EAAoB,cAAc,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAIpF,UAAU,uBAAuB;IAC/B,aAAa,EAAE,aAAa,CAAC;IAC7B,oBAAoB,EAAE,MAAM,UAAU,CAAC;CACxC;AAED;;;GAGG;AACH,eAAO,MAAM,qBAAqB,6CAG/B,uBAAuB,KAAG,cAwI5B,CAAC;AAEF,eAAO,MAAM,cAAc,sBAI1B,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { useCallback, useEffect, useRef, useState } from "react";
2
2
  import { getRemoteOrLocalTrack } from "../utils/track";
3
- import { useFishjamContext } from "./useFishjamContext";
3
+ import { useFishjamContext } from "./internal/useFishjamContext";
4
4
  /**
5
5
  *
6
6
  * @category Screenshare
@@ -10,7 +10,11 @@ export const useScreenShareManager = ({ fishjamClient, getCurrentPeerStatus, })
10
10
  const cleanMiddlewareFnRef = useRef(null);
11
11
  const stream = state.stream ?? null;
12
12
  const [videoTrack, audioTrack] = stream ? getTracksFromStream(stream) : [null, null];
13
- const getDisplayName = () => fishjamClient.getLocalPeer()?.metadata?.peer?.displayName;
13
+ const getDisplayName = () => {
14
+ const name = fishjamClient.getLocalPeer()?.metadata?.peer?.displayName;
15
+ if (typeof name === "string")
16
+ return name;
17
+ };
14
18
  const startStreaming = async (props) => {
15
19
  const stream = await navigator.mediaDevices.getDisplayMedia({
16
20
  video: props?.videoConstraints ?? true,
@@ -117,7 +121,7 @@ export const useScreenShare = () => {
117
121
  const { screenShareManager } = useFishjamContext();
118
122
  return screenShareManager;
119
123
  };
120
- export const getTracksFromStream = (stream) => {
124
+ const getTracksFromStream = (stream) => {
121
125
  const video = stream.getVideoTracks()[0];
122
126
  const audio = stream.getAudioTracks()[0] ?? null;
123
127
  return [video, audio];
@@ -0,0 +1,5 @@
1
+ import type { GenericMetadata } from "@fishjam-cloud/ts-client";
2
+ export declare const useUpdatePeerMetadata: <PeerMetadata extends GenericMetadata = GenericMetadata>() => {
3
+ updatePeerMetadata: (peerMetadata: PeerMetadata) => void;
4
+ };
5
+ //# sourceMappingURL=useUpdatePeerMetadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useUpdatePeerMetadata.d.ts","sourceRoot":"","sources":["../../src/hooks/useUpdatePeerMetadata.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,eAAO,MAAM,qBAAqB,GAAI,YAAY,SAAS,eAAe;uCAIvD,YAAY;CAO9B,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { useCallback } from "react";
2
+ import { useFishjamContext } from "./internal/useFishjamContext";
3
+ export const useUpdatePeerMetadata = () => {
4
+ const { fishjamClientRef } = useFishjamContext();
5
+ const updatePeerMetadata = useCallback((peerMetadata) => {
6
+ fishjamClientRef.current.updatePeerMetadata(peerMetadata);
7
+ }, [fishjamClientRef]);
8
+ return { updatePeerMetadata };
9
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"useVAD.d.ts","sourceRoot":"","sources":["../../src/hooks/useVAD.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAwC,MAAM,mBAAmB,CAAC;AAKtF,eAAO,MAAM,MAAM,YAAa,MAAM,EAAE,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CA6DhE,CAAC"}
1
+ {"version":3,"file":"useVAD.d.ts","sourceRoot":"","sources":["../../src/hooks/useVAD.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAW,MAAM,mBAAmB,CAAC;AAKzD,eAAO,MAAM,MAAM,YAAa,MAAM,EAAE,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CA6DhE,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { useEffect, useMemo, useState } from "react";
2
- import { useFishjamContext } from "./useFishjamContext";
3
- import { useFishjamClientState } from "./useFishjamClientState";
2
+ import { useFishjamContext } from "./internal/useFishjamContext";
3
+ import { useFishjamClientState } from "./internal/useFishjamClientState";
4
4
  export const useVAD = (peerIds) => {
5
5
  const { fishjamClientRef } = useFishjamContext();
6
6
  const { peers } = useFishjamClientState(fishjamClientRef.current);
@@ -8,7 +8,7 @@ export const useVAD = (peerIds) => {
8
8
  .filter((peer) => peerIds.includes(peer.id))
9
9
  .map((peer) => ({
10
10
  peerId: peer.id,
11
- microphoneTracks: Array.from(peer.tracks.values()).filter((track) => track.metadata?.type === "microphone"),
11
+ microphoneTracks: Array.from(peer.tracks.values()).filter(({ metadata }) => metadata?.type === "microphone"),
12
12
  })), [peers, peerIds]);
13
13
  const getDefaultVadStatuses = () => micTracksWithSelectedPeerIds.reduce((acc, peer) => ({
14
14
  ...acc,
package/dist/index.d.ts CHANGED
@@ -1,6 +1,15 @@
1
- export { useConnect, useDisconnect, useReconnection, useCamera, useMicrophone, useInitializeDevices, usePeers, useScreenShare, useStatus, useVAD, } from "./hooks/public";
1
+ export type { JoinRoomConfig } from "./hooks/useConnection";
2
+ export type { PeerWithTracks } from "./hooks/usePeers";
3
+ export { useConnection } from "./hooks/useConnection";
4
+ export { usePeers } from "./hooks/usePeers";
5
+ export { useCamera } from "./hooks/devices/useCamera";
6
+ export { useMicrophone } from "./hooks/devices/useMicrophone";
7
+ export { useInitializeDevices } from "./hooks/devices/useInitializeDevices";
8
+ export { useScreenShare } from "./hooks/useScreenShare";
9
+ export { useUpdatePeerMetadata } from "./hooks/useUpdatePeerMetadata";
10
+ export { useVAD } from "./hooks/useVAD";
2
11
  export { FishjamProvider } from "./fishjamProvider";
3
- export { Track, TrackMiddleware, TracksMiddleware, PeerStatus, Device, PeerWithTracks, ConnectConfig, PersistLastDeviceHandlers, ScreenshareApi, StartStreamingProps, } from "./types/public";
4
- export { AUDIO_TRACK_CONSTRAINTS, VIDEO_TRACK_CONSTRAINTS, SCREEN_SHARING_MEDIA_CONSTRAINTS } from "./constraints";
5
- export type { Peer, MessageEvents, CreateConfig, TrackBandwidthLimit, SimulcastBandwidthLimit, BandwidthLimit, WebRTCEndpointEvents, TrackContextEvents, Endpoint, SimulcastConfig, TrackContext, VadStatus, EncodingReason, MetadataParser, AuthErrorReason, Encoding, } from "@fishjam-cloud/ts-client";
12
+ export type { Track, TrackMiddleware, TracksMiddleware, PeerStatus, Device, PersistLastDeviceHandlers, ScreenshareApi, StartStreamingProps, DeviceType, } from "./types/public";
13
+ export type { Peer, MessageEvents, CreateConfig, TrackBandwidthLimit, SimulcastBandwidthLimit, BandwidthLimit, TrackContextEvents, SimulcastConfig, TrackContext, VadStatus, EncodingReason, AuthErrorReason, } from "@fishjam-cloud/ts-client";
14
+ export { Variant } from "@fishjam-cloud/ts-client";
6
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,aAAa,EACb,eAAe,EACf,SAAS,EACT,aAAa,EACb,oBAAoB,EACpB,QAAQ,EACR,cAAc,EACd,SAAS,EACT,MAAM,GACP,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EACL,KAAK,EACL,eAAe,EACf,gBAAgB,EAChB,UAAU,EACV,MAAM,EACN,cAAc,EACd,aAAa,EACb,yBAAyB,EACzB,cAAc,EACd,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,gCAAgC,EAAE,MAAM,eAAe,CAAC;AAEnH,YAAY,EACV,IAAI,EACJ,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,uBAAuB,EACvB,cAAc,EACd,oBAAoB,EACpB,kBAAkB,EAClB,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,SAAS,EACT,cAAc,EACd,cAAc,EACd,eAAe,EACf,QAAQ,GACT,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,YAAY,EACV,KAAK,EACL,eAAe,EACf,gBAAgB,EAChB,UAAU,EACV,MAAM,EACN,yBAAyB,EACzB,cAAc,EACd,mBAAmB,EACnB,UAAU,GACX,MAAM,gBAAgB,CAAC;AAExB,YAAY,EACV,IAAI,EACJ,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,uBAAuB,EACvB,cAAc,EACd,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,SAAS,EACT,cAAc,EACd,eAAe,GAChB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC"}
package/dist/index.js CHANGED
@@ -1,3 +1,10 @@
1
- export { useConnect, useDisconnect, useReconnection, useCamera, useMicrophone, useInitializeDevices, usePeers, useScreenShare, useStatus, useVAD, } from "./hooks/public";
1
+ export { useConnection } from "./hooks/useConnection";
2
+ export { usePeers } from "./hooks/usePeers";
3
+ export { useCamera } from "./hooks/devices/useCamera";
4
+ export { useMicrophone } from "./hooks/devices/useMicrophone";
5
+ export { useInitializeDevices } from "./hooks/devices/useInitializeDevices";
6
+ export { useScreenShare } from "./hooks/useScreenShare";
7
+ export { useUpdatePeerMetadata } from "./hooks/useUpdatePeerMetadata";
8
+ export { useVAD } from "./hooks/useVAD";
2
9
  export { FishjamProvider } from "./fishjamProvider";
3
- export { AUDIO_TRACK_CONSTRAINTS, VIDEO_TRACK_CONSTRAINTS, SCREEN_SHARING_MEDIA_CONSTRAINTS } from "./constraints";
10
+ export { Variant } from "@fishjam-cloud/ts-client";
@@ -0,0 +1,2 @@
1
+ export { useFishjamClient_DO_NOT_USE } from "./hooks/internal/useFishjamClient_DO_NOT_USE";
2
+ //# sourceMappingURL=internal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAC"}
@@ -0,0 +1 @@
1
+ export { useFishjamClient_DO_NOT_USE } from "./hooks/internal/useFishjamClient_DO_NOT_USE";
@@ -1,22 +1,11 @@
1
- import type { DeviceType } from "../DeviceManager";
2
- import type { StartStreamingProps, Track, TrackMiddleware, TracksMiddleware } from "./public";
1
+ import type { StartStreamingProps, Track, TrackMiddleware, TracksMiddleware, DeviceType } from "./public";
2
+ import type { Peer } from "@fishjam-cloud/ts-client";
3
3
  export type TrackId = string;
4
4
  export type PeerId = string;
5
- export type PeerState = {
5
+ export type PeerState<P, S> = {
6
6
  id: PeerId;
7
- metadata: {
8
- peer?: PeerMetadata;
9
- server: Record<string, unknown>;
10
- };
11
- tracks: Record<TrackId, Track>;
12
- };
13
- export type PeerMetadata = {
14
- displayName?: string;
15
- };
16
- export type TrackMetadata = {
17
- type: "camera" | "microphone" | "screenShareVideo" | "screenShareAudio";
18
- paused: boolean;
19
- displayName?: string;
7
+ metadata?: Peer<P, S>["metadata"];
8
+ tracks: Track[];
20
9
  };
21
10
  export type DevicesStatus = "OK" | "Error" | "Not requested" | "Requesting";
22
11
  export type MediaStatus = "OK" | "Error" | "Not requested" | "Requesting";
@@ -1 +1 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../src/types/internal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../src/types/internal.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- import type { Encoding, SimulcastConfig, ConnectConfig as TSClientConnectConfig, VadStatus } from "@fishjam-cloud/ts-client";
2
- import type { DeviceError, DeviceManagerStatus, DistinguishedTracks, PeerMetadata, PeerState, TrackId, TrackManager, TrackMetadata } from "./internal";
1
+ import type { SimulcastConfig, TrackMetadata, VadStatus, Variant } from "@fishjam-cloud/ts-client";
2
+ import type { DeviceError, DeviceManagerStatus, TrackId, TrackManager } from "./internal";
3
3
  export type Track = {
4
4
  stream: MediaStream | null;
5
- encoding: Encoding | null;
5
+ encoding: Variant | null;
6
6
  trackId: TrackId;
7
7
  metadata?: TrackMetadata;
8
8
  simulcastConfig: SimulcastConfig | null;
@@ -40,10 +40,6 @@ export type Device = {
40
40
  isMuted: boolean;
41
41
  isDeviceEnabled: boolean;
42
42
  } & Omit<TrackManager, "currentTrack">;
43
- export type PeerWithTracks = PeerState & DistinguishedTracks;
44
- export type ConnectConfig = Omit<TSClientConnectConfig<PeerMetadata>, "peerMetadata"> & {
45
- peerMetadata?: PeerMetadata;
46
- };
47
43
  export type PersistLastDeviceHandlers = {
48
44
  getLastDevice: () => MediaDeviceInfo | null;
49
45
  saveLastDevice: (info: MediaDeviceInfo) => void;
@@ -62,12 +58,17 @@ export type ScreenshareApi = {
62
58
  setTracksMiddleware: (middleware: TracksMiddleware | null) => Promise<void>;
63
59
  currentTracksMiddleware: TracksMiddleware | null;
64
60
  };
65
- export type SimulcastBandwidthLimits = Record<Encoding, number>;
61
+ export type SimulcastBandwidthLimits = {
62
+ [Variant.VARIANT_LOW]: number;
63
+ [Variant.VARIANT_MEDIUM]: number;
64
+ [Variant.VARIANT_HIGH]: number;
65
+ };
66
66
  export type StartStreamingProps = {
67
- simulcast?: Encoding[] | false;
67
+ simulcast?: Variant[] | false;
68
68
  };
69
69
  export type BandwidthLimits = {
70
70
  singleStream: number;
71
71
  simulcast: SimulcastBandwidthLimits;
72
72
  };
73
+ export type DeviceType = "audio" | "video";
73
74
  //# sourceMappingURL=public.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/types/public.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/types/public.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ import { Variant } from "@fishjam-cloud/ts-client";
1
2
  import type { BandwidthLimits } from "../types/public";
3
+ export declare const ALL_VARIANTS_SIMULCAST: readonly [Variant.VARIANT_LOW, Variant.VARIANT_MEDIUM, Variant.VARIANT_HIGH];
2
4
  export declare const mergeWithDefaultBandwitdthLimits: (limits?: Partial<BandwidthLimits>) => BandwidthLimits;
3
5
  //# sourceMappingURL=bandwidth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bandwidth.d.ts","sourceRoot":"","sources":["../../src/utils/bandwidth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD,eAAO,MAAM,gCAAgC,YAAa,OAAO,CAAC,eAAe,CAAC,KAAG,eAGnF,CAAC"}
1
+ {"version":3,"file":"bandwidth.d.ts","sourceRoot":"","sources":["../../src/utils/bandwidth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD,eAAO,MAAM,sBAAsB,8EAA+E,CAAC;AAEnH,eAAO,MAAM,gCAAgC,YAAa,OAAO,CAAC,eAAe,CAAC,KAAG,eAGnF,CAAC"}
@@ -1,4 +1,6 @@
1
+ import { Variant } from "@fishjam-cloud/ts-client";
2
+ export const ALL_VARIANTS_SIMULCAST = [Variant.VARIANT_LOW, Variant.VARIANT_MEDIUM, Variant.VARIANT_HIGH];
1
3
  export const mergeWithDefaultBandwitdthLimits = (limits) => ({
2
4
  singleStream: limits?.singleStream ?? 0,
3
- simulcast: limits?.simulcast ?? { l: 0, m: 0, h: 0 },
5
+ simulcast: limits?.simulcast ?? { [Variant.VARIANT_LOW]: 0, [Variant.VARIANT_MEDIUM]: 0, [Variant.VARIANT_HIGH]: 0 },
4
6
  });
@@ -1,4 +1,3 @@
1
- import type { PersistLastDeviceHandlers } from "../types/public";
2
- import type { DeviceType } from "../DeviceManager";
1
+ import type { PersistLastDeviceHandlers, DeviceType } from "../types/public";
3
2
  export declare function createStorageConfig(deviceType: DeviceType, storage?: boolean | PersistLastDeviceHandlers): PersistLastDeviceHandlers | null;
4
3
  //# sourceMappingURL=localStorage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"localStorage.d.ts","sourceRoot":"","sources":["../../src/utils/localStorage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,UAAU,EACtB,OAAO,CAAC,EAAE,OAAO,GAAG,yBAAyB,GAC5C,yBAAyB,GAAG,IAAI,CAIlC"}
1
+ {"version":3,"file":"localStorage.d.ts","sourceRoot":"","sources":["../../src/utils/localStorage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7E,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,UAAU,EACtB,OAAO,CAAC,EAAE,OAAO,GAAG,yBAAyB,GAC5C,yBAAyB,GAAG,IAAI,CAIlC"}
@@ -1,11 +1,7 @@
1
- import type { Encoding, FishjamClient } from "@fishjam-cloud/ts-client";
2
- import type { PeerMetadata, TrackMetadata } from "../types/internal";
1
+ import type { FishjamClient, SimulcastConfig } from "@fishjam-cloud/ts-client";
2
+ import { Variant } from "@fishjam-cloud/ts-client";
3
3
  import type { BandwidthLimits, Track } from "../types/public";
4
- export declare const getRemoteOrLocalTrack: (tsClient: FishjamClient<PeerMetadata, TrackMetadata>, remoteOrLocalTrackId: string | null) => Track | null;
4
+ export declare const getRemoteOrLocalTrack: (tsClient: FishjamClient, remoteOrLocalTrackId: string | null) => Track | null;
5
5
  export declare function setupOnEndedCallback(track: MediaStreamTrack, getCurrentTrackId: () => string | undefined, callback: () => Promise<void>): void;
6
- export declare const getConfigAndBandwidthFromProps: (encodings: Encoding[] | false | undefined, bandwidthLimits: BandwidthLimits) => readonly [number, undefined] | readonly [Map<Encoding, number>, {
7
- enabled: boolean;
8
- activeEncodings: Encoding[];
9
- disabledEncodings: Encoding[];
10
- }];
6
+ export declare const getConfigAndBandwidthFromProps: (encodings: Variant[] | false | undefined, bandwidthLimits: BandwidthLimits) => readonly [number, undefined] | readonly [Map<Variant, number>, SimulcastConfig];
11
7
  //# sourceMappingURL=track.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"track.d.ts","sourceRoot":"","sources":["../../src/utils/track.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAgB,MAAM,0BAA0B,CAAC;AACtF,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAoC9D,eAAO,MAAM,qBAAqB,aACtB,aAAa,CAAC,YAAY,EAAE,aAAa,CAAC,wBAC9B,MAAM,GAAG,IAAI,iBAKpC,CAAC;AAEF,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,gBAAgB,EACvB,iBAAiB,EAAE,MAAM,MAAM,GAAG,SAAS,EAC3C,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,QAQ9B;AAOD,eAAO,MAAM,8BAA8B,cAC9B,QAAQ,EAAE,GAAG,KAAK,GAAG,SAAS,mBACxB,eAAe;;;;EAWjC,CAAC"}
1
+ {"version":3,"file":"track.d.ts","sourceRoot":"","sources":["../../src/utils/track.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAA+B,MAAM,0BAA0B,CAAC;AAC5G,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAoC9D,eAAO,MAAM,qBAAqB,aAAc,aAAa,wBAAwB,MAAM,GAAG,IAAI,iBAIjG,CAAC;AAEF,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,gBAAgB,EACvB,iBAAiB,EAAE,MAAM,MAAM,GAAG,SAAS,EAC3C,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,QAQ9B;AAOD,eAAO,MAAM,8BAA8B,cAC9B,OAAO,EAAE,GAAG,KAAK,GAAG,SAAS,mBACvB,eAAe,oFAcjC,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { Variant } from "@fishjam-cloud/ts-client";
1
2
  // In most cases, the track is identified by its remote track ID.
2
3
  // This ID comes from the ts-client `addTrack` method.
3
4
  // However, we don't have that ID before the `addTrack` method returns it.
@@ -42,7 +43,7 @@ export function setupOnEndedCallback(track, getCurrentTrackId, callback) {
42
43
  });
43
44
  }
44
45
  const getDisabledEncodings = (activeEncodings = []) => {
45
- const allEncodings = ["l", "m", "h"];
46
+ const allEncodings = [Variant.VARIANT_LOW, Variant.VARIANT_MEDIUM, Variant.VARIANT_HIGH];
46
47
  return allEncodings.filter((encoding) => !activeEncodings.includes(encoding));
47
48
  };
48
49
  export const getConfigAndBandwidthFromProps = (encodings, bandwidthLimits) => {
@@ -50,9 +51,10 @@ export const getConfigAndBandwidthFromProps = (encodings, bandwidthLimits) => {
50
51
  return [bandwidthLimits.singleStream, undefined];
51
52
  const config = {
52
53
  enabled: true,
53
- activeEncodings: encodings,
54
- disabledEncodings: getDisabledEncodings(encodings),
54
+ enabledVariants: encodings,
55
+ disabledVariants: getDisabledEncodings(encodings),
55
56
  };
56
- const bandwidth = new Map(Object.entries(bandwidthLimits.simulcast));
57
+ const variantEntries = Object.entries(bandwidthLimits.simulcast);
58
+ const bandwidth = new Map(variantEntries);
57
59
  return [bandwidth, config];
58
60
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fishjam-cloud/react-client",
3
- "version": "0.9.0",
3
+ "version": "0.10.2",
4
4
  "description": "React client library for Fishjam Cloud",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Fishjam Cloud Team",
@@ -23,8 +23,8 @@
23
23
  "types": "./dist/index.d.ts"
24
24
  },
25
25
  "./internal": {
26
- "import": "./dist/hooks/internal.js",
27
- "types": "./dist/hooks/internal.d.ts"
26
+ "import": "./dist/internal.js",
27
+ "types": "./dist/internal.d.ts"
28
28
  }
29
29
  },
30
30
  "scripts": {
@@ -38,19 +38,19 @@
38
38
  "prepack": "yarn workspace @fishjam-cloud/ts-client build && yarn build"
39
39
  },
40
40
  "devDependencies": {
41
- "@playwright/test": "^1.47.2",
41
+ "@playwright/test": "^1.49.0",
42
42
  "@types/events": "^3.0.3",
43
43
  "@types/lodash.isequal": "^4.5.8",
44
- "@types/node": "^22.7.5",
45
- "@types/react": "^18.3.11",
44
+ "@types/node": "^22.10.0",
45
+ "@types/react": "^18.3.12",
46
46
  "react": "^18.2.0",
47
47
  "typed-emitter": "^2.1.0",
48
- "typedoc": "^0.26.8",
49
- "typedoc-plugin-mdn-links": "^3.3.2",
50
- "typescript": "^5.6.2"
48
+ "typedoc": "^0.27.0",
49
+ "typedoc-plugin-mdn-links": "^4.0.1",
50
+ "typescript": "^5.7.2"
51
51
  },
52
52
  "dependencies": {
53
- "@fishjam-cloud/ts-client": "0.9.0",
53
+ "@fishjam-cloud/ts-client": "0.10.2",
54
54
  "events": "3.3.0",
55
55
  "lodash.isequal": "4.5.0"
56
56
  },
@@ -1 +0,0 @@
1
- {"version":3,"file":"DeviceManager.d.ts","sourceRoot":"","sources":["../src/DeviceManager.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"constraints.d.ts","sourceRoot":"","sources":["../src/constraints.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,EAAE,qBAErC,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,qBAerC,CAAC;AAEF,eAAO,MAAM,gCAAgC,EAAE,sBAM9C,CAAC;AAEF,eAAO,MAAM,4BAA4B,aAC7B,MAAM,GAAG,SAAS,eACf,qBAAqB,GAAG,SAAS,GAAG,OAAO,KACvD,qBAAqB,GAAG,OAM1B,CAAC;AAEF,eAAO,MAAM,kBAAkB,oBACZ,MAAM,GAAG,SAAS,eACtB,qBAAqB,GAAG,SAAS,GAAG,OAAO,KACvD,qBAAqB,GAAG,SAAS,GAAG,OAUtC,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { DeviceManagerState } from "../../types/internal";
2
- import type { DeviceManager } from "../../DeviceManager";
3
- export declare const useDeviceManager: (deviceManager: DeviceManager) => DeviceManagerState;
4
- //# sourceMappingURL=useDeviceManager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDeviceManager.d.ts","sourceRoot":"","sources":["../../../src/hooks/deviceManagers/useDeviceManager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAuB,MAAM,qBAAqB,CAAC;AAe9E,eAAO,MAAM,gBAAgB,kBAAmB,aAAa,uBAoC5D,CAAC"}
@@ -1,10 +0,0 @@
1
- import type { TrackManager } from "../../types/internal";
2
- import type { Device } from "../../types/public";
3
- import type { DeviceManager } from "../../DeviceManager";
4
- type DeviceApiDependencies = {
5
- trackManager: TrackManager;
6
- deviceManager: DeviceManager;
7
- };
8
- export declare const useDeviceApi: ({ trackManager, deviceManager }: DeviceApiDependencies) => Device;
9
- export {};
10
- //# sourceMappingURL=useDeviceApi.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDeviceApi.d.ts","sourceRoot":"","sources":["../../../src/hooks/devices/useDeviceApi.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGzD,KAAK,qBAAqB,GAAG;IAC3B,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,YAAY,oCAAqC,qBAAqB,KAAG,MAkCrF,CAAC"}
@@ -1,2 +0,0 @@
1
- export { useFishjamClient_DO_NOT_USE } from "./useFishjamClient_DO_NOT_USE";
2
- //# sourceMappingURL=internal.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../src/hooks/internal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC"}
@@ -1 +0,0 @@
1
- export { useFishjamClient_DO_NOT_USE } from "./useFishjamClient_DO_NOT_USE";
@@ -1,10 +0,0 @@
1
- export { useConnect, useDisconnect } from "./useConnection";
2
- export { useReconnection } from "./useReconnection";
3
- export { useCamera } from "./devices/useCamera";
4
- export { useMicrophone } from "./devices/useMicrophone";
5
- export { useInitializeDevices } from "./devices/useInitializeDevices";
6
- export { usePeers } from "./usePeers";
7
- export { useScreenShare } from "./useScreenShare";
8
- export { useStatus } from "./useStatus";
9
- export { useVAD } from "./useVAD";
10
- //# sourceMappingURL=public.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/hooks/public.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC"}
@@ -1,9 +0,0 @@
1
- export { useConnect, useDisconnect } from "./useConnection";
2
- export { useReconnection } from "./useReconnection";
3
- export { useCamera } from "./devices/useCamera";
4
- export { useMicrophone } from "./devices/useMicrophone";
5
- export { useInitializeDevices } from "./devices/useInitializeDevices";
6
- export { usePeers } from "./usePeers";
7
- export { useScreenShare } from "./useScreenShare";
8
- export { useStatus } from "./useStatus";
9
- export { useVAD } from "./useVAD";
@@ -1,10 +0,0 @@
1
- import type { Component, Endpoint, Peer, FishjamClient } from "@fishjam-cloud/ts-client";
2
- import type { PeerId, PeerMetadata, TrackMetadata } from "../types/internal";
3
- export interface FishjamClientState {
4
- peers: Record<PeerId, Peer<PeerMetadata, TrackMetadata>>;
5
- components: Record<string, Component<PeerMetadata, TrackMetadata>>;
6
- localPeer: Endpoint<PeerMetadata, TrackMetadata> | null;
7
- isReconnecting: boolean;
8
- }
9
- export declare function useFishjamClientState(fishjamClient: FishjamClient<PeerMetadata, TrackMetadata>): FishjamClientState;
10
- //# sourceMappingURL=useFishjamClientState.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useFishjamClientState.d.ts","sourceRoot":"","sources":["../../src/hooks/useFishjamClientState.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAiB,IAAI,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACxG,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AA0C7E,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC;IACzD,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC;IACnE,SAAS,EAAE,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,GAAG,IAAI,CAAC;IACxD,cAAc,EAAE,OAAO,CAAC;CACzB;AAMD,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,aAAa,CAAC,YAAY,EAAE,aAAa,CAAC,GAAG,kBAAkB,CAwCnH"}
@@ -1,7 +0,0 @@
1
- /**
2
- *
3
- * @category Connection
4
- * @deprecated
5
- */
6
- export declare function useFishjamClient_DO_NOT_USE(): import("@fishjam-cloud/ts-client").FishjamClient<import("../types/internal").PeerMetadata, import("../types/internal").TrackMetadata>;
7
- //# sourceMappingURL=useFishjamClient_DO_NOT_USE.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useFishjamClient_DO_NOT_USE.d.ts","sourceRoot":"","sources":["../../src/hooks/useFishjamClient_DO_NOT_USE.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAgB,2BAA2B,0IAI1C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useFishjamContext.d.ts","sourceRoot":"","sources":["../../src/hooks/useFishjamContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAiB,KAAK,gBAAgB,EAAc,MAAM,OAAO,CAAC;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACnF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEnF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,gBAAgB,EAAE,gBAAgB,CAAC,aAAa,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC;IAC/E,qBAAqB,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACvD,qBAAqB,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACvD,4BAA4B,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACxD,kBAAkB,EAAE,cAAc,CAAC;IACnC,UAAU,EAAE,UAAU,CAAC;IACvB,iBAAiB,EAAE,YAAY,CAAC;IAChC,iBAAiB,EAAE,YAAY,CAAC;IAChC,WAAW,EAAE,kBAAkB,CAAC;IAChC,eAAe,EAAE,eAAe,CAAC;CAClC,CAAC;AAEF,eAAO,MAAM,cAAc,oDAAiD,CAAC;AAE7E,wBAAgB,iBAAiB,IAGb,kBAAkB,CACrC"}
@@ -1,8 +0,0 @@
1
- import type { FishjamClient } from "@fishjam-cloud/ts-client";
2
- import type { PeerMetadata, TrackMetadata } from "../types/internal";
3
- import type { PeerStatus } from "../types/public";
4
- export declare const usePeerStatus: (client: FishjamClient<PeerMetadata, TrackMetadata>) => {
5
- readonly peerStatus: PeerStatus;
6
- readonly getCurrentPeerStatus: () => PeerStatus;
7
- };
8
- //# sourceMappingURL=usePeerStatus.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"usePeerStatus.d.ts","sourceRoot":"","sources":["../../src/hooks/usePeerStatus.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,eAAO,MAAM,aAAa,WAAY,aAAa,CAAC,YAAY,EAAE,aAAa,CAAC;;;CA8C/E,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useReconnection.d.ts","sourceRoot":"","sources":["../../src/hooks/useReconnection.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEnE;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAO,kBA6BlC,CAAC"}
@@ -1,6 +0,0 @@
1
- /**
2
- *
3
- * @category Connection
4
- */
5
- export declare function useStatus(): import("..").PeerStatus;
6
- //# sourceMappingURL=useStatus.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useStatus.d.ts","sourceRoot":"","sources":["../../src/hooks/useStatus.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,wBAAgB,SAAS,4BAExB"}
@@ -1,8 +0,0 @@
1
- import { useFishjamContext } from "./useFishjamContext";
2
- /**
3
- *
4
- * @category Connection
5
- */
6
- export function useStatus() {
7
- return useFishjamContext().peerStatus;
8
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"useTrackManager.d.ts","sourceRoot":"","sources":["../../src/hooks/useTrackManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGjG,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,mBAAmB,EAAmB,MAAM,iBAAiB,CAAC;AAEzG,UAAU,kBAAkB;IAC1B,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,aAAa,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IACrD,oBAAoB,EAAE,MAAM,UAAU,CAAC;IACvC,eAAe,EAAE,eAAe,CAAC;IACjC,eAAe,CAAC,EAAE,mBAAmB,GAAG,KAAK,CAAC;CAC/C;AAWD,eAAO,MAAM,eAAe,wFAMzB,kBAAkB,KAAG,YA0LvB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"mediaInitializer.d.ts","sourceRoot":"","sources":["../src/mediaInitializer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAkB,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGpE,KAAK,UAAU,CAAC,CAAC,IAAI;IAAE,KAAK,EAAE,CAAC,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,CAAC;AAE5C,KAAK,gBAAgB,GAAG,UAAU,CAAC,qBAAqB,GAAG,SAAS,GAAG,OAAO,CAAC,CAAC;AAEhF,KAAK,eAAe,GAAG,UAAU,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;AAsB1D,eAAO,MAAM,iBAAiB,gBACf,sBAAsB,iBACrB,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,KAC3C,OAAO,CAAC,CAAC,WAAW,GAAG,IAAI,EAAE,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,CAuB9D,CAAC;AAIF,eAAO,MAAM,kBAAkB,WACrB,WAAW,gBACL,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,WACnC,eAAe,EAAE,eACb,gBAAgB,mBACZ,eAAe,KAC/B,OAAO,CAAC,CAAC,WAAW,GAAG,IAAI,EAAE,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,CAsB9D,CAAC"}
File without changes