@fishjam-cloud/react-client 0.26.3 → 0.27.0
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.
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
export type UseSandboxProps = {
|
|
2
|
-
|
|
3
|
-
sandboxApiUrl?: string;
|
|
4
|
-
};
|
|
2
|
+
sandboxApiUrl: string;
|
|
5
3
|
};
|
|
6
4
|
export type RoomType = "conference" | "livestream" | "audio_only";
|
|
7
|
-
export declare const useSandbox: (props
|
|
5
|
+
export declare const useSandbox: (props: UseSandboxProps) => {
|
|
8
6
|
getSandboxPeerToken: (roomName: string, peerName: string, roomType?: RoomType) => Promise<string>;
|
|
9
7
|
getSandboxViewerToken: (roomName: string) => Promise<string>;
|
|
10
8
|
getSandboxLivestream: (roomName: string, isPublic?: boolean) => Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSandbox.d.ts","sourceRoot":"","sources":["../../src/hooks/useSandbox.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useSandbox.d.ts","sourceRoot":"","sources":["../../src/hooks/useSandbox.ts"],"names":[],"mappings":"AAYA,MAAM,MAAM,eAAe,GAAG;IAC5B,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,YAAY,GAAG,YAAY,GAAG,YAAY,CAAC;AAElE,eAAO,MAAM,UAAU,GAAI,OAAO,eAAe;oCAI5B,MAAM,YAAY,MAAM,aAAY,QAAQ;sCAsB5C,MAAM;qCAqBN,MAAM,aAAY,OAAO;uBAUX,MAAM;cAAQ;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE;;CAO5E,CAAC"}
|
package/dist/hooks/useSandbox.js
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { useCallback } from "react";
|
|
2
|
-
import {
|
|
3
|
-
import { resolveFishjamUrl } from "../utils/fishjamUrl";
|
|
2
|
+
import { MissingSandboxApiUrlError } from "../utils/errors";
|
|
4
3
|
export const useSandbox = (props) => {
|
|
5
|
-
const
|
|
6
|
-
const fishjamUrl = resolveFishjamUrl(fishjamId);
|
|
7
|
-
const sandboxApiUrl = props?.configOverride?.sandboxApiUrl ?? `${fishjamUrl}/room-manager`;
|
|
4
|
+
const sandboxApiUrl = props?.sandboxApiUrl;
|
|
8
5
|
const getSandboxPeerToken = useCallback(async (roomName, peerName, roomType = "conference") => {
|
|
6
|
+
if (!sandboxApiUrl)
|
|
7
|
+
throw new MissingSandboxApiUrlError();
|
|
9
8
|
const url = new URL(sandboxApiUrl);
|
|
10
9
|
url.searchParams.set("roomName", roomName);
|
|
11
10
|
url.searchParams.set("peerName", peerName);
|
|
@@ -19,6 +18,8 @@ export const useSandbox = (props) => {
|
|
|
19
18
|
return data.peerToken;
|
|
20
19
|
}, [sandboxApiUrl]);
|
|
21
20
|
const getSandboxViewerToken = useCallback(async (roomName) => {
|
|
21
|
+
if (!sandboxApiUrl)
|
|
22
|
+
throw new MissingSandboxApiUrlError();
|
|
22
23
|
const url = new URL(`${sandboxApiUrl}/${roomName}/livestream-viewer-token`);
|
|
23
24
|
const res = await fetch(url);
|
|
24
25
|
if (!res.ok) {
|
|
@@ -32,6 +33,8 @@ export const useSandbox = (props) => {
|
|
|
32
33
|
return data.token;
|
|
33
34
|
}, [sandboxApiUrl]);
|
|
34
35
|
const getSandboxLivestream = useCallback(async (roomName, isPublic = false) => {
|
|
36
|
+
if (!sandboxApiUrl)
|
|
37
|
+
throw new MissingSandboxApiUrlError();
|
|
35
38
|
const url = new URL(`${sandboxApiUrl}/livestream`);
|
|
36
39
|
url.searchParams.set("roomName", roomName);
|
|
37
40
|
url.searchParams.set("public", isPublic.toString());
|
package/dist/utils/errors.d.ts
CHANGED
|
@@ -5,4 +5,7 @@ export declare const OVERCONSTRAINED_ERROR: DeviceError;
|
|
|
5
5
|
export declare const NOT_FOUND_ERROR: DeviceError;
|
|
6
6
|
export declare const UNHANDLED_ERROR: DeviceError;
|
|
7
7
|
export declare const parseUserMediaError: (error: unknown, logger: ReturnType<typeof getLogger>) => DeviceError;
|
|
8
|
+
export declare class MissingSandboxApiUrlError extends Error {
|
|
9
|
+
constructor();
|
|
10
|
+
}
|
|
8
11
|
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD,eAAO,MAAM,iBAAiB,EAAE,WAAyC,CAAC;AAC1E,eAAO,MAAM,qBAAqB,EAAE,WAA8C,CAAC;AACnF,eAAO,MAAM,eAAe,EAAE,WAAuC,CAAC;AACtE,eAAO,MAAM,eAAe,EAAE,WAAyC,CAAC;AAIxE,eAAO,MAAM,mBAAmB,GAAI,OAAO,OAAO,EAAE,QAAQ,UAAU,CAAC,OAAO,SAAS,CAAC,KAAG,WAa1F,CAAC"}
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD,eAAO,MAAM,iBAAiB,EAAE,WAAyC,CAAC;AAC1E,eAAO,MAAM,qBAAqB,EAAE,WAA8C,CAAC;AACnF,eAAO,MAAM,eAAe,EAAE,WAAuC,CAAC;AACtE,eAAO,MAAM,eAAe,EAAE,WAAyC,CAAC;AAIxE,eAAO,MAAM,mBAAmB,GAAI,OAAO,OAAO,EAAE,QAAQ,UAAU,CAAC,OAAO,SAAS,CAAC,KAAG,WAa1F,CAAC;AAEF,qBAAa,yBAA0B,SAAQ,KAAK;;CAKnD"}
|
package/dist/utils/errors.js
CHANGED
|
@@ -18,3 +18,9 @@ export const parseUserMediaError = (error, logger) => {
|
|
|
18
18
|
return UNHANDLED_ERROR;
|
|
19
19
|
}
|
|
20
20
|
};
|
|
21
|
+
export class MissingSandboxApiUrlError extends Error {
|
|
22
|
+
constructor() {
|
|
23
|
+
super("useSandbox requires a sandboxApiUrl, you can get it at: https://fishjam.io/app/sandbox");
|
|
24
|
+
this.name = "MissingSandboxApiUrlError";
|
|
25
|
+
}
|
|
26
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fishjam-cloud/react-client",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.27.0",
|
|
4
4
|
"description": "React client library for Fishjam",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Fishjam Team",
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"vitest": "^3.1.1"
|
|
63
63
|
},
|
|
64
64
|
"dependencies": {
|
|
65
|
-
"@fishjam-cloud/ts-client": "0.
|
|
65
|
+
"@fishjam-cloud/ts-client": "0.27.0",
|
|
66
66
|
"events": "3.3.0",
|
|
67
67
|
"lodash.isequal": "4.5.0"
|
|
68
68
|
},
|