@clockworkdog/cogs-client 1.0.0-rc.4 → 1.0.0-rc.7
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/AudioPlayer.d.ts +4 -2
- package/dist/AudioPlayer.js +145 -83
- package/dist/AudioPlayer.js.map +1 -1
- package/dist/CogsConnection.js +12 -5
- package/dist/CogsConnection.js.map +1 -1
- package/dist/browser/index.js +169 -125
- package/dist/types/AudioState.d.ts +17 -6
- package/dist/types/AudioState.js +0 -8
- package/dist/types/AudioState.js.map +1 -1
- package/package.json +3 -3
package/dist/AudioPlayer.d.ts
CHANGED
|
@@ -17,10 +17,12 @@ export default class AudioPlayer {
|
|
|
17
17
|
fade?: number;
|
|
18
18
|
loop: boolean;
|
|
19
19
|
}): void;
|
|
20
|
-
pauseAudioClip(path: string, fade
|
|
20
|
+
pauseAudioClip(path: string, { fade }: {
|
|
21
|
+
fade?: number;
|
|
22
|
+
}, onlySoundId?: number, allowIfPauseRequested?: boolean): void;
|
|
21
23
|
stopAudioClip(path: string, { fade }: {
|
|
22
24
|
fade?: number;
|
|
23
|
-
}): void;
|
|
25
|
+
}, onlySoundId?: number, allowIfStopRequested?: boolean): void;
|
|
24
26
|
stopAllAudioClips(options: {
|
|
25
27
|
fade?: number;
|
|
26
28
|
}): void;
|
package/dist/AudioPlayer.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const howler_1 = require("howler");
|
|
4
4
|
const urls_1 = require("./helpers/urls");
|
|
5
|
-
const
|
|
5
|
+
const DEBUG = true;
|
|
6
6
|
class AudioPlayer {
|
|
7
7
|
constructor(cogsConnection) {
|
|
8
8
|
this.eventTarget = new EventTarget();
|
|
@@ -17,7 +17,9 @@ class AudioPlayer {
|
|
|
17
17
|
const message = event.detail;
|
|
18
18
|
switch (message.type) {
|
|
19
19
|
case 'media_config_update':
|
|
20
|
-
this.
|
|
20
|
+
if (this.globalVolume !== message.globalVolume) {
|
|
21
|
+
this.setGlobalVolume(message.globalVolume);
|
|
22
|
+
}
|
|
21
23
|
this.updateConfig(message.files);
|
|
22
24
|
break;
|
|
23
25
|
case 'audio_play':
|
|
@@ -29,7 +31,7 @@ class AudioPlayer {
|
|
|
29
31
|
});
|
|
30
32
|
break;
|
|
31
33
|
case 'audio_pause':
|
|
32
|
-
this.pauseAudioClip(message.file, message.fade);
|
|
34
|
+
this.pauseAudioClip(message.file, { fade: message.fade });
|
|
33
35
|
break;
|
|
34
36
|
case 'audio_stop':
|
|
35
37
|
if (message.file) {
|
|
@@ -49,9 +51,14 @@ class AudioPlayer {
|
|
|
49
51
|
const sendInitialClipStates = () => {
|
|
50
52
|
const files = Object.entries(this.audioClipPlayers).map(([file, player]) => {
|
|
51
53
|
const activeClips = Object.values(player.activeClips);
|
|
52
|
-
const status = activeClips.some(({ state }) => state ===
|
|
54
|
+
const status = activeClips.some(({ state }) => state.type === 'playing' ||
|
|
55
|
+
state.type === 'pausing' ||
|
|
56
|
+
state.type === 'stopping' ||
|
|
57
|
+
state.type === 'play_requested' ||
|
|
58
|
+
state.type === 'pause_requested' ||
|
|
59
|
+
state.type === 'stop_requested')
|
|
53
60
|
? 'playing'
|
|
54
|
-
: activeClips.some(({ state }) => state
|
|
61
|
+
: activeClips.some(({ state }) => state.type === 'paused')
|
|
55
62
|
? 'paused'
|
|
56
63
|
: 'stopped';
|
|
57
64
|
return [file, status];
|
|
@@ -67,20 +74,29 @@ class AudioPlayer {
|
|
|
67
74
|
this.notifyStateListeners();
|
|
68
75
|
}
|
|
69
76
|
playAudioClip(path, { playId, volume, fade, loop }) {
|
|
77
|
+
log('Playing clip', { path });
|
|
70
78
|
if (!(path in this.audioClipPlayers)) {
|
|
79
|
+
log('Creating ephemeral clip', { path });
|
|
71
80
|
this.audioClipPlayers[path] = this.createClip(path, { preload: false, ephemeral: true });
|
|
72
81
|
}
|
|
73
82
|
this.updateAudioClipPlayer(path, (clipPlayer) => {
|
|
83
|
+
// Paused clips need to be played again
|
|
74
84
|
const pausedSoundIds = Object.entries(clipPlayer.activeClips)
|
|
75
|
-
.filter(([, { state }]) => state ===
|
|
85
|
+
.filter(([, { state }]) => state.type === 'paused' || state.type === 'pausing')
|
|
76
86
|
.map(([id]) => parseInt(id));
|
|
77
|
-
// Paused clips need to be played again
|
|
78
87
|
pausedSoundIds.forEach((soundId) => {
|
|
88
|
+
log('Resuming paused clip', { soundId });
|
|
79
89
|
clipPlayer.player.play(soundId);
|
|
80
90
|
});
|
|
81
|
-
//
|
|
82
|
-
const
|
|
83
|
-
|
|
91
|
+
// Clips with pause requested no longer need to pause, they can continue playing now
|
|
92
|
+
const pauseRequestedSoundIds = Object.entries(clipPlayer.activeClips)
|
|
93
|
+
.filter(([, { state }]) => state.type === 'pause_requested')
|
|
94
|
+
.map(([id]) => parseInt(id));
|
|
95
|
+
// If no currently paused/pausing/pause_requested clips, play a new clip
|
|
96
|
+
const newSoundIds = pausedSoundIds.length > 0 || pauseRequestedSoundIds.length > 0 ? [] : [clipPlayer.player.play()];
|
|
97
|
+
// paused and pause_requested clips treated the same, they should have their properties
|
|
98
|
+
// updated with the latest play action's properties
|
|
99
|
+
[...pausedSoundIds, ...pauseRequestedSoundIds, ...newSoundIds].forEach((soundId) => {
|
|
84
100
|
clipPlayer.player.loop(loop, soundId);
|
|
85
101
|
// Cleanup any old callbacks first
|
|
86
102
|
clipPlayer.player.off('play', undefined, soundId);
|
|
@@ -88,26 +104,39 @@ class AudioPlayer {
|
|
|
88
104
|
clipPlayer.player.off('fade', undefined, soundId);
|
|
89
105
|
clipPlayer.player.off('end', undefined, soundId);
|
|
90
106
|
clipPlayer.player.off('stop', undefined, soundId);
|
|
91
|
-
clipPlayer.player.once('stop', () =>
|
|
92
|
-
this.handleStoppedClip(path, soundId);
|
|
93
|
-
this.notifyClipStateListeners(playId, path, 'stopped');
|
|
94
|
-
}, soundId);
|
|
107
|
+
clipPlayer.player.once('stop', () => this.handleStoppedClip(path, playId, soundId), soundId);
|
|
95
108
|
// Looping clips fire the 'end' callback on every loop
|
|
96
109
|
clipPlayer.player.on('end', () => {
|
|
97
110
|
var _a;
|
|
98
111
|
if (!((_a = clipPlayer.activeClips[soundId]) === null || _a === void 0 ? void 0 : _a.loop)) {
|
|
99
|
-
this.handleStoppedClip(path, soundId);
|
|
100
|
-
this.notifyClipStateListeners(playId, path, 'stopped');
|
|
112
|
+
this.handleStoppedClip(path, playId, soundId);
|
|
101
113
|
}
|
|
102
114
|
}, soundId);
|
|
103
115
|
const activeClip = {
|
|
104
116
|
playId,
|
|
105
|
-
state:
|
|
117
|
+
state: { type: 'play_requested' },
|
|
106
118
|
loop,
|
|
107
119
|
volume,
|
|
108
120
|
};
|
|
109
|
-
//
|
|
121
|
+
// Once clip starts, check if it should actually be paused or stopped
|
|
122
|
+
// If not, then update state to 'playing'
|
|
123
|
+
clipPlayer.player.once('play', () => {
|
|
124
|
+
const clipState = clipPlayer.activeClips[soundId].state;
|
|
125
|
+
if (clipState.type === 'pause_requested') {
|
|
126
|
+
log('Clip started playing but should be paused', { path, soundId });
|
|
127
|
+
this.pauseAudioClip(path, { fade: clipState.fade }, soundId, true);
|
|
128
|
+
}
|
|
129
|
+
else if (clipState.type === 'stop_requested') {
|
|
130
|
+
log('Clip started playing but should be stopped', { path, soundId });
|
|
131
|
+
this.stopAudioClip(path, { fade: clipState.fade }, soundId, true);
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
this.updateActiveAudioClip(path, soundId, (clip) => ({ ...clip, state: { type: 'playing' } }));
|
|
135
|
+
}
|
|
136
|
+
}, soundId);
|
|
137
|
+
// To fade or to no fade?
|
|
110
138
|
if (isFadeValid(fade)) {
|
|
139
|
+
// Start fade when clip starts
|
|
111
140
|
clipPlayer.player.volume(0, soundId);
|
|
112
141
|
clipPlayer.player.once('play', () => {
|
|
113
142
|
clipPlayer.player.fade(0, volume, fade * 1000, soundId);
|
|
@@ -116,106 +145,135 @@ class AudioPlayer {
|
|
|
116
145
|
else {
|
|
117
146
|
clipPlayer.player.volume(volume, soundId);
|
|
118
147
|
}
|
|
119
|
-
// Track new active clip
|
|
148
|
+
// Track new/updated active clip
|
|
120
149
|
clipPlayer.activeClips = { ...clipPlayer.activeClips, [soundId]: activeClip };
|
|
121
150
|
});
|
|
122
151
|
return clipPlayer;
|
|
123
152
|
});
|
|
124
153
|
this.notifyClipStateListeners(playId, path, 'playing');
|
|
125
154
|
}
|
|
126
|
-
pauseAudioClip(path, fade) {
|
|
155
|
+
pauseAudioClip(path, { fade }, onlySoundId, allowIfPauseRequested) {
|
|
156
|
+
var _a, _b;
|
|
157
|
+
// No active clips to pause
|
|
158
|
+
if (Object.keys((_b = (_a = this.audioClipPlayers[path]) === null || _a === void 0 ? void 0 : _a.activeClips) !== null && _b !== void 0 ? _b : {}).length === 0) {
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
127
161
|
this.updateAudioClipPlayer(path, (clipPlayer) => {
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
162
|
+
clipPlayer.activeClips = Object.fromEntries(Object.entries(clipPlayer.activeClips).map(([soundIdStr, clip]) => {
|
|
163
|
+
const soundId = parseInt(soundIdStr);
|
|
164
|
+
// If onlySoundId specified, only update that clip
|
|
165
|
+
if (onlySoundId === undefined || onlySoundId === soundId) {
|
|
166
|
+
if ((allowIfPauseRequested && clip.state.type === 'pause_requested') || clip.state.type === 'playing' || clip.state.type === 'pausing') {
|
|
167
|
+
if (isFadeValid(fade)) {
|
|
168
|
+
// Fade then pause
|
|
169
|
+
clipPlayer.player.once('fade', (soundId) => {
|
|
170
|
+
clipPlayer.player.pause(soundId);
|
|
171
|
+
this.updateActiveAudioClip(path, soundId, (clip) => ({ ...clip, state: { type: 'paused' } }));
|
|
172
|
+
this.notifyClipStateListeners(clip.playId, path, 'paused');
|
|
173
|
+
}, soundId);
|
|
174
|
+
clipPlayer.player.fade(clipPlayer.player.volume(soundId), 0, fade * 1000, soundId);
|
|
175
|
+
clip.state = { type: 'pausing' };
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
// Pause now
|
|
137
179
|
clipPlayer.player.pause(soundId);
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
return [soundIdStr, { ...clip, state: AudioState_1.ActiveAudioClipState.Pausing }];
|
|
180
|
+
clip.state = { type: 'paused' };
|
|
181
|
+
this.notifyClipStateListeners(clip.playId, path, 'paused');
|
|
182
|
+
}
|
|
142
183
|
}
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
return [soundId, { ...clip, state: AudioState_1.ActiveAudioClipState.Paused }];
|
|
184
|
+
// Clip hasn't started playing yet, or has already had pause_requested (but fade may have changed so update here)
|
|
185
|
+
else if (clip.state.type === 'play_requested' || clip.state.type === 'pause_requested') {
|
|
186
|
+
clip.state = { type: 'pause_requested', fade };
|
|
147
187
|
}
|
|
148
|
-
}
|
|
149
|
-
|
|
188
|
+
}
|
|
189
|
+
return [soundIdStr, clip];
|
|
190
|
+
}));
|
|
191
|
+
return clipPlayer;
|
|
150
192
|
});
|
|
151
193
|
}
|
|
152
|
-
stopAudioClip(path, { fade }) {
|
|
153
|
-
|
|
154
|
-
|
|
194
|
+
stopAudioClip(path, { fade }, onlySoundId, allowIfStopRequested) {
|
|
195
|
+
var _a, _b;
|
|
196
|
+
// No active clips to stop
|
|
197
|
+
if (Object.keys((_b = (_a = this.audioClipPlayers[path]) === null || _a === void 0 ? void 0 : _a.activeClips) !== null && _b !== void 0 ? _b : {}).length === 0) {
|
|
155
198
|
return;
|
|
156
199
|
}
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
player.off('fade');
|
|
160
|
-
if (isFadeValid(fade)) {
|
|
161
|
-
// Start fade out for each non-paused active clip
|
|
162
|
-
Object.entries(activeClips).forEach(([soundIdStr, clip]) => {
|
|
200
|
+
this.updateAudioClipPlayer(path, (clipPlayer) => {
|
|
201
|
+
clipPlayer.activeClips = Object.fromEntries(Object.entries(clipPlayer.activeClips).map(([soundIdStr, clip]) => {
|
|
163
202
|
const soundId = parseInt(soundIdStr);
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
203
|
+
// If onlySoundId specified, only update that clip
|
|
204
|
+
if (onlySoundId === undefined || onlySoundId === soundId) {
|
|
205
|
+
if ((allowIfStopRequested && clip.state.type === 'stop_requested') ||
|
|
206
|
+
clip.state.type === 'playing' ||
|
|
207
|
+
clip.state.type === 'pausing' ||
|
|
208
|
+
clip.state.type === 'paused' ||
|
|
209
|
+
clip.state.type === 'stopping') {
|
|
210
|
+
if (isFadeValid(fade) && clip.state.type !== 'paused') {
|
|
211
|
+
// Cleanup any old fade callbacks first
|
|
212
|
+
// TODO: Remove cast once https://github.com/DefinitelyTyped/DefinitelyTyped/pull/59411 is merged
|
|
213
|
+
clipPlayer.player.off('fade', soundId);
|
|
214
|
+
clipPlayer.player.fade(clipPlayer.player.volume(soundId), 0, fade * 1000, soundId);
|
|
215
|
+
// Set callback after starting new fade, otherwise it will fire straight away as the previous fade is cancelled
|
|
216
|
+
clipPlayer.player.once('fade', (soundId) => clipPlayer.player.stop(soundId), soundId);
|
|
217
|
+
clip.state = { type: 'stopping' };
|
|
218
|
+
}
|
|
219
|
+
else {
|
|
220
|
+
clipPlayer.player.stop(soundId);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
// Clip hasn't started playing yet, or has already had stop_requested (but fade may have changed so update here)
|
|
224
|
+
// or has pause_requested, but stop takes precedence
|
|
225
|
+
else if (clip.state.type === 'play_requested' || clip.state.type === 'pause_requested' || clip.state.type === 'stop_requested') {
|
|
226
|
+
log("Trying to stop clip which hasn't started playing yet", { path, soundId });
|
|
227
|
+
clip.state = { type: 'stop_requested', fade };
|
|
228
|
+
}
|
|
172
229
|
}
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
const soundId = parseInt(soundIdStr);
|
|
178
|
-
player.stop(soundId);
|
|
179
|
-
});
|
|
180
|
-
}
|
|
230
|
+
return [soundIdStr, clip];
|
|
231
|
+
}));
|
|
232
|
+
return clipPlayer;
|
|
233
|
+
});
|
|
181
234
|
}
|
|
182
235
|
stopAllAudioClips(options) {
|
|
236
|
+
log('Stopping all clips');
|
|
183
237
|
Object.keys(this.audioClipPlayers).forEach((path) => {
|
|
184
238
|
this.stopAudioClip(path, options);
|
|
185
239
|
});
|
|
186
240
|
}
|
|
187
241
|
setAudioClipVolume(path, { volume, fade }) {
|
|
242
|
+
var _a, _b;
|
|
188
243
|
if (!(volume >= 0 && volume <= 1)) {
|
|
189
244
|
console.warn('Invalid volume', volume);
|
|
190
245
|
return;
|
|
191
246
|
}
|
|
247
|
+
// No active clips to set volume for
|
|
248
|
+
if (Object.keys((_b = (_a = this.audioClipPlayers[path]) === null || _a === void 0 ? void 0 : _a.activeClips) !== null && _b !== void 0 ? _b : {}).length === 0) {
|
|
249
|
+
return;
|
|
250
|
+
}
|
|
192
251
|
this.updateAudioClipPlayer(path, (clipPlayer) => {
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
if (
|
|
198
|
-
|
|
199
|
-
if (isFadeValid(fade)) {
|
|
200
|
-
clipPlayer.player.fade(clipPlayer.player.volume(soundId), volume, fade * 1000);
|
|
201
|
-
}
|
|
202
|
-
else {
|
|
203
|
-
clipPlayer.player.volume(volume);
|
|
204
|
-
}
|
|
205
|
-
return [soundIdStr, { ...clip, volume }];
|
|
252
|
+
clipPlayer.activeClips = Object.fromEntries(Object.entries(clipPlayer.activeClips).map(([soundIdStr, clip]) => {
|
|
253
|
+
// Ignored for pausing/stopping instances
|
|
254
|
+
if (clip.state.type !== 'pausing' && clip.state.type !== 'stopping') {
|
|
255
|
+
const soundId = parseInt(soundIdStr);
|
|
256
|
+
if (isFadeValid(fade)) {
|
|
257
|
+
clipPlayer.player.fade(clipPlayer.player.volume(soundId), volume, fade * 1000);
|
|
206
258
|
}
|
|
207
259
|
else {
|
|
208
|
-
|
|
260
|
+
clipPlayer.player.volume(volume);
|
|
209
261
|
}
|
|
210
|
-
|
|
211
|
-
|
|
262
|
+
return [soundIdStr, { ...clip, volume }];
|
|
263
|
+
}
|
|
264
|
+
else {
|
|
265
|
+
return [soundIdStr, clip];
|
|
266
|
+
}
|
|
267
|
+
}));
|
|
268
|
+
return clipPlayer;
|
|
212
269
|
});
|
|
213
270
|
}
|
|
214
|
-
handleStoppedClip(path, soundId) {
|
|
271
|
+
handleStoppedClip(path, playId, soundId) {
|
|
215
272
|
this.updateAudioClipPlayer(path, (clipPlayer) => {
|
|
216
273
|
delete clipPlayer.activeClips[soundId];
|
|
217
274
|
return clipPlayer;
|
|
218
275
|
});
|
|
276
|
+
this.notifyClipStateListeners(playId, path, 'stopped');
|
|
219
277
|
}
|
|
220
278
|
updateActiveAudioClip(path, soundId, update) {
|
|
221
279
|
this.updateAudioClipPlayer(path, (clipPlayer) => soundId in clipPlayer.activeClips
|
|
@@ -270,7 +328,7 @@ class AudioPlayer {
|
|
|
270
328
|
};
|
|
271
329
|
return clips;
|
|
272
330
|
}, {});
|
|
273
|
-
const isPlaying = Object.values(this.audioClipPlayers).some(({ activeClips }) => Object.values(activeClips).some((clip) => clip.state ===
|
|
331
|
+
const isPlaying = Object.values(this.audioClipPlayers).some(({ activeClips }) => Object.values(activeClips).some((clip) => clip.state.type === 'playing' || clip.state.type === 'pausing' || clip.state.type === 'stopping'));
|
|
274
332
|
const audioState = {
|
|
275
333
|
globalVolume: this.globalVolume,
|
|
276
334
|
isPlaying,
|
|
@@ -298,7 +356,6 @@ class AudioPlayer {
|
|
|
298
356
|
loop: false,
|
|
299
357
|
volume: 1,
|
|
300
358
|
html5: !config.preload,
|
|
301
|
-
preload: config.preload,
|
|
302
359
|
});
|
|
303
360
|
return player;
|
|
304
361
|
}
|
|
@@ -319,6 +376,11 @@ class AudioPlayer {
|
|
|
319
376
|
}
|
|
320
377
|
}
|
|
321
378
|
exports.default = AudioPlayer;
|
|
379
|
+
function log(...data) {
|
|
380
|
+
if (DEBUG) {
|
|
381
|
+
console.log(...data);
|
|
382
|
+
}
|
|
383
|
+
}
|
|
322
384
|
function isFadeValid(fade) {
|
|
323
385
|
return typeof fade === 'number' && !isNaN(fade) && fade > 0;
|
|
324
386
|
}
|
package/dist/AudioPlayer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AudioPlayer.js","sourceRoot":"","sources":["../src/AudioPlayer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AudioPlayer.js","sourceRoot":"","sources":["../src/AudioPlayer.ts"],"names":[],"mappings":"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"}
|
package/dist/CogsConnection.js
CHANGED
|
@@ -16,7 +16,7 @@ class CogsConnection {
|
|
|
16
16
|
this._timerState = null;
|
|
17
17
|
this.currentOutputPortValues = { ...outputPortValues };
|
|
18
18
|
const { useReconnectingWebsocket, path, pathParams } = websocketParametersFromUrl(document.location.href);
|
|
19
|
-
const socketUrl = `ws://${hostname}:${port}${path}
|
|
19
|
+
const socketUrl = `ws://${hostname}:${port}${path}${pathParams ? '?' + pathParams : ''}`;
|
|
20
20
|
this.websocket = useReconnectingWebsocket ? new reconnecting_websocket_1.default(socketUrl) : new WebSocket(socketUrl);
|
|
21
21
|
this.websocket.onopen = () => {
|
|
22
22
|
this.currentConfig = {}; // Received on open connection
|
|
@@ -127,13 +127,14 @@ class CogsConnection {
|
|
|
127
127
|
}
|
|
128
128
|
exports.default = CogsConnection;
|
|
129
129
|
function websocketParametersFromUrl(url) {
|
|
130
|
-
var _a, _b, _c;
|
|
130
|
+
var _a, _b, _c, _d, _e;
|
|
131
131
|
const parsedUrl = new URL(url);
|
|
132
132
|
const pathParams = new URLSearchParams(parsedUrl.searchParams);
|
|
133
133
|
const localClientId = pathParams.get('local_id');
|
|
134
134
|
const isSimulator = pathParams.get('simulator') === 'true';
|
|
135
|
+
const display = (_a = pathParams.get('display')) !== null && _a !== void 0 ? _a : '';
|
|
135
136
|
if (localClientId) {
|
|
136
|
-
const type = (
|
|
137
|
+
const type = (_b = pathParams.get('t')) !== null && _b !== void 0 ? _b : '';
|
|
137
138
|
pathParams.delete('local_id');
|
|
138
139
|
return {
|
|
139
140
|
path: `/client/local/${encodeURIComponent(localClientId)}`,
|
|
@@ -142,13 +143,19 @@ function websocketParametersFromUrl(url) {
|
|
|
142
143
|
};
|
|
143
144
|
}
|
|
144
145
|
else if (isSimulator) {
|
|
145
|
-
const name = (
|
|
146
|
+
const name = (_c = pathParams.get('name')) !== null && _c !== void 0 ? _c : '';
|
|
146
147
|
pathParams.delete('simulator');
|
|
147
148
|
pathParams.delete('name');
|
|
148
149
|
return { path: `/simulator/${encodeURIComponent(name)}`, pathParams, useReconnectingWebsocket: true };
|
|
149
150
|
}
|
|
151
|
+
else if (display) {
|
|
152
|
+
const displayIdIndex = (_d = pathParams.get('displayIdIndex')) !== null && _d !== void 0 ? _d : '';
|
|
153
|
+
pathParams.delete('display');
|
|
154
|
+
pathParams.delete('displayIdIndex');
|
|
155
|
+
return { path: `/display/${encodeURIComponent(display)}/${encodeURIComponent(displayIdIndex)}` };
|
|
156
|
+
}
|
|
150
157
|
else {
|
|
151
|
-
const serial = (
|
|
158
|
+
const serial = (_e = pathParams.get('serial')) !== null && _e !== void 0 ? _e : '';
|
|
152
159
|
pathParams.delete('serial');
|
|
153
160
|
return { path: `/client/${encodeURIComponent(serial)}`, pathParams };
|
|
154
161
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CogsConnection.js","sourceRoot":"","sources":["../src/CogsConnection.ts"],"names":[],"mappings":";;;;;AAAA,mDAAkG;AAClG,oFAA2D;AAE3D,yCAAkD;AAqBlD,MAAqB,cAAc;IAqCjC,YACE,EAAE,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,GAAG,uBAAgB,KAA2C,EAAE,EAC7G,mBAA+C,SAAS;QA7BlD,gBAAW,GAAG,IAAI,WAAW,EAAE,CAAC;QAEhC,kBAAa,GAA0B,EAAwC,CAAC,CAAC,8BAA8B;QAK/G,2BAAsB,GAA8B,EAA4C,CAAC,CAAC,8BAA8B;QAKhI,4BAAuB,GAA+B,EAA6C,CAAC,CAAC,0BAA0B;QAK/H,eAAU,GAAc,sBAAS,CAAC,KAAK,CAAC;QAKxC,gBAAW,GAAsB,IAAI,CAAC;QAS5C,IAAI,CAAC,uBAAuB,GAAG,EAAE,GAAG,gBAAgB,EAAE,CAAC;QACvD,MAAM,EAAE,wBAAwB,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,0BAA0B,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC1G,MAAM,SAAS,GAAG,QAAQ,QAAQ,IAAI,IAAI,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"CogsConnection.js","sourceRoot":"","sources":["../src/CogsConnection.ts"],"names":[],"mappings":"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"}
|