bigbluebutton-html-plugin-sdk 0.0.69 → 0.0.71
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 +101 -3
- package/dist/cjs/asset-persistence/enums.d.ts +6 -0
- package/dist/cjs/asset-persistence/enums.js +12 -0
- package/dist/cjs/asset-persistence/enums.js.map +1 -0
- package/dist/cjs/asset-persistence/hook.d.ts +2 -0
- package/dist/cjs/asset-persistence/hook.js +16 -0
- package/dist/cjs/asset-persistence/hook.js.map +1 -0
- package/dist/cjs/asset-persistence/types.d.ts +8 -0
- package/dist/cjs/asset-persistence/types.js +3 -0
- package/dist/cjs/asset-persistence/types.js.map +1 -0
- package/dist/cjs/core/api/BbbPluginSdk.js +2 -0
- package/dist/cjs/core/api/BbbPluginSdk.js.map +1 -1
- package/dist/cjs/core/api/types.d.ts +8 -0
- package/dist/cjs/data-consumption/domain/users/current-user/types.d.ts +5 -0
- package/dist/cjs/extensible-areas/actions-bar-item/component.d.ts +59 -10
- package/dist/cjs/extensible-areas/actions-bar-item/component.js +108 -26
- package/dist/cjs/extensible-areas/actions-bar-item/component.js.map +1 -1
- package/dist/cjs/extensible-areas/actions-bar-item/enums.d.ts +3 -1
- package/dist/cjs/extensible-areas/actions-bar-item/enums.js +2 -0
- package/dist/cjs/extensible-areas/actions-bar-item/enums.js.map +1 -1
- package/dist/cjs/extensible-areas/actions-bar-item/index.d.ts +2 -2
- package/dist/cjs/extensible-areas/actions-bar-item/index.js +4 -1
- package/dist/cjs/extensible-areas/actions-bar-item/index.js.map +1 -1
- package/dist/cjs/extensible-areas/actions-bar-item/types.d.ts +32 -1
- package/dist/cjs/ui-commands/camera/commands.d.ts +17 -0
- package/dist/cjs/ui-commands/camera/commands.js +36 -0
- package/dist/cjs/ui-commands/camera/commands.js.map +1 -0
- package/dist/cjs/ui-commands/camera/enums.d.ts +4 -0
- package/dist/cjs/ui-commands/camera/enums.js +9 -0
- package/dist/cjs/ui-commands/camera/enums.js.map +1 -0
- package/dist/cjs/ui-commands/camera/types.d.ts +11 -0
- package/dist/cjs/ui-commands/camera/types.js +3 -0
- package/dist/cjs/ui-commands/camera/types.js.map +1 -0
- package/dist/cjs/ui-commands/commands.d.ts +5 -0
- package/dist/cjs/ui-commands/commands.js +8 -6
- package/dist/cjs/ui-commands/commands.js.map +1 -1
- package/dist/cjs/ui-commands/notification/commands.d.ts +4 -0
- package/dist/cjs/ui-commands/notification/commands.js +8 -0
- package/dist/cjs/ui-commands/notification/commands.js.map +1 -1
- package/dist/cjs/ui-commands/notification/enums.d.ts +2 -1
- package/dist/cjs/ui-commands/notification/enums.js +2 -1
- package/dist/cjs/ui-commands/notification/enums.js.map +1 -1
- package/dist/cjs/ui-commands/notification/types.d.ts +4 -0
- package/dist/cjs/ui-commands/types.d.ts +2 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -4,10 +4,13 @@ This repository contains the SDK for developing BigBlueButton plugins.
|
|
|
4
4
|
Plugins are React components that can be loaded from external sources
|
|
5
5
|
by the BigBlueButton HTML5 client to extend its functionalities.
|
|
6
6
|
|
|
7
|
+
## Overview
|
|
8
|
+
|
|
9
|
+
An overview of the plugin architecture and capabilities can be found [here](https://github.com/bigbluebutton/plugins/blob/main/README.md#capabilities-and-technical-details).
|
|
10
|
+
|
|
7
11
|
## Examples
|
|
8
12
|
|
|
9
|
-
A variety of example implementations to manipulate different parts of the
|
|
10
|
-
BBB client can be found in the [`samples`](samples) folder.
|
|
13
|
+
A variety of example implementations to manipulate different parts of the BBB client can be found in the [`samples`](samples) folder.
|
|
11
14
|
|
|
12
15
|
## Usage
|
|
13
16
|
|
|
@@ -110,6 +113,44 @@ While the plugin can be hosted on any Server, it is also possible to host the bu
|
|
|
110
113
|
a BigBlueButton server. For that you copy `dist/SampleActionButtonDropdownPlugin.js` and `dist/manifest.json` to the folder `/var/www/bigbluebutton-default/assets/plugins/sampleActionButtonDropdownPlugin`.
|
|
111
114
|
In this case, the your manifest URL will be `https://<your-host>/plugins/sampleActionButtonDropdownPlugin/manifest.json`.
|
|
112
115
|
|
|
116
|
+
### Manifest Json
|
|
117
|
+
|
|
118
|
+
Here is as complete `manifet.json` example with all possible configurations:
|
|
119
|
+
|
|
120
|
+
```json
|
|
121
|
+
{
|
|
122
|
+
"requiredSdkVersion": "~0.0.59",
|
|
123
|
+
"name": "MyPlugin",
|
|
124
|
+
"javascriptEntrypointUrl": "MyPlugin.js",
|
|
125
|
+
"localesBaseUrl": "https://cdn.domain.com/my-plugin/", // Optional
|
|
126
|
+
"dataChannels":[
|
|
127
|
+
{
|
|
128
|
+
"name": "public-channel",
|
|
129
|
+
"pushPermission": ["moderator","presenter"], // "moderator","presenter", "all"
|
|
130
|
+
"replaceOrDeletePermission": ["moderator", "creator"] // "moderator", "presenter","all", "creator"
|
|
131
|
+
}
|
|
132
|
+
], // One can enable more data-channels to better organize client communication
|
|
133
|
+
"eventPersistence": {
|
|
134
|
+
"isEnabled": true, // By default it is not enabled
|
|
135
|
+
"maximumPayloadSizeInBytes": 1024,
|
|
136
|
+
"rateLimiting": {
|
|
137
|
+
"messagesAllowedPerSecond": 10,
|
|
138
|
+
"messagesAllowedPerMinute": 20
|
|
139
|
+
}
|
|
140
|
+
},
|
|
141
|
+
"remoteDataSources": [
|
|
142
|
+
{
|
|
143
|
+
"name": "allUsers",
|
|
144
|
+
"url": "${meta_pluginSettingsUserInformation}",
|
|
145
|
+
"fetchMode": "onMeetingCreate",
|
|
146
|
+
"permissions": ["moderator", "viewer"]
|
|
147
|
+
}
|
|
148
|
+
]
|
|
149
|
+
}
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
To better understand remote-data-sources, please, refer to [this section](#external-data-resources)
|
|
153
|
+
|
|
113
154
|
## API
|
|
114
155
|
|
|
115
156
|
### Extensible UI areas
|
|
@@ -303,7 +344,7 @@ See usage ahead:
|
|
|
303
344
|
|
|
304
345
|
So the idea is that we have a `uiCommands` object and at a point, there will be the command to do the intended action, such as open the chat form and/or fill it, as demonstrated above
|
|
305
346
|
|
|
306
|
-
|
|
347
|
+
### Server Commands
|
|
307
348
|
|
|
308
349
|
`serverCommands` object: It contains all the possible commands available to the developer to interact with the BBB core server, see the ones implemented down below:
|
|
309
350
|
|
|
@@ -386,6 +427,63 @@ pluginApi.getRemoteData('allUsers').then((response: Response) => {
|
|
|
386
427
|
});
|
|
387
428
|
```
|
|
388
429
|
|
|
430
|
+
### Event persistence
|
|
431
|
+
|
|
432
|
+
This feature will allow the developer to save an information (which is basically an event) in the `event.xml` file of the meeting if it's being recorded.
|
|
433
|
+
|
|
434
|
+
To use it, one first need to add the following lines to their `manifest.json`:
|
|
435
|
+
|
|
436
|
+
```json
|
|
437
|
+
{
|
|
438
|
+
// ...rest of manifest configuration
|
|
439
|
+
"eventPersistence": {
|
|
440
|
+
"isEnabled": true,
|
|
441
|
+
"maximumPayloadSizeInBytes": 1024,
|
|
442
|
+
"rateLimiting": {
|
|
443
|
+
"messagesAllowedPerSecond": 10,
|
|
444
|
+
"messagesAllowedPerMinute": 20
|
|
445
|
+
}
|
|
446
|
+
}
|
|
447
|
+
}
|
|
448
|
+
```
|
|
449
|
+
|
|
450
|
+
Then, the API in the SDK for that is:
|
|
451
|
+
|
|
452
|
+
```ts
|
|
453
|
+
pluginApi.persistEvent(eventName: string, payloadJson: Object);
|
|
454
|
+
```
|
|
455
|
+
|
|
456
|
+
See example in the `sample-use-meeting` plugin here in this repository. It is as follows:
|
|
457
|
+
|
|
458
|
+
```ts
|
|
459
|
+
useEffect(() => {
|
|
460
|
+
setInterval(() => {
|
|
461
|
+
pluginLogger.info('persisting event');
|
|
462
|
+
pluginApi.persistEvent('eventFromUseMeetingSample', { foo: 'bar' });
|
|
463
|
+
}, 5000);
|
|
464
|
+
}, []);
|
|
465
|
+
```
|
|
466
|
+
|
|
467
|
+
After the meeting is ended (considering it has been recorded), one can simply do the following steps to see the events:
|
|
468
|
+
|
|
469
|
+
In the server terminal run:
|
|
470
|
+
```bash
|
|
471
|
+
sudo updatedb
|
|
472
|
+
vi $(locate events.xml | grep <meeting-id>)
|
|
473
|
+
```
|
|
474
|
+
|
|
475
|
+
Where `<meeting-id>` is the id of the the meeting you just recorded. Then, amongst all the other events in the file, if you search it, you will find the following:
|
|
476
|
+
|
|
477
|
+
```xml
|
|
478
|
+
<event timestamp="25004947" module="PLUGIN" eventname="PluginGeneratedEvent">
|
|
479
|
+
<payloadJson>{"foo":"bar"}</payloadJson>
|
|
480
|
+
<pluginEventName>eventFromUseMeetingSample</pluginEventName>
|
|
481
|
+
<date>2024-10-30T18:00:11.929Z</date>
|
|
482
|
+
<pluginName>SampleUseMeeting</pluginName>
|
|
483
|
+
<userId>w_sxlfjbcb0yxs</userId>
|
|
484
|
+
<timestampUTC>1730311211929</timestampUTC>
|
|
485
|
+
</event>
|
|
486
|
+
```
|
|
389
487
|
|
|
390
488
|
### Frequently Asked Questions (FAQ)
|
|
391
489
|
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AssetType = exports.AssetPersistenceEvents = void 0;
|
|
4
|
+
var AssetPersistenceEvents;
|
|
5
|
+
(function (AssetPersistenceEvents) {
|
|
6
|
+
AssetPersistenceEvents["ASSET_PERSISTED"] = "PLUGIN_ASSET_PERSISTED";
|
|
7
|
+
})(AssetPersistenceEvents || (exports.AssetPersistenceEvents = AssetPersistenceEvents = {}));
|
|
8
|
+
var AssetType;
|
|
9
|
+
(function (AssetType) {
|
|
10
|
+
AssetType["PRESENTATION"] = "PLUGIN_ASSET_PERSISTENCE_TYPE_PRESENTATION";
|
|
11
|
+
})(AssetType || (exports.AssetType = AssetType = {}));
|
|
12
|
+
//# sourceMappingURL=enums.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../src/asset-persistence/enums.ts"],"names":[],"mappings":";;;AAAA,IAAY,sBAEX;AAFD,WAAY,sBAAsB;IAChC,oEAA0C,CAAA;AAC5C,CAAC,EAFW,sBAAsB,sCAAtB,sBAAsB,QAEjC;AAED,IAAY,SAEX;AAFD,WAAY,SAAS;IACnB,wEAA2D,CAAA;AAC7D,CAAC,EAFW,SAAS,yBAAT,SAAS,QAEpB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.persistAssetFunctionWrapper = void 0;
|
|
4
|
+
var enums_1 = require("./enums");
|
|
5
|
+
var persistAssetFunctionWrapper = function (pluginName, assetUrl, typeOfAsset, assetName) {
|
|
6
|
+
window.dispatchEvent(new CustomEvent(enums_1.AssetPersistenceEvents.ASSET_PERSISTED, {
|
|
7
|
+
detail: {
|
|
8
|
+
pluginName: pluginName,
|
|
9
|
+
assetUrl: assetUrl,
|
|
10
|
+
typeOfAsset: typeOfAsset,
|
|
11
|
+
assetName: assetName,
|
|
12
|
+
},
|
|
13
|
+
}));
|
|
14
|
+
};
|
|
15
|
+
exports.persistAssetFunctionWrapper = persistAssetFunctionWrapper;
|
|
16
|
+
//# sourceMappingURL=hook.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hook.js","sourceRoot":"","sources":["../../../src/asset-persistence/hook.ts"],"names":[],"mappings":";;;AAGA,iCAA4D;AAErD,IAAM,2BAA2B,GAAG,UACzC,UAAkB,EAClB,QAAgB,EAChB,WAAsB,EACtB,SAAkB;IAElB,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CACU,8BAAsB,CAAC,eAAe,EAAE;QAC/D,MAAM,EAAE;YACN,UAAU,YAAA;YACV,QAAQ,UAAA;YACR,WAAW,aAAA;YACX,SAAS,WAAA;SACV;KACF,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAjBW,QAAA,2BAA2B,+BAiBtC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AssetType } from './enums';
|
|
2
|
+
export interface AssetPersistenceDetails {
|
|
3
|
+
pluginName: string;
|
|
4
|
+
assetUrl: string;
|
|
5
|
+
typeOfAsset: AssetType;
|
|
6
|
+
assetName?: string;
|
|
7
|
+
}
|
|
8
|
+
export type PersistAssetFunction = (assetUrl: string, typeOfAsset: AssetType, assetName?: string) => void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/asset-persistence/types.ts"],"names":[],"mappings":""}
|
|
@@ -24,6 +24,7 @@ var commands_2 = require("../../server-commands/commands");
|
|
|
24
24
|
var hooks_13 = require("../../learning-analytics-dashboard/hooks");
|
|
25
25
|
var utils_1 = require("../../remote-data/utils");
|
|
26
26
|
var hooks_14 = require("../../event-persistence/hooks");
|
|
27
|
+
var hook_1 = require("../../asset-persistence/hook");
|
|
27
28
|
/**
|
|
28
29
|
* Class responsible for either initialize or get the PluginApi
|
|
29
30
|
*
|
|
@@ -73,6 +74,7 @@ var BbbPluginSdk = /** @class */ (function () {
|
|
|
73
74
|
pluginApi.sendGenericDataForLearningAnalyticsDashboard = function (data) { return (0, hooks_13.sendGenericDataForLearningAnalyticsDashboard)(data, pluginName); };
|
|
74
75
|
pluginApi.getRemoteData = function (dataSourceName) { return (0, utils_1.getRemoteData)(dataSourceName, pluginName); };
|
|
75
76
|
pluginApi.persistEvent = function (eventName, payload) { return (0, hooks_14.persistEventFunctionWrapper)(pluginName, eventName, payload); };
|
|
77
|
+
pluginApi.persistAsset = function (assetUrl, typeOfAsset, assetName) { return (0, hook_1.persistAssetFunctionWrapper)(pluginName, assetUrl, typeOfAsset, assetName); };
|
|
76
78
|
}
|
|
77
79
|
else {
|
|
78
80
|
throw new Error('Plugin name not set');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BbbPluginSdk.js","sourceRoot":"","sources":["../../../../src/core/api/BbbPluginSdk.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,+BAAkC;AAOlC,kDAA4D;AAO5D,uDAAwD;AAQxD,kDAAiE;AACjE,gGAEgF;AAChF,wFAEwE;AACxE,oFAA+F;AAC/F,gFAAwF;AACxF,oFAA+F;AAC/F,4DAAoE;AACpE,uDAA0D;AAC1D,mEAA2E;AAE3E,uFAAsG;AACtG,2EAA8F;AAC9F,0EAA4F;AAE5F,2FAAuG;AACvG,oDAAsD;AAEtD,gFAAmF;AACnF,2DAAgE;AAChE,mEAAwG;AAExG,iDAAwD;AACxD,wDAA4E;
|
|
1
|
+
{"version":3,"file":"BbbPluginSdk.js","sourceRoot":"","sources":["../../../../src/core/api/BbbPluginSdk.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,+BAAkC;AAOlC,kDAA4D;AAO5D,uDAAwD;AAQxD,kDAAiE;AACjE,gGAEgF;AAChF,wFAEwE;AACxE,oFAA+F;AAC/F,gFAAwF;AACxF,oFAA+F;AAC/F,4DAAoE;AACpE,uDAA0D;AAC1D,mEAA2E;AAE3E,uFAAsG;AACtG,2EAA8F;AAC9F,0EAA4F;AAE5F,2FAAuG;AACvG,oDAAsD;AAEtD,gFAAmF;AACnF,2DAAgE;AAChE,mEAAwG;AAExG,iDAAwD;AACxD,wDAA4E;AAC5E,qDAA2E;AAK3E;;;;;;GAMG;AACH;IAAA;IAyIA,CAAC;IAxIC;;;;;;;;;;OAUG;IACW,uBAAU,GAAxB,UAAyB,IAAY;QACnC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,wFAAwF,CAAC,CAAC;QAC1I,IAAM,SAAS,GAAc,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACtD,SAAS,CAAC,qBAAqB,GAAG,CAAC,UACjC,KAAa,EACb,sBAAsD,IACnD,OAAA,IAAA,6BAAqB,EAAC,KAAK,EAAE,sBAAsB,CAAC,EAApD,CAAoD,CAAkC,CAAC;QAC5F,SAAS,CAAC,sBAAsB,GAAG,CACjC,cAAM,OAAA,IAAA,8BAAsB,GAAE,EAAxB,CAAwB,CAAmC,CAAC;QACpE,SAAS,CAAC,iBAAiB,GAAG,CAAC,cAAM,OAAA,IAAA,yBAAiB,GAAE,EAAnB,CAAmB,CAA8B,CAAC;QACvF,SAAS,CAAC,cAAc,GAAG,CAAC,cAAM,OAAA,IAAA,sBAAc,GAAE,EAAhB,CAAgB,CAA2B,CAAC;QAC9E,SAAS,CAAC,UAAU,GAAG,CAAC,cAAM,OAAA,IAAA,mBAAU,GAAE,EAAZ,CAAY,CAAuB,CAAC;QAClE,SAAS,CAAC,iBAAiB,GAAG,CAAC,cAAM,OAAA,IAAA,yBAAiB,GAAE,EAAnB,CAAmB,CAA8B,CAAC;QACvF,SAAS,CAAC,mBAAmB,GAAG,CAAC,cAAM,OAAA,IAAA,4BAAmB,GAAE,EAArB,CAAqB,CAAgC,CAAC;QAC7F,SAAS,CAAC,qBAAqB,GAAG,CAChC,cAAM,OAAA,IAAA,6BAAqB,GAAE,EAAvB,CAAuB,CAAkC,CAAC;QAClE,SAAS,CAAC,yBAAyB,GAAG,UACpC,UAAoB,IACjB,OAAA,IAAA,iCAAyB,EAAC,UAAU,EAAE,IAAI,CAAC,EAA3C,CAA2C,CAAC;QACjD,SAAS,CAAC,wBAAwB,GAAG,UACnC,SAAmB,IAChB,OAAA,IAAA,gCAAwB,EAAC,SAAS,EAAE,IAAI,CAAC,EAAzC,CAAyC,CAAC;QAC/C,SAAS,CAAC,UAAU,GAAG,qBAAU,CAAC;QAClC,SAAS,CAAC,SAAS,GAAG,kBAAS,CAAC;QAChC,IAAM,UAAU,GAAG,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,UAAU,CAAC;QACzC,IAAI,UAAU,EAAE;YACd,SAAS,CAAC,cAAc,GAAG,CAAC,UAC1B,WAAmB,EACnB,eAA8D,EAC9D,cAAkC;gBADlC,gCAAA,EAAA,kBAAoC,wBAAgB,CAAC,SAAS;gBAC9D,+BAAA,EAAA,0BAAkC;gBAC/B,OAAA,IAAA,6BAAqB,EACxB,WAAW,EACX,cAAc,EACd,UAAU,EACV,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,EACxB,eAAe,CAChB;YANI,CAMJ,CAAwC,CAAC;YAC1C,SAAS,CAAC,iBAAiB,GAAG,cAAM,OAAA,IAAA,4BAAiB,EAAC,UAAU,CAAC,EAA7B,CAA6B,CAAC;YAClE,SAAS,CAAC,cAAc,GAAG,IAAA,yBAAc,EAAC,UAAU,CAAC,CAAC;YACtD,SAAS,CAAC,4CAA4C,GAAG,UACvD,IAA8C,IAC3C,OAAA,IAAA,qDAA4C,EAAC,IAAI,EAAE,UAAU,CAAC,EAA9D,CAA8D,CAAC;YACpE,SAAS,CAAC,aAAa,GAAG,UACxB,cAAsB,IACnB,OAAA,IAAA,qBAAa,EAAC,cAAc,EAAE,UAAU,CAAC,EAAzC,CAAyC,CAAC;YAC/C,SAAS,CAAC,YAAY,GAAG,UACvB,SAAiB,EACjB,OAAU,IACP,OAAA,IAAA,oCAA2B,EAC5B,UAAU,EACV,SAAS,EACT,OAAO,CACR,EAJE,CAIF,CAAC;YACJ,SAAS,CAAC,YAAY,GAAG,UACvB,QAAgB,EAChB,WAAsB,EACtB,SAAkB,IACf,OAAA,IAAA,kCAA2B,EAC9B,UAAU,EACV,QAAQ,EACR,WAAW,EACX,SAAS,CACV,EALI,CAKJ,CAAC;SACH;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;SACxC;IACH,CAAC;IAEc,+BAAkB,GAAjC;QACE,IAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC;QACzB,IAAI;YACF,OAAO,CAAC,KAAK,GAAG,cAAO,CAAC,CAAC;YACzB,IAAA,iBAAS,EAAC,cAAO,CAAC,EAAE,EAAE,CAAC,CAAC;SACzB;QAAC,WAAM;YACN,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;YACnB,OAAO,CAAC,KAAK,CAAC,8GAA8G,CAAC,CAAC;YAC9H,OAAO,KAAK,CAAC;SACd;QACD,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;OAYG;IACW,yBAAY,GAA1B,UAA2B,IAAY,EAAE,UAAmB;QAC1D,IAAI,CAAC,MAAM,CAAC,WAAW;YAAE,MAAM,CAAC,WAAW,GAAG,EAAE,CAAC;QACjD,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE;YACxD,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG;gBACzB,wBAAwB,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBAClC,2BAA2B,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBACrC,4BAA4B,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBACtC,kBAAkB,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBAC5B,6BAA6B,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBACvC,4BAA4B,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBACtC,cAAc,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBACxB,yBAAyB,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBACnC,wBAAwB,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBAClC,uBAAuB,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBACjC,8BAA8B,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBACxC,0BAA0B,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBACpC,oCAAoC,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBAC9C,kBAAkB,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBAC5B,sBAAsB,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBAChC,uBAAuB,EAAE;oBACvB,EAAE,EAAE,cAAO,CAAC;iBACb;gBACD,eAAe,EAAE,cAAM,OAAA,IAAA,wBAAe,GAAE,EAAjB,CAAiB;gBACxC,UAAU,EAAE,UAAC,MAAM,IAAK,OAAA,IAAA,mBAAU,EAAC,MAAM,CAAC,EAAlB,CAAkB;gBAC1C,UAAU,YAAA;aACX,CAAC;SACH;QAED,OAAO,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IACH,mBAAC;AAAD,CAAC,AAzID,IAyIC;AAzIqB,oCAAY"}
|
|
@@ -32,6 +32,7 @@ import { UseUserCameraDomElementsFunction } from '../../dom-element-manipulation
|
|
|
32
32
|
import { ScreenshareHelperInterface, UserCameraHelperInterface } from '../../extensible-areas';
|
|
33
33
|
import { GetDataSource } from '../../remote-data/types';
|
|
34
34
|
import { PersistEventFunction } from '../../event-persistence/types';
|
|
35
|
+
import { PersistAssetFunction } from '../../asset-persistence/types';
|
|
35
36
|
export type SetPresentationToolbarItems = (presentationToolbarItem: PresentationToolbarInterface[]) => string[];
|
|
36
37
|
export type SetUserListDropdownItems = (userListDropdownItem: UserListDropdownInterface[]) => string[];
|
|
37
38
|
export type SetActionButtonDropdownItems = (actionButtonDropdownInterface: ActionButtonDropdownInterface[]) => string[];
|
|
@@ -208,6 +209,13 @@ export interface PluginApi {
|
|
|
208
209
|
*
|
|
209
210
|
*/
|
|
210
211
|
persistEvent?: PersistEventFunction;
|
|
212
|
+
/**
|
|
213
|
+
* Persists assets to the current meeting, e.g.: presentation.
|
|
214
|
+
*
|
|
215
|
+
* @param payload - payload to be persisted in `events.xml`
|
|
216
|
+
*
|
|
217
|
+
*/
|
|
218
|
+
persistAsset?: PersistAssetFunction;
|
|
211
219
|
}
|
|
212
220
|
export interface PluginBrowserWindow extends Window {
|
|
213
221
|
bbb_plugins: {
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import { GraphqlResponseWrapper } from '../../../../core';
|
|
2
|
+
export interface Camera {
|
|
3
|
+
streamId: string;
|
|
4
|
+
}
|
|
2
5
|
export interface CurrentUserData {
|
|
3
6
|
userId: string;
|
|
7
|
+
extId: string;
|
|
4
8
|
name: string;
|
|
5
9
|
role: string;
|
|
6
10
|
presenter: boolean;
|
|
11
|
+
cameras: Camera[];
|
|
7
12
|
}
|
|
8
13
|
export type UseCurrentUserFunction = () => GraphqlResponseWrapper<CurrentUserData> | undefined;
|
|
@@ -1,11 +1,16 @@
|
|
|
1
|
+
import { ChangeEvent, MouseEvent } from 'react';
|
|
1
2
|
import { ActionsBarPosition, ActionsBarItemType } from './enums';
|
|
2
|
-
import { ActionsBarInterface, ActionsBarButtonProps, ActionsBarSeparatorProps } from './types';
|
|
3
|
-
|
|
3
|
+
import { ActionsBarInterface, ActionsBarItemProps, ActionsBarButtonProps, ActionsBarSeparatorProps, ActionsBarSelectorProps, SelectOption, ToggleGroupOption, ActionsBarToggleGroupProps } from './types';
|
|
4
|
+
declare class ActionsBarItem implements ActionsBarInterface {
|
|
4
5
|
id: string;
|
|
5
6
|
type: ActionsBarItemType;
|
|
7
|
+
position: ActionsBarPosition;
|
|
8
|
+
constructor({ id, type, position, }: ActionsBarItemProps);
|
|
9
|
+
setItemId(id: string): void;
|
|
10
|
+
}
|
|
11
|
+
export declare class ActionsBarButton extends ActionsBarItem {
|
|
6
12
|
icon: string;
|
|
7
13
|
tooltip: string;
|
|
8
|
-
position: ActionsBarPosition;
|
|
9
14
|
onClick: () => void;
|
|
10
15
|
/**
|
|
11
16
|
* Returns object to be used in the setter for action bar. In this case,
|
|
@@ -19,20 +24,64 @@ export declare class ActionsBarButton implements ActionsBarInterface {
|
|
|
19
24
|
* @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
|
|
20
25
|
*/
|
|
21
26
|
constructor({ id, icon, tooltip, onClick, position, }: ActionsBarButtonProps);
|
|
22
|
-
setItemId: (id: string) => void;
|
|
23
27
|
}
|
|
24
|
-
export declare class ActionsBarSeparator
|
|
25
|
-
|
|
26
|
-
id: string;
|
|
27
|
-
type: ActionsBarItemType;
|
|
28
|
+
export declare class ActionsBarSeparator extends ActionsBarItem {
|
|
29
|
+
icon: string;
|
|
28
30
|
/**
|
|
29
31
|
* Returns object to be used in the setter for action bar. In this case,
|
|
30
32
|
* a separator.
|
|
31
33
|
*
|
|
32
34
|
* @param position - position that this button will be displayed, see {@link ActionsBarPosition}
|
|
35
|
+
* @param icon - Icon to be displayed as the separator. If not provided, the default separator
|
|
36
|
+
* (a vertical bar) will be displayed.
|
|
37
|
+
*
|
|
38
|
+
* @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
|
|
39
|
+
*/
|
|
40
|
+
constructor({ position, icon, }: ActionsBarSeparatorProps);
|
|
41
|
+
}
|
|
42
|
+
export declare class ActionsBarSelector extends ActionsBarItem {
|
|
43
|
+
title: string;
|
|
44
|
+
options: SelectOption[];
|
|
45
|
+
defaultOption: SelectOption;
|
|
46
|
+
onChange: (value: string | number, event: ChangeEvent<HTMLInputElement>) => void;
|
|
47
|
+
width: number;
|
|
48
|
+
/**
|
|
49
|
+
* Returns object to be used in the setter for action bar. In this case,
|
|
50
|
+
* a selector.
|
|
51
|
+
*
|
|
52
|
+
* @param title - title to be used in the selector for the actions bar
|
|
53
|
+
* @param options - an array of options to be available in the selector
|
|
54
|
+
* @param defaultOption - the option to be initially selected, if not present, the first option is
|
|
55
|
+
* selected
|
|
56
|
+
* @param onChange - function to be called when selected value changes
|
|
57
|
+
* @param position - position that this button will be displayed, see {@link ActionsBarPosition}
|
|
58
|
+
* @param width - desired width for the selector in px, default is 140
|
|
59
|
+
*
|
|
60
|
+
* @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
|
|
61
|
+
*/
|
|
62
|
+
constructor({ id, title, options, defaultOption, onChange, position, width, }: ActionsBarSelectorProps);
|
|
63
|
+
}
|
|
64
|
+
export declare class ActionsBarToggleGroup extends ActionsBarItem {
|
|
65
|
+
title: string;
|
|
66
|
+
exclusive: boolean;
|
|
67
|
+
options: ToggleGroupOption[];
|
|
68
|
+
defaultOption: ToggleGroupOption;
|
|
69
|
+
onChange: (values: string | number | string[] | number[], event: MouseEvent<HTMLElement>) => void;
|
|
70
|
+
/**
|
|
71
|
+
* Returns object to be used in the setter for action bar. In this case,
|
|
72
|
+
* a toggle group.
|
|
73
|
+
*
|
|
74
|
+
* @param title - title to be used in the selector for the actions bar
|
|
75
|
+
* @param exclusive - whether the toggle group should be exclusive or not - allow checking
|
|
76
|
+
* multiple options
|
|
77
|
+
* @param options - an array of options to be available in the toggle group
|
|
78
|
+
* @param defaultOption - the option to be initially checked, if not present, the first option is
|
|
79
|
+
* checked
|
|
80
|
+
* @param onChange - function to be called when checked value changes
|
|
81
|
+
* @param position - position that this button will be displayed, see {@link ActionsBarPosition}
|
|
33
82
|
*
|
|
34
83
|
* @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
|
|
35
84
|
*/
|
|
36
|
-
constructor({ position, }:
|
|
37
|
-
setItemId: (id: string) => void;
|
|
85
|
+
constructor({ id, title, exclusive, options, defaultOption, onChange, position, }: ActionsBarToggleGroupProps);
|
|
38
86
|
}
|
|
87
|
+
export {};
|
|
@@ -1,9 +1,40 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
2
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ActionsBarSeparator = exports.ActionsBarButton = void 0;
|
|
18
|
+
exports.ActionsBarToggleGroup = exports.ActionsBarSelector = exports.ActionsBarSeparator = exports.ActionsBarButton = void 0;
|
|
4
19
|
var enums_1 = require("./enums");
|
|
5
20
|
// ActionsBar Extensible Area
|
|
6
|
-
var
|
|
21
|
+
var ActionsBarItem = /** @class */ (function () {
|
|
22
|
+
function ActionsBarItem(_a) {
|
|
23
|
+
var id = _a.id, type = _a.type, _b = _a.position, position = _b === void 0 ? enums_1.ActionsBarPosition.RIGHT : _b;
|
|
24
|
+
this.id = '';
|
|
25
|
+
if (id) {
|
|
26
|
+
this.id = id;
|
|
27
|
+
}
|
|
28
|
+
this.type = type;
|
|
29
|
+
this.position = position;
|
|
30
|
+
}
|
|
31
|
+
ActionsBarItem.prototype.setItemId = function (id) {
|
|
32
|
+
this.id = "ActionsBar".concat(this.type, "_").concat(id);
|
|
33
|
+
};
|
|
34
|
+
return ActionsBarItem;
|
|
35
|
+
}());
|
|
36
|
+
var ActionsBarButton = /** @class */ (function (_super) {
|
|
37
|
+
__extends(ActionsBarButton, _super);
|
|
7
38
|
/**
|
|
8
39
|
* Returns object to be used in the setter for action bar. In this case,
|
|
9
40
|
* a button.
|
|
@@ -17,43 +48,94 @@ var ActionsBarButton = /** @class */ (function () {
|
|
|
17
48
|
*/
|
|
18
49
|
function ActionsBarButton(_a) {
|
|
19
50
|
var id = _a.id, _b = _a.icon, icon = _b === void 0 ? '' : _b, _c = _a.tooltip, tooltip = _c === void 0 ? '' : _c, _d = _a.onClick, onClick = _d === void 0 ? function () { } : _d, _e = _a.position, position = _e === void 0 ? enums_1.ActionsBarPosition.RIGHT : _e;
|
|
20
|
-
var _this = this;
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
if (id) {
|
|
26
|
-
this.id = id;
|
|
27
|
-
}
|
|
28
|
-
this.icon = icon;
|
|
29
|
-
this.tooltip = tooltip;
|
|
30
|
-
this.onClick = onClick;
|
|
31
|
-
this.position = position;
|
|
32
|
-
this.type = enums_1.ActionsBarItemType.BUTTON;
|
|
51
|
+
var _this = _super.call(this, { id: id, type: enums_1.ActionsBarItemType.BUTTON, position: position }) || this;
|
|
52
|
+
_this.icon = icon;
|
|
53
|
+
_this.tooltip = tooltip;
|
|
54
|
+
_this.onClick = onClick;
|
|
55
|
+
return _this;
|
|
33
56
|
}
|
|
34
57
|
return ActionsBarButton;
|
|
35
|
-
}());
|
|
58
|
+
}(ActionsBarItem));
|
|
36
59
|
exports.ActionsBarButton = ActionsBarButton;
|
|
37
|
-
var ActionsBarSeparator = /** @class */ (function () {
|
|
60
|
+
var ActionsBarSeparator = /** @class */ (function (_super) {
|
|
61
|
+
__extends(ActionsBarSeparator, _super);
|
|
38
62
|
/**
|
|
39
63
|
* Returns object to be used in the setter for action bar. In this case,
|
|
40
64
|
* a separator.
|
|
41
65
|
*
|
|
42
66
|
* @param position - position that this button will be displayed, see {@link ActionsBarPosition}
|
|
67
|
+
* @param icon - Icon to be displayed as the separator. If not provided, the default separator
|
|
68
|
+
* (a vertical bar) will be displayed.
|
|
43
69
|
*
|
|
44
70
|
* @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
|
|
45
71
|
*/
|
|
46
72
|
function ActionsBarSeparator(_a) {
|
|
47
|
-
var _b = _a.position, position = _b === void 0 ? enums_1.ActionsBarPosition.RIGHT : _b;
|
|
48
|
-
var _this = this;
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
_this.id = "ActionsBarSeparator_".concat(id);
|
|
52
|
-
};
|
|
53
|
-
this.position = position;
|
|
54
|
-
this.type = enums_1.ActionsBarItemType.SEPARATOR;
|
|
73
|
+
var _b = _a.position, position = _b === void 0 ? enums_1.ActionsBarPosition.RIGHT : _b, _c = _a.icon, icon = _c === void 0 ? '' : _c;
|
|
74
|
+
var _this = _super.call(this, { type: enums_1.ActionsBarItemType.SEPARATOR, position: position }) || this;
|
|
75
|
+
_this.icon = icon;
|
|
76
|
+
return _this;
|
|
55
77
|
}
|
|
56
78
|
return ActionsBarSeparator;
|
|
57
|
-
}());
|
|
79
|
+
}(ActionsBarItem));
|
|
58
80
|
exports.ActionsBarSeparator = ActionsBarSeparator;
|
|
81
|
+
var ActionsBarSelector = /** @class */ (function (_super) {
|
|
82
|
+
__extends(ActionsBarSelector, _super);
|
|
83
|
+
/**
|
|
84
|
+
* Returns object to be used in the setter for action bar. In this case,
|
|
85
|
+
* a selector.
|
|
86
|
+
*
|
|
87
|
+
* @param title - title to be used in the selector for the actions bar
|
|
88
|
+
* @param options - an array of options to be available in the selector
|
|
89
|
+
* @param defaultOption - the option to be initially selected, if not present, the first option is
|
|
90
|
+
* selected
|
|
91
|
+
* @param onChange - function to be called when selected value changes
|
|
92
|
+
* @param position - position that this button will be displayed, see {@link ActionsBarPosition}
|
|
93
|
+
* @param width - desired width for the selector in px, default is 140
|
|
94
|
+
*
|
|
95
|
+
* @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
|
|
96
|
+
*/
|
|
97
|
+
function ActionsBarSelector(_a) {
|
|
98
|
+
var id = _a.id, _b = _a.title, title = _b === void 0 ? '' : _b, _c = _a.options, options = _c === void 0 ? [] : _c, _d = _a.defaultOption, defaultOption = _d === void 0 ? options[0] : _d, _e = _a.onChange, onChange = _e === void 0 ? function () { } : _e, _f = _a.position, position = _f === void 0 ? enums_1.ActionsBarPosition.RIGHT : _f, _g = _a.width, width = _g === void 0 ? 140 : _g;
|
|
99
|
+
var _this = _super.call(this, { id: id, type: enums_1.ActionsBarItemType.SELECTOR, position: position }) || this;
|
|
100
|
+
_this.width = 145;
|
|
101
|
+
_this.title = title;
|
|
102
|
+
_this.options = options;
|
|
103
|
+
_this.defaultOption = defaultOption;
|
|
104
|
+
_this.onChange = onChange;
|
|
105
|
+
_this.width = width;
|
|
106
|
+
return _this;
|
|
107
|
+
}
|
|
108
|
+
return ActionsBarSelector;
|
|
109
|
+
}(ActionsBarItem));
|
|
110
|
+
exports.ActionsBarSelector = ActionsBarSelector;
|
|
111
|
+
var ActionsBarToggleGroup = /** @class */ (function (_super) {
|
|
112
|
+
__extends(ActionsBarToggleGroup, _super);
|
|
113
|
+
/**
|
|
114
|
+
* Returns object to be used in the setter for action bar. In this case,
|
|
115
|
+
* a toggle group.
|
|
116
|
+
*
|
|
117
|
+
* @param title - title to be used in the selector for the actions bar
|
|
118
|
+
* @param exclusive - whether the toggle group should be exclusive or not - allow checking
|
|
119
|
+
* multiple options
|
|
120
|
+
* @param options - an array of options to be available in the toggle group
|
|
121
|
+
* @param defaultOption - the option to be initially checked, if not present, the first option is
|
|
122
|
+
* checked
|
|
123
|
+
* @param onChange - function to be called when checked value changes
|
|
124
|
+
* @param position - position that this button will be displayed, see {@link ActionsBarPosition}
|
|
125
|
+
*
|
|
126
|
+
* @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
|
|
127
|
+
*/
|
|
128
|
+
function ActionsBarToggleGroup(_a) {
|
|
129
|
+
var id = _a.id, _b = _a.title, title = _b === void 0 ? '' : _b, _c = _a.exclusive, exclusive = _c === void 0 ? true : _c, _d = _a.options, options = _d === void 0 ? [] : _d, _e = _a.defaultOption, defaultOption = _e === void 0 ? options[0] : _e, _f = _a.onChange, onChange = _f === void 0 ? function () { } : _f, _g = _a.position, position = _g === void 0 ? enums_1.ActionsBarPosition.RIGHT : _g;
|
|
130
|
+
var _this = _super.call(this, { id: id, type: enums_1.ActionsBarItemType.TOGGLE_GROUP, position: position }) || this;
|
|
131
|
+
_this.title = title;
|
|
132
|
+
_this.exclusive = exclusive;
|
|
133
|
+
_this.options = options;
|
|
134
|
+
_this.defaultOption = defaultOption;
|
|
135
|
+
_this.onChange = onChange;
|
|
136
|
+
return _this;
|
|
137
|
+
}
|
|
138
|
+
return ActionsBarToggleGroup;
|
|
139
|
+
}(ActionsBarItem));
|
|
140
|
+
exports.ActionsBarToggleGroup = ActionsBarToggleGroup;
|
|
59
141
|
//# sourceMappingURL=component.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/actions-bar-item/component.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/actions-bar-item/component.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
export declare enum ActionsBarItemType {
|
|
2
2
|
BUTTON = "ACTIONS_BAR_BUTTON",
|
|
3
|
-
SEPARATOR = "ACTIONS_BAR_SEPARATOR"
|
|
3
|
+
SEPARATOR = "ACTIONS_BAR_SEPARATOR",
|
|
4
|
+
SELECTOR = "ACTIONS_BAR_SELECTOR",
|
|
5
|
+
TOGGLE_GROUP = "ACTIONS_BAR_TOGGLE_GROUP"
|
|
4
6
|
}
|
|
5
7
|
/**
|
|
6
8
|
* Enum with the position to insert the actions bar item (Separator or Button)
|
|
@@ -6,6 +6,8 @@ var ActionsBarItemType;
|
|
|
6
6
|
(function (ActionsBarItemType) {
|
|
7
7
|
ActionsBarItemType["BUTTON"] = "ACTIONS_BAR_BUTTON";
|
|
8
8
|
ActionsBarItemType["SEPARATOR"] = "ACTIONS_BAR_SEPARATOR";
|
|
9
|
+
ActionsBarItemType["SELECTOR"] = "ACTIONS_BAR_SELECTOR";
|
|
10
|
+
ActionsBarItemType["TOGGLE_GROUP"] = "ACTIONS_BAR_TOGGLE_GROUP";
|
|
9
11
|
})(ActionsBarItemType || (exports.ActionsBarItemType = ActionsBarItemType = {}));
|
|
10
12
|
/**
|
|
11
13
|
* Enum with the position to insert the actions bar item (Separator or Button)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../src/extensible-areas/actions-bar-item/enums.ts"],"names":[],"mappings":";;;AAAA,0BAA0B;AAC1B,IAAY,
|
|
1
|
+
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../src/extensible-areas/actions-bar-item/enums.ts"],"names":[],"mappings":";;;AAAA,0BAA0B;AAC1B,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,mDAA6B,CAAA;IAC7B,yDAAmC,CAAA;IACnC,uDAAiC,CAAA;IACjC,+DAAyC,CAAA;AAC3C,CAAC,EALW,kBAAkB,kCAAlB,kBAAkB,QAK7B;AAED;;GAEG;AACH,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,mCAAa,CAAA;IACb,qCAAe,CAAA;AACjB,CAAC,EAHW,kBAAkB,kCAAlB,kBAAkB,QAG7B"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { ActionsBarButton, ActionsBarSeparator, } from './component';
|
|
1
|
+
export { ActionsBarButton, ActionsBarSeparator, ActionsBarSelector, ActionsBarToggleGroup, } from './component';
|
|
2
2
|
export { ActionsBarInterface, } from './types';
|
|
3
|
-
export { ActionsBarPosition, } from './enums';
|
|
3
|
+
export { ActionsBarItemType, ActionsBarPosition, } from './enums';
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ActionsBarPosition = exports.ActionsBarSeparator = exports.ActionsBarButton = void 0;
|
|
3
|
+
exports.ActionsBarPosition = exports.ActionsBarItemType = exports.ActionsBarToggleGroup = exports.ActionsBarSelector = exports.ActionsBarSeparator = exports.ActionsBarButton = void 0;
|
|
4
4
|
var component_1 = require("./component");
|
|
5
5
|
Object.defineProperty(exports, "ActionsBarButton", { enumerable: true, get: function () { return component_1.ActionsBarButton; } });
|
|
6
6
|
Object.defineProperty(exports, "ActionsBarSeparator", { enumerable: true, get: function () { return component_1.ActionsBarSeparator; } });
|
|
7
|
+
Object.defineProperty(exports, "ActionsBarSelector", { enumerable: true, get: function () { return component_1.ActionsBarSelector; } });
|
|
8
|
+
Object.defineProperty(exports, "ActionsBarToggleGroup", { enumerable: true, get: function () { return component_1.ActionsBarToggleGroup; } });
|
|
7
9
|
var enums_1 = require("./enums");
|
|
10
|
+
Object.defineProperty(exports, "ActionsBarItemType", { enumerable: true, get: function () { return enums_1.ActionsBarItemType; } });
|
|
8
11
|
Object.defineProperty(exports, "ActionsBarPosition", { enumerable: true, get: function () { return enums_1.ActionsBarPosition; } });
|
|
9
12
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/extensible-areas/actions-bar-item/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/extensible-areas/actions-bar-item/index.ts"],"names":[],"mappings":";;;AAAA,yCAKqB;AAJnB,6GAAA,gBAAgB,OAAA;AAChB,gHAAA,mBAAmB,OAAA;AACnB,+GAAA,kBAAkB,OAAA;AAClB,kHAAA,qBAAqB,OAAA;AAKvB,iCAGiB;AAFf,2GAAA,kBAAkB,OAAA;AAClB,2GAAA,kBAAkB,OAAA"}
|
|
@@ -1,11 +1,17 @@
|
|
|
1
|
+
import { ChangeEvent, MouseEvent } from 'react';
|
|
1
2
|
import { PluginProvidedUiItemDescriptor } from '../base';
|
|
2
|
-
import { ActionsBarPosition } from './enums';
|
|
3
|
+
import { ActionsBarItemType, ActionsBarPosition } from './enums';
|
|
3
4
|
/**
|
|
4
5
|
* Interface for the generic Actions bar item. (`position` is mandatory)
|
|
5
6
|
*/
|
|
6
7
|
export interface ActionsBarInterface extends PluginProvidedUiItemDescriptor {
|
|
7
8
|
position: ActionsBarPosition;
|
|
8
9
|
}
|
|
10
|
+
export interface ActionsBarItemProps {
|
|
11
|
+
id?: string;
|
|
12
|
+
position: ActionsBarPosition;
|
|
13
|
+
type: ActionsBarItemType;
|
|
14
|
+
}
|
|
9
15
|
export interface ActionsBarButtonProps {
|
|
10
16
|
id?: string;
|
|
11
17
|
icon: string;
|
|
@@ -15,4 +21,29 @@ export interface ActionsBarButtonProps {
|
|
|
15
21
|
}
|
|
16
22
|
export interface ActionsBarSeparatorProps {
|
|
17
23
|
position: ActionsBarPosition;
|
|
24
|
+
icon?: string;
|
|
25
|
+
}
|
|
26
|
+
export interface SelectOption {
|
|
27
|
+
value: string | number;
|
|
28
|
+
label: string;
|
|
29
|
+
}
|
|
30
|
+
export interface ToggleGroupOption extends SelectOption {
|
|
31
|
+
}
|
|
32
|
+
export interface ActionsBarSelectorProps {
|
|
33
|
+
id?: string;
|
|
34
|
+
title: string;
|
|
35
|
+
options: SelectOption[];
|
|
36
|
+
defaultOption?: SelectOption;
|
|
37
|
+
onChange: (value: string | number, event: ChangeEvent<HTMLInputElement>) => void;
|
|
38
|
+
position: ActionsBarPosition;
|
|
39
|
+
width?: number;
|
|
40
|
+
}
|
|
41
|
+
export interface ActionsBarToggleGroupProps {
|
|
42
|
+
id?: string;
|
|
43
|
+
title: string;
|
|
44
|
+
options: ToggleGroupOption[];
|
|
45
|
+
defaultOption?: ToggleGroupOption;
|
|
46
|
+
exclusive?: boolean;
|
|
47
|
+
onChange: (values: string | number | string[] | number[], event: MouseEvent<HTMLElement>) => void;
|
|
48
|
+
position: ActionsBarPosition;
|
|
18
49
|
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { SetSelfViewDisableAllDevicesCommandArguments, SetSelfViewDisableCommandArguments } from './types';
|
|
2
|
+
export declare const camera: {
|
|
3
|
+
/**
|
|
4
|
+
* Sets the self-view camera disabled/enabled for all cameras.
|
|
5
|
+
*
|
|
6
|
+
* @param setSelfViewDisableAllDevicesCommandArguments: object with a
|
|
7
|
+
* boolean that tells whether to enable or not the self-view camera for all devices
|
|
8
|
+
*/
|
|
9
|
+
setSelfViewDisableAllDevices: (setSelfViewDisableAllDevicesCommandArguments: SetSelfViewDisableAllDevicesCommandArguments) => void;
|
|
10
|
+
/**
|
|
11
|
+
* Sets the self-view camera disabled/enabled for specific camera.
|
|
12
|
+
*
|
|
13
|
+
* @param setSelfViewDisableCommandArguments: object with a
|
|
14
|
+
* boolean that tells whether to enable or not the self-view camera for specific device
|
|
15
|
+
*/
|
|
16
|
+
setSelfViewDisable: (setSelfViewDisableCommandArguments: SetSelfViewDisableCommandArguments) => void;
|
|
17
|
+
};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.camera = void 0;
|
|
4
|
+
var enums_1 = require("./enums");
|
|
5
|
+
exports.camera = {
|
|
6
|
+
/**
|
|
7
|
+
* Sets the self-view camera disabled/enabled for all cameras.
|
|
8
|
+
*
|
|
9
|
+
* @param setSelfViewDisableAllDevicesCommandArguments: object with a
|
|
10
|
+
* boolean that tells whether to enable or not the self-view camera for all devices
|
|
11
|
+
*/
|
|
12
|
+
setSelfViewDisableAllDevices: function (setSelfViewDisableAllDevicesCommandArguments) {
|
|
13
|
+
var isSelfViewDisabledAllDevices = setSelfViewDisableAllDevicesCommandArguments.isSelfViewDisabledAllDevices;
|
|
14
|
+
window.dispatchEvent(new CustomEvent(enums_1.CameraEnum.SET_SELF_VIEW_DISABLED_ALL_DEVICES, {
|
|
15
|
+
detail: {
|
|
16
|
+
isSelfViewDisabledAllDevices: isSelfViewDisabledAllDevices,
|
|
17
|
+
},
|
|
18
|
+
}));
|
|
19
|
+
},
|
|
20
|
+
/**
|
|
21
|
+
* Sets the self-view camera disabled/enabled for specific camera.
|
|
22
|
+
*
|
|
23
|
+
* @param setSelfViewDisableCommandArguments: object with a
|
|
24
|
+
* boolean that tells whether to enable or not the self-view camera for specific device
|
|
25
|
+
*/
|
|
26
|
+
setSelfViewDisable: function (setSelfViewDisableCommandArguments) {
|
|
27
|
+
var isSelfViewDisabled = setSelfViewDisableCommandArguments.isSelfViewDisabled, streamId = setSelfViewDisableCommandArguments.streamId;
|
|
28
|
+
window.dispatchEvent(new CustomEvent(enums_1.CameraEnum.SET_SELF_VIEW_DISABLED, {
|
|
29
|
+
detail: {
|
|
30
|
+
isSelfViewDisabled: isSelfViewDisabled,
|
|
31
|
+
streamId: streamId,
|
|
32
|
+
},
|
|
33
|
+
}));
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../../src/ui-commands/camera/commands.ts"],"names":[],"mappings":";;;AAAA,iCAAqC;AAGxB,QAAA,MAAM,GAAG;IACpB;;;;;OAKG;IACH,4BAA4B,EAAE,UAC5B,4CAA0F;QAGxF,IAAA,4BAA4B,GAC1B,4CAA4C,6BADlB,CACmB;QACjD,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CAEb,kBAAU,CAAC,kCAAkC,EAAE;YAC/C,MAAM,EAAE;gBACN,4BAA4B,8BAAA;aAC7B;SACF,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,EAAE,UAClB,kCAAsE;QAGpE,IAAA,kBAAkB,GAEhB,kCAAkC,mBAFlB,EAClB,QAAQ,GACN,kCAAkC,SAD5B,CAC6B;QACvC,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CAEb,kBAAU,CAAC,sBAAsB,EAAE;YACnC,MAAM,EAAE;gBACN,kBAAkB,oBAAA;gBAClB,QAAQ,UAAA;aACT;SACF,CAAC,CACH,CAAC;IACJ,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CameraEnum = void 0;
|
|
4
|
+
var CameraEnum;
|
|
5
|
+
(function (CameraEnum) {
|
|
6
|
+
CameraEnum["SET_SELF_VIEW_DISABLED_ALL_DEVICES"] = "SET_SELF_VIEW_DISABLED_ALL_DEVICES_COMMAND";
|
|
7
|
+
CameraEnum["SET_SELF_VIEW_DISABLED"] = "SET_SELF_VIEW_DISABLED_COMMAND";
|
|
8
|
+
})(CameraEnum || (exports.CameraEnum = CameraEnum = {}));
|
|
9
|
+
//# sourceMappingURL=enums.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../src/ui-commands/camera/enums.ts"],"names":[],"mappings":";;;AAAA,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,+FAAiF,CAAA;IACjF,uEAAyD,CAAA;AAC3D,CAAC,EAHW,UAAU,0BAAV,UAAU,QAGrB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export interface SetSelfViewDisableAllDevicesCommandArguments {
|
|
2
|
+
isSelfViewDisabledAllDevices: boolean;
|
|
3
|
+
}
|
|
4
|
+
export interface SetSelfViewDisableCommandArguments {
|
|
5
|
+
isSelfViewDisabled: boolean;
|
|
6
|
+
streamId: string;
|
|
7
|
+
}
|
|
8
|
+
export interface UiCommandsCameraObject {
|
|
9
|
+
setSelfViewDisableAllDevices: (setSelfViewDisableAllDevicesCommandArguments: SetSelfViewDisableAllDevicesCommandArguments) => void;
|
|
10
|
+
setSelfViewDisable: (setSelfViewDisableAllDevicesCommandArguments: SetSelfViewDisableCommandArguments) => void;
|
|
11
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/ui-commands/camera/types.ts"],"names":[],"mappings":""}
|
|
@@ -2,6 +2,10 @@ export declare const uiCommands: {
|
|
|
2
2
|
actionsBar: {
|
|
3
3
|
setDisplayActionBar: (arg: import("./actions-bar/types").SetDisplayActionBarCommandArguments) => void;
|
|
4
4
|
};
|
|
5
|
+
camera: {
|
|
6
|
+
setSelfViewDisableAllDevices: (setSelfViewDisableAllDevicesCommandArguments: import("./camera/types").SetSelfViewDisableAllDevicesCommandArguments) => void;
|
|
7
|
+
setSelfViewDisable: (setSelfViewDisableCommandArguments: import("./camera/types").SetSelfViewDisableCommandArguments) => void;
|
|
8
|
+
};
|
|
5
9
|
chat: {
|
|
6
10
|
form: {
|
|
7
11
|
open: () => void;
|
|
@@ -32,6 +36,7 @@ export declare const uiCommands: {
|
|
|
32
36
|
};
|
|
33
37
|
notification: {
|
|
34
38
|
send: (information: import("./notification/types").SendNotificationCommandArguments) => void;
|
|
39
|
+
setEnabledDisplayNotifications: (isNotificationDisplayEnabled: boolean) => void;
|
|
35
40
|
};
|
|
36
41
|
layout: {
|
|
37
42
|
changeEnforcedLayout: import("./layout/types").ChangeEnforcedLayout;
|
|
@@ -8,19 +8,21 @@ var commands_4 = require("./presentation-area/commands");
|
|
|
8
8
|
var commands_5 = require("./user-status/commands");
|
|
9
9
|
var commands_6 = require("./conference/commands");
|
|
10
10
|
var commands_7 = require("./notification/commands");
|
|
11
|
-
var commands_8 = require("./
|
|
12
|
-
var commands_9 = require("./
|
|
13
|
-
var commands_10 = require("./
|
|
11
|
+
var commands_8 = require("./camera/commands");
|
|
12
|
+
var commands_9 = require("./actions-bar/commands");
|
|
13
|
+
var commands_10 = require("./layout/commands");
|
|
14
|
+
var commands_11 = require("./nav-bar/commands");
|
|
14
15
|
exports.uiCommands = {
|
|
15
|
-
actionsBar:
|
|
16
|
+
actionsBar: commands_9.actionsBar,
|
|
17
|
+
camera: commands_8.camera,
|
|
16
18
|
chat: commands_1.chat,
|
|
17
19
|
externalVideo: commands_2.externalVideo,
|
|
18
20
|
sidekickOptionsContainer: commands_3.sidekickOptionsContainer,
|
|
19
|
-
navBar:
|
|
21
|
+
navBar: commands_11.navBar,
|
|
20
22
|
presentationArea: commands_4.presentationArea,
|
|
21
23
|
userStatus: commands_5.userStatus,
|
|
22
24
|
conference: commands_6.conference,
|
|
23
25
|
notification: commands_7.notification,
|
|
24
|
-
layout:
|
|
26
|
+
layout: commands_10.layout,
|
|
25
27
|
};
|
|
26
28
|
//# sourceMappingURL=commands.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/ui-commands/commands.ts"],"names":[],"mappings":";;;AAAA,4CAAuC;AACvC,sDAA0D;AAC1D,kEAAiF;AACjF,yDAAgE;AAChE,mDAAoD;AACpD,kDAAmD;AACnD,oDAAuD;AACvD,mDAAoD;AACpD
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/ui-commands/commands.ts"],"names":[],"mappings":";;;AAAA,4CAAuC;AACvC,sDAA0D;AAC1D,kEAAiF;AACjF,yDAAgE;AAChE,mDAAoD;AACpD,kDAAmD;AACnD,oDAAuD;AACvD,8CAA2C;AAC3C,mDAAoD;AACpD,+CAA2C;AAC3C,gDAA4C;AAE/B,QAAA,UAAU,GAAG;IACxB,UAAU,uBAAA;IACV,MAAM,mBAAA;IACN,IAAI,iBAAA;IACJ,aAAa,0BAAA;IACb,wBAAwB,qCAAA;IACxB,MAAM,oBAAA;IACN,gBAAgB,6BAAA;IAChB,UAAU,uBAAA;IACV,UAAU,uBAAA;IACV,YAAY,yBAAA;IACZ,MAAM,oBAAA;CACP,CAAC"}
|
|
@@ -4,4 +4,8 @@ export declare const notification: {
|
|
|
4
4
|
* Sends notification to be rendered in the front-end.
|
|
5
5
|
*/
|
|
6
6
|
send: (information: SendNotificationCommandArguments) => void;
|
|
7
|
+
/**
|
|
8
|
+
* Decides if notifications stop being displayed.
|
|
9
|
+
*/
|
|
10
|
+
setEnabledDisplayNotifications: (isNotificationDisplayEnabled: boolean) => void;
|
|
7
11
|
};
|
|
@@ -11,5 +11,13 @@ exports.notification = {
|
|
|
11
11
|
detail: information,
|
|
12
12
|
}));
|
|
13
13
|
},
|
|
14
|
+
/**
|
|
15
|
+
* Decides if notifications stop being displayed.
|
|
16
|
+
*/
|
|
17
|
+
setEnabledDisplayNotifications: function (isNotificationDisplayEnabled) {
|
|
18
|
+
window.dispatchEvent(new CustomEvent(enums_1.NotificationEnum.SET_ENABLED_DISPLAY, {
|
|
19
|
+
detail: { isNotificationDisplayEnabled: isNotificationDisplayEnabled },
|
|
20
|
+
}));
|
|
21
|
+
},
|
|
14
22
|
};
|
|
15
23
|
//# sourceMappingURL=commands.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../../src/ui-commands/notification/commands.ts"],"names":[],"mappings":";;;AAAA,iCAA2C;AAG9B,QAAA,YAAY,GAAG;IAC1B;;OAEG;IACH,IAAI,EAAE,UAAC,WAA6C;QAClD,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CAEb,wBAAgB,CAAC,IAAI,EAAE;YACvB,MAAM,EAAE,WAAW;SACpB,CAAC,CACH,CAAC;IACJ,CAAC;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../../src/ui-commands/notification/commands.ts"],"names":[],"mappings":";;;AAAA,iCAA2C;AAG9B,QAAA,YAAY,GAAG;IAC1B;;OAEG;IACH,IAAI,EAAE,UAAC,WAA6C;QAClD,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CAEb,wBAAgB,CAAC,IAAI,EAAE;YACvB,MAAM,EAAE,WAAW;SACpB,CAAC,CACH,CAAC;IACJ,CAAC;IACD;;OAEG;IACH,8BAA8B,EAAE,UAAC,4BAAqC;QACpE,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CAEb,wBAAgB,CAAC,mBAAmB,EAAE;YACtC,MAAM,EAAE,EAAE,4BAA4B,8BAAA,EAAE;SACzC,CAAC,CACH,CAAC;IACJ,CAAC;CACF,CAAC"}
|
|
@@ -3,7 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.NotificationTypeUiCommand = exports.NotificationEnum = void 0;
|
|
4
4
|
var NotificationEnum;
|
|
5
5
|
(function (NotificationEnum) {
|
|
6
|
-
NotificationEnum["SEND"] = "
|
|
6
|
+
NotificationEnum["SEND"] = "SEND_NOTIFICATION_COMMAND";
|
|
7
|
+
NotificationEnum["SET_ENABLED_DISPLAY"] = "SET_ENABLED_DISPLAY_COMMAND";
|
|
7
8
|
})(NotificationEnum || (exports.NotificationEnum = NotificationEnum = {}));
|
|
8
9
|
var NotificationTypeUiCommand;
|
|
9
10
|
(function (NotificationTypeUiCommand) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../src/ui-commands/notification/enums.ts"],"names":[],"mappings":";;;AAAA,IAAY,
|
|
1
|
+
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../src/ui-commands/notification/enums.ts"],"names":[],"mappings":";;;AAAA,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,sDAAkC,CAAA;IAClC,uEAAmD,CAAA;AACrD,CAAC,EAHW,gBAAgB,gCAAhB,gBAAgB,QAG3B;AAED,IAAY,yBAMX;AAND,WAAY,yBAAyB;IACnC,0CAAa,CAAA;IACb,gDAAmB,CAAA;IACnB,gDAAmB,CAAA;IACnB,gDAAmB,CAAA;IACnB,4CAAe,CAAA;AACjB,CAAC,EANW,yBAAyB,yCAAzB,yBAAyB,QAMpC"}
|
|
@@ -12,6 +12,10 @@ export interface SendNotificationCommandArguments {
|
|
|
12
12
|
content?: string;
|
|
13
13
|
small?: boolean;
|
|
14
14
|
}
|
|
15
|
+
export interface SetEnableDisplayNotificationsArguments {
|
|
16
|
+
isNotificationDisplayEnabled: boolean;
|
|
17
|
+
}
|
|
15
18
|
export interface UiCommandsNotificationObject {
|
|
16
19
|
send: (information: SendNotificationCommandArguments) => void;
|
|
20
|
+
setEnabledDisplayNotifications: (isNotificationDisplayEnabled: boolean) => void;
|
|
17
21
|
}
|
|
@@ -8,9 +8,11 @@ import { UiCommandsNotificationObject } from './notification/types';
|
|
|
8
8
|
import { UiCommandsActionsBarObject } from './actions-bar/types';
|
|
9
9
|
import { UiCommandsLayoutObject } from './layout/types';
|
|
10
10
|
import { UiCommandsNavBarObject } from './nav-bar/types';
|
|
11
|
+
import { UiCommandsCameraObject } from './camera/types';
|
|
11
12
|
export interface UiCommands {
|
|
12
13
|
layout: UiCommandsLayoutObject;
|
|
13
14
|
actionsBar: UiCommandsActionsBarObject;
|
|
15
|
+
camera: UiCommandsCameraObject;
|
|
14
16
|
chat: UiCommandsChatObject;
|
|
15
17
|
externalVideo: UiCommandsExternalVideoObject;
|
|
16
18
|
sidekickOptionsContainer: UiCommandsSidekickOptionsContainerObject;
|