@naviedu/room-platform-react 0.0.9 → 0.0.12
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/README.md +15 -5
- package/index.d.ts +2 -6
- package/index.esm.js +768 -521
- package/package.json +1 -1
- package/styles.css +42 -8
package/index.esm.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import { Component,
|
|
3
|
+
import { Component, useContext, createContext, useState, useRef, useCallback, useEffect, useMemo, useId, forwardRef, useLayoutEffect } from 'react';
|
|
4
4
|
import { Slot, AlertDialog as AlertDialog$1, Dialog as Dialog$1, Select as Select$1, Tabs as Tabs$1, Tooltip as Tooltip$1 } from 'radix-ui';
|
|
5
5
|
import { Minimize2, Maximize2, XIcon, ChevronDownIcon, CheckIcon, ChevronUpIcon, Loader2Icon, PhoneOff, Bell, PhoneCall, Hand, VideoOff, ChevronUp, SunDim, Images, ImageUp, Plus, Trash2, Settings, ArrowLeftRight, Monitor, LogOut, Mic, Camera, X, ChevronLeft, ChevronRight, PanelRightOpen, PanelRightClose, Check } from 'lucide-react';
|
|
6
|
-
import { toast } from 'sonner';
|
|
7
6
|
import { RoomEvent, Track, createLocalVideoTrack, Room, DataPacket_Kind } from 'livekit-client';
|
|
7
|
+
import { createPortal } from 'react-dom';
|
|
8
|
+
import { toast, Toaster } from 'sonner';
|
|
8
9
|
import { VideoTrack, RoomContext, RoomAudioRenderer, StartAudio, useTracks, useRoomContext, TrackToggle } from '@livekit/components-react';
|
|
9
10
|
import { supportsBackgroundProcessors, BackgroundProcessor } from '@livekit/track-processors';
|
|
10
|
-
import { createPortal } from 'react-dom';
|
|
11
11
|
import { io } from 'socket.io-client';
|
|
12
12
|
|
|
13
13
|
function _assert_this_initialized$2(self) {
|
|
@@ -173,7 +173,13 @@ var getParticipantTabTitle = function(participantTab) {
|
|
|
173
173
|
};
|
|
174
174
|
|
|
175
175
|
var RoomPlatformCapability = {
|
|
176
|
+
ROOM_JOIN: 'room:join',
|
|
177
|
+
CHAT_SEND: 'chat:send',
|
|
178
|
+
MEDIA_SUBSCRIBE: 'media:subscribe',
|
|
179
|
+
MEDIA_PUBLISH_AUDIO: 'media:publish_audio',
|
|
180
|
+
MEDIA_PUBLISH_VIDEO: 'media:publish_video',
|
|
176
181
|
MEDIA_SHARE_SCREEN: 'media:share_screen',
|
|
182
|
+
DATA_PUBLISH: 'data:publish',
|
|
177
183
|
ROOM_SPEAK_REQUEST: 'room:speak_request',
|
|
178
184
|
ROOM_MODERATE: 'room:moderate',
|
|
179
185
|
MONITOR_MANAGE: 'monitor:manage',
|
|
@@ -182,6 +188,10 @@ var RoomPlatformCapability = {
|
|
|
182
188
|
PRIVATE_ROOM_CLOSE: 'private_room:close',
|
|
183
189
|
WHITEBOARD_CLEAR: 'whiteboard:clear'
|
|
184
190
|
};
|
|
191
|
+
var roomPlatformCapabilities = Object.values(RoomPlatformCapability);
|
|
192
|
+
var isRoomPlatformCapability = function(value) {
|
|
193
|
+
return roomPlatformCapabilities.includes(value);
|
|
194
|
+
};
|
|
185
195
|
|
|
186
196
|
function _define_property$y(obj, key, value) {
|
|
187
197
|
if (key in obj) {
|
|
@@ -250,16 +260,16 @@ function clsx() {
|
|
|
250
260
|
return n;
|
|
251
261
|
}
|
|
252
262
|
|
|
253
|
-
function _array_like_to_array$
|
|
263
|
+
function _array_like_to_array$C(arr, len) {
|
|
254
264
|
if (len == null || len > arr.length) len = arr.length;
|
|
255
265
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
256
266
|
return arr2;
|
|
257
267
|
}
|
|
258
|
-
function _array_with_holes$
|
|
268
|
+
function _array_with_holes$y(arr) {
|
|
259
269
|
if (Array.isArray(arr)) return arr;
|
|
260
270
|
}
|
|
261
271
|
function _array_without_holes$f(arr) {
|
|
262
|
-
if (Array.isArray(arr)) return _array_like_to_array$
|
|
272
|
+
if (Array.isArray(arr)) return _array_like_to_array$C(arr);
|
|
263
273
|
}
|
|
264
274
|
function _define_property$x(obj, key, value) {
|
|
265
275
|
if (key in obj) {
|
|
@@ -277,7 +287,7 @@ function _define_property$x(obj, key, value) {
|
|
|
277
287
|
function _iterable_to_array$f(iter) {
|
|
278
288
|
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
279
289
|
}
|
|
280
|
-
function _iterable_to_array_limit$
|
|
290
|
+
function _iterable_to_array_limit$y(arr, i) {
|
|
281
291
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
282
292
|
if (_i == null) return;
|
|
283
293
|
var _arr = [];
|
|
@@ -301,7 +311,7 @@ function _iterable_to_array_limit$x(arr, i) {
|
|
|
301
311
|
}
|
|
302
312
|
return _arr;
|
|
303
313
|
}
|
|
304
|
-
function _non_iterable_rest$
|
|
314
|
+
function _non_iterable_rest$y() {
|
|
305
315
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
306
316
|
}
|
|
307
317
|
function _non_iterable_spread$f() {
|
|
@@ -322,19 +332,19 @@ function _object_spread$t(target) {
|
|
|
322
332
|
}
|
|
323
333
|
return target;
|
|
324
334
|
}
|
|
325
|
-
function _sliced_to_array$
|
|
326
|
-
return _array_with_holes$
|
|
335
|
+
function _sliced_to_array$y(arr, i) {
|
|
336
|
+
return _array_with_holes$y(arr) || _iterable_to_array_limit$y(arr, i) || _unsupported_iterable_to_array$C(arr, i) || _non_iterable_rest$y();
|
|
327
337
|
}
|
|
328
338
|
function _to_consumable_array$f(arr) {
|
|
329
|
-
return _array_without_holes$f(arr) || _iterable_to_array$f(arr) || _unsupported_iterable_to_array$
|
|
339
|
+
return _array_without_holes$f(arr) || _iterable_to_array$f(arr) || _unsupported_iterable_to_array$C(arr) || _non_iterable_spread$f();
|
|
330
340
|
}
|
|
331
|
-
function _unsupported_iterable_to_array$
|
|
341
|
+
function _unsupported_iterable_to_array$C(o, minLen) {
|
|
332
342
|
if (!o) return;
|
|
333
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
343
|
+
if (typeof o === "string") return _array_like_to_array$C(o, minLen);
|
|
334
344
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
335
345
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
336
346
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
337
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
347
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$C(o, minLen);
|
|
338
348
|
}
|
|
339
349
|
/**
|
|
340
350
|
* Concatenates two arrays faster than the array spread operator.
|
|
@@ -493,7 +503,7 @@ var processObjectDefinition = function(classDefinition, classPartObject, classGr
|
|
|
493
503
|
var entries = Object.entries(classDefinition);
|
|
494
504
|
var len = entries.length;
|
|
495
505
|
for(var i = 0; i < len; i++){
|
|
496
|
-
var _entries_i = _sliced_to_array$
|
|
506
|
+
var _entries_i = _sliced_to_array$y(entries[i], 2), key = _entries_i[0], value = _entries_i[1];
|
|
497
507
|
processClassesRecursively(value, getPart(classPartObject, key), classGroupId, theme);
|
|
498
508
|
}
|
|
499
509
|
};
|
|
@@ -5283,16 +5293,16 @@ function cn() {
|
|
|
5283
5293
|
return twMerge(clsx(inputs));
|
|
5284
5294
|
}
|
|
5285
5295
|
|
|
5286
|
-
function _array_like_to_array$
|
|
5296
|
+
function _array_like_to_array$B(arr, len) {
|
|
5287
5297
|
if (len == null || len > arr.length) len = arr.length;
|
|
5288
5298
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
5289
5299
|
return arr2;
|
|
5290
5300
|
}
|
|
5291
|
-
function _array_with_holes$
|
|
5301
|
+
function _array_with_holes$x(arr) {
|
|
5292
5302
|
if (Array.isArray(arr)) return arr;
|
|
5293
5303
|
}
|
|
5294
5304
|
function _array_without_holes$e(arr) {
|
|
5295
|
-
if (Array.isArray(arr)) return _array_like_to_array$
|
|
5305
|
+
if (Array.isArray(arr)) return _array_like_to_array$B(arr);
|
|
5296
5306
|
}
|
|
5297
5307
|
function _define_property$w(obj, key, value) {
|
|
5298
5308
|
if (key in obj) {
|
|
@@ -5310,7 +5320,7 @@ function _define_property$w(obj, key, value) {
|
|
|
5310
5320
|
function _iterable_to_array$e(iter) {
|
|
5311
5321
|
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
5312
5322
|
}
|
|
5313
|
-
function _iterable_to_array_limit$
|
|
5323
|
+
function _iterable_to_array_limit$x(arr, i) {
|
|
5314
5324
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
5315
5325
|
if (_i == null) return;
|
|
5316
5326
|
var _arr = [];
|
|
@@ -5334,7 +5344,7 @@ function _iterable_to_array_limit$w(arr, i) {
|
|
|
5334
5344
|
}
|
|
5335
5345
|
return _arr;
|
|
5336
5346
|
}
|
|
5337
|
-
function _non_iterable_rest$
|
|
5347
|
+
function _non_iterable_rest$x() {
|
|
5338
5348
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
5339
5349
|
}
|
|
5340
5350
|
function _non_iterable_spread$e() {
|
|
@@ -5391,19 +5401,19 @@ function _object_without_properties_loose$f(source, excluded) {
|
|
|
5391
5401
|
}
|
|
5392
5402
|
return target;
|
|
5393
5403
|
}
|
|
5394
|
-
function _sliced_to_array$
|
|
5395
|
-
return _array_with_holes$
|
|
5404
|
+
function _sliced_to_array$x(arr, i) {
|
|
5405
|
+
return _array_with_holes$x(arr) || _iterable_to_array_limit$x(arr, i) || _unsupported_iterable_to_array$B(arr, i) || _non_iterable_rest$x();
|
|
5396
5406
|
}
|
|
5397
5407
|
function _to_consumable_array$e(arr) {
|
|
5398
|
-
return _array_without_holes$e(arr) || _iterable_to_array$e(arr) || _unsupported_iterable_to_array$
|
|
5408
|
+
return _array_without_holes$e(arr) || _iterable_to_array$e(arr) || _unsupported_iterable_to_array$B(arr) || _non_iterable_spread$e();
|
|
5399
5409
|
}
|
|
5400
|
-
function _unsupported_iterable_to_array$
|
|
5410
|
+
function _unsupported_iterable_to_array$B(o, minLen) {
|
|
5401
5411
|
if (!o) return;
|
|
5402
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
5412
|
+
if (typeof o === "string") return _array_like_to_array$B(o, minLen);
|
|
5403
5413
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
5404
5414
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
5405
5415
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
5406
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
5416
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$B(o, minLen);
|
|
5407
5417
|
}
|
|
5408
5418
|
var falsyToString = function(value) {
|
|
5409
5419
|
return typeof value === "boolean" ? "".concat(value) : value === 0 ? "0" : value;
|
|
@@ -5422,7 +5432,7 @@ var cva = function(base, config) {
|
|
|
5422
5432
|
return variants[variant][variantKey];
|
|
5423
5433
|
});
|
|
5424
5434
|
var propsWithoutUndefined = props && Object.entries(props).reduce(function(acc, param) {
|
|
5425
|
-
var _param = _sliced_to_array$
|
|
5435
|
+
var _param = _sliced_to_array$x(param, 2), key = _param[0], value = _param[1];
|
|
5426
5436
|
if (value === undefined) {
|
|
5427
5437
|
return acc;
|
|
5428
5438
|
}
|
|
@@ -5435,7 +5445,7 @@ var cva = function(base, config) {
|
|
|
5435
5445
|
"className"
|
|
5436
5446
|
]);
|
|
5437
5447
|
return Object.entries(compoundVariantOptions).every(function(param) {
|
|
5438
|
-
var _param = _sliced_to_array$
|
|
5448
|
+
var _param = _sliced_to_array$x(param, 2), key = _param[0], value = _param[1];
|
|
5439
5449
|
return Array.isArray(value) ? value.includes(_object_spread$s({}, defaultVariants, propsWithoutUndefined)[key]) : _object_spread$s({}, defaultVariants, propsWithoutUndefined)[key] === value;
|
|
5440
5450
|
}) ? _to_consumable_array$e(acc).concat([
|
|
5441
5451
|
cvClass,
|
|
@@ -5558,6 +5568,18 @@ function Button(_0) {
|
|
|
5558
5568
|
}, props));
|
|
5559
5569
|
}
|
|
5560
5570
|
|
|
5571
|
+
var PortalContainerContext = /*#__PURE__*/ createContext(null);
|
|
5572
|
+
function PortalContainerProvider(param) {
|
|
5573
|
+
var children = param.children, container = param.container;
|
|
5574
|
+
return /*#__PURE__*/ jsx(PortalContainerContext.Provider, {
|
|
5575
|
+
value: container,
|
|
5576
|
+
children: children
|
|
5577
|
+
});
|
|
5578
|
+
}
|
|
5579
|
+
function usePortalContainer() {
|
|
5580
|
+
return useContext(PortalContainerContext);
|
|
5581
|
+
}
|
|
5582
|
+
|
|
5561
5583
|
function _define_property$u(obj, key, value) {
|
|
5562
5584
|
if (key in obj) {
|
|
5563
5585
|
Object.defineProperty(obj, key, {
|
|
@@ -5604,6 +5626,25 @@ function _object_spread$q(target) {
|
|
|
5604
5626
|
}
|
|
5605
5627
|
return target;
|
|
5606
5628
|
}
|
|
5629
|
+
function ownKeys$l(object, enumerableOnly) {
|
|
5630
|
+
var keys = Object.keys(object);
|
|
5631
|
+
if (Object.getOwnPropertySymbols) {
|
|
5632
|
+
var symbols = Object.getOwnPropertySymbols(object);
|
|
5633
|
+
keys.push.apply(keys, symbols);
|
|
5634
|
+
}
|
|
5635
|
+
return keys;
|
|
5636
|
+
}
|
|
5637
|
+
function _object_spread_props$l(target, source) {
|
|
5638
|
+
source = source != null ? source : {};
|
|
5639
|
+
if (Object.getOwnPropertyDescriptors) {
|
|
5640
|
+
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
|
|
5641
|
+
} else {
|
|
5642
|
+
ownKeys$l(Object(source)).forEach(function(key) {
|
|
5643
|
+
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
5644
|
+
});
|
|
5645
|
+
}
|
|
5646
|
+
return target;
|
|
5647
|
+
}
|
|
5607
5648
|
function _object_without_properties$d(source, excluded) {
|
|
5608
5649
|
if (source == null) return {};
|
|
5609
5650
|
var target = {}, sourceKeys, key, i;
|
|
@@ -5647,10 +5688,16 @@ function AlertDialog(_0) {
|
|
|
5647
5688
|
}, props));
|
|
5648
5689
|
}
|
|
5649
5690
|
function AlertDialogPortal(_0) {
|
|
5650
|
-
|
|
5651
|
-
|
|
5691
|
+
var container = _0.container, props = _object_without_properties$d(_0, [
|
|
5692
|
+
"container"
|
|
5693
|
+
]);
|
|
5694
|
+
var _ref;
|
|
5695
|
+
var inheritedContainer = usePortalContainer();
|
|
5696
|
+
return /*#__PURE__*/ jsx(AlertDialog$1.Portal, _object_spread_props$l(_object_spread$q({
|
|
5652
5697
|
"data-slot": "alert-dialog-portal"
|
|
5653
|
-
}, props)
|
|
5698
|
+
}, props), {
|
|
5699
|
+
container: (_ref = container !== null && container !== void 0 ? container : inheritedContainer) !== null && _ref !== void 0 ? _ref : undefined
|
|
5700
|
+
}));
|
|
5654
5701
|
}
|
|
5655
5702
|
function AlertDialogOverlay(_0) {
|
|
5656
5703
|
var className = _0.className, props = _object_without_properties$d(_0, [
|
|
@@ -5841,12 +5888,12 @@ function Badge(_0) {
|
|
|
5841
5888
|
}, props));
|
|
5842
5889
|
}
|
|
5843
5890
|
|
|
5844
|
-
function _array_like_to_array$
|
|
5891
|
+
function _array_like_to_array$A(arr, len) {
|
|
5845
5892
|
if (len == null || len > arr.length) len = arr.length;
|
|
5846
5893
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
5847
5894
|
return arr2;
|
|
5848
5895
|
}
|
|
5849
|
-
function _array_with_holes$
|
|
5896
|
+
function _array_with_holes$w(arr) {
|
|
5850
5897
|
if (Array.isArray(arr)) return arr;
|
|
5851
5898
|
}
|
|
5852
5899
|
function _define_property$s(obj, key, value) {
|
|
@@ -5876,7 +5923,7 @@ function _extends$2() {
|
|
|
5876
5923
|
};
|
|
5877
5924
|
return _extends$2.apply(this, arguments);
|
|
5878
5925
|
}
|
|
5879
|
-
function _iterable_to_array_limit$
|
|
5926
|
+
function _iterable_to_array_limit$w(arr, i) {
|
|
5880
5927
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
5881
5928
|
if (_i == null) return;
|
|
5882
5929
|
var _arr = [];
|
|
@@ -5900,7 +5947,7 @@ function _iterable_to_array_limit$v(arr, i) {
|
|
|
5900
5947
|
}
|
|
5901
5948
|
return _arr;
|
|
5902
5949
|
}
|
|
5903
|
-
function _non_iterable_rest$
|
|
5950
|
+
function _non_iterable_rest$w() {
|
|
5904
5951
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
5905
5952
|
}
|
|
5906
5953
|
function _object_destructuring_empty$2(o) {
|
|
@@ -5977,16 +6024,16 @@ function _object_without_properties_loose$b(source, excluded) {
|
|
|
5977
6024
|
}
|
|
5978
6025
|
return target;
|
|
5979
6026
|
}
|
|
5980
|
-
function _sliced_to_array$
|
|
5981
|
-
return _array_with_holes$
|
|
6027
|
+
function _sliced_to_array$w(arr, i) {
|
|
6028
|
+
return _array_with_holes$w(arr) || _iterable_to_array_limit$w(arr, i) || _unsupported_iterable_to_array$A(arr, i) || _non_iterable_rest$w();
|
|
5982
6029
|
}
|
|
5983
|
-
function _unsupported_iterable_to_array$
|
|
6030
|
+
function _unsupported_iterable_to_array$A(o, minLen) {
|
|
5984
6031
|
if (!o) return;
|
|
5985
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
6032
|
+
if (typeof o === "string") return _array_like_to_array$A(o, minLen);
|
|
5986
6033
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
5987
6034
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
5988
6035
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
5989
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
6036
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$A(o, minLen);
|
|
5990
6037
|
}
|
|
5991
6038
|
function Dialog(_0) {
|
|
5992
6039
|
_object_destructuring_empty$2(_0); var props = _extends$2({}, _0);
|
|
@@ -5995,10 +6042,16 @@ function Dialog(_0) {
|
|
|
5995
6042
|
}, props));
|
|
5996
6043
|
}
|
|
5997
6044
|
function DialogPortal(_0) {
|
|
5998
|
-
|
|
5999
|
-
|
|
6045
|
+
var container = _0.container, props = _object_without_properties$b(_0, [
|
|
6046
|
+
"container"
|
|
6047
|
+
]);
|
|
6048
|
+
var _ref;
|
|
6049
|
+
var inheritedContainer = usePortalContainer();
|
|
6050
|
+
return /*#__PURE__*/ jsx(Dialog$1.Portal, _object_spread_props$k(_object_spread$o({
|
|
6000
6051
|
"data-slot": "dialog-portal"
|
|
6001
|
-
}, props)
|
|
6052
|
+
}, props), {
|
|
6053
|
+
container: (_ref = container !== null && container !== void 0 ? container : inheritedContainer) !== null && _ref !== void 0 ? _ref : undefined
|
|
6054
|
+
}));
|
|
6002
6055
|
}
|
|
6003
6056
|
function DialogOverlay(_0) {
|
|
6004
6057
|
var className = _0.className, props = _object_without_properties$b(_0, [
|
|
@@ -6016,7 +6069,7 @@ function DialogContent(_0) {
|
|
|
6016
6069
|
"showCloseButton",
|
|
6017
6070
|
"maximizable"
|
|
6018
6071
|
]);
|
|
6019
|
-
var _React_useState = _sliced_to_array$
|
|
6072
|
+
var _React_useState = _sliced_to_array$w(React.useState(false), 2), isMaximized = _React_useState[0], setIsMaximized = _React_useState[1];
|
|
6020
6073
|
return /*#__PURE__*/ jsxs(DialogPortal, {
|
|
6021
6074
|
children: [
|
|
6022
6075
|
/*#__PURE__*/ jsx(DialogOverlay, {}),
|
|
@@ -6245,13 +6298,17 @@ function SelectTrigger(_0) {
|
|
|
6245
6298
|
}));
|
|
6246
6299
|
}
|
|
6247
6300
|
function SelectContent(_0) {
|
|
6248
|
-
var className = _0.className, children = _0.children, _0_position = _0.position, position = _0_position === void 0 ? 'item-aligned' : _0_position, _0_align = _0.align, align = _0_align === void 0 ? 'center' : _0_align, props = _object_without_properties$a(_0, [
|
|
6301
|
+
var className = _0.className, children = _0.children, _0_position = _0.position, position = _0_position === void 0 ? 'item-aligned' : _0_position, _0_align = _0.align, align = _0_align === void 0 ? 'center' : _0_align, container = _0.container, props = _object_without_properties$a(_0, [
|
|
6249
6302
|
"className",
|
|
6250
6303
|
"children",
|
|
6251
6304
|
"position",
|
|
6252
|
-
"align"
|
|
6305
|
+
"align",
|
|
6306
|
+
"container"
|
|
6253
6307
|
]);
|
|
6308
|
+
var _ref;
|
|
6309
|
+
var inheritedContainer = usePortalContainer();
|
|
6254
6310
|
return /*#__PURE__*/ jsx(Select$1.Portal, {
|
|
6311
|
+
container: (_ref = container !== null && container !== void 0 ? container : inheritedContainer) !== null && _ref !== void 0 ? _ref : undefined,
|
|
6255
6312
|
children: /*#__PURE__*/ jsxs(Select$1.Content, _object_spread_props$j(_object_spread$n({
|
|
6256
6313
|
"data-slot": "select-content",
|
|
6257
6314
|
"data-align-trigger": position === 'item-aligned',
|
|
@@ -6636,12 +6693,16 @@ function TooltipTrigger(_0) {
|
|
|
6636
6693
|
}, props));
|
|
6637
6694
|
}
|
|
6638
6695
|
function TooltipContent(_0) {
|
|
6639
|
-
var className = _0.className, _0_sideOffset = _0.sideOffset, sideOffset = _0_sideOffset === void 0 ? 4 : _0_sideOffset, children = _0.children, props = _object_without_properties$7(_0, [
|
|
6696
|
+
var className = _0.className, _0_sideOffset = _0.sideOffset, sideOffset = _0_sideOffset === void 0 ? 4 : _0_sideOffset, children = _0.children, container = _0.container, props = _object_without_properties$7(_0, [
|
|
6640
6697
|
"className",
|
|
6641
6698
|
"sideOffset",
|
|
6642
|
-
"children"
|
|
6699
|
+
"children",
|
|
6700
|
+
"container"
|
|
6643
6701
|
]);
|
|
6702
|
+
var _ref;
|
|
6703
|
+
var inheritedContainer = usePortalContainer();
|
|
6644
6704
|
return /*#__PURE__*/ jsx(Tooltip$1.Portal, {
|
|
6705
|
+
container: (_ref = container !== null && container !== void 0 ? container : inheritedContainer) !== null && _ref !== void 0 ? _ref : undefined,
|
|
6645
6706
|
children: /*#__PURE__*/ jsxs(Tooltip$1.Content, _object_spread_props$i(_object_spread$k({
|
|
6646
6707
|
"data-slot": "tooltip-content",
|
|
6647
6708
|
sideOffset: sideOffset,
|
|
@@ -6732,16 +6793,16 @@ var RoomPlatformRuntimeErrorCode = {
|
|
|
6732
6793
|
LIVEKIT_TOKEN_EXPIRED: 'LIVEKIT_TOKEN_EXPIRED'
|
|
6733
6794
|
};
|
|
6734
6795
|
|
|
6735
|
-
function _array_like_to_array$
|
|
6796
|
+
function _array_like_to_array$z(arr, len) {
|
|
6736
6797
|
if (len == null || len > arr.length) len = arr.length;
|
|
6737
6798
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
6738
6799
|
return arr2;
|
|
6739
6800
|
}
|
|
6740
|
-
function _array_with_holes$
|
|
6801
|
+
function _array_with_holes$v(arr) {
|
|
6741
6802
|
if (Array.isArray(arr)) return arr;
|
|
6742
6803
|
}
|
|
6743
6804
|
function _array_without_holes$d(arr) {
|
|
6744
|
-
if (Array.isArray(arr)) return _array_like_to_array$
|
|
6805
|
+
if (Array.isArray(arr)) return _array_like_to_array$z(arr);
|
|
6745
6806
|
}
|
|
6746
6807
|
function _assert_this_initialized$1(self) {
|
|
6747
6808
|
if (self === void 0) {
|
|
@@ -6849,7 +6910,7 @@ function _is_native_function$1(fn) {
|
|
|
6849
6910
|
function _iterable_to_array$d(iter) {
|
|
6850
6911
|
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
6851
6912
|
}
|
|
6852
|
-
function _iterable_to_array_limit$
|
|
6913
|
+
function _iterable_to_array_limit$v(arr, i) {
|
|
6853
6914
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
6854
6915
|
if (_i == null) return;
|
|
6855
6916
|
var _arr = [];
|
|
@@ -6873,7 +6934,7 @@ function _iterable_to_array_limit$u(arr, i) {
|
|
|
6873
6934
|
}
|
|
6874
6935
|
return _arr;
|
|
6875
6936
|
}
|
|
6876
|
-
function _non_iterable_rest$
|
|
6937
|
+
function _non_iterable_rest$v() {
|
|
6877
6938
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
6878
6939
|
}
|
|
6879
6940
|
function _non_iterable_spread$d() {
|
|
@@ -6926,23 +6987,23 @@ function _set_prototype_of$1(o, p) {
|
|
|
6926
6987
|
};
|
|
6927
6988
|
return _set_prototype_of$1(o, p);
|
|
6928
6989
|
}
|
|
6929
|
-
function _sliced_to_array$
|
|
6930
|
-
return _array_with_holes$
|
|
6990
|
+
function _sliced_to_array$v(arr, i) {
|
|
6991
|
+
return _array_with_holes$v(arr) || _iterable_to_array_limit$v(arr, i) || _unsupported_iterable_to_array$z(arr, i) || _non_iterable_rest$v();
|
|
6931
6992
|
}
|
|
6932
6993
|
function _to_consumable_array$d(arr) {
|
|
6933
|
-
return _array_without_holes$d(arr) || _iterable_to_array$d(arr) || _unsupported_iterable_to_array$
|
|
6994
|
+
return _array_without_holes$d(arr) || _iterable_to_array$d(arr) || _unsupported_iterable_to_array$z(arr) || _non_iterable_spread$d();
|
|
6934
6995
|
}
|
|
6935
6996
|
function _type_of$a(obj) {
|
|
6936
6997
|
"@swc/helpers - typeof";
|
|
6937
6998
|
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
6938
6999
|
}
|
|
6939
|
-
function _unsupported_iterable_to_array$
|
|
7000
|
+
function _unsupported_iterable_to_array$z(o, minLen) {
|
|
6940
7001
|
if (!o) return;
|
|
6941
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
7002
|
+
if (typeof o === "string") return _array_like_to_array$z(o, minLen);
|
|
6942
7003
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
6943
7004
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
6944
7005
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
6945
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
7006
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$z(o, minLen);
|
|
6946
7007
|
}
|
|
6947
7008
|
function _wrap_native_super$1(Class) {
|
|
6948
7009
|
var _cache = typeof Map === "function" ? new Map() : undefined;
|
|
@@ -7116,7 +7177,7 @@ var createIdempotencyKey$1 = function() {
|
|
|
7116
7177
|
var actionPendingKey = function(name, payload) {
|
|
7117
7178
|
if (!payload) return name;
|
|
7118
7179
|
return "".concat(name, ":").concat(JSON.stringify(Object.entries(payload).sort(function(param, param1) {
|
|
7119
|
-
var _param = _sliced_to_array$
|
|
7180
|
+
var _param = _sliced_to_array$v(param, 1), left = _param[0], _param1 = _sliced_to_array$v(param1, 1), right = _param1[0];
|
|
7120
7181
|
return left.localeCompare(right);
|
|
7121
7182
|
})));
|
|
7122
7183
|
};
|
|
@@ -7221,21 +7282,21 @@ var activeDevicesStateOf = function(room) {
|
|
|
7221
7282
|
};
|
|
7222
7283
|
function RoomPlatformProvider(param) {
|
|
7223
7284
|
var apiBaseUrl = param.apiBaseUrl, children = param.children, launchToken = param.launchToken, onError = param.onError, onLifecycleEvent = param.onLifecycleEvent, onLaunchTicketRequired = param.onLaunchTicketRequired;
|
|
7224
|
-
var _useState = _sliced_to_array$
|
|
7225
|
-
var _useState1 = _sliced_to_array$
|
|
7226
|
-
var _useState2 = _sliced_to_array$
|
|
7227
|
-
var _useState3 = _sliced_to_array$
|
|
7228
|
-
var _useState4 = _sliced_to_array$
|
|
7229
|
-
var _useState5 = _sliced_to_array$
|
|
7230
|
-
var _useState6 = _sliced_to_array$
|
|
7231
|
-
var _useState7 = _sliced_to_array$
|
|
7232
|
-
var _useState8 = _sliced_to_array$
|
|
7233
|
-
var _useState9 = _sliced_to_array$
|
|
7234
|
-
var _useState10 = _sliced_to_array$
|
|
7235
|
-
var _useState11 = _sliced_to_array$
|
|
7236
|
-
var _useState12 = _sliced_to_array$
|
|
7237
|
-
var _useState13 = _sliced_to_array$
|
|
7238
|
-
var _useState14 = _sliced_to_array$
|
|
7285
|
+
var _useState = _sliced_to_array$v(useState(), 2), access = _useState[0], setAccess = _useState[1];
|
|
7286
|
+
var _useState1 = _sliced_to_array$v(useState(emptyActiveDevices), 2), activeDevices = _useState1[0], setActiveDevices = _useState1[1];
|
|
7287
|
+
var _useState2 = _sliced_to_array$v(useState(), 2), actionError = _useState2[0], setActionError = _useState2[1];
|
|
7288
|
+
var _useState3 = _sliced_to_array$v(useState(), 2), controlState = _useState3[0], setControlState = _useState3[1];
|
|
7289
|
+
var _useState4 = _sliced_to_array$v(useState(), 2), error = _useState4[0], setError = _useState4[1];
|
|
7290
|
+
var _useState5 = _sliced_to_array$v(useState(null), 2), localCameraTrack = _useState5[0], setLocalCameraTrack = _useState5[1];
|
|
7291
|
+
var _useState6 = _sliced_to_array$v(useState(null), 2), localPreviewTrack = _useState6[0], setLocalPreviewTrack = _useState6[1];
|
|
7292
|
+
var _useState7 = _sliced_to_array$v(useState(emptyLocalMediaState), 2), localMedia = _useState7[0], setLocalMedia = _useState7[1];
|
|
7293
|
+
var _useState8 = _sliced_to_array$v(useState(), 2), privateRoom = _useState8[0], setPrivateRoom = _useState8[1];
|
|
7294
|
+
var _useState9 = _sliced_to_array$v(useState(), 2), privateRoomConnection = _useState9[0], setPrivateRoomConnection = _useState9[1];
|
|
7295
|
+
var _useState10 = _sliced_to_array$v(useState(false), 2), privateMediaRestorePending = _useState10[0], setPrivateMediaRestorePending = _useState10[1];
|
|
7296
|
+
var _useState11 = _sliced_to_array$v(useState([]), 2), pendingActionKeys = _useState11[0], setPendingActionKeys = _useState11[1];
|
|
7297
|
+
var _useState12 = _sliced_to_array$v(useState([]), 2), pendingLocalMediaKinds = _useState12[0], setPendingLocalMediaKinds = _useState12[1];
|
|
7298
|
+
var _useState13 = _sliced_to_array$v(useState(null), 2), room = _useState13[0], setRoom = _useState13[1];
|
|
7299
|
+
var _useState14 = _sliced_to_array$v(useState('connecting'), 2), status = _useState14[0], setStatus = _useState14[1];
|
|
7239
7300
|
var isMountedRef = useRef(false);
|
|
7240
7301
|
var accessRef = useRef(undefined);
|
|
7241
7302
|
var controlStateRef = useRef(undefined);
|
|
@@ -8642,12 +8703,46 @@ function useRoomPlatform() {
|
|
|
8642
8703
|
return context;
|
|
8643
8704
|
}
|
|
8644
8705
|
|
|
8645
|
-
|
|
8706
|
+
var RoomPlatformToastContext = /*#__PURE__*/ createContext({
|
|
8707
|
+
error: function(message) {
|
|
8708
|
+
return toast.error(message);
|
|
8709
|
+
}
|
|
8710
|
+
});
|
|
8711
|
+
function RoomPlatformToastProvider(param) {
|
|
8712
|
+
var children = param.children;
|
|
8713
|
+
var portalContainer = usePortalContainer();
|
|
8714
|
+
var toasterId = useId();
|
|
8715
|
+
var roomPlatformToast = useMemo(function() {
|
|
8716
|
+
return {
|
|
8717
|
+
error: function(message) {
|
|
8718
|
+
return toast.error(message, {
|
|
8719
|
+
toasterId: toasterId
|
|
8720
|
+
});
|
|
8721
|
+
}
|
|
8722
|
+
};
|
|
8723
|
+
}, [
|
|
8724
|
+
toasterId
|
|
8725
|
+
]);
|
|
8726
|
+
return /*#__PURE__*/ jsxs(RoomPlatformToastContext.Provider, {
|
|
8727
|
+
value: roomPlatformToast,
|
|
8728
|
+
children: [
|
|
8729
|
+
children,
|
|
8730
|
+
portalContainer ? /*#__PURE__*/ createPortal(/*#__PURE__*/ jsx(Toaster, {
|
|
8731
|
+
id: toasterId
|
|
8732
|
+
}), portalContainer) : null
|
|
8733
|
+
]
|
|
8734
|
+
});
|
|
8735
|
+
}
|
|
8736
|
+
function useRoomPlatformToast() {
|
|
8737
|
+
return useContext(RoomPlatformToastContext);
|
|
8738
|
+
}
|
|
8739
|
+
|
|
8740
|
+
function _array_like_to_array$y(arr, len) {
|
|
8646
8741
|
if (len == null || len > arr.length) len = arr.length;
|
|
8647
8742
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
8648
8743
|
return arr2;
|
|
8649
8744
|
}
|
|
8650
|
-
function _array_with_holes$
|
|
8745
|
+
function _array_with_holes$u(arr) {
|
|
8651
8746
|
if (Array.isArray(arr)) return arr;
|
|
8652
8747
|
}
|
|
8653
8748
|
function asyncGeneratorStep$l(gen, resolve, reject, _next, _throw, key, arg) {
|
|
@@ -8679,7 +8774,7 @@ function _async_to_generator$l(fn) {
|
|
|
8679
8774
|
});
|
|
8680
8775
|
};
|
|
8681
8776
|
}
|
|
8682
|
-
function _iterable_to_array_limit$
|
|
8777
|
+
function _iterable_to_array_limit$u(arr, i) {
|
|
8683
8778
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
8684
8779
|
if (_i == null) return;
|
|
8685
8780
|
var _arr = [];
|
|
@@ -8703,19 +8798,19 @@ function _iterable_to_array_limit$t(arr, i) {
|
|
|
8703
8798
|
}
|
|
8704
8799
|
return _arr;
|
|
8705
8800
|
}
|
|
8706
|
-
function _non_iterable_rest$
|
|
8801
|
+
function _non_iterable_rest$u() {
|
|
8707
8802
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
8708
8803
|
}
|
|
8709
|
-
function _sliced_to_array$
|
|
8710
|
-
return _array_with_holes$
|
|
8804
|
+
function _sliced_to_array$u(arr, i) {
|
|
8805
|
+
return _array_with_holes$u(arr) || _iterable_to_array_limit$u(arr, i) || _unsupported_iterable_to_array$y(arr, i) || _non_iterable_rest$u();
|
|
8711
8806
|
}
|
|
8712
|
-
function _unsupported_iterable_to_array$
|
|
8807
|
+
function _unsupported_iterable_to_array$y(o, minLen) {
|
|
8713
8808
|
if (!o) return;
|
|
8714
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
8809
|
+
if (typeof o === "string") return _array_like_to_array$y(o, minLen);
|
|
8715
8810
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
8716
8811
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
8717
8812
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
8718
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
8813
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$y(o, minLen);
|
|
8719
8814
|
}
|
|
8720
8815
|
function _ts_generator$l(thisArg, body) {
|
|
8721
8816
|
var f, y, t, _ = {
|
|
@@ -8870,9 +8965,9 @@ function useRoomPlatformPrivateRoom() {
|
|
|
8870
8965
|
var _useRoomPlatformPrivateRoomContext = useRoomPlatformPrivateRoomContext(), projectedPrivateRoom = _useRoomPlatformPrivateRoomContext.privateRoom, projectedPrivateRoomConnection = _useRoomPlatformPrivateRoomContext.privateRoomConnection;
|
|
8871
8966
|
var privateRoom = isValidPrivateRoomProjection(projectedPrivateRoom) ? projectedPrivateRoom : undefined;
|
|
8872
8967
|
var privateRoomConnection = privateRoom && isValidPrivateRoomConnection(projectedPrivateRoomConnection, privateRoom) ? projectedPrivateRoomConnection : undefined;
|
|
8873
|
-
var _useState = _sliced_to_array$
|
|
8874
|
-
var _useState1 = _sliced_to_array$
|
|
8875
|
-
var _useState2 = _sliced_to_array$
|
|
8968
|
+
var _useState = _sliced_to_array$u(useState(false), 2), isAcceptingPrivateRoom = _useState[0], setIsAcceptingPrivateRoom = _useState[1];
|
|
8969
|
+
var _useState1 = _sliced_to_array$u(useState(false), 2), isEndingPrivateRoom = _useState1[0], setIsEndingPrivateRoom = _useState1[1];
|
|
8970
|
+
var _useState2 = _sliced_to_array$u(useState(), 2), privateRoomReturnedNoticeId = _useState2[0], setPrivateRoomReturnedNoticeId = _useState2[1];
|
|
8876
8971
|
var actorExternalId = externalActorIdFromMetadata$1(room === null || room === void 0 ? void 0 : room.localParticipant.metadata);
|
|
8877
8972
|
var isCaller = Boolean(actorExternalId && (privateRoom === null || privateRoom === void 0 ? void 0 : privateRoom.callerExternalActorId) === actorExternalId);
|
|
8878
8973
|
var isStudent = Boolean(actorExternalId && (privateRoom === null || privateRoom === void 0 ? void 0 : privateRoom.studentExternalActorId) === actorExternalId);
|
|
@@ -9123,21 +9218,21 @@ function useRoomPlatformPrivateRoomPendingState() {
|
|
|
9123
9218
|
};
|
|
9124
9219
|
}
|
|
9125
9220
|
|
|
9126
|
-
function _array_like_to_array$
|
|
9221
|
+
function _array_like_to_array$x(arr, len) {
|
|
9127
9222
|
if (len == null || len > arr.length) len = arr.length;
|
|
9128
9223
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
9129
9224
|
return arr2;
|
|
9130
9225
|
}
|
|
9131
|
-
function _array_with_holes$
|
|
9226
|
+
function _array_with_holes$t(arr) {
|
|
9132
9227
|
if (Array.isArray(arr)) return arr;
|
|
9133
9228
|
}
|
|
9134
9229
|
function _array_without_holes$c(arr) {
|
|
9135
|
-
if (Array.isArray(arr)) return _array_like_to_array$
|
|
9230
|
+
if (Array.isArray(arr)) return _array_like_to_array$x(arr);
|
|
9136
9231
|
}
|
|
9137
9232
|
function _iterable_to_array$c(iter) {
|
|
9138
9233
|
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
9139
9234
|
}
|
|
9140
|
-
function _iterable_to_array_limit$
|
|
9235
|
+
function _iterable_to_array_limit$t(arr, i) {
|
|
9141
9236
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
9142
9237
|
if (_i == null) return;
|
|
9143
9238
|
var _arr = [];
|
|
@@ -9161,29 +9256,29 @@ function _iterable_to_array_limit$s(arr, i) {
|
|
|
9161
9256
|
}
|
|
9162
9257
|
return _arr;
|
|
9163
9258
|
}
|
|
9164
|
-
function _non_iterable_rest$
|
|
9259
|
+
function _non_iterable_rest$t() {
|
|
9165
9260
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
9166
9261
|
}
|
|
9167
9262
|
function _non_iterable_spread$c() {
|
|
9168
9263
|
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
9169
9264
|
}
|
|
9170
|
-
function _sliced_to_array$
|
|
9171
|
-
return _array_with_holes$
|
|
9265
|
+
function _sliced_to_array$t(arr, i) {
|
|
9266
|
+
return _array_with_holes$t(arr) || _iterable_to_array_limit$t(arr, i) || _unsupported_iterable_to_array$x(arr, i) || _non_iterable_rest$t();
|
|
9172
9267
|
}
|
|
9173
9268
|
function _to_consumable_array$c(arr) {
|
|
9174
|
-
return _array_without_holes$c(arr) || _iterable_to_array$c(arr) || _unsupported_iterable_to_array$
|
|
9269
|
+
return _array_without_holes$c(arr) || _iterable_to_array$c(arr) || _unsupported_iterable_to_array$x(arr) || _non_iterable_spread$c();
|
|
9175
9270
|
}
|
|
9176
9271
|
function _type_of$9(obj) {
|
|
9177
9272
|
"@swc/helpers - typeof";
|
|
9178
9273
|
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
9179
9274
|
}
|
|
9180
|
-
function _unsupported_iterable_to_array$
|
|
9275
|
+
function _unsupported_iterable_to_array$x(o, minLen) {
|
|
9181
9276
|
if (!o) return;
|
|
9182
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
9277
|
+
if (typeof o === "string") return _array_like_to_array$x(o, minLen);
|
|
9183
9278
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
9184
9279
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
9185
9280
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
9186
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
9281
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$x(o, minLen);
|
|
9187
9282
|
}
|
|
9188
9283
|
var externalActorIdFromMetadata = function(metadata) {
|
|
9189
9284
|
if (!metadata) return undefined;
|
|
@@ -9231,7 +9326,7 @@ var snapshotPresence = function(room, controlState) {
|
|
|
9231
9326
|
};
|
|
9232
9327
|
function useRoomPresence() {
|
|
9233
9328
|
var _useRoomPlatform = useRoomPlatform(), controlState = _useRoomPlatform.controlState, room = _useRoomPlatform.room;
|
|
9234
|
-
var _useState = _sliced_to_array$
|
|
9329
|
+
var _useState = _sliced_to_array$t(useState(function() {
|
|
9235
9330
|
return snapshotPresence(room, controlState);
|
|
9236
9331
|
}), 2), presence = _useState[0], setPresence = _useState[1];
|
|
9237
9332
|
useEffect(function() {
|
|
@@ -9272,15 +9367,15 @@ function useRoomPresence() {
|
|
|
9272
9367
|
return presence;
|
|
9273
9368
|
}
|
|
9274
9369
|
|
|
9275
|
-
function _array_like_to_array$
|
|
9370
|
+
function _array_like_to_array$w(arr, len) {
|
|
9276
9371
|
if (len == null || len > arr.length) len = arr.length;
|
|
9277
9372
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
9278
9373
|
return arr2;
|
|
9279
9374
|
}
|
|
9280
|
-
function _array_with_holes$
|
|
9375
|
+
function _array_with_holes$s(arr) {
|
|
9281
9376
|
if (Array.isArray(arr)) return arr;
|
|
9282
9377
|
}
|
|
9283
|
-
function _iterable_to_array_limit$
|
|
9378
|
+
function _iterable_to_array_limit$s(arr, i) {
|
|
9284
9379
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
9285
9380
|
if (_i == null) return;
|
|
9286
9381
|
var _arr = [];
|
|
@@ -9304,19 +9399,19 @@ function _iterable_to_array_limit$r(arr, i) {
|
|
|
9304
9399
|
}
|
|
9305
9400
|
return _arr;
|
|
9306
9401
|
}
|
|
9307
|
-
function _non_iterable_rest$
|
|
9402
|
+
function _non_iterable_rest$s() {
|
|
9308
9403
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
9309
9404
|
}
|
|
9310
|
-
function _sliced_to_array$
|
|
9311
|
-
return _array_with_holes$
|
|
9405
|
+
function _sliced_to_array$s(arr, i) {
|
|
9406
|
+
return _array_with_holes$s(arr) || _iterable_to_array_limit$s(arr, i) || _unsupported_iterable_to_array$w(arr, i) || _non_iterable_rest$s();
|
|
9312
9407
|
}
|
|
9313
|
-
function _unsupported_iterable_to_array$
|
|
9408
|
+
function _unsupported_iterable_to_array$w(o, minLen) {
|
|
9314
9409
|
if (!o) return;
|
|
9315
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
9410
|
+
if (typeof o === "string") return _array_like_to_array$w(o, minLen);
|
|
9316
9411
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
9317
9412
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
9318
9413
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
9319
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
9414
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$w(o, minLen);
|
|
9320
9415
|
}
|
|
9321
9416
|
function RoomParticipantActions(param) {
|
|
9322
9417
|
var _param_isActiveSpeaker = param.isActiveSpeaker, isActiveSpeaker = _param_isActiveSpeaker === void 0 ? false : _param_isActiveSpeaker, isLocal = param.isLocal, isOnline = param.isOnline, participant = param.participant, participantIdentity = param.participantIdentity;
|
|
@@ -9330,7 +9425,8 @@ function RoomParticipantActions(param) {
|
|
|
9330
9425
|
var resolvedIsLocal = (_ref = isLocal !== null && isLocal !== void 0 ? isLocal : mappedPresence === null || mappedPresence === void 0 ? void 0 : mappedPresence.isLocal) !== null && _ref !== void 0 ? _ref : false;
|
|
9331
9426
|
var resolvedIsOnline = isOnline !== null && isOnline !== void 0 ? isOnline : Boolean(mappedPresence);
|
|
9332
9427
|
var _useRoomPlatformPrivateRoom = useRoomPlatformPrivateRoom(), cancelPrivateRoom = _useRoomPlatformPrivateRoom.cancelPrivateRoom, currentPrivateRoomOperation = _useRoomPlatformPrivateRoom.currentPrivateRoomOperation;
|
|
9333
|
-
var
|
|
9428
|
+
var roomPlatformToast = useRoomPlatformToast();
|
|
9429
|
+
var _useState = _sliced_to_array$s(useState(false), 2), privateCallHovered = _useState[0], setPrivateCallHovered = _useState[1];
|
|
9334
9430
|
var actionPayload = resolvedParticipantIdentity ? {
|
|
9335
9431
|
participantIdentity: resolvedParticipantIdentity
|
|
9336
9432
|
} : undefined;
|
|
@@ -9344,19 +9440,19 @@ function RoomParticipantActions(param) {
|
|
|
9344
9440
|
var setActiveSpeaker = function() {
|
|
9345
9441
|
if (!actionPayload || isSettingActiveSpeakerPending) return;
|
|
9346
9442
|
void performAction(RoomPlatformAction.SPEAKER_SET, actionPayload).catch(function() {
|
|
9347
|
-
|
|
9443
|
+
roomPlatformToast.error('Không gọi được học sinh phát biểu. Vui lòng thử lại.');
|
|
9348
9444
|
});
|
|
9349
9445
|
};
|
|
9350
9446
|
var startPrivateRoom = function() {
|
|
9351
9447
|
if (!canInvitePrivateRoom || !actionPayload || isInvitingPrivateRoom) return;
|
|
9352
9448
|
void performAction(RoomPlatformAction.PRIVATE_ROOM_INVITE, actionPayload).catch(function() {
|
|
9353
|
-
|
|
9449
|
+
roomPlatformToast.error('Không thể gọi riêng học sinh này. Vui lòng thử lại.');
|
|
9354
9450
|
});
|
|
9355
9451
|
};
|
|
9356
9452
|
var cancelPrivateRoomCall = function() {
|
|
9357
9453
|
if (!canCancelPrivateRoom) return;
|
|
9358
9454
|
void cancelPrivateRoom().catch(function() {
|
|
9359
|
-
|
|
9455
|
+
roomPlatformToast.error('Không hủy được cuộc gọi riêng. Vui lòng thử lại.');
|
|
9360
9456
|
});
|
|
9361
9457
|
};
|
|
9362
9458
|
return /*#__PURE__*/ jsxs("div", {
|
|
@@ -9680,7 +9776,7 @@ function RoomPlatformVideoTile(param) {
|
|
|
9680
9776
|
return /*#__PURE__*/ jsxs("div", {
|
|
9681
9777
|
"aria-label": resolvedLabel,
|
|
9682
9778
|
className: [
|
|
9683
|
-
'relative overflow-hidden rounded-lg bg-slate-900 text-white
|
|
9779
|
+
'relative overflow-hidden rounded-lg bg-slate-900 text-white',
|
|
9684
9780
|
className
|
|
9685
9781
|
].filter(Boolean).join(' '),
|
|
9686
9782
|
"data-kind": kind,
|
|
@@ -9724,12 +9820,12 @@ function RoomPlatformActiveSpeaker(param) {
|
|
|
9724
9820
|
}) : null;
|
|
9725
9821
|
}
|
|
9726
9822
|
|
|
9727
|
-
function _array_like_to_array$
|
|
9823
|
+
function _array_like_to_array$v(arr, len) {
|
|
9728
9824
|
if (len == null || len > arr.length) len = arr.length;
|
|
9729
9825
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
9730
9826
|
return arr2;
|
|
9731
9827
|
}
|
|
9732
|
-
function _array_with_holes$
|
|
9828
|
+
function _array_with_holes$r(arr) {
|
|
9733
9829
|
if (Array.isArray(arr)) return arr;
|
|
9734
9830
|
}
|
|
9735
9831
|
function _instanceof$2(left, right) {
|
|
@@ -9739,7 +9835,7 @@ function _instanceof$2(left, right) {
|
|
|
9739
9835
|
return left instanceof right;
|
|
9740
9836
|
}
|
|
9741
9837
|
}
|
|
9742
|
-
function _iterable_to_array_limit$
|
|
9838
|
+
function _iterable_to_array_limit$r(arr, i) {
|
|
9743
9839
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
9744
9840
|
if (_i == null) return;
|
|
9745
9841
|
var _arr = [];
|
|
@@ -9763,19 +9859,19 @@ function _iterable_to_array_limit$q(arr, i) {
|
|
|
9763
9859
|
}
|
|
9764
9860
|
return _arr;
|
|
9765
9861
|
}
|
|
9766
|
-
function _non_iterable_rest$
|
|
9862
|
+
function _non_iterable_rest$r() {
|
|
9767
9863
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
9768
9864
|
}
|
|
9769
|
-
function _sliced_to_array$
|
|
9770
|
-
return _array_with_holes$
|
|
9865
|
+
function _sliced_to_array$r(arr, i) {
|
|
9866
|
+
return _array_with_holes$r(arr) || _iterable_to_array_limit$r(arr, i) || _unsupported_iterable_to_array$v(arr, i) || _non_iterable_rest$r();
|
|
9771
9867
|
}
|
|
9772
|
-
function _unsupported_iterable_to_array$
|
|
9868
|
+
function _unsupported_iterable_to_array$v(o, minLen) {
|
|
9773
9869
|
if (!o) return;
|
|
9774
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
9870
|
+
if (typeof o === "string") return _array_like_to_array$v(o, minLen);
|
|
9775
9871
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
9776
9872
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
9777
9873
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
9778
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
9874
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$v(o, minLen);
|
|
9779
9875
|
}
|
|
9780
9876
|
var IDLE_TIMEOUT_MS = 15000;
|
|
9781
9877
|
var ROOM_CONTROL_ACTIVITY_SELECTOR = '[data-room-control-activity]';
|
|
@@ -9784,10 +9880,10 @@ var isRoomControlActivityTarget = function(target) {
|
|
|
9784
9880
|
};
|
|
9785
9881
|
function RoomPlatformControlAnchor(param) {
|
|
9786
9882
|
var _param_anchorKind = param.anchorKind, anchorKind = _param_anchorKind === void 0 ? 'main-panel' : _param_anchorKind, children = param.children, controlBar = param.controlBar, _param_anchorScope = param.anchorScope, anchorScope = _param_anchorScope === void 0 ? 'panel' : _param_anchorScope, className = param.className, style = param.style;
|
|
9787
|
-
var _useState = _sliced_to_array$
|
|
9788
|
-
var _useState1 = _sliced_to_array$
|
|
9789
|
-
var _useState2 = _sliced_to_array$
|
|
9790
|
-
var _useState3 = _sliced_to_array$
|
|
9883
|
+
var _useState = _sliced_to_array$r(useState(true), 2), isVisible = _useState[0], setIsVisible = _useState[1];
|
|
9884
|
+
var _useState1 = _sliced_to_array$r(useState(false), 2), isHovered = _useState1[0], setIsHovered = _useState1[1];
|
|
9885
|
+
var _useState2 = _sliced_to_array$r(useState(false), 2), isFocusWithin = _useState2[0], setIsFocusWithin = _useState2[1];
|
|
9886
|
+
var _useState3 = _sliced_to_array$r(useState(0), 2), activityVersion = _useState3[0], setActivityVersion = _useState3[1];
|
|
9791
9887
|
var anchorRef = useRef(null);
|
|
9792
9888
|
var timerRef = useRef(null);
|
|
9793
9889
|
var focusTimerRef = useRef(null);
|
|
@@ -9921,15 +10017,15 @@ function RoomPlatformControlAnchor(param) {
|
|
|
9921
10017
|
});
|
|
9922
10018
|
}
|
|
9923
10019
|
|
|
9924
|
-
function _array_like_to_array$
|
|
10020
|
+
function _array_like_to_array$u(arr, len) {
|
|
9925
10021
|
if (len == null || len > arr.length) len = arr.length;
|
|
9926
10022
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
9927
10023
|
return arr2;
|
|
9928
10024
|
}
|
|
9929
|
-
function _array_with_holes$
|
|
10025
|
+
function _array_with_holes$q(arr) {
|
|
9930
10026
|
if (Array.isArray(arr)) return arr;
|
|
9931
10027
|
}
|
|
9932
|
-
function _iterable_to_array_limit$
|
|
10028
|
+
function _iterable_to_array_limit$q(arr, i) {
|
|
9933
10029
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
9934
10030
|
if (_i == null) return;
|
|
9935
10031
|
var _arr = [];
|
|
@@ -9953,19 +10049,19 @@ function _iterable_to_array_limit$p(arr, i) {
|
|
|
9953
10049
|
}
|
|
9954
10050
|
return _arr;
|
|
9955
10051
|
}
|
|
9956
|
-
function _non_iterable_rest$
|
|
10052
|
+
function _non_iterable_rest$q() {
|
|
9957
10053
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
9958
10054
|
}
|
|
9959
|
-
function _sliced_to_array$
|
|
9960
|
-
return _array_with_holes$
|
|
10055
|
+
function _sliced_to_array$q(arr, i) {
|
|
10056
|
+
return _array_with_holes$q(arr) || _iterable_to_array_limit$q(arr, i) || _unsupported_iterable_to_array$u(arr, i) || _non_iterable_rest$q();
|
|
9961
10057
|
}
|
|
9962
|
-
function _unsupported_iterable_to_array$
|
|
10058
|
+
function _unsupported_iterable_to_array$u(o, minLen) {
|
|
9963
10059
|
if (!o) return;
|
|
9964
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
10060
|
+
if (typeof o === "string") return _array_like_to_array$u(o, minLen);
|
|
9965
10061
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
9966
10062
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
9967
10063
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
9968
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
10064
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$u(o, minLen);
|
|
9969
10065
|
}
|
|
9970
10066
|
var ALLOWED_MIME_TYPES = [
|
|
9971
10067
|
'image/jpeg',
|
|
@@ -9990,8 +10086,8 @@ function RoomPlatformBackgroundSettings(param) {
|
|
|
9990
10086
|
var state = param.state, presets = param.presets, uploadItems = param.uploadItems, onSelectNoBackground = param.onSelectNoBackground, onSelectBlurLevel = param.onSelectBlurLevel, onSelectPreset = param.onSelectPreset, onSelectUploaded = param.onSelectUploaded, onDeleteUploaded = param.onDeleteUploaded, onUpload = param.onUpload;
|
|
9991
10087
|
var _ref;
|
|
9992
10088
|
var _presets_;
|
|
9993
|
-
var _useState = _sliced_to_array$
|
|
9994
|
-
var _useState1 = _sliced_to_array$
|
|
10089
|
+
var _useState = _sliced_to_array$q(useState(null), 2), uploadError = _useState[0], setUploadError = _useState[1];
|
|
10090
|
+
var _useState1 = _sliced_to_array$q(useState(function() {
|
|
9995
10091
|
return backgroundTabFromState(state.mode);
|
|
9996
10092
|
}), 2), activeTab = _useState1[0], setActiveTab = _useState1[1];
|
|
9997
10093
|
var fileInputId = useId();
|
|
@@ -10414,12 +10510,12 @@ var getSelectedDevice = function(devices, selectedValue) {
|
|
|
10414
10510
|
});
|
|
10415
10511
|
};
|
|
10416
10512
|
|
|
10417
|
-
function _array_like_to_array$
|
|
10513
|
+
function _array_like_to_array$t(arr, len) {
|
|
10418
10514
|
if (len == null || len > arr.length) len = arr.length;
|
|
10419
10515
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
10420
10516
|
return arr2;
|
|
10421
10517
|
}
|
|
10422
|
-
function _array_with_holes$
|
|
10518
|
+
function _array_with_holes$p(arr) {
|
|
10423
10519
|
if (Array.isArray(arr)) return arr;
|
|
10424
10520
|
}
|
|
10425
10521
|
function asyncGeneratorStep$k(gen, resolve, reject, _next, _throw, key, arg) {
|
|
@@ -10451,7 +10547,7 @@ function _async_to_generator$k(fn) {
|
|
|
10451
10547
|
});
|
|
10452
10548
|
};
|
|
10453
10549
|
}
|
|
10454
|
-
function _iterable_to_array_limit$
|
|
10550
|
+
function _iterable_to_array_limit$p(arr, i) {
|
|
10455
10551
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
10456
10552
|
if (_i == null) return;
|
|
10457
10553
|
var _arr = [];
|
|
@@ -10475,19 +10571,19 @@ function _iterable_to_array_limit$o(arr, i) {
|
|
|
10475
10571
|
}
|
|
10476
10572
|
return _arr;
|
|
10477
10573
|
}
|
|
10478
|
-
function _non_iterable_rest$
|
|
10574
|
+
function _non_iterable_rest$p() {
|
|
10479
10575
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
10480
10576
|
}
|
|
10481
|
-
function _sliced_to_array$
|
|
10482
|
-
return _array_with_holes$
|
|
10577
|
+
function _sliced_to_array$p(arr, i) {
|
|
10578
|
+
return _array_with_holes$p(arr) || _iterable_to_array_limit$p(arr, i) || _unsupported_iterable_to_array$t(arr, i) || _non_iterable_rest$p();
|
|
10483
10579
|
}
|
|
10484
|
-
function _unsupported_iterable_to_array$
|
|
10580
|
+
function _unsupported_iterable_to_array$t(o, minLen) {
|
|
10485
10581
|
if (!o) return;
|
|
10486
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
10582
|
+
if (typeof o === "string") return _array_like_to_array$t(o, minLen);
|
|
10487
10583
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
10488
10584
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
10489
10585
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
10490
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
10586
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$t(o, minLen);
|
|
10491
10587
|
}
|
|
10492
10588
|
function _ts_generator$k(thisArg, body) {
|
|
10493
10589
|
var f, y, t, _ = {
|
|
@@ -10643,12 +10739,12 @@ function RoomPlatformDeviceSettings(param) {
|
|
|
10643
10739
|
var _useRoomPlatform = useRoomPlatform(), activeDevices = _useRoomPlatform.activeDevices, room = _useRoomPlatform.room, switchActiveDevice = _useRoomPlatform.switchActiveDevice;
|
|
10644
10740
|
var enumerateDevices = (_navigator_mediaDevices = navigator.mediaDevices) === null || _navigator_mediaDevices === void 0 ? void 0 : _navigator_mediaDevices.enumerateDevices;
|
|
10645
10741
|
var canEnumerateDevices = typeof enumerateDevices === 'function';
|
|
10646
|
-
var _useState = _sliced_to_array$
|
|
10647
|
-
var _useState1 = _sliced_to_array$
|
|
10648
|
-
var _useState2 = _sliced_to_array$
|
|
10649
|
-
var _useState3 = _sliced_to_array$
|
|
10650
|
-
var _useState4 = _sliced_to_array$
|
|
10651
|
-
var _useState5 = _sliced_to_array$
|
|
10742
|
+
var _useState = _sliced_to_array$p(useState([]), 2), devices = _useState[0], setDevices = _useState[1];
|
|
10743
|
+
var _useState1 = _sliced_to_array$p(useState(canEnumerateDevices ? (_activeDevices_audioinput = activeDevices.audioinput) !== null && _activeDevices_audioinput !== void 0 ? _activeDevices_audioinput : fallbacks.audioinput.value : fallbacks.audioinput.value), 2), selectedMicrophoneId = _useState1[0], setSelectedMicrophoneId = _useState1[1];
|
|
10744
|
+
var _useState2 = _sliced_to_array$p(useState(canEnumerateDevices ? (_activeDevices_videoinput = activeDevices.videoinput) !== null && _activeDevices_videoinput !== void 0 ? _activeDevices_videoinput : fallbacks.videoinput.value : fallbacks.videoinput.value), 2), selectedCameraId = _useState2[0], setSelectedCameraId = _useState2[1];
|
|
10745
|
+
var _useState3 = _sliced_to_array$p(useState(canEnumerateDevices ? (_activeDevices_audiooutput = activeDevices.audiooutput) !== null && _activeDevices_audiooutput !== void 0 ? _activeDevices_audiooutput : fallbacks.audiooutput.value : fallbacks.audiooutput.value), 2), selectedSpeakerId = _useState3[0], setSelectedSpeakerId = _useState3[1];
|
|
10746
|
+
var _useState4 = _sliced_to_array$p(useState(null), 2), deviceApplyError = _useState4[0], setDeviceApplyError = _useState4[1];
|
|
10747
|
+
var _useState5 = _sliced_to_array$p(useState(false), 2), isApplyingDevices = _useState5[0], setIsApplyingDevices = _useState5[1];
|
|
10652
10748
|
var microphones = useMemo(function() {
|
|
10653
10749
|
return devices.filter(function(param) {
|
|
10654
10750
|
var kind = param.kind;
|
|
@@ -10908,12 +11004,12 @@ function RoomPlatformDeviceSettings(param) {
|
|
|
10908
11004
|
});
|
|
10909
11005
|
}
|
|
10910
11006
|
|
|
10911
|
-
function _array_like_to_array$
|
|
11007
|
+
function _array_like_to_array$s(arr, len) {
|
|
10912
11008
|
if (len == null || len > arr.length) len = arr.length;
|
|
10913
11009
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
10914
11010
|
return arr2;
|
|
10915
11011
|
}
|
|
10916
|
-
function _array_with_holes$
|
|
11012
|
+
function _array_with_holes$o(arr) {
|
|
10917
11013
|
if (Array.isArray(arr)) return arr;
|
|
10918
11014
|
}
|
|
10919
11015
|
function asyncGeneratorStep$j(gen, resolve, reject, _next, _throw, key, arg) {
|
|
@@ -10958,7 +11054,7 @@ function _define_property$k(obj, key, value) {
|
|
|
10958
11054
|
}
|
|
10959
11055
|
return obj;
|
|
10960
11056
|
}
|
|
10961
|
-
function _iterable_to_array_limit$
|
|
11057
|
+
function _iterable_to_array_limit$o(arr, i) {
|
|
10962
11058
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
10963
11059
|
if (_i == null) return;
|
|
10964
11060
|
var _arr = [];
|
|
@@ -10982,7 +11078,7 @@ function _iterable_to_array_limit$n(arr, i) {
|
|
|
10982
11078
|
}
|
|
10983
11079
|
return _arr;
|
|
10984
11080
|
}
|
|
10985
|
-
function _non_iterable_rest$
|
|
11081
|
+
function _non_iterable_rest$o() {
|
|
10986
11082
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
10987
11083
|
}
|
|
10988
11084
|
function _object_spread$g(target) {
|
|
@@ -11055,16 +11151,16 @@ function _object_without_properties_loose$5(source, excluded) {
|
|
|
11055
11151
|
}
|
|
11056
11152
|
return target;
|
|
11057
11153
|
}
|
|
11058
|
-
function _sliced_to_array$
|
|
11059
|
-
return _array_with_holes$
|
|
11154
|
+
function _sliced_to_array$o(arr, i) {
|
|
11155
|
+
return _array_with_holes$o(arr) || _iterable_to_array_limit$o(arr, i) || _unsupported_iterable_to_array$s(arr, i) || _non_iterable_rest$o();
|
|
11060
11156
|
}
|
|
11061
|
-
function _unsupported_iterable_to_array$
|
|
11157
|
+
function _unsupported_iterable_to_array$s(o, minLen) {
|
|
11062
11158
|
if (!o) return;
|
|
11063
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
11159
|
+
if (typeof o === "string") return _array_like_to_array$s(o, minLen);
|
|
11064
11160
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
11065
11161
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
11066
11162
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
11067
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
11163
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$s(o, minLen);
|
|
11068
11164
|
}
|
|
11069
11165
|
function _ts_generator$j(thisArg, body) {
|
|
11070
11166
|
var f, y, t, _ = {
|
|
@@ -11213,9 +11309,10 @@ function IconTooltipButton$1(_0) {
|
|
|
11213
11309
|
function RoomPlatformControlBar(param) {
|
|
11214
11310
|
var cameraBackground = param.cameraBackground, _param_isFullscreen = param.isFullscreen, isFullscreen = _param_isFullscreen === void 0 ? false : _param_isFullscreen, _param_isTheaterMode = param.isTheaterMode, isTheaterMode = _param_isTheaterMode === void 0 ? false : _param_isTheaterMode, onExit = param.onExit, onToggleFullscreen = param.onToggleFullscreen, onToggleTheaterMode = param.onToggleTheaterMode;
|
|
11215
11311
|
var _useRoomPlatform = useRoomPlatform(), access = _useRoomPlatform.access, controlState = _useRoomPlatform.controlState, hasCapability = _useRoomPlatform.hasCapability, isLocalMediaPending = _useRoomPlatform.isLocalMediaPending, localMedia = _useRoomPlatform.localMedia, performAction = _useRoomPlatform.performAction, room = _useRoomPlatform.room, setLocalMediaEnabled = _useRoomPlatform.setLocalMediaEnabled;
|
|
11216
|
-
var _useState = _sliced_to_array$
|
|
11217
|
-
var _useState1 = _sliced_to_array$
|
|
11218
|
-
var _useState2 = _sliced_to_array$
|
|
11312
|
+
var _useState = _sliced_to_array$o(useState(false), 2), settingsOpen = _useState[0], setSettingsOpen = _useState[1];
|
|
11313
|
+
var _useState1 = _sliced_to_array$o(useState(false), 2), isRequestSpeakPending = _useState1[0], setIsRequestSpeakPending = _useState1[1];
|
|
11314
|
+
var _useState2 = _sliced_to_array$o(useState(false), 2), isCancelSpeakPending = _useState2[0], setIsCancelSpeakPending = _useState2[1];
|
|
11315
|
+
var roomPlatformToast = useRoomPlatformToast();
|
|
11219
11316
|
var currentParticipant = useRoomPresence().find(function(participant) {
|
|
11220
11317
|
return participant.isLocal;
|
|
11221
11318
|
});
|
|
@@ -11252,7 +11349,7 @@ function RoomPlatformControlBar(param) {
|
|
|
11252
11349
|
];
|
|
11253
11350
|
case 3:
|
|
11254
11351
|
_state.sent();
|
|
11255
|
-
|
|
11352
|
+
roomPlatformToast.error('Không gửi được yêu cầu phát biểu. Vui lòng thử lại.');
|
|
11256
11353
|
return [
|
|
11257
11354
|
3,
|
|
11258
11355
|
5
|
|
@@ -11299,7 +11396,7 @@ function RoomPlatformControlBar(param) {
|
|
|
11299
11396
|
];
|
|
11300
11397
|
case 3:
|
|
11301
11398
|
_state.sent();
|
|
11302
|
-
|
|
11399
|
+
roomPlatformToast.error('Không hủy được yêu cầu phát biểu. Vui lòng thử lại.');
|
|
11303
11400
|
return [
|
|
11304
11401
|
3,
|
|
11305
11402
|
5
|
|
@@ -11465,12 +11562,12 @@ function RoomPlatformControlBar(param) {
|
|
|
11465
11562
|
});
|
|
11466
11563
|
}
|
|
11467
11564
|
|
|
11468
|
-
function _array_like_to_array$
|
|
11565
|
+
function _array_like_to_array$r(arr, len) {
|
|
11469
11566
|
if (len == null || len > arr.length) len = arr.length;
|
|
11470
11567
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
11471
11568
|
return arr2;
|
|
11472
11569
|
}
|
|
11473
|
-
function _array_with_holes$
|
|
11570
|
+
function _array_with_holes$n(arr) {
|
|
11474
11571
|
if (Array.isArray(arr)) return arr;
|
|
11475
11572
|
}
|
|
11476
11573
|
function asyncGeneratorStep$i(gen, resolve, reject, _next, _throw, key, arg) {
|
|
@@ -11502,7 +11599,7 @@ function _async_to_generator$i(fn) {
|
|
|
11502
11599
|
});
|
|
11503
11600
|
};
|
|
11504
11601
|
}
|
|
11505
|
-
function _iterable_to_array_limit$
|
|
11602
|
+
function _iterable_to_array_limit$n(arr, i) {
|
|
11506
11603
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
11507
11604
|
if (_i == null) return;
|
|
11508
11605
|
var _arr = [];
|
|
@@ -11526,19 +11623,19 @@ function _iterable_to_array_limit$m(arr, i) {
|
|
|
11526
11623
|
}
|
|
11527
11624
|
return _arr;
|
|
11528
11625
|
}
|
|
11529
|
-
function _non_iterable_rest$
|
|
11626
|
+
function _non_iterable_rest$n() {
|
|
11530
11627
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
11531
11628
|
}
|
|
11532
|
-
function _sliced_to_array$
|
|
11533
|
-
return _array_with_holes$
|
|
11629
|
+
function _sliced_to_array$n(arr, i) {
|
|
11630
|
+
return _array_with_holes$n(arr) || _iterable_to_array_limit$n(arr, i) || _unsupported_iterable_to_array$r(arr, i) || _non_iterable_rest$n();
|
|
11534
11631
|
}
|
|
11535
|
-
function _unsupported_iterable_to_array$
|
|
11632
|
+
function _unsupported_iterable_to_array$r(o, minLen) {
|
|
11536
11633
|
if (!o) return;
|
|
11537
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
11634
|
+
if (typeof o === "string") return _array_like_to_array$r(o, minLen);
|
|
11538
11635
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
11539
11636
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
11540
11637
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
11541
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
11638
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$r(o, minLen);
|
|
11542
11639
|
}
|
|
11543
11640
|
function _ts_generator$i(thisArg, body) {
|
|
11544
11641
|
var f, y, t, _ = {
|
|
@@ -11642,7 +11739,8 @@ function _ts_generator$i(thisArg, body) {
|
|
|
11642
11739
|
function RoomPlatformCurrentOperationStrip(param) {
|
|
11643
11740
|
var activeSpeakerParticipantIdentity = param.activeSpeakerParticipantIdentity, canClearActiveSpeaker = param.canClearActiveSpeaker, isClearingActiveSpeaker = param.isClearingActiveSpeaker, onClearActiveSpeaker = param.onClearActiveSpeaker, currentPrivateRoomOperation = param.currentPrivateRoomOperation, onCancelPrivateRoom = param.onCancelPrivateRoom, participants = param.participants;
|
|
11644
11741
|
var _ref, _ref1;
|
|
11645
|
-
var _useState = _sliced_to_array$
|
|
11742
|
+
var _useState = _sliced_to_array$n(useState(false), 2), isCancelingPrivateRoomOperation = _useState[0], setIsCancelingPrivateRoomOperation = _useState[1];
|
|
11743
|
+
var roomPlatformToast = useRoomPlatformToast();
|
|
11646
11744
|
var activeSpeaker = activeSpeakerParticipantIdentity ? participants.find(function(participant) {
|
|
11647
11745
|
return participant.participantIdentity === activeSpeakerParticipantIdentity;
|
|
11648
11746
|
}) : undefined;
|
|
@@ -11680,7 +11778,7 @@ function RoomPlatformCurrentOperationStrip(param) {
|
|
|
11680
11778
|
];
|
|
11681
11779
|
case 3:
|
|
11682
11780
|
_state.sent();
|
|
11683
|
-
|
|
11781
|
+
roomPlatformToast.error('Không hủy được cuộc gọi riêng. Vui lòng thử lại.');
|
|
11684
11782
|
return [
|
|
11685
11783
|
3,
|
|
11686
11784
|
5
|
|
@@ -11908,15 +12006,15 @@ function RoomPlatformMonitorSidebarVideoTile(props) {
|
|
|
11908
12006
|
return /*#__PURE__*/ jsx(RoomPlatformMonitorVideoTile, _object_spread$f({}, props));
|
|
11909
12007
|
}
|
|
11910
12008
|
|
|
11911
|
-
function _array_like_to_array$
|
|
12009
|
+
function _array_like_to_array$q(arr, len) {
|
|
11912
12010
|
if (len == null || len > arr.length) len = arr.length;
|
|
11913
12011
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
11914
12012
|
return arr2;
|
|
11915
12013
|
}
|
|
11916
|
-
function _array_with_holes$
|
|
12014
|
+
function _array_with_holes$m(arr) {
|
|
11917
12015
|
if (Array.isArray(arr)) return arr;
|
|
11918
12016
|
}
|
|
11919
|
-
function _iterable_to_array_limit$
|
|
12017
|
+
function _iterable_to_array_limit$m(arr, i) {
|
|
11920
12018
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
11921
12019
|
if (_i == null) return;
|
|
11922
12020
|
var _arr = [];
|
|
@@ -11940,19 +12038,19 @@ function _iterable_to_array_limit$l(arr, i) {
|
|
|
11940
12038
|
}
|
|
11941
12039
|
return _arr;
|
|
11942
12040
|
}
|
|
11943
|
-
function _non_iterable_rest$
|
|
12041
|
+
function _non_iterable_rest$m() {
|
|
11944
12042
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
11945
12043
|
}
|
|
11946
|
-
function _sliced_to_array$
|
|
11947
|
-
return _array_with_holes$
|
|
12044
|
+
function _sliced_to_array$m(arr, i) {
|
|
12045
|
+
return _array_with_holes$m(arr) || _iterable_to_array_limit$m(arr, i) || _unsupported_iterable_to_array$q(arr, i) || _non_iterable_rest$m();
|
|
11948
12046
|
}
|
|
11949
|
-
function _unsupported_iterable_to_array$
|
|
12047
|
+
function _unsupported_iterable_to_array$q(o, minLen) {
|
|
11950
12048
|
if (!o) return;
|
|
11951
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
12049
|
+
if (typeof o === "string") return _array_like_to_array$q(o, minLen);
|
|
11952
12050
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
11953
12051
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
11954
12052
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
11955
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
12053
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$q(o, minLen);
|
|
11956
12054
|
}
|
|
11957
12055
|
var hasAvailableTrackMedia$1 = function(param) {
|
|
11958
12056
|
var publication = param.publication;
|
|
@@ -11965,7 +12063,7 @@ var hasAvailableTrackMedia$1 = function(param) {
|
|
|
11965
12063
|
};
|
|
11966
12064
|
function RoomPlatformMonitorStage(param) {
|
|
11967
12065
|
var roster = param.roster, _param_pageSize = param.pageSize, pageSize = _param_pageSize === void 0 ? 12 : _param_pageSize;
|
|
11968
|
-
var _useState = _sliced_to_array$
|
|
12066
|
+
var _useState = _sliced_to_array$m(useState(1), 2), page = _useState[0], setPage = _useState[1];
|
|
11969
12067
|
var cameraTracks = useTracks([
|
|
11970
12068
|
Track.Source.Camera
|
|
11971
12069
|
]);
|
|
@@ -12168,13 +12266,13 @@ function useRoomPlatformMonitorViewer(param) {
|
|
|
12168
12266
|
]);
|
|
12169
12267
|
}
|
|
12170
12268
|
|
|
12171
|
-
function _array_like_to_array$
|
|
12269
|
+
function _array_like_to_array$p(arr, len) {
|
|
12172
12270
|
if (len == null || len > arr.length) len = arr.length;
|
|
12173
12271
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
12174
12272
|
return arr2;
|
|
12175
12273
|
}
|
|
12176
12274
|
function _array_without_holes$b(arr) {
|
|
12177
|
-
if (Array.isArray(arr)) return _array_like_to_array$
|
|
12275
|
+
if (Array.isArray(arr)) return _array_like_to_array$p(arr);
|
|
12178
12276
|
}
|
|
12179
12277
|
function asyncGeneratorStep$h(gen, resolve, reject, _next, _throw, key, arg) {
|
|
12180
12278
|
try {
|
|
@@ -12266,19 +12364,19 @@ function _object_spread_props$d(target, source) {
|
|
|
12266
12364
|
return target;
|
|
12267
12365
|
}
|
|
12268
12366
|
function _to_consumable_array$b(arr) {
|
|
12269
|
-
return _array_without_holes$b(arr) || _iterable_to_array$b(arr) || _unsupported_iterable_to_array$
|
|
12367
|
+
return _array_without_holes$b(arr) || _iterable_to_array$b(arr) || _unsupported_iterable_to_array$p(arr) || _non_iterable_spread$b();
|
|
12270
12368
|
}
|
|
12271
12369
|
function _type_of$8(obj) {
|
|
12272
12370
|
"@swc/helpers - typeof";
|
|
12273
12371
|
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
12274
12372
|
}
|
|
12275
|
-
function _unsupported_iterable_to_array$
|
|
12373
|
+
function _unsupported_iterable_to_array$p(o, minLen) {
|
|
12276
12374
|
if (!o) return;
|
|
12277
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
12375
|
+
if (typeof o === "string") return _array_like_to_array$p(o, minLen);
|
|
12278
12376
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
12279
12377
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
12280
12378
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
12281
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
12379
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$p(o, minLen);
|
|
12282
12380
|
}
|
|
12283
12381
|
function _ts_generator$h(thisArg, body) {
|
|
12284
12382
|
var f, y, t, _ = {
|
|
@@ -13096,12 +13194,12 @@ var saveRoomPlatformUploadAndSelect = function(file) {
|
|
|
13096
13194
|
})();
|
|
13097
13195
|
};
|
|
13098
13196
|
|
|
13099
|
-
function _array_like_to_array$
|
|
13197
|
+
function _array_like_to_array$o(arr, len) {
|
|
13100
13198
|
if (len == null || len > arr.length) len = arr.length;
|
|
13101
13199
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
13102
13200
|
return arr2;
|
|
13103
13201
|
}
|
|
13104
|
-
function _array_with_holes$
|
|
13202
|
+
function _array_with_holes$l(arr) {
|
|
13105
13203
|
if (Array.isArray(arr)) return arr;
|
|
13106
13204
|
}
|
|
13107
13205
|
function asyncGeneratorStep$g(gen, resolve, reject, _next, _throw, key, arg) {
|
|
@@ -13146,7 +13244,7 @@ function _define_property$h(obj, key, value) {
|
|
|
13146
13244
|
}
|
|
13147
13245
|
return obj;
|
|
13148
13246
|
}
|
|
13149
|
-
function _iterable_to_array_limit$
|
|
13247
|
+
function _iterable_to_array_limit$l(arr, i) {
|
|
13150
13248
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
13151
13249
|
if (_i == null) return;
|
|
13152
13250
|
var _arr = [];
|
|
@@ -13170,7 +13268,7 @@ function _iterable_to_array_limit$k(arr, i) {
|
|
|
13170
13268
|
}
|
|
13171
13269
|
return _arr;
|
|
13172
13270
|
}
|
|
13173
|
-
function _non_iterable_rest$
|
|
13271
|
+
function _non_iterable_rest$l() {
|
|
13174
13272
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
13175
13273
|
}
|
|
13176
13274
|
function _object_spread$d(target) {
|
|
@@ -13207,16 +13305,16 @@ function _object_spread_props$c(target, source) {
|
|
|
13207
13305
|
}
|
|
13208
13306
|
return target;
|
|
13209
13307
|
}
|
|
13210
|
-
function _sliced_to_array$
|
|
13211
|
-
return _array_with_holes$
|
|
13308
|
+
function _sliced_to_array$l(arr, i) {
|
|
13309
|
+
return _array_with_holes$l(arr) || _iterable_to_array_limit$l(arr, i) || _unsupported_iterable_to_array$o(arr, i) || _non_iterable_rest$l();
|
|
13212
13310
|
}
|
|
13213
|
-
function _unsupported_iterable_to_array$
|
|
13311
|
+
function _unsupported_iterable_to_array$o(o, minLen) {
|
|
13214
13312
|
if (!o) return;
|
|
13215
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
13313
|
+
if (typeof o === "string") return _array_like_to_array$o(o, minLen);
|
|
13216
13314
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
13217
13315
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
13218
13316
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
13219
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
13317
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$o(o, minLen);
|
|
13220
13318
|
}
|
|
13221
13319
|
function _ts_generator$g(thisArg, body) {
|
|
13222
13320
|
var f, y, t, _ = {
|
|
@@ -13339,7 +13437,7 @@ function useRoomPlatformCameraBackground(param) {
|
|
|
13339
13437
|
var _ref, _ref1;
|
|
13340
13438
|
var _uploadItems_find, _uploadItems_;
|
|
13341
13439
|
var isSupported = typeof window !== 'undefined' && supportsBackgroundProcessors();
|
|
13342
|
-
var _useState = _sliced_to_array$
|
|
13440
|
+
var _useState = _sliced_to_array$l(useState(function() {
|
|
13343
13441
|
var saved = loadRoomPlatformCameraBackgroundSettings();
|
|
13344
13442
|
return mapSettingsToState(saved, isSupported);
|
|
13345
13443
|
}), 2), state = _useState[0], setState = _useState[1];
|
|
@@ -13351,7 +13449,7 @@ function useRoomPlatformCameraBackground(param) {
|
|
|
13351
13449
|
var activeObjectUrlRef = useRef(null);
|
|
13352
13450
|
var uploadPreviewUrlsRef = useRef([]);
|
|
13353
13451
|
var lastAppliedKeyRef = useRef('');
|
|
13354
|
-
var _useState1 = _sliced_to_array$
|
|
13452
|
+
var _useState1 = _sliced_to_array$l(useState([]), 2), uploadItems = _useState1[0], setUploadItems = _useState1[1];
|
|
13355
13453
|
var clearActiveObjectUrl = useCallback(function() {
|
|
13356
13454
|
if (!activeObjectUrlRef.current) return;
|
|
13357
13455
|
URL.revokeObjectURL(activeObjectUrlRef.current);
|
|
@@ -14212,16 +14310,16 @@ function useRoomPlatformCameraBackground(param) {
|
|
|
14212
14310
|
};
|
|
14213
14311
|
}
|
|
14214
14312
|
|
|
14215
|
-
function _array_like_to_array$
|
|
14313
|
+
function _array_like_to_array$n(arr, len) {
|
|
14216
14314
|
if (len == null || len > arr.length) len = arr.length;
|
|
14217
14315
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
14218
14316
|
return arr2;
|
|
14219
14317
|
}
|
|
14220
|
-
function _array_with_holes$
|
|
14318
|
+
function _array_with_holes$k(arr) {
|
|
14221
14319
|
if (Array.isArray(arr)) return arr;
|
|
14222
14320
|
}
|
|
14223
14321
|
function _array_without_holes$a(arr) {
|
|
14224
|
-
if (Array.isArray(arr)) return _array_like_to_array$
|
|
14322
|
+
if (Array.isArray(arr)) return _array_like_to_array$n(arr);
|
|
14225
14323
|
}
|
|
14226
14324
|
function asyncGeneratorStep$f(gen, resolve, reject, _next, _throw, key, arg) {
|
|
14227
14325
|
try {
|
|
@@ -14255,7 +14353,7 @@ function _async_to_generator$f(fn) {
|
|
|
14255
14353
|
function _iterable_to_array$a(iter) {
|
|
14256
14354
|
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
14257
14355
|
}
|
|
14258
|
-
function _iterable_to_array_limit$
|
|
14356
|
+
function _iterable_to_array_limit$k(arr, i) {
|
|
14259
14357
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
14260
14358
|
if (_i == null) return;
|
|
14261
14359
|
var _arr = [];
|
|
@@ -14279,25 +14377,25 @@ function _iterable_to_array_limit$j(arr, i) {
|
|
|
14279
14377
|
}
|
|
14280
14378
|
return _arr;
|
|
14281
14379
|
}
|
|
14282
|
-
function _non_iterable_rest$
|
|
14380
|
+
function _non_iterable_rest$k() {
|
|
14283
14381
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
14284
14382
|
}
|
|
14285
14383
|
function _non_iterable_spread$a() {
|
|
14286
14384
|
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
14287
14385
|
}
|
|
14288
|
-
function _sliced_to_array$
|
|
14289
|
-
return _array_with_holes$
|
|
14386
|
+
function _sliced_to_array$k(arr, i) {
|
|
14387
|
+
return _array_with_holes$k(arr) || _iterable_to_array_limit$k(arr, i) || _unsupported_iterable_to_array$n(arr, i) || _non_iterable_rest$k();
|
|
14290
14388
|
}
|
|
14291
14389
|
function _to_consumable_array$a(arr) {
|
|
14292
|
-
return _array_without_holes$a(arr) || _iterable_to_array$a(arr) || _unsupported_iterable_to_array$
|
|
14390
|
+
return _array_without_holes$a(arr) || _iterable_to_array$a(arr) || _unsupported_iterable_to_array$n(arr) || _non_iterable_spread$a();
|
|
14293
14391
|
}
|
|
14294
|
-
function _unsupported_iterable_to_array$
|
|
14392
|
+
function _unsupported_iterable_to_array$n(o, minLen) {
|
|
14295
14393
|
if (!o) return;
|
|
14296
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
14394
|
+
if (typeof o === "string") return _array_like_to_array$n(o, minLen);
|
|
14297
14395
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
14298
14396
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
14299
14397
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
14300
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
14398
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$n(o, minLen);
|
|
14301
14399
|
}
|
|
14302
14400
|
function _ts_generator$f(thisArg, body) {
|
|
14303
14401
|
var f, y, t, _ = {
|
|
@@ -14427,7 +14525,7 @@ function RoomPlatformPrivateRoomConnection(param) {
|
|
|
14427
14525
|
var canShareScreen = connection.permissions.includes('media:share_screen');
|
|
14428
14526
|
var canPublish = connection.permissions.includes('media:publish');
|
|
14429
14527
|
var baseScopeKey = isEligible ? "".concat(state.id, ":").concat(currentExternalActorId, ":").concat(scopeOf(connection)) : '';
|
|
14430
|
-
var _useState = _sliced_to_array$
|
|
14528
|
+
var _useState = _sliced_to_array$k(useState(null), 2), room = _useState[0], setRoom = _useState[1];
|
|
14431
14529
|
var roomRef = useRef(null);
|
|
14432
14530
|
var generationRef = useRef(0);
|
|
14433
14531
|
var scopeRef = useRef(undefined);
|
|
@@ -14435,7 +14533,7 @@ function RoomPlatformPrivateRoomConnection(param) {
|
|
|
14435
14533
|
var onDisconnectedRef = useRef(onDisconnected);
|
|
14436
14534
|
var refreshedTokenKeysRef = useRef(new Set());
|
|
14437
14535
|
var refreshRequestedScopeRef = useRef(undefined);
|
|
14438
|
-
var _useState1 = _sliced_to_array$
|
|
14536
|
+
var _useState1 = _sliced_to_array$k(useState(0), 2), generationNonce = _useState1[0], setGenerationNonce = _useState1[1];
|
|
14439
14537
|
var scopeKey = baseScopeKey ? "".concat(baseScopeKey, ":").concat(generationNonce) : '';
|
|
14440
14538
|
// A token refresh must not be a generation key. Pin the token to the scope so
|
|
14441
14539
|
// ordinary actor-scoped refetches keep the existing LiveKit Room instance.
|
|
@@ -14636,12 +14734,12 @@ function RoomPlatformPrivateRoomConnection(param) {
|
|
|
14636
14734
|
});
|
|
14637
14735
|
}
|
|
14638
14736
|
|
|
14639
|
-
function _array_like_to_array$
|
|
14737
|
+
function _array_like_to_array$m(arr, len) {
|
|
14640
14738
|
if (len == null || len > arr.length) len = arr.length;
|
|
14641
14739
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
14642
14740
|
return arr2;
|
|
14643
14741
|
}
|
|
14644
|
-
function _array_with_holes$
|
|
14742
|
+
function _array_with_holes$j(arr) {
|
|
14645
14743
|
if (Array.isArray(arr)) return arr;
|
|
14646
14744
|
}
|
|
14647
14745
|
function asyncGeneratorStep$e(gen, resolve, reject, _next, _throw, key, arg) {
|
|
@@ -14673,7 +14771,7 @@ function _async_to_generator$e(fn) {
|
|
|
14673
14771
|
});
|
|
14674
14772
|
};
|
|
14675
14773
|
}
|
|
14676
|
-
function _iterable_to_array_limit$
|
|
14774
|
+
function _iterable_to_array_limit$j(arr, i) {
|
|
14677
14775
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
14678
14776
|
if (_i == null) return;
|
|
14679
14777
|
var _arr = [];
|
|
@@ -14697,19 +14795,19 @@ function _iterable_to_array_limit$i(arr, i) {
|
|
|
14697
14795
|
}
|
|
14698
14796
|
return _arr;
|
|
14699
14797
|
}
|
|
14700
|
-
function _non_iterable_rest$
|
|
14798
|
+
function _non_iterable_rest$j() {
|
|
14701
14799
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
14702
14800
|
}
|
|
14703
|
-
function _sliced_to_array$
|
|
14704
|
-
return _array_with_holes$
|
|
14801
|
+
function _sliced_to_array$j(arr, i) {
|
|
14802
|
+
return _array_with_holes$j(arr) || _iterable_to_array_limit$j(arr, i) || _unsupported_iterable_to_array$m(arr, i) || _non_iterable_rest$j();
|
|
14705
14803
|
}
|
|
14706
|
-
function _unsupported_iterable_to_array$
|
|
14804
|
+
function _unsupported_iterable_to_array$m(o, minLen) {
|
|
14707
14805
|
if (!o) return;
|
|
14708
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
14806
|
+
if (typeof o === "string") return _array_like_to_array$m(o, minLen);
|
|
14709
14807
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
14710
14808
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
14711
14809
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
14712
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
14810
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$m(o, minLen);
|
|
14713
14811
|
}
|
|
14714
14812
|
function _ts_generator$e(thisArg, body) {
|
|
14715
14813
|
var f, y, t, _ = {
|
|
@@ -14812,8 +14910,9 @@ function _ts_generator$e(thisArg, body) {
|
|
|
14812
14910
|
}
|
|
14813
14911
|
function useRoomPlatformPrivateRoomControlActions(param) {
|
|
14814
14912
|
var canShareScreen = param.canShareScreen, isScreenSharing = param.isScreenSharing, onStartScreenShare = param.onStartScreenShare, onStopScreenShare = param.onStopScreenShare, onEnd = param.onEnd, onScreenSharingChange = param.onScreenSharingChange, setLocalScreenShareEnabled = param.setLocalScreenShareEnabled, onEndingChange = param.onEndingChange, onEnded = param.onEnded;
|
|
14815
|
-
var
|
|
14816
|
-
var
|
|
14913
|
+
var roomPlatformToast = useRoomPlatformToast();
|
|
14914
|
+
var _useState = _sliced_to_array$j(useState(false), 2), isScreenSharePending = _useState[0], setIsScreenSharePending = _useState[1];
|
|
14915
|
+
var _useState1 = _sliced_to_array$j(useState(false), 2), isEnding = _useState1[0], setIsEnding = _useState1[1];
|
|
14817
14916
|
var isStartingRef = useRef(false);
|
|
14818
14917
|
var isStoppingRef = useRef(false);
|
|
14819
14918
|
var isEndingRef = useRef(false);
|
|
@@ -14881,7 +14980,7 @@ function useRoomPlatformPrivateRoomControlActions(param) {
|
|
|
14881
14980
|
];
|
|
14882
14981
|
case 8:
|
|
14883
14982
|
_state.sent();
|
|
14884
|
-
|
|
14983
|
+
roomPlatformToast.error('Không thể chia sẻ màn hình trong phòng riêng.');
|
|
14885
14984
|
return [
|
|
14886
14985
|
3,
|
|
14887
14986
|
10
|
|
@@ -14937,7 +15036,7 @@ function useRoomPlatformPrivateRoomControlActions(param) {
|
|
|
14937
15036
|
];
|
|
14938
15037
|
case 4:
|
|
14939
15038
|
_state.sent();
|
|
14940
|
-
|
|
15039
|
+
roomPlatformToast.error('Không thể dừng chia sẻ màn hình trong phòng riêng.');
|
|
14941
15040
|
return [
|
|
14942
15041
|
3,
|
|
14943
15042
|
6
|
|
@@ -15017,12 +15116,12 @@ function useRoomPlatformPrivateRoomControlActions(param) {
|
|
|
15017
15116
|
};
|
|
15018
15117
|
}
|
|
15019
15118
|
|
|
15020
|
-
function _array_like_to_array$
|
|
15119
|
+
function _array_like_to_array$l(arr, len) {
|
|
15021
15120
|
if (len == null || len > arr.length) len = arr.length;
|
|
15022
15121
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
15023
15122
|
return arr2;
|
|
15024
15123
|
}
|
|
15025
|
-
function _array_with_holes$
|
|
15124
|
+
function _array_with_holes$i(arr) {
|
|
15026
15125
|
if (Array.isArray(arr)) return arr;
|
|
15027
15126
|
}
|
|
15028
15127
|
function asyncGeneratorStep$d(gen, resolve, reject, _next, _throw, key, arg) {
|
|
@@ -15067,7 +15166,7 @@ function _define_property$g(obj, key, value) {
|
|
|
15067
15166
|
}
|
|
15068
15167
|
return obj;
|
|
15069
15168
|
}
|
|
15070
|
-
function _iterable_to_array_limit$
|
|
15169
|
+
function _iterable_to_array_limit$i(arr, i) {
|
|
15071
15170
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
15072
15171
|
if (_i == null) return;
|
|
15073
15172
|
var _arr = [];
|
|
@@ -15091,7 +15190,7 @@ function _iterable_to_array_limit$h(arr, i) {
|
|
|
15091
15190
|
}
|
|
15092
15191
|
return _arr;
|
|
15093
15192
|
}
|
|
15094
|
-
function _non_iterable_rest$
|
|
15193
|
+
function _non_iterable_rest$i() {
|
|
15095
15194
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
15096
15195
|
}
|
|
15097
15196
|
function _object_spread$c(target) {
|
|
@@ -15164,16 +15263,16 @@ function _object_without_properties_loose$4(source, excluded) {
|
|
|
15164
15263
|
}
|
|
15165
15264
|
return target;
|
|
15166
15265
|
}
|
|
15167
|
-
function _sliced_to_array$
|
|
15168
|
-
return _array_with_holes$
|
|
15266
|
+
function _sliced_to_array$i(arr, i) {
|
|
15267
|
+
return _array_with_holes$i(arr) || _iterable_to_array_limit$i(arr, i) || _unsupported_iterable_to_array$l(arr, i) || _non_iterable_rest$i();
|
|
15169
15268
|
}
|
|
15170
|
-
function _unsupported_iterable_to_array$
|
|
15269
|
+
function _unsupported_iterable_to_array$l(o, minLen) {
|
|
15171
15270
|
if (!o) return;
|
|
15172
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
15271
|
+
if (typeof o === "string") return _array_like_to_array$l(o, minLen);
|
|
15173
15272
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
15174
15273
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
15175
15274
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
15176
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
15275
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$l(o, minLen);
|
|
15177
15276
|
}
|
|
15178
15277
|
function _ts_generator$d(thisArg, body) {
|
|
15179
15278
|
var f, y, t, _ = {
|
|
@@ -15380,7 +15479,7 @@ var runAsyncSafely = function(action) {
|
|
|
15380
15479
|
function RoomPlatformPrivateRoomControlBar(param) {
|
|
15381
15480
|
var publishEnabled = param.publishEnabled, permissions = param.permissions, screenShareDisabled = param.screenShareDisabled, onStartScreenShare = param.onStartScreenShare, onStopScreenShare = param.onStopScreenShare, onEnd = param.onEnd, onEndingChange = param.onEndingChange, onEnded = param.onEnded;
|
|
15382
15481
|
var room = useRoomContext();
|
|
15383
|
-
var _useState = _sliced_to_array$
|
|
15482
|
+
var _useState = _sliced_to_array$i(useState(false), 2), isScreenSharing = _useState[0], setIsScreenSharing = _useState[1];
|
|
15384
15483
|
var isScreenSharingRef = useRef(isScreenSharing);
|
|
15385
15484
|
var isScreenSharePendingRef = useRef(false);
|
|
15386
15485
|
var isNotifyingExternalStopRef = useRef(false);
|
|
@@ -15693,13 +15792,13 @@ var WhiteboardSocketEvent = /*#__PURE__*/ function(WhiteboardSocketEvent) {
|
|
|
15693
15792
|
return WhiteboardSocketEvent;
|
|
15694
15793
|
}({});
|
|
15695
15794
|
|
|
15696
|
-
function _array_like_to_array$
|
|
15795
|
+
function _array_like_to_array$k(arr, len) {
|
|
15697
15796
|
if (len == null || len > arr.length) len = arr.length;
|
|
15698
15797
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
15699
15798
|
return arr2;
|
|
15700
15799
|
}
|
|
15701
15800
|
function _array_without_holes$9(arr) {
|
|
15702
|
-
if (Array.isArray(arr)) return _array_like_to_array$
|
|
15801
|
+
if (Array.isArray(arr)) return _array_like_to_array$k(arr);
|
|
15703
15802
|
}
|
|
15704
15803
|
function _define_property$f(obj, key, value) {
|
|
15705
15804
|
if (key in obj) {
|
|
@@ -15791,15 +15890,15 @@ function _object_without_properties_loose$3(source, excluded) {
|
|
|
15791
15890
|
return target;
|
|
15792
15891
|
}
|
|
15793
15892
|
function _to_consumable_array$9(arr) {
|
|
15794
|
-
return _array_without_holes$9(arr) || _iterable_to_array$9(arr) || _unsupported_iterable_to_array$
|
|
15893
|
+
return _array_without_holes$9(arr) || _iterable_to_array$9(arr) || _unsupported_iterable_to_array$k(arr) || _non_iterable_spread$9();
|
|
15795
15894
|
}
|
|
15796
|
-
function _unsupported_iterable_to_array$
|
|
15895
|
+
function _unsupported_iterable_to_array$k(o, minLen) {
|
|
15797
15896
|
if (!o) return;
|
|
15798
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
15897
|
+
if (typeof o === "string") return _array_like_to_array$k(o, minLen);
|
|
15799
15898
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
15800
15899
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
15801
15900
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
15802
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
15901
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$k(o, minLen);
|
|
15803
15902
|
}
|
|
15804
15903
|
function createWhiteboardLocalHistory(createOperationId) {
|
|
15805
15904
|
var state = {
|
|
@@ -15942,13 +16041,13 @@ function omitLatestRevision$1(object) {
|
|
|
15942
16041
|
return input;
|
|
15943
16042
|
}
|
|
15944
16043
|
|
|
15945
|
-
function _array_like_to_array$
|
|
16044
|
+
function _array_like_to_array$j(arr, len) {
|
|
15946
16045
|
if (len == null || len > arr.length) len = arr.length;
|
|
15947
16046
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
15948
16047
|
return arr2;
|
|
15949
16048
|
}
|
|
15950
16049
|
function _array_without_holes$8(arr) {
|
|
15951
|
-
if (Array.isArray(arr)) return _array_like_to_array$
|
|
16050
|
+
if (Array.isArray(arr)) return _array_like_to_array$j(arr);
|
|
15952
16051
|
}
|
|
15953
16052
|
function _iterable_to_array$8(iter) {
|
|
15954
16053
|
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
@@ -15957,15 +16056,15 @@ function _non_iterable_spread$8() {
|
|
|
15957
16056
|
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
15958
16057
|
}
|
|
15959
16058
|
function _to_consumable_array$8(arr) {
|
|
15960
|
-
return _array_without_holes$8(arr) || _iterable_to_array$8(arr) || _unsupported_iterable_to_array$
|
|
16059
|
+
return _array_without_holes$8(arr) || _iterable_to_array$8(arr) || _unsupported_iterable_to_array$j(arr) || _non_iterable_spread$8();
|
|
15961
16060
|
}
|
|
15962
|
-
function _unsupported_iterable_to_array$
|
|
16061
|
+
function _unsupported_iterable_to_array$j(o, minLen) {
|
|
15963
16062
|
if (!o) return;
|
|
15964
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
16063
|
+
if (typeof o === "string") return _array_like_to_array$j(o, minLen);
|
|
15965
16064
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
15966
16065
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
15967
16066
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
15968
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
16067
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$j(o, minLen);
|
|
15969
16068
|
}
|
|
15970
16069
|
var STROKE_WIDTHS = {
|
|
15971
16070
|
xs: 2,
|
|
@@ -16308,16 +16407,16 @@ function pointInPolygon(point, polygon) {
|
|
|
16308
16407
|
return inside;
|
|
16309
16408
|
}
|
|
16310
16409
|
|
|
16311
|
-
function _array_like_to_array$
|
|
16410
|
+
function _array_like_to_array$i(arr, len) {
|
|
16312
16411
|
if (len == null || len > arr.length) len = arr.length;
|
|
16313
16412
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
16314
16413
|
return arr2;
|
|
16315
16414
|
}
|
|
16316
|
-
function _array_with_holes$
|
|
16415
|
+
function _array_with_holes$h(arr) {
|
|
16317
16416
|
if (Array.isArray(arr)) return arr;
|
|
16318
16417
|
}
|
|
16319
16418
|
function _array_without_holes$7(arr) {
|
|
16320
|
-
if (Array.isArray(arr)) return _array_like_to_array$
|
|
16419
|
+
if (Array.isArray(arr)) return _array_like_to_array$i(arr);
|
|
16321
16420
|
}
|
|
16322
16421
|
function _define_property$e(obj, key, value) {
|
|
16323
16422
|
if (key in obj) {
|
|
@@ -16335,7 +16434,7 @@ function _define_property$e(obj, key, value) {
|
|
|
16335
16434
|
function _iterable_to_array$7(iter) {
|
|
16336
16435
|
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
16337
16436
|
}
|
|
16338
|
-
function _iterable_to_array_limit$
|
|
16437
|
+
function _iterable_to_array_limit$h(arr, i) {
|
|
16339
16438
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
16340
16439
|
if (_i == null) return;
|
|
16341
16440
|
var _arr = [];
|
|
@@ -16359,7 +16458,7 @@ function _iterable_to_array_limit$g(arr, i) {
|
|
|
16359
16458
|
}
|
|
16360
16459
|
return _arr;
|
|
16361
16460
|
}
|
|
16362
|
-
function _non_iterable_rest$
|
|
16461
|
+
function _non_iterable_rest$h() {
|
|
16363
16462
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
16364
16463
|
}
|
|
16365
16464
|
function _non_iterable_spread$7() {
|
|
@@ -16399,23 +16498,23 @@ function _object_spread_props$9(target, source) {
|
|
|
16399
16498
|
}
|
|
16400
16499
|
return target;
|
|
16401
16500
|
}
|
|
16402
|
-
function _sliced_to_array$
|
|
16403
|
-
return _array_with_holes$
|
|
16501
|
+
function _sliced_to_array$h(arr, i) {
|
|
16502
|
+
return _array_with_holes$h(arr) || _iterable_to_array_limit$h(arr, i) || _unsupported_iterable_to_array$i(arr, i) || _non_iterable_rest$h();
|
|
16404
16503
|
}
|
|
16405
16504
|
function _to_consumable_array$7(arr) {
|
|
16406
|
-
return _array_without_holes$7(arr) || _iterable_to_array$7(arr) || _unsupported_iterable_to_array$
|
|
16505
|
+
return _array_without_holes$7(arr) || _iterable_to_array$7(arr) || _unsupported_iterable_to_array$i(arr) || _non_iterable_spread$7();
|
|
16407
16506
|
}
|
|
16408
16507
|
function _type_of$6(obj) {
|
|
16409
16508
|
"@swc/helpers - typeof";
|
|
16410
16509
|
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
16411
16510
|
}
|
|
16412
|
-
function _unsupported_iterable_to_array$
|
|
16511
|
+
function _unsupported_iterable_to_array$i(o, minLen) {
|
|
16413
16512
|
if (!o) return;
|
|
16414
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
16513
|
+
if (typeof o === "string") return _array_like_to_array$i(o, minLen);
|
|
16415
16514
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
16416
16515
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
16417
16516
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
16418
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
16517
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$i(o, minLen);
|
|
16419
16518
|
}
|
|
16420
16519
|
function resetSceneState() {
|
|
16421
16520
|
return {
|
|
@@ -16693,7 +16792,7 @@ function applyOperationToScene(state, operation, revision, optimisticRestoreObje
|
|
|
16693
16792
|
}
|
|
16694
16793
|
function sortRecoveredObjects(state) {
|
|
16695
16794
|
state.recoveredObjects = new Map(_to_consumable_array$7(state.recoveredObjects.entries()).sort(function(param, param1) {
|
|
16696
|
-
var _param = _sliced_to_array$
|
|
16795
|
+
var _param = _sliced_to_array$h(param, 2), left = _param[1], _param1 = _sliced_to_array$h(param1, 2), right = _param1[1];
|
|
16697
16796
|
return left.latestRevision === right.latestRevision ? left.objectId.localeCompare(right.objectId) : left.latestRevision - right.latestRevision;
|
|
16698
16797
|
}));
|
|
16699
16798
|
}
|
|
@@ -16754,7 +16853,7 @@ function removeExpiredMarkers(state, now) {
|
|
|
16754
16853
|
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
|
|
16755
16854
|
try {
|
|
16756
16855
|
for(var _iterator = state.recoveredObjects[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
|
|
16757
|
-
var _step_value = _sliced_to_array$
|
|
16856
|
+
var _step_value = _sliced_to_array$h(_step.value, 2), objectId = _step_value[0], object = _step_value[1];
|
|
16758
16857
|
if (isExpiredMarker(object, now)) state.recoveredObjects.delete(objectId);
|
|
16759
16858
|
}
|
|
16760
16859
|
} catch (err) {
|
|
@@ -17464,16 +17563,16 @@ function FilledDiamondShapeIcon() {
|
|
|
17464
17563
|
});
|
|
17465
17564
|
}
|
|
17466
17565
|
|
|
17467
|
-
function _array_like_to_array$
|
|
17566
|
+
function _array_like_to_array$h(arr, len) {
|
|
17468
17567
|
if (len == null || len > arr.length) len = arr.length;
|
|
17469
17568
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
17470
17569
|
return arr2;
|
|
17471
17570
|
}
|
|
17472
|
-
function _array_with_holes$
|
|
17571
|
+
function _array_with_holes$g(arr) {
|
|
17473
17572
|
if (Array.isArray(arr)) return arr;
|
|
17474
17573
|
}
|
|
17475
17574
|
function _array_without_holes$6(arr) {
|
|
17476
|
-
if (Array.isArray(arr)) return _array_like_to_array$
|
|
17575
|
+
if (Array.isArray(arr)) return _array_like_to_array$h(arr);
|
|
17477
17576
|
}
|
|
17478
17577
|
function _define_property$c(obj, key, value) {
|
|
17479
17578
|
if (key in obj) {
|
|
@@ -17491,7 +17590,7 @@ function _define_property$c(obj, key, value) {
|
|
|
17491
17590
|
function _iterable_to_array$6(iter) {
|
|
17492
17591
|
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
17493
17592
|
}
|
|
17494
|
-
function _iterable_to_array_limit$
|
|
17593
|
+
function _iterable_to_array_limit$g(arr, i) {
|
|
17495
17594
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
17496
17595
|
if (_i == null) return;
|
|
17497
17596
|
var _arr = [];
|
|
@@ -17515,7 +17614,7 @@ function _iterable_to_array_limit$f(arr, i) {
|
|
|
17515
17614
|
}
|
|
17516
17615
|
return _arr;
|
|
17517
17616
|
}
|
|
17518
|
-
function _non_iterable_rest$
|
|
17617
|
+
function _non_iterable_rest$g() {
|
|
17519
17618
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
17520
17619
|
}
|
|
17521
17620
|
function _non_iterable_spread$6() {
|
|
@@ -17555,19 +17654,19 @@ function _object_spread_props$8(target, source) {
|
|
|
17555
17654
|
}
|
|
17556
17655
|
return target;
|
|
17557
17656
|
}
|
|
17558
|
-
function _sliced_to_array$
|
|
17559
|
-
return _array_with_holes$
|
|
17657
|
+
function _sliced_to_array$g(arr, i) {
|
|
17658
|
+
return _array_with_holes$g(arr) || _iterable_to_array_limit$g(arr, i) || _unsupported_iterable_to_array$h(arr, i) || _non_iterable_rest$g();
|
|
17560
17659
|
}
|
|
17561
17660
|
function _to_consumable_array$6(arr) {
|
|
17562
|
-
return _array_without_holes$6(arr) || _iterable_to_array$6(arr) || _unsupported_iterable_to_array$
|
|
17661
|
+
return _array_without_holes$6(arr) || _iterable_to_array$6(arr) || _unsupported_iterable_to_array$h(arr) || _non_iterable_spread$6();
|
|
17563
17662
|
}
|
|
17564
|
-
function _unsupported_iterable_to_array$
|
|
17663
|
+
function _unsupported_iterable_to_array$h(o, minLen) {
|
|
17565
17664
|
if (!o) return;
|
|
17566
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
17665
|
+
if (typeof o === "string") return _array_like_to_array$h(o, minLen);
|
|
17567
17666
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
17568
17667
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
17569
17668
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
17570
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
17669
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$h(o, minLen);
|
|
17571
17670
|
}
|
|
17572
17671
|
var WHITEBOARD_VIEWPORT_PADDING = 16;
|
|
17573
17672
|
var WHITEBOARD_DOCK_SNAP_DISTANCE = 64;
|
|
@@ -17598,14 +17697,14 @@ var WHITEBOARD_POPOVER_SIZES = {
|
|
|
17598
17697
|
}
|
|
17599
17698
|
};
|
|
17600
17699
|
function useWhiteboardToolbarLayout() {
|
|
17601
|
-
var _useState = _sliced_to_array$
|
|
17700
|
+
var _useState = _sliced_to_array$g(useState(function() {
|
|
17602
17701
|
return getViewport();
|
|
17603
17702
|
}), 2), viewport = _useState[0], setViewport = _useState[1];
|
|
17604
17703
|
var viewportRef = useRef(viewport);
|
|
17605
|
-
var _useState1 = _sliced_to_array$
|
|
17606
|
-
var _useState2 = _sliced_to_array$
|
|
17607
|
-
var _useState3 = _sliced_to_array$
|
|
17608
|
-
var _useState4 = _sliced_to_array$
|
|
17704
|
+
var _useState1 = _sliced_to_array$g(useState(false), 2), toolbarOpen = _useState1[0], setToolbarOpen = _useState1[1];
|
|
17705
|
+
var _useState2 = _sliced_to_array$g(useState(null), 2), activePopover = _useState2[0], setActivePopover = _useState2[1];
|
|
17706
|
+
var _useState3 = _sliced_to_array$g(useState(false), 2), hasOpened = _useState3[0], setHasOpened = _useState3[1];
|
|
17707
|
+
var _useState4 = _sliced_to_array$g(useState(function() {
|
|
17609
17708
|
return getToolbarLayout(getDefaultToolbarPosition(getViewport()), getViewport());
|
|
17610
17709
|
}), 2), layout = _useState4[0], setLayout = _useState4[1];
|
|
17611
17710
|
var dragOriginRef = useRef(undefined);
|
|
@@ -17831,10 +17930,10 @@ function getOutsideDock(position, orientation, viewport) {
|
|
|
17831
17930
|
]
|
|
17832
17931
|
];
|
|
17833
17932
|
return (_candidates_filter_sort_ = candidates.filter(function(param) {
|
|
17834
|
-
var _param = _sliced_to_array$
|
|
17933
|
+
var _param = _sliced_to_array$g(param, 2), distance = _param[1];
|
|
17835
17934
|
return distance > 0;
|
|
17836
17935
|
}).sort(function(param, param1) {
|
|
17837
|
-
var _param = _sliced_to_array$
|
|
17936
|
+
var _param = _sliced_to_array$g(param, 2), left = _param[1], _param1 = _sliced_to_array$g(param1, 2), right = _param1[1];
|
|
17838
17937
|
return left - right;
|
|
17839
17938
|
})[0]) === null || _candidates_filter_sort_ === void 0 ? void 0 : _candidates_filter_sort_[0];
|
|
17840
17939
|
}
|
|
@@ -17997,12 +18096,12 @@ function TriggerIcon() {
|
|
|
17997
18096
|
});
|
|
17998
18097
|
}
|
|
17999
18098
|
|
|
18000
|
-
function _array_like_to_array$
|
|
18099
|
+
function _array_like_to_array$g(arr, len) {
|
|
18001
18100
|
if (len == null || len > arr.length) len = arr.length;
|
|
18002
18101
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
18003
18102
|
return arr2;
|
|
18004
18103
|
}
|
|
18005
|
-
function _array_with_holes$
|
|
18104
|
+
function _array_with_holes$f(arr) {
|
|
18006
18105
|
if (Array.isArray(arr)) return arr;
|
|
18007
18106
|
}
|
|
18008
18107
|
function _define_property$b(obj, key, value) {
|
|
@@ -18018,7 +18117,7 @@ function _define_property$b(obj, key, value) {
|
|
|
18018
18117
|
}
|
|
18019
18118
|
return obj;
|
|
18020
18119
|
}
|
|
18021
|
-
function _iterable_to_array_limit$
|
|
18120
|
+
function _iterable_to_array_limit$f(arr, i) {
|
|
18022
18121
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
18023
18122
|
if (_i == null) return;
|
|
18024
18123
|
var _arr = [];
|
|
@@ -18042,19 +18141,19 @@ function _iterable_to_array_limit$e(arr, i) {
|
|
|
18042
18141
|
}
|
|
18043
18142
|
return _arr;
|
|
18044
18143
|
}
|
|
18045
|
-
function _non_iterable_rest$
|
|
18144
|
+
function _non_iterable_rest$f() {
|
|
18046
18145
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
18047
18146
|
}
|
|
18048
|
-
function _sliced_to_array$
|
|
18049
|
-
return _array_with_holes$
|
|
18147
|
+
function _sliced_to_array$f(arr, i) {
|
|
18148
|
+
return _array_with_holes$f(arr) || _iterable_to_array_limit$f(arr, i) || _unsupported_iterable_to_array$g(arr, i) || _non_iterable_rest$f();
|
|
18050
18149
|
}
|
|
18051
|
-
function _unsupported_iterable_to_array$
|
|
18150
|
+
function _unsupported_iterable_to_array$g(o, minLen) {
|
|
18052
18151
|
if (!o) return;
|
|
18053
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
18152
|
+
if (typeof o === "string") return _array_like_to_array$g(o, minLen);
|
|
18054
18153
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
18055
18154
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
18056
18155
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
18057
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
18156
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$g(o, minLen);
|
|
18058
18157
|
}
|
|
18059
18158
|
function WhiteboardToolbar(param) {
|
|
18060
18159
|
var _param_activeColor = param.activeColor, activeColor = _param_activeColor === void 0 ? DEFAULT_WHITEBOARD_COLOR : _param_activeColor, _param_activeDrawKind = param.activeDrawKind, activeDrawKind = _param_activeDrawKind === void 0 ? DEFAULT_WHITEBOARD_DRAW_KIND : _param_activeDrawKind, _param_activeTool = param.activeTool, activeTool = _param_activeTool === void 0 ? 'draw' : _param_activeTool, _param_activeWidthPreset = param.activeWidthPreset, activeWidthPreset = _param_activeWidthPreset === void 0 ? DEFAULT_WHITEBOARD_WIDTH_PRESET : _param_activeWidthPreset, _param_canRedo = param.canRedo, canRedo = _param_canRedo === void 0 ? false : _param_canRedo, _param_canUndo = param.canUndo, canUndo = _param_canUndo === void 0 ? false : _param_canUndo, onClose = param.onClose, onColorChange = param.onColorChange, onDrawKindChange = param.onDrawKindChange, onOpenChange = param.onOpenChange, onOperation = param.onOperation, onRedo = param.onRedo, onRetry = param.onRetry, onToolChange = param.onToolChange, onUndo = param.onUndo, onWidthPresetChange = param.onWidthPresetChange, permissions = param.permissions, _param_runtimeState = param.runtimeState, runtimeState = _param_runtimeState === void 0 ? 'ready' : _param_runtimeState;
|
|
@@ -18067,7 +18166,7 @@ function WhiteboardToolbar(param) {
|
|
|
18067
18166
|
var colorButtonRef = useRef(null);
|
|
18068
18167
|
var drawPopoverRef = useRef(null);
|
|
18069
18168
|
var colorPopoverRef = useRef(null);
|
|
18070
|
-
var _useState = _sliced_to_array$
|
|
18169
|
+
var _useState = _sliced_to_array$f(useState(undefined), 2), measuredPopoverStyle = _useState[0], setMeasuredPopoverStyle = _useState[1];
|
|
18071
18170
|
var interactionDisabled = !canWrite || runtimeState !== 'ready';
|
|
18072
18171
|
var clearDisabled = !canClear || runtimeState !== 'ready';
|
|
18073
18172
|
var tooltipSide = getToolbarTooltipSide(dock);
|
|
@@ -18565,15 +18664,15 @@ function CloseIcon() {
|
|
|
18565
18664
|
});
|
|
18566
18665
|
}
|
|
18567
18666
|
|
|
18568
|
-
function _array_like_to_array$
|
|
18667
|
+
function _array_like_to_array$f(arr, len) {
|
|
18569
18668
|
if (len == null || len > arr.length) len = arr.length;
|
|
18570
18669
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
18571
18670
|
return arr2;
|
|
18572
18671
|
}
|
|
18573
|
-
function _array_with_holes$
|
|
18672
|
+
function _array_with_holes$e(arr) {
|
|
18574
18673
|
if (Array.isArray(arr)) return arr;
|
|
18575
18674
|
}
|
|
18576
|
-
function _iterable_to_array_limit$
|
|
18675
|
+
function _iterable_to_array_limit$e(arr, i) {
|
|
18577
18676
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
18578
18677
|
if (_i == null) return;
|
|
18579
18678
|
var _arr = [];
|
|
@@ -18597,23 +18696,23 @@ function _iterable_to_array_limit$d(arr, i) {
|
|
|
18597
18696
|
}
|
|
18598
18697
|
return _arr;
|
|
18599
18698
|
}
|
|
18600
|
-
function _non_iterable_rest$
|
|
18699
|
+
function _non_iterable_rest$e() {
|
|
18601
18700
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
18602
18701
|
}
|
|
18603
|
-
function _sliced_to_array$
|
|
18604
|
-
return _array_with_holes$
|
|
18702
|
+
function _sliced_to_array$e(arr, i) {
|
|
18703
|
+
return _array_with_holes$e(arr) || _iterable_to_array_limit$e(arr, i) || _unsupported_iterable_to_array$f(arr, i) || _non_iterable_rest$e();
|
|
18605
18704
|
}
|
|
18606
|
-
function _unsupported_iterable_to_array$
|
|
18705
|
+
function _unsupported_iterable_to_array$f(o, minLen) {
|
|
18607
18706
|
if (!o) return;
|
|
18608
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
18707
|
+
if (typeof o === "string") return _array_like_to_array$f(o, minLen);
|
|
18609
18708
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
18610
18709
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
18611
18710
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
18612
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
18711
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$f(o, minLen);
|
|
18613
18712
|
}
|
|
18614
18713
|
function useWhiteboardFrameRect() {
|
|
18615
18714
|
var frameRef = useRef(null);
|
|
18616
|
-
var _useState = _sliced_to_array$
|
|
18715
|
+
var _useState = _sliced_to_array$e(useState(undefined), 2), frameRect = _useState[0], setFrameRect = _useState[1];
|
|
18617
18716
|
useEffect(function() {
|
|
18618
18717
|
var element = frameRef.current;
|
|
18619
18718
|
if (!element) return;
|
|
@@ -18648,16 +18747,16 @@ function useWhiteboardFrameRect() {
|
|
|
18648
18747
|
};
|
|
18649
18748
|
}
|
|
18650
18749
|
|
|
18651
|
-
function _array_like_to_array$
|
|
18750
|
+
function _array_like_to_array$e(arr, len) {
|
|
18652
18751
|
if (len == null || len > arr.length) len = arr.length;
|
|
18653
18752
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
18654
18753
|
return arr2;
|
|
18655
18754
|
}
|
|
18656
|
-
function _array_with_holes$
|
|
18755
|
+
function _array_with_holes$d(arr) {
|
|
18657
18756
|
if (Array.isArray(arr)) return arr;
|
|
18658
18757
|
}
|
|
18659
18758
|
function _array_without_holes$5(arr) {
|
|
18660
|
-
if (Array.isArray(arr)) return _array_like_to_array$
|
|
18759
|
+
if (Array.isArray(arr)) return _array_like_to_array$e(arr);
|
|
18661
18760
|
}
|
|
18662
18761
|
function asyncGeneratorStep$c(gen, resolve, reject, _next, _throw, key, arg) {
|
|
18663
18762
|
try {
|
|
@@ -18704,7 +18803,7 @@ function _define_property$a(obj, key, value) {
|
|
|
18704
18803
|
function _iterable_to_array$5(iter) {
|
|
18705
18804
|
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
18706
18805
|
}
|
|
18707
|
-
function _iterable_to_array_limit$
|
|
18806
|
+
function _iterable_to_array_limit$d(arr, i) {
|
|
18708
18807
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
18709
18808
|
if (_i == null) return;
|
|
18710
18809
|
var _arr = [];
|
|
@@ -18728,7 +18827,7 @@ function _iterable_to_array_limit$c(arr, i) {
|
|
|
18728
18827
|
}
|
|
18729
18828
|
return _arr;
|
|
18730
18829
|
}
|
|
18731
|
-
function _non_iterable_rest$
|
|
18830
|
+
function _non_iterable_rest$d() {
|
|
18732
18831
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
18733
18832
|
}
|
|
18734
18833
|
function _non_iterable_spread$5() {
|
|
@@ -18804,23 +18903,23 @@ function _object_without_properties_loose$2(source, excluded) {
|
|
|
18804
18903
|
}
|
|
18805
18904
|
return target;
|
|
18806
18905
|
}
|
|
18807
|
-
function _sliced_to_array$
|
|
18808
|
-
return _array_with_holes$
|
|
18906
|
+
function _sliced_to_array$d(arr, i) {
|
|
18907
|
+
return _array_with_holes$d(arr) || _iterable_to_array_limit$d(arr, i) || _unsupported_iterable_to_array$e(arr, i) || _non_iterable_rest$d();
|
|
18809
18908
|
}
|
|
18810
18909
|
function _to_consumable_array$5(arr) {
|
|
18811
|
-
return _array_without_holes$5(arr) || _iterable_to_array$5(arr) || _unsupported_iterable_to_array$
|
|
18910
|
+
return _array_without_holes$5(arr) || _iterable_to_array$5(arr) || _unsupported_iterable_to_array$e(arr) || _non_iterable_spread$5();
|
|
18812
18911
|
}
|
|
18813
18912
|
function _type_of$5(obj) {
|
|
18814
18913
|
"@swc/helpers - typeof";
|
|
18815
18914
|
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
18816
18915
|
}
|
|
18817
|
-
function _unsupported_iterable_to_array$
|
|
18916
|
+
function _unsupported_iterable_to_array$e(o, minLen) {
|
|
18818
18917
|
if (!o) return;
|
|
18819
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
18918
|
+
if (typeof o === "string") return _array_like_to_array$e(o, minLen);
|
|
18820
18919
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
18821
18920
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
18822
18921
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
18823
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
18922
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$e(o, minLen);
|
|
18824
18923
|
}
|
|
18825
18924
|
function _ts_generator$c(thisArg, body) {
|
|
18826
18925
|
var f, y, t, _ = {
|
|
@@ -18942,10 +19041,10 @@ function WhiteboardCanvas(param) {
|
|
|
18942
19041
|
if (!localHistoryRef.current) localHistoryRef.current = createWhiteboardLocalHistory(function() {
|
|
18943
19042
|
return createStableId('annotation-history');
|
|
18944
19043
|
});
|
|
18945
|
-
var _useState = _sliced_to_array$
|
|
19044
|
+
var _useState = _sliced_to_array$d(useState(function() {
|
|
18946
19045
|
return resetSceneState();
|
|
18947
19046
|
}), 2), sceneState = _useState[0], setSceneState = _useState[1];
|
|
18948
|
-
var _useState1 = _sliced_to_array$
|
|
19047
|
+
var _useState1 = _sliced_to_array$d(useState(function() {
|
|
18949
19048
|
var _ref;
|
|
18950
19049
|
var _localHistoryRef_current;
|
|
18951
19050
|
return (_ref = (_localHistoryRef_current = localHistoryRef.current) === null || _localHistoryRef_current === void 0 ? void 0 : _localHistoryRef_current.getState()) !== null && _ref !== void 0 ? _ref : {
|
|
@@ -18953,11 +19052,11 @@ function WhiteboardCanvas(param) {
|
|
|
18953
19052
|
undoStack: []
|
|
18954
19053
|
};
|
|
18955
19054
|
}), 2), localHistoryState = _useState1[0], setLocalHistoryState = _useState1[1];
|
|
18956
|
-
var _useState2 = _sliced_to_array$
|
|
18957
|
-
var _useState3 = _sliced_to_array$
|
|
18958
|
-
var _useState4 = _sliced_to_array$
|
|
18959
|
-
var _useState5 = _sliced_to_array$
|
|
18960
|
-
var _useState6 = _sliced_to_array$
|
|
19055
|
+
var _useState2 = _sliced_to_array$d(useState(controlledActiveTool !== null && controlledActiveTool !== void 0 ? controlledActiveTool : 'draw'), 2), uncontrolledActiveTool = _useState2[0], setUncontrolledActiveTool = _useState2[1];
|
|
19056
|
+
var _useState3 = _sliced_to_array$d(useState(DEFAULT_WHITEBOARD_DRAW_KIND), 2), activeDrawKind = _useState3[0], setActiveDrawKind = _useState3[1];
|
|
19057
|
+
var _useState4 = _sliced_to_array$d(useState(DEFAULT_WHITEBOARD_COLOR), 2), activeColor = _useState4[0], setActiveColor = _useState4[1];
|
|
19058
|
+
var _useState5 = _sliced_to_array$d(useState(DEFAULT_WHITEBOARD_WIDTH_PRESET), 2), activeWidthPreset = _useState5[0], setActiveWidthPreset = _useState5[1];
|
|
19059
|
+
var _useState6 = _sliced_to_array$d(useState(false), 2), toolbarOpen = _useState6[0], setToolbarOpen = _useState6[1];
|
|
18961
19060
|
var activeTool = controlledActiveTool !== null && controlledActiveTool !== void 0 ? controlledActiveTool : uncontrolledActiveTool;
|
|
18962
19061
|
var hasWritePermission = permissions.includes('whiteboard:write');
|
|
18963
19062
|
var submitState = whiteboard === null || whiteboard === void 0 ? void 0 : (_whiteboard_submitStatus = whiteboard.submitStatus) === null || _whiteboard_submitStatus === void 0 ? void 0 : _whiteboard_submitStatus.state;
|
|
@@ -19560,19 +19659,28 @@ function getNearestMarkerExpiry(objects) {
|
|
|
19560
19659
|
return expiries.length ? (_Math = Math).min.apply(_Math, _to_consumable_array$5(expiries)) : undefined;
|
|
19561
19660
|
}
|
|
19562
19661
|
function getNormalizedPoint(event, frameRect) {
|
|
19563
|
-
|
|
19564
|
-
if (!
|
|
19565
|
-
if (frameRect.width <= 0 || frameRect.height <= 0) return undefined;
|
|
19662
|
+
var currentFrameRect = getPointerFrameRect(event, frameRect);
|
|
19663
|
+
if (!currentFrameRect) return undefined;
|
|
19566
19664
|
var clientX = getEventCoordinate(event, 'clientX');
|
|
19567
19665
|
var clientY = getEventCoordinate(event, 'clientY');
|
|
19568
19666
|
if (!Number.isFinite(clientX) || !Number.isFinite(clientY)) return undefined;
|
|
19569
|
-
var x = (clientX -
|
|
19570
|
-
var y = (clientY -
|
|
19667
|
+
var x = (clientX - currentFrameRect.left) / currentFrameRect.width;
|
|
19668
|
+
var y = (clientY - currentFrameRect.top) / currentFrameRect.height;
|
|
19571
19669
|
return {
|
|
19572
19670
|
x: clamp01(x),
|
|
19573
19671
|
y: clamp01(y)
|
|
19574
19672
|
};
|
|
19575
19673
|
}
|
|
19674
|
+
function getPointerFrameRect(event, fallback) {
|
|
19675
|
+
var rect = event.currentTarget.getBoundingClientRect();
|
|
19676
|
+
if (Number.isFinite(rect.left) && Number.isFinite(rect.top) && Number.isFinite(rect.width) && Number.isFinite(rect.height) && rect.width > 0 && rect.height > 0) {
|
|
19677
|
+
return rect;
|
|
19678
|
+
}
|
|
19679
|
+
if (!Number.isFinite(fallback.left) || !Number.isFinite(fallback.top) || !Number.isFinite(fallback.width) || !Number.isFinite(fallback.height) || fallback.width <= 0 || fallback.height <= 0) {
|
|
19680
|
+
return undefined;
|
|
19681
|
+
}
|
|
19682
|
+
return fallback;
|
|
19683
|
+
}
|
|
19576
19684
|
function getEventCoordinate(event, key) {
|
|
19577
19685
|
var _event_nativeEvent;
|
|
19578
19686
|
if (Number.isFinite(event[key])) return event[key];
|
|
@@ -19592,15 +19700,15 @@ function clamp01(value) {
|
|
|
19592
19700
|
return Math.max(0, Math.min(1, value));
|
|
19593
19701
|
}
|
|
19594
19702
|
|
|
19595
|
-
function _array_like_to_array$
|
|
19703
|
+
function _array_like_to_array$d(arr, len) {
|
|
19596
19704
|
if (len == null || len > arr.length) len = arr.length;
|
|
19597
19705
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
19598
19706
|
return arr2;
|
|
19599
19707
|
}
|
|
19600
|
-
function _array_with_holes$
|
|
19708
|
+
function _array_with_holes$c(arr) {
|
|
19601
19709
|
if (Array.isArray(arr)) return arr;
|
|
19602
19710
|
}
|
|
19603
|
-
function _iterable_to_array_limit$
|
|
19711
|
+
function _iterable_to_array_limit$c(arr, i) {
|
|
19604
19712
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
19605
19713
|
if (_i == null) return;
|
|
19606
19714
|
var _arr = [];
|
|
@@ -19624,19 +19732,19 @@ function _iterable_to_array_limit$b(arr, i) {
|
|
|
19624
19732
|
}
|
|
19625
19733
|
return _arr;
|
|
19626
19734
|
}
|
|
19627
|
-
function _non_iterable_rest$
|
|
19735
|
+
function _non_iterable_rest$c() {
|
|
19628
19736
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
19629
19737
|
}
|
|
19630
|
-
function _sliced_to_array$
|
|
19631
|
-
return _array_with_holes$
|
|
19738
|
+
function _sliced_to_array$c(arr, i) {
|
|
19739
|
+
return _array_with_holes$c(arr) || _iterable_to_array_limit$c(arr, i) || _unsupported_iterable_to_array$d(arr, i) || _non_iterable_rest$c();
|
|
19632
19740
|
}
|
|
19633
|
-
function _unsupported_iterable_to_array$
|
|
19741
|
+
function _unsupported_iterable_to_array$d(o, minLen) {
|
|
19634
19742
|
if (!o) return;
|
|
19635
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
19743
|
+
if (typeof o === "string") return _array_like_to_array$d(o, minLen);
|
|
19636
19744
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
19637
19745
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
19638
19746
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
19639
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
19747
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$d(o, minLen);
|
|
19640
19748
|
}
|
|
19641
19749
|
function createWhiteboardSubmitQueue(options) {
|
|
19642
19750
|
var _options_now;
|
|
@@ -19758,7 +19866,7 @@ function createWhiteboardSubmitQueue(options) {
|
|
|
19758
19866
|
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
|
|
19759
19867
|
try {
|
|
19760
19868
|
var _loop = function() {
|
|
19761
|
-
var _step_value = _sliced_to_array$
|
|
19869
|
+
var _step_value = _sliced_to_array$c(_step.value, 2), operationId = _step_value[0], revision = _step_value[1];
|
|
19762
19870
|
var item = queue.find(function(queuedItem) {
|
|
19763
19871
|
return queuedItem.operation.operationId === operationId;
|
|
19764
19872
|
});
|
|
@@ -19819,16 +19927,16 @@ function createWhiteboardSubmitQueue(options) {
|
|
|
19819
19927
|
};
|
|
19820
19928
|
}
|
|
19821
19929
|
|
|
19822
|
-
function _array_like_to_array$
|
|
19930
|
+
function _array_like_to_array$c(arr, len) {
|
|
19823
19931
|
if (len == null || len > arr.length) len = arr.length;
|
|
19824
19932
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
19825
19933
|
return arr2;
|
|
19826
19934
|
}
|
|
19827
|
-
function _array_with_holes$
|
|
19935
|
+
function _array_with_holes$b(arr) {
|
|
19828
19936
|
if (Array.isArray(arr)) return arr;
|
|
19829
19937
|
}
|
|
19830
19938
|
function _array_without_holes$4(arr) {
|
|
19831
|
-
if (Array.isArray(arr)) return _array_like_to_array$
|
|
19939
|
+
if (Array.isArray(arr)) return _array_like_to_array$c(arr);
|
|
19832
19940
|
}
|
|
19833
19941
|
function asyncGeneratorStep$b(gen, resolve, reject, _next, _throw, key, arg) {
|
|
19834
19942
|
try {
|
|
@@ -19875,7 +19983,7 @@ function _define_property$9(obj, key, value) {
|
|
|
19875
19983
|
function _iterable_to_array$4(iter) {
|
|
19876
19984
|
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
19877
19985
|
}
|
|
19878
|
-
function _iterable_to_array_limit$
|
|
19986
|
+
function _iterable_to_array_limit$b(arr, i) {
|
|
19879
19987
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
19880
19988
|
if (_i == null) return;
|
|
19881
19989
|
var _arr = [];
|
|
@@ -19899,7 +20007,7 @@ function _iterable_to_array_limit$a(arr, i) {
|
|
|
19899
20007
|
}
|
|
19900
20008
|
return _arr;
|
|
19901
20009
|
}
|
|
19902
|
-
function _non_iterable_rest$
|
|
20010
|
+
function _non_iterable_rest$b() {
|
|
19903
20011
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
19904
20012
|
}
|
|
19905
20013
|
function _non_iterable_spread$4() {
|
|
@@ -19939,23 +20047,23 @@ function _object_spread_props$6(target, source) {
|
|
|
19939
20047
|
}
|
|
19940
20048
|
return target;
|
|
19941
20049
|
}
|
|
19942
|
-
function _sliced_to_array$
|
|
19943
|
-
return _array_with_holes$
|
|
20050
|
+
function _sliced_to_array$b(arr, i) {
|
|
20051
|
+
return _array_with_holes$b(arr) || _iterable_to_array_limit$b(arr, i) || _unsupported_iterable_to_array$c(arr, i) || _non_iterable_rest$b();
|
|
19944
20052
|
}
|
|
19945
20053
|
function _to_consumable_array$4(arr) {
|
|
19946
|
-
return _array_without_holes$4(arr) || _iterable_to_array$4(arr) || _unsupported_iterable_to_array$
|
|
20054
|
+
return _array_without_holes$4(arr) || _iterable_to_array$4(arr) || _unsupported_iterable_to_array$c(arr) || _non_iterable_spread$4();
|
|
19947
20055
|
}
|
|
19948
20056
|
function _type_of$4(obj) {
|
|
19949
20057
|
"@swc/helpers - typeof";
|
|
19950
20058
|
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
19951
20059
|
}
|
|
19952
|
-
function _unsupported_iterable_to_array$
|
|
20060
|
+
function _unsupported_iterable_to_array$c(o, minLen) {
|
|
19953
20061
|
if (!o) return;
|
|
19954
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
20062
|
+
if (typeof o === "string") return _array_like_to_array$c(o, minLen);
|
|
19955
20063
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
19956
20064
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
19957
20065
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
19958
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
20066
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$c(o, minLen);
|
|
19959
20067
|
}
|
|
19960
20068
|
function _ts_generator$b(thisArg, body) {
|
|
19961
20069
|
var f, y, t, _ = {
|
|
@@ -20161,7 +20269,7 @@ function createWhiteboardRuntime() {
|
|
|
20161
20269
|
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
|
|
20162
20270
|
try {
|
|
20163
20271
|
for(var _iterator = bufferedCommittedEvents[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
|
|
20164
|
-
var _step_value = _sliced_to_array$
|
|
20272
|
+
var _step_value = _sliced_to_array$b(_step.value, 2), eventRevision = _step_value[0], event = _step_value[1];
|
|
20165
20273
|
if (eventRevision > revision) continue;
|
|
20166
20274
|
operationIds.set(event.operation.operationId, eventRevision);
|
|
20167
20275
|
bufferedCommittedEvents.delete(eventRevision);
|
|
@@ -20776,7 +20884,7 @@ function createWhiteboardRuntime() {
|
|
|
20776
20884
|
_iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
|
|
20777
20885
|
try {
|
|
20778
20886
|
for(_iterator = reconciliation.recoveredOperationIds[Symbol.iterator](); !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
|
|
20779
|
-
_step_value = _sliced_to_array$
|
|
20887
|
+
_step_value = _sliced_to_array$b(_step.value, 2), operationId = _step_value[0], revision = _step_value[1];
|
|
20780
20888
|
recoveredOperationIds.set(operationId, revision);
|
|
20781
20889
|
}
|
|
20782
20890
|
} catch (err) {
|
|
@@ -20879,7 +20987,7 @@ function createWhiteboardRuntime() {
|
|
|
20879
20987
|
_iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
|
|
20880
20988
|
try {
|
|
20881
20989
|
for(_iterator = recovery.recoveredOperationIds[Symbol.iterator](); !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
|
|
20882
|
-
_step_value = _sliced_to_array$
|
|
20990
|
+
_step_value = _sliced_to_array$b(_step.value, 2), operationId = _step_value[0], revision = _step_value[1];
|
|
20883
20991
|
recoveredOperationIds.set(operationId, revision);
|
|
20884
20992
|
}
|
|
20885
20993
|
} catch (err) {
|
|
@@ -21449,16 +21557,16 @@ function sortRecoveryObjects(objects) {
|
|
|
21449
21557
|
});
|
|
21450
21558
|
}
|
|
21451
21559
|
|
|
21452
|
-
function _array_like_to_array$
|
|
21560
|
+
function _array_like_to_array$b(arr, len) {
|
|
21453
21561
|
if (len == null || len > arr.length) len = arr.length;
|
|
21454
21562
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
21455
21563
|
return arr2;
|
|
21456
21564
|
}
|
|
21457
|
-
function _array_with_holes$
|
|
21565
|
+
function _array_with_holes$a(arr) {
|
|
21458
21566
|
if (Array.isArray(arr)) return arr;
|
|
21459
21567
|
}
|
|
21460
21568
|
function _array_without_holes$3(arr) {
|
|
21461
|
-
if (Array.isArray(arr)) return _array_like_to_array$
|
|
21569
|
+
if (Array.isArray(arr)) return _array_like_to_array$b(arr);
|
|
21462
21570
|
}
|
|
21463
21571
|
function asyncGeneratorStep$a(gen, resolve, reject, _next, _throw, key, arg) {
|
|
21464
21572
|
try {
|
|
@@ -21505,7 +21613,7 @@ function _define_property$8(obj, key, value) {
|
|
|
21505
21613
|
function _iterable_to_array$3(iter) {
|
|
21506
21614
|
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
21507
21615
|
}
|
|
21508
|
-
function _iterable_to_array_limit$
|
|
21616
|
+
function _iterable_to_array_limit$a(arr, i) {
|
|
21509
21617
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
21510
21618
|
if (_i == null) return;
|
|
21511
21619
|
var _arr = [];
|
|
@@ -21529,7 +21637,7 @@ function _iterable_to_array_limit$9(arr, i) {
|
|
|
21529
21637
|
}
|
|
21530
21638
|
return _arr;
|
|
21531
21639
|
}
|
|
21532
|
-
function _non_iterable_rest$
|
|
21640
|
+
function _non_iterable_rest$a() {
|
|
21533
21641
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
21534
21642
|
}
|
|
21535
21643
|
function _non_iterable_spread$3() {
|
|
@@ -21569,19 +21677,19 @@ function _object_spread_props$5(target, source) {
|
|
|
21569
21677
|
}
|
|
21570
21678
|
return target;
|
|
21571
21679
|
}
|
|
21572
|
-
function _sliced_to_array$
|
|
21573
|
-
return _array_with_holes$
|
|
21680
|
+
function _sliced_to_array$a(arr, i) {
|
|
21681
|
+
return _array_with_holes$a(arr) || _iterable_to_array_limit$a(arr, i) || _unsupported_iterable_to_array$b(arr, i) || _non_iterable_rest$a();
|
|
21574
21682
|
}
|
|
21575
21683
|
function _to_consumable_array$3(arr) {
|
|
21576
|
-
return _array_without_holes$3(arr) || _iterable_to_array$3(arr) || _unsupported_iterable_to_array$
|
|
21684
|
+
return _array_without_holes$3(arr) || _iterable_to_array$3(arr) || _unsupported_iterable_to_array$b(arr) || _non_iterable_spread$3();
|
|
21577
21685
|
}
|
|
21578
|
-
function _unsupported_iterable_to_array$
|
|
21686
|
+
function _unsupported_iterable_to_array$b(o, minLen) {
|
|
21579
21687
|
if (!o) return;
|
|
21580
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
21688
|
+
if (typeof o === "string") return _array_like_to_array$b(o, minLen);
|
|
21581
21689
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
21582
21690
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
21583
21691
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
21584
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
21692
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$b(o, minLen);
|
|
21585
21693
|
}
|
|
21586
21694
|
function _ts_generator$a(thisArg, body) {
|
|
21587
21695
|
var f, y, t, _ = {
|
|
@@ -21685,20 +21793,20 @@ function _ts_generator$a(thisArg, body) {
|
|
|
21685
21793
|
function WhiteboardProvider(param) {
|
|
21686
21794
|
var controlledAuth = param.auth, children = param.children, _param_createRuntime = param.createRuntime, createRuntime = _param_createRuntime === void 0 ? createWhiteboardRuntime : _param_createRuntime, onDiagnostic = param.onDiagnostic, realtimeEndpoint = param.realtimeEndpoint, recoveryPort = param.recoveryPort, socketFactory = param.socketFactory, controlledShareSessionKey = param.shareSessionKey;
|
|
21687
21795
|
var _boardState_activeShareSessionKey, _ref;
|
|
21688
|
-
var _useState = _sliced_to_array$
|
|
21689
|
-
var _useState1 = _sliced_to_array$
|
|
21690
|
-
var _useState2 = _sliced_to_array$
|
|
21691
|
-
var _useState3 = _sliced_to_array$
|
|
21796
|
+
var _useState = _sliced_to_array$a(useState(hasValidWhiteboardAuth(controlledAuth) ? controlledAuth : undefined), 2), auth = _useState[0], setAuthState = _useState[1];
|
|
21797
|
+
var _useState1 = _sliced_to_array$a(useState(controlledShareSessionKey), 2), shareSessionKey = _useState1[0], setShareSessionKey = _useState1[1];
|
|
21798
|
+
var _useState2 = _sliced_to_array$a(useState(hasValidWhiteboardAuth(controlledAuth) ? 'connecting' : 'standby'), 2), status = _useState2[0], setStatus = _useState2[1];
|
|
21799
|
+
var _useState3 = _sliced_to_array$a(useState({
|
|
21692
21800
|
activeShareSessionKey: controlledShareSessionKey,
|
|
21693
21801
|
confirmedRevision: 0,
|
|
21694
21802
|
headRevision: 0,
|
|
21695
21803
|
pendingOperationCount: 0
|
|
21696
21804
|
}), 2), boardState = _useState3[0], setBoardState = _useState3[1];
|
|
21697
|
-
var _useState4 = _sliced_to_array$
|
|
21698
|
-
var _useState5 = _sliced_to_array$
|
|
21699
|
-
var _useState6 = _sliced_to_array$
|
|
21700
|
-
var _useState7 = _sliced_to_array$
|
|
21701
|
-
var _useState8 = _sliced_to_array$
|
|
21805
|
+
var _useState4 = _sliced_to_array$a(useState('idle'), 2), recoveryStatus = _useState4[0], setRecoveryStatus = _useState4[1];
|
|
21806
|
+
var _useState5 = _sliced_to_array$a(useState(undefined), 2), recovery = _useState5[0], setRecovery = _useState5[1];
|
|
21807
|
+
var _useState6 = _sliced_to_array$a(useState(undefined), 2), committedEvent = _useState6[0], setCommittedEvent = _useState6[1];
|
|
21808
|
+
var _useState7 = _sliced_to_array$a(useState([]), 2), committedEvents = _useState7[0], setCommittedEvents = _useState7[1];
|
|
21809
|
+
var _useState8 = _sliced_to_array$a(useState({
|
|
21702
21810
|
state: 'idle'
|
|
21703
21811
|
}), 2), submitStatus = _useState8[0], setSubmitStatus = _useState8[1];
|
|
21704
21812
|
var authRef = useRef(auth);
|
|
@@ -22080,12 +22188,12 @@ function WhiteboardProvider(param) {
|
|
|
22080
22188
|
});
|
|
22081
22189
|
}
|
|
22082
22190
|
|
|
22083
|
-
function _array_like_to_array$
|
|
22191
|
+
function _array_like_to_array$a(arr, len) {
|
|
22084
22192
|
if (len == null || len > arr.length) len = arr.length;
|
|
22085
22193
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
22086
22194
|
return arr2;
|
|
22087
22195
|
}
|
|
22088
|
-
function _array_with_holes$
|
|
22196
|
+
function _array_with_holes$9(arr) {
|
|
22089
22197
|
if (Array.isArray(arr)) return arr;
|
|
22090
22198
|
}
|
|
22091
22199
|
function _define_property$7(obj, key, value) {
|
|
@@ -22101,7 +22209,7 @@ function _define_property$7(obj, key, value) {
|
|
|
22101
22209
|
}
|
|
22102
22210
|
return obj;
|
|
22103
22211
|
}
|
|
22104
|
-
function _iterable_to_array_limit$
|
|
22212
|
+
function _iterable_to_array_limit$9(arr, i) {
|
|
22105
22213
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
22106
22214
|
if (_i == null) return;
|
|
22107
22215
|
var _arr = [];
|
|
@@ -22125,7 +22233,7 @@ function _iterable_to_array_limit$8(arr, i) {
|
|
|
22125
22233
|
}
|
|
22126
22234
|
return _arr;
|
|
22127
22235
|
}
|
|
22128
|
-
function _non_iterable_rest$
|
|
22236
|
+
function _non_iterable_rest$9() {
|
|
22129
22237
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
22130
22238
|
}
|
|
22131
22239
|
function _object_spread$5(target) {
|
|
@@ -22162,16 +22270,16 @@ function _object_spread_props$4(target, source) {
|
|
|
22162
22270
|
}
|
|
22163
22271
|
return target;
|
|
22164
22272
|
}
|
|
22165
|
-
function _sliced_to_array$
|
|
22166
|
-
return _array_with_holes$
|
|
22273
|
+
function _sliced_to_array$9(arr, i) {
|
|
22274
|
+
return _array_with_holes$9(arr) || _iterable_to_array_limit$9(arr, i) || _unsupported_iterable_to_array$a(arr, i) || _non_iterable_rest$9();
|
|
22167
22275
|
}
|
|
22168
|
-
function _unsupported_iterable_to_array$
|
|
22276
|
+
function _unsupported_iterable_to_array$a(o, minLen) {
|
|
22169
22277
|
if (!o) return;
|
|
22170
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
22278
|
+
if (typeof o === "string") return _array_like_to_array$a(o, minLen);
|
|
22171
22279
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
22172
22280
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
22173
22281
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
22174
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
22282
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$a(o, minLen);
|
|
22175
22283
|
}
|
|
22176
22284
|
var cameraVideoClassName = 'h-full w-full object-cover -scale-x-100';
|
|
22177
22285
|
var getTrackSource = function(trackRef) {
|
|
@@ -22238,7 +22346,7 @@ function useScreenShareAspectRatio(trackRef) {
|
|
|
22238
22346
|
var _trackRef_publication;
|
|
22239
22347
|
var trackSid = trackRef === null || trackRef === void 0 ? void 0 : (_trackRef_publication = trackRef.publication) === null || _trackRef_publication === void 0 ? void 0 : _trackRef_publication.trackSid;
|
|
22240
22348
|
var fallbackAspectRatio = getAspectRatio(trackRef);
|
|
22241
|
-
var _useState = _sliced_to_array$
|
|
22349
|
+
var _useState = _sliced_to_array$9(useState(), 2), intrinsicRatio = _useState[0], setIntrinsicRatio = _useState[1];
|
|
22242
22350
|
var aspectRatio = intrinsicRatio && (trackSid !== undefined ? intrinsicRatio.trackSid === trackSid : intrinsicRatio.trackSid === undefined && intrinsicRatio.trackRef === trackRef) ? intrinsicRatio.aspectRatio : fallbackAspectRatio;
|
|
22243
22351
|
var updateFromVideo = useCallback(function(event) {
|
|
22244
22352
|
var _event_currentTarget = event.currentTarget, videoWidth = _event_currentTarget.videoWidth, videoHeight = _event_currentTarget.videoHeight;
|
|
@@ -22262,12 +22370,12 @@ function useScreenShareAspectRatio(trackRef) {
|
|
|
22262
22370
|
function ScreenShareFrame(param) {
|
|
22263
22371
|
var trackRef = param.trackRef, aspectRatio = param.aspectRatio, onLoadedMetadata = param.onLoadedMetadata, onResize = param.onResize, whiteboard = param.whiteboard;
|
|
22264
22372
|
var frameRef = useRef(null);
|
|
22265
|
-
var _useState = _sliced_to_array$
|
|
22373
|
+
var _useState = _sliced_to_array$9(useState(), 2), frameSize = _useState[0], setFrameSize = _useState[1];
|
|
22266
22374
|
useLayoutEffect(function() {
|
|
22267
22375
|
var _frameRef_current;
|
|
22268
22376
|
var container = (_frameRef_current = frameRef.current) === null || _frameRef_current === void 0 ? void 0 : _frameRef_current.parentElement;
|
|
22269
22377
|
if (!container) return;
|
|
22270
|
-
var _aspectRatio_split_map = _sliced_to_array$
|
|
22378
|
+
var _aspectRatio_split_map = _sliced_to_array$9(aspectRatio.split('/').map(Number), 2), sourceWidth = _aspectRatio_split_map[0], sourceHeight = _aspectRatio_split_map[1];
|
|
22271
22379
|
var ratio = sourceWidth / sourceHeight;
|
|
22272
22380
|
var updateSize = function() {
|
|
22273
22381
|
var clientWidth = container.clientWidth, clientHeight = container.clientHeight;
|
|
@@ -22320,7 +22428,7 @@ function ScreenShareFrame(param) {
|
|
|
22320
22428
|
}
|
|
22321
22429
|
function RoomPlatformPrivateRoomStage(param) {
|
|
22322
22430
|
var callerExternalActorId = param.callerExternalActorId, studentExternalActorId = param.studentExternalActorId, activeScreenShareExternalActorId = param.activeScreenShareExternalActorId, controlBar = param.controlBar, whiteboard = param.whiteboard;
|
|
22323
|
-
var _useState = _sliced_to_array$
|
|
22431
|
+
var _useState = _sliced_to_array$9(useState(true), 2), sidebarOpen = _useState[0], setSidebarOpen = _useState[1];
|
|
22324
22432
|
var previousScreenShareExternalActorIdRef = useRef(activeScreenShareExternalActorId);
|
|
22325
22433
|
var previousShareSessionKeyRef = useRef(undefined);
|
|
22326
22434
|
var whiteboardContext = useContext(WhiteboardContext);
|
|
@@ -23042,13 +23150,13 @@ var WebSocketRealtimeTransport = /*#__PURE__*/ function() {
|
|
|
23042
23150
|
return WebSocketRealtimeTransport;
|
|
23043
23151
|
}();
|
|
23044
23152
|
|
|
23045
|
-
function _array_like_to_array$
|
|
23153
|
+
function _array_like_to_array$9(arr, len) {
|
|
23046
23154
|
if (len == null || len > arr.length) len = arr.length;
|
|
23047
23155
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
23048
23156
|
return arr2;
|
|
23049
23157
|
}
|
|
23050
23158
|
function _array_without_holes$2(arr) {
|
|
23051
|
-
if (Array.isArray(arr)) return _array_like_to_array$
|
|
23159
|
+
if (Array.isArray(arr)) return _array_like_to_array$9(arr);
|
|
23052
23160
|
}
|
|
23053
23161
|
function _class_call_check$1(instance, Constructor) {
|
|
23054
23162
|
if (!(instance instanceof Constructor)) {
|
|
@@ -23088,15 +23196,15 @@ function _non_iterable_spread$2() {
|
|
|
23088
23196
|
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
23089
23197
|
}
|
|
23090
23198
|
function _to_consumable_array$2(arr) {
|
|
23091
|
-
return _array_without_holes$2(arr) || _iterable_to_array$2(arr) || _unsupported_iterable_to_array$
|
|
23199
|
+
return _array_without_holes$2(arr) || _iterable_to_array$2(arr) || _unsupported_iterable_to_array$9(arr) || _non_iterable_spread$2();
|
|
23092
23200
|
}
|
|
23093
|
-
function _unsupported_iterable_to_array$
|
|
23201
|
+
function _unsupported_iterable_to_array$9(o, minLen) {
|
|
23094
23202
|
if (!o) return;
|
|
23095
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
23203
|
+
if (typeof o === "string") return _array_like_to_array$9(o, minLen);
|
|
23096
23204
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
23097
23205
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
23098
23206
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
23099
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
23207
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$9(o, minLen);
|
|
23100
23208
|
}
|
|
23101
23209
|
var ChatClientState = /*#__PURE__*/ function() {
|
|
23102
23210
|
function ChatClientState() {
|
|
@@ -24385,12 +24493,12 @@ function ForwardMessageDialog(param) {
|
|
|
24385
24493
|
});
|
|
24386
24494
|
}
|
|
24387
24495
|
|
|
24388
|
-
function _array_like_to_array$
|
|
24496
|
+
function _array_like_to_array$8(arr, len) {
|
|
24389
24497
|
if (len == null || len > arr.length) len = arr.length;
|
|
24390
24498
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
24391
24499
|
return arr2;
|
|
24392
24500
|
}
|
|
24393
|
-
function _array_with_holes$
|
|
24501
|
+
function _array_with_holes$8(arr) {
|
|
24394
24502
|
if (Array.isArray(arr)) return arr;
|
|
24395
24503
|
}
|
|
24396
24504
|
function asyncGeneratorStep$5(gen, resolve, reject, _next, _throw, key, arg) {
|
|
@@ -24422,7 +24530,7 @@ function _async_to_generator$5(fn) {
|
|
|
24422
24530
|
});
|
|
24423
24531
|
};
|
|
24424
24532
|
}
|
|
24425
|
-
function _iterable_to_array_limit$
|
|
24533
|
+
function _iterable_to_array_limit$8(arr, i) {
|
|
24426
24534
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
24427
24535
|
if (_i == null) return;
|
|
24428
24536
|
var _arr = [];
|
|
@@ -24446,19 +24554,19 @@ function _iterable_to_array_limit$7(arr, i) {
|
|
|
24446
24554
|
}
|
|
24447
24555
|
return _arr;
|
|
24448
24556
|
}
|
|
24449
|
-
function _non_iterable_rest$
|
|
24557
|
+
function _non_iterable_rest$8() {
|
|
24450
24558
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
24451
24559
|
}
|
|
24452
|
-
function _sliced_to_array$
|
|
24453
|
-
return _array_with_holes$
|
|
24560
|
+
function _sliced_to_array$8(arr, i) {
|
|
24561
|
+
return _array_with_holes$8(arr) || _iterable_to_array_limit$8(arr, i) || _unsupported_iterable_to_array$8(arr, i) || _non_iterable_rest$8();
|
|
24454
24562
|
}
|
|
24455
|
-
function _unsupported_iterable_to_array$
|
|
24563
|
+
function _unsupported_iterable_to_array$8(o, minLen) {
|
|
24456
24564
|
if (!o) return;
|
|
24457
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
24565
|
+
if (typeof o === "string") return _array_like_to_array$8(o, minLen);
|
|
24458
24566
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
24459
24567
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
24460
24568
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
24461
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
24569
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$8(o, minLen);
|
|
24462
24570
|
}
|
|
24463
24571
|
function _ts_generator$5(thisArg, body) {
|
|
24464
24572
|
var f, y, t, _ = {
|
|
@@ -24561,7 +24669,7 @@ function _ts_generator$5(thisArg, body) {
|
|
|
24561
24669
|
}
|
|
24562
24670
|
function MessageComposer(param) {
|
|
24563
24671
|
var canSend = param.canSend, className = param.className, onSend = param.onSend;
|
|
24564
|
-
var _useState = _sliced_to_array$
|
|
24672
|
+
var _useState = _sliced_to_array$8(useState(''), 2), text = _useState[0], setText = _useState[1];
|
|
24565
24673
|
if (!canSend) {
|
|
24566
24674
|
return /*#__PURE__*/ jsx("div", {
|
|
24567
24675
|
className: cx('navi-chat__readonly', className),
|
|
@@ -24677,16 +24785,16 @@ function MessageComposer(param) {
|
|
|
24677
24785
|
});
|
|
24678
24786
|
}
|
|
24679
24787
|
|
|
24680
|
-
function _array_like_to_array$
|
|
24788
|
+
function _array_like_to_array$7(arr, len) {
|
|
24681
24789
|
if (len == null || len > arr.length) len = arr.length;
|
|
24682
24790
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
24683
24791
|
return arr2;
|
|
24684
24792
|
}
|
|
24685
|
-
function _array_with_holes$
|
|
24793
|
+
function _array_with_holes$7(arr) {
|
|
24686
24794
|
if (Array.isArray(arr)) return arr;
|
|
24687
24795
|
}
|
|
24688
24796
|
function _array_without_holes$1(arr) {
|
|
24689
|
-
if (Array.isArray(arr)) return _array_like_to_array$
|
|
24797
|
+
if (Array.isArray(arr)) return _array_like_to_array$7(arr);
|
|
24690
24798
|
}
|
|
24691
24799
|
function asyncGeneratorStep$4(gen, resolve, reject, _next, _throw, key, arg) {
|
|
24692
24800
|
try {
|
|
@@ -24727,7 +24835,7 @@ function _instanceof(left, right) {
|
|
|
24727
24835
|
function _iterable_to_array$1(iter) {
|
|
24728
24836
|
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
24729
24837
|
}
|
|
24730
|
-
function _iterable_to_array_limit$
|
|
24838
|
+
function _iterable_to_array_limit$7(arr, i) {
|
|
24731
24839
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
24732
24840
|
if (_i == null) return;
|
|
24733
24841
|
var _arr = [];
|
|
@@ -24751,25 +24859,25 @@ function _iterable_to_array_limit$6(arr, i) {
|
|
|
24751
24859
|
}
|
|
24752
24860
|
return _arr;
|
|
24753
24861
|
}
|
|
24754
|
-
function _non_iterable_rest$
|
|
24862
|
+
function _non_iterable_rest$7() {
|
|
24755
24863
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
24756
24864
|
}
|
|
24757
24865
|
function _non_iterable_spread$1() {
|
|
24758
24866
|
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
24759
24867
|
}
|
|
24760
|
-
function _sliced_to_array$
|
|
24761
|
-
return _array_with_holes$
|
|
24868
|
+
function _sliced_to_array$7(arr, i) {
|
|
24869
|
+
return _array_with_holes$7(arr) || _iterable_to_array_limit$7(arr, i) || _unsupported_iterable_to_array$7(arr, i) || _non_iterable_rest$7();
|
|
24762
24870
|
}
|
|
24763
24871
|
function _to_consumable_array$1(arr) {
|
|
24764
|
-
return _array_without_holes$1(arr) || _iterable_to_array$1(arr) || _unsupported_iterable_to_array$
|
|
24872
|
+
return _array_without_holes$1(arr) || _iterable_to_array$1(arr) || _unsupported_iterable_to_array$7(arr) || _non_iterable_spread$1();
|
|
24765
24873
|
}
|
|
24766
|
-
function _unsupported_iterable_to_array$
|
|
24874
|
+
function _unsupported_iterable_to_array$7(o, minLen) {
|
|
24767
24875
|
if (!o) return;
|
|
24768
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
24876
|
+
if (typeof o === "string") return _array_like_to_array$7(o, minLen);
|
|
24769
24877
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
24770
24878
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
24771
24879
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
24772
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
24880
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$7(o, minLen);
|
|
24773
24881
|
}
|
|
24774
24882
|
function _ts_generator$4(thisArg, body) {
|
|
24775
24883
|
var f, y, t, _ = {
|
|
@@ -24878,15 +24986,15 @@ function MessageList(param) {
|
|
|
24878
24986
|
var restoreScrollSnapshotRef = useRef(undefined);
|
|
24879
24987
|
var previousMessageCountRef = useRef(messages.length);
|
|
24880
24988
|
var previousMessagesRef = useRef(messages);
|
|
24881
|
-
var _useState = _sliced_to_array$
|
|
24882
|
-
var _useState1 = _sliced_to_array$
|
|
24883
|
-
var _useState2 = _sliced_to_array$
|
|
24989
|
+
var _useState = _sliced_to_array$7(useState(''), 2), draftText = _useState[0], setDraftText = _useState[1];
|
|
24990
|
+
var _useState1 = _sliced_to_array$7(useState(), 2), editingMessageId = _useState1[0], setEditingMessageId = _useState1[1];
|
|
24991
|
+
var _useState2 = _sliced_to_array$7(useState(), 2), openMenuMessageId = _useState2[0], setOpenMenuMessageId = _useState2[1];
|
|
24884
24992
|
var openMenuRef = useRef(null);
|
|
24885
|
-
var _useState3 = _sliced_to_array$
|
|
24993
|
+
var _useState3 = _sliced_to_array$7(useState(function() {
|
|
24886
24994
|
return now().getTime();
|
|
24887
24995
|
}), 2), currentTimeMs = _useState3[0], setCurrentTimeMs = _useState3[1];
|
|
24888
|
-
var _useState4 = _sliced_to_array$
|
|
24889
|
-
var _useState5 = _sliced_to_array$
|
|
24996
|
+
var _useState4 = _sliced_to_array$7(useState(true), 2), isAtLatest = _useState4[0], setIsAtLatest = _useState4[1];
|
|
24997
|
+
var _useState5 = _sliced_to_array$7(useState(false), 2), hasNewMessages = _useState5[0], setHasNewMessages = _useState5[1];
|
|
24890
24998
|
var orderedMessages = useMemo(function() {
|
|
24891
24999
|
return _to_consumable_array$1(messages).sort(compareMessagesByCreatedAt);
|
|
24892
25000
|
}, [
|
|
@@ -25309,12 +25417,12 @@ var formatTime = function(value) {
|
|
|
25309
25417
|
}).format(new Date(value));
|
|
25310
25418
|
};
|
|
25311
25419
|
|
|
25312
|
-
function _array_like_to_array$
|
|
25420
|
+
function _array_like_to_array$6(arr, len) {
|
|
25313
25421
|
if (len == null || len > arr.length) len = arr.length;
|
|
25314
25422
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
25315
25423
|
return arr2;
|
|
25316
25424
|
}
|
|
25317
|
-
function _array_with_holes$
|
|
25425
|
+
function _array_with_holes$6(arr) {
|
|
25318
25426
|
if (Array.isArray(arr)) return arr;
|
|
25319
25427
|
}
|
|
25320
25428
|
function asyncGeneratorStep$3(gen, resolve, reject, _next, _throw, key, arg) {
|
|
@@ -25346,7 +25454,7 @@ function _async_to_generator$3(fn) {
|
|
|
25346
25454
|
});
|
|
25347
25455
|
};
|
|
25348
25456
|
}
|
|
25349
|
-
function _iterable_to_array_limit$
|
|
25457
|
+
function _iterable_to_array_limit$6(arr, i) {
|
|
25350
25458
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
25351
25459
|
if (_i == null) return;
|
|
25352
25460
|
var _arr = [];
|
|
@@ -25370,19 +25478,19 @@ function _iterable_to_array_limit$5(arr, i) {
|
|
|
25370
25478
|
}
|
|
25371
25479
|
return _arr;
|
|
25372
25480
|
}
|
|
25373
|
-
function _non_iterable_rest$
|
|
25481
|
+
function _non_iterable_rest$6() {
|
|
25374
25482
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
25375
25483
|
}
|
|
25376
|
-
function _sliced_to_array$
|
|
25377
|
-
return _array_with_holes$
|
|
25484
|
+
function _sliced_to_array$6(arr, i) {
|
|
25485
|
+
return _array_with_holes$6(arr) || _iterable_to_array_limit$6(arr, i) || _unsupported_iterable_to_array$6(arr, i) || _non_iterable_rest$6();
|
|
25378
25486
|
}
|
|
25379
|
-
function _unsupported_iterable_to_array$
|
|
25487
|
+
function _unsupported_iterable_to_array$6(o, minLen) {
|
|
25380
25488
|
if (!o) return;
|
|
25381
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
25489
|
+
if (typeof o === "string") return _array_like_to_array$6(o, minLen);
|
|
25382
25490
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
25383
25491
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
25384
25492
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
25385
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
25493
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$6(o, minLen);
|
|
25386
25494
|
}
|
|
25387
25495
|
function _ts_generator$3(thisArg, body) {
|
|
25388
25496
|
var f, y, t, _ = {
|
|
@@ -25487,7 +25595,7 @@ function ChatPanel(param) {
|
|
|
25487
25595
|
var className = param.className;
|
|
25488
25596
|
var _messagesByRoom_activeRoom_roomId, _ref, _ref1, _ref2;
|
|
25489
25597
|
var _useChatContext = useChatContext(), activeRoomId = _useChatContext.activeRoomId, classNames = _useChatContext.classNames, client = _useChatContext.client, currentSubject = _useChatContext.currentSubject, hasMoreByRoom = _useChatContext.hasMoreByRoom, isLoadingOlderByRoom = _useChatContext.isLoadingOlderByRoom, loadOlderMessages = _useChatContext.loadOlderMessages, messagesByRoom = _useChatContext.messagesByRoom, messageActionWindowMs = _useChatContext.messageActionWindowMs, now = _useChatContext.now, onlineCountsByRoom = _useChatContext.onlineCountsByRoom, rooms = _useChatContext.rooms, sendMessage = _useChatContext.sendMessage, deleteMessage = _useChatContext.deleteMessage, editMessage = _useChatContext.editMessage, setActiveRoomId = _useChatContext.setActiveRoomId, setRoomAtLatest = _useChatContext.setRoomAtLatest, status = _useChatContext.status, unreadCountsByRoom = _useChatContext.unreadCountsByRoom;
|
|
25490
|
-
var _useState = _sliced_to_array$
|
|
25598
|
+
var _useState = _sliced_to_array$6(useState(), 2), forwardingMessage = _useState[0], setForwardingMessage = _useState[1];
|
|
25491
25599
|
var activeRoom = findActiveRoom(rooms, activeRoomId);
|
|
25492
25600
|
var canRead = hasRoomPermission(activeRoom, 'read');
|
|
25493
25601
|
var canSend = hasRoomPermission(activeRoom, 'send');
|
|
@@ -25630,16 +25738,16 @@ var getRoomDisplayRole = function(room) {
|
|
|
25630
25738
|
return hasRoomPermission(room, 'forward') ? 'Quản trị' : 'Thành viên';
|
|
25631
25739
|
};
|
|
25632
25740
|
|
|
25633
|
-
function _array_like_to_array$
|
|
25741
|
+
function _array_like_to_array$5(arr, len) {
|
|
25634
25742
|
if (len == null || len > arr.length) len = arr.length;
|
|
25635
25743
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
25636
25744
|
return arr2;
|
|
25637
25745
|
}
|
|
25638
|
-
function _array_with_holes$
|
|
25746
|
+
function _array_with_holes$5(arr) {
|
|
25639
25747
|
if (Array.isArray(arr)) return arr;
|
|
25640
25748
|
}
|
|
25641
25749
|
function _array_without_holes(arr) {
|
|
25642
|
-
if (Array.isArray(arr)) return _array_like_to_array$
|
|
25750
|
+
if (Array.isArray(arr)) return _array_like_to_array$5(arr);
|
|
25643
25751
|
}
|
|
25644
25752
|
function asyncGeneratorStep$2(gen, resolve, reject, _next, _throw, key, arg) {
|
|
25645
25753
|
try {
|
|
@@ -25686,7 +25794,7 @@ function _define_property$1(obj, key, value) {
|
|
|
25686
25794
|
function _iterable_to_array(iter) {
|
|
25687
25795
|
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
25688
25796
|
}
|
|
25689
|
-
function _iterable_to_array_limit$
|
|
25797
|
+
function _iterable_to_array_limit$5(arr, i) {
|
|
25690
25798
|
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
25691
25799
|
if (_i == null) return;
|
|
25692
25800
|
var _arr = [];
|
|
@@ -25710,7 +25818,7 @@ function _iterable_to_array_limit$4(arr, i) {
|
|
|
25710
25818
|
}
|
|
25711
25819
|
return _arr;
|
|
25712
25820
|
}
|
|
25713
|
-
function _non_iterable_rest$
|
|
25821
|
+
function _non_iterable_rest$5() {
|
|
25714
25822
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
25715
25823
|
}
|
|
25716
25824
|
function _non_iterable_spread() {
|
|
@@ -25750,23 +25858,23 @@ function _object_spread_props$1(target, source) {
|
|
|
25750
25858
|
}
|
|
25751
25859
|
return target;
|
|
25752
25860
|
}
|
|
25753
|
-
function _sliced_to_array$
|
|
25754
|
-
return _array_with_holes$
|
|
25861
|
+
function _sliced_to_array$5(arr, i) {
|
|
25862
|
+
return _array_with_holes$5(arr) || _iterable_to_array_limit$5(arr, i) || _unsupported_iterable_to_array$5(arr, i) || _non_iterable_rest$5();
|
|
25755
25863
|
}
|
|
25756
25864
|
function _to_consumable_array(arr) {
|
|
25757
|
-
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array$
|
|
25865
|
+
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array$5(arr) || _non_iterable_spread();
|
|
25758
25866
|
}
|
|
25759
25867
|
function _type_of(obj) {
|
|
25760
25868
|
"@swc/helpers - typeof";
|
|
25761
25869
|
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
25762
25870
|
}
|
|
25763
|
-
function _unsupported_iterable_to_array$
|
|
25871
|
+
function _unsupported_iterable_to_array$5(o, minLen) {
|
|
25764
25872
|
if (!o) return;
|
|
25765
|
-
if (typeof o === "string") return _array_like_to_array$
|
|
25873
|
+
if (typeof o === "string") return _array_like_to_array$5(o, minLen);
|
|
25766
25874
|
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
25767
25875
|
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
25768
25876
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
25769
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$
|
|
25877
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$5(o, minLen);
|
|
25770
25878
|
}
|
|
25771
25879
|
function _ts_generator$2(thisArg, body) {
|
|
25772
25880
|
var f, y, t, _ = {
|
|
@@ -25874,15 +25982,15 @@ function ChatProvider(param) {
|
|
|
25874
25982
|
return new Date();
|
|
25875
25983
|
} : _param_now, onError = param.onError, refreshToken = param.refreshToken, refreshTokenExpiresAt = param.refreshTokenExpiresAt, realtimeEndpoint = param.realtimeEndpoint, rooms = param.rooms, token = param.token, tokenExpiresAt = param.tokenExpiresAt, tokens = param.tokens;
|
|
25876
25984
|
var _rooms_;
|
|
25877
|
-
var _useState = _sliced_to_array$
|
|
25878
|
-
var _useState1 = _sliced_to_array$
|
|
25879
|
-
var _useState2 = _sliced_to_array$
|
|
25880
|
-
var _useState3 = _sliced_to_array$
|
|
25881
|
-
var _useState4 = _sliced_to_array$
|
|
25882
|
-
var _useState5 = _sliced_to_array$
|
|
25883
|
-
var _useState6 = _sliced_to_array$
|
|
25884
|
-
var _useState7 = _sliced_to_array$
|
|
25885
|
-
var _useState8 = _sliced_to_array$
|
|
25985
|
+
var _useState = _sliced_to_array$5(useState(currentRoomId !== null && currentRoomId !== void 0 ? currentRoomId : (_rooms_ = rooms[0]) === null || _rooms_ === void 0 ? void 0 : _rooms_.roomId), 2), activeRoomId = _useState[0], setActiveRoomId = _useState[1];
|
|
25986
|
+
var _useState1 = _sliced_to_array$5(useState({}), 2), hasMoreByRoom = _useState1[0], setHasMoreByRoom = _useState1[1];
|
|
25987
|
+
var _useState2 = _sliced_to_array$5(useState({}), 2), historyCursorsByRoom = _useState2[0], setHistoryCursorsByRoom = _useState2[1];
|
|
25988
|
+
var _useState3 = _sliced_to_array$5(useState({}), 2), isLoadingOlderByRoom = _useState3[0], setIsLoadingOlderByRoom = _useState3[1];
|
|
25989
|
+
var _useState4 = _sliced_to_array$5(useState(initialMessages), 2), messagesByRoom = _useState4[0], setMessagesByRoom = _useState4[1];
|
|
25990
|
+
var _useState5 = _sliced_to_array$5(useState({}), 2), onlineCountsByRoom = _useState5[0], setOnlineCountsByRoom = _useState5[1];
|
|
25991
|
+
var _useState6 = _sliced_to_array$5(useState({}), 2), roomLatestStateByRoom = _useState6[0], setRoomLatestStateByRoom = _useState6[1];
|
|
25992
|
+
var _useState7 = _sliced_to_array$5(useState('connecting'), 2), status = _useState7[0], setStatus = _useState7[1];
|
|
25993
|
+
var _useState8 = _sliced_to_array$5(useState({}), 2), unreadCountsByRoom = _useState8[0], setUnreadCountsByRoom = _useState8[1];
|
|
25886
25994
|
var currentSubject = useMemo(function() {
|
|
25887
25995
|
return subjectFromToken(token);
|
|
25888
25996
|
}, [
|
|
@@ -26309,7 +26417,7 @@ var isChatRoomPresenceDto = function(event) {
|
|
|
26309
26417
|
return Boolean(event && (typeof event === "undefined" ? "undefined" : _type_of(event)) === 'object' && 'roomId' in event && typeof event.roomId === 'string' && 'onlineCount' in event && typeof event.onlineCount === 'number');
|
|
26310
26418
|
};
|
|
26311
26419
|
var subjectFromToken = function(token) {
|
|
26312
|
-
var _token_split = _sliced_to_array$
|
|
26420
|
+
var _token_split = _sliced_to_array$5(token.split('.'), 2), payload = _token_split[1];
|
|
26313
26421
|
if (!payload) return undefined;
|
|
26314
26422
|
try {
|
|
26315
26423
|
var normalized = payload.replace(/-/g, '+').replace(/_/g, '/');
|
|
@@ -26321,6 +26429,96 @@ var subjectFromToken = function(token) {
|
|
|
26321
26429
|
}
|
|
26322
26430
|
};
|
|
26323
26431
|
|
|
26432
|
+
var roomPlatformGeneratedStyles = "/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */\n@layer properties;\n.room-platform-room {\n --color-red-50: oklch(97.1% 0.013 17.38);\n --color-red-100: oklch(93.6% 0.032 17.717);\n --color-red-300: oklch(80.8% 0.114 19.571);\n --color-red-500: oklch(63.7% 0.237 25.331);\n --color-red-600: oklch(57.7% 0.245 27.325);\n --color-amber-50: oklch(98.7% 0.022 95.277);\n --color-amber-200: oklch(92.4% 0.12 95.746);\n --color-amber-700: oklch(55.5% 0.163 48.998);\n --color-amber-950: oklch(27.9% 0.077 45.635);\n --color-emerald-50: oklch(97.9% 0.021 166.113);\n --color-emerald-200: oklch(90.5% 0.093 164.15);\n --color-emerald-400: oklch(76.5% 0.177 163.223);\n --color-emerald-950: oklch(26.2% 0.051 172.552);\n --color-sky-50: oklch(97.7% 0.013 236.62);\n --color-sky-200: oklch(90.1% 0.058 230.902);\n --color-sky-950: oklch(29.3% 0.066 243.157);\n --color-slate-50: oklch(98.4% 0.003 247.858);\n --color-slate-100: oklch(96.8% 0.007 247.896);\n --color-slate-200: oklch(92.9% 0.013 255.508);\n --color-slate-300: oklch(86.9% 0.022 252.894);\n --color-slate-400: oklch(70.4% 0.04 256.788);\n --color-slate-500: oklch(55.4% 0.046 257.417);\n --color-slate-700: oklch(37.2% 0.044 257.287);\n --color-slate-900: oklch(20.8% 0.042 265.755);\n --color-slate-950: oklch(12.9% 0.042 264.695);\n --color-black: #000;\n --color-white: #fff;\n --spacing: 0.25rem;\n --container-xs: 20rem;\n --container-sm: 24rem;\n --container-2xl: 42rem;\n --text-xs: 0.75rem;\n --text-xs--line-height: calc(1 / 0.75);\n --text-sm: 0.875rem;\n --text-sm--line-height: calc(1.25 / 0.875);\n --text-base: 1rem;\n --text-base--line-height: calc(1.5 / 1);\n --font-weight-medium: 500;\n --font-weight-semibold: 600;\n --font-weight-bold: 700;\n --radius-md: 0.375rem;\n --radius-lg: 0.5rem;\n --radius-xl: 0.75rem;\n --radius-2xl: 1rem;\n --radius-4xl: 2rem;\n --drop-shadow-sm: 0 1px 2px rgb(0 0 0 / 0.15);\n --ease-out: cubic-bezier(0, 0, 0.2, 1);\n --animate-spin: spin 1s linear infinite;\n --blur-xs: 4px;\n --aspect-video: 16 / 9;\n --default-transition-duration: 150ms;\n --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n --color-background: #ffffff;\n --color-foreground: oklch(0.145 0 0);\n --color-popover: #ffffff;\n --color-popover-foreground: oklch(0.145 0 0);\n --color-primary: #242f62;\n --color-primary-foreground: #ffffff;\n --color-secondary: #eb6619;\n --color-secondary-foreground: #ffffff;\n --color-muted: oklch(0.97 0 0);\n --color-muted-foreground: oklch(0.556 0 0);\n --color-accent: oklch(0.97 0 0);\n --color-accent-foreground: oklch(0.205 0 0);\n --color-destructive: oklch(0.577 0.245 27.325);\n --color-border: oklch(0.922 0 0);\n --color-input: oklch(0.922 0 0);\n --color-ring: #9dc2f3;\n --color-liveclass-orange: #eb6619;\n}\n@property --tw-animation-delay {\n syntax: \"*\";\n inherits: false;\n initial-value: 0s;\n}\n@property --tw-animation-direction {\n syntax: \"*\";\n inherits: false;\n initial-value: normal;\n}\n@property --tw-animation-duration {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-animation-fill-mode {\n syntax: \"*\";\n inherits: false;\n initial-value: none;\n}\n@property --tw-animation-iteration-count {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-enter-blur {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-enter-opacity {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-enter-rotate {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-enter-scale {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-enter-translate-x {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-enter-translate-y {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-exit-blur {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-exit-opacity {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-exit-rotate {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-exit-scale {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-exit-translate-x {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-exit-translate-y {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n.room-platform-room .pointer-events-none {\n pointer-events: none;\n}\n.room-platform-room .visible {\n visibility: visible;\n}\n.room-platform-room .sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border-width: 0;\n}\n.room-platform-room .absolute {\n position: absolute;\n}\n.room-platform-room .fixed {\n position: fixed;\n}\n.room-platform-room .relative {\n position: relative;\n}\n.room-platform-room .static {\n position: static;\n}\n.room-platform-room .inset-0 {\n inset: calc(var(--spacing) * 0);\n}\n.room-platform-room .inset-x-0 {\n inset-inline: calc(var(--spacing) * 0);\n}\n.room-platform-room .inset-x-3 {\n inset-inline: calc(var(--spacing) * 3);\n}\n.room-platform-room .start {\n inset-inline-start: var(--spacing);\n}\n.room-platform-room .end {\n inset-inline-end: var(--spacing);\n}\n.room-platform-room .top-1\\/2 {\n top: calc(1 / 2 * 100%);\n}\n.room-platform-room .top-2 {\n top: calc(var(--spacing) * 2);\n}\n.room-platform-room .top-3 {\n top: calc(var(--spacing) * 3);\n}\n.room-platform-room .top-4 {\n top: calc(var(--spacing) * 4);\n}\n.room-platform-room .top-7 {\n top: calc(var(--spacing) * 7);\n}\n.room-platform-room .right-2 {\n right: calc(var(--spacing) * 2);\n}\n.room-platform-room .right-4 {\n right: calc(var(--spacing) * 4);\n}\n.room-platform-room .right-7 {\n right: calc(var(--spacing) * 7);\n}\n.room-platform-room .bottom-0 {\n bottom: calc(var(--spacing) * 0);\n}\n.room-platform-room .bottom-1 {\n bottom: calc(var(--spacing) * 1);\n}\n.room-platform-room .bottom-2 {\n bottom: calc(var(--spacing) * 2);\n}\n.room-platform-room .bottom-3 {\n bottom: calc(var(--spacing) * 3);\n}\n.room-platform-room .bottom-4 {\n bottom: calc(var(--spacing) * 4);\n}\n.room-platform-room .left-0 {\n left: calc(var(--spacing) * 0);\n}\n.room-platform-room .left-1\\/2 {\n left: calc(1 / 2 * 100%);\n}\n.room-platform-room .left-2 {\n left: calc(var(--spacing) * 2);\n}\n.room-platform-room .left-3 {\n left: calc(var(--spacing) * 3);\n}\n.room-platform-room .left-4 {\n left: calc(var(--spacing) * 4);\n}\n.room-platform-room .isolate {\n isolation: isolate;\n}\n.room-platform-room .z-10 {\n z-index: 10;\n}\n.room-platform-room .z-20 {\n z-index: 20;\n}\n.room-platform-room .z-30 {\n z-index: 30;\n}\n.room-platform-room .z-40 {\n z-index: 40;\n}\n.room-platform-room .z-50 {\n z-index: 50;\n}\n.room-platform-room .z-\\[70\\] {\n z-index: 70;\n}\n.room-platform-room .container {\n width: 100%;\n @media (width >= 40rem) {\n max-width: 40rem;\n }\n @media (width >= 48rem) {\n max-width: 48rem;\n }\n @media (width >= 64rem) {\n max-width: 64rem;\n }\n @media (width >= 80rem) {\n max-width: 80rem;\n }\n @media (width >= 96rem) {\n max-width: 96rem;\n }\n}\n.room-platform-room .m-0 {\n margin: calc(var(--spacing) * 0);\n}\n.room-platform-room .m-auto {\n margin: auto;\n}\n.room-platform-room .-mx-1 {\n margin-inline: calc(var(--spacing) * -1);\n}\n.room-platform-room .-mx-4 {\n margin-inline: calc(var(--spacing) * -4);\n}\n.room-platform-room .mx-auto {\n margin-inline: auto;\n}\n.room-platform-room .my-1 {\n margin-block: calc(var(--spacing) * 1);\n}\n.room-platform-room .mt-3 {\n margin-top: calc(var(--spacing) * 3);\n}\n.room-platform-room .-mb-4 {\n margin-bottom: calc(var(--spacing) * -4);\n}\n.room-platform-room .mb-2 {\n margin-bottom: calc(var(--spacing) * 2);\n}\n.room-platform-room .mb-3 {\n margin-bottom: calc(var(--spacing) * 3);\n}\n.room-platform-room .flex {\n display: flex;\n}\n.room-platform-room .grid {\n display: grid;\n}\n.room-platform-room .hidden {\n display: none;\n}\n.room-platform-room .inline {\n display: inline;\n}\n.room-platform-room .inline-flex {\n display: inline-flex;\n}\n.room-platform-room .inline-grid {\n display: inline-grid;\n}\n.room-platform-room .aspect-video {\n aspect-ratio: var(--aspect-video);\n}\n.room-platform-room .size-2\\.5 {\n width: calc(var(--spacing) * 2.5);\n height: calc(var(--spacing) * 2.5);\n}\n.room-platform-room .size-3\\.5 {\n width: calc(var(--spacing) * 3.5);\n height: calc(var(--spacing) * 3.5);\n}\n.room-platform-room .size-4 {\n width: calc(var(--spacing) * 4);\n height: calc(var(--spacing) * 4);\n}\n.room-platform-room .size-5 {\n width: calc(var(--spacing) * 5);\n height: calc(var(--spacing) * 5);\n}\n.room-platform-room .size-6 {\n width: calc(var(--spacing) * 6);\n height: calc(var(--spacing) * 6);\n}\n.room-platform-room .size-7 {\n width: calc(var(--spacing) * 7);\n height: calc(var(--spacing) * 7);\n}\n.room-platform-room .size-8 {\n width: calc(var(--spacing) * 8);\n height: calc(var(--spacing) * 8);\n}\n.room-platform-room .size-9 {\n width: calc(var(--spacing) * 9);\n height: calc(var(--spacing) * 9);\n}\n.room-platform-room .size-10 {\n width: calc(var(--spacing) * 10);\n height: calc(var(--spacing) * 10);\n}\n.room-platform-room .size-12 {\n width: calc(var(--spacing) * 12);\n height: calc(var(--spacing) * 12);\n}\n.room-platform-room .h-5 {\n height: calc(var(--spacing) * 5);\n}\n.room-platform-room .h-6 {\n height: calc(var(--spacing) * 6);\n}\n.room-platform-room .h-7 {\n height: calc(var(--spacing) * 7);\n}\n.room-platform-room .h-8 {\n height: calc(var(--spacing) * 8);\n}\n.room-platform-room .h-9 {\n height: calc(var(--spacing) * 9);\n}\n.room-platform-room .h-10\\! {\n height: calc(var(--spacing) * 10) !important;\n}\n.room-platform-room .h-12 {\n height: calc(var(--spacing) * 12);\n}\n.room-platform-room .h-\\[calc\\(100\\%-1px\\)\\] {\n height: calc(100% - 1px);\n}\n.room-platform-room .h-auto {\n height: auto;\n}\n.room-platform-room .h-dvh {\n height: 100dvh;\n}\n.room-platform-room .h-full {\n height: 100%;\n}\n.room-platform-room .h-px {\n height: 1px;\n}\n.room-platform-room .h-screen {\n height: 100vh;\n}\n.room-platform-room .max-h-\\(--radix-select-content-available-height\\) {\n max-height: var(--radix-select-content-available-height);\n}\n.room-platform-room .max-h-\\[85vh\\] {\n max-height: 85vh;\n}\n.room-platform-room .max-h-full {\n max-height: 100%;\n}\n.room-platform-room .min-h-0 {\n min-height: calc(var(--spacing) * 0);\n}\n.room-platform-room .min-h-10 {\n min-height: calc(var(--spacing) * 10);\n}\n.room-platform-room .min-h-18 {\n min-height: calc(var(--spacing) * 18);\n}\n.room-platform-room .min-h-\\[320px\\] {\n min-height: 320px;\n}\n.room-platform-room .min-h-dvh {\n min-height: 100dvh;\n}\n.room-platform-room .w-9 {\n width: calc(var(--spacing) * 9);\n}\n.room-platform-room .w-48 {\n width: calc(var(--spacing) * 48);\n}\n.room-platform-room .w-auto {\n width: auto;\n}\n.room-platform-room .w-dvw {\n width: 100dvw;\n}\n.room-platform-room .w-fit {\n width: fit-content;\n}\n.room-platform-room .w-full {\n width: 100%;\n}\n.room-platform-room .w-full\\! {\n width: 100% !important;\n}\n.room-platform-room .w-screen {\n width: 100vw;\n}\n.room-platform-room .max-w-\\[40\\%\\] {\n max-width: 40%;\n}\n.room-platform-room .max-w-\\[calc\\(100\\%-1\\.5rem\\)\\] {\n max-width: calc(100% - 1.5rem);\n}\n.room-platform-room .max-w-\\[calc\\(100\\%-1rem\\)\\] {\n max-width: calc(100% - 1rem);\n}\n.room-platform-room .max-w-\\[calc\\(100\\%-2rem\\)\\] {\n max-width: calc(100% - 2rem);\n}\n.room-platform-room .max-w-full {\n max-width: 100%;\n}\n.room-platform-room .max-w-none {\n max-width: none;\n}\n.room-platform-room .max-w-xs {\n max-width: var(--container-xs);\n}\n.room-platform-room .min-w-0 {\n min-width: calc(var(--spacing) * 0);\n}\n.room-platform-room .min-w-36 {\n min-width: calc(var(--spacing) * 36);\n}\n.room-platform-room .flex-1 {\n flex: 1;\n}\n.room-platform-room .flex-none {\n flex: none;\n}\n.room-platform-room .shrink-0 {\n flex-shrink: 0;\n}\n.room-platform-room .origin-\\(--radix-select-content-transform-origin\\) {\n transform-origin: var(--radix-select-content-transform-origin);\n}\n.room-platform-room .-translate-x-1\\/2 {\n --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n}\n.room-platform-room .-translate-x-full {\n --tw-translate-x: -100%;\n translate: var(--tw-translate-x) var(--tw-translate-y);\n}\n.room-platform-room .-translate-y-1\\/2 {\n --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n}\n.room-platform-room .translate-y-0 {\n --tw-translate-y: calc(var(--spacing) * 0);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n}\n.room-platform-room .translate-y-\\[calc\\(-50\\%_-_2px\\)\\] {\n --tw-translate-y: calc(-50% - 2px);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n}\n.room-platform-room .translate-y-\\[calc\\(100\\%-0\\.75rem\\)\\] {\n --tw-translate-y: calc(100% - 0.75rem);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n}\n.room-platform-room .-scale-x-100 {\n --tw-scale-x: calc(100% * -1);\n scale: var(--tw-scale-x) var(--tw-scale-y);\n}\n.room-platform-room .rotate-45 {\n rotate: 45deg;\n}\n.room-platform-room .transform {\n transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);\n}\n.room-platform-room .animate-in {\n animation: enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);\n}\n.room-platform-room .animate-spin {\n animation: var(--animate-spin);\n}\n.room-platform-room .cursor-default {\n cursor: default;\n}\n.room-platform-room .cursor-not-allowed {\n cursor: not-allowed;\n}\n.room-platform-room .cursor-pointer {\n cursor: pointer;\n}\n.room-platform-room .resize {\n resize: both;\n}\n.room-platform-room .scroll-my-1 {\n scroll-margin-block: calc(var(--spacing) * 1);\n}\n.room-platform-room .grid-cols-1 {\n grid-template-columns: repeat(1, minmax(0, 1fr));\n}\n.room-platform-room .grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n}\n.room-platform-room .grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n}\n.room-platform-room .grid-cols-4 {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n}\n.room-platform-room .grid-rows-\\[auto_1fr\\] {\n grid-template-rows: auto 1fr;\n}\n.room-platform-room .grid-rows-\\[auto_minmax\\(0\\,1fr\\)\\] {\n grid-template-rows: auto minmax(0,1fr);\n}\n.room-platform-room .grid-rows-\\[minmax\\(240px\\,45dvh\\)_minmax\\(0\\,1fr\\)\\] {\n grid-template-rows: minmax(240px,45dvh) minmax(0,1fr);\n}\n.room-platform-room .flex-col {\n flex-direction: column;\n}\n.room-platform-room .flex-col-reverse {\n flex-direction: column-reverse;\n}\n.room-platform-room .flex-wrap {\n flex-wrap: wrap;\n}\n.room-platform-room .place-items-center {\n place-items: center;\n}\n.room-platform-room .content-start {\n align-content: flex-start;\n}\n.room-platform-room .items-center {\n align-items: center;\n}\n.room-platform-room .justify-between {\n justify-content: space-between;\n}\n.room-platform-room .justify-center {\n justify-content: center;\n}\n.room-platform-room .justify-end {\n justify-content: flex-end;\n}\n.room-platform-room .gap-0 {\n gap: calc(var(--spacing) * 0);\n}\n.room-platform-room .gap-1 {\n gap: calc(var(--spacing) * 1);\n}\n.room-platform-room .gap-1\\.5 {\n gap: calc(var(--spacing) * 1.5);\n}\n.room-platform-room .gap-2 {\n gap: calc(var(--spacing) * 2);\n}\n.room-platform-room .gap-3 {\n gap: calc(var(--spacing) * 3);\n}\n.room-platform-room .gap-4 {\n gap: calc(var(--spacing) * 4);\n}\n.room-platform-room .truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.room-platform-room .overflow-auto {\n overflow: auto;\n}\n.room-platform-room .overflow-hidden {\n overflow: hidden;\n}\n.room-platform-room .overflow-x-hidden {\n overflow-x: hidden;\n}\n.room-platform-room .overflow-y-auto {\n overflow-y: auto;\n}\n.room-platform-room .rounded-2xl {\n border-radius: var(--radius-2xl);\n}\n.room-platform-room .rounded-4xl {\n border-radius: var(--radius-4xl);\n}\n.room-platform-room .rounded-\\[2px\\] {\n border-radius: 2px;\n}\n.room-platform-room .rounded-\\[min\\(var\\(--radius-md\\)\\,10px\\)\\] {\n border-radius: min(var(--radius-md), 10px);\n}\n.room-platform-room .rounded-\\[min\\(var\\(--radius-md\\)\\,12px\\)\\] {\n border-radius: min(var(--radius-md), 12px);\n}\n.room-platform-room .rounded-full {\n border-radius: calc(infinity * 1px);\n}\n.room-platform-room .rounded-lg {\n border-radius: var(--radius-lg);\n}\n.room-platform-room .rounded-md {\n border-radius: var(--radius-md);\n}\n.room-platform-room .rounded-none {\n border-radius: 0;\n}\n.room-platform-room .rounded-xl {\n border-radius: var(--radius-xl);\n}\n.room-platform-room .rounded-l-lg {\n border-top-left-radius: var(--radius-lg);\n border-bottom-left-radius: var(--radius-lg);\n}\n.room-platform-room .rounded-b-xl {\n border-bottom-right-radius: var(--radius-xl);\n border-bottom-left-radius: var(--radius-xl);\n}\n.room-platform-room .border {\n border-style: var(--tw-border-style);\n border-width: 1px;\n}\n.room-platform-room .border-2 {\n border-style: var(--tw-border-style);\n border-width: 2px;\n}\n.room-platform-room .border-t {\n border-top-style: var(--tw-border-style);\n border-top-width: 1px;\n}\n.room-platform-room .border-r-0 {\n border-right-style: var(--tw-border-style);\n border-right-width: 0px;\n}\n.room-platform-room .border-b {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 1px;\n}\n.room-platform-room .border-dashed {\n --tw-border-style: dashed;\n border-style: dashed;\n}\n.room-platform-room .border-\\[\\#2563EB\\] {\n border-color: #2563EB;\n}\n.room-platform-room .border-amber-200 {\n border-color: var(--color-amber-200);\n}\n.room-platform-room .border-border {\n border-color: var(--color-border);\n}\n.room-platform-room .border-emerald-200 {\n border-color: var(--color-emerald-200);\n}\n.room-platform-room .border-input {\n border-color: var(--color-input);\n}\n.room-platform-room .border-liveclass-orange {\n border-color: var(--color-liveclass-orange);\n}\n.room-platform-room .border-liveclass-orange\\/30 {\n border-color: color-mix(in srgb, #eb6619 30%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n border-color: color-mix(in oklab, var(--color-liveclass-orange) 30%, transparent);\n }\n}\n.room-platform-room .border-primary\\/10 {\n border-color: color-mix(in srgb, #242f62 10%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n border-color: color-mix(in oklab, var(--color-primary) 10%, transparent);\n }\n}\n.room-platform-room .border-red-300\\/40 {\n border-color: color-mix(in srgb, oklch(80.8% 0.114 19.571) 40%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n border-color: color-mix(in oklab, var(--color-red-300) 40%, transparent);\n }\n}\n.room-platform-room .border-sky-200 {\n border-color: var(--color-sky-200);\n}\n.room-platform-room .border-slate-200 {\n border-color: var(--color-slate-200);\n}\n.room-platform-room .border-slate-300 {\n border-color: var(--color-slate-300);\n}\n.room-platform-room .border-transparent {\n border-color: transparent;\n}\n.room-platform-room .border-white {\n border-color: var(--color-white);\n}\n.room-platform-room .border-white\\/10 {\n border-color: color-mix(in srgb, #fff 10%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n border-color: color-mix(in oklab, var(--color-white) 10%, transparent);\n }\n}\n.room-platform-room .border-white\\/20 {\n border-color: color-mix(in srgb, #fff 20%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n border-color: color-mix(in oklab, var(--color-white) 20%, transparent);\n }\n}\n.room-platform-room .border-white\\/30 {\n border-color: color-mix(in srgb, #fff 30%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n border-color: color-mix(in oklab, var(--color-white) 30%, transparent);\n }\n}\n.room-platform-room .bg-amber-50 {\n background-color: var(--color-amber-50);\n}\n.room-platform-room .bg-background {\n background-color: var(--color-background);\n}\n.room-platform-room .bg-black {\n background-color: var(--color-black);\n}\n.room-platform-room .bg-black\\/10 {\n background-color: color-mix(in srgb, #000 10%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-black) 10%, transparent);\n }\n}\n.room-platform-room .bg-black\\/20 {\n background-color: color-mix(in srgb, #000 20%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-black) 20%, transparent);\n }\n}\n.room-platform-room .bg-border {\n background-color: var(--color-border);\n}\n.room-platform-room .bg-destructive\\/10 {\n background-color: color-mix(in srgb, oklch(0.577 0.245 27.325) 10%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-destructive) 10%, transparent);\n }\n}\n.room-platform-room .bg-emerald-50 {\n background-color: var(--color-emerald-50);\n}\n.room-platform-room .bg-liveclass-orange {\n background-color: var(--color-liveclass-orange);\n}\n.room-platform-room .bg-liveclass-orange\\/10 {\n background-color: color-mix(in srgb, #eb6619 10%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-liveclass-orange) 10%, transparent);\n }\n}\n.room-platform-room .bg-muted {\n background-color: var(--color-muted);\n}\n.room-platform-room .bg-muted\\/50 {\n background-color: color-mix(in srgb, oklch(0.97 0 0) 50%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-muted) 50%, transparent);\n }\n}\n.room-platform-room .bg-popover {\n background-color: var(--color-popover);\n}\n.room-platform-room .bg-primary {\n background-color: var(--color-primary);\n}\n.room-platform-room .bg-primary\\/10 {\n background-color: color-mix(in srgb, #242f62 10%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-primary) 10%, transparent);\n }\n}\n.room-platform-room .bg-secondary {\n background-color: var(--color-secondary);\n}\n.room-platform-room .bg-sky-50 {\n background-color: var(--color-sky-50);\n}\n.room-platform-room .bg-slate-50 {\n background-color: var(--color-slate-50);\n}\n.room-platform-room .bg-slate-900 {\n background-color: var(--color-slate-900);\n}\n.room-platform-room .bg-slate-900\\/45 {\n background-color: color-mix(in srgb, oklch(20.8% 0.042 265.755) 45%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-slate-900) 45%, transparent);\n }\n}\n.room-platform-room .bg-slate-950 {\n background-color: var(--color-slate-950);\n}\n.room-platform-room .bg-slate-950\\/40 {\n background-color: color-mix(in srgb, oklch(12.9% 0.042 264.695) 40%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-slate-950) 40%, transparent);\n }\n}\n.room-platform-room .bg-slate-950\\/75 {\n background-color: color-mix(in srgb, oklch(12.9% 0.042 264.695) 75%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-slate-950) 75%, transparent);\n }\n}\n.room-platform-room .bg-slate-950\\/80 {\n background-color: color-mix(in srgb, oklch(12.9% 0.042 264.695) 80%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-slate-950) 80%, transparent);\n }\n}\n.room-platform-room .bg-slate-950\\/90 {\n background-color: color-mix(in srgb, oklch(12.9% 0.042 264.695) 90%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-slate-950) 90%, transparent);\n }\n}\n.room-platform-room .bg-transparent {\n background-color: transparent;\n}\n.room-platform-room .bg-white {\n background-color: var(--color-white);\n}\n.room-platform-room .bg-white\\/90 {\n background-color: color-mix(in srgb, #fff 90%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-white) 90%, transparent);\n }\n}\n.room-platform-room .bg-clip-padding {\n background-clip: padding-box;\n}\n.room-platform-room .fill-primary {\n fill: var(--color-primary);\n}\n.room-platform-room .object-contain {\n object-fit: contain;\n}\n.room-platform-room .object-cover {\n object-fit: cover;\n}\n.room-platform-room .p-0 {\n padding: calc(var(--spacing) * 0);\n}\n.room-platform-room .p-1 {\n padding: calc(var(--spacing) * 1);\n}\n.room-platform-room .p-2 {\n padding: calc(var(--spacing) * 2);\n}\n.room-platform-room .p-3 {\n padding: calc(var(--spacing) * 3);\n}\n.room-platform-room .p-4 {\n padding: calc(var(--spacing) * 4);\n}\n.room-platform-room .p-6 {\n padding: calc(var(--spacing) * 6);\n}\n.room-platform-room .p-\\[3px\\] {\n padding: 3px;\n}\n.room-platform-room .px-1\\.5 {\n padding-inline: calc(var(--spacing) * 1.5);\n}\n.room-platform-room .px-2 {\n padding-inline: calc(var(--spacing) * 2);\n}\n.room-platform-room .px-2\\.5 {\n padding-inline: calc(var(--spacing) * 2.5);\n}\n.room-platform-room .px-3 {\n padding-inline: calc(var(--spacing) * 3);\n}\n.room-platform-room .px-3\\.5 {\n padding-inline: calc(var(--spacing) * 3.5);\n}\n.room-platform-room .px-4 {\n padding-inline: calc(var(--spacing) * 4);\n}\n.room-platform-room .py-0\\.5 {\n padding-block: calc(var(--spacing) * 0.5);\n}\n.room-platform-room .py-1 {\n padding-block: calc(var(--spacing) * 1);\n}\n.room-platform-room .py-1\\.5 {\n padding-block: calc(var(--spacing) * 1.5);\n}\n.room-platform-room .py-2 {\n padding-block: calc(var(--spacing) * 2);\n}\n.room-platform-room .py-3 {\n padding-block: calc(var(--spacing) * 3);\n}\n.room-platform-room .pr-2 {\n padding-right: calc(var(--spacing) * 2);\n}\n.room-platform-room .pr-8 {\n padding-right: calc(var(--spacing) * 8);\n}\n.room-platform-room .pr-20 {\n padding-right: calc(var(--spacing) * 20);\n}\n.room-platform-room .pb-3 {\n padding-bottom: calc(var(--spacing) * 3);\n}\n.room-platform-room .pl-1\\.5 {\n padding-left: calc(var(--spacing) * 1.5);\n}\n.room-platform-room .pl-2\\.5 {\n padding-left: calc(var(--spacing) * 2.5);\n}\n.room-platform-room .text-center {\n text-align: center;\n}\n.room-platform-room .text-left {\n text-align: left;\n}\n.room-platform-room .text-base {\n font-size: var(--text-base);\n line-height: var(--tw-leading, var(--text-base--line-height));\n}\n.room-platform-room .text-sm {\n font-size: var(--text-sm);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n}\n.room-platform-room .text-xs {\n font-size: var(--text-xs);\n line-height: var(--tw-leading, var(--text-xs--line-height));\n}\n.room-platform-room .text-\\[0\\.8rem\\] {\n font-size: 0.8rem;\n}\n.room-platform-room .leading-5 {\n --tw-leading: calc(var(--spacing) * 5);\n line-height: calc(var(--spacing) * 5);\n}\n.room-platform-room .leading-none {\n --tw-leading: 1;\n line-height: 1;\n}\n.room-platform-room .font-bold {\n --tw-font-weight: var(--font-weight-bold);\n font-weight: var(--font-weight-bold);\n}\n.room-platform-room .font-medium {\n --tw-font-weight: var(--font-weight-medium);\n font-weight: var(--font-weight-medium);\n}\n.room-platform-room .font-semibold {\n --tw-font-weight: var(--font-weight-semibold);\n font-weight: var(--font-weight-semibold);\n}\n.room-platform-room .text-balance {\n text-wrap: balance;\n}\n.room-platform-room .whitespace-nowrap {\n white-space: nowrap;\n}\n.room-platform-room .text-\\[\\#2563EB\\] {\n color: #2563EB;\n}\n.room-platform-room .text-amber-700 {\n color: var(--color-amber-700);\n}\n.room-platform-room .text-amber-950 {\n color: var(--color-amber-950);\n}\n.room-platform-room .text-destructive {\n color: var(--color-destructive);\n}\n.room-platform-room .text-emerald-950 {\n color: var(--color-emerald-950);\n}\n.room-platform-room .text-foreground {\n color: var(--color-foreground);\n}\n.room-platform-room .text-foreground\\/60 {\n color: color-mix(in srgb, oklch(0.145 0 0) 60%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n color: color-mix(in oklab, var(--color-foreground) 60%, transparent);\n }\n}\n.room-platform-room .text-liveclass-orange {\n color: var(--color-liveclass-orange);\n}\n.room-platform-room .text-muted-foreground {\n color: var(--color-muted-foreground);\n}\n.room-platform-room .text-popover-foreground {\n color: var(--color-popover-foreground);\n}\n.room-platform-room .text-primary {\n color: var(--color-primary);\n}\n.room-platform-room .text-primary-foreground {\n color: var(--color-primary-foreground);\n}\n.room-platform-room .text-red-100 {\n color: var(--color-red-100);\n}\n.room-platform-room .text-secondary-foreground {\n color: var(--color-secondary-foreground);\n}\n.room-platform-room .text-sky-950 {\n color: var(--color-sky-950);\n}\n.room-platform-room .text-slate-200 {\n color: var(--color-slate-200);\n}\n.room-platform-room .text-slate-300 {\n color: var(--color-slate-300);\n}\n.room-platform-room .text-slate-400 {\n color: var(--color-slate-400);\n}\n.room-platform-room .text-slate-500 {\n color: var(--color-slate-500);\n}\n.room-platform-room .text-slate-700 {\n color: var(--color-slate-700);\n}\n.room-platform-room .text-slate-950 {\n color: var(--color-slate-950);\n}\n.room-platform-room .text-white {\n color: var(--color-white);\n}\n.room-platform-room .text-white\\/55 {\n color: color-mix(in srgb, #fff 55%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n color: color-mix(in oklab, var(--color-white) 55%, transparent);\n }\n}\n.room-platform-room .text-white\\/60 {\n color: color-mix(in srgb, #fff 60%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n color: color-mix(in oklab, var(--color-white) 60%, transparent);\n }\n}\n.room-platform-room .text-white\\/70 {\n color: color-mix(in srgb, #fff 70%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n color: color-mix(in oklab, var(--color-white) 70%, transparent);\n }\n}\n.room-platform-room .uppercase {\n text-transform: uppercase;\n}\n.room-platform-room .underline-offset-4 {\n text-underline-offset: 4px;\n}\n.room-platform-room .opacity-70 {\n opacity: 70%;\n}\n.room-platform-room .opacity-80 {\n opacity: 80%;\n}\n.room-platform-room .shadow {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n}\n.room-platform-room .shadow-lg {\n --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n}\n.room-platform-room .shadow-md {\n --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n}\n.room-platform-room .shadow-sm {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n}\n.room-platform-room .ring {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n}\n.room-platform-room .ring-1 {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n}\n.room-platform-room .ring-2 {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n}\n.room-platform-room .ring-\\[\\#2563EB\\]\\/15 {\n --tw-ring-color: color-mix(in oklab, #2563EB 15%, transparent);\n}\n.room-platform-room .ring-emerald-400 {\n --tw-ring-color: var(--color-emerald-400);\n}\n.room-platform-room .ring-foreground\\/10 {\n --tw-ring-color: color-mix(in srgb, oklch(0.145 0 0) 10%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n --tw-ring-color: color-mix(in oklab, var(--color-foreground) 10%, transparent);\n }\n}\n.room-platform-room .ring-white\\/10 {\n --tw-ring-color: color-mix(in srgb, #fff 10%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n --tw-ring-color: color-mix(in oklab, var(--color-white) 10%, transparent);\n }\n}\n.room-platform-room .outline-hidden {\n --tw-outline-style: none;\n outline-style: none;\n @media (forced-colors: active) {\n outline: 2px solid transparent;\n outline-offset: 2px;\n }\n}\n.room-platform-room .outline {\n outline-style: var(--tw-outline-style);\n outline-width: 1px;\n}\n.room-platform-room .blur {\n --tw-blur: blur(8px);\n filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);\n}\n.room-platform-room .blur-\\[3px\\] {\n --tw-blur: blur(3px);\n filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);\n}\n.room-platform-room .blur-\\[6px\\] {\n --tw-blur: blur(6px);\n filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);\n}\n.room-platform-room .drop-shadow-sm {\n --tw-drop-shadow-size: drop-shadow(0 1px 2px var(--tw-drop-shadow-color, rgb(0 0 0 / 0.15)));\n --tw-drop-shadow: drop-shadow(var(--drop-shadow-sm));\n filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);\n}\n.room-platform-room .backdrop-blur-\\[1px\\] {\n --tw-backdrop-blur: blur(1px);\n -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n}\n.room-platform-room .transition {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n}\n.room-platform-room .transition-\\[width\\,transform\\,opacity\\] {\n transition-property: width,transform,opacity;\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n}\n.room-platform-room .transition-all {\n transition-property: all;\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n}\n.room-platform-room .transition-colors {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n}\n.room-platform-room .transition-transform {\n transition-property: transform, translate, scale, rotate;\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n}\n.room-platform-room .duration-100 {\n --tw-duration: 100ms;\n transition-duration: 100ms;\n}\n.room-platform-room .duration-200 {\n --tw-duration: 200ms;\n transition-duration: 200ms;\n}\n.room-platform-room .ease-out {\n --tw-ease: var(--ease-out);\n transition-timing-function: var(--ease-out);\n}\n.room-platform-room .fade-in-0 {\n --tw-enter-opacity: calc(0/100);\n --tw-enter-opacity: 0;\n}\n.room-platform-room .outline-none {\n --tw-outline-style: none;\n outline-style: none;\n}\n.room-platform-room .select-none {\n -webkit-user-select: none;\n user-select: none;\n}\n.room-platform-room .zoom-in-95 {\n --tw-enter-scale: calc(95*1%);\n --tw-enter-scale: .95;\n}\n.room-platform-room .paused {\n animation-play-state: paused;\n}\n.room-platform-room .ring-inset {\n --tw-ring-inset: inset;\n}\n.room-platform-room .running {\n animation-play-state: running;\n}\n.room-platform-room .group-data-horizontal\\/tabs\\:h-8 {\n .room-platform-room &:is(:where(.group\\/tabs)[data-horizontal] *) {\n height: calc(var(--spacing) * 8);\n }\n}\n.room-platform-room .group-data-vertical\\/tabs\\:h-fit {\n .room-platform-room &:is(:where(.group\\/tabs)[data-vertical] *) {\n height: fit-content;\n }\n}\n.room-platform-room .group-data-vertical\\/tabs\\:w-full {\n .room-platform-room &:is(:where(.group\\/tabs)[data-vertical] *) {\n width: 100%;\n }\n}\n.room-platform-room .group-data-vertical\\/tabs\\:flex-col {\n .room-platform-room &:is(:where(.group\\/tabs)[data-vertical] *) {\n flex-direction: column;\n }\n}\n.room-platform-room .group-data-vertical\\/tabs\\:justify-start {\n .room-platform-room &:is(:where(.group\\/tabs)[data-vertical] *) {\n justify-content: flex-start;\n }\n}\n.room-platform-room .group-data-\\[size\\=sm\\]\\/alert-dialog-content\\:grid {\n .room-platform-room &:is(:where(.group\\/alert-dialog-content)[data-size=\"sm\"] *) {\n display: grid;\n }\n}\n.room-platform-room .group-data-\\[size\\=sm\\]\\/alert-dialog-content\\:grid-cols-2 {\n .room-platform-room &:is(:where(.group\\/alert-dialog-content)[data-size=\"sm\"] *) {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n }\n}\n.room-platform-room .group-data-\\[variant\\=line\\]\\/tabs-list\\:bg-transparent {\n .room-platform-room &:is(:where(.group\\/tabs-list)[data-variant=\"line\"] *) {\n background-color: transparent;\n }\n}\n.room-platform-room .after\\:absolute {\n .room-platform-room &::after {\n content: var(--tw-content);\n position: absolute;\n }\n}\n.room-platform-room .after\\:bg-foreground {\n .room-platform-room &::after {\n content: var(--tw-content);\n background-color: var(--color-foreground);\n }\n}\n.room-platform-room .after\\:opacity-0 {\n .room-platform-room &::after {\n content: var(--tw-content);\n opacity: 0%;\n }\n}\n.room-platform-room .after\\:transition-opacity {\n .room-platform-room &::after {\n content: var(--tw-content);\n transition-property: opacity;\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n}\n.room-platform-room .group-data-horizontal\\/tabs\\:after\\:inset-x-0 {\n .room-platform-room &:is(:where(.group\\/tabs)[data-horizontal] *) {\n .room-platform-room &::after {\n content: var(--tw-content);\n inset-inline: calc(var(--spacing) * 0);\n }\n }\n}\n.room-platform-room .group-data-horizontal\\/tabs\\:after\\:bottom-\\[-5px\\] {\n .room-platform-room &:is(:where(.group\\/tabs)[data-horizontal] *) {\n .room-platform-room &::after {\n content: var(--tw-content);\n bottom: -5px;\n }\n }\n}\n.room-platform-room .group-data-horizontal\\/tabs\\:after\\:h-0\\.5 {\n .room-platform-room &:is(:where(.group\\/tabs)[data-horizontal] *) {\n .room-platform-room &::after {\n content: var(--tw-content);\n height: calc(var(--spacing) * 0.5);\n }\n }\n}\n.room-platform-room .group-data-vertical\\/tabs\\:after\\:inset-y-0 {\n .room-platform-room &:is(:where(.group\\/tabs)[data-vertical] *) {\n .room-platform-room &::after {\n content: var(--tw-content);\n inset-block: calc(var(--spacing) * 0);\n }\n }\n}\n.room-platform-room .group-data-vertical\\/tabs\\:after\\:-right-1 {\n .room-platform-room &:is(:where(.group\\/tabs)[data-vertical] *) {\n .room-platform-room &::after {\n content: var(--tw-content);\n right: calc(var(--spacing) * -1);\n }\n }\n}\n.room-platform-room .group-data-vertical\\/tabs\\:after\\:w-0\\.5 {\n .room-platform-room &:is(:where(.group\\/tabs)[data-vertical] *) {\n .room-platform-room &::after {\n content: var(--tw-content);\n width: calc(var(--spacing) * 0.5);\n }\n }\n}\n.room-platform-room .hover\\:border-slate-300 {\n .room-platform-room &:hover {\n @media (hover: hover) {\n border-color: var(--color-slate-300);\n }\n }\n}\n.room-platform-room .hover\\:border-slate-400 {\n .room-platform-room &:hover {\n @media (hover: hover) {\n border-color: var(--color-slate-400);\n }\n }\n}\n.room-platform-room .hover\\:bg-destructive\\/20 {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: color-mix(in srgb, oklch(0.577 0.245 27.325) 20%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-destructive) 20%, transparent);\n }\n }\n }\n}\n.room-platform-room .hover\\:bg-liveclass-orange\\/90 {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: color-mix(in srgb, #eb6619 90%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-liveclass-orange) 90%, transparent);\n }\n }\n }\n}\n.room-platform-room .hover\\:bg-muted {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: var(--color-muted);\n }\n }\n}\n.room-platform-room .hover\\:bg-red-50 {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: var(--color-red-50);\n }\n }\n}\n.room-platform-room .hover\\:bg-red-500\\/15 {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: color-mix(in srgb, oklch(63.7% 0.237 25.331) 15%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-red-500) 15%, transparent);\n }\n }\n }\n}\n.room-platform-room .hover\\:bg-secondary\\/80 {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: color-mix(in srgb, #eb6619 80%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-secondary) 80%, transparent);\n }\n }\n }\n}\n.room-platform-room .hover\\:bg-slate-100 {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: var(--color-slate-100);\n }\n }\n}\n.room-platform-room .hover\\:bg-slate-900 {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: var(--color-slate-900);\n }\n }\n}\n.room-platform-room .hover\\:bg-white {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: var(--color-white);\n }\n }\n}\n.room-platform-room .hover\\:bg-white\\/10 {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: color-mix(in srgb, #fff 10%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-white) 10%, transparent);\n }\n }\n }\n}\n.room-platform-room .hover\\:bg-white\\/15 {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: color-mix(in srgb, #fff 15%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-white) 15%, transparent);\n }\n }\n }\n}\n.room-platform-room .hover\\:text-foreground {\n .room-platform-room &:hover {\n @media (hover: hover) {\n color: var(--color-foreground);\n }\n }\n}\n.room-platform-room .hover\\:text-muted-foreground {\n .room-platform-room &:hover {\n @media (hover: hover) {\n color: var(--color-muted-foreground);\n }\n }\n}\n.room-platform-room .hover\\:text-red-600 {\n .room-platform-room &:hover {\n @media (hover: hover) {\n color: var(--color-red-600);\n }\n }\n}\n.room-platform-room .hover\\:text-white {\n .room-platform-room &:hover {\n @media (hover: hover) {\n color: var(--color-white);\n }\n }\n}\n.room-platform-room .hover\\:underline {\n .room-platform-room &:hover {\n @media (hover: hover) {\n text-decoration-line: underline;\n }\n }\n}\n.room-platform-room .focus\\:bg-accent {\n .room-platform-room &:focus {\n background-color: var(--color-accent);\n }\n}\n.room-platform-room .focus\\:text-accent-foreground {\n .room-platform-room &:focus {\n color: var(--color-accent-foreground);\n }\n}\n.room-platform-room .not-data-\\[variant\\=destructive\\]\\:focus\\:\\*\\*\\:text-accent-foreground {\n .room-platform-room &:not(*[data-variant=\"destructive\"]) {\n .room-platform-room &:focus {\n .room-platform-room :is(& *) {\n color: var(--color-accent-foreground);\n }\n }\n }\n}\n.room-platform-room .focus-visible\\:border-destructive\\/40 {\n .room-platform-room &:focus-visible {\n border-color: color-mix(in srgb, oklch(0.577 0.245 27.325) 40%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n border-color: color-mix(in oklab, var(--color-destructive) 40%, transparent);\n }\n }\n}\n.room-platform-room .focus-visible\\:border-ring {\n .room-platform-room &:focus-visible {\n border-color: var(--color-ring);\n }\n}\n.room-platform-room .focus-visible\\:ring-3 {\n .room-platform-room &:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n}\n.room-platform-room .focus-visible\\:ring-\\[3px\\] {\n .room-platform-room &:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n}\n.room-platform-room .focus-visible\\:ring-destructive\\/20 {\n .room-platform-room &:focus-visible {\n --tw-ring-color: color-mix(in srgb, oklch(0.577 0.245 27.325) 20%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n --tw-ring-color: color-mix(in oklab, var(--color-destructive) 20%, transparent);\n }\n }\n}\n.room-platform-room .focus-visible\\:ring-ring\\/50 {\n .room-platform-room &:focus-visible {\n --tw-ring-color: color-mix(in srgb, #9dc2f3 50%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n --tw-ring-color: color-mix(in oklab, var(--color-ring) 50%, transparent);\n }\n }\n}\n.room-platform-room .focus-visible\\:outline-1 {\n .room-platform-room &:focus-visible {\n outline-style: var(--tw-outline-style);\n outline-width: 1px;\n }\n}\n.room-platform-room .focus-visible\\:outline-ring {\n .room-platform-room &:focus-visible {\n outline-color: var(--color-ring);\n }\n}\n.room-platform-room .active\\:not-aria-\\[haspopup\\]\\:translate-y-px {\n .room-platform-room &:active {\n .room-platform-room &:not(*[aria-haspopup]) {\n --tw-translate-y: 1px;\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n }\n}\n.room-platform-room .disabled\\:pointer-events-none {\n .room-platform-room &:disabled {\n pointer-events: none;\n }\n}\n.room-platform-room .disabled\\:cursor-not-allowed {\n .room-platform-room &:disabled {\n cursor: not-allowed;\n }\n}\n.room-platform-room .disabled\\:border-white\\/35 {\n .room-platform-room &:disabled {\n border-color: color-mix(in srgb, #fff 35%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n border-color: color-mix(in oklab, var(--color-white) 35%, transparent);\n }\n }\n}\n.room-platform-room .disabled\\:bg-white\\/5 {\n .room-platform-room &:disabled {\n background-color: color-mix(in srgb, #fff 5%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-white) 5%, transparent);\n }\n }\n}\n.room-platform-room .disabled\\:text-white\\/65 {\n .room-platform-room &:disabled {\n color: color-mix(in srgb, #fff 65%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n color: color-mix(in oklab, var(--color-white) 65%, transparent);\n }\n }\n}\n.room-platform-room .disabled\\:opacity-50 {\n .room-platform-room &:disabled {\n opacity: 50%;\n }\n}\n.room-platform-room .in-data-\\[slot\\=button-group\\]\\:rounded-lg {\n .room-platform-room :where(*[data-slot=\"button-group\"]) & {\n border-radius: var(--radius-lg);\n }\n}\n.room-platform-room .has-data-\\[icon\\=inline-end\\]\\:pr-1 {\n .room-platform-room &:has(*[data-icon=\"inline-end\"]) {\n padding-right: calc(var(--spacing) * 1);\n }\n}\n.room-platform-room .has-data-\\[icon\\=inline-end\\]\\:pr-1\\.5 {\n .room-platform-room &:has(*[data-icon=\"inline-end\"]) {\n padding-right: calc(var(--spacing) * 1.5);\n }\n}\n.room-platform-room .has-data-\\[icon\\=inline-end\\]\\:pr-2 {\n .room-platform-room &:has(*[data-icon=\"inline-end\"]) {\n padding-right: calc(var(--spacing) * 2);\n }\n}\n.room-platform-room .has-data-\\[icon\\=inline-end\\]\\:pr-3 {\n .room-platform-room &:has(*[data-icon=\"inline-end\"]) {\n padding-right: calc(var(--spacing) * 3);\n }\n}\n.room-platform-room .has-data-\\[icon\\=inline-start\\]\\:pl-1 {\n .room-platform-room &:has(*[data-icon=\"inline-start\"]) {\n padding-left: calc(var(--spacing) * 1);\n }\n}\n.room-platform-room .has-data-\\[icon\\=inline-start\\]\\:pl-1\\.5 {\n .room-platform-room &:has(*[data-icon=\"inline-start\"]) {\n padding-left: calc(var(--spacing) * 1.5);\n }\n}\n.room-platform-room .has-data-\\[icon\\=inline-start\\]\\:pl-2 {\n .room-platform-room &:has(*[data-icon=\"inline-start\"]) {\n padding-left: calc(var(--spacing) * 2);\n }\n}\n.room-platform-room .has-data-\\[icon\\=inline-start\\]\\:pl-3 {\n .room-platform-room &:has(*[data-icon=\"inline-start\"]) {\n padding-left: calc(var(--spacing) * 3);\n }\n}\n.room-platform-room .has-data-\\[slot\\=alert-dialog-media\\]\\:grid-rows-\\[auto_auto_1fr\\] {\n .room-platform-room &:has(*[data-slot=\"alert-dialog-media\"]) {\n grid-template-rows: auto auto 1fr;\n }\n}\n.room-platform-room .has-data-\\[slot\\=alert-dialog-media\\]\\:gap-x-4 {\n .room-platform-room &:has(*[data-slot=\"alert-dialog-media\"]) {\n column-gap: calc(var(--spacing) * 4);\n }\n}\n.room-platform-room .aria-expanded\\:bg-muted {\n .room-platform-room &[aria-expanded=\"true\"] {\n background-color: var(--color-muted);\n }\n}\n.room-platform-room .aria-expanded\\:bg-secondary {\n .room-platform-room &[aria-expanded=\"true\"] {\n background-color: var(--color-secondary);\n }\n}\n.room-platform-room .aria-expanded\\:text-foreground {\n .room-platform-room &[aria-expanded=\"true\"] {\n color: var(--color-foreground);\n }\n}\n.room-platform-room .aria-expanded\\:text-secondary-foreground {\n .room-platform-room &[aria-expanded=\"true\"] {\n color: var(--color-secondary-foreground);\n }\n}\n.room-platform-room .aria-invalid\\:border-destructive {\n .room-platform-room &[aria-invalid=\"true\"] {\n border-color: var(--color-destructive);\n }\n}\n.room-platform-room .aria-invalid\\:ring-3 {\n .room-platform-room &[aria-invalid=\"true\"] {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n}\n.room-platform-room .aria-invalid\\:ring-destructive\\/20 {\n .room-platform-room &[aria-invalid=\"true\"] {\n --tw-ring-color: color-mix(in srgb, oklch(0.577 0.245 27.325) 20%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n --tw-ring-color: color-mix(in oklab, var(--color-destructive) 20%, transparent);\n }\n }\n}\n.room-platform-room .data-active\\:bg-background {\n .room-platform-room &[data-active] {\n background-color: var(--color-background);\n }\n}\n.room-platform-room .data-active\\:text-foreground {\n .room-platform-room &[data-active] {\n color: var(--color-foreground);\n }\n}\n.room-platform-room .group-data-\\[variant\\=default\\]\\/tabs-list\\:data-active\\:shadow-sm {\n .room-platform-room &:is(:where(.group\\/tabs-list)[data-variant=\"default\"] *) {\n .room-platform-room &[data-active] {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n}\n.room-platform-room .group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:bg-transparent {\n .room-platform-room &:is(:where(.group\\/tabs-list)[data-variant=\"line\"] *) {\n .room-platform-room &[data-active] {\n background-color: transparent;\n }\n }\n}\n.room-platform-room .group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:shadow-none {\n .room-platform-room &:is(:where(.group\\/tabs-list)[data-variant=\"line\"] *) {\n .room-platform-room &[data-active] {\n --tw-shadow: 0 0 #0000;\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n}\n.room-platform-room .group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:after\\:opacity-100 {\n .room-platform-room &:is(:where(.group\\/tabs-list)[data-variant=\"line\"] *) {\n .room-platform-room &[data-active] {\n .room-platform-room &::after {\n content: var(--tw-content);\n opacity: 100%;\n }\n }\n }\n}\n.room-platform-room .data-closed\\:animate-out {\n .room-platform-room &[data-closed] {\n animation: exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);\n }\n}\n.room-platform-room .data-closed\\:fade-out-0 {\n .room-platform-room &[data-closed] {\n --tw-exit-opacity: calc(0/100);\n --tw-exit-opacity: 0;\n }\n}\n.room-platform-room .data-closed\\:zoom-out-95 {\n .room-platform-room &[data-closed] {\n --tw-exit-scale: calc(95*1%);\n --tw-exit-scale: .95;\n }\n}\n.room-platform-room .data-disabled\\:pointer-events-none {\n .room-platform-room &[data-disabled] {\n pointer-events: none;\n }\n}\n.room-platform-room .data-disabled\\:opacity-50 {\n .room-platform-room &[data-disabled] {\n opacity: 50%;\n }\n}\n.room-platform-room .data-horizontal\\:flex-col {\n .room-platform-room &[data-horizontal] {\n flex-direction: column;\n }\n}\n.room-platform-room .data-open\\:animate-in {\n .room-platform-room &[data-open] {\n animation: enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none);\n }\n}\n.room-platform-room .data-open\\:fade-in-0 {\n .room-platform-room &[data-open] {\n --tw-enter-opacity: calc(0/100);\n --tw-enter-opacity: 0;\n }\n}\n.room-platform-room .data-open\\:zoom-in-95 {\n .room-platform-room &[data-open] {\n --tw-enter-scale: calc(95*1%);\n --tw-enter-scale: .95;\n }\n}\n.room-platform-room .data-placeholder\\:text-muted-foreground {\n .room-platform-room &[data-placeholder] {\n color: var(--color-muted-foreground);\n }\n}\n.room-platform-room .data-\\[align-trigger\\=true\\]\\:animate-none {\n .room-platform-room &[data-align-trigger=\"true\"] {\n animation: none;\n }\n}\n.room-platform-room .data-\\[lk-enabled\\=true\\]\\:border-white {\n .room-platform-room &[data-lk-enabled=\"true\"] {\n border-color: var(--color-white);\n }\n}\n.room-platform-room .data-\\[lk-enabled\\=true\\]\\:bg-white {\n .room-platform-room &[data-lk-enabled=\"true\"] {\n background-color: var(--color-white);\n }\n}\n.room-platform-room .data-\\[lk-enabled\\=true\\]\\:text-slate-950 {\n .room-platform-room &[data-lk-enabled=\"true\"] {\n color: var(--color-slate-950);\n }\n}\n.room-platform-room .data-\\[lk-enabled\\=true\\]\\:hover\\:bg-white {\n .room-platform-room &[data-lk-enabled=\"true\"] {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: var(--color-white);\n }\n }\n }\n}\n.room-platform-room .data-\\[position\\=popper\\]\\:h-\\(--radix-select-trigger-height\\) {\n .room-platform-room &[data-position=\"popper\"] {\n height: var(--radix-select-trigger-height);\n }\n}\n.room-platform-room .data-\\[position\\=popper\\]\\:w-full {\n .room-platform-room &[data-position=\"popper\"] {\n width: 100%;\n }\n}\n.room-platform-room .data-\\[position\\=popper\\]\\:min-w-\\(--radix-select-trigger-width\\) {\n .room-platform-room &[data-position=\"popper\"] {\n min-width: var(--radix-select-trigger-width);\n }\n}\n.room-platform-room .data-\\[side\\=bottom\\]\\:translate-y-1 {\n .room-platform-room &[data-side=\"bottom\"] {\n --tw-translate-y: calc(var(--spacing) * 1);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n}\n.room-platform-room .data-\\[side\\=bottom\\]\\:slide-in-from-top-2 {\n .room-platform-room &[data-side=\"bottom\"] {\n --tw-enter-translate-y: calc(2*var(--spacing)*-1);\n }\n}\n.room-platform-room .data-\\[side\\=left\\]\\:-translate-x-1 {\n .room-platform-room &[data-side=\"left\"] {\n --tw-translate-x: calc(var(--spacing) * -1);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n}\n.room-platform-room .data-\\[side\\=left\\]\\:slide-in-from-right-2 {\n .room-platform-room &[data-side=\"left\"] {\n --tw-enter-translate-x: calc(2*var(--spacing));\n }\n}\n.room-platform-room .data-\\[side\\=right\\]\\:translate-x-1 {\n .room-platform-room &[data-side=\"right\"] {\n --tw-translate-x: calc(var(--spacing) * 1);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n}\n.room-platform-room .data-\\[side\\=right\\]\\:slide-in-from-left-2 {\n .room-platform-room &[data-side=\"right\"] {\n --tw-enter-translate-x: calc(2*var(--spacing)*-1);\n }\n}\n.room-platform-room .data-\\[side\\=top\\]\\:-translate-y-1 {\n .room-platform-room &[data-side=\"top\"] {\n --tw-translate-y: calc(var(--spacing) * -1);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n}\n.room-platform-room .data-\\[side\\=top\\]\\:slide-in-from-bottom-2 {\n .room-platform-room &[data-side=\"top\"] {\n --tw-enter-translate-y: calc(2*var(--spacing));\n }\n}\n.room-platform-room .data-\\[size\\=default\\]\\:h-8 {\n .room-platform-room &[data-size=\"default\"] {\n height: calc(var(--spacing) * 8);\n }\n}\n.room-platform-room .data-\\[size\\=default\\]\\:max-w-xs {\n .room-platform-room &[data-size=\"default\"] {\n max-width: var(--container-xs);\n }\n}\n.room-platform-room .data-\\[size\\=sm\\]\\:h-7 {\n .room-platform-room &[data-size=\"sm\"] {\n height: calc(var(--spacing) * 7);\n }\n}\n.room-platform-room .data-\\[size\\=sm\\]\\:max-w-xs {\n .room-platform-room &[data-size=\"sm\"] {\n max-width: var(--container-xs);\n }\n}\n.room-platform-room .data-\\[size\\=sm\\]\\:rounded-\\[min\\(var\\(--radius-md\\)\\,10px\\)\\] {\n .room-platform-room &[data-size=\"sm\"] {\n border-radius: min(var(--radius-md), 10px);\n }\n}\n.room-platform-room .\\*\\:data-\\[slot\\=select-value\\]\\:line-clamp-1 {\n .room-platform-room :is(& > *) {\n .room-platform-room &[data-slot=\"select-value\"] {\n overflow: hidden;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 1;\n }\n }\n}\n.room-platform-room .\\*\\:data-\\[slot\\=select-value\\]\\:flex {\n .room-platform-room :is(& > *) {\n .room-platform-room &[data-slot=\"select-value\"] {\n display: flex;\n }\n }\n}\n.room-platform-room .\\*\\:data-\\[slot\\=select-value\\]\\:items-center {\n .room-platform-room :is(& > *) {\n .room-platform-room &[data-slot=\"select-value\"] {\n align-items: center;\n }\n }\n}\n.room-platform-room .\\*\\:data-\\[slot\\=select-value\\]\\:gap-1\\.5 {\n .room-platform-room :is(& > *) {\n .room-platform-room &[data-slot=\"select-value\"] {\n gap: calc(var(--spacing) * 1.5);\n }\n }\n}\n.room-platform-room .data-\\[variant\\=line\\]\\:rounded-none {\n .room-platform-room &[data-variant=\"line\"] {\n border-radius: 0;\n }\n}\n.room-platform-room .supports-backdrop-filter\\:backdrop-blur-xs {\n @supports (backdrop-filter: var(--tw)) {\n --tw-backdrop-blur: blur(var(--blur-xs));\n -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n }\n}\n.room-platform-room .sm\\:max-w-2xl {\n @media (width >= 40rem) {\n max-width: var(--container-2xl);\n }\n}\n.room-platform-room .sm\\:max-w-none {\n @media (width >= 40rem) {\n max-width: none;\n }\n}\n.room-platform-room .sm\\:max-w-sm {\n @media (width >= 40rem) {\n max-width: var(--container-sm);\n }\n}\n.room-platform-room .sm\\:grid-cols-3 {\n @media (width >= 40rem) {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n }\n}\n.room-platform-room .sm\\:flex-row {\n @media (width >= 40rem) {\n flex-direction: row;\n }\n}\n.room-platform-room .sm\\:justify-end {\n @media (width >= 40rem) {\n justify-content: flex-end;\n }\n}\n.room-platform-room .sm\\:p-4 {\n @media (width >= 40rem) {\n padding: calc(var(--spacing) * 4);\n }\n}\n.room-platform-room .sm\\:text-sm {\n @media (width >= 40rem) {\n font-size: var(--text-sm);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n}\n.room-platform-room .sm\\:group-data-\\[size\\=default\\]\\/alert-dialog-content\\:row-span-2 {\n @media (width >= 40rem) {\n .room-platform-room &:is(:where(.group\\/alert-dialog-content)[data-size=\"default\"] *) {\n grid-row: span 2 / span 2;\n }\n }\n}\n.room-platform-room .sm\\:group-data-\\[size\\=default\\]\\/alert-dialog-content\\:place-items-start {\n @media (width >= 40rem) {\n .room-platform-room &:is(:where(.group\\/alert-dialog-content)[data-size=\"default\"] *) {\n place-items: start;\n }\n }\n}\n.room-platform-room .sm\\:group-data-\\[size\\=default\\]\\/alert-dialog-content\\:text-left {\n @media (width >= 40rem) {\n .room-platform-room &:is(:where(.group\\/alert-dialog-content)[data-size=\"default\"] *) {\n text-align: left;\n }\n }\n}\n.room-platform-room .sm\\:group-data-\\[size\\=default\\]\\/alert-dialog-content\\:group-has-data-\\[slot\\=alert-dialog-media\\]\\/alert-dialog-content\\:col-start-2 {\n @media (width >= 40rem) {\n .room-platform-room &:is(:where(.group\\/alert-dialog-content)[data-size=\"default\"] *) {\n .room-platform-room &:is(:where(.group\\/alert-dialog-content):has(*[data-slot=\"alert-dialog-media\"]) *) {\n grid-column-start: 2;\n }\n }\n }\n}\n.room-platform-room .sm\\:group-data-\\[size\\=default\\]\\/alert-dialog-content\\:has-data-\\[slot\\=alert-dialog-media\\]\\:grid-rows-\\[auto_1fr\\] {\n @media (width >= 40rem) {\n .room-platform-room &:is(:where(.group\\/alert-dialog-content)[data-size=\"default\"] *) {\n .room-platform-room &:has(*[data-slot=\"alert-dialog-media\"]) {\n grid-template-rows: auto 1fr;\n }\n }\n }\n}\n.room-platform-room .data-\\[size\\=default\\]\\:sm\\:max-w-sm {\n .room-platform-room &[data-size=\"default\"] {\n @media (width >= 40rem) {\n max-width: var(--container-sm);\n }\n }\n}\n.room-platform-room .md\\:block {\n @media (width >= 48rem) {\n display: block;\n }\n}\n.room-platform-room .md\\:inline-flex {\n @media (width >= 48rem) {\n display: inline-flex;\n }\n}\n.room-platform-room .md\\:max-w-\\[300px\\] {\n @media (width >= 48rem) {\n max-width: 300px;\n }\n}\n.room-platform-room .md\\:grid-cols-1 {\n @media (width >= 48rem) {\n grid-template-columns: repeat(1, minmax(0, 1fr));\n }\n}\n.room-platform-room .md\\:grid-cols-\\[minmax\\(0\\,1fr\\)_minmax\\(12rem\\,16rem\\)\\] {\n @media (width >= 48rem) {\n grid-template-columns: minmax(0,1fr) minmax(12rem,16rem);\n }\n}\n.room-platform-room .md\\:grid-cols-\\[minmax\\(0\\,1fr\\)_minmax\\(260px\\,300px\\)\\] {\n @media (width >= 48rem) {\n grid-template-columns: minmax(0,1fr) minmax(260px,300px);\n }\n}\n.room-platform-room .md\\:grid-rows-1 {\n @media (width >= 48rem) {\n grid-template-rows: repeat(1, minmax(0, 1fr));\n }\n}\n.room-platform-room .md\\:justify-self-end {\n @media (width >= 48rem) {\n justify-self: flex-end;\n }\n}\n.room-platform-room .md\\:border-l {\n @media (width >= 48rem) {\n border-left-style: var(--tw-border-style);\n border-left-width: 1px;\n }\n}\n.room-platform-room .md\\:border-white\\/10 {\n @media (width >= 48rem) {\n border-color: color-mix(in srgb, #fff 10%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n border-color: color-mix(in oklab, var(--color-white) 10%, transparent);\n }\n }\n}\n.room-platform-room .md\\:text-pretty {\n @media (width >= 48rem) {\n text-wrap: pretty;\n }\n}\n.room-platform-room .lg\\:grid-cols-2 {\n @media (width >= 64rem) {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n }\n}\n.room-platform-room .dark\\:border-input {\n @media (prefers-color-scheme: dark) {\n border-color: var(--color-input);\n }\n}\n.room-platform-room .dark\\:bg-destructive\\/20 {\n @media (prefers-color-scheme: dark) {\n background-color: color-mix(in srgb, oklch(0.577 0.245 27.325) 20%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-destructive) 20%, transparent);\n }\n }\n}\n.room-platform-room .dark\\:bg-input\\/30 {\n @media (prefers-color-scheme: dark) {\n background-color: color-mix(in srgb, oklch(0.922 0 0) 30%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-input) 30%, transparent);\n }\n }\n}\n.room-platform-room .dark\\:text-muted-foreground {\n @media (prefers-color-scheme: dark) {\n color: var(--color-muted-foreground);\n }\n}\n.room-platform-room .dark\\:hover\\:bg-destructive\\/30 {\n @media (prefers-color-scheme: dark) {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: color-mix(in srgb, oklch(0.577 0.245 27.325) 30%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-destructive) 30%, transparent);\n }\n }\n }\n }\n}\n.room-platform-room .dark\\:hover\\:bg-input\\/50 {\n @media (prefers-color-scheme: dark) {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: color-mix(in srgb, oklch(0.922 0 0) 50%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-input) 50%, transparent);\n }\n }\n }\n }\n}\n.room-platform-room .dark\\:hover\\:bg-muted\\/50 {\n @media (prefers-color-scheme: dark) {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: color-mix(in srgb, oklch(0.97 0 0) 50%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-muted) 50%, transparent);\n }\n }\n }\n }\n}\n.room-platform-room .dark\\:hover\\:text-foreground {\n @media (prefers-color-scheme: dark) {\n .room-platform-room &:hover {\n @media (hover: hover) {\n color: var(--color-foreground);\n }\n }\n }\n}\n.room-platform-room .dark\\:focus-visible\\:ring-destructive\\/40 {\n @media (prefers-color-scheme: dark) {\n .room-platform-room &:focus-visible {\n --tw-ring-color: color-mix(in srgb, oklch(0.577 0.245 27.325) 40%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n --tw-ring-color: color-mix(in oklab, var(--color-destructive) 40%, transparent);\n }\n }\n }\n}\n.room-platform-room .dark\\:aria-invalid\\:border-destructive\\/50 {\n @media (prefers-color-scheme: dark) {\n .room-platform-room &[aria-invalid=\"true\"] {\n border-color: color-mix(in srgb, oklch(0.577 0.245 27.325) 50%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n border-color: color-mix(in oklab, var(--color-destructive) 50%, transparent);\n }\n }\n }\n}\n.room-platform-room .dark\\:aria-invalid\\:ring-destructive\\/40 {\n @media (prefers-color-scheme: dark) {\n .room-platform-room &[aria-invalid=\"true\"] {\n --tw-ring-color: color-mix(in srgb, oklch(0.577 0.245 27.325) 40%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n --tw-ring-color: color-mix(in oklab, var(--color-destructive) 40%, transparent);\n }\n }\n }\n}\n.room-platform-room .dark\\:data-active\\:border-input {\n @media (prefers-color-scheme: dark) {\n .room-platform-room &[data-active] {\n border-color: var(--color-input);\n }\n }\n}\n.room-platform-room .dark\\:data-active\\:bg-input\\/30 {\n @media (prefers-color-scheme: dark) {\n .room-platform-room &[data-active] {\n background-color: color-mix(in srgb, oklch(0.922 0 0) 30%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-input) 30%, transparent);\n }\n }\n }\n}\n.room-platform-room .dark\\:data-active\\:text-foreground {\n @media (prefers-color-scheme: dark) {\n .room-platform-room &[data-active] {\n color: var(--color-foreground);\n }\n }\n}\n.room-platform-room .dark\\:group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:border-transparent {\n @media (prefers-color-scheme: dark) {\n .room-platform-room &:is(:where(.group\\/tabs-list)[data-variant=\"line\"] *) {\n .room-platform-room &[data-active] {\n border-color: transparent;\n }\n }\n }\n}\n.room-platform-room .dark\\:group-data-\\[variant\\=line\\]\\/tabs-list\\:data-active\\:bg-transparent {\n @media (prefers-color-scheme: dark) {\n .room-platform-room &:is(:where(.group\\/tabs-list)[data-variant=\"line\"] *) {\n .room-platform-room &[data-active] {\n background-color: transparent;\n }\n }\n }\n}\n.room-platform-room .\\[\\&_svg\\]\\:pointer-events-none {\n .room-platform-room & svg {\n pointer-events: none;\n }\n}\n.room-platform-room .\\[\\&_svg\\]\\:shrink-0 {\n .room-platform-room & svg {\n flex-shrink: 0;\n }\n}\n.room-platform-room .\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-3 {\n .room-platform-room & svg:not([class*='size-']) {\n width: calc(var(--spacing) * 3);\n height: calc(var(--spacing) * 3);\n }\n}\n.room-platform-room .\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-3\\.5 {\n .room-platform-room & svg:not([class*='size-']) {\n width: calc(var(--spacing) * 3.5);\n height: calc(var(--spacing) * 3.5);\n }\n}\n.room-platform-room .\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-4 {\n .room-platform-room & svg:not([class*='size-']) {\n width: calc(var(--spacing) * 4);\n height: calc(var(--spacing) * 4);\n }\n}\n.room-platform-room .\\*\\:\\[a\\]\\:underline {\n .room-platform-room :is(& > *) {\n .room-platform-room &:is(a) {\n text-decoration-line: underline;\n }\n }\n}\n.room-platform-room .\\*\\:\\[a\\]\\:underline-offset-3 {\n .room-platform-room :is(& > *) {\n .room-platform-room &:is(a) {\n text-underline-offset: 3px;\n }\n }\n}\n.room-platform-room .\\[a\\]\\:hover\\:bg-destructive\\/20 {\n .room-platform-room &:is(a) {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: color-mix(in srgb, oklch(0.577 0.245 27.325) 20%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-destructive) 20%, transparent);\n }\n }\n }\n }\n}\n.room-platform-room .\\[a\\]\\:hover\\:bg-muted {\n .room-platform-room &:is(a) {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: var(--color-muted);\n }\n }\n }\n}\n.room-platform-room .\\[a\\]\\:hover\\:bg-primary\\/80 {\n .room-platform-room &:is(a) {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: color-mix(in srgb, #242f62 80%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-primary) 80%, transparent);\n }\n }\n }\n }\n}\n.room-platform-room .\\[a\\]\\:hover\\:bg-secondary\\/80 {\n .room-platform-room &:is(a) {\n .room-platform-room &:hover {\n @media (hover: hover) {\n background-color: color-mix(in srgb, #eb6619 80%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, var(--color-secondary) 80%, transparent);\n }\n }\n }\n }\n}\n.room-platform-room .\\[a\\]\\:hover\\:text-muted-foreground {\n .room-platform-room &:is(a) {\n .room-platform-room &:hover {\n @media (hover: hover) {\n color: var(--color-muted-foreground);\n }\n }\n }\n}\n.room-platform-room .\\*\\:\\[a\\]\\:hover\\:text-foreground {\n .room-platform-room :is(& > *) {\n .room-platform-room &:is(a) {\n .room-platform-room &:hover {\n @media (hover: hover) {\n color: var(--color-foreground);\n }\n }\n }\n }\n}\n.room-platform-room .\\*\\:\\[span\\]\\:last\\:flex {\n .room-platform-room :is(& > *) {\n .room-platform-room &:is(span) {\n .room-platform-room &:last-child {\n display: flex;\n }\n }\n }\n}\n.room-platform-room .\\*\\:\\[span\\]\\:last\\:items-center {\n .room-platform-room :is(& > *) {\n .room-platform-room &:is(span) {\n .room-platform-room &:last-child {\n align-items: center;\n }\n }\n }\n}\n.room-platform-room .\\*\\:\\[span\\]\\:last\\:gap-2 {\n .room-platform-room :is(& > *) {\n .room-platform-room &:is(span) {\n .room-platform-room &:last-child {\n gap: calc(var(--spacing) * 2);\n }\n }\n }\n}\n.room-platform-room .\\*\\:\\[svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-6 {\n .room-platform-room :is(& > *) {\n .room-platform-room &:is(svg:not([class*='size-'])) {\n width: calc(var(--spacing) * 6);\n height: calc(var(--spacing) * 6);\n }\n }\n}\n.room-platform-room .\\[\\&\\>svg\\]\\:pointer-events-none {\n .room-platform-room &>svg {\n pointer-events: none;\n }\n}\n.room-platform-room .\\[\\&\\>svg\\]\\:size-3\\! {\n .room-platform-room &>svg {\n width: calc(var(--spacing) * 3) !important;\n height: calc(var(--spacing) * 3) !important;\n }\n}\n.room-platform-room .navi-chat__panel {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n min-height: 0;\n overflow: hidden;\n border: 1px solid var(--navi-chat-color-border, #d8e0ea);\n border-radius: var(--navi-chat-radius, 10px);\n background: var(--navi-chat-color-surface, #ffffff);\n color: var(--navi-chat-color-text, #111827);\n font-family: var(--navi-chat-font-family, Inter, ui-sans-serif, system-ui, sans-serif);\n}\n.room-platform-room .navi-chat__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 12px;\n flex: 0 0 auto;\n padding: 10px 12px;\n border-bottom: 1px solid var(--navi-chat-color-border, #d8e0ea);\n background: #f8fafc;\n}\n.room-platform-room .navi-chat__header-main {\n min-width: 0;\n}\n.room-platform-room .navi-chat__title {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n margin: 0;\n overflow: hidden;\n color: var(--navi-chat-color-text, #111827);\n font-size: 14px;\n font-weight: 700;\n line-height: 1.25;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.room-platform-room .navi-chat__online-count {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 20px;\n height: 20px;\n border-radius: 999px;\n background: #eff6ff;\n color: var(--navi-chat-color-primary, #2563eb);\n font-size: 12px;\n font-weight: 700;\n line-height: 1;\n padding: 0 6px;\n}\n.room-platform-room .navi-chat__header-meta {\n display: flex;\n flex: 0 0 auto;\n align-items: center;\n gap: 8px;\n}\n.room-platform-room .navi-chat__role-badge {\n border-radius: 999px;\n background: #eff6ff;\n color: var(--navi-chat-color-primary, #2563eb);\n font-size: 12px;\n font-weight: 600;\n line-height: 1;\n padding: 5px 8px;\n}\n.room-platform-room .navi-chat__rooms {\n display: flex;\n flex: 0 0 auto;\n gap: 6px;\n overflow-x: auto;\n padding: 10px;\n border-bottom: 1px solid var(--navi-chat-color-border, #d8e0ea);\n}\n.room-platform-room .navi-chat__room-tab, .room-platform-room .navi-chat__send-button, .room-platform-room .navi-chat__message-action, .room-platform-room .navi-chat__message-menu-trigger, .room-platform-room .navi-chat__message-menu-item, .room-platform-room .navi-chat__message-edit-button, .room-platform-room .navi-chat__message-edit-input {\n font: inherit;\n}\n.room-platform-room .navi-chat__room-tab {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n min-width: 0;\n max-width: 160px;\n border: 0;\n border-radius: 8px;\n background: #f1f5f9;\n color: #475569;\n cursor: pointer;\n padding: 7px 10px;\n}\n.room-platform-room .navi-chat__room-tab--active {\n background: var(--navi-chat-color-primary, #2563eb);\n color: #ffffff;\n}\n.room-platform-room .navi-chat__room-tab-label {\n display: block;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.room-platform-room .navi-chat__unread-badge {\n flex: 0 0 auto;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 18px;\n height: 18px;\n border-radius: 999px;\n background: #eff6ff;\n color: var(--navi-chat-color-primary, #2563eb);\n font-size: 11px;\n font-weight: 700;\n line-height: 1;\n padding: 0 5px;\n}\n.room-platform-room .navi-chat__room-tab--active .navi-chat__unread-badge {\n background: rgba(255, 255, 255, 0.18);\n color: #ffffff;\n}\n.room-platform-room .navi-chat__messages {\n display: flex;\n flex: 1 1 auto;\n flex-direction: column;\n min-height: 0;\n overflow-y: auto;\n padding: 14px;\n background: #fbfdff;\n}\n.room-platform-room .navi-chat__messages-stack {\n display: flex;\n flex-direction: column;\n gap: 10px;\n margin-top: auto;\n}\n.room-platform-room .navi-chat__empty {\n display: flex;\n flex: 1 1 auto;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n min-height: 0;\n padding: 24px;\n background: #fbfdff;\n color: #64748b;\n text-align: center;\n}\n.room-platform-room .navi-chat__empty strong {\n margin-top: 8px;\n color: #334155;\n font-size: 14px;\n}\n.room-platform-room .navi-chat__empty span {\n margin-top: 4px;\n font-size: 13px;\n}\n.room-platform-room .navi-chat__empty-icon {\n color: var(--navi-chat-color-primary, #2563eb);\n font-size: 22px;\n line-height: 1;\n}\n.room-platform-room .navi-chat__message {\n display: flex;\n}\n.room-platform-room .navi-chat__message-group {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n.room-platform-room .navi-chat__loading-older {\n align-self: center;\n color: #64748b;\n font-size: 12px;\n font-weight: 600;\n padding: 4px 0;\n}\n.room-platform-room .navi-chat__message--own {\n justify-content: flex-end;\n}\n.room-platform-room .navi-chat__message-row {\n position: relative;\n display: flex;\n align-items: flex-end;\n gap: 6px;\n min-width: 0;\n max-width: min(82%, 560px);\n}\n.room-platform-room .navi-chat__message-row--own {\n flex-direction: row-reverse;\n}\n.room-platform-room .navi-chat__message-bubble {\n min-width: 0;\n max-width: 100%;\n border: 1px solid var(--navi-chat-color-border, #d8e0ea);\n border-radius: 10px;\n background: #ffffff;\n padding: 9px 11px;\n box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);\n}\n.room-platform-room .navi-chat__message--grouped .navi-chat__message-bubble {\n padding-top: 8px;\n}\n.room-platform-room .navi-chat__message--own .navi-chat__message-bubble {\n border-color: var(--navi-chat-own-message-border, #bfdbfe);\n background: var(--navi-chat-own-message-background, #eff6ff);\n}\n.room-platform-room .navi-chat__message--deleted .navi-chat__message-bubble {\n background: #f8fafc;\n color: #64748b;\n font-style: italic;\n}\n.room-platform-room .navi-chat__message-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 10px;\n margin-bottom: 4px;\n}\n.room-platform-room .navi-chat__message-author {\n overflow: hidden;\n color: #334155;\n font-size: 12px;\n font-weight: 700;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.room-platform-room .navi-chat__message-time {\n color: #94a3b8;\n font-size: 11px;\n white-space: nowrap;\n}\n.room-platform-room .navi-chat__message-text {\n margin: 0;\n color: var(--navi-chat-color-text, #111827);\n font-size: 13px;\n line-height: 1.45;\n overflow-wrap: anywhere;\n white-space: pre-wrap;\n}\n.room-platform-room .navi-chat__message-action {\n margin-top: 8px;\n border: 0;\n background: transparent;\n color: var(--navi-chat-color-primary, #2563eb);\n cursor: pointer;\n font-size: 12px;\n font-weight: 600;\n padding: 0;\n}\n.room-platform-room .navi-chat__message-menu {\n position: absolute;\n right: -30px;\n bottom: 2px;\n z-index: 3;\n display: inline-flex;\n flex: 0 0 auto;\n opacity: 0;\n pointer-events: none;\n transition: opacity 120ms ease, transform 120ms ease;\n transform: translateY(2px);\n vertical-align: middle;\n}\n.room-platform-room .navi-chat__message-row--own .navi-chat__message-menu {\n right: auto;\n left: -30px;\n}\n.room-platform-room .navi-chat__message:hover .navi-chat__message-menu, .room-platform-room .navi-chat__message:focus-within .navi-chat__message-menu, .room-platform-room .navi-chat__message-menu--open {\n opacity: 1;\n pointer-events: auto;\n transform: translateY(0);\n}\n.room-platform-room .navi-chat__message-menu-trigger {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n border: 1px solid var(--navi-chat-color-border, #d8e0ea);\n border-radius: 999px;\n background: #ffffff;\n color: #64748b;\n cursor: pointer;\n font-size: 12px;\n font-weight: 700;\n line-height: 1;\n padding: 0;\n box-shadow: 0 1px 3px rgba(15, 23, 42, 0.08);\n}\n.room-platform-room .navi-chat__message-menu-trigger:hover, .room-platform-room .navi-chat__message-menu-trigger:focus-visible {\n border-color: #bfdbfe;\n background: #eff6ff;\n color: var(--navi-chat-color-primary, #2563eb);\n}\n.room-platform-room .navi-chat__message-menu-popover {\n position: absolute;\n right: 0;\n bottom: 32px;\n z-index: 2;\n display: flex;\n min-width: 82px;\n flex-direction: column;\n overflow: hidden;\n border: 1px solid var(--navi-chat-color-border, #d8e0ea);\n border-radius: 8px;\n background: #ffffff;\n box-shadow: 0 8px 18px rgba(15, 23, 42, 0.14);\n}\n.room-platform-room .navi-chat__message-row--own .navi-chat__message-menu-popover {\n right: auto;\n left: 0;\n}\n.room-platform-room .navi-chat__message-menu-item {\n border: 0;\n background: transparent;\n color: var(--navi-chat-color-text, #111827);\n cursor: pointer;\n font-size: 12px;\n font-weight: 600;\n line-height: 1;\n padding: 8px 10px;\n text-align: left;\n}\n.room-platform-room .navi-chat__message-menu-item:hover, .room-platform-room .navi-chat__message-menu-item:focus-visible {\n background: #f1f5f9;\n color: var(--navi-chat-color-primary, #2563eb);\n}\n.room-platform-room .navi-chat__message-edit {\n display: flex;\n flex-direction: column;\n gap: 6px;\n}\n.room-platform-room .navi-chat__message-edit-input {\n box-sizing: border-box;\n width: min(280px, 100%);\n min-height: 64px;\n resize: vertical;\n border: 1px solid #cbd5e1;\n border-radius: 8px;\n background: #ffffff;\n color: var(--navi-chat-color-text, #111827);\n font-size: 13px;\n line-height: 1.4;\n padding: 8px 9px;\n}\n.room-platform-room .navi-chat__message-edit-actions {\n display: flex;\n justify-content: flex-end;\n gap: 6px;\n}\n.room-platform-room .navi-chat__message-edit-button {\n border: 1px solid var(--navi-chat-color-border, #d8e0ea);\n border-radius: 7px;\n background: #ffffff;\n color: #334155;\n cursor: pointer;\n font-size: 12px;\n font-weight: 700;\n line-height: 1;\n padding: 7px 9px;\n}\n.room-platform-room .navi-chat__message-edit-button--primary {\n border-color: var(--navi-chat-color-primary, #2563eb);\n background: var(--navi-chat-color-primary, #2563eb);\n color: #ffffff;\n}\n.room-platform-room .navi-chat__latest-overlay {\n position: sticky;\n bottom: 8px;\n align-self: stretch;\n box-sizing: border-box;\n display: grid;\n grid-template-columns: 1fr auto 1fr;\n align-items: center;\n gap: 8px;\n margin-top: 8px;\n pointer-events: none;\n}\n.room-platform-room .navi-chat__new-message-notice {\n grid-column: 2;\n border: 1px solid var(--navi-chat-color-border, #d8e0ea);\n border-radius: 999px;\n background: #ffffff;\n color: var(--navi-chat-color-primary, #2563eb);\n font-size: 12px;\n font-weight: 700;\n line-height: 1;\n padding: 8px 12px;\n box-shadow: 0 6px 16px rgba(15, 23, 42, 0.14);\n}\n.room-platform-room .navi-chat__scroll-latest {\n grid-column: 3;\n justify-self: end;\n box-sizing: border-box;\n flex: 0 0 auto;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 34px;\n height: 34px;\n margin-right: 4px;\n border: 1px solid var(--navi-chat-color-border, #d8e0ea);\n border-radius: 50%;\n background: #ffffff;\n color: var(--navi-chat-color-primary, #2563eb);\n cursor: pointer;\n padding: 0;\n pointer-events: auto;\n box-shadow: 0 6px 16px rgba(15, 23, 42, 0.16);\n}\n.room-platform-room .navi-chat__scroll-latest-icon {\n width: 18px;\n height: 18px;\n fill: currentColor;\n}\n.room-platform-room .navi-chat__composer {\n display: flex;\n flex: 0 0 auto;\n align-items: flex-end;\n gap: 8px;\n padding: 10px;\n border-top: 1px solid var(--navi-chat-color-border, #d8e0ea);\n background: #ffffff;\n}\n.room-platform-room .navi-chat__composer-main {\n display: flex;\n flex: 1 1 auto;\n min-width: 0;\n flex-direction: column;\n gap: 4px;\n}\n.room-platform-room .navi-chat__composer-input {\n flex: 1 1 auto;\n min-width: 0;\n min-height: 38px;\n max-height: 84px;\n resize: vertical;\n border: 1px solid #cbd5e1;\n border-radius: 8px;\n color: var(--navi-chat-color-text, #111827);\n font: inherit;\n font-size: 13px;\n line-height: 1.4;\n padding: 9px 10px;\n}\n.room-platform-room .navi-chat__composer-tip {\n margin: 0;\n color: #64748b;\n font-size: 11px;\n line-height: 1.3;\n}\n.room-platform-room .navi-chat__send-button {\n flex: 0 0 auto;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n align-self: center;\n width: 44px;\n height: 44px;\n border: 0;\n border-radius: 999px;\n background: var(--navi-chat-color-primary, #2563eb);\n color: #ffffff;\n cursor: pointer;\n padding: 0;\n}\n.room-platform-room .navi-chat__send-button:disabled {\n cursor: not-allowed;\n opacity: 0.45;\n}\n.room-platform-room .navi-chat__send-icon {\n width: 18px;\n height: 18px;\n fill: currentColor;\n}\n.room-platform-room .navi-chat__readonly {\n flex: 0 0 auto;\n border-top: 1px solid var(--navi-chat-color-border, #d8e0ea);\n background: #f8fafc;\n color: #64748b;\n font-size: 13px;\n padding: 12px 14px;\n}\n.room-platform-room .navi-chat__status {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 18px;\n height: 18px;\n}\n.room-platform-room .navi-chat__status-dot {\n width: 9px;\n height: 9px;\n border-radius: 999px;\n background: #94a3b8;\n}\n.room-platform-room .navi-chat__status--connected .navi-chat__status-dot {\n background: #16a34a;\n}\n.room-platform-room .navi-chat__status--muted .navi-chat__status-dot {\n background: #94a3b8;\n}\n.room-platform-room .navi-chat__status--error .navi-chat__status-dot {\n background: #dc2626;\n}\n.room-platform-room .whiteboard-react-canvas {\n position: relative;\n width: 100%;\n height: 100%;\n}\n.room-platform-room .whiteboard-react-canvas__scene {\n position: relative;\n height: 100%;\n min-height: 100%;\n}\n.room-platform-room .whiteboard-react-canvas__layer {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n}\n.room-platform-room .whiteboard-react-canvas__layer--scene {\n z-index: 10;\n pointer-events: none;\n}\n.room-platform-room .whiteboard-react-canvas__layer--interaction {\n z-index: 11;\n touch-action: none;\n user-select: none;\n -webkit-user-select: none;\n}\n.room-platform-room .whiteboard-react-trigger, .room-platform-room .whiteboard-react-toolbar, .room-platform-room .whiteboard-react-toolbar__popover {\n --whiteboard-overlay-bg: rgb(255 255 255 / 0.94);\n --whiteboard-overlay-border: rgb(148 163 184 / 0.32);\n --whiteboard-overlay-shadow: 0 18px 40px rgb(15 23 42 / 0.24);\n --whiteboard-overlay-text: #0f172a;\n --whiteboard-overlay-muted: #475569;\n --whiteboard-overlay-accent: #0f766e;\n --whiteboard-overlay-accent-soft: rgb(15 118 110 / 0.12);\n --whiteboard-overlay-danger: #dc2626;\n position: fixed;\n border: 1px solid var(--whiteboard-overlay-border);\n border-radius: 1.125rem;\n background: var(--whiteboard-overlay-bg);\n color: var(--whiteboard-overlay-text);\n box-shadow: var(--whiteboard-overlay-shadow);\n backdrop-filter: blur(16px);\n}\n.room-platform-room .whiteboard-react-trigger {\n z-index: 60;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 3rem;\n height: 3rem;\n padding: 0;\n border: 0;\n border-radius: 999px;\n background: #252627;\n color: #00ff9d;\n cursor: pointer;\n transition: background 140ms ease, color 140ms ease;\n}\n.room-platform-room .whiteboard-react-trigger:hover {\n background: #00ff9d;\n color: #000;\n}\n.room-platform-room .whiteboard-react-toolbar__tooltip-trigger {\n display: inline-flex;\n}\n.room-platform-room .whiteboard-react-trigger:focus-visible, .room-platform-room .whiteboard-react-toolbar__button:focus-visible, .room-platform-room .whiteboard-react-toolbar__drag-handle:focus-visible, .room-platform-room .whiteboard-react-toolbar__option-chip:focus-visible, .room-platform-room .whiteboard-react-toolbar__width-chip:focus-visible, .room-platform-room .whiteboard-react-color-popover__swatch:focus-visible, .room-platform-room .whiteboard-react-toolbar__status-action:focus-visible {\n outline: 2px solid rgb(15 118 110 / 0.45);\n outline-offset: 2px;\n}\n.room-platform-room .whiteboard-react-trigger__icon {\n width: 1.5rem;\n height: 1.5rem;\n flex: none;\n}\n.room-platform-room .whiteboard-react-toolbar__icon {\n width: 1.35rem;\n height: 1.35rem;\n flex: none;\n}\n.room-platform-room .whiteboard-react-toolbar__icon.ColorSvg {\n width: 2rem;\n}\n.room-platform-room .whiteboard-react-trigger__label {\n white-space: nowrap;\n}\n.room-platform-room .whiteboard-react-trigger__status-dot, .room-platform-room .whiteboard-react-toolbar__status-dot {\n width: 0.5rem;\n height: 0.5rem;\n border-radius: 999px;\n background: var(--whiteboard-overlay-accent);\n box-shadow: 0 0 0 4px rgb(15 118 110 / 0.14);\n flex: none;\n}\n.room-platform-room .whiteboard-react-trigger[data-runtime-state='failed'] .whiteboard-react-trigger__status-dot {\n background: var(--whiteboard-overlay-danger);\n box-shadow: 0 0 0 4px rgb(220 38 38 / 0.12);\n}\n.room-platform-room .whiteboard-react-toolbar {\n z-index: 61;\n border: 0.15rem solid rgb(226 232 240 / 0.72);\n border-radius: 0.5rem;\n background: #292a2c;\n color: #f8fafc;\n box-shadow: 0 12px 28px rgb(15 23 42 / 0.3);\n transition: transform 140ms ease, box-shadow 140ms ease;\n transform-origin: center;\n animation: whiteboard-toolbar-orientation-vertical 180ms ease-in-out;\n}\n@keyframes whiteboard-toolbar-orientation-vertical {\n from {\n transform: scaleX(1.2);\n }\n to {\n transform: scale(1);\n }\n}\n@keyframes whiteboard-toolbar-orientation-horizontal {\n from {\n transform: scaleX(1.2);\n }\n to {\n transform: scale(1);\n }\n}\n@media (prefers-reduced-motion: reduce) {\n .room-platform-room .whiteboard-react-toolbar {\n animation: none;\n transition: none;\n }\n}\n.room-platform-room .whiteboard-react-toolbar__chrome {\n display: flex;\n flex-direction: column;\n gap: 0.3rem;\n padding: 0.4rem;\n}\n.room-platform-room .whiteboard-react-toolbar[data-orientation='horizontal'] .whiteboard-react-toolbar__chrome {\n flex-direction: row;\n align-items: center;\n box-sizing: border-box;\n padding: 0.4rem;\n}\n.room-platform-room .whiteboard-react-toolbar[data-orientation='horizontal'] {\n animation-name: whiteboard-toolbar-orientation-horizontal;\n}\n.room-platform-room .whiteboard-react-toolbar__drag-handle {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n margin-top: 0.75rem;\n width: 2rem;\n height: 2rem;\n border-radius: 0.65rem;\n background: transparent;\n color: rgb(226 232 240 / 0.84);\n cursor: grab;\n transition: color 120ms ease, border-color 120ms ease;\n}\n.room-platform-room .whiteboard-react-toolbar__drag-handle::before {\n position: absolute;\n top: -0.5rem;\n right: 0;\n left: 0;\n height: 1px;\n content: '';\n background: rgb(226 232 240 / 0.45);\n}\n.room-platform-room .whiteboard-react-toolbar__drag-handle:hover {\n color: #fff;\n background: rgb(255 255 255 / 0.1);\n}\n.room-platform-room .whiteboard-react-toolbar__drag-handle:active {\n cursor: grabbing;\n}\n.room-platform-room .whiteboard-react-toolbar__status {\n display: inline-flex;\n align-items: center;\n gap: 0.5rem;\n max-width: 16rem;\n padding: 0.625rem 0.75rem;\n border-radius: 0.875rem;\n background: rgb(248 250 252 / 0.96);\n color: var(--whiteboard-overlay-muted);\n font-size: 0.8125rem;\n font-weight: 500;\n}\n.room-platform-room .whiteboard-react-toolbar__status[data-state='failed'] {\n color: var(--whiteboard-overlay-danger);\n background: rgb(254 242 242 / 0.96);\n}\n.room-platform-room .whiteboard-react-toolbar__status[data-state='busy'] {\n color: var(--whiteboard-overlay-accent);\n background: rgb(240 253 250 / 0.96);\n}\n.room-platform-room .whiteboard-react-toolbar__status-action {\n margin-left: 0.25rem;\n border: 0;\n background: transparent;\n color: inherit;\n font-weight: 700;\n text-decoration: underline;\n}\n.room-platform-room .whiteboard-react-toolbar__rail {\n display: flex;\n gap: 0.5rem;\n}\n.room-platform-room .whiteboard-react-toolbar[data-orientation='vertical'] .whiteboard-react-toolbar__rail {\n flex-direction: column;\n}\n.room-platform-room .whiteboard-react-toolbar[data-orientation='horizontal'] .whiteboard-react-toolbar__rail {\n flex-direction: row;\n align-items: center;\n}\n.room-platform-room .whiteboard-react-toolbar[data-orientation='horizontal'] .whiteboard-react-toolbar__drag-handle::before {\n top: 0;\n right: auto;\n bottom: 0;\n left: -0.15rem;\n width: 1px;\n height: auto;\n}\n.room-platform-room .whiteboard-react-toolbar__button {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2rem;\n height: 2rem;\n border: 0;\n border-radius: 0.65rem;\n margin-top: 0.75rem;\n background: transparent;\n color: #f8fafc;\n transition: transform 120ms ease, background 120ms ease, border-color 120ms ease, color 120ms ease;\n}\n.room-platform-room .whiteboard-react-toolbar[data-orientation='horizontal'] .whiteboard-react-toolbar__button, .room-platform-room .whiteboard-react-toolbar[data-orientation='horizontal'] .whiteboard-react-toolbar__drag-handle {\n margin-top: 0;\n margin-bottom: 0;\n margin-left: 0.75rem;\n}\n.room-platform-room .whiteboard-react-toolbar__button:hover:not(:disabled) {\n cursor: pointer;\n background: rgb(255 255 255 / 0.1);\n}\n.room-platform-room .whiteboard-react-toolbar__button[data-active='true'] {\n background: #0878f7;\n color: #fff;\n}\n.room-platform-room .whiteboard-react-toolbar__button[data-active='true']:hover:not(:disabled) {\n background: #0878f7;\n}\n.room-platform-room .whiteboard-react-toolbar__button[aria-label='Color'] .whiteboard-react-toolbar__icon {\n display: none;\n}\n.room-platform-room .whiteboard-react-toolbar__button[aria-label='Color'] .whiteboard-react-toolbar__button-swatch {\n position: static;\n width: 1.5rem;\n height: 1.5rem;\n border: 0;\n}\n.room-platform-room .whiteboard-react-toolbar__button[aria-label='Close whiteboard tools'] {\n margin-bottom: 0.75rem;\n background: #ef1111;\n color: #fff;\n}\n.room-platform-room .whiteboard-react-toolbar__button[aria-label='Close whiteboard tools']:hover:not(:disabled) {\n background: #dc0d0d;\n}\n.room-platform-room .whiteboard-react-toolbar[data-orientation='horizontal'] span:last-child .whiteboard-react-toolbar__button {\n margin-bottom: 0;\n margin-right: 0.75rem;\n}\n.room-platform-room .whiteboard-react-toolbar__button:disabled, .room-platform-room .whiteboard-react-toolbar__option-chip:disabled, .room-platform-room .whiteboard-react-toolbar__width-chip:disabled, .room-platform-room .whiteboard-react-color-popover__swatch:disabled {\n cursor: not-allowed;\n opacity: 0.46;\n}\n.room-platform-room .whiteboard-react-toolbar__button-swatch {\n position: absolute;\n right: 0.34rem;\n bottom: 0.34rem;\n width: 0.6rem;\n height: 0.6rem;\n border: 1px solid rgb(255 255 255 / 0.8);\n border-radius: 999px;\n background: var(--whiteboard-color);\n box-shadow: 0 0 0 1px rgb(15 23 42 / 0.12);\n}\n.room-platform-room .whiteboard-react-toolbar__popover {\n z-index: 62;\n padding: 0.65rem;\n border: 0.15rem solid rgb(226 232 240 / 0.72);\n border-radius: 0.5rem;\n background: #292a2c;\n color: #f8fafc;\n box-shadow: 0 12px 28px rgb(15 23 42 / 0.3);\n}\n.room-platform-room .whiteboard-react-draw-popover {\n max-width: 15.5rem;\n}\n.room-platform-room .whiteboard-react-color-popover {\n width: 12.5rem;\n}\n.room-platform-room .whiteboard-react-toolbar__popover-section {\n display: flex;\n flex-direction: column;\n gap: 0.35rem;\n}\n.room-platform-room .whiteboard-react-toolbar__popover-section + .whiteboard-react-toolbar__popover-section {\n margin-top: 0.55rem;\n}\n.room-platform-room .whiteboard-react-toolbar__popover-label {\n margin: 0;\n font-size: 0.75rem;\n font-weight: 700;\n letter-spacing: 0.04em;\n text-transform: uppercase;\n color: rgb(226 232 240 / 0.82);\n}\n.room-platform-room .whiteboard-react-toolbar__option-grid, .room-platform-room .whiteboard-react-toolbar__width-grid {\n display: grid;\n gap: 0.35rem;\n}\n.room-platform-room .whiteboard-react-toolbar__option-grid {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n}\n.room-platform-room .whiteboard-react-toolbar__option-grid--shapes {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n}\n.room-platform-room .whiteboard-react-toolbar__option-chip, .room-platform-room .whiteboard-react-toolbar__width-chip {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2.25rem;\n height: 2.25rem;\n border: 1px solid transparent;\n border-radius: 0.65rem;\n background: transparent;\n color: #f8fafc;\n font-size: 0.75rem;\n font-weight: 600;\n line-height: 1;\n padding: 0;\n cursor: pointer;\n}\n.room-platform-room .whiteboard-react-toolbar__option-chip[data-active='true'], .room-platform-room .whiteboard-react-toolbar__width-chip[data-active='true'] {\n border-color: transparent;\n background: #0878f7;\n color: #fff;\n}\n.room-platform-room .whiteboard-react-toolbar__option-chip:hover:not(:disabled):not([data-active='true']), .room-platform-room .whiteboard-react-toolbar__width-chip:hover:not(:disabled):not([data-active='true']) {\n color: #fff;\n}\n.room-platform-room .whiteboard-react-toolbar__width-grid {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n}\n.room-platform-room .whiteboard-react-toolbar__option-icon {\n flex: none;\n}\n.room-platform-room .whiteboard-react-toolbar__width-sample {\n display: inline-flex;\n width: 1.35rem;\n height: 1.35rem;\n border-radius: 999px;\n background: currentColor;\n flex: none;\n}\n.room-platform-room .whiteboard-react-toolbar__width-sample[data-width='xs'] {\n width: 0.3rem;\n height: 0.3rem;\n}\n.room-platform-room .whiteboard-react-toolbar__width-sample[data-width='sm'] {\n width: 0.45rem;\n height: 0.45rem;\n}\n.room-platform-room .whiteboard-react-toolbar__width-sample[data-width='md'] {\n width: 0.65rem;\n height: 0.65rem;\n}\n.room-platform-room .whiteboard-react-toolbar__width-sample[data-width='lg'] {\n width: 0.9rem;\n height: 0.9rem;\n}\n.room-platform-room .whiteboard-react-color-popover__grid {\n display: grid;\n grid-template-columns: repeat(5, minmax(0, 1fr));\n gap: 0.5rem;\n}\n.room-platform-room .whiteboard-react-color-popover__swatch {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 1.75rem;\n height: 1.75rem;\n padding: 0;\n border: 1px solid rgb(148 163 184 / 0.28);\n border-radius: 999px;\n background: rgb(255 255 255 / 0.9);\n cursor: pointer;\n}\n.room-platform-room .whiteboard-react-color-popover__swatch-fill {\n width: 1.35rem;\n height: 1.35rem;\n border-radius: 999px;\n background: var(--whiteboard-color);\n box-shadow: inset 0 0 0 1px rgb(15 23 42 / 0.08);\n}\n.room-platform-room .whiteboard-react-color-popover__swatch[data-active='true'] {\n border-color: rgb(15 118 110 / 0.45);\n box-shadow: 0 0 0 4px rgb(15 118 110 / 0.12);\n}\n.room-platform-room .whiteboard-react-color-popover__swatch[data-light='true'] .whiteboard-react-color-popover__swatch-fill {\n box-shadow: inset 0 0 0 1px rgb(15 23 42 / 0.12), 0 0 0 1px rgb(226 232 240 / 0.8);\n}\n@property --tw-translate-x {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-translate-y {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-translate-z {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-scale-x {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-scale-y {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-scale-z {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-rotate-x {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-rotate-y {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-rotate-z {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-skew-x {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-skew-y {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-border-style {\n syntax: \"*\";\n inherits: false;\n initial-value: solid;\n}\n@property --tw-leading {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-font-weight {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-inset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-ring-inset {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-offset-width {\n syntax: \"<length>\";\n inherits: false;\n initial-value: 0px;\n}\n@property --tw-ring-offset-color {\n syntax: \"*\";\n inherits: false;\n initial-value: #fff;\n}\n@property --tw-ring-offset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-outline-style {\n syntax: \"*\";\n inherits: false;\n initial-value: solid;\n}\n@property --tw-blur {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-brightness {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-contrast {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-grayscale {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-hue-rotate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-invert {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-opacity {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-saturate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-sepia {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-drop-shadow-size {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-blur {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-brightness {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-contrast {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-grayscale {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-hue-rotate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-invert {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-opacity {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-saturate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-sepia {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-duration {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ease {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-content {\n syntax: \"*\";\n initial-value: \"\";\n inherits: false;\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n@keyframes enter {\n from {\n opacity: var(--tw-enter-opacity,1);\n transform: translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));\n filter: blur(var(--tw-enter-blur,0));\n }\n}\n@keyframes exit {\n to {\n opacity: var(--tw-exit-opacity,1);\n transform: translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));\n filter: blur(var(--tw-exit-blur,0));\n }\n}\n@layer properties {\n @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {\n .room-platform-room *, .room-platform-room ::before, .room-platform-room ::after, .room-platform-room ::backdrop {\n --tw-animation-delay: 0s;\n --tw-animation-direction: normal;\n --tw-animation-duration: initial;\n --tw-animation-fill-mode: none;\n --tw-animation-iteration-count: 1;\n --tw-enter-blur: 0;\n --tw-enter-opacity: 1;\n --tw-enter-rotate: 0;\n --tw-enter-scale: 1;\n --tw-enter-translate-x: 0;\n --tw-enter-translate-y: 0;\n --tw-exit-blur: 0;\n --tw-exit-opacity: 1;\n --tw-exit-rotate: 0;\n --tw-exit-scale: 1;\n --tw-exit-translate-x: 0;\n --tw-exit-translate-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-translate-z: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-scale-z: 1;\n --tw-rotate-x: initial;\n --tw-rotate-y: initial;\n --tw-rotate-z: initial;\n --tw-skew-x: initial;\n --tw-skew-y: initial;\n --tw-border-style: solid;\n --tw-leading: initial;\n --tw-font-weight: initial;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-color: initial;\n --tw-shadow-alpha: 100%;\n --tw-inset-shadow: 0 0 #0000;\n --tw-inset-shadow-color: initial;\n --tw-inset-shadow-alpha: 100%;\n --tw-ring-color: initial;\n --tw-ring-shadow: 0 0 #0000;\n --tw-inset-ring-color: initial;\n --tw-inset-ring-shadow: 0 0 #0000;\n --tw-ring-inset: initial;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-outline-style: solid;\n --tw-blur: initial;\n --tw-brightness: initial;\n --tw-contrast: initial;\n --tw-grayscale: initial;\n --tw-hue-rotate: initial;\n --tw-invert: initial;\n --tw-opacity: initial;\n --tw-saturate: initial;\n --tw-sepia: initial;\n --tw-drop-shadow: initial;\n --tw-drop-shadow-color: initial;\n --tw-drop-shadow-alpha: 100%;\n --tw-drop-shadow-size: initial;\n --tw-backdrop-blur: initial;\n --tw-backdrop-brightness: initial;\n --tw-backdrop-contrast: initial;\n --tw-backdrop-grayscale: initial;\n --tw-backdrop-hue-rotate: initial;\n --tw-backdrop-invert: initial;\n --tw-backdrop-opacity: initial;\n --tw-backdrop-saturate: initial;\n --tw-backdrop-sepia: initial;\n --tw-duration: initial;\n --tw-ease: initial;\n --tw-content: \"\";\n }\n }\n}\n/* @naviedu/room-platform-react bundled tailwind utilities */\n.room-platform-host {\n box-sizing: border-box;\n display: block;\n height: 100%;\n min-height: 0;\n min-width: 0;\n}\n\n:host(.room-platform-host) {\n box-sizing: border-box;\n display: block;\n height: 100%;\n min-height: 0;\n min-width: 0;\n}\n\n[data-room-platform-app-root] {\n box-sizing: border-box;\n display: block;\n height: 100%;\n min-height: 0;\n min-width: 0;\n}\n\n.room-platform-room {\n --room-platform-navy: #242f62;\n --room-platform-orange: #eb6619;\n --room-platform-border: #dbe3ef;\n --room-platform-surface: #ffffff;\n --room-platform-muted: #f8fafc;\n background: var(--room-platform-muted);\n color: #172033;\n display: flex;\n flex-direction: column;\n min-width: 0;\n overflow: hidden;\n width: 100%;\n}\n\n.room-platform-room[data-sizing='viewport'] {\n height: 100dvh;\n min-height: 100dvh;\n}\n\n.room-platform-room[data-sizing='container'] {\n height: 100%;\n min-height: 0;\n width: 100%;\n}\n\n.room-platform-room.room-platform-portal-root {\n background: transparent;\n display: block;\n height: auto;\n min-height: 0;\n overflow: visible;\n width: auto;\n}\n\n.room-platform-surface {\n box-sizing: border-box;\n}\n\n.room-platform-panel {\n background: var(--room-platform-surface);\n border: 1px solid var(--room-platform-border);\n border-radius: 8px;\n}\n\n.room-platform-button {\n align-items: center;\n border: 1px solid transparent;\n border-radius: 8px;\n cursor: pointer;\n display: inline-flex;\n font: inherit;\n gap: 0.375rem;\n justify-content: center;\n min-height: 2rem;\n padding: 0.375rem 0.75rem;\n}\n\n.room-platform-button:focus-visible,\n.room-platform-tab:focus-visible {\n outline: 3px solid color-mix(in srgb, var(--room-platform-orange), transparent 65%);\n outline-offset: 2px;\n}\n\n.room-platform-button:disabled {\n cursor: not-allowed;\n opacity: 0.55;\n}\n\n.room-platform-button--default {\n background: var(--room-platform-navy);\n color: #fff;\n}\n\n.room-platform-button--quiet {\n background: #edf2f7;\n color: var(--room-platform-navy);\n}\n\n.room-platform-button--danger {\n background: #fff1f2;\n color: #b42318;\n}\n\n.room-platform-shell {\n background: #020617;\n color: #fff;\n display: flex;\n flex: 1;\n flex-direction: column;\n min-height: 0;\n min-width: 0;\n overflow: hidden;\n}\n\n.room-platform-shell-top-bar--hidden {\n display: none;\n}\n\n.room-platform-shell-body {\n display: grid;\n flex: 1;\n grid-template-columns: minmax(0, 1fr);\n min-height: 0;\n position: relative;\n}\n\n.room-platform-shell-body--sidebar {\n grid-template-columns: minmax(0, 1fr) minmax(16.25rem, 18.75rem);\n}\n\n.room-platform-shell-main {\n display: flex;\n min-height: 0;\n min-width: 0;\n overflow: hidden;\n position: relative;\n}\n\n.room-platform-shell-sidebar {\n display: flex;\n min-height: 0;\n position: relative;\n width: 100%;\n}\n\n.room-platform-shell-sidebar-content {\n flex: 1;\n min-height: 0;\n overflow: hidden;\n}\n\n.room-platform-shell-sidebar-open,\n.room-platform-shell-sidebar-close {\n position: absolute;\n z-index: 40;\n}\n\n.room-platform-shell-sidebar-open {\n right: 1rem;\n top: 1rem;\n}\n\n.room-platform-shell-sidebar-close {\n left: 0;\n top: 0.75rem;\n transform: translateX(-100%);\n}\n\n.room-platform-top-bar {\n align-items: center;\n background: #0f172a;\n border-bottom: 1px solid rgb(255 255 255 / 10%);\n color: #fff;\n display: flex;\n flex-wrap: wrap;\n gap: 0.75rem;\n justify-content: space-between;\n min-height: 4.5rem;\n padding: 0.75rem 1rem;\n}\n\n.room-platform-top-bar h1,\n.room-platform-top-bar p {\n margin: 0;\n}\n\n.room-platform-top-bar h1 {\n color: #fff;\n font-size: 1.125rem;\n}\n\n.room-platform-eyebrow {\n color: #cbd5e1;\n font-size: 0.75rem;\n font-weight: 600;\n text-transform: uppercase;\n}\n\n.room-platform-top-bar-heading,\n.room-platform-top-bar-trailing {\n align-items: center;\n display: flex;\n flex-wrap: wrap;\n gap: 0.5rem;\n}\n\n.room-platform-top-bar-trailing {\n justify-content: flex-end;\n}\n\n.room-platform-media-controls {\n align-items: center;\n display: flex;\n flex-wrap: wrap;\n gap: 0.375rem;\n}\n\n.room-platform-media-controls .room-platform-button {\n font-size: 0.8125rem;\n}\n\n.room-platform-status {\n border-radius: 999px;\n font-size: 0.8rem;\n font-weight: 600;\n padding: 0.25rem 0.625rem;\n}\n\n.room-platform-status[data-status='connected'] {\n background: #dcfae6;\n color: #166534;\n}\n\n.room-platform-status[data-status='error'] {\n background: #fee2e2;\n color: #b42318;\n}\n\n.room-platform-status[data-status='connecting'],\n.room-platform-status[data-status='reconnecting'] {\n background: #fff3d6;\n color: #9a4f00;\n}\n\n.room-platform-main {\n display: flex;\n flex: 1;\n gap: 1rem;\n min-height: 0;\n min-width: 0;\n padding: 1rem;\n position: relative;\n}\n\n.room-platform-stage-area {\n flex: 1;\n min-height: 26rem;\n min-width: 0;\n position: relative;\n}\n\n.room-platform-stage {\n align-items: center;\n background: linear-gradient(135deg, #1e2a5b, #3c4b89);\n color: #fff;\n display: flex;\n height: 100%;\n justify-content: center;\n overflow: hidden;\n padding: 1rem;\n position: relative;\n}\n\n.room-platform-stage-title {\n font-size: 1.125rem;\n font-weight: 700;\n}\n\n.room-platform-workspace-overlay {\n align-items: center;\n display: flex;\n height: 100%;\n justify-content: center;\n overflow: auto;\n width: 100%;\n}\n\n.room-platform-workspace-alongside {\n min-width: 18rem;\n width: 35%;\n}\n\n.room-platform-sidebar {\n background: var(--room-platform-surface);\n border: 1px solid var(--room-platform-border);\n border-radius: 8px;\n min-width: 0;\n overflow: hidden;\n width: 100%;\n}\n\n.room-platform-control-anchor {\n align-items: stretch;\n display: flex;\n flex: 1;\n justify-content: center;\n min-height: 0;\n min-width: 0;\n overflow: hidden;\n position: relative;\n}\n\n.room-platform-control-bar {\n bottom: 0;\n display: flex;\n justify-content: center;\n left: 0;\n margin: auto;\n padding: 0 0.75rem 0.75rem;\n position: absolute;\n right: 0;\n transition: transform 200ms ease;\n width: fit-content;\n z-index: 40;\n}\n\n.room-platform-control-bar--hidden {\n transform: translateY(calc(100% - 0.75rem));\n}\n\n.room-platform-control-reveal {\n bottom: 0.25rem;\n left: 50%;\n position: absolute;\n transform: translateX(-50%);\n z-index: 30;\n}\n\n.room-platform-side-media {\n display: grid;\n gap: 0.75rem;\n padding: 0.75rem;\n}\n\n.room-platform-video-tile {\n background: #0f172a;\n border-radius: 8px;\n color: #fff;\n min-height: 0;\n overflow: hidden;\n position: relative;\n width: 100%;\n}\n\n.room-platform-video-tile--preview,\n.room-platform-video-tile--active-speaker {\n aspect-ratio: 16 / 9;\n}\n\n.room-platform-video-tile--stage,\n.room-platform-video-tile--overlay {\n height: 100%;\n}\n\n.room-platform-video-tile-media {\n display: block;\n height: 100%;\n object-fit: cover;\n width: 100%;\n}\n\n.room-platform-video-tile--stage .room-platform-video-tile-media {\n object-fit: contain;\n}\n\n.room-platform-video-tile-media--mirrored {\n transform: scaleX(-1);\n}\n\n.room-platform-video-tile-label {\n background: rgb(15 23 42 / 75%);\n border-radius: 999px;\n bottom: 0.5rem;\n font-size: 0.75rem;\n font-weight: 700;\n left: 0.5rem;\n max-width: calc(100% - 1rem);\n overflow: hidden;\n padding: 0.25rem 0.5rem;\n position: absolute;\n text-overflow: ellipsis;\n white-space: nowrap;\n z-index: 15;\n}\n\n.room-platform-video-tile-empty {\n align-items: center;\n display: flex;\n font-size: 0.8125rem;\n height: 100%;\n justify-content: center;\n margin: 0;\n min-height: 8rem;\n padding: 1rem;\n text-align: center;\n}\n\n.room-platform-tabs {\n border-bottom: 1px solid var(--room-platform-border);\n display: flex;\n gap: 0.25rem;\n overflow-x: auto;\n padding: 0.5rem;\n}\n\n.room-platform-tab {\n background: transparent;\n border: 0;\n border-radius: 6px;\n color: #475569;\n cursor: pointer;\n font: inherit;\n font-size: 0.875rem;\n padding: 0.4rem 0.6rem;\n white-space: nowrap;\n}\n\n.room-platform-tab[aria-selected='true'] {\n background: #e9edf9;\n color: var(--room-platform-navy);\n font-weight: 700;\n}\n\n.room-platform-tab-panel {\n padding: 0.75rem;\n}\n\n.room-platform-participant-list {\n display: grid;\n gap: 0.5rem;\n}\n\n.room-platform-participant-row {\n align-items: center;\n display: flex;\n gap: 0.5rem;\n justify-content: space-between;\n padding: 0.625rem;\n}\n\n.room-platform-participant-name,\n.room-platform-participant-subtitle {\n margin: 0;\n}\n\n.room-platform-participant-name {\n font-size: 0.875rem;\n font-weight: 700;\n}\n\n.room-platform-participant-subtitle {\n color: #64748b;\n font-size: 0.75rem;\n}\n\n.room-platform-participant-presence {\n color: #64748b;\n font-size: 0.75rem;\n font-weight: 500;\n margin: 0.25rem 0 0;\n}\n\n.room-platform-participant-presence[data-online='true'] {\n color: #16a34a;\n}\n\n.room-platform-participant-row-trailing,\n.room-platform-participant-actions {\n align-items: center;\n display: flex;\n flex-wrap: wrap;\n gap: 0.375rem;\n justify-content: flex-end;\n}\n\n.room-platform-participant-actions .room-platform-button {\n font-size: 0.75rem;\n min-height: 1.75rem;\n padding: 0.25rem 0.5rem;\n}\n\n.room-platform-action-error {\n color: #b42318;\n font-size: 0.8125rem;\n margin: 0.5rem 0 0;\n}\n\n.room-platform-error {\n color: #fca5a5;\n font-size: 0.8125rem;\n margin: 0.5rem 0 0;\n}\n\n.room-platform-empty {\n color: #64748b;\n font-size: 0.875rem;\n margin: 0;\n padding: 1rem 0;\n text-align: center;\n}\n\n.room-platform-whiteboard {\n height: 100%;\n width: 100%;\n}\n\n.room-platform-surface-error {\n align-items: center;\n background: rgb(15 23 42 / 88%);\n color: #fff;\n display: flex;\n height: 100%;\n justify-content: center;\n margin: 0;\n padding: 1rem;\n text-align: center;\n width: 100%;\n}\n\n.room-platform-start-audio {\n background: #242f62;\n border: 0;\n border-radius: 8px;\n color: #fff;\n cursor: pointer;\n left: 50%;\n padding: 0.625rem 1rem;\n position: fixed;\n top: 1rem;\n transform: translateX(-50%);\n z-index: 50;\n}\n\n.room-platform-start-audio:focus-visible {\n outline: 3px solid #eb6619;\n outline-offset: 2px;\n}\n\n.room-platform-stage-frame {\n align-items: center;\n background: #0f172a;\n border-radius: 8px;\n display: flex;\n justify-content: center;\n max-height: 100%;\n max-width: 100%;\n overflow: hidden;\n position: relative;\n width: 100%;\n}\n\n.room-platform-stage-frame > video {\n display: block;\n height: 100%;\n object-fit: contain;\n width: 100%;\n}\n\n.room-platform-stage-content {\n inset: 0;\n position: absolute;\n z-index: 10;\n}\n\n.room-platform-stage-camera-overlay {\n aspect-ratio: 16 / 9;\n left: 1rem;\n max-width: 40%;\n overflow: hidden;\n position: absolute;\n top: 1rem;\n width: 12rem;\n z-index: 20;\n}\n\n.room-platform-stage-camera-overlay video {\n height: 100%;\n object-fit: cover;\n width: 100%;\n}\n\n.room-platform-stage-status {\n background: rgb(15 23 42 / 80%);\n border-radius: 999px;\n color: #dbeafe;\n left: 50%;\n margin: 0;\n padding: 0.375rem 0.75rem;\n position: absolute;\n top: 1.5rem;\n transform: translateX(-50%);\n z-index: 30;\n}\n\n@keyframes private-live-room-bell-ring {\n 0%,\n 52%,\n 100% {\n transform: rotate(0deg);\n }\n 6% {\n transform: rotate(14deg);\n }\n 12% {\n transform: rotate(-14deg);\n }\n 18% {\n transform: rotate(12deg);\n }\n 24% {\n transform: rotate(-10deg);\n }\n 30% {\n transform: rotate(8deg);\n }\n 38% {\n transform: rotate(-5deg);\n }\n 46% {\n transform: rotate(3deg);\n }\n}\n\n.private-live-room-ringing-bell {\n display: inline-flex;\n animation: private-live-room-bell-ring 2.2s ease-in-out infinite;\n transform-box: fill-box;\n transform-origin: 50% 0%;\n will-change: transform;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .private-live-room-ringing-bell {\n animation: none;\n }\n}\n\n@media (max-width: 900px) {\n .room-platform-stage-area {\n min-height: 20rem;\n }\n}\n\n@media (max-width: 767px) {\n .room-platform-shell-body {\n grid-template-columns: 1fr;\n grid-template-rows: minmax(15rem, 45dvh) minmax(0, 1fr);\n }\n\n .room-platform-shell-body > .room-platform-shell-main:only-child {\n grid-row: 1 / -1;\n }\n\n .room-platform-shell-sidebar {\n max-width: none;\n }\n\n .room-platform-top-bar {\n align-items: flex-start;\n flex-direction: column;\n gap: 0.75rem;\n }\n\n .room-platform-top-bar-heading,\n .room-platform-top-bar-trailing {\n justify-content: flex-start;\n width: 100%;\n }\n\n .room-platform-main {\n flex-direction: column;\n padding: 0.5rem;\n }\n\n .room-platform-workspace-alongside {\n min-width: 0;\n width: 100%;\n }\n}\n";
|
|
26433
|
+
|
|
26434
|
+
function _array_like_to_array$4(arr, len) {
|
|
26435
|
+
if (len == null || len > arr.length) len = arr.length;
|
|
26436
|
+
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
26437
|
+
return arr2;
|
|
26438
|
+
}
|
|
26439
|
+
function _array_with_holes$4(arr) {
|
|
26440
|
+
if (Array.isArray(arr)) return arr;
|
|
26441
|
+
}
|
|
26442
|
+
function _iterable_to_array_limit$4(arr, i) {
|
|
26443
|
+
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
26444
|
+
if (_i == null) return;
|
|
26445
|
+
var _arr = [];
|
|
26446
|
+
var _n = true;
|
|
26447
|
+
var _d = false;
|
|
26448
|
+
var _s, _e;
|
|
26449
|
+
try {
|
|
26450
|
+
for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
|
|
26451
|
+
_arr.push(_s.value);
|
|
26452
|
+
if (i && _arr.length === i) break;
|
|
26453
|
+
}
|
|
26454
|
+
} catch (err) {
|
|
26455
|
+
_d = true;
|
|
26456
|
+
_e = err;
|
|
26457
|
+
} finally{
|
|
26458
|
+
try {
|
|
26459
|
+
if (!_n && _i["return"] != null) _i["return"]();
|
|
26460
|
+
} finally{
|
|
26461
|
+
if (_d) throw _e;
|
|
26462
|
+
}
|
|
26463
|
+
}
|
|
26464
|
+
return _arr;
|
|
26465
|
+
}
|
|
26466
|
+
function _non_iterable_rest$4() {
|
|
26467
|
+
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
26468
|
+
}
|
|
26469
|
+
function _sliced_to_array$4(arr, i) {
|
|
26470
|
+
return _array_with_holes$4(arr) || _iterable_to_array_limit$4(arr, i) || _unsupported_iterable_to_array$4(arr, i) || _non_iterable_rest$4();
|
|
26471
|
+
}
|
|
26472
|
+
function _unsupported_iterable_to_array$4(o, minLen) {
|
|
26473
|
+
if (!o) return;
|
|
26474
|
+
if (typeof o === "string") return _array_like_to_array$4(o, minLen);
|
|
26475
|
+
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
26476
|
+
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
26477
|
+
if (n === "Map" || n === "Set") return Array.from(n);
|
|
26478
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$4(o, minLen);
|
|
26479
|
+
}
|
|
26480
|
+
function RoomPlatformShadowHost(param) {
|
|
26481
|
+
var children = param.children;
|
|
26482
|
+
var hostRef = useRef(null);
|
|
26483
|
+
var _useState = _sliced_to_array$4(useState(null), 2), surface = _useState[0], setSurface = _useState[1];
|
|
26484
|
+
useLayoutEffect(function() {
|
|
26485
|
+
var _host_shadowRoot;
|
|
26486
|
+
var host = hostRef.current;
|
|
26487
|
+
if (!host) return;
|
|
26488
|
+
var shadowRoot = (_host_shadowRoot = host.shadowRoot) !== null && _host_shadowRoot !== void 0 ? _host_shadowRoot : host.attachShadow({
|
|
26489
|
+
mode: 'open'
|
|
26490
|
+
});
|
|
26491
|
+
var style = host.ownerDocument.createElement('style');
|
|
26492
|
+
var appRoot = host.ownerDocument.createElement('div');
|
|
26493
|
+
var portalRoot = host.ownerDocument.createElement('div');
|
|
26494
|
+
style.setAttribute('data-room-platform-style', '');
|
|
26495
|
+
style.textContent = roomPlatformGeneratedStyles;
|
|
26496
|
+
appRoot.setAttribute('data-room-platform-app-root', '');
|
|
26497
|
+
portalRoot.className = 'room-platform-room room-platform-portal-root';
|
|
26498
|
+
portalRoot.setAttribute('data-room-platform-portal-root', '');
|
|
26499
|
+
shadowRoot.append(style, appRoot, portalRoot);
|
|
26500
|
+
setSurface({
|
|
26501
|
+
appRoot: appRoot,
|
|
26502
|
+
portalRoot: portalRoot
|
|
26503
|
+
});
|
|
26504
|
+
return function() {
|
|
26505
|
+
setSurface(null);
|
|
26506
|
+
style.remove();
|
|
26507
|
+
appRoot.remove();
|
|
26508
|
+
portalRoot.remove();
|
|
26509
|
+
};
|
|
26510
|
+
}, []);
|
|
26511
|
+
return /*#__PURE__*/ jsx("div", {
|
|
26512
|
+
ref: hostRef,
|
|
26513
|
+
"data-room-platform-host": true,
|
|
26514
|
+
className: "room-platform-host",
|
|
26515
|
+
children: surface ? /*#__PURE__*/ createPortal(/*#__PURE__*/ jsx(PortalContainerProvider, {
|
|
26516
|
+
container: surface.portalRoot,
|
|
26517
|
+
children: children
|
|
26518
|
+
}), surface.appRoot) : null
|
|
26519
|
+
});
|
|
26520
|
+
}
|
|
26521
|
+
|
|
26324
26522
|
function _array_like_to_array$3(arr, len) {
|
|
26325
26523
|
if (len == null || len > arr.length) len = arr.length;
|
|
26326
26524
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
@@ -26672,7 +26870,7 @@ function _ts_generator$1(thisArg, body) {
|
|
|
26672
26870
|
}
|
|
26673
26871
|
}
|
|
26674
26872
|
function RoomPlatformSpeakQueue(param) {
|
|
26675
|
-
var activeSpeakerParticipantIdentity = param.activeSpeakerParticipantIdentity, activeSpeakerSlot = param.activeSpeakerSlot, canApproveSpeak = param.canApproveSpeak, canClearActiveSpeaker = param.canClearActiveSpeaker, canRejectSpeak = param.canRejectSpeak, isClearingActiveSpeaker = param.isClearingActiveSpeaker,
|
|
26873
|
+
var activeSpeakerParticipantIdentity = param.activeSpeakerParticipantIdentity, activeSpeakerSlot = param.activeSpeakerSlot, canApproveSpeak = param.canApproveSpeak, canClearActiveSpeaker = param.canClearActiveSpeaker, canRejectSpeak = param.canRejectSpeak, isClearingActiveSpeaker = param.isClearingActiveSpeaker, onApproveSpeakRequest = param.onApproveSpeakRequest, onClearActiveSpeaker = param.onClearActiveSpeaker, onRejectSpeakRequest = param.onRejectSpeakRequest, participants = param.participants, raisedHandParticipantIdentities = param.raisedHandParticipantIdentities;
|
|
26676
26874
|
var participantsByIdentity = new Map(participants.map(function(participant) {
|
|
26677
26875
|
return [
|
|
26678
26876
|
participant.participantIdentity,
|
|
@@ -26684,6 +26882,7 @@ function RoomPlatformSpeakQueue(param) {
|
|
|
26684
26882
|
var canShowApprove = canApproveSpeak && onApproveSpeakRequest;
|
|
26685
26883
|
var canShowReject = canRejectSpeak && onRejectSpeakRequest;
|
|
26686
26884
|
var _useState = _sliced_to_array$2(useState(null), 2), pendingSpeakAction = _useState[0], setPendingSpeakAction = _useState[1];
|
|
26885
|
+
var roomPlatformToast = useRoomPlatformToast();
|
|
26687
26886
|
var runSpeakAction = function(participantIdentity, action) {
|
|
26688
26887
|
return _async_to_generator$1(function() {
|
|
26689
26888
|
var handler;
|
|
@@ -26718,7 +26917,7 @@ function RoomPlatformSpeakQueue(param) {
|
|
|
26718
26917
|
];
|
|
26719
26918
|
case 3:
|
|
26720
26919
|
_state.sent();
|
|
26721
|
-
|
|
26920
|
+
roomPlatformToast.error(action === 'approve' ? 'Không duyệt được học sinh phát biểu.' : 'Không từ chối được yêu cầu phát biểu.');
|
|
26722
26921
|
return [
|
|
26723
26922
|
3,
|
|
26724
26923
|
5
|
|
@@ -26751,11 +26950,11 @@ function RoomPlatformSpeakQueue(param) {
|
|
|
26751
26950
|
"Bục giảng"
|
|
26752
26951
|
]
|
|
26753
26952
|
}),
|
|
26754
|
-
|
|
26953
|
+
/*#__PURE__*/ jsx(Badge, {
|
|
26755
26954
|
variant: "outline",
|
|
26756
26955
|
className: "border-liveclass-orange/30 text-liveclass-orange",
|
|
26757
26956
|
children: raisedHandParticipantIdentities.length
|
|
26758
|
-
})
|
|
26957
|
+
})
|
|
26759
26958
|
]
|
|
26760
26959
|
}),
|
|
26761
26960
|
hasActiveSpeaker ? /*#__PURE__*/ jsxs("div", {
|
|
@@ -26856,7 +27055,7 @@ function RoomPlatformSpeakQueue(param) {
|
|
|
26856
27055
|
}, participantIdentity);
|
|
26857
27056
|
}) : /*#__PURE__*/ jsx("p", {
|
|
26858
27057
|
className: "text-sm text-muted-foreground",
|
|
26859
|
-
children:
|
|
27058
|
+
children: "Kh\xf4ng c\xf3 học sinh chờ ph\xe1t biểu."
|
|
26860
27059
|
})
|
|
26861
27060
|
]
|
|
26862
27061
|
});
|
|
@@ -26937,6 +27136,24 @@ function _unsupported_iterable_to_array$1(o, minLen) {
|
|
|
26937
27136
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
26938
27137
|
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$1(o, minLen);
|
|
26939
27138
|
}
|
|
27139
|
+
var cameraOverlayClassName = 'absolute left-4 top-4 z-30 aspect-video w-48 max-w-[40%]';
|
|
27140
|
+
function RoomPlatformCameraOverlay(param) {
|
|
27141
|
+
var trackRef = param.trackRef, status = param.status, testId = param.testId;
|
|
27142
|
+
return /*#__PURE__*/ jsx("div", {
|
|
27143
|
+
"data-identity": trackRef === null || trackRef === void 0 ? void 0 : trackRef.participant.identity,
|
|
27144
|
+
"data-status": status,
|
|
27145
|
+
"data-testid": testId,
|
|
27146
|
+
className: cameraOverlayClassName,
|
|
27147
|
+
style: {
|
|
27148
|
+
aspectRatio: getTrackAspectRatio(trackRef)
|
|
27149
|
+
},
|
|
27150
|
+
children: trackRef ? /*#__PURE__*/ jsx(RoomPlatformVideoTile, {
|
|
27151
|
+
kind: "overlay",
|
|
27152
|
+
mediaClassName: "h-full w-full overflow-hidden",
|
|
27153
|
+
trackRef: trackRef
|
|
27154
|
+
}) : 'Đang chờ tín hiệu lớp học'
|
|
27155
|
+
});
|
|
27156
|
+
}
|
|
26940
27157
|
function getTrackAspectRatio(trackRef) {
|
|
26941
27158
|
var _ref, _ref1;
|
|
26942
27159
|
var _publication_track, _publication_track_mediaStreamTrack_getSettings, _publication_track_mediaStreamTrack, _publication_track1;
|
|
@@ -26974,17 +27191,10 @@ function RoomPlatformStage(param) {
|
|
|
26974
27191
|
var resolvedOverlayTrack = overlayTrack !== null && overlayTrack !== void 0 ? overlayTrack : isScreenShare ? model.cameraOverlay : undefined;
|
|
26975
27192
|
var frameClassName = model.primary ? 'relative flex h-full min-h-0 w-full items-center justify-center overflow-hidden rounded-lg text-white ring-1 ring-white/10' : 'relative flex h-full min-h-0 w-full items-center justify-center overflow-hidden rounded-lg bg-slate-950 p-4 text-sm text-slate-300 ring-1 ring-white/10';
|
|
26976
27193
|
if (layout === 'camera-overlay') {
|
|
26977
|
-
return /*#__PURE__*/ jsx(
|
|
26978
|
-
|
|
26979
|
-
"
|
|
26980
|
-
|
|
26981
|
-
style: frameStyle,
|
|
26982
|
-
children: cameraOverlayTrack ? /*#__PURE__*/ jsx(RoomPlatformVideoTile, {
|
|
26983
|
-
className: "h-full w-full",
|
|
26984
|
-
kind: "overlay",
|
|
26985
|
-
mediaClassName: "h-full w-full overflow-hidden",
|
|
26986
|
-
trackRef: cameraOverlayTrack
|
|
26987
|
-
}) : 'Đang chờ tín hiệu lớp học'
|
|
27194
|
+
return /*#__PURE__*/ jsx(RoomPlatformCameraOverlay, {
|
|
27195
|
+
status: status,
|
|
27196
|
+
testId: "room-platform-stage",
|
|
27197
|
+
trackRef: cameraOverlayTrack
|
|
26988
27198
|
});
|
|
26989
27199
|
}
|
|
26990
27200
|
return /*#__PURE__*/ jsxs("div", {
|
|
@@ -27021,15 +27231,9 @@ function RoomPlatformStage(param) {
|
|
|
27021
27231
|
}) : 'Đang chờ tín hiệu lớp học'
|
|
27022
27232
|
})
|
|
27023
27233
|
}),
|
|
27024
|
-
resolvedOverlayTrack ? /*#__PURE__*/ jsx(
|
|
27025
|
-
"
|
|
27026
|
-
|
|
27027
|
-
className: "absolute left-4 top-4 z-30 aspect-video w-48 max-w-[40%] ring-1 ring-white/20",
|
|
27028
|
-
children: /*#__PURE__*/ jsx(RoomPlatformVideoTile, {
|
|
27029
|
-
kind: "overlay",
|
|
27030
|
-
mediaClassName: "h-full w-full overflow-hidden",
|
|
27031
|
-
trackRef: resolvedOverlayTrack
|
|
27032
|
-
})
|
|
27234
|
+
resolvedOverlayTrack ? /*#__PURE__*/ jsx(RoomPlatformCameraOverlay, {
|
|
27235
|
+
testId: "room-platform-camera-overlay",
|
|
27236
|
+
trackRef: resolvedOverlayTrack
|
|
27033
27237
|
}) : null
|
|
27034
27238
|
]
|
|
27035
27239
|
});
|
|
@@ -27066,22 +27270,29 @@ function RoomPlatformTopBar(param) {
|
|
|
27066
27270
|
});
|
|
27067
27271
|
}
|
|
27068
27272
|
|
|
27069
|
-
var isSpeakingRemote = function(param) {
|
|
27070
|
-
var participant = param.participant;
|
|
27071
|
-
return !participant.isLocal && participant.isSpeaking;
|
|
27072
|
-
};
|
|
27073
|
-
var isRemote = function(param) {
|
|
27074
|
-
var participant = param.participant;
|
|
27075
|
-
return !participant.isLocal;
|
|
27076
|
-
};
|
|
27077
27273
|
var hasAvailableTrackMedia = function(param) {
|
|
27078
27274
|
var publication = param.publication;
|
|
27079
27275
|
var state = publication;
|
|
27080
27276
|
return !state.isMuted && state.isSubscribed !== false && state.track !== null;
|
|
27081
27277
|
};
|
|
27278
|
+
var capabilitiesFromMetadata = function(metadata) {
|
|
27279
|
+
if (!metadata) return [];
|
|
27280
|
+
try {
|
|
27281
|
+
var capabilities = JSON.parse(metadata).capabilities;
|
|
27282
|
+
return Array.isArray(capabilities) && capabilities.every(function(value) {
|
|
27283
|
+
return typeof value === 'string' && isRoomPlatformCapability(value);
|
|
27284
|
+
}) ? capabilities : [];
|
|
27285
|
+
} catch (unused) {
|
|
27286
|
+
return [];
|
|
27287
|
+
}
|
|
27288
|
+
};
|
|
27289
|
+
var isModeratorCamera = function(param, localCapabilities) {
|
|
27290
|
+
var participant = param.participant;
|
|
27291
|
+
return (participant.isLocal ? localCapabilities : capabilitiesFromMetadata(participant.metadata)).includes(RoomPlatformCapability.ROOM_MODERATE);
|
|
27292
|
+
};
|
|
27082
27293
|
function selectRoomPlatformStage(tracks) {
|
|
27083
|
-
var _ref = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, activeSpeakerParticipantIdentity = _ref.activeSpeakerParticipantIdentity,
|
|
27084
|
-
var _ref1,
|
|
27294
|
+
var _ref = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, activeSpeakerParticipantIdentity = _ref.activeSpeakerParticipantIdentity, localCapabilities = _ref.localCapabilities;
|
|
27295
|
+
var _ref1, _shares_;
|
|
27085
27296
|
var availableTracks = tracks.filter(hasAvailableTrackMedia);
|
|
27086
27297
|
var shares = availableTracks.filter(function(param) {
|
|
27087
27298
|
var source = param.source;
|
|
@@ -27091,13 +27302,10 @@ function selectRoomPlatformStage(tracks) {
|
|
|
27091
27302
|
var source = param.source;
|
|
27092
27303
|
return source === Track.Source.Camera;
|
|
27093
27304
|
});
|
|
27094
|
-
var
|
|
27095
|
-
|
|
27096
|
-
|
|
27097
|
-
|
|
27098
|
-
return participant.identity === ((_shares_ = shares[0]) === null || _shares_ === void 0 ? void 0 : _shares_.participant.identity);
|
|
27099
|
-
})) !== null && _cameras_find1 !== void 0 ? _cameras_find1 : genericPrimaryCamera : genericPrimaryCamera;
|
|
27100
|
-
var primary = (_ref2 = (_shares_ = shares[0]) !== null && _shares_ !== void 0 ? _shares_ : selectedPrimaryCamera) !== null && _ref2 !== void 0 ? _ref2 : undefined;
|
|
27305
|
+
var selectedPrimaryCamera = cameras.find(function(camera) {
|
|
27306
|
+
return isModeratorCamera(camera, localCapabilities !== null && localCapabilities !== void 0 ? localCapabilities : []);
|
|
27307
|
+
});
|
|
27308
|
+
var primary = (_ref1 = (_shares_ = shares[0]) !== null && _shares_ !== void 0 ? _shares_ : selectedPrimaryCamera) !== null && _ref1 !== void 0 ? _ref1 : undefined;
|
|
27101
27309
|
var cameraOverlay = shares[0] ? selectedPrimaryCamera !== null && selectedPrimaryCamera !== void 0 ? selectedPrimaryCamera : undefined : undefined;
|
|
27102
27310
|
var localPreview = cameras.find(function(param) {
|
|
27103
27311
|
var participant = param.participant;
|
|
@@ -27125,8 +27333,9 @@ function selectRoomPlatformStage(tracks) {
|
|
|
27125
27333
|
};
|
|
27126
27334
|
}
|
|
27127
27335
|
|
|
27128
|
-
function useRoomPlatformStage(
|
|
27129
|
-
var
|
|
27336
|
+
function useRoomPlatformStage() {
|
|
27337
|
+
var _ref;
|
|
27338
|
+
var _useRoomPlatform = useRoomPlatform(), access = _useRoomPlatform.access, controlState = _useRoomPlatform.controlState;
|
|
27130
27339
|
return selectRoomPlatformStage(useTracks([
|
|
27131
27340
|
Track.Source.Camera,
|
|
27132
27341
|
Track.Source.ScreenShare
|
|
@@ -27134,7 +27343,7 @@ function useRoomPlatformStage(primaryCameraSelector) {
|
|
|
27134
27343
|
onlySubscribed: true
|
|
27135
27344
|
}), {
|
|
27136
27345
|
activeSpeakerParticipantIdentity: controlState === null || controlState === void 0 ? void 0 : controlState.activeSpeakerParticipantIdentity,
|
|
27137
|
-
|
|
27346
|
+
localCapabilities: (_ref = access === null || access === void 0 ? void 0 : access.capabilities) !== null && _ref !== void 0 ? _ref : []
|
|
27138
27347
|
});
|
|
27139
27348
|
}
|
|
27140
27349
|
|
|
@@ -27411,6 +27620,32 @@ var emptyStageModel = {
|
|
|
27411
27620
|
},
|
|
27412
27621
|
primary: undefined
|
|
27413
27622
|
};
|
|
27623
|
+
function RoomPlatformPracticeModeMediaPolicy(param) {
|
|
27624
|
+
var isPracticeMode = param.isPracticeMode;
|
|
27625
|
+
var _useRoomPlatform = useRoomPlatform(), localMedia = _useRoomPlatform.localMedia, setLocalMediaEnabled = _useRoomPlatform.setLocalMediaEnabled;
|
|
27626
|
+
var previousIsPracticeModeRef = useRef(isPracticeMode);
|
|
27627
|
+
var shouldStopScreenShareRef = useRef(false);
|
|
27628
|
+
useEffect(function() {
|
|
27629
|
+
if (!previousIsPracticeModeRef.current && isPracticeMode) {
|
|
27630
|
+
shouldStopScreenShareRef.current = true;
|
|
27631
|
+
}
|
|
27632
|
+
previousIsPracticeModeRef.current = isPracticeMode;
|
|
27633
|
+
if (!isPracticeMode) {
|
|
27634
|
+
shouldStopScreenShareRef.current = false;
|
|
27635
|
+
return;
|
|
27636
|
+
}
|
|
27637
|
+
if (!shouldStopScreenShareRef.current || !localMedia.screenShare) return;
|
|
27638
|
+
shouldStopScreenShareRef.current = false;
|
|
27639
|
+
void setLocalMediaEnabled('screenShare', false).catch(function() {
|
|
27640
|
+
return undefined;
|
|
27641
|
+
});
|
|
27642
|
+
}, [
|
|
27643
|
+
isPracticeMode,
|
|
27644
|
+
localMedia.screenShare,
|
|
27645
|
+
setLocalMediaEnabled
|
|
27646
|
+
]);
|
|
27647
|
+
return null;
|
|
27648
|
+
}
|
|
27414
27649
|
function getShareSessionKey(trackSid) {
|
|
27415
27650
|
return trackSid ? "livekit:".concat(trackSid) : undefined;
|
|
27416
27651
|
}
|
|
@@ -27447,13 +27682,14 @@ function RoomPlatformWhiteboardShareLifecycle(param) {
|
|
|
27447
27682
|
return null;
|
|
27448
27683
|
}
|
|
27449
27684
|
var RoomPlatformWorkspaceContent = function(param) {
|
|
27450
|
-
var cameraBackground = param.cameraBackground, integrations = param.integrations, extensions = param.extensions
|
|
27451
|
-
var _ref, _ref1;
|
|
27452
|
-
var _resolvedStageModel_primary, _extensions_sidebarTabs;
|
|
27685
|
+
var cameraBackground = param.cameraBackground, integrations = param.integrations, extensions = param.extensions; param.isPracticeMode; var onExit = param.onExit, sizing = param.sizing, stageModel = param.stageModel;
|
|
27686
|
+
var _resolvedStageModel_cameraOverlay, _ref, _ref1;
|
|
27687
|
+
var _resolvedStageModel_primary, _resolvedStageModel_primary1, _extensions_sidebarTabs;
|
|
27453
27688
|
var _useRoomPlatform = useRoomPlatform(), access = _useRoomPlatform.access, controlState = _useRoomPlatform.controlState, error = _useRoomPlatform.error, hasCapability = _useRoomPlatform.hasCapability, isActionPending = _useRoomPlatform.isActionPending, localPreviewTrack = _useRoomPlatform.localPreviewTrack, performAction = _useRoomPlatform.performAction, status = _useRoomPlatform.status;
|
|
27454
27689
|
var _useRoomPlatformPrivateRoom = useRoomPlatformPrivateRoom(), cancelPrivateRoom = _useRoomPlatformPrivateRoom.cancelPrivateRoom, currentPrivateRoomOperation = _useRoomPlatformPrivateRoom.currentPrivateRoomOperation;
|
|
27455
27690
|
var resolvedStageModel = stageModel !== null && stageModel !== void 0 ? stageModel : emptyStageModel;
|
|
27456
|
-
var
|
|
27691
|
+
var selectedHostCamera = (_resolvedStageModel_cameraOverlay = resolvedStageModel.cameraOverlay) !== null && _resolvedStageModel_cameraOverlay !== void 0 ? _resolvedStageModel_cameraOverlay : ((_resolvedStageModel_primary = resolvedStageModel.primary) === null || _resolvedStageModel_primary === void 0 ? void 0 : _resolvedStageModel_primary.source) === Track.Source.Camera ? resolvedStageModel.primary : undefined;
|
|
27692
|
+
var shareSessionKey = ((_resolvedStageModel_primary1 = resolvedStageModel.primary) === null || _resolvedStageModel_primary1 === void 0 ? void 0 : _resolvedStageModel_primary1.source) === Track.Source.ScreenShare ? getShareSessionKey(resolvedStageModel.primary.publication.trackSid) : undefined;
|
|
27457
27693
|
var participants = useRoomPresence();
|
|
27458
27694
|
var currentParticipantPresence = participants.find(function(participant) {
|
|
27459
27695
|
return participant.isLocal;
|
|
@@ -27497,11 +27733,14 @@ var RoomPlatformWorkspaceContent = function(param) {
|
|
|
27497
27733
|
};
|
|
27498
27734
|
var participantTab = extensions === null || extensions === void 0 ? void 0 : extensions.participantTab;
|
|
27499
27735
|
var monitor = extensions === null || extensions === void 0 ? void 0 : extensions.monitor;
|
|
27500
|
-
var canUseMonitor =
|
|
27736
|
+
var canUseMonitor = hasCapability('monitor:manage');
|
|
27737
|
+
var roomPlatformToast = useRoomPlatformToast();
|
|
27501
27738
|
var handleMonitorStartError = useCallback(function() {
|
|
27502
27739
|
setStageView('teaching');
|
|
27503
|
-
|
|
27504
|
-
}, [
|
|
27740
|
+
roomPlatformToast.error('Không thể bật Monitor. Vui lòng thử lại.');
|
|
27741
|
+
}, [
|
|
27742
|
+
roomPlatformToast
|
|
27743
|
+
]);
|
|
27505
27744
|
useEffect(function() {
|
|
27506
27745
|
if (!canUseMonitor) setStageView('teaching');
|
|
27507
27746
|
}, [
|
|
@@ -27602,10 +27841,10 @@ var RoomPlatformWorkspaceContent = function(param) {
|
|
|
27602
27841
|
var activeSpeakerSlot = resolvedStageModel.activeSpeaker && !isSelfActiveSpeaker ? /*#__PURE__*/ jsx(RoomPlatformActiveSpeaker, {
|
|
27603
27842
|
trackRef: resolvedStageModel.activeSpeaker
|
|
27604
27843
|
}) : undefined;
|
|
27605
|
-
var localMediaSlot =
|
|
27844
|
+
var localMediaSlot = (selectedHostCamera === null || selectedHostCamera === void 0 ? void 0 : selectedHostCamera.participant.isLocal) ? undefined : /*#__PURE__*/ jsx(RoomPlatformLocalPreview, {
|
|
27606
27845
|
localPreviewTrack: localPreviewTrack,
|
|
27607
27846
|
trackRef: resolvedStageModel.localPreview
|
|
27608
|
-
})
|
|
27847
|
+
});
|
|
27609
27848
|
var activeSpeakerMediaSlot = hasActiveSpeaker && !canModerate ? activeSpeakerSlot : undefined;
|
|
27610
27849
|
var isClearingActiveSpeaker = isActionPending(RoomPlatformAction.SPEAKER_CLEAR);
|
|
27611
27850
|
var clearActiveSpeaker = function() {
|
|
@@ -27648,7 +27887,6 @@ var RoomPlatformWorkspaceContent = function(param) {
|
|
|
27648
27887
|
canClearActiveSpeaker: true,
|
|
27649
27888
|
canRejectSpeak: true,
|
|
27650
27889
|
isClearingActiveSpeaker: isClearingActiveSpeaker,
|
|
27651
|
-
isPracticeMode: isPracticeMode,
|
|
27652
27890
|
onApproveSpeakRequest: approveSpeakRequest,
|
|
27653
27891
|
onClearActiveSpeaker: clearActiveSpeaker,
|
|
27654
27892
|
onRejectSpeakRequest: rejectSpeakRequest,
|
|
@@ -27828,7 +28066,7 @@ var RoomPlatformWorkspaceContent = function(param) {
|
|
|
27828
28066
|
});
|
|
27829
28067
|
};
|
|
27830
28068
|
var RoomPlatformConnectedWorkspace = function(props) {
|
|
27831
|
-
var stageModel = useRoomPlatformStage(
|
|
28069
|
+
var stageModel = useRoomPlatformStage();
|
|
27832
28070
|
return /*#__PURE__*/ jsx(RoomPlatformWorkspaceContent, _object_spread_props(_object_spread({}, props), {
|
|
27833
28071
|
stageModel: stageModel
|
|
27834
28072
|
}));
|
|
@@ -27858,6 +28096,7 @@ function RoomPlatformPrivateRoomRuntime(param) {
|
|
|
27858
28096
|
privateRoomId: privateRoomState.privateRoom.id
|
|
27859
28097
|
}));
|
|
27860
28098
|
var pending = acceptPending || declinePending || privateRoomState.isAcceptingPrivateRoom;
|
|
28099
|
+
var roomPlatformToast = useRoomPlatformToast();
|
|
27861
28100
|
var whiteboard = integrations === null || integrations === void 0 ? void 0 : integrations.whiteboard;
|
|
27862
28101
|
var whiteboardAuth = (whiteboard === null || whiteboard === void 0 ? void 0 : whiteboard.joinState.available) ? whiteboard.joinState.auth : undefined;
|
|
27863
28102
|
return /*#__PURE__*/ jsxs(Fragment, {
|
|
@@ -27890,7 +28129,7 @@ function RoomPlatformPrivateRoomRuntime(param) {
|
|
|
27890
28129
|
disabled: pending,
|
|
27891
28130
|
onClick: function() {
|
|
27892
28131
|
return void privateRoomState.declinePrivateRoom().catch(function() {
|
|
27893
|
-
|
|
28132
|
+
roomPlatformToast.error('Không thể từ chối phòng riêng. Vui lòng thử lại.');
|
|
27894
28133
|
});
|
|
27895
28134
|
},
|
|
27896
28135
|
children: [
|
|
@@ -27929,7 +28168,7 @@ function RoomPlatformPrivateRoomRuntime(param) {
|
|
|
27929
28168
|
];
|
|
27930
28169
|
case 3:
|
|
27931
28170
|
_state.sent();
|
|
27932
|
-
|
|
28171
|
+
roomPlatformToast.error('Không thể vào phòng riêng. Vui lòng thử lại.');
|
|
27933
28172
|
return [
|
|
27934
28173
|
3,
|
|
27935
28174
|
5
|
|
@@ -27999,34 +28238,42 @@ function RoomPlatformPrivateRoomRuntime(param) {
|
|
|
27999
28238
|
]
|
|
28000
28239
|
});
|
|
28001
28240
|
}
|
|
28002
|
-
function
|
|
28003
|
-
var children = _0.children, extensions = _0.extensions, integrations = _0.integrations, isPracticeMode = _0.isPracticeMode, onExit = _0.onExit,
|
|
28241
|
+
function RoomPlatformRuntime(_0) {
|
|
28242
|
+
var children = _0.children, extensions = _0.extensions, integrations = _0.integrations, isPracticeMode = _0.isPracticeMode, onExit = _0.onExit, _0_sizing = _0.sizing, sizing = _0_sizing === void 0 ? 'viewport' : _0_sizing, providerProps = _object_without_properties(_0, [
|
|
28004
28243
|
"children",
|
|
28005
28244
|
"extensions",
|
|
28006
28245
|
"integrations",
|
|
28007
28246
|
"isPracticeMode",
|
|
28008
28247
|
"onExit",
|
|
28009
|
-
"primaryCameraSelector",
|
|
28010
|
-
"showLocalPreview",
|
|
28011
28248
|
"sizing"
|
|
28012
28249
|
]);
|
|
28013
|
-
return /*#__PURE__*/
|
|
28014
|
-
children:
|
|
28015
|
-
|
|
28016
|
-
|
|
28017
|
-
|
|
28018
|
-
|
|
28250
|
+
return /*#__PURE__*/ jsxs(RoomPlatformProvider, _object_spread_props(_object_spread({}, providerProps), {
|
|
28251
|
+
children: [
|
|
28252
|
+
/*#__PURE__*/ jsx(RoomPlatformPracticeModeMediaPolicy, {
|
|
28253
|
+
isPracticeMode: isPracticeMode
|
|
28254
|
+
}),
|
|
28255
|
+
/*#__PURE__*/ jsx(RoomPlatformMediaRuntime, {
|
|
28256
|
+
children: /*#__PURE__*/ jsx(RoomPlatformPrivateRoomRuntime, {
|
|
28019
28257
|
integrations: integrations,
|
|
28020
|
-
|
|
28021
|
-
|
|
28022
|
-
|
|
28023
|
-
|
|
28024
|
-
|
|
28258
|
+
children: children !== null && children !== void 0 ? children : /*#__PURE__*/ jsx(RoomPlatformWorkspace, {
|
|
28259
|
+
extensions: extensions,
|
|
28260
|
+
integrations: integrations,
|
|
28261
|
+
isPracticeMode: isPracticeMode,
|
|
28262
|
+
onExit: onExit,
|
|
28263
|
+
sizing: sizing
|
|
28264
|
+
})
|
|
28025
28265
|
})
|
|
28026
28266
|
})
|
|
28027
|
-
|
|
28267
|
+
]
|
|
28028
28268
|
}));
|
|
28029
28269
|
}
|
|
28270
|
+
function RoomPlatformRoom(props) {
|
|
28271
|
+
return /*#__PURE__*/ jsx(RoomPlatformShadowHost, {
|
|
28272
|
+
children: /*#__PURE__*/ jsx(RoomPlatformToastProvider, {
|
|
28273
|
+
children: /*#__PURE__*/ jsx(RoomPlatformRuntime, _object_spread({}, props))
|
|
28274
|
+
})
|
|
28275
|
+
});
|
|
28276
|
+
}
|
|
28030
28277
|
|
|
28031
28278
|
function RoomPlatformVideoTracks(param) {
|
|
28032
28279
|
var _param_status = param.status, status = _param_status === void 0 ? 'connected' : _param_status;
|