@unityevolv/ofiskit-realtime-client 0.1.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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mesh.js","sourceRoot":"","sources":["../../src/rtc/mesh.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,104 @@
1
+ /**
2
+ * Choosing what to share, including where the browser cannot ask.
3
+ *
4
+ * On the web there is nothing to build: `getDisplayMedia` opens the browser's own
5
+ * picker, which is the one people already know and the only one that can offer a
6
+ * tab. On Electron that picker does not exist — the desktop capture API hands the
7
+ * app a list of screens and windows and expects the app to draw it — so the host
8
+ * supplies the list and the shared UI draws it the same way everywhere.
9
+ *
10
+ * Which is why this is an interface and not an implementation: ofiskit has no
11
+ * desktop app, and nothing here imports Electron or knows it exists. A host that
12
+ * has one passes a provider in; a browser passes nothing and gets the browser's
13
+ * picker.
14
+ */
15
+ /** What to share, and how. Everything is optional; nothing chooses for the person. */
16
+ export interface ShareOptions {
17
+ /**
18
+ * A source from a host-supplied picker.
19
+ *
20
+ * Absent means the browser asks, which is the web path and the better one where
21
+ * it exists. Present means the person has already chosen from a list the host
22
+ * provided, so nothing further should be asked.
23
+ */
24
+ sourceId?: string;
25
+ }
26
+ /** One thing that can be shared, as a host's picker describes it. */
27
+ export interface ScreenSource {
28
+ /** Opaque, and passed back as `ShareOptions.sourceId` untouched. */
29
+ id: string;
30
+ /** A window title or a display name. Shown to the person, so it is theirs. */
31
+ name: string;
32
+ kind: 'screen' | 'window';
33
+ /**
34
+ * A still of the source, as a data URL.
35
+ *
36
+ * A list of window titles is close to useless — half of them are the same word
37
+ * repeated — and a thumbnail is how somebody recognises the thing they meant.
38
+ * Optional because generating them costs the host something.
39
+ */
40
+ thumbnailUrl?: string;
41
+ /**
42
+ * This is our own window.
43
+ *
44
+ * Sharing it produces an infinite mirror and is never what anybody meant, so it
45
+ * is never offered. The host marks it because the host is the only thing that
46
+ * knows its own window id; `usableSources` is what makes the marking count.
47
+ */
48
+ self?: boolean;
49
+ }
50
+ /**
51
+ * Where a list of shareable things comes from, on a platform that has to ask.
52
+ *
53
+ * One method, called when the picker opens rather than held: thumbnails go stale
54
+ * the moment somebody moves a window, and a cached list offers a window that has
55
+ * since been closed.
56
+ */
57
+ export interface ScreenSourceProvider {
58
+ list(): Promise<ScreenSource[]>;
59
+ }
60
+ /**
61
+ * The sources worth offering, in the order worth offering them.
62
+ *
63
+ * Our own window is dropped, whole screens come before windows, and everything
64
+ * else keeps the host's order. Pure and separate from the picker that draws it,
65
+ * because "never offer the app's own window" is a rule that has to be true rather
66
+ * than drawn correctly — a mirror of the sharing app is the one screen share that
67
+ * is guaranteed to be useless, and it looks exactly like a working one until
68
+ * somebody scrolls.
69
+ */
70
+ export declare function usableSources(sources: readonly ScreenSource[]): ScreenSource[];
71
+ /**
72
+ * The constraints that capture one host-chosen source.
73
+ *
74
+ * Chromium's desktop capture takes a source id through a non-standard `mandatory`
75
+ * block rather than through `getDisplayMedia`, and this is the whole of the
76
+ * platform-specific knowledge involved — kept pure so the shape can be tested
77
+ * without a browser, and kept here rather than in the mesh so that the adapter has
78
+ * nothing platform-specific in it.
79
+ */
80
+ export declare function desktopConstraints(sourceId: string): MediaStreamConstraints;
81
+ /**
82
+ * Whether a failed capture was somebody changing their mind.
83
+ *
84
+ * Closing the picker is the commonest outcome of pressing share and is not a
85
+ * failure: nothing should be said about it, because the person knows exactly what
86
+ * they just did. The browser reports it as a denied permission, which is also how
87
+ * it reports an operating system that is blocking screen recording outright — and
88
+ * that one must be said, because otherwise the button looks broken.
89
+ *
90
+ * The message is the only thing that tells the two apart, so it is what this reads.
91
+ * Getting it wrong in the safe direction means one unnecessary sentence; getting it
92
+ * wrong the other way means a person pressing a button that silently does nothing.
93
+ */
94
+ export declare function shareCancelled(cause: unknown): boolean;
95
+ /**
96
+ * Turn a failed screen capture into something worth reading.
97
+ *
98
+ * Same reasoning as the microphone's version: the fixes are completely different
99
+ * and the browser's own messages explain none of them. Blocked at the operating
100
+ * system level is the one people cannot solve by trying again, and it is invisible
101
+ * from inside the browser — so it is named.
102
+ */
103
+ export declare function describeShareError(cause: unknown): string;
104
+ //# sourceMappingURL=screen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"screen.d.ts","sourceRoot":"","sources":["../../src/rtc/screen.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,sFAAsF;AACtF,MAAM,WAAW,YAAY;IAC3B;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,qEAAqE;AACrE,MAAM,WAAW,YAAY;IAC3B,oEAAoE;IACpE,EAAE,EAAE,MAAM,CAAA;IACV,8EAA8E;IAC9E,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAA;IACzB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AAED;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAAA;CAChC;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,GAAG,YAAY,EAAE,CAS9E;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,sBAAsB,CAa3E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAGtD;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAmBzD"}
@@ -0,0 +1,103 @@
1
+ /**
2
+ * Choosing what to share, including where the browser cannot ask.
3
+ *
4
+ * On the web there is nothing to build: `getDisplayMedia` opens the browser's own
5
+ * picker, which is the one people already know and the only one that can offer a
6
+ * tab. On Electron that picker does not exist — the desktop capture API hands the
7
+ * app a list of screens and windows and expects the app to draw it — so the host
8
+ * supplies the list and the shared UI draws it the same way everywhere.
9
+ *
10
+ * Which is why this is an interface and not an implementation: ofiskit has no
11
+ * desktop app, and nothing here imports Electron or knows it exists. A host that
12
+ * has one passes a provider in; a browser passes nothing and gets the browser's
13
+ * picker.
14
+ */
15
+ /**
16
+ * The sources worth offering, in the order worth offering them.
17
+ *
18
+ * Our own window is dropped, whole screens come before windows, and everything
19
+ * else keeps the host's order. Pure and separate from the picker that draws it,
20
+ * because "never offer the app's own window" is a rule that has to be true rather
21
+ * than drawn correctly — a mirror of the sharing app is the one screen share that
22
+ * is guaranteed to be useless, and it looks exactly like a working one until
23
+ * somebody scrolls.
24
+ */
25
+ export function usableSources(sources) {
26
+ return sources
27
+ .filter((source) => source.self !== true)
28
+ .map((source, index) => ({ source, index }))
29
+ .sort((a, b) => {
30
+ if (a.source.kind !== b.source.kind)
31
+ return a.source.kind === 'screen' ? -1 : 1;
32
+ return a.index - b.index;
33
+ })
34
+ .map((one) => one.source);
35
+ }
36
+ /**
37
+ * The constraints that capture one host-chosen source.
38
+ *
39
+ * Chromium's desktop capture takes a source id through a non-standard `mandatory`
40
+ * block rather than through `getDisplayMedia`, and this is the whole of the
41
+ * platform-specific knowledge involved — kept pure so the shape can be tested
42
+ * without a browser, and kept here rather than in the mesh so that the adapter has
43
+ * nothing platform-specific in it.
44
+ */
45
+ export function desktopConstraints(sourceId) {
46
+ /*
47
+ * Cast rather than declared, and through `unknown` rather than through `any`:
48
+ * `mandatory` is not in the DOM's constraint types because it is not in the
49
+ * standard — it is how Chromium, and therefore Electron, names a desktopCapturer
50
+ * source. Widening the DOM types to admit it would let a typo through anywhere
51
+ * constraints are built, so the cast stays in the one function that needs it.
52
+ */
53
+ const video = {
54
+ mandatory: { chromeMediaSource: 'desktop', chromeMediaSourceId: sourceId },
55
+ };
56
+ return { audio: false, video };
57
+ }
58
+ /**
59
+ * Whether a failed capture was somebody changing their mind.
60
+ *
61
+ * Closing the picker is the commonest outcome of pressing share and is not a
62
+ * failure: nothing should be said about it, because the person knows exactly what
63
+ * they just did. The browser reports it as a denied permission, which is also how
64
+ * it reports an operating system that is blocking screen recording outright — and
65
+ * that one must be said, because otherwise the button looks broken.
66
+ *
67
+ * The message is the only thing that tells the two apart, so it is what this reads.
68
+ * Getting it wrong in the safe direction means one unnecessary sentence; getting it
69
+ * wrong the other way means a person pressing a button that silently does nothing.
70
+ */
71
+ export function shareCancelled(cause) {
72
+ if (!(cause instanceof Error) || cause.name !== 'NotAllowedError')
73
+ return false;
74
+ return !/system/i.test(cause.message);
75
+ }
76
+ /**
77
+ * Turn a failed screen capture into something worth reading.
78
+ *
79
+ * Same reasoning as the microphone's version: the fixes are completely different
80
+ * and the browser's own messages explain none of them. Blocked at the operating
81
+ * system level is the one people cannot solve by trying again, and it is invisible
82
+ * from inside the browser — so it is named.
83
+ */
84
+ export function describeShareError(cause) {
85
+ const name = cause instanceof Error ? cause.name : '';
86
+ switch (name) {
87
+ case 'NotAllowedError':
88
+ case 'SecurityError':
89
+ return 'Your computer is blocking screen recording. Allow it for this app in your system settings, then try again.';
90
+ case 'NotFoundError':
91
+ return 'There was nothing available to share.';
92
+ case 'NotReadableError':
93
+ case 'TrackStartError':
94
+ return 'That screen could not be captured. Try sharing a window instead.';
95
+ case 'AbortError':
96
+ return 'The share stopped before it started. Try again.';
97
+ case 'NotSupportedError':
98
+ return 'This browser cannot share a screen. Try Chrome, Edge or Firefox on a computer.';
99
+ default:
100
+ return 'Your screen could not be shared.';
101
+ }
102
+ }
103
+ //# sourceMappingURL=screen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"screen.js","sourceRoot":"","sources":["../../src/rtc/screen.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAkDH;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,OAAgC;IAC5D,OAAO,OAAO;SACX,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC;SACxC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;SAC3C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACb,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI;YAAE,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/E,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAA;IAC1B,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAC7B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAgB;IACjD;;;;;;OAMG;IACH,MAAM,KAAK,GAAG;QACZ,SAAS,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE,mBAAmB,EAAE,QAAQ,EAAE;KACvC,CAAA;IAErC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;AAChC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB;QAAE,OAAO,KAAK,CAAA;IAC/E,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;AACvC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAC/C,MAAM,IAAI,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;IAErD,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,iBAAiB,CAAC;QACvB,KAAK,eAAe;YAClB,OAAO,4GAA4G,CAAA;QACrH,KAAK,eAAe;YAClB,OAAO,uCAAuC,CAAA;QAChD,KAAK,kBAAkB,CAAC;QACxB,KAAK,iBAAiB;YACpB,OAAO,kEAAkE,CAAA;QAC3E,KAAK,YAAY;YACf,OAAO,iDAAiD,CAAA;QAC1D,KAAK,mBAAmB;YACtB,OAAO,gFAAgF,CAAA;QACzF;YACE,OAAO,kCAAkC,CAAA;IAC7C,CAAC;AACH,CAAC"}
package/package.json ADDED
@@ -0,0 +1,21 @@
1
+ {
2
+ "name": "@unityevolv/ofiskit-realtime-client",
3
+ "version": "0.1.0",
4
+ "description": "The office state on the client: snapshot, diffs, resync, and the RTC client adapter interface with the built-in peer-to-peer implementation. No DOM, so React Native can use it too.",
5
+ "license": "AGPL-3.0-only",
6
+ "type": "module",
7
+ "main": "./dist/index.js",
8
+ "types": "./dist/index.d.ts",
9
+ "exports": { ".": { "types": "./dist/index.d.ts", "import": "./dist/index.js" } },
10
+ "files": ["dist"],
11
+ "sideEffects": false,
12
+ "publishConfig": { "access": "public" },
13
+ "repository": { "type": "git", "url": "git+https://github.com/UnityEvolv/ofis-kit.git", "directory": "packages/realtime-client" },
14
+ "scripts": { "build": "tsc -p tsconfig.json", "typecheck": "tsc -p tsconfig.json --noEmit" },
15
+ "dependencies": {
16
+ "@unityevolv/ofiskit-presence-store": "0.1.0",
17
+ "@unityevolv/ofiskit-realtime-core": "0.1.0",
18
+ "@unityevolv/ofiskit-template": "0.1.0",
19
+ "socket.io-client": "^4.8.1"
20
+ }
21
+ }