bigbluebutton-html-plugin-sdk 0.0.84 → 0.0.86

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 (23) hide show
  1. package/dist/cjs/core/auxiliary/plugin-information/locale-messages/useLocaleMessages.js +63 -14
  2. package/dist/cjs/core/auxiliary/plugin-information/locale-messages/useLocaleMessages.js.map +1 -1
  3. package/dist/cjs/core/utils/hooks.d.ts +1 -0
  4. package/dist/cjs/core/utils/hooks.js +13 -0
  5. package/dist/cjs/core/utils/hooks.js.map +1 -0
  6. package/dist/cjs/extensible-areas/action-button-dropdown-item/component.d.ts +11 -1
  7. package/dist/cjs/extensible-areas/action-button-dropdown-item/component.js +10 -1
  8. package/dist/cjs/extensible-areas/action-button-dropdown-item/component.js.map +1 -1
  9. package/dist/cjs/extensible-areas/audio-settings-dropdown-item/component.d.ts +4 -1
  10. package/dist/cjs/extensible-areas/audio-settings-dropdown-item/component.js +4 -1
  11. package/dist/cjs/extensible-areas/audio-settings-dropdown-item/component.js.map +1 -1
  12. package/dist/cjs/extensible-areas/audio-settings-dropdown-item/types.d.ts +1 -0
  13. package/dist/cjs/extensible-areas/camera-settings-dropdown-item/component.d.ts +3 -1
  14. package/dist/cjs/extensible-areas/camera-settings-dropdown-item/component.js +4 -1
  15. package/dist/cjs/extensible-areas/camera-settings-dropdown-item/component.js.map +1 -1
  16. package/dist/cjs/extensible-areas/camera-settings-dropdown-item/types.d.ts +1 -0
  17. package/dist/cjs/extensible-areas/presentation-toolbar-item/component.d.ts +3 -1
  18. package/dist/cjs/extensible-areas/presentation-toolbar-item/component.js +3 -1
  19. package/dist/cjs/extensible-areas/presentation-toolbar-item/component.js.map +1 -1
  20. package/dist/cjs/extensible-areas/presentation-toolbar-item/types.d.ts +1 -0
  21. package/dist/cjs/ui-data/hooks/hooks.js +10 -1
  22. package/dist/cjs/ui-data/hooks/hooks.js.map +1 -1
  23. package/package.json +4 -2
@@ -1,10 +1,47 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
2
38
  Object.defineProperty(exports, "__esModule", { value: true });
3
39
  var react_1 = require("react");
4
40
  var ui_data_1 = require("../../../../ui-data");
5
41
  var utils_1 = require("../../../../utils");
6
42
  var utils_2 = require("./utils");
7
43
  function useLocaleMessagesAuxiliary(_a) {
44
+ var _this = this;
8
45
  var pluginApi = _a.pluginApi, fetchConfigs = _a.fetchConfigs;
9
46
  var currentLocale = pluginApi.useUiData(ui_data_1.IntlLocaleUiDataNames.CURRENT_LOCALE, {
10
47
  locale: 'en',
@@ -17,23 +54,35 @@ function useLocaleMessagesAuxiliary(_a) {
17
54
  if ((pluginApi === null || pluginApi === void 0 ? void 0 : pluginApi.localesBaseUrl) && currentLocale.locale) {
18
55
  var localesBaseUrl = pluginApi.localesBaseUrl;
19
56
  var locale = currentLocale.locale, fallbackLocale = currentLocale.fallbackLocale;
20
- var localeUrl_1 = "".concat(localesBaseUrl, "/").concat(locale, ".json");
57
+ var localeUrl = "".concat(localesBaseUrl, "/").concat(locale, ".json");
21
58
  var fallbackLocaleUrl_1 = "".concat(localesBaseUrl, "/").concat(fallbackLocale, ".json");
22
- Promise.all([
23
- localeUrl_1,
59
+ utils_1.pluginLogger.info("Fetching locale [".concat(locale, "] and fallback [").concat(fallbackLocale, "] for plugin [").concat(pluginApi.pluginName, "]"));
60
+ var urlToFetchList = [
24
61
  fallbackLocaleUrl_1,
25
- ].map(function (url) {
26
- if (url !== fallbackLocaleUrl_1 || !fallbackMessages) {
27
- try {
28
- return (0, utils_2.fetchLocaleAndStore)(url, fetchConfigs);
29
- }
30
- catch (err) {
31
- utils_1.pluginLogger.error("Something went wrong while trying to fetch ".concat(localeUrl_1, ": "), err);
32
- return Promise.reject(err);
62
+ ];
63
+ if (locale !== fallbackLocale)
64
+ urlToFetchList.push(localeUrl);
65
+ Promise.all(urlToFetchList.map(function (url) { return __awaiter(_this, void 0, void 0, function () {
66
+ var a, err_1;
67
+ return __generator(this, function (_a) {
68
+ switch (_a.label) {
69
+ case 0:
70
+ if (!(url !== fallbackLocaleUrl_1 || !fallbackMessages)) return [3 /*break*/, 4];
71
+ _a.label = 1;
72
+ case 1:
73
+ _a.trys.push([1, 3, , 4]);
74
+ return [4 /*yield*/, (0, utils_2.fetchLocaleAndStore)(url, fetchConfigs)];
75
+ case 2:
76
+ a = _a.sent();
77
+ return [2 /*return*/, a];
78
+ case 3:
79
+ err_1 = _a.sent();
80
+ utils_1.pluginLogger.error("[".concat(pluginApi.pluginName, "] - Something went wrong while trying to fetch [").concat(url, "] or parse its result: "), err_1);
81
+ return [2 /*return*/, Promise.resolve({})];
82
+ case 4: return [2 /*return*/, Promise.resolve(fallbackMessages)];
33
83
  }
34
- }
35
- return Promise.resolve(fallbackMessages);
36
- })).then(function (values) {
84
+ });
85
+ }); })).then(function (values) {
37
86
  var desiredLocale = values[0], fallbackLocaleMessages = values[1];
38
87
  setMessages((0, utils_2.mergeLocaleMessages)(desiredLocale, fallbackLocaleMessages));
39
88
  if (!fallbackMessages)
@@ -1 +1 @@
1
- {"version":3,"file":"useLocaleMessages.js","sourceRoot":"","sources":["../../../../../../src/core/auxiliary/plugin-information/locale-messages/useLocaleMessages.ts"],"names":[],"mappings":";;AAAA,+BAA4C;AAC5C,+CAA4D;AAC5D,2CAAiD;AAEjD,iCAAmE;AAEnE,SAAS,0BAA0B,CACjC,EAAmD;QAAjD,SAAS,eAAA,EAAE,YAAY,kBAAA;IAEzB,IAAM,aAAa,GAAG,SAAS,CAAC,SAAU,CAAC,+BAAqB,CAAC,cAAc,EAAE;QAC/E,MAAM,EAAE,IAAI;QACZ,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;IAEG,IAAA,KAAwB,IAAA,gBAAQ,EAAC,IAAI,CAAC,EAArC,OAAO,QAAA,EAAE,UAAU,QAAkB,CAAC;IACvC,IAAA,KAA0B,IAAA,gBAAQ,EAAyB,EAAE,CAAC,EAA7D,QAAQ,QAAA,EAAE,WAAW,QAAwC,CAAC;IAC/D,IAAA,KAA0C,IAAA,gBAAQ,GAA0B,EAA3E,gBAAgB,QAAA,EAAE,mBAAmB,QAAsC,CAAC;IAEnF,IAAA,iBAAS,EAAC;QACR,IAAI,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,cAAc,KAAI,aAAa,CAAC,MAAM,EAAE;YAC7C,IAAA,cAAc,GAAK,SAAS,eAAd,CAAe;YAC7B,IAAA,MAAM,GAAqB,aAAa,OAAlC,EAAE,cAAc,GAAK,aAAa,eAAlB,CAAmB;YACjD,IAAM,WAAS,GAAG,UAAG,cAAc,cAAI,MAAM,UAAO,CAAC;YACrD,IAAM,mBAAiB,GAAG,UAAG,cAAc,cAAI,cAAc,UAAO,CAAC;YACrE,OAAO,CAAC,GAAG,CAAC;gBACV,WAAS;gBACT,mBAAiB;aAClB,CAAC,GAAG,CAAC,UAAC,GAAG;gBACR,IAAI,GAAG,KAAK,mBAAiB,IAAI,CAAC,gBAAgB,EAAE;oBAClD,IAAI;wBACF,OAAO,IAAA,2BAAmB,EAAC,GAAG,EAAE,YAAY,CAAC,CAAC;qBAC/C;oBAAC,OAAO,GAAG,EAAE;wBACZ,oBAAY,CAAC,KAAK,CAAC,qDAA8C,WAAS,OAAI,EAAE,GAAG,CAAC,CAAC;wBACrF,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;qBAC5B;iBACF;gBACD,OAAO,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAC3C,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAC,MAAM;gBACP,IAAA,aAAa,GAA4B,MAAM,GAAlC,EAAE,sBAAsB,GAAI,MAAM,GAAV,CAAW;gBACvD,WAAW,CAAC,IAAA,2BAAmB,EAAC,aAAa,EAAE,sBAAsB,CAAC,CAAC,CAAC;gBACxE,IAAI,CAAC,gBAAgB;oBAAE,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;YACrE,CAAC,CAAC,CAAC,OAAO,CAAC;gBACT,UAAU,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC,CAAC,CAAC;SACJ;IACH,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IACpB,OAAO;QACL,QAAQ,UAAA;QACR,OAAO,SAAA;QACP,aAAa,EAAE,aAAa,CAAC,MAAM;KACpC,CAAC;AACJ,CAAC;AAED,kBAAe,0BAA0B,CAAC"}
1
+ {"version":3,"file":"useLocaleMessages.js","sourceRoot":"","sources":["../../../../../../src/core/auxiliary/plugin-information/locale-messages/useLocaleMessages.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAA4C;AAC5C,+CAA4D;AAC5D,2CAAiD;AAEjD,iCAAmE;AAEnE,SAAS,0BAA0B,CACjC,EAAmD;IADrD,iBAmDC;QAlDG,SAAS,eAAA,EAAE,YAAY,kBAAA;IAEzB,IAAM,aAAa,GAAG,SAAS,CAAC,SAAU,CAAC,+BAAqB,CAAC,cAAc,EAAE;QAC/E,MAAM,EAAE,IAAI;QACZ,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;IAEG,IAAA,KAAwB,IAAA,gBAAQ,EAAC,IAAI,CAAC,EAArC,OAAO,QAAA,EAAE,UAAU,QAAkB,CAAC;IACvC,IAAA,KAA0B,IAAA,gBAAQ,EAAyB,EAAE,CAAC,EAA7D,QAAQ,QAAA,EAAE,WAAW,QAAwC,CAAC;IAC/D,IAAA,KAA0C,IAAA,gBAAQ,GAA0B,EAA3E,gBAAgB,QAAA,EAAE,mBAAmB,QAAsC,CAAC;IAEnF,IAAA,iBAAS,EAAC;QACR,IAAI,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,cAAc,KAAI,aAAa,CAAC,MAAM,EAAE;YAC7C,IAAA,cAAc,GAAK,SAAS,eAAd,CAAe;YAC7B,IAAA,MAAM,GAAqB,aAAa,OAAlC,EAAE,cAAc,GAAK,aAAa,eAAlB,CAAmB;YACjD,IAAM,SAAS,GAAG,UAAG,cAAc,cAAI,MAAM,UAAO,CAAC;YACrD,IAAM,mBAAiB,GAAG,UAAG,cAAc,cAAI,cAAc,UAAO,CAAC;YACrE,oBAAY,CAAC,IAAI,CAAC,2BAAoB,MAAM,6BAAmB,cAAc,2BAAiB,SAAS,CAAC,UAAU,MAAG,CAAC,CAAC;YACvH,IAAM,cAAc,GAAG;gBACrB,mBAAiB;aAClB,CAAC;YACF,IAAI,MAAM,KAAK,cAAc;gBAAE,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC9D,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,UAAO,GAAG;;;;;iCACnC,CAAA,GAAG,KAAK,mBAAiB,IAAI,CAAC,gBAAgB,CAAA,EAA9C,wBAA8C;;;;4BAEpC,qBAAM,IAAA,2BAAmB,EAAC,GAAG,EAAE,YAAY,CAAC,EAAA;;4BAAhD,CAAC,GAAG,SAA4C;4BACtD,sBAAO,CAAC,EAAC;;;4BAET,oBAAY,CAAC,KAAK,CAChB,WAAI,SAAS,CAAC,UAAU,6DAAmD,GAAG,4BAAyB,EACvG,KAAG,CACJ,CAAC;4BACF,sBAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,EAAC;gCAG/B,sBAAO,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAC;;;iBAC1C,CAAC,CAAC,CAAC,IAAI,CAAC,UAAC,MAAM;gBACP,IAAA,aAAa,GAA4B,MAAM,GAAlC,EAAE,sBAAsB,GAAI,MAAM,GAAV,CAAW;gBACvD,WAAW,CAAC,IAAA,2BAAmB,EAAC,aAAa,EAAE,sBAAsB,CAAC,CAAC,CAAC;gBACxE,IAAI,CAAC,gBAAgB;oBAAE,mBAAmB,CAAC,sBAAsB,CAAC,CAAC;YACrE,CAAC,CAAC,CAAC,OAAO,CAAC;gBACT,UAAU,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC,CAAC,CAAC;SACJ;IACH,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IACpB,OAAO;QACL,QAAQ,UAAA;QACR,OAAO,SAAA;QACP,aAAa,EAAE,aAAa,CAAC,MAAM;KACpC,CAAC;AACJ,CAAC;AAED,kBAAe,0BAA0B,CAAC"}
@@ -0,0 +1 @@
1
+ export declare const usePreviousValue: <T = unknown>(value: T) => T | undefined;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.usePreviousValue = void 0;
4
+ var react_1 = require("react");
5
+ var usePreviousValue = function (value) {
6
+ var ref = (0, react_1.useRef)();
7
+ (0, react_1.useEffect)(function () {
8
+ ref.current = value;
9
+ });
10
+ return ref.current;
11
+ };
12
+ exports.usePreviousValue = usePreviousValue;
13
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../../src/core/utils/hooks.ts"],"names":[],"mappings":";;;AAAA,+BAA0C;AAEnC,IAAM,gBAAgB,GAAG,UAAc,KAAQ;IACpD,IAAM,GAAG,GAAG,IAAA,cAAM,GAAK,CAAC;IACxB,IAAA,iBAAS,EAAC;QACR,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC;IACtB,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC,OAAO,CAAC;AACrB,CAAC,CAAC;AANW,QAAA,gBAAgB,oBAM3B"}
@@ -26,7 +26,17 @@ export declare class ActionButtonDropdownOption implements ActionButtonDropdownI
26
26
  }
27
27
  export declare class ActionButtonDropdownSeparator implements ActionButtonDropdownInterface {
28
28
  id: string;
29
+ dataTest?: string;
29
30
  type: ActionButtonDropdownItemType;
30
- constructor();
31
+ /**
32
+ * Returns the separator for the action button dropdown
33
+ *
34
+ * @param dataTest - optional string attribute to be used for testing
35
+ *
36
+ * @returns the separator to be displayed in the action button dropdown
37
+ */
38
+ constructor({ dataTest }: {
39
+ dataTest?: string | undefined;
40
+ });
31
41
  setItemId: (id: string) => void;
32
42
  }
@@ -38,13 +38,22 @@ var ActionButtonDropdownOption = /** @class */ (function () {
38
38
  }());
39
39
  exports.ActionButtonDropdownOption = ActionButtonDropdownOption;
40
40
  var ActionButtonDropdownSeparator = /** @class */ (function () {
41
- function ActionButtonDropdownSeparator() {
41
+ /**
42
+ * Returns the separator for the action button dropdown
43
+ *
44
+ * @param dataTest - optional string attribute to be used for testing
45
+ *
46
+ * @returns the separator to be displayed in the action button dropdown
47
+ */
48
+ function ActionButtonDropdownSeparator(_a) {
49
+ var _b = _a.dataTest, dataTest = _b === void 0 ? '' : _b;
42
50
  var _this = this;
43
51
  this.id = '';
44
52
  this.setItemId = function (id) {
45
53
  _this.id = "ActionButtonDropdownSeparator_".concat(id);
46
54
  };
47
55
  this.type = enums_1.ActionButtonDropdownItemType.SEPARATOR;
56
+ this.dataTest = dataTest;
48
57
  }
49
58
  return ActionButtonDropdownSeparator;
50
59
  }());
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/action-button-dropdown-item/component.ts"],"names":[],"mappings":";;;AAAA,iCAAuD;AAKvD,uCAAuC;AAEvC;IAiBE;;;;;;;;;;;OAWG;IACH,oCAAY,EAEsB;YADhC,EAAE,QAAA,EAAE,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA,EAAE,YAAS,EAAT,IAAI,mBAAG,EAAE,KAAA,EAAE,eAAY,EAAZ,OAAO,mBAAG,EAAE,KAAA,EAAE,gBAAa,EAAb,QAAQ,mBAAG,EAAE,KAAA,EAAE,eAAc,EAAd,OAAO,mBAAG,IAAI,KAAA,EAAE,eAAkB,EAAlB,OAAO,mBAAG,cAAO,CAAC,KAAA;QAD5F,iBAaC;QAzCD,OAAE,GAAW,EAAE,CAAC;QA2ChB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,qCAA8B,EAAE,CAAE,CAAC;QAC/C,CAAC,CAAC;QAdA,IAAI,EAAE,EAAE;YACN,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;SACd;QACD,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,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,oCAA4B,CAAC,MAAM,CAAC;IAClD,CAAC;IAKH,iCAAC;AAAD,CAAC,AA/CD,IA+CC;AA/CY,gEAA0B;AAiDvC;IAKE;QAAA,iBAEC;QAND,OAAE,GAAW,EAAE,CAAC;QAQhB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,wCAAiC,EAAE,CAAE,CAAC;QAClD,CAAC,CAAC;QALA,IAAI,CAAC,IAAI,GAAG,oCAA4B,CAAC,SAAS,CAAC;IACrD,CAAC;IAKH,oCAAC;AAAD,CAAC,AAZD,IAYC;AAZY,sEAA6B"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/action-button-dropdown-item/component.ts"],"names":[],"mappings":";;;AAAA,iCAAuD;AAKvD,uCAAuC;AAEvC;IAiBE;;;;;;;;;;;OAWG;IACH,oCAAY,EAEsB;YADhC,EAAE,QAAA,EAAE,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA,EAAE,YAAS,EAAT,IAAI,mBAAG,EAAE,KAAA,EAAE,eAAY,EAAZ,OAAO,mBAAG,EAAE,KAAA,EAAE,gBAAa,EAAb,QAAQ,mBAAG,EAAE,KAAA,EAAE,eAAc,EAAd,OAAO,mBAAG,IAAI,KAAA,EAAE,eAAkB,EAAlB,OAAO,mBAAG,cAAO,CAAC,KAAA;QAD5F,iBAaC;QAzCD,OAAE,GAAW,EAAE,CAAC;QA2ChB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,qCAA8B,EAAE,CAAE,CAAC;QAC/C,CAAC,CAAC;QAdA,IAAI,EAAE,EAAE;YACN,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;SACd;QACD,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,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,oCAA4B,CAAC,MAAM,CAAC;IAClD,CAAC;IAKH,iCAAC;AAAD,CAAC,AA/CD,IA+CC;AA/CY,gEAA0B;AAiDvC;IAOE;;;;;;OAMG;IACH,uCAAY,EAAiB;YAAf,gBAAa,EAAb,QAAQ,mBAAG,EAAE,KAAA;QAA3B,iBAGC;QAhBD,OAAE,GAAW,EAAE,CAAC;QAkBhB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,wCAAiC,EAAE,CAAE,CAAC;QAClD,CAAC,CAAC;QANA,IAAI,CAAC,IAAI,GAAG,oCAA4B,CAAC,SAAS,CAAC;QACnD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAKH,oCAAC;AAAD,CAAC,AAtBD,IAsBC;AAtBY,sEAA6B"}
@@ -5,6 +5,7 @@ export declare class AudioSettingsDropdownOption implements AudioSettingsDropdow
5
5
  type: AudioSettingsDropdownItemType;
6
6
  label: string;
7
7
  icon: string;
8
+ dataTest: string;
8
9
  onClick: () => void;
9
10
  /**
10
11
  * Returns object to be used in the setter for the audio settings dropdown. In this case,
@@ -12,16 +13,18 @@ export declare class AudioSettingsDropdownOption implements AudioSettingsDropdow
12
13
  *
13
14
  * @param label - label to be displayed in audio settings dropdown option
14
15
  * @param icon - icon to be used in the option for the dropdown. It goes in the left side of it
16
+ * @param dataTest - data-test attribute to be used in the option for testing purposes
15
17
  * @param onClick - function to be called when clicking the button
16
18
  *
17
19
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
18
20
  */
19
- constructor({ id, label, icon, onClick, }: AudioSettingsDropdownOptionProps);
21
+ constructor({ id, label, icon, dataTest, onClick, }: AudioSettingsDropdownOptionProps);
20
22
  setItemId: (id: string) => void;
21
23
  }
22
24
  export declare class AudioSettingsDropdownSeparator implements AudioSettingsDropdownInterface {
23
25
  id: string;
24
26
  type: AudioSettingsDropdownItemType;
27
+ dataTest: string;
25
28
  /**
26
29
  * Returns object to be used in the setter for the audio settings dropdown. In this case,
27
30
  * a separator.
@@ -10,12 +10,13 @@ var AudioSettingsDropdownOption = /** @class */ (function () {
10
10
  *
11
11
  * @param label - label to be displayed in audio settings dropdown option
12
12
  * @param icon - icon to be used in the option for the dropdown. It goes in the left side of it
13
+ * @param dataTest - data-test attribute to be used in the option for testing purposes
13
14
  * @param onClick - function to be called when clicking the button
14
15
  *
15
16
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
16
17
  */
17
18
  function AudioSettingsDropdownOption(_a) {
18
- var id = _a.id, _b = _a.label, label = _b === void 0 ? '' : _b, _c = _a.icon, icon = _c === void 0 ? '' : _c, _d = _a.onClick, onClick = _d === void 0 ? function () { } : _d;
19
+ var id = _a.id, _b = _a.label, label = _b === void 0 ? '' : _b, _c = _a.icon, icon = _c === void 0 ? '' : _c, _d = _a.dataTest, dataTest = _d === void 0 ? '' : _d, _e = _a.onClick, onClick = _e === void 0 ? function () { } : _e;
19
20
  var _this = this;
20
21
  this.id = '';
21
22
  this.setItemId = function (id) {
@@ -26,6 +27,7 @@ var AudioSettingsDropdownOption = /** @class */ (function () {
26
27
  }
27
28
  this.label = label;
28
29
  this.icon = icon;
30
+ this.dataTest = dataTest;
29
31
  this.onClick = onClick;
30
32
  this.type = enums_1.AudioSettingsDropdownItemType.OPTION;
31
33
  }
@@ -45,6 +47,7 @@ var AudioSettingsDropdownSeparator = /** @class */ (function () {
45
47
  function AudioSettingsDropdownSeparator() {
46
48
  var _this = this;
47
49
  this.id = '';
50
+ this.dataTest = 'audioSettingsDropdownSeparator';
48
51
  this.setItemId = function (id) {
49
52
  _this.id = "AudioSettingsDropdownSeparator_".concat(id);
50
53
  };
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/audio-settings-dropdown-item/component.ts"],"names":[],"mappings":";;;AAAA,iCAAwD;AAKxD,wCAAwC;AAExC;IAWE;;;;;;;;;OASG;IACH,qCAAY,EAEuB;YADjC,EAAE,QAAA,EAAE,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA,EAAE,YAAS,EAAT,IAAI,mBAAG,EAAE,KAAA,EAAE,eAAkB,EAAlB,OAAO,mBAAG,cAAO,CAAC,KAAA;QAD/C,iBAUC;QA9BD,OAAE,GAAW,EAAE,CAAC;QAgChB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,sCAA+B,EAAE,CAAE,CAAC;QAChD,CAAC,CAAC;QAXA,IAAI,EAAE,EAAE;YACN,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;SACd;QACD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,qCAA6B,CAAC,MAAM,CAAC;IACnD,CAAC;IAKH,kCAAC;AAAD,CAAC,AApCD,IAoCC;AApCY,kEAA2B;AAsCxC;IAKE;;;;;;;;OAQG;IACH;QAAA,iBAEC;QAfD,OAAE,GAAW,EAAE,CAAC;QAiBhB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,yCAAkC,EAAE,CAAE,CAAC;QACnD,CAAC,CAAC;QALA,IAAI,CAAC,IAAI,GAAG,qCAA6B,CAAC,SAAS,CAAC;IACtD,CAAC;IAKH,qCAAC;AAAD,CAAC,AArBD,IAqBC;AArBY,wEAA8B"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/audio-settings-dropdown-item/component.ts"],"names":[],"mappings":";;;AAAA,iCAAwD;AAKxD,wCAAwC;AAExC;IAaE;;;;;;;;;;OAUG;IACH,qCAAY,EAEuB;YADjC,EAAE,QAAA,EAAE,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA,EAAE,YAAS,EAAT,IAAI,mBAAG,EAAE,KAAA,EAAE,gBAAa,EAAb,QAAQ,mBAAG,EAAE,KAAA,EAAE,eAAkB,EAAlB,OAAO,mBAAG,cAAO,CAAC,KAAA;QAD9D,iBAWC;QAlCD,OAAE,GAAW,EAAE,CAAC;QAoChB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,sCAA+B,EAAE,CAAE,CAAC;QAChD,CAAC,CAAC;QAZA,IAAI,EAAE,EAAE;YACN,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;SACd;QACD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,qCAA6B,CAAC,MAAM,CAAC;IACnD,CAAC;IAKH,kCAAC;AAAD,CAAC,AAxCD,IAwCC;AAxCY,kEAA2B;AA0CxC;IAOE;;;;;;;;OAQG;IACH;QAAA,iBAEC;QAjBD,OAAE,GAAW,EAAE,CAAC;QAIhB,aAAQ,GAAW,gCAAgC,CAAC;QAepD,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,yCAAkC,EAAE,CAAE,CAAC;QACnD,CAAC,CAAC;QALA,IAAI,CAAC,IAAI,GAAG,qCAA6B,CAAC,SAAS,CAAC;IACtD,CAAC;IAKH,qCAAC;AAAD,CAAC,AAvBD,IAuBC;AAvBY,wEAA8B"}
@@ -12,5 +12,6 @@ export interface AudioSettingsDropdownOptionProps {
12
12
  id?: string;
13
13
  label: string;
14
14
  icon: string;
15
+ dataTest?: string;
15
16
  onClick: () => void;
16
17
  }
@@ -5,6 +5,7 @@ export declare class CameraSettingsDropdownOption implements CameraSettingsDropd
5
5
  type: CameraSettingsDropdownItemType;
6
6
  label: string;
7
7
  icon: string;
8
+ dataTest: string;
8
9
  onClick: () => void;
9
10
  /**
10
11
  * Returns object to be used in the setter for the camera settings dropdown. In this case,
@@ -12,11 +13,12 @@ export declare class CameraSettingsDropdownOption implements CameraSettingsDropd
12
13
  *
13
14
  * @param label - label to be displayed in camera settings dropdown option.
14
15
  * @param icon - icon to be used in the option for the dropdown. It goes in the left side of it.
16
+ * @param dataTest - data-test attribute to be used in the option for the dropdown.
15
17
  * @param onClick - function to be called when clicking the button.
16
18
  *
17
19
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
18
20
  */
19
- constructor({ id, label, icon, onClick, }: CameraSettingsDropdownOptionProps);
21
+ constructor({ id, label, icon, dataTest, onClick, }: CameraSettingsDropdownOptionProps);
20
22
  setItemId: (id: string) => void;
21
23
  }
22
24
  export declare class CameraSettingsDropdownSeparator implements CameraSettingsDropdownInterface {
@@ -10,14 +10,16 @@ var CameraSettingsDropdownOption = /** @class */ (function () {
10
10
  *
11
11
  * @param label - label to be displayed in camera settings dropdown option.
12
12
  * @param icon - icon to be used in the option for the dropdown. It goes in the left side of it.
13
+ * @param dataTest - data-test attribute to be used in the option for the dropdown.
13
14
  * @param onClick - function to be called when clicking the button.
14
15
  *
15
16
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
16
17
  */
17
18
  function CameraSettingsDropdownOption(_a) {
18
- var id = _a.id, _b = _a.label, label = _b === void 0 ? '' : _b, _c = _a.icon, icon = _c === void 0 ? '' : _c, _d = _a.onClick, onClick = _d === void 0 ? function () { } : _d;
19
+ var id = _a.id, _b = _a.label, label = _b === void 0 ? '' : _b, _c = _a.icon, icon = _c === void 0 ? '' : _c, _d = _a.dataTest, dataTest = _d === void 0 ? '' : _d, _e = _a.onClick, onClick = _e === void 0 ? function () { } : _e;
19
20
  var _this = this;
20
21
  this.id = '';
22
+ this.dataTest = '';
21
23
  this.setItemId = function (id) {
22
24
  _this.id = "CameraSettingsDropdownOption_".concat(id);
23
25
  };
@@ -26,6 +28,7 @@ var CameraSettingsDropdownOption = /** @class */ (function () {
26
28
  }
27
29
  this.label = label;
28
30
  this.icon = icon;
31
+ this.dataTest = dataTest;
29
32
  this.onClick = onClick;
30
33
  this.type = enums_1.CameraSettingsDropdownItemType.OPTION;
31
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/camera-settings-dropdown-item/component.ts"],"names":[],"mappings":";;;AAAA,iCAAyD;AAKzD,yCAAyC;AAEzC;IAWE;;;;;;;;;OASG;IACH,sCAAY,EAEwB;YADlC,EAAE,QAAA,EAAE,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA,EAAE,YAAS,EAAT,IAAI,mBAAG,EAAE,KAAA,EAAE,eAAkB,EAAlB,OAAO,mBAAG,cAAO,CAAC,KAAA;QAD/C,iBAUC;QA9BD,OAAE,GAAW,EAAE,CAAC;QAgChB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,uCAAgC,EAAE,CAAE,CAAC;QACjD,CAAC,CAAC;QAXA,IAAI,EAAE,EAAE;YACN,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;SACd;QACD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,sCAA8B,CAAC,MAAM,CAAC;IACpD,CAAC;IAKH,mCAAC;AAAD,CAAC,AApCD,IAoCC;AApCY,oEAA4B;AAsCzC;IAKE;;;;;;;;OAQG;IACH;QAAA,iBAEC;QAfD,OAAE,GAAW,EAAE,CAAC;QAiBhB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,0CAAmC,EAAE,CAAE,CAAC;QACpD,CAAC,CAAC;QALA,IAAI,CAAC,IAAI,GAAG,sCAA8B,CAAC,SAAS,CAAC;IACvD,CAAC;IAKH,sCAAC;AAAD,CAAC,AArBD,IAqBC;AArBY,0EAA+B"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/camera-settings-dropdown-item/component.ts"],"names":[],"mappings":";;;AAAA,iCAAyD;AAKzD,yCAAyC;AAEzC;IAaE;;;;;;;;;;OAUG;IACH,sCAAY,EAEwB;YADlC,EAAE,QAAA,EAAE,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA,EAAE,YAAS,EAAT,IAAI,mBAAG,EAAE,KAAA,EAAE,gBAAa,EAAb,QAAQ,mBAAG,EAAE,KAAA,EAAE,eAAkB,EAAlB,OAAO,mBAAG,cAAO,CAAC,KAAA;QAD9D,iBAWC;QAlCD,OAAE,GAAW,EAAE,CAAC;QAQhB,aAAQ,GAAW,EAAE,CAAC;QA4BtB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,uCAAgC,EAAE,CAAE,CAAC;QACjD,CAAC,CAAC;QAZA,IAAI,EAAE,EAAE;YACN,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;SACd;QACD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,sCAA8B,CAAC,MAAM,CAAC;IACpD,CAAC;IAKH,mCAAC;AAAD,CAAC,AAxCD,IAwCC;AAxCY,oEAA4B;AA0CzC;IAKE;;;;;;;;OAQG;IACH;QAAA,iBAEC;QAfD,OAAE,GAAW,EAAE,CAAC;QAiBhB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,0CAAmC,EAAE,CAAE,CAAC;QACpD,CAAC,CAAC;QALA,IAAI,CAAC,IAAI,GAAG,sCAA8B,CAAC,SAAS,CAAC;IACvD,CAAC;IAKH,sCAAC;AAAD,CAAC,AArBD,IAqBC;AArBY,0EAA+B"}
@@ -12,5 +12,6 @@ export interface CameraSettingsDropdownOptionProps {
12
12
  id?: string;
13
13
  label: string;
14
14
  icon: string;
15
+ dataTest?: string;
15
16
  onClick: () => void;
16
17
  }
@@ -7,6 +7,7 @@ export declare class PresentationToolbarButton implements PresentationToolbarInt
7
7
  label: string;
8
8
  tooltip: string;
9
9
  style: React.CSSProperties;
10
+ dataTest: string;
10
11
  onClick: () => void;
11
12
  /**
12
13
  * Returns object to be used in the setter for presentation toolbar. In this case
@@ -16,10 +17,11 @@ export declare class PresentationToolbarButton implements PresentationToolbarInt
16
17
  * @param tooltip - tooltip to be displayed when hovering the button
17
18
  * @param onClick - function to be called when clicking the button
18
19
  * @param style - style of the button in the presentation toolbar
20
+ * @param dataTest - data-test attribute for testing purposes
19
21
  *
20
22
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
21
23
  */
22
- constructor({ id, label, tooltip, onClick, style, }: PresentationToolbarButtonProps);
24
+ constructor({ id, label, tooltip, dataTest, onClick, style, }: PresentationToolbarButtonProps);
23
25
  setItemId: (id: string) => void;
24
26
  }
25
27
  export declare class PresentationToolbarSpinner implements PresentationToolbarInterface {
@@ -12,11 +12,12 @@ var PresentationToolbarButton = /** @class */ (function () {
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
14
  * @param style - style of the button in the presentation toolbar
15
+ * @param dataTest - data-test attribute for testing purposes
15
16
  *
16
17
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
17
18
  */
18
19
  function PresentationToolbarButton(_a) {
19
- var id = _a.id, _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;
20
+ var id = _a.id, _b = _a.label, label = _b === void 0 ? '' : _b, _c = _a.tooltip, tooltip = _c === void 0 ? '' : _c, _d = _a.dataTest, dataTest = _d === void 0 ? '' : _d, _e = _a.onClick, onClick = _e === void 0 ? function () { } : _e, _f = _a.style, style = _f === void 0 ? {} : _f;
20
21
  var _this = this;
21
22
  this.id = '';
22
23
  this.setItemId = function (id) {
@@ -29,6 +30,7 @@ var PresentationToolbarButton = /** @class */ (function () {
29
30
  this.tooltip = tooltip;
30
31
  this.onClick = onClick;
31
32
  this.style = style;
33
+ this.dataTest = dataTest;
32
34
  this.type = enums_1.PresentationToolbarItemType.BUTTON;
33
35
  }
34
36
  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;IAaE;;;;;;;;;;OAUG;IACH,mCAAY,EAEqB;YAD/B,EAAE,QAAA,EAAE,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;QAD9D,iBAWC;QAlCD,OAAE,GAAW,EAAE,CAAC;QAoChB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,oCAA6B,EAAE,CAAE,CAAC;QAC9C,CAAC,CAAC;QAZA,IAAI,EAAE,EAAE;YACN,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;SACd;QACD,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,AAxCD,IAwCC;AAxCY,8DAAyB;AA0CtC;IAKE;;;;;OAKG;IACH;QAAA,iBAEC;QAZD,OAAE,GAAW,EAAE,CAAC;QAchB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,qCAA8B,EAAE,CAAE,CAAC;QAC/C,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,uCAAgC,EAAE,CAAE,CAAC;QACjD,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;IAeE;;;;;;;;;;;OAWG;IACH,mCAAY,EAEqB;YAD/B,EAAE,QAAA,EAAE,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA,EAAE,eAAY,EAAZ,OAAO,mBAAG,EAAE,KAAA,EAAE,gBAAa,EAAb,QAAQ,mBAAG,EAAE,KAAA,EAAE,eAAkB,EAAlB,OAAO,mBAAG,cAAO,CAAC,KAAA,EAAE,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA;QAD7E,iBAYC;QAtCD,OAAE,GAAW,EAAE,CAAC;QAwChB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,oCAA6B,EAAE,CAAE,CAAC;QAC9C,CAAC,CAAC;QAbA,IAAI,EAAE,EAAE;YACN,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;SACd;QACD,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,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,mCAA2B,CAAC,MAAM,CAAC;IACjD,CAAC;IAKH,gCAAC;AAAD,CAAC,AA5CD,IA4CC;AA5CY,8DAAyB;AA8CtC;IAKE;;;;;OAKG;IACH;QAAA,iBAEC;QAZD,OAAE,GAAW,EAAE,CAAC;QAchB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,qCAA8B,EAAE,CAAE,CAAC;QAC/C,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,uCAAgC,EAAE,CAAE,CAAC;QACjD,CAAC,CAAC;QALA,IAAI,CAAC,IAAI,GAAG,mCAA2B,CAAC,SAAS,CAAC;IACpD,CAAC;IAKH,mCAAC;AAAD,CAAC,AAlBD,IAkBC;AAlBY,oEAA4B"}
@@ -10,5 +10,6 @@ export interface PresentationToolbarButtonProps {
10
10
  label: string;
11
11
  tooltip: string;
12
12
  style: React.CSSProperties;
13
+ dataTest?: string;
13
14
  onClick: () => void;
14
15
  }
@@ -2,12 +2,21 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useUiData = void 0;
4
4
  var react_1 = require("react");
5
+ var utils_1 = require("../../data-consumption/utils");
6
+ var hooks_1 = require("../../core/utils/hooks");
5
7
  var consts_1 = require("./consts");
6
8
  function useUiData(dataName, defaultValue) {
7
9
  var _a = (0, react_1.useState)(defaultValue), data = _a[0], setData = _a[1];
10
+ var prevData = (0, hooks_1.usePreviousValue)(data);
11
+ // Use this state to avoid unnecessary updates into the data content
12
+ var _b = (0, react_1.useState)(defaultValue), deduplicatedData = _b[0], setDeduplicatedData = _b[1];
8
13
  var dataStoringFunction = (function (customEvent) {
9
14
  setData(customEvent.detail);
10
15
  });
16
+ (0, react_1.useEffect)(function () {
17
+ if ((0, utils_1.sortedStringify)(data) !== (0, utils_1.sortedStringify)(prevData))
18
+ setDeduplicatedData(data);
19
+ }, [data]);
11
20
  (0, react_1.useEffect)(function () {
12
21
  window.addEventListener(dataName, dataStoringFunction);
13
22
  window.dispatchEvent(new Event("".concat(consts_1.UI_DATA_LISTENER_SUBSCRIBED, "-").concat(dataName)));
@@ -15,7 +24,7 @@ function useUiData(dataName, defaultValue) {
15
24
  window.removeEventListener(dataName, dataStoringFunction);
16
25
  };
17
26
  }, []);
18
- return data;
27
+ return deduplicatedData;
19
28
  }
20
29
  exports.useUiData = useUiData;
21
30
  //# sourceMappingURL=hooks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../../src/ui-data/hooks/hooks.ts"],"names":[],"mappings":";;;AAAA,+BAA4C;AAE5C,mCAAuD;AAEvD,SAAgB,SAAS,CAEvB,QAAW,EAAE,YAA+B;IACtC,IAAA,KAAkB,IAAA,gBAAQ,EAAoB,YAAY,CAAC,EAA1D,IAAI,QAAA,EAAE,OAAO,QAA6C,CAAC;IAClE,IAAM,mBAAmB,GAAG,CAAC,UAAC,WAA2C;QACvE,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC,CAAkB,CAAC;IAEpB,IAAA,iBAAS,EAAC;QACR,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;QACvD,MAAM,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,UAAG,oCAA2B,cAAI,QAAQ,CAAE,CAAC,CAAC,CAAC;QAC9E,OAAO;YACL,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;QAC5D,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,IAAI,CAAC;AACd,CAAC;AAjBD,8BAiBC"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../../src/ui-data/hooks/hooks.ts"],"names":[],"mappings":";;;AAAA,+BAA4C;AAC5C,sDAA+D;AAC/D,gDAA0D;AAE1D,mCAAuD;AAEvD,SAAgB,SAAS,CAEvB,QAAW,EAAE,YAA+B;IACtC,IAAA,KAAkB,IAAA,gBAAQ,EAAoB,YAAY,CAAC,EAA1D,IAAI,QAAA,EAAE,OAAO,QAA6C,CAAC;IAClE,IAAM,QAAQ,GAAG,IAAA,wBAAgB,EAAC,IAAI,CAAC,CAAC;IAExC,oEAAoE;IAC9D,IAAA,KAA0C,IAAA,gBAAQ,EAAC,YAAY,CAAC,EAA/D,gBAAgB,QAAA,EAAE,mBAAmB,QAA0B,CAAC;IAEvE,IAAM,mBAAmB,GAAG,CAAC,UAAC,WAA2C;QACvE,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC,CAAkB,CAAC;IAEpB,IAAA,iBAAS,EAAC;QACR,IAAI,IAAA,uBAAe,EAAC,IAAI,CAAC,KAAK,IAAA,uBAAe,EAAC,QAAQ,CAAC;YAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACrF,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,IAAA,iBAAS,EAAC;QACR,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;QACvD,MAAM,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,UAAG,oCAA2B,cAAI,QAAQ,CAAE,CAAC,CAAC,CAAC;QAC9E,OAAO;YACL,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;QAC5D,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AA1BD,8BA0BC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bigbluebutton-html-plugin-sdk",
3
- "version": "0.0.84",
3
+ "version": "0.0.86",
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",
@@ -18,6 +18,8 @@
18
18
  "@types/node": "^20.4.4",
19
19
  "@types/react": "^18.2.15",
20
20
  "@types/react-dom": "^18.2.7",
21
+ "@types/sha.js": "^2.4.4",
22
+ "@types/xml2js": "^0.4.14",
21
23
  "@typescript-eslint/eslint-plugin": "^6.2.0",
22
24
  "@typescript-eslint/parser": "^6.2.0",
23
25
  "axios": "^1.8.4",
@@ -70,4 +72,4 @@
70
72
  "@browser-bunyan/console-formatted-stream": "^1.8.0",
71
73
  "browser-bunyan": "^1.8.0"
72
74
  }
73
- }
75
+ }