bigbluebutton-html-plugin-sdk 0.0.57 → 0.0.58

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 (41) hide show
  1. package/README.md +7 -3
  2. package/dist/cjs/core/api/BbbPluginSdk.js +3 -2
  3. package/dist/cjs/core/api/BbbPluginSdk.js.map +1 -1
  4. package/dist/cjs/core/api/types.d.ts +3 -1
  5. package/dist/cjs/core/enum.d.ts +9 -3
  6. package/dist/cjs/core/enum.js +9 -3
  7. package/dist/cjs/core/enum.js.map +1 -1
  8. package/dist/cjs/data-channel/hooks.js +2 -2
  9. package/dist/cjs/data-channel/hooks.js.map +1 -1
  10. package/dist/cjs/data-channel/utils.js +3 -3
  11. package/dist/cjs/data-channel/utils.js.map +1 -1
  12. package/dist/cjs/data-consumption/factory/hookCreator.js +7 -7
  13. package/dist/cjs/data-consumption/factory/hookCreator.js.map +1 -1
  14. package/dist/cjs/dom-element-manipulation/chat/message/hooks.d.ts +1 -1
  15. package/dist/cjs/dom-element-manipulation/chat/message/hooks.js +56 -30
  16. package/dist/cjs/dom-element-manipulation/chat/message/hooks.js.map +1 -1
  17. package/dist/cjs/dom-element-manipulation/chat/message/types.d.ts +1 -0
  18. package/dist/cjs/dom-element-manipulation/user-camera/hooks.d.ts +1 -1
  19. package/dist/cjs/dom-element-manipulation/user-camera/hooks.js +56 -31
  20. package/dist/cjs/dom-element-manipulation/user-camera/hooks.js.map +1 -1
  21. package/dist/cjs/dom-element-manipulation/user-camera/types.d.ts +2 -1
  22. package/dist/cjs/extensible-areas/base.d.ts +2 -1
  23. package/dist/cjs/extensible-areas/index.d.ts +1 -0
  24. package/dist/cjs/extensible-areas/index.js +1 -0
  25. package/dist/cjs/extensible-areas/index.js.map +1 -1
  26. package/dist/cjs/extensible-areas/screenshare-helper-item/component.d.ts +2 -2
  27. package/dist/cjs/extensible-areas/screenshare-helper-item/component.js.map +1 -1
  28. package/dist/cjs/extensible-areas/screenshare-helper-item/types.d.ts +6 -2
  29. package/dist/cjs/extensible-areas/user-camera-helper-item/component.d.ts +31 -0
  30. package/dist/cjs/extensible-areas/user-camera-helper-item/component.js +42 -0
  31. package/dist/cjs/extensible-areas/user-camera-helper-item/component.js.map +1 -0
  32. package/dist/cjs/extensible-areas/user-camera-helper-item/enums.d.ts +12 -0
  33. package/dist/cjs/extensible-areas/user-camera-helper-item/enums.js +19 -0
  34. package/dist/cjs/extensible-areas/user-camera-helper-item/enums.js.map +1 -0
  35. package/dist/cjs/extensible-areas/user-camera-helper-item/index.d.ts +3 -0
  36. package/dist/cjs/extensible-areas/user-camera-helper-item/index.js +8 -0
  37. package/dist/cjs/extensible-areas/user-camera-helper-item/index.js.map +1 -0
  38. package/dist/cjs/extensible-areas/user-camera-helper-item/types.d.ts +33 -0
  39. package/dist/cjs/extensible-areas/user-camera-helper-item/types.js +3 -0
  40. package/dist/cjs/extensible-areas/user-camera-helper-item/types.js.map +1 -0
  41. package/package.json +1 -1
package/README.md CHANGED
@@ -106,6 +106,8 @@ That being said, here are the extensible areas we have so far:
106
106
  - User list item additional information (item, label)
107
107
  - Floating window item (floatingWindow)
108
108
  - Generic Content (main, sidekick)
109
+ - User Camera Helper (button)
110
+ - Screenshare Helper (button)
109
111
 
110
112
  Mind that no plugin will interfere into another's extensible area. So feel free to set whatever you need into a certain plugin with no worries.
111
113
 
@@ -264,9 +266,11 @@ So the idea is that we have a `uiCommands` object and at a point, there will be
264
266
  `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:
265
267
 
266
268
  - chat:
267
- - sendPublicMessage: this function sends a text message along with an optional custom metadata to the public chat
268
- > Note: messages sent by plugins are not natively rendered by the client.
269
- > They have to be custom-rendered by plugins using `useLoadedChatMessages` and `useChatMessageDomElements`.
269
+ - sendPublicMessage: This function sends a message to the public chat on behalf of the currently logged-in user.
270
+
271
+ - sendCustomPublicMessage: This function sends a text message to the public chat, optionally including custom metadata.
272
+ > **Note**: The custom messages sent by plugins are not automatically rendered by the client. To display these messages, a plugin must handle the rendering using `useLoadedChatMessages` and `useChatMessageDomElements`.
273
+
270
274
  - caption:
271
275
  - save: this function saves the given text, locale and caption type
272
276
  - addLocale: this function sends a locale to be added to the available options
@@ -55,8 +55,8 @@ var BbbPluginSdk = /** @class */ (function () {
55
55
  pluginApi.useUsersBasicInfo = (function () { return (0, hooks_6.useUsersBasicInfo)(); });
56
56
  pluginApi.useTalkingIndicator = (function () { return (0, hooks_10.useTalkingIndicator)(); });
57
57
  pluginApi.useLoadedChatMessages = (function () { return (0, hooks_7.useLoadedChatMessages)(); });
58
- pluginApi.useChatMessageDomElements = function (messageIds) { return (0, hooks_8.useChatMessageDomElements)(messageIds); };
59
- pluginApi.useUserCameraDomElements = function (streamIds) { return (0, hooks_9.useUserCameraDomElements)(streamIds); };
58
+ pluginApi.useChatMessageDomElements = function (messageIds) { return (0, hooks_8.useChatMessageDomElements)(messageIds, uuid); };
59
+ pluginApi.useUserCameraDomElements = function (streamIds) { return (0, hooks_9.useUserCameraDomElements)(streamIds, uuid); };
60
60
  pluginApi.uiCommands = commands_1.uiCommands;
61
61
  pluginApi.useUiData = hooks_11.useUiData;
62
62
  var pluginName = pluginApi === null || pluginApi === void 0 ? void 0 : pluginApi.pluginName;
@@ -114,6 +114,7 @@ var BbbPluginSdk = /** @class */ (function () {
114
114
  setPresentationDropdownItems: function () { return []; },
115
115
  setNavBarItems: function () { return []; },
116
116
  setScreenshareHelperItems: function () { return []; },
117
+ setUserCameraHelperItems: function () { return []; },
117
118
  setOptionsDropdownItems: function () { return []; },
118
119
  setCameraSettingsDropdownItems: function () { return []; },
119
120
  setUserCameraDropdownItems: function () { return []; },
@@ -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":"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"}
@@ -29,7 +29,7 @@ import { UseMeetingFunction } from '../../data-consumption/domain/meeting/from-c
29
29
  import { ServerCommands } from '../../server-commands/types';
30
30
  import { SendGenericDataForLearningAnalyticsDashboard } from '../../learning-analytics-dashboard/types';
31
31
  import { UseUserCameraDomElementsFunction } from '../../dom-element-manipulation/user-camera/types';
32
- import { ScreenshareHelperInterface } from '../../extensible-areas';
32
+ import { ScreenshareHelperInterface, UserCameraHelperInterface } from '../../extensible-areas';
33
33
  export type SetPresentationToolbarItems = (presentationToolbarItem: PresentationToolbarInterface[]) => string[];
34
34
  export type SetUserListDropdownItems = (userListDropdownItem: UserListDropdownInterface[]) => string[];
35
35
  export type SetActionButtonDropdownItems = (actionButtonDropdownInterface: ActionButtonDropdownInterface[]) => string[];
@@ -38,6 +38,7 @@ export type SetAudioSettingsDropdownItems = (audioSettingsDropdownItem: AudioSet
38
38
  export type SetPresentationDropdownItems = (userListDropdownItem: PresentationDropdownInterface[]) => string[];
39
39
  export type SetNavBarItems = (navBarItem: NavBarInterface[]) => string[];
40
40
  export type SetScreenshareHelperItems = (screenshareHelperItem: ScreenshareHelperInterface[]) => string[];
41
+ export type SetUserCameraHelperItems = (userCameraHelperItem: UserCameraHelperInterface[]) => string[];
41
42
  export type SetOptionsDropdownItems = (optionsDropdownItem: OptionsDropdownInterface[]) => string[];
42
43
  export type SetCameraSettingsDropdownItems = (cameraSettingsDropdownItem: CameraSettingsDropdownInterface[]) => string[];
43
44
  export type SetUserCameraDropdownItems = (userCameraDropdownItem: UserCameraDropdownInterface[]) => string[];
@@ -56,6 +57,7 @@ export interface PluginApi {
56
57
  setPresentationDropdownItems: SetPresentationDropdownItems;
57
58
  setNavBarItems: SetNavBarItems;
58
59
  setScreenshareHelperItems: SetScreenshareHelperItems;
60
+ setUserCameraHelperItems: SetUserCameraHelperItems;
59
61
  setOptionsDropdownItems: SetOptionsDropdownItems;
60
62
  setCameraSettingsDropdownItems: SetCameraSettingsDropdownItems;
61
63
  setUserCameraDropdownItems: SetUserCameraDropdownItems;
@@ -2,8 +2,14 @@ import { DataChannelHooks } from '../data-channel/enums';
2
2
  import { DomElementManipulationHooks } from '../dom-element-manipulation/enums';
3
3
  import { DataConsumptionHooks } from '../data-consumption/enums';
4
4
  export declare enum HookEvents {
5
- UPDATED = "HOOK_DATA_UPDATED",
6
- SUBSCRIBED = "PLUGIN_SUBSCRIBED_TO_HOOK",
7
- UNSUBSCRIBED = "PLUGIN_UNSUBSCRIBED_FROM_HOOK"
5
+ BBB_CORE_SENT_NEW_DATA = "BBB_CORE_SENT_NEW_DATA",
6
+ /**
7
+ * PLUGIN_SENT_CHANGES_TO_BBB_CORE is used to:
8
+ * - Comunicate that the subscription has changed for the dom-element-manipulation hook;
9
+ * - Send replace/delete event for useDataChannel;
10
+ */
11
+ PLUGIN_SENT_CHANGES_TO_BBB_CORE = "PLUGIN_SENT_CHANGES_TO_BBB_CORE",
12
+ PLUGIN_SUBSCRIBED_TO_BBB_CORE = "PLUGIN_SUBSCRIBED_TO_BBB_CORE",
13
+ PLUGIN_UNSUBSCRIBED_FROM_BBB_CORE = "PLUGIN_UNSUBSCRIBED_FROM_BBB_CORE"
8
14
  }
9
15
  export type Hooks = DataConsumptionHooks | DataChannelHooks | DomElementManipulationHooks;
@@ -3,8 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.HookEvents = void 0;
4
4
  var HookEvents;
5
5
  (function (HookEvents) {
6
- HookEvents["UPDATED"] = "HOOK_DATA_UPDATED";
7
- HookEvents["SUBSCRIBED"] = "PLUGIN_SUBSCRIBED_TO_HOOK";
8
- HookEvents["UNSUBSCRIBED"] = "PLUGIN_UNSUBSCRIBED_FROM_HOOK";
6
+ HookEvents["BBB_CORE_SENT_NEW_DATA"] = "BBB_CORE_SENT_NEW_DATA";
7
+ /**
8
+ * PLUGIN_SENT_CHANGES_TO_BBB_CORE is used to:
9
+ * - Comunicate that the subscription has changed for the dom-element-manipulation hook;
10
+ * - Send replace/delete event for useDataChannel;
11
+ */
12
+ HookEvents["PLUGIN_SENT_CHANGES_TO_BBB_CORE"] = "PLUGIN_SENT_CHANGES_TO_BBB_CORE";
13
+ HookEvents["PLUGIN_SUBSCRIBED_TO_BBB_CORE"] = "PLUGIN_SUBSCRIBED_TO_BBB_CORE";
14
+ HookEvents["PLUGIN_UNSUBSCRIBED_FROM_BBB_CORE"] = "PLUGIN_UNSUBSCRIBED_FROM_BBB_CORE";
9
15
  })(HookEvents || (exports.HookEvents = HookEvents = {}));
10
16
  //# sourceMappingURL=enum.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"enum.js","sourceRoot":"","sources":["../../../src/core/enum.ts"],"names":[],"mappings":";;;AAIA,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,2CAA6B,CAAA;IAC7B,sDAAwC,CAAA;IACxC,4DAA8C,CAAA;AAChD,CAAC,EAJW,UAAU,0BAAV,UAAU,QAIrB"}
1
+ {"version":3,"file":"enum.js","sourceRoot":"","sources":["../../../src/core/enum.ts"],"names":[],"mappings":";;;AAIA,IAAY,UAUX;AAVD,WAAY,UAAU;IACpB,+DAAiD,CAAA;IACjD;;;;OAIG;IACH,iFAAmE,CAAA;IACnE,6EAA+D,CAAA;IAC/D,qFAAuE,CAAA;AACzE,CAAC,EAVW,UAAU,0BAAV,UAAU,QAUrB"}
@@ -25,7 +25,7 @@ exports.useDataChannelGeneral = (function (channelName, subChannelName, pluginNa
25
25
  (0, react_1.useEffect)(function () {
26
26
  window.addEventListener(channelIdentifier, handleDataChange);
27
27
  window.addEventListener("".concat(channelIdentifier, "::pushEntryFunction"), handleListenToChangePushEntryFunction);
28
- window.dispatchEvent(new CustomEvent(enum_1.HookEvents.SUBSCRIBED, {
28
+ window.dispatchEvent(new CustomEvent(enum_1.HookEvents.PLUGIN_SUBSCRIBED_TO_BBB_CORE, {
29
29
  detail: {
30
30
  hook: enums_1.DataChannelHooks.DATA_CHANNEL_BUILDER,
31
31
  hookArguments: {
@@ -37,7 +37,7 @@ exports.useDataChannelGeneral = (function (channelName, subChannelName, pluginNa
37
37
  },
38
38
  }));
39
39
  return function () {
40
- window.dispatchEvent(new CustomEvent(enum_1.HookEvents.UNSUBSCRIBED, {
40
+ window.dispatchEvent(new CustomEvent(enum_1.HookEvents.PLUGIN_UNSUBSCRIBED_FROM_BBB_CORE, {
41
41
  detail: {
42
42
  hook: enums_1.DataChannelHooks.DATA_CHANNEL_BUILDER,
43
43
  hookArguments: {
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/data-channel/hooks.ts"],"names":[],"mappings":";;;AAAA,+BAA4C;AAa5C,qCAEsB;AAKtB,iCAA6D;AAC7D,iCAAqG;AAExF,QAAA,qBAAqB,GAAG,CAAC,UACpC,WAAmB,EAAE,cAAsB,EAC3C,UAAkB,EAAE,SAAoB,EACxC,eAAiC;IAE3B,IAAA,KAAkB,IAAA,gBAAQ,EAC9B,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,EAFM,IAAI,QAAA,EAAE,OAAO,QAEnB,CAAC;IACI,IAAA,KAA4C,IAAA,gBAAQ,GAAwB,EAA3E,iBAAiB,QAAA,EAAE,oBAAoB,QAAoC,CAAC;IAEnF,IAAM,mBAAmB,GAAwB,UAC/C,cAAgC,IAC7B,OAAA,IAAA,+BAAuB,EAAC,cAAc,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,CAAC,EAAhF,CAAgF,CAAC;IAEtF,IAAM,oBAAoB,GAAyB,UACjD,OAAO,EACP,WAAW,IACR,OAAA,IAAA,gCAAwB,EAAC,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,CAAC,EAAvF,CAAuF,CAAC;IAE7F,IAAM,iBAAiB,GAAG,IAAA,+BAAuB,EAAC,WAAW,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;IAE3F,IAAM,gBAAgB,GAAkB,CAAC,UACvC,WAAwF;QAExF,IAAM,WAAW,GAAG,WAAW,CAAC,MAE/B,CAAC;QACF,IAAM,aAAa,GAAG,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,aAAqC,CAAC;QACzE,IAAI,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,eAAe,MAAK,eAAe,EAAE;YACtD,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;SAC3B;IACH,CAAC,CAAkB,CAAC;IAEpB,IAAM,qCAAqC,GAAkB,CAC3D;QACE,oBAAoB,CAAC,cAAM,OAAA,SAAS,CAAC,uBAAuB,CAAC,iBAAiB,CAAC,EAApD,CAAoD,CAAC,CAAC;QACjF,MAAM,CAAC,mBAAmB,CACxB,UAAG,iBAAiB,wBAAqB,EACzC,qCAAqC,CACtC,CAAC;IACJ,CAAC,CAAkB,CAAC;IACtB,IAAA,iBAAS,EAAC;QACR,MAAM,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;QAC7D,MAAM,CAAC,gBAAgB,CACrB,UAAG,iBAAiB,wBAAqB,EACzC,qCAAqC,CACtC,CAAC;QAEF,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAAyB,iBAAU,CAAC,UAAU,EAAE;YAClF,MAAM,EAAE;gBACN,IAAI,EAAE,wBAAgB,CAAC,oBAAoB;gBAC3C,aAAa,EAAE;oBACb,WAAW,aAAA;oBAAE,UAAU,YAAA;oBAAE,eAAe,iBAAA;oBAAE,cAAc,gBAAA;iBACzD;aACF;SACF,CAAC,CAAC,CAAC;QACJ,OAAO;YACL,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAA2B,iBAAU,CAAC,YAAY,EAAE;gBACtF,MAAM,EAAE;oBACN,IAAI,EAAE,wBAAgB,CAAC,oBAAoB;oBAC3C,aAAa,EAAE;wBACb,WAAW,aAAA;wBAAE,UAAU,YAAA;wBAAE,eAAe,iBAAA;wBAAE,cAAc,gBAAA;qBACzD;iBACF;aACF,CAAC,CAAC,CAAC;YACJ,MAAM,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;QAClE,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,OAAO;QACL,IAAI,MAAA;QACJ,SAAS,EAAE,iBAAiB;QAC5B,WAAW,EAAE,mBAAmB;QAChC,YAAY,EAAE,oBAAoB;KACnC,CAAC;AACJ,CAAC,CAAiC,CAAC"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/data-channel/hooks.ts"],"names":[],"mappings":";;;AAAA,+BAA4C;AAa5C,qCAEsB;AAKtB,iCAA6D;AAC7D,iCAAqG;AAExF,QAAA,qBAAqB,GAAG,CAAC,UACpC,WAAmB,EAAE,cAAsB,EAC3C,UAAkB,EAAE,SAAoB,EACxC,eAAiC;IAE3B,IAAA,KAAkB,IAAA,gBAAQ,EAC9B,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,EAFM,IAAI,QAAA,EAAE,OAAO,QAEnB,CAAC;IACI,IAAA,KAA4C,IAAA,gBAAQ,GAAwB,EAA3E,iBAAiB,QAAA,EAAE,oBAAoB,QAAoC,CAAC;IAEnF,IAAM,mBAAmB,GAAwB,UAC/C,cAAgC,IAC7B,OAAA,IAAA,+BAAuB,EAAC,cAAc,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,CAAC,EAAhF,CAAgF,CAAC;IAEtF,IAAM,oBAAoB,GAAyB,UACjD,OAAO,EACP,WAAW,IACR,OAAA,IAAA,gCAAwB,EAAC,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,CAAC,EAAvF,CAAuF,CAAC;IAE7F,IAAM,iBAAiB,GAAG,IAAA,+BAAuB,EAAC,WAAW,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;IAE3F,IAAM,gBAAgB,GAAkB,CAAC,UACvC,WAAwF;QAExF,IAAM,WAAW,GAAG,WAAW,CAAC,MAE/B,CAAC;QACF,IAAM,aAAa,GAAG,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,aAAqC,CAAC;QACzE,IAAI,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,eAAe,MAAK,eAAe,EAAE;YACtD,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;SAC3B;IACH,CAAC,CAAkB,CAAC;IAEpB,IAAM,qCAAqC,GAAkB,CAC3D;QACE,oBAAoB,CAAC,cAAM,OAAA,SAAS,CAAC,uBAAuB,CAAC,iBAAiB,CAAC,EAApD,CAAoD,CAAC,CAAC;QACjF,MAAM,CAAC,mBAAmB,CACxB,UAAG,iBAAiB,wBAAqB,EACzC,qCAAqC,CACtC,CAAC;IACJ,CAAC,CAAkB,CAAC;IACtB,IAAA,iBAAS,EAAC;QACR,MAAM,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;QAC7D,MAAM,CAAC,gBAAgB,CACrB,UAAG,iBAAiB,wBAAqB,EACzC,qCAAqC,CACtC,CAAC;QAEF,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CAAyB,iBAAU,CAAC,6BAA6B,EAAE;YAChF,MAAM,EAAE;gBACN,IAAI,EAAE,wBAAgB,CAAC,oBAAoB;gBAC3C,aAAa,EAAE;oBACb,WAAW,aAAA;oBAAE,UAAU,YAAA;oBAAE,eAAe,iBAAA;oBAAE,cAAc,gBAAA;iBACzD;aACF;SACF,CAAC,CACH,CAAC;QACF,OAAO;YACL,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CAA2B,iBAAU,CAAC,iCAAiC,EAAE;gBACtF,MAAM,EAAE;oBACN,IAAI,EAAE,wBAAgB,CAAC,oBAAoB;oBAC3C,aAAa,EAAE;wBACb,WAAW,aAAA;wBAAE,UAAU,YAAA;wBAAE,eAAe,iBAAA;wBAAE,cAAc,gBAAA;qBACzD;iBACF;aACF,CAAC,CACH,CAAC;YACF,MAAM,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;QAClE,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,OAAO;QACL,IAAI,MAAA;QACJ,SAAS,EAAE,iBAAiB;QAC5B,WAAW,EAAE,mBAAmB;QAChC,YAAY,EAAE,oBAAoB;KACnC,CAAC;AACJ,CAAC,CAAiC,CAAC"}
@@ -22,7 +22,7 @@ exports.formatResponseForPubSubOrKeyValue = formatResponseForPubSubOrKeyValue;
22
22
  var deleteEntryFunctionUtil = function (objectsToDelete, channelName, subChannelName, pluginName) {
23
23
  objectsToDelete.forEach(function (objectToDelete) {
24
24
  if (objectToDelete === constants_1.RESET_DATA_CHANNEL) {
25
- window.dispatchEvent(new CustomEvent(enum_1.HookEvents.UPDATED, {
25
+ window.dispatchEvent(new CustomEvent(enum_1.HookEvents.PLUGIN_SENT_CHANGES_TO_BBB_CORE, {
26
26
  detail: {
27
27
  hook: enums_1.DataChannelHooks.DATA_CHANNEL_RESET,
28
28
  hookArguments: { channelName: channelName, pluginName: pluginName, subChannelName: subChannelName },
@@ -31,7 +31,7 @@ var deleteEntryFunctionUtil = function (objectsToDelete, channelName, subChannel
31
31
  }));
32
32
  }
33
33
  else {
34
- window.dispatchEvent(new CustomEvent(enum_1.HookEvents.UPDATED, {
34
+ window.dispatchEvent(new CustomEvent(enum_1.HookEvents.PLUGIN_SENT_CHANGES_TO_BBB_CORE, {
35
35
  detail: {
36
36
  hook: enums_1.DataChannelHooks.DATA_CHANNEL_DELETE,
37
37
  hookArguments: { channelName: channelName, pluginName: pluginName, subChannelName: subChannelName },
@@ -43,7 +43,7 @@ var deleteEntryFunctionUtil = function (objectsToDelete, channelName, subChannel
43
43
  };
44
44
  exports.deleteEntryFunctionUtil = deleteEntryFunctionUtil;
45
45
  var replaceEntryFunctionUtil = function (entryId, channelName, subChannelName, pluginName, newPayloadJson) {
46
- window.dispatchEvent(new CustomEvent(enum_1.HookEvents.UPDATED, {
46
+ window.dispatchEvent(new CustomEvent(enum_1.HookEvents.PLUGIN_SENT_CHANGES_TO_BBB_CORE, {
47
47
  detail: {
48
48
  hook: enums_1.DataChannelHooks.DATA_CHANNEL_REPLACE,
49
49
  hookArguments: { channelName: channelName, pluginName: pluginName, subChannelName: subChannelName },
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/data-channel/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAKA,qCAEsB;AAKtB,iCAA2C;AAC3C,yCAAiD;AAE1C,IAAM,uBAAuB,GAAG,UAAC,WAAmB,EAAE,cAAsB,EAAE,UAAkB,IAAK,OAAA,UAAG,WAAW,eAAK,cAAc,eAAK,UAAU,CAAE,EAAlD,CAAkD,CAAC;AAAlJ,QAAA,uBAAuB,2BAA2H;AAExJ,IAAM,iCAAiC,GAAG,UAC/C,UAAqE,IACT,OAAA,uBACvD,UAAU,KACb,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IACtD,EAH0D,CAG1D,CAAC;AALQ,QAAA,iCAAiC,qCAKzC;AAEE,IAAM,uBAAuB,GAAG,UACrC,eAAiC,EACjC,WAAmB,EACnB,cAAsB,EACtB,UAAkB;IAElB,eAAe,CAAC,OAAO,CAAC,UAAC,cAAc;QACrC,IAAI,cAAc,KAAK,8BAAkB,EAAE;YACzC,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAA4B,iBAAU,CAAC,OAAO,EAAE;gBAClF,MAAM,EAAE;oBACN,IAAI,EAAE,wBAAgB,CAAC,kBAAkB;oBACzC,aAAa,EAAE,EAAE,WAAW,aAAA,EAAE,UAAU,YAAA,EAAE,cAAc,gBAAA,EAAE;oBAC1D,IAAI,EAAE,SAAS;iBAChB;aACF,CAAC,CAAC,CAAC;SACL;aAAM;YACL,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAA8B,iBAAU,CAAC,OAAO,EAAE;gBACpF,MAAM,EAAE;oBACN,IAAI,EAAE,wBAAgB,CAAC,mBAAmB;oBAC1C,aAAa,EAAE,EAAE,WAAW,aAAA,EAAE,UAAU,YAAA,EAAE,cAAc,gBAAA,EAAE;oBAC1D,IAAI,EAAE,cAAc;iBACrB;aACF,CAAC,CAAC,CAAC;SACL;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAzBW,QAAA,uBAAuB,2BAyBlC;AAEK,IAAM,wBAAwB,GAAG,UACtC,OAAe,EACf,WAAmB,EACnB,cAAsB,EACtB,UAAkB,EAClB,cAAiB;IAEjB,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CAAwD,iBAAU,CAAC,OAAO,EAAE;QACzF,MAAM,EAAE;YACN,IAAI,EAAE,wBAAgB,CAAC,oBAAoB;YAC3C,aAAa,EAAE,EAAE,WAAW,aAAA,EAAE,UAAU,YAAA,EAAE,cAAc,gBAAA,EAAE;YAC1D,IAAI,EAAE;gBACJ,OAAO,SAAA;gBACP,WAAW,EAAE,cAAc;aAC5B;SACF;KACF,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAnBW,QAAA,wBAAwB,4BAmBnC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/data-channel/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAKA,qCAEsB;AAKtB,iCAA2C;AAC3C,yCAAiD;AAE1C,IAAM,uBAAuB,GAAG,UAAC,WAAmB,EAAE,cAAsB,EAAE,UAAkB,IAAK,OAAA,UAAG,WAAW,eAAK,cAAc,eAAK,UAAU,CAAE,EAAlD,CAAkD,CAAC;AAAlJ,QAAA,uBAAuB,2BAA2H;AAExJ,IAAM,iCAAiC,GAAG,UAC/C,UAAqE,IACT,OAAA,uBACvD,UAAU,KACb,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IACtD,EAH0D,CAG1D,CAAC;AALQ,QAAA,iCAAiC,qCAKzC;AAEE,IAAM,uBAAuB,GAAG,UACrC,eAAiC,EACjC,WAAmB,EACnB,cAAsB,EACtB,UAAkB;IAElB,eAAe,CAAC,OAAO,CAAC,UAAC,cAAc;QACrC,IAAI,cAAc,KAAK,8BAAkB,EAAE;YACzC,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CAA4B,iBAAU,CAAC,+BAA+B,EAAE;gBACrF,MAAM,EAAE;oBACN,IAAI,EAAE,wBAAgB,CAAC,kBAAkB;oBACzC,aAAa,EAAE,EAAE,WAAW,aAAA,EAAE,UAAU,YAAA,EAAE,cAAc,gBAAA,EAAE;oBAC1D,IAAI,EAAE,SAAS;iBAChB;aACF,CAAC,CACH,CAAC;SACH;aAAM;YACL,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CAA8B,iBAAU,CAAC,+BAA+B,EAAE;gBACvF,MAAM,EAAE;oBACN,IAAI,EAAE,wBAAgB,CAAC,mBAAmB;oBAC1C,aAAa,EAAE,EAAE,WAAW,aAAA,EAAE,UAAU,YAAA,EAAE,cAAc,gBAAA,EAAE;oBAC1D,IAAI,EAAE,cAAc;iBACrB;aACF,CAAC,CACH,CAAC;SACH;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AA7BW,QAAA,uBAAuB,2BA6BlC;AAEK,IAAM,wBAAwB,GAAG,UACtC,OAAe,EACf,WAAmB,EACnB,cAAsB,EACtB,UAAkB,EAClB,cAAiB;IAEjB,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CAEwB,iBAAU,CAAC,+BAA+B,EAAE;QAC7E,MAAM,EAAE;YACN,IAAI,EAAE,wBAAgB,CAAC,oBAAoB;YAC3C,aAAa,EAAE,EAAE,WAAW,aAAA,EAAE,UAAU,YAAA,EAAE,cAAc,gBAAA,EAAE;YAC1D,IAAI,EAAE;gBACJ,OAAO,SAAA;gBACP,WAAW,EAAE,cAAc;aAC5B;SACF;KACF,CAAC,CACP,CAAC;AACJ,CAAC,CAAC;AArBW,QAAA,wBAAwB,4BAqBnC"}
@@ -6,7 +6,7 @@ var enum_1 = require("../../core/enum");
6
6
  var utils_1 = require("../utils");
7
7
  var enums_1 = require("../enums");
8
8
  var updateCustomHookSubscription = function (hookName, handleCustomSubscriptionUpdateEvent, previousQuery, previousVariables, currentQuery, currentVariables) {
9
- window.dispatchEvent(new CustomEvent(enum_1.HookEvents.UNSUBSCRIBED, {
9
+ window.dispatchEvent(new CustomEvent(enum_1.HookEvents.PLUGIN_UNSUBSCRIBED_FROM_BBB_CORE, {
10
10
  detail: {
11
11
  hook: hookName,
12
12
  hookArguments: {
@@ -15,7 +15,7 @@ var updateCustomHookSubscription = function (hookName, handleCustomSubscriptionU
15
15
  },
16
16
  },
17
17
  }));
18
- window.dispatchEvent(new CustomEvent(enum_1.HookEvents.SUBSCRIBED, {
18
+ window.dispatchEvent(new CustomEvent(enum_1.HookEvents.PLUGIN_SUBSCRIBED_TO_BBB_CORE, {
19
19
  detail: {
20
20
  hook: hookName,
21
21
  hookArguments: {
@@ -24,7 +24,7 @@ var updateCustomHookSubscription = function (hookName, handleCustomSubscriptionU
24
24
  },
25
25
  },
26
26
  }));
27
- window.addEventListener(enum_1.HookEvents.UPDATED, handleCustomSubscriptionUpdateEvent);
27
+ window.addEventListener(enum_1.HookEvents.BBB_CORE_SENT_NEW_DATA, handleCustomSubscriptionUpdateEvent);
28
28
  };
29
29
  var createDataConsumptionHook = function (hookName, hookArguments) {
30
30
  var _a = (0, react_1.useState)({ loading: true }), hookData = _a[0], setHookData = _a[1];
@@ -53,15 +53,15 @@ var createDataConsumptionHook = function (hookName, hookArguments) {
53
53
  setVariablesState(function () { return JSON.parse((0, utils_1.sortedStringify)(hookArguments === null || hookArguments === void 0 ? void 0 : hookArguments.variables)); });
54
54
  }
55
55
  (0, react_1.useEffect)(function () {
56
- window.addEventListener(enum_1.HookEvents.UPDATED, handleCustomSubscriptionUpdateEvent);
57
- window.dispatchEvent(new CustomEvent(enum_1.HookEvents.SUBSCRIBED, {
56
+ window.addEventListener(enum_1.HookEvents.BBB_CORE_SENT_NEW_DATA, handleCustomSubscriptionUpdateEvent);
57
+ window.dispatchEvent(new CustomEvent(enum_1.HookEvents.PLUGIN_SUBSCRIBED_TO_BBB_CORE, {
58
58
  detail: {
59
59
  hook: hookName,
60
60
  hookArguments: hookArguments,
61
61
  },
62
62
  }));
63
63
  return function () {
64
- window.dispatchEvent(new CustomEvent(enum_1.HookEvents.UNSUBSCRIBED, {
64
+ window.dispatchEvent(new CustomEvent(enum_1.HookEvents.PLUGIN_UNSUBSCRIBED_FROM_BBB_CORE, {
65
65
  detail: {
66
66
  hook: hookName,
67
67
  hookArguments: {
@@ -70,7 +70,7 @@ var createDataConsumptionHook = function (hookName, hookArguments) {
70
70
  },
71
71
  },
72
72
  }));
73
- window.removeEventListener(enum_1.HookEvents.UPDATED, handleCustomSubscriptionUpdateEvent);
73
+ window.removeEventListener(enum_1.HookEvents.BBB_CORE_SENT_NEW_DATA, handleCustomSubscriptionUpdateEvent);
74
74
  };
75
75
  }, []);
76
76
  (0, react_1.useEffect)(function () {
@@ -1 +1 @@
1
- {"version":3,"file":"hookCreator.js","sourceRoot":"","sources":["../../../../src/data-consumption/factory/hookCreator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hookCreator.js","sourceRoot":"","sources":["../../../../src/data-consumption/factory/hookCreator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- export declare const useChatMessageDomElements: (messageIds: string[]) => HTMLDivElement[] | undefined;
1
+ export declare const useChatMessageDomElements: (messageIds: string[], pluginUuid: string) => HTMLDivElement[] | undefined;
@@ -1,53 +1,79 @@
1
1
  "use strict";
2
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
3
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
4
+ if (ar || !(i in from)) {
5
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
6
+ ar[i] = from[i];
7
+ }
8
+ }
9
+ return to.concat(ar || Array.prototype.slice.call(from));
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.useChatMessageDomElements = void 0;
4
13
  var react_1 = require("react");
5
14
  var enums_1 = require("../../enums");
6
15
  var enum_1 = require("../../../core/enum");
7
16
  var utils_1 = require("../../../data-consumption/utils");
8
- var useChatMessageDomElements = function (messageIds) {
17
+ var useChatMessageDomElements = function (messageIds, pluginUuid) {
9
18
  var _a = (0, react_1.useState)(), domElement = _a[0], setDomElement = _a[1];
10
- var _b = (0, react_1.useState)(messageIds), messageIdsState = _b[0], setMessageIdsState = _b[1];
11
- var handleCustomSubscriptionUpdateEvent = (function (event) {
19
+ var _b = (0, react_1.useState)((messageIds) || []), messageIdsState = _b[0], setMessageIdsState = _b[1];
20
+ var previousNeededIds = (0, react_1.useRef)();
21
+ var handleDomElementUpdateEvent = (function (event) {
22
+ var _a;
12
23
  var detail = event.detail;
13
- if (detail.hook === enums_1.DomElementManipulationHooks.CHAT_MESSAGE
14
- && (0, utils_1.sortedStringify)(detail.data.map(function (message) { return message.messageId; })) === (0, utils_1.sortedStringify)(messageIdsState)) {
15
- setDomElement(detail.data.map(function (message) { return message.message; }));
24
+ if (detail.hook === enums_1.DomElementManipulationHooks.CHAT_MESSAGE) {
25
+ var filteredDataFromBbbCore = ((_a = detail.data) === null || _a === void 0 ? void 0 : _a.filter(function (item) { return messageIdsState.includes(item.messageId); })) || [];
26
+ var filteredStreamIdsFromBbbCore = filteredDataFromBbbCore.map(function (item) { return item.messageId; });
27
+ if ((0, utils_1.sortedStringify)(filteredStreamIdsFromBbbCore)
28
+ !== (0, utils_1.sortedStringify)(previousNeededIds.current)) {
29
+ previousNeededIds.current = __spreadArray([], filteredStreamIdsFromBbbCore, true);
30
+ setDomElement(filteredDataFromBbbCore.map(function (messageItemFromCore) { return messageItemFromCore.message; }));
31
+ }
16
32
  }
17
33
  });
18
34
  (0, react_1.useEffect)(function () {
19
- if (messageIdsState) {
20
- window.addEventListener(enum_1.HookEvents.UPDATED, handleCustomSubscriptionUpdateEvent);
21
- return function () {
22
- window.removeEventListener(enum_1.HookEvents.UPDATED, handleCustomSubscriptionUpdateEvent);
23
- window.dispatchEvent(new CustomEvent(enum_1.HookEvents.UNSUBSCRIBED, {
24
- detail: {
25
- hook: enums_1.DomElementManipulationHooks.CHAT_MESSAGE,
26
- hookArguments: {
27
- messageIds: messageIds,
28
- },
29
- },
30
- }));
31
- };
32
- }
33
- return function () { };
34
- }, []);
35
- (0, react_1.useEffect)(function () {
36
- if (messageIdsState) {
37
- window.removeEventListener(enum_1.HookEvents.UPDATED, handleCustomSubscriptionUpdateEvent);
38
- window.addEventListener(enum_1.HookEvents.UPDATED, handleCustomSubscriptionUpdateEvent);
39
- window.dispatchEvent(new CustomEvent(enum_1.HookEvents.SUBSCRIBED, {
35
+ window.dispatchEvent(new CustomEvent(enum_1.HookEvents.PLUGIN_SUBSCRIBED_TO_BBB_CORE, {
36
+ detail: {
37
+ hook: enums_1.DomElementManipulationHooks.CHAT_MESSAGE,
38
+ hookArguments: {
39
+ messageIds: messageIds,
40
+ pluginUuid: pluginUuid,
41
+ },
42
+ },
43
+ }));
44
+ window.addEventListener(enum_1.HookEvents.BBB_CORE_SENT_NEW_DATA, handleDomElementUpdateEvent);
45
+ return function () {
46
+ window.dispatchEvent(new CustomEvent(enum_1.HookEvents.PLUGIN_UNSUBSCRIBED_FROM_BBB_CORE, {
40
47
  detail: {
41
48
  hook: enums_1.DomElementManipulationHooks.CHAT_MESSAGE,
42
49
  hookArguments: {
43
50
  messageIds: messageIds,
51
+ pluginUuid: pluginUuid,
44
52
  },
45
53
  },
46
54
  }));
47
- }
55
+ };
56
+ }, []);
57
+ (0, react_1.useEffect)(function () {
58
+ window.addEventListener(enum_1.HookEvents.BBB_CORE_SENT_NEW_DATA, handleDomElementUpdateEvent);
59
+ window.dispatchEvent(new CustomEvent(enum_1.HookEvents.PLUGIN_SENT_CHANGES_TO_BBB_CORE, {
60
+ detail: {
61
+ hook: enums_1.DomElementManipulationHooks.CHAT_MESSAGE,
62
+ hookArguments: {
63
+ messageIds: messageIds,
64
+ pluginUuid: pluginUuid,
65
+ },
66
+ data: undefined,
67
+ },
68
+ }));
69
+ // Runs on code cleanup
70
+ return function () {
71
+ // Everytime the state update, we remove the eventListener and then we re-add it.
72
+ window.removeEventListener(enum_1.HookEvents.BBB_CORE_SENT_NEW_DATA, handleDomElementUpdateEvent);
73
+ };
48
74
  }, [messageIdsState]);
49
- if ((0, utils_1.sortedStringify)(messageIds) !== (0, utils_1.sortedStringify)(messageIdsState)) {
50
- setMessageIdsState(messageIds);
75
+ if ((0, utils_1.sortedStringify)((messageIds) || []) !== (0, utils_1.sortedStringify)(messageIdsState)) {
76
+ setMessageIdsState((messageIds) || []);
51
77
  }
52
78
  return domElement;
53
79
  };
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../../../src/dom-element-manipulation/chat/message/hooks.ts"],"names":[],"mappings":";;;AAAA,+BAA4C;AAC5C,qCAA0D;AAC1D,2CAAgD;AAKhD,yDAAkE;AAE3D,IAAM,yBAAyB,GAAG,UAAC,UAAoB;IACtD,IAAA,KAA8B,IAAA,gBAAQ,GAAoB,EAAzD,UAAU,QAAA,EAAE,aAAa,QAAgC,CAAC;IAC3D,IAAA,KAAwC,IAAA,gBAAQ,EAAW,UAAU,CAAC,EAArE,eAAe,QAAA,EAAE,kBAAkB,QAAkC,CAAC;IAE7E,IAAM,mCAAmC,GAAkB,CACzD,UAAC,KACqE;QACpE,IAAM,MAAM,GAAG,KAAK,CAAC,MAC4B,CAAC;QAClD,IAAI,MAAM,CAAC,IAAI,KAAK,mCAA2B,CAAC,YAAY;eACvD,IAAA,uBAAe,EAChB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,OAAO,IAAK,OAAA,OAAO,CAAC,SAAS,EAAjB,CAAiB,CAAC,CAChD,KAAK,IAAA,uBAAe,EAAC,eAAe,CAAC,EAAE;YACxC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,OAAO,IAAK,OAAA,OAAO,CAAC,OAAO,EAAf,CAAe,CAAC,CAAC,CAAC;SAC9D;IACH,CAAC,CAAkB,CAAC;IAEtB,IAAA,iBAAS,EAAC;QACR,IAAI,eAAe,EAAE;YACnB,MAAM,CAAC,gBAAgB,CAAC,iBAAU,CAAC,OAAO,EAAE,mCAAmC,CAAC,CAAC;YACjF,OAAO;gBACL,MAAM,CAAC,mBAAmB,CAAC,iBAAU,CAAC,OAAO,EAAE,mCAAmC,CAAC,CAAC;gBACpF,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAA2B,iBAAU,CAAC,YAAY,EAAE;oBACtF,MAAM,EAAE;wBACN,IAAI,EAAE,mCAA2B,CAAC,YAAY;wBAC9C,aAAa,EAAE;4BACb,UAAU,YAAA;yBACwB;qBACrC;iBACF,CAAC,CAAC,CAAC;YACN,CAAC,CAAC;SACH;QACD,OAAO,cAAO,CAAC,CAAC;IAClB,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,IAAA,iBAAS,EAAC;QACR,IAAI,eAAe,EAAE;YACnB,MAAM,CAAC,mBAAmB,CAAC,iBAAU,CAAC,OAAO,EAAE,mCAAmC,CAAC,CAAC;YACpF,MAAM,CAAC,gBAAgB,CAAC,iBAAU,CAAC,OAAO,EAAE,mCAAmC,CAAC,CAAC;YACjF,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAAyB,iBAAU,CAAC,UAAU,EAAE;gBAClF,MAAM,EAAE;oBACN,IAAI,EAAE,mCAA2B,CAAC,YAAY;oBAC9C,aAAa,EAAE;wBACb,UAAU,YAAA;qBACwB;iBACrC;aACF,CAAC,CAAC,CAAC;SACL;IACH,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IACtB,IAAI,IAAA,uBAAe,EAAC,UAAU,CAAC,KAAK,IAAA,uBAAe,EAAC,eAAe,CAAC,EAAE;QACpE,kBAAkB,CAAC,UAAU,CAAC,CAAC;KAChC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AApDW,QAAA,yBAAyB,6BAoDpC"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../../../src/dom-element-manipulation/chat/message/hooks.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  export type UseChatMessageDomElementsFunction = (messageIds: string[]) => HTMLDivElement[] | undefined;
2
2
  export interface ChatMessageDomElementsArguments {
3
3
  messageIds: string[];
4
+ pluginUuid: string;
4
5
  }
5
6
  export interface UpdatedEventDetailsForChatMessageDomElements {
6
7
  messageId: string;
@@ -1 +1 @@
1
- export declare const useUserCameraDomElements: (streamIds: string[]) => HTMLDivElement[] | undefined;
1
+ export declare const useUserCameraDomElements: (streamIds: string[], pluginUuid: string) => HTMLDivElement[] | undefined;
@@ -1,53 +1,78 @@
1
1
  "use strict";
2
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
3
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
4
+ if (ar || !(i in from)) {
5
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
6
+ ar[i] = from[i];
7
+ }
8
+ }
9
+ return to.concat(ar || Array.prototype.slice.call(from));
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.useUserCameraDomElements = void 0;
4
13
  var react_1 = require("react");
5
14
  var enums_1 = require("../enums");
6
15
  var enum_1 = require("../../core/enum");
7
16
  var utils_1 = require("../../data-consumption/utils");
8
- var useUserCameraDomElements = function (streamIds) {
17
+ var useUserCameraDomElements = function (streamIds, pluginUuid) {
9
18
  var _a = (0, react_1.useState)(), domElement = _a[0], setDomElement = _a[1];
10
- var _b = (0, react_1.useState)(streamIds), streamIdsState = _b[0], setStreamIdsState = _b[1];
11
- var handleCustomSubscriptionUpdateEvent = (function (event) {
19
+ var _b = (0, react_1.useState)((streamIds) || []), streamIdsState = _b[0], setStreamIdsState = _b[1];
20
+ var previousNeededIds = (0, react_1.useRef)([]);
21
+ var handleDomElementUpdateEvent = (function (event) {
22
+ var _a;
12
23
  var detail = event.detail;
13
- if (detail.hook === enums_1.DomElementManipulationHooks.USER_CAMERA
14
- && (0, utils_1.sortedStringify)(detail.data.map(function (userCamera) { return userCamera.streamId; })) === (0, utils_1.sortedStringify)(streamIdsState)) {
15
- setDomElement(detail.data.map(function (userCamera) { return userCamera.userCameraDomElement; }));
24
+ if (detail.hook === enums_1.DomElementManipulationHooks.USER_CAMERA) {
25
+ var filteredDataFromBbbCore = ((_a = detail.data) === null || _a === void 0 ? void 0 : _a.filter(function (item) { return streamIdsState.includes(item.streamId); })) || [];
26
+ var filteredStreamIdsFromBbbCore = filteredDataFromBbbCore.map(function (item) { return item.streamId; });
27
+ if ((0, utils_1.sortedStringify)(filteredStreamIdsFromBbbCore)
28
+ !== (0, utils_1.sortedStringify)(previousNeededIds.current)) {
29
+ previousNeededIds.current = __spreadArray([], filteredStreamIdsFromBbbCore, true);
30
+ setDomElement(filteredDataFromBbbCore.map(function (userCamera) { return userCamera.userCameraDomElement; }));
31
+ }
16
32
  }
17
33
  });
18
34
  (0, react_1.useEffect)(function () {
19
- if (streamIdsState) {
20
- window.addEventListener(enum_1.HookEvents.UPDATED, handleCustomSubscriptionUpdateEvent);
21
- return function () {
22
- window.removeEventListener(enum_1.HookEvents.UPDATED, handleCustomSubscriptionUpdateEvent);
23
- window.dispatchEvent(new CustomEvent(enum_1.HookEvents.UNSUBSCRIBED, {
24
- detail: {
25
- hook: enums_1.DomElementManipulationHooks.USER_CAMERA,
26
- hookArguments: {
27
- streamIds: streamIds,
28
- },
29
- },
30
- }));
31
- };
32
- }
33
- return function () { };
34
- }, []);
35
- (0, react_1.useEffect)(function () {
36
- if (streamIdsState) {
37
- window.removeEventListener(enum_1.HookEvents.UPDATED, handleCustomSubscriptionUpdateEvent);
38
- window.addEventListener(enum_1.HookEvents.UPDATED, handleCustomSubscriptionUpdateEvent);
39
- window.dispatchEvent(new CustomEvent(enum_1.HookEvents.SUBSCRIBED, {
35
+ window.dispatchEvent(new CustomEvent(enum_1.HookEvents.PLUGIN_SUBSCRIBED_TO_BBB_CORE, {
36
+ detail: {
37
+ hook: enums_1.DomElementManipulationHooks.USER_CAMERA,
38
+ hookArguments: {
39
+ streamIds: streamIdsState,
40
+ pluginUuid: pluginUuid,
41
+ },
42
+ },
43
+ }));
44
+ return function () {
45
+ window.dispatchEvent(new CustomEvent(enum_1.HookEvents.PLUGIN_UNSUBSCRIBED_FROM_BBB_CORE, {
40
46
  detail: {
41
47
  hook: enums_1.DomElementManipulationHooks.USER_CAMERA,
42
48
  hookArguments: {
43
- streamIds: streamIdsState,
49
+ streamIds: streamIds,
50
+ pluginUuid: pluginUuid,
44
51
  },
45
52
  },
46
53
  }));
47
- }
54
+ };
55
+ }, []);
56
+ (0, react_1.useEffect)(function () {
57
+ window.addEventListener(enum_1.HookEvents.BBB_CORE_SENT_NEW_DATA, handleDomElementUpdateEvent);
58
+ window.dispatchEvent(new CustomEvent(enum_1.HookEvents.PLUGIN_SENT_CHANGES_TO_BBB_CORE, {
59
+ detail: {
60
+ hook: enums_1.DomElementManipulationHooks.USER_CAMERA,
61
+ hookArguments: {
62
+ streamIds: (streamIdsState) || [],
63
+ pluginUuid: pluginUuid,
64
+ },
65
+ data: undefined,
66
+ },
67
+ }));
68
+ // Runs on code cleanup
69
+ return function () {
70
+ // Everytime the state update, we remove the eventListener and then we re-add it.
71
+ window.removeEventListener(enum_1.HookEvents.BBB_CORE_SENT_NEW_DATA, handleDomElementUpdateEvent);
72
+ };
48
73
  }, [streamIdsState]);
49
- if ((0, utils_1.sortedStringify)(streamIds) !== (0, utils_1.sortedStringify)(streamIdsState)) {
50
- setStreamIdsState(streamIds);
74
+ if ((0, utils_1.sortedStringify)((streamIds) || []) !== (0, utils_1.sortedStringify)(streamIdsState)) {
75
+ setStreamIdsState((streamIds) || []);
51
76
  }
52
77
  return domElement;
53
78
  };
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../../src/dom-element-manipulation/user-camera/hooks.ts"],"names":[],"mappings":";;;AAAA,+BAA4C;AAC5C,kCAAuD;AACvD,wCAA6C;AAK7C,sDAA+D;AAExD,IAAM,wBAAwB,GAAG,UAAC,SAAmB;IACpD,IAAA,KAA8B,IAAA,gBAAQ,GAAoB,EAAzD,UAAU,QAAA,EAAE,aAAa,QAAgC,CAAC;IAC3D,IAAA,KAAsC,IAAA,gBAAQ,EAAW,SAAS,CAAC,EAAlE,cAAc,QAAA,EAAE,iBAAiB,QAAiC,CAAC;IAE1E,IAAM,mCAAmC,GAAkB,CACzD,UAAC,KACmE;QAClE,IAAM,MAAM,GAAG,KAAK,CAAC,MAC0B,CAAC;QAChD,IAAI,MAAM,CAAC,IAAI,KAAK,mCAA2B,CAAC,WAAW;eACtD,IAAA,uBAAe,EAChB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,UAAU,IAAK,OAAA,UAAU,CAAC,QAAQ,EAAnB,CAAmB,CAAC,CACrD,KAAK,IAAA,uBAAe,EAAC,cAAc,CAAC,EAAE;YACvC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,UAAU,IAAK,OAAA,UAAU,CAAC,oBAAoB,EAA/B,CAA+B,CAAC,CAAC,CAAC;SACjF;IACH,CAAC,CAAkB,CAAC;IAEtB,IAAA,iBAAS,EAAC;QACR,IAAI,cAAc,EAAE;YAClB,MAAM,CAAC,gBAAgB,CAAC,iBAAU,CAAC,OAAO,EAAE,mCAAmC,CAAC,CAAC;YACjF,OAAO;gBACL,MAAM,CAAC,mBAAmB,CAAC,iBAAU,CAAC,OAAO,EAAE,mCAAmC,CAAC,CAAC;gBACpF,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAA2B,iBAAU,CAAC,YAAY,EAAE;oBACtF,MAAM,EAAE;wBACN,IAAI,EAAE,mCAA2B,CAAC,WAAW;wBAC7C,aAAa,EAAE;4BACb,SAAS,WAAA;yBACwB;qBACpC;iBACF,CAAC,CAAC,CAAC;YACN,CAAC,CAAC;SACH;QACD,OAAO,cAAO,CAAC,CAAC;IAClB,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,IAAA,iBAAS,EAAC;QACR,IAAI,cAAc,EAAE;YAClB,MAAM,CAAC,mBAAmB,CAAC,iBAAU,CAAC,OAAO,EAAE,mCAAmC,CAAC,CAAC;YACpF,MAAM,CAAC,gBAAgB,CAAC,iBAAU,CAAC,OAAO,EAAE,mCAAmC,CAAC,CAAC;YACjF,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAAyB,iBAAU,CAAC,UAAU,EAAE;gBAClF,MAAM,EAAE;oBACN,IAAI,EAAE,mCAA2B,CAAC,WAAW;oBAC7C,aAAa,EAAE;wBACb,SAAS,EAAE,cAAc;qBACQ;iBACpC;aACF,CAAC,CAAC,CAAC;SACL;IACH,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IACrB,IAAI,IAAA,uBAAe,EAAC,SAAS,CAAC,KAAK,IAAA,uBAAe,EAAC,cAAc,CAAC,EAAE;QAClE,iBAAiB,CAAC,SAAS,CAAC,CAAC;KAC9B;IACD,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AApDW,QAAA,wBAAwB,4BAoDnC"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../../src/dom-element-manipulation/user-camera/hooks.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
1
  export type UseUserCameraDomElementsFunction = (streamIds: string[]) => HTMLDivElement[] | undefined;
2
2
  export interface UserCameraDomElementsArguments {
3
3
  streamIds: string[];
4
+ pluginUuid: string;
4
5
  }
5
- export interface UpdatedEventDetailsForUserCameraDomElement {
6
+ export interface UpdatedDataForUserCameraDomElement {
6
7
  streamId: string;
7
8
  userCameraDomElement: HTMLDivElement;
8
9
  }
@@ -9,10 +9,11 @@ import { OptionsDropdownItemType } from './options-dropdown-item/enums';
9
9
  import { PresentationDropdownItemType } from './presentation-dropdown-item/enums';
10
10
  import { PresentationToolbarItemType } from './presentation-toolbar-item/enums';
11
11
  import { ScreenshareHelperItemType } from './screenshare-helper-item/enums';
12
+ import { UserCameraHelperItemType } from './user-camera-helper-item/enums';
12
13
  import { UserCameraDropdownItemType } from './user-camera-dropdown-item/enums';
13
14
  import { UserListDropdownItemType } from './user-list-dropdown-item/enums';
14
15
  import { UserListItemAdditionalInformationType } from './user-list-item-additional-information/enums';
15
- type PluginProvidedUiItemType = PresentationToolbarItemType | UserListDropdownItemType | ActionButtonDropdownItemType | ActionsBarItemType | AudioSettingsDropdownItemType | PresentationDropdownItemType | NavBarItemType | OptionsDropdownItemType | CameraSettingsDropdownItemType | UserCameraDropdownItemType | UserListItemAdditionalInformationType | FloatingWindowType | GenericContentType | ScreenshareHelperItemType;
16
+ type PluginProvidedUiItemType = PresentationToolbarItemType | UserListDropdownItemType | ActionButtonDropdownItemType | ActionsBarItemType | AudioSettingsDropdownItemType | PresentationDropdownItemType | NavBarItemType | OptionsDropdownItemType | CameraSettingsDropdownItemType | UserCameraDropdownItemType | UserListItemAdditionalInformationType | FloatingWindowType | GenericContentType | ScreenshareHelperItemType | UserCameraHelperItemType;
16
17
  export interface PluginProvidedUiItemDescriptor {
17
18
  /** Defined by BigBlueButton Plugin Engine. */
18
19
  id: string;
@@ -9,6 +9,7 @@ export * from './screenshare-helper-item';
9
9
  export * from './options-dropdown-item';
10
10
  export * from './camera-settings-dropdown-item';
11
11
  export * from './user-camera-dropdown-item';
12
+ export * from './user-camera-helper-item';
12
13
  export * from './user-list-item-additional-information';
13
14
  export * from './floating-window';
14
15
  export * from './generic-content-item';
@@ -25,6 +25,7 @@ __exportStar(require("./screenshare-helper-item"), exports);
25
25
  __exportStar(require("./options-dropdown-item"), exports);
26
26
  __exportStar(require("./camera-settings-dropdown-item"), exports);
27
27
  __exportStar(require("./user-camera-dropdown-item"), exports);
28
+ __exportStar(require("./user-camera-helper-item"), exports);
28
29
  __exportStar(require("./user-list-item-additional-information"), exports);
29
30
  __exportStar(require("./floating-window"), exports);
30
31
  __exportStar(require("./generic-content-item"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/extensible-areas/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8DAA4C;AAC5C,4DAA0C;AAC1C,gEAA8C;AAC9C,qDAAmC;AACnC,iEAA+C;AAC/C,+DAA6C;AAC7C,iDAA+B;AAC/B,4DAA0C;AAC1C,0DAAwC;AACxC,kEAAgD;AAChD,8DAA4C;AAC5C,0EAAwD;AACxD,oDAAkC;AAClC,yDAAuC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/extensible-areas/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8DAA4C;AAC5C,4DAA0C;AAC1C,gEAA8C;AAC9C,qDAAmC;AACnC,iEAA+C;AAC/C,+DAA6C;AAC7C,iDAA+B;AAC/B,4DAA0C;AAC1C,0DAAwC;AACxC,kEAAgD;AAChD,8DAA4C;AAC5C,4DAA0C;AAC1C,0EAAwD;AACxD,oDAAkC;AAClC,yDAAuC"}
@@ -1,5 +1,5 @@
1
1
  import { ScreenshareHelperItemType, ScreenshareHelperItemPosition } from './enums';
2
- import { ScreenshareHelperButtonProps, ScreenshareHelperButtonInterface } from './types';
2
+ import { ScreenshareHelperButtonProps, ScreenshareHelperButtonInterface, ScreenshareHelperButtonOnclickCallback } from './types';
3
3
  export declare class ScreenshareHelperButton implements ScreenshareHelperButtonInterface {
4
4
  id: string;
5
5
  type: ScreenshareHelperItemType;
@@ -8,7 +8,7 @@ export declare class ScreenshareHelperButton implements ScreenshareHelperButtonI
8
8
  tooltip: string;
9
9
  disabled: boolean;
10
10
  position: ScreenshareHelperItemPosition;
11
- onClick: () => void;
11
+ onClick: (args: ScreenshareHelperButtonOnclickCallback) => void;
12
12
  /**
13
13
  * Returns object to be used in the setter for the Screenshare Helper. In this case,
14
14
  * a button.
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/screenshare-helper-item/component.ts"],"names":[],"mappings":";;;AAAA,iCAAmF;AAMnF,oCAAoC;AAEpC;IAiBE;;;;;;;;;;;;;;;OAeG;IACH,iCAAY,EAGmB;YAF7B,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA,EAAE,YAAS,EAAT,IAAI,mBAAG,EAAE,KAAA,EAAE,eAAY,EAAZ,OAAO,mBAAG,EAAE,KAAA,EAAE,gBAAe,EAAf,QAAQ,mBAAG,IAAI,KAAA,EAAE,eAAkB,EAAlB,OAAO,mBAAG,cAAO,CAAC,KAAA,EACxE,gBAAkD,EAAlD,QAAQ,mBAAG,qCAA6B,CAAC,SAAS,KAAA;QAFpD,iBAWC;QA3CD,OAAE,GAAW,EAAE,CAAC;QA6ChB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,kCAA2B,EAAE,CAAE,CAAC;QAC5C,CAAC,CAAC;QAXA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,iCAAyB,CAAC,MAAM,CAAC;QAC7C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAKH,8BAAC;AAAD,CAAC,AAjDD,IAiDC;AAjDY,0DAAuB"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/screenshare-helper-item/component.ts"],"names":[],"mappings":";;;AAAA,iCAAmF;AAOnF,oCAAoC;AAEpC;IAiBE;;;;;;;;;;;;;;;OAeG;IACH,iCAAY,EAGmB;YAF7B,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA,EAAE,YAAS,EAAT,IAAI,mBAAG,EAAE,KAAA,EAAE,eAAY,EAAZ,OAAO,mBAAG,EAAE,KAAA,EAAE,gBAAe,EAAf,QAAQ,mBAAG,IAAI,KAAA,EAAE,eAAkB,EAAlB,OAAO,mBAAG,cAAO,CAAC,KAAA,EACxE,gBAAkD,EAAlD,QAAQ,mBAAG,qCAA6B,CAAC,SAAS,KAAA;QAFpD,iBAWC;QA3CD,OAAE,GAAW,EAAE,CAAC;QA6ChB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,kCAA2B,EAAE,CAAE,CAAC;QAC5C,CAAC,CAAC;QAXA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,iCAAyB,CAAC,MAAM,CAAC;QAC7C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAKH,8BAAC;AAAD,CAAC,AAjDD,IAiDC;AAjDY,0DAAuB"}
@@ -1,15 +1,19 @@
1
+ /// <reference types="react" />
1
2
  import { PluginProvidedUiItemDescriptor } from '../base';
2
3
  import { ScreenshareHelperItemPosition } from './enums';
3
4
  export interface ScreenshareHelperInterface extends PluginProvidedUiItemDescriptor {
4
5
  position: ScreenshareHelperItemPosition;
5
6
  }
7
+ export interface ScreenshareHelperButtonOnclickCallback {
8
+ browserClickEvent: React.MouseEvent<HTMLElement>;
9
+ }
6
10
  export interface ScreenshareHelperButtonInterface extends ScreenshareHelperInterface {
7
11
  label: string;
8
12
  icon: string;
9
13
  tooltip: string;
10
14
  disabled: boolean;
11
15
  position: ScreenshareHelperItemPosition;
12
- onClick: () => void;
16
+ onClick: (args: ScreenshareHelperButtonOnclickCallback) => void;
13
17
  }
14
18
  export interface ScreenshareHelperButtonProps {
15
19
  label?: string;
@@ -18,5 +22,5 @@ export interface ScreenshareHelperButtonProps {
18
22
  disabled: boolean;
19
23
  hasSeparator: boolean;
20
24
  position: ScreenshareHelperItemPosition;
21
- onClick: () => void;
25
+ onClick: (args: ScreenshareHelperButtonOnclickCallback) => void;
22
26
  }
@@ -0,0 +1,31 @@
1
+ import { UserCameraHelperItemType, UserCameraHelperItemPosition } from './enums';
2
+ import { UserCameraHelperButtonProps, UserCameraHelperButtonInterface, UserCameraHelperButtonOnclickCallback, UserCameraHelperCallbackFunctionArguments } from './types';
3
+ export declare class UserCameraHelperButton implements UserCameraHelperButtonInterface {
4
+ id: string;
5
+ type: UserCameraHelperItemType;
6
+ label: string;
7
+ displayFunction?: (args: UserCameraHelperCallbackFunctionArguments) => boolean;
8
+ icon: string;
9
+ tooltip: string;
10
+ disabled: boolean;
11
+ position: UserCameraHelperItemPosition;
12
+ onClick: (args: UserCameraHelperButtonOnclickCallback) => void;
13
+ /**
14
+ * Returns object to be used in the setter for the UserCamera Helper. In this case,
15
+ * a button.
16
+ *
17
+ * @param label - label to be displayed in userCamera helper button (Not mandatory).
18
+ * @param tooltip - label to be displayed when hovering the userCamera helper button.
19
+ * @param icon - icon to be used in the userCamera helper button. It goes in the left side of it.
20
+ * @param onClick - function to be called when clicking the button.
21
+ * @param displayFunction - function to tell BBB core which cameras will receive this extensible
22
+ * area.
23
+ * @param position - position to place the userCamera helper button.
24
+ * See {@link UserCameraHelperItemPosition}
25
+ * @param disabled - if true, the userCamera helper button will not be clickable
26
+ *
27
+ * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
28
+ */
29
+ constructor({ label, icon, tooltip, disabled, onClick, position, displayFunction, }: UserCameraHelperButtonProps);
30
+ setItemId: (id: string) => void;
31
+ }
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UserCameraHelperButton = void 0;
4
+ var enums_1 = require("./enums");
5
+ // UserCameraHelper Extensible Area
6
+ var UserCameraHelperButton = /** @class */ (function () {
7
+ /**
8
+ * Returns object to be used in the setter for the UserCamera Helper. In this case,
9
+ * a button.
10
+ *
11
+ * @param label - label to be displayed in userCamera helper button (Not mandatory).
12
+ * @param tooltip - label to be displayed when hovering the userCamera helper button.
13
+ * @param icon - icon to be used in the userCamera helper button. It goes in the left side of it.
14
+ * @param onClick - function to be called when clicking the button.
15
+ * @param displayFunction - function to tell BBB core which cameras will receive this extensible
16
+ * area.
17
+ * @param position - position to place the userCamera helper button.
18
+ * See {@link UserCameraHelperItemPosition}
19
+ * @param disabled - if true, the userCamera helper button will not be clickable
20
+ *
21
+ * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
22
+ */
23
+ function UserCameraHelperButton(_a) {
24
+ var _b = _a.label, label = _b === void 0 ? '' : _b, _c = _a.icon, icon = _c === void 0 ? '' : _c, _d = _a.tooltip, tooltip = _d === void 0 ? '' : _d, _e = _a.disabled, disabled = _e === void 0 ? true : _e, _f = _a.onClick, onClick = _f === void 0 ? function () { } : _f, _g = _a.position, position = _g === void 0 ? enums_1.UserCameraHelperItemPosition.TOP_RIGHT : _g, displayFunction = _a.displayFunction;
25
+ var _this = this;
26
+ this.id = '';
27
+ this.setItemId = function (id) {
28
+ _this.id = "UserCameraHelperButton_".concat(id);
29
+ };
30
+ this.label = label;
31
+ this.icon = icon;
32
+ this.tooltip = tooltip;
33
+ this.disabled = disabled;
34
+ this.onClick = onClick;
35
+ this.displayFunction = displayFunction;
36
+ this.type = enums_1.UserCameraHelperItemType.BUTTON;
37
+ this.position = position;
38
+ }
39
+ return UserCameraHelperButton;
40
+ }());
41
+ exports.UserCameraHelperButton = UserCameraHelperButton;
42
+ //# sourceMappingURL=component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/user-camera-helper-item/component.ts"],"names":[],"mappings":";;;AAAA,iCAAiF;AAQjF,mCAAmC;AAEnC;IAmBE;;;;;;;;;;;;;;;OAeG;IACH,gCAAY,EAGkB;YAF5B,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA,EAAE,YAAS,EAAT,IAAI,mBAAG,EAAE,KAAA,EAAE,eAAY,EAAZ,OAAO,mBAAG,EAAE,KAAA,EAAE,gBAAe,EAAf,QAAQ,mBAAG,IAAI,KAAA,EAAE,eAAkB,EAAlB,OAAO,mBAAG,cAAO,CAAC,KAAA,EACxE,gBAAiD,EAAjD,QAAQ,mBAAG,oCAA4B,CAAC,SAAS,KAAA,EAAE,eAAe,qBAAA;QAFpE,iBAYC;QA9CD,OAAE,GAAW,EAAE,CAAC;QAgDhB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,iCAA0B,EAAE,CAAE,CAAC;QAC3C,CAAC,CAAC;QAZA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,gCAAwB,CAAC,MAAM,CAAC;QAC5C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAKH,6BAAC;AAAD,CAAC,AApDD,IAoDC;AApDY,wDAAsB"}
@@ -0,0 +1,12 @@
1
+ export declare enum UserCameraHelperItemType {
2
+ BUTTON = "SCREENSHARE_HELPER_BUTTON"
3
+ }
4
+ /**
5
+ * Enum with the position to insert the userCamera helper item (Information or Button)
6
+ */
7
+ export declare enum UserCameraHelperItemPosition {
8
+ TOP_RIGHT = "TOP_RIGHT",
9
+ TOP_LEFT = "TOP_LEFT",
10
+ BOTTOM_RIGHT = "BOTTOM_RIGHT",
11
+ BOTTOM_LEFT = "BOTTOM_LEFT"
12
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UserCameraHelperItemPosition = exports.UserCameraHelperItemType = void 0;
4
+ // UserCamera Helper items types:
5
+ var UserCameraHelperItemType;
6
+ (function (UserCameraHelperItemType) {
7
+ UserCameraHelperItemType["BUTTON"] = "SCREENSHARE_HELPER_BUTTON";
8
+ })(UserCameraHelperItemType || (exports.UserCameraHelperItemType = UserCameraHelperItemType = {}));
9
+ /**
10
+ * Enum with the position to insert the userCamera helper item (Information or Button)
11
+ */
12
+ var UserCameraHelperItemPosition;
13
+ (function (UserCameraHelperItemPosition) {
14
+ UserCameraHelperItemPosition["TOP_RIGHT"] = "TOP_RIGHT";
15
+ UserCameraHelperItemPosition["TOP_LEFT"] = "TOP_LEFT";
16
+ UserCameraHelperItemPosition["BOTTOM_RIGHT"] = "BOTTOM_RIGHT";
17
+ UserCameraHelperItemPosition["BOTTOM_LEFT"] = "BOTTOM_LEFT";
18
+ })(UserCameraHelperItemPosition || (exports.UserCameraHelperItemPosition = UserCameraHelperItemPosition = {}));
19
+ //# sourceMappingURL=enums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../src/extensible-areas/user-camera-helper-item/enums.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AACjC,IAAY,wBAEX;AAFD,WAAY,wBAAwB;IAClC,gEAAoC,CAAA;AACtC,CAAC,EAFW,wBAAwB,wCAAxB,wBAAwB,QAEnC;AAED;;GAEG;AACH,IAAY,4BAKX;AALD,WAAY,4BAA4B;IACtC,uDAAuB,CAAA;IACvB,qDAAqB,CAAA;IACrB,6DAA6B,CAAA;IAC7B,2DAA2B,CAAA;AAC7B,CAAC,EALW,4BAA4B,4CAA5B,4BAA4B,QAKvC"}
@@ -0,0 +1,3 @@
1
+ export { UserCameraHelperButton, } from './component';
2
+ export { UserCameraHelperInterface, } from './types';
3
+ export { UserCameraHelperItemPosition, } from './enums';
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UserCameraHelperItemPosition = exports.UserCameraHelperButton = void 0;
4
+ var component_1 = require("./component");
5
+ Object.defineProperty(exports, "UserCameraHelperButton", { enumerable: true, get: function () { return component_1.UserCameraHelperButton; } });
6
+ var enums_1 = require("./enums");
7
+ Object.defineProperty(exports, "UserCameraHelperItemPosition", { enumerable: true, get: function () { return enums_1.UserCameraHelperItemPosition; } });
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/extensible-areas/user-camera-helper-item/index.ts"],"names":[],"mappings":";;;AAAA,yCAEqB;AADnB,mHAAA,sBAAsB,OAAA;AAKxB,iCAEiB;AADf,qHAAA,4BAA4B,OAAA"}
@@ -0,0 +1,33 @@
1
+ /// <reference types="react" />
2
+ import { PluginProvidedUiItemDescriptor } from '../base';
3
+ import { UserCameraHelperItemPosition } from './enums';
4
+ export interface UserCameraHelperInterface extends PluginProvidedUiItemDescriptor {
5
+ position: UserCameraHelperItemPosition;
6
+ }
7
+ export interface UserCameraHelperButtonOnclickCallback {
8
+ userId: string;
9
+ streamId: string;
10
+ browserClickEvent: React.MouseEvent<HTMLElement>;
11
+ }
12
+ export interface UserCameraHelperCallbackFunctionArguments {
13
+ streamId: string;
14
+ userId: string;
15
+ }
16
+ export interface UserCameraHelperButtonInterface extends UserCameraHelperInterface {
17
+ label: string;
18
+ icon: string;
19
+ tooltip: string;
20
+ disabled: boolean;
21
+ position: UserCameraHelperItemPosition;
22
+ displayFunction?: (args: UserCameraHelperCallbackFunctionArguments) => boolean;
23
+ onClick: (args: UserCameraHelperButtonOnclickCallback) => void;
24
+ }
25
+ export interface UserCameraHelperButtonProps {
26
+ label?: string;
27
+ icon: string;
28
+ tooltip: string;
29
+ disabled: boolean;
30
+ displayFunction?: (args: UserCameraHelperCallbackFunctionArguments) => boolean;
31
+ position: UserCameraHelperItemPosition;
32
+ onClick: (args: UserCameraHelperButtonOnclickCallback) => void;
33
+ }
@@ -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/extensible-areas/user-camera-helper-item/types.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bigbluebutton-html-plugin-sdk",
3
- "version": "0.0.57",
3
+ "version": "0.0.58",
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",