bigbluebutton-html-plugin-sdk 0.0.53 → 0.0.55

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.
Files changed (32) hide show
  1. package/README.md +29 -1
  2. package/dist/cjs/core/api/BbbPluginSdk.js +2 -0
  3. package/dist/cjs/core/api/BbbPluginSdk.js.map +1 -1
  4. package/dist/cjs/core/api/types.d.ts +8 -0
  5. package/dist/cjs/data-channel/types.d.ts +4 -1
  6. package/dist/cjs/extensible-areas/presentation-toolbar-item/component.d.ts +4 -1
  7. package/dist/cjs/extensible-areas/presentation-toolbar-item/component.js +3 -1
  8. package/dist/cjs/extensible-areas/presentation-toolbar-item/component.js.map +1 -1
  9. package/dist/cjs/extensible-areas/presentation-toolbar-item/types.d.ts +2 -0
  10. package/dist/cjs/learning-analytics-dashboard/enums.d.ts +3 -0
  11. package/dist/cjs/learning-analytics-dashboard/enums.js +8 -0
  12. package/dist/cjs/learning-analytics-dashboard/enums.js.map +1 -0
  13. package/dist/cjs/learning-analytics-dashboard/hooks.d.ts +2 -0
  14. package/dist/cjs/learning-analytics-dashboard/hooks.js +14 -0
  15. package/dist/cjs/learning-analytics-dashboard/hooks.js.map +1 -0
  16. package/dist/cjs/learning-analytics-dashboard/types.d.ts +10 -0
  17. package/dist/cjs/learning-analytics-dashboard/types.js +3 -0
  18. package/dist/cjs/learning-analytics-dashboard/types.js.map +1 -0
  19. package/dist/cjs/ui-commands/commands.d.ts +4 -0
  20. package/dist/cjs/ui-commands/commands.js +2 -0
  21. package/dist/cjs/ui-commands/commands.js.map +1 -1
  22. package/dist/cjs/ui-commands/presentation-area/commands.d.ts +10 -0
  23. package/dist/cjs/ui-commands/presentation-area/commands.js +19 -0
  24. package/dist/cjs/ui-commands/presentation-area/commands.js.map +1 -0
  25. package/dist/cjs/ui-commands/presentation-area/enums.d.ts +4 -0
  26. package/dist/cjs/ui-commands/presentation-area/enums.js +9 -0
  27. package/dist/cjs/ui-commands/presentation-area/enums.js.map +1 -0
  28. package/dist/cjs/ui-commands/presentation-area/types.d.ts +4 -0
  29. package/dist/cjs/ui-commands/presentation-area/types.js +3 -0
  30. package/dist/cjs/ui-commands/presentation-area/types.js.map +1 -0
  31. package/dist/cjs/ui-commands/types.d.ts +2 -0
  32. package/package.json +1 -1
package/README.md CHANGED
@@ -189,7 +189,9 @@ If no permission is mentioned in the yaml (writing or deleting), no one will be
189
189
  The `pushEntryFunction` has a minor detail to pay attention to, it is possible to specify the users who you want to send the item to, if none is specified, all will receive the item, such as done ahead:
190
190
 
191
191
  ```typescript
192
- pushEntryFunction(objectToBePushed: T, receivers?: ObjectTo[])
192
+ pushEntryFunction(objectToBePushed: T, options: {
193
+ receivers?: ObjectTo[];
194
+ })
193
195
  export interface ToUserId {
194
196
  userId: string;
195
197
  }
@@ -209,6 +211,7 @@ export type ObjectTo = ToUserId | ToRole;
209
211
  - ExternalVideoVolumeUiDataNames.CURRENT_VOLUME_VALUE;
210
212
  - ExternalVideoVolumeUiDataNames.IS_VOLUME_MUTED;
211
213
  - UserListUiDataNames.USER_LIST_IS_OPEN;
214
+ - LayoutPresentatioAreaUiDataNames.CURRENT_ELEMENT;
212
215
 
213
216
  Example of usage:
214
217
 
@@ -241,6 +244,9 @@ One other thing is that the type of the return is precisely the same type requir
241
244
  - sidekick-options-container:
242
245
  - open: this function will open the sidekick options panel automatically;
243
246
  - close: this function will close the sidekick options panel automatically (and also the sidebar content if open, to avoid inconsistencies in ui);
247
+ - presentation-area:
248
+ - open: this function will open the presentation area content automatically;
249
+ - close: this function will close the presentation area content automatically;
244
250
 
245
251
  See usage ahead:
246
252
 
@@ -257,6 +263,28 @@ So the idea is that we have a `uiCommands` object and at a point, there will be
257
263
 
258
264
  - `useChatMessageDomElements` hook: This hook will return the dom element of a chat message reactively, so one can modify whatever is inside, such as text, css, js, etc.;
259
265
 
266
+ ### Learning Analytics Dashboard integration
267
+
268
+ - `sendGenericDataForLearningAnalyticsDashboard`: This function will send data for the bbb to render inside the plugin's table
269
+
270
+ The object structure of this function's argument must be:
271
+
272
+ ```ts
273
+ interface GenericDataForLearningAnalyticsDashboard {
274
+ cardTitle: string; // Yet to be implemented (future updates)
275
+ columnTitle: string;
276
+ value: string;
277
+ }
278
+ ```
279
+
280
+ So that the data will appear in the following form:
281
+
282
+ | User | Count | `<columnTitle>` |
283
+ | --- | :-- | --: |
284
+ | user-name | 1 | `<value>` |
285
+
286
+
287
+
260
288
  ### Frequently Asked Questions (FAQ)
261
289
 
262
290
  **How do I remove a certain extensible area that I don't want anymore?**
@@ -20,6 +20,7 @@ var hooks_9 = require("../../data-consumption/domain/user-voice/talking-indicato
20
20
  var hooks_10 = require("../../ui-data-hooks/hooks");
21
21
  var hooks_11 = require("../../data-consumption/domain/meeting/from-core/hooks");
22
22
  var commands_2 = require("../../server-commands/commands");
23
+ var hooks_12 = require("../../learning-analytics-dashboard/hooks");
23
24
  /**
24
25
  * Class responsible for either initialize or get the PluginApi
25
26
  *
@@ -65,6 +66,7 @@ var BbbPluginSdk = /** @class */ (function () {
65
66
  return (0, hooks_1.useDataChannelGeneral)(channelName, subChannelName, pluginName, window.bbb_plugins[uuid], dataChannelType);
66
67
  });
67
68
  pluginApi.usePluginSettings = function () { return (0, settings_1.usePluginSettings)(pluginName); };
69
+ pluginApi.sendGenericDataForLearningAnalyticsDashboard = function (data) { return (0, hooks_12.sendGenericDataForLearningAnalyticsDashboard)(data, pluginName); };
68
70
  }
69
71
  else {
70
72
  throw new Error('Plugin name not set');
@@ -1 +1 @@
1
- {"version":3,"file":"BbbPluginSdk.js","sourceRoot":"","sources":["../../../../src/core/api/BbbPluginSdk.ts"],"names":[],"mappings":"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"}
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;AAE9F,0FAAuG;AACvG,oDAAsD;AAEtD,gFAAmF;AACnF,2DAAgE;AAChE,mEAAwG;AAKxG;;;;;;GAMG;AACH;IAAA;IA+GA,CAAC;IA9GC;;;;;;;;;;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,2BAAmB,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,CAAC,EAArC,CAAqC,CAAC;QAC3C,SAAS,CAAC,UAAU,GAAG,qBAAU,CAAC;QAClC,SAAS,CAAC,cAAc,GAAG,yBAAc,CAAC;QAC1C,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,4CAA4C,GAAG,UACvD,IAA8C,IAC3C,OAAA,IAAA,qDAA4C,EAAC,IAAI,EAAE,UAAU,CAAC,EAA9D,CAA8D,CAAC;SACrE;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,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,AA/GD,IA+GC;AA/GqB,oCAAY"}
@@ -27,6 +27,7 @@ import { GenericContentInterface } from '../../extensible-areas/generic-content-
27
27
  import { UseUiDataFunction } from '../../ui-data-hooks/types';
28
28
  import { UseMeetingFunction } from '../../data-consumption/domain/meeting/from-core/types';
29
29
  import { ServerCommands } from '../../server-commands/types';
30
+ import { SendGenericDataForLearningAnalyticsDashboard } from '../../learning-analytics-dashboard/types';
30
31
  export type SetPresentationToolbarItems = (presentationToolbarItem: PresentationToolbarInterface[]) => string[];
31
32
  export type SetUserListDropdownItems = (userListDropdownItem: UserListDropdownInterface[]) => string[];
32
33
  export type SetActionButtonDropdownItems = (actionButtonDropdownInterface: ActionButtonDropdownInterface[]) => string[];
@@ -168,6 +169,13 @@ export interface PluginApi {
168
169
  useChatMessageDomElements?: UseChatMessageDomElementsFunction;
169
170
  getSessionToken?: GetSessionTokenFunction;
170
171
  getJoinUrl?: GetJoinUrlFunction;
172
+ /**
173
+ * Send data to the Learning analytics dashboard
174
+ *
175
+ * @param data - object in which one can render in the learning analytics dashboard
176
+ *
177
+ */
178
+ sendGenericDataForLearningAnalyticsDashboard?: SendGenericDataForLearningAnalyticsDashboard;
171
179
  }
172
180
  export interface PluginBrowserWindow extends Window {
173
181
  bbb_plugins: {
@@ -21,7 +21,10 @@ export interface ToRole {
21
21
  }
22
22
  export type ObjectTo = ToUserId | ToRole;
23
23
  export type ObjectToDelete = typeof RESET_DATA_CHANNEL | string;
24
- export type PushEntryFunction<T = object> = (objectToBePushed: T, receivers?: ObjectTo[]) => void;
24
+ export interface PushEntryFunctionOptionArgument {
25
+ receivers?: ObjectTo[];
26
+ }
27
+ export type PushEntryFunction<T = object> = (objectToBePushed: T, options?: PushEntryFunctionOptionArgument) => void;
25
28
  export type DeleteEntryFunction = (objectToDelete: ObjectToDelete[]) => void;
26
29
  export type ReplaceEntryFunction<T = object> = (entryId: string, payloadJson: T) => void;
27
30
  export interface ReplaceEntryFunctionArguments<T> {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { PresentationToolbarItemType } from './enums';
2
3
  import { PresentationToolbarInterface, PresentationToolbarButtonProps } from './types';
3
4
  export declare class PresentationToolbarButton implements PresentationToolbarInterface {
@@ -5,6 +6,7 @@ export declare class PresentationToolbarButton implements PresentationToolbarInt
5
6
  type: PresentationToolbarItemType;
6
7
  label: string;
7
8
  tooltip: string;
9
+ style: React.CSSProperties;
8
10
  onClick: () => void;
9
11
  /**
10
12
  * Returns object to be used in the setter for presentation toolbar. In this case
@@ -13,10 +15,11 @@ export declare class PresentationToolbarButton implements PresentationToolbarInt
13
15
  * @param label - label to be displayed in the button
14
16
  * @param tooltip - tooltip to be displayed when hovering the button
15
17
  * @param onClick - function to be called when clicking the button
18
+ * @param style - style of the button in the presentation toolbar
16
19
  *
17
20
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
18
21
  */
19
- constructor({ label, tooltip, onClick }: PresentationToolbarButtonProps);
22
+ constructor({ label, tooltip, onClick, style, }: PresentationToolbarButtonProps);
20
23
  setItemId: (id: string) => void;
21
24
  }
22
25
  export declare class PresentationToolbarSpinner implements PresentationToolbarInterface {
@@ -11,11 +11,12 @@ var PresentationToolbarButton = /** @class */ (function () {
11
11
  * @param label - label to be displayed in the button
12
12
  * @param tooltip - tooltip to be displayed when hovering the button
13
13
  * @param onClick - function to be called when clicking the button
14
+ * @param style - style of the button in the presentation toolbar
14
15
  *
15
16
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
16
17
  */
17
18
  function PresentationToolbarButton(_a) {
18
- var _b = _a.label, label = _b === void 0 ? '' : _b, _c = _a.tooltip, tooltip = _c === void 0 ? '' : _c, _d = _a.onClick, onClick = _d === void 0 ? function () { } : _d;
19
+ var _b = _a.label, label = _b === void 0 ? '' : _b, _c = _a.tooltip, tooltip = _c === void 0 ? '' : _c, _d = _a.onClick, onClick = _d === void 0 ? function () { } : _d, _e = _a.style, style = _e === void 0 ? {} : _e;
19
20
  var _this = this;
20
21
  this.id = '';
21
22
  this.setItemId = function (id) {
@@ -24,6 +25,7 @@ var PresentationToolbarButton = /** @class */ (function () {
24
25
  this.label = label;
25
26
  this.tooltip = tooltip;
26
27
  this.onClick = onClick;
28
+ this.style = style;
27
29
  this.type = enums_1.PresentationToolbarItemType.BUTTON;
28
30
  }
29
31
  return PresentationToolbarButton;
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/presentation-toolbar-item/component.ts"],"names":[],"mappings":";;;AAAA,iCAAsD;AAKtD,sCAAsC;AAEtC;IAWE;;;;;;;;;OASG;IACH,mCAAY,EAAgF;YAA9E,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA,EAAE,eAAY,EAAZ,OAAO,mBAAG,EAAE,KAAA,EAAE,eAAkB,EAAlB,OAAO,mBAAG,cAAO,CAAC,KAAA;QAA1D,iBAKC;QAzBD,OAAE,GAAW,EAAE,CAAC;QA2BhB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,oCAA6B,EAAE,CAAE,CAAC;QAC9C,CAAC,CAAC;QARA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,mCAA2B,CAAC,MAAM,CAAC;IACjD,CAAC;IAKH,gCAAC;AAAD,CAAC,AA/BD,IA+BC;AA/BY,8DAAyB;AAiCtC;IAKE;;;;;OAKG;IACH;QAAA,iBAEC;QAZD,OAAE,GAAW,EAAE,CAAC;QAchB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,oCAA6B,EAAE,CAAE,CAAC;QAC9C,CAAC,CAAC;QALA,IAAI,CAAC,IAAI,GAAG,mCAA2B,CAAC,OAAO,CAAC;IAClD,CAAC;IAKH,iCAAC;AAAD,CAAC,AAlBD,IAkBC;AAlBY,gEAA0B;AAoBvC;IAKE;;;;;OAKG;IACH;QAAA,iBAEC;QAZD,OAAE,GAAW,EAAE,CAAC;QAchB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,oCAA6B,EAAE,CAAE,CAAC;QAC9C,CAAC,CAAC;QALA,IAAI,CAAC,IAAI,GAAG,mCAA2B,CAAC,SAAS,CAAC;IACpD,CAAC;IAKH,mCAAC;AAAD,CAAC,AAlBD,IAkBC;AAlBY,oEAA4B"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/presentation-toolbar-item/component.ts"],"names":[],"mappings":";;;AAAA,iCAAsD;AAKtD,sCAAsC;AAEtC;IAaE;;;;;;;;;;OAUG;IACH,mCAAY,EAEqB;YAD/B,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA,EAAE,eAAY,EAAZ,OAAO,mBAAG,EAAE,KAAA,EAAE,eAAkB,EAAlB,OAAO,mBAAG,cAAO,CAAC,KAAA,EAAE,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA;QAD1D,iBAQC;QA/BD,OAAE,GAAW,EAAE,CAAC;QAiChB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,oCAA6B,EAAE,CAAE,CAAC;QAC9C,CAAC,CAAC;QATA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,mCAA2B,CAAC,MAAM,CAAC;IACjD,CAAC;IAKH,gCAAC;AAAD,CAAC,AArCD,IAqCC;AArCY,8DAAyB;AAuCtC;IAKE;;;;;OAKG;IACH;QAAA,iBAEC;QAZD,OAAE,GAAW,EAAE,CAAC;QAchB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,oCAA6B,EAAE,CAAE,CAAC;QAC9C,CAAC,CAAC;QALA,IAAI,CAAC,IAAI,GAAG,mCAA2B,CAAC,OAAO,CAAC;IAClD,CAAC;IAKH,iCAAC;AAAD,CAAC,AAlBD,IAkBC;AAlBY,gEAA0B;AAoBvC;IAKE;;;;;OAKG;IACH;QAAA,iBAEC;QAZD,OAAE,GAAW,EAAE,CAAC;QAchB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,oCAA6B,EAAE,CAAE,CAAC;QAC9C,CAAC,CAAC;QALA,IAAI,CAAC,IAAI,GAAG,mCAA2B,CAAC,SAAS,CAAC;IACpD,CAAC;IAKH,mCAAC;AAAD,CAAC,AAlBD,IAkBC;AAlBY,oEAA4B"}
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { PluginProvidedUiItemDescriptor } from '../base';
2
3
  /**
3
4
  * Interface for a generic item for presentation toolbar.
@@ -7,5 +8,6 @@ export interface PresentationToolbarInterface extends PluginProvidedUiItemDescri
7
8
  export interface PresentationToolbarButtonProps {
8
9
  label: string;
9
10
  tooltip: string;
11
+ style: React.CSSProperties;
10
12
  onClick: () => void;
11
13
  }
@@ -0,0 +1,3 @@
1
+ export declare enum LearningAnalyticsDashboardEvents {
2
+ GENERIC_DATA_SENT = "GENERIC_DATA_FOR_LEARNING_ANALYTICS_DASHBOARD_SENT"
3
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LearningAnalyticsDashboardEvents = void 0;
4
+ var LearningAnalyticsDashboardEvents;
5
+ (function (LearningAnalyticsDashboardEvents) {
6
+ LearningAnalyticsDashboardEvents["GENERIC_DATA_SENT"] = "GENERIC_DATA_FOR_LEARNING_ANALYTICS_DASHBOARD_SENT";
7
+ })(LearningAnalyticsDashboardEvents || (exports.LearningAnalyticsDashboardEvents = LearningAnalyticsDashboardEvents = {}));
8
+ //# sourceMappingURL=enums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../src/learning-analytics-dashboard/enums.ts"],"names":[],"mappings":";;;AAAA,IAAY,gCAEX;AAFD,WAAY,gCAAgC;IAC1C,4GAAwE,CAAA;AAC1E,CAAC,EAFW,gCAAgC,gDAAhC,gCAAgC,QAE3C"}
@@ -0,0 +1,2 @@
1
+ import { GenericDataForLearningAnalyticsDashboard } from './types';
2
+ export declare const sendGenericDataForLearningAnalyticsDashboard: (data: GenericDataForLearningAnalyticsDashboard, pluginName: string) => void;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sendGenericDataForLearningAnalyticsDashboard = void 0;
4
+ var enums_1 = require("./enums");
5
+ var sendGenericDataForLearningAnalyticsDashboard = function (data, pluginName) {
6
+ window.dispatchEvent(new CustomEvent(enums_1.LearningAnalyticsDashboardEvents.GENERIC_DATA_SENT, {
7
+ detail: {
8
+ pluginName: pluginName,
9
+ data: data,
10
+ },
11
+ }));
12
+ };
13
+ exports.sendGenericDataForLearningAnalyticsDashboard = sendGenericDataForLearningAnalyticsDashboard;
14
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/learning-analytics-dashboard/hooks.ts"],"names":[],"mappings":";;;AAIA,iCAA2D;AAEpD,IAAM,4CAA4C,GAAG,UAC1D,IAA8C,EAC9C,UAAkB;IAElB,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CACyB,wCAAgC,CAAC,iBAAiB,EAAE;QAC1F,MAAM,EAAE;YACN,UAAU,YAAA;YACV,IAAI,MAAA;SACL;KACF,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAbW,QAAA,4CAA4C,gDAavD"}
@@ -0,0 +1,10 @@
1
+ export interface GenericDataForLearningAnalyticsDashboard {
2
+ cardTitle: string;
3
+ columnTitle: string;
4
+ value: string;
5
+ }
6
+ export interface LearningAnalyticsDashboardEventDetails {
7
+ pluginName: string;
8
+ data: GenericDataForLearningAnalyticsDashboard;
9
+ }
10
+ export type SendGenericDataForLearningAnalyticsDashboard = (data: GenericDataForLearningAnalyticsDashboard) => void;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/learning-analytics-dashboard/types.ts"],"names":[],"mappings":""}
@@ -14,4 +14,8 @@ export declare const uiCommands: {
14
14
  open: () => void;
15
15
  close: () => void;
16
16
  };
17
+ presentationArea: {
18
+ open: () => void;
19
+ close: () => void;
20
+ };
17
21
  };
@@ -4,9 +4,11 @@ exports.uiCommands = void 0;
4
4
  var commands_1 = require("./chat/commands");
5
5
  var commands_2 = require("./external-video/commands");
6
6
  var commands_3 = require("./sidekick-options-container/commands");
7
+ var commands_4 = require("./presentation-area/commands");
7
8
  exports.uiCommands = {
8
9
  chat: commands_1.chat,
9
10
  externalVideo: commands_2.externalVideo,
10
11
  sidekickOptionsContainer: commands_3.sidekickOptionsContainer,
12
+ presentationArea: commands_4.presentationArea,
11
13
  };
12
14
  //# 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;AAEpE,QAAA,UAAU,GAAG;IACxB,IAAI,iBAAA;IACJ,aAAa,0BAAA;IACb,wBAAwB,qCAAA;CACzB,CAAC"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/ui-commands/commands.ts"],"names":[],"mappings":";;;AAAA,4CAAuC;AACvC,sDAA0D;AAC1D,kEAAiF;AACjF,yDAAgE;AAEnD,QAAA,UAAU,GAAG;IACxB,IAAI,iBAAA;IACJ,aAAa,0BAAA;IACb,wBAAwB,qCAAA;IACxB,gBAAgB,6BAAA;CACjB,CAAC"}
@@ -0,0 +1,10 @@
1
+ export declare const presentationArea: {
2
+ /**
3
+ * Opens the presentation area content automatically.
4
+ */
5
+ open: () => void;
6
+ /**
7
+ * Closes the presentation area content automatically.
8
+ */
9
+ close: () => void;
10
+ };
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.presentationArea = void 0;
4
+ var enums_1 = require("./enums");
5
+ exports.presentationArea = {
6
+ /**
7
+ * Opens the presentation area content automatically.
8
+ */
9
+ open: function () {
10
+ window.dispatchEvent(new Event(enums_1.PresentationAreaEnum.OPEN));
11
+ },
12
+ /**
13
+ * Closes the presentation area content automatically.
14
+ */
15
+ close: function () {
16
+ window.dispatchEvent(new Event(enums_1.PresentationAreaEnum.CLOSE));
17
+ },
18
+ };
19
+ //# sourceMappingURL=commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../../src/ui-commands/presentation-area/commands.ts"],"names":[],"mappings":";;;AAAA,iCAA+C;AAElC,QAAA,gBAAgB,GAAG;IAC9B;;OAEG;IACH,IAAI,EAAE;QACJ,MAAM,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,4BAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED;;OAEG;IACH,KAAK,EAAE;QACL,MAAM,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,4BAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9D,CAAC;CACF,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare enum PresentationAreaEnum {
2
+ OPEN = "OPEN_PRESENTATION_AREA_COMMAND",
3
+ CLOSE = "CLOSE_PRESENTATION_AREA_COMMAND"
4
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PresentationAreaEnum = void 0;
4
+ var PresentationAreaEnum;
5
+ (function (PresentationAreaEnum) {
6
+ PresentationAreaEnum["OPEN"] = "OPEN_PRESENTATION_AREA_COMMAND";
7
+ PresentationAreaEnum["CLOSE"] = "CLOSE_PRESENTATION_AREA_COMMAND";
8
+ })(PresentationAreaEnum || (exports.PresentationAreaEnum = PresentationAreaEnum = {}));
9
+ //# sourceMappingURL=enums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../src/ui-commands/presentation-area/enums.ts"],"names":[],"mappings":";;;AAAA,IAAY,oBAGX;AAHD,WAAY,oBAAoB;IAC9B,+DAAuC,CAAA;IACvC,iEAAyC,CAAA;AAC3C,CAAC,EAHW,oBAAoB,oCAApB,oBAAoB,QAG/B"}
@@ -0,0 +1,4 @@
1
+ export interface UiCommandsPresentationAreaObject {
2
+ open: () => void;
3
+ close: () => void;
4
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/ui-commands/presentation-area/types.ts"],"names":[],"mappings":""}
@@ -1,8 +1,10 @@
1
1
  import { UiCommandsChatObject } from './chat/types';
2
2
  import { UiCommandsExternalVideoObject } from './external-video/types';
3
3
  import { UiCommandsSidekickOptionsContainerObject } from './sidekick-options-container/types';
4
+ import { UiCommandsPresentationAreaObject } from './presentation-area/types';
4
5
  export interface UiCommands {
5
6
  chat: UiCommandsChatObject;
6
7
  externalVideo: UiCommandsExternalVideoObject;
7
8
  sidekickOptionsContainer: UiCommandsSidekickOptionsContainerObject;
9
+ presentationArea: UiCommandsPresentationAreaObject;
8
10
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bigbluebutton-html-plugin-sdk",
3
- "version": "0.0.53",
3
+ "version": "0.0.55",
4
4
  "homepage": "https://github.com/bigbluebutton/bigbluebutton-html-plugin-sdk",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",