bigbluebutton-html-plugin-sdk 0.0.65 → 0.0.67

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 (74) hide show
  1. package/README.md +60 -24
  2. package/dist/cjs/core/api/BbbPluginSdk.js +2 -0
  3. package/dist/cjs/core/api/BbbPluginSdk.js.map +1 -1
  4. package/dist/cjs/core/api/types.d.ts +9 -0
  5. package/dist/cjs/event-persistence/enums.d.ts +3 -0
  6. package/dist/cjs/event-persistence/enums.js +8 -0
  7. package/dist/cjs/event-persistence/enums.js.map +1 -0
  8. package/dist/cjs/event-persistence/hooks.d.ts +1 -0
  9. package/dist/cjs/event-persistence/hooks.js +15 -0
  10. package/dist/cjs/event-persistence/hooks.js.map +1 -0
  11. package/dist/cjs/event-persistence/types.d.ts +6 -0
  12. package/dist/cjs/event-persistence/types.js +3 -0
  13. package/dist/cjs/event-persistence/types.js.map +1 -0
  14. package/dist/cjs/extensible-areas/action-button-dropdown-item/component.d.ts +1 -1
  15. package/dist/cjs/extensible-areas/action-button-dropdown-item/component.js +4 -1
  16. package/dist/cjs/extensible-areas/action-button-dropdown-item/component.js.map +1 -1
  17. package/dist/cjs/extensible-areas/action-button-dropdown-item/types.d.ts +1 -0
  18. package/dist/cjs/extensible-areas/actions-bar-item/component.d.ts +1 -1
  19. package/dist/cjs/extensible-areas/actions-bar-item/component.js +4 -1
  20. package/dist/cjs/extensible-areas/actions-bar-item/component.js.map +1 -1
  21. package/dist/cjs/extensible-areas/actions-bar-item/types.d.ts +1 -0
  22. package/dist/cjs/extensible-areas/audio-settings-dropdown-item/component.d.ts +1 -1
  23. package/dist/cjs/extensible-areas/audio-settings-dropdown-item/component.js +4 -1
  24. package/dist/cjs/extensible-areas/audio-settings-dropdown-item/component.js.map +1 -1
  25. package/dist/cjs/extensible-areas/audio-settings-dropdown-item/types.d.ts +1 -0
  26. package/dist/cjs/extensible-areas/camera-settings-dropdown-item/component.d.ts +1 -1
  27. package/dist/cjs/extensible-areas/camera-settings-dropdown-item/component.js +4 -1
  28. package/dist/cjs/extensible-areas/camera-settings-dropdown-item/component.js.map +1 -1
  29. package/dist/cjs/extensible-areas/camera-settings-dropdown-item/types.d.ts +1 -0
  30. package/dist/cjs/extensible-areas/floating-window/component.d.ts +1 -1
  31. package/dist/cjs/extensible-areas/floating-window/component.js +4 -1
  32. package/dist/cjs/extensible-areas/floating-window/component.js.map +1 -1
  33. package/dist/cjs/extensible-areas/floating-window/types.d.ts +1 -0
  34. package/dist/cjs/extensible-areas/generic-content-item/component.d.ts +2 -2
  35. package/dist/cjs/extensible-areas/generic-content-item/component.js +8 -2
  36. package/dist/cjs/extensible-areas/generic-content-item/component.js.map +1 -1
  37. package/dist/cjs/extensible-areas/generic-content-item/types.d.ts +2 -0
  38. package/dist/cjs/extensible-areas/nav-bar-item/component.d.ts +2 -2
  39. package/dist/cjs/extensible-areas/nav-bar-item/component.js +8 -2
  40. package/dist/cjs/extensible-areas/nav-bar-item/component.js.map +1 -1
  41. package/dist/cjs/extensible-areas/nav-bar-item/types.d.ts +2 -0
  42. package/dist/cjs/extensible-areas/options-dropdown-item/component.d.ts +1 -1
  43. package/dist/cjs/extensible-areas/options-dropdown-item/component.js +4 -1
  44. package/dist/cjs/extensible-areas/options-dropdown-item/component.js.map +1 -1
  45. package/dist/cjs/extensible-areas/options-dropdown-item/types.d.ts +1 -0
  46. package/dist/cjs/extensible-areas/presentation-dropdown-item/component.d.ts +1 -1
  47. package/dist/cjs/extensible-areas/presentation-dropdown-item/component.js +4 -1
  48. package/dist/cjs/extensible-areas/presentation-dropdown-item/component.js.map +1 -1
  49. package/dist/cjs/extensible-areas/presentation-dropdown-item/types.d.ts +1 -0
  50. package/dist/cjs/extensible-areas/presentation-toolbar-item/component.d.ts +1 -1
  51. package/dist/cjs/extensible-areas/presentation-toolbar-item/component.js +6 -3
  52. package/dist/cjs/extensible-areas/presentation-toolbar-item/component.js.map +1 -1
  53. package/dist/cjs/extensible-areas/presentation-toolbar-item/types.d.ts +1 -0
  54. package/dist/cjs/extensible-areas/screenshare-helper-item/component.d.ts +1 -1
  55. package/dist/cjs/extensible-areas/screenshare-helper-item/component.js +4 -1
  56. package/dist/cjs/extensible-areas/screenshare-helper-item/component.js.map +1 -1
  57. package/dist/cjs/extensible-areas/screenshare-helper-item/types.d.ts +1 -0
  58. package/dist/cjs/extensible-areas/user-camera-dropdown-item/component.d.ts +1 -1
  59. package/dist/cjs/extensible-areas/user-camera-dropdown-item/component.js +4 -1
  60. package/dist/cjs/extensible-areas/user-camera-dropdown-item/component.js.map +1 -1
  61. package/dist/cjs/extensible-areas/user-camera-dropdown-item/types.d.ts +1 -0
  62. package/dist/cjs/extensible-areas/user-camera-helper-item/component.d.ts +1 -1
  63. package/dist/cjs/extensible-areas/user-camera-helper-item/component.js +4 -1
  64. package/dist/cjs/extensible-areas/user-camera-helper-item/component.js.map +1 -1
  65. package/dist/cjs/extensible-areas/user-camera-helper-item/types.d.ts +1 -0
  66. package/dist/cjs/extensible-areas/user-list-dropdown-item/component.d.ts +3 -3
  67. package/dist/cjs/extensible-areas/user-list-dropdown-item/component.js +12 -3
  68. package/dist/cjs/extensible-areas/user-list-dropdown-item/component.js.map +1 -1
  69. package/dist/cjs/extensible-areas/user-list-dropdown-item/types.d.ts +3 -0
  70. package/dist/cjs/extensible-areas/user-list-item-additional-information/component.d.ts +2 -2
  71. package/dist/cjs/extensible-areas/user-list-item-additional-information/component.js +8 -2
  72. package/dist/cjs/extensible-areas/user-list-item-additional-information/component.js.map +1 -1
  73. package/dist/cjs/extensible-areas/user-list-item-additional-information/types.d.ts +2 -0
  74. package/package.json +1 -1
package/README.md CHANGED
@@ -22,6 +22,8 @@ For development purposes you can run a plugin locally from source.
22
22
  For example if you take the [`sample-action-button-dropdown-plugin`](samples/sample-action-button-dropdown-plugin),
23
23
  you do the following:
24
24
 
25
+ *Running from source code with local BBB-server*
26
+
25
27
  1. Start the development server:
26
28
 
27
29
  ```bash
@@ -29,19 +31,59 @@ you do the following:
29
31
  npm install
30
32
  npm start
31
33
  ```
32
- 2. Add reference to it on BigBlueButton's `settings.yml`:
33
34
 
34
- ```yaml
35
- public:
36
- plugins:
37
- - name: SampleActionButtonDropdownPlugin
38
- url: http://127.0.0.1:4701/static/SampleActionButtonDropdownPlugin.js
39
- ```
35
+ 2. Add reference to it on BigBlueButton's `/create` call or add it on `/usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties`:
36
+
37
+ ```
38
+ pluginsManifests=[{"url": "http://localhost:4701/manifest.json"}]
39
+ ```
40
+
41
+ *Running from souce code with a remote BBB-server*
42
+
43
+ If you are running your BBB-server elsewhere, than you can't simply point the manifest URL to a local address, you'll need to either serve the built version into a CDN or serve the dev version using a service to make it public. And for the second option we'd recommend NGROK. Here are the instructions to do that:
44
+
45
+ 1. Create an account on https://ngrok.com/ (Official website of NGROK);
46
+
47
+ 2. Install NGROK in your computer. They have a guide for that right after you created your account;
48
+
49
+ 3. Start the Plugin development server:
50
+
51
+ ```bash
52
+ cd $HOME/src/plugin-pick-random-user-plugin
53
+ npm install
54
+ npm start
55
+ ```
56
+
57
+ 4. Start the NGROK server into your machine with the following command:
58
+
59
+ ```bash
60
+ ngrok http http://172.17.0.1:4701
61
+ ```
62
+
63
+ Make sure to point NGROK to the correct local URL (In our case - The samples are made this way, for instance - we used `http://172.17.0.1:4701`)
64
+
65
+ Right after that, NGROK will create an interface into your terminal and will display the URL which your static files are being served.
66
+
67
+ Here's an example of URL: `https://<uuid>.ngrok-free.app`
68
+
69
+ You can already interact with this URL and access both
40
70
 
41
- _N.B.:_ Be aware that in this case the url is interpreted from the plugin in the browser,
42
- so the localhost is actually your local development machine.
71
+ `https://<uuid>.ngrok-free.app/manifest.json`
43
72
 
44
- ### Building the Plugin
73
+ or
74
+
75
+ `https://<uuid>.ngrok-free.app/PickRandomUserPlugin.js`
76
+
77
+
78
+ 5. Add this create parameter into the API-mate of the server you are testing it on:
79
+
80
+ ```
81
+ pluginsManifests=[{"url": "https://<uuid>.ngrok-free.app/manifest.json"}]
82
+ ```
83
+
84
+ And there you go, you can test it freely.
85
+
86
+ ### Building the Plugin (Production)
45
87
 
46
88
  To build a plugin for production use
47
89
  (again, using the example of [`sample-action-button-dropdown-plugin`](samples/sample-action-button-dropdown-plugin)),
@@ -53,26 +95,20 @@ npm install
53
95
  npm run build-bundle
54
96
  ```
55
97
 
56
- The above command will generate the `dist` folder, containing the bundled JavaScript file named `SampleActionButtonDropdownPlugin.js`.
57
- This file can be hosted on any HTTPS server.
98
+ The above command will generate the `dist` folder, containing the bundled JavaScript file named `SampleActionButtonDropdownPlugin.js` along with the `manifest.json`.
99
+ These files can be hosted on any HTTPS server.
58
100
 
59
- To use the plugin with BigBlueButton, add the plugin's URL to `settings.yml` as shown below:
101
+ To use the plugin with BigBlueButton, add the plugin's `manifest.json` URL to `bigbluebutton.properties` or you can simply send it via `/create` parameter:
60
102
 
61
- ```yaml
62
- public:
63
- app:
64
- ... // All app configurations
65
- plugins:
66
- - name: SampleActionButtonDropdownPlugin
67
- url: <<PLUGIN_URL>>
68
- ... // All other configurations
103
+ ```
104
+ pluginManifests=[{"url":"<your-domain>/path/to/manifest.json"}]
69
105
  ```
70
106
 
71
107
  #### Hosting the Plugin on a BBB Server
72
108
 
73
109
  While the plugin can be hosted on any Server, it is also possible to host the bundled file directly on
74
- a BigBlueButton server. For that you copy the `dist/SampleActionButtonDropdownPlugin.js` to the folder `/var/www/bigbluebutton-default/assets/plugins`.
75
- In this case, the `<<PLUGIN_URL>>` will be `https://<your-host>/plugins/SampleActionButtonDropdownPlugin.js`.
110
+ a BigBlueButton server. For that you copy `dist/SampleActionButtonDropdownPlugin.js` and `dist/manifest.json` to the folder `/var/www/bigbluebutton-default/assets/plugins/sampleActionButtonDropdownPlugin`.
111
+ In this case, the your manifest URL will be `https://<your-host>/plugins/sampleActionButtonDropdownPlugin/manifest.json`.
76
112
 
77
113
  ## API
78
114
 
@@ -397,7 +433,7 @@ module.exports = {
397
433
  ```
398
434
 
399
435
  **Does the builded plugin need to be in the same BBB server?**
400
- No, feel free to host it anywhere you want, just make sure to point the URL from `settings.yml`correctly.
436
+ No, feel free to host it anywhere you want, just make sure to point the URL from `manifest.json` correctly (into the create endpoint or `bigbluebutton.properties`).
401
437
 
402
438
  **I am making my plugin based on a sample inside the SDK, but somehow, the sample is not working properly, what do I do to run it in dev mode and make it work?**
403
439
  Well there are several motives to why the sample is not working properly, so I will go through each one of them briefly:
@@ -23,6 +23,7 @@ var hooks_12 = require("../../data-consumption/domain/meeting/from-core/hooks");
23
23
  var commands_2 = require("../../server-commands/commands");
24
24
  var hooks_13 = require("../../learning-analytics-dashboard/hooks");
25
25
  var utils_1 = require("../../remote-data/utils");
26
+ var hooks_14 = require("../../event-persistence/hooks");
26
27
  /**
27
28
  * Class responsible for either initialize or get the PluginApi
28
29
  *
@@ -71,6 +72,7 @@ var BbbPluginSdk = /** @class */ (function () {
71
72
  pluginApi.serverCommands = (0, commands_2.serverCommands)(pluginName);
72
73
  pluginApi.sendGenericDataForLearningAnalyticsDashboard = function (data) { return (0, hooks_13.sendGenericDataForLearningAnalyticsDashboard)(data, pluginName); };
73
74
  pluginApi.getRemoteData = function (dataSourceName) { return (0, utils_1.getRemoteData)(dataSourceName, pluginName); };
75
+ pluginApi.persistEvent = function (eventName, payload) { return (0, hooks_14.persistEventFunctionWrapper)(pluginName, eventName, payload); };
74
76
  }
75
77
  else {
76
78
  throw new Error('Plugin name not set');
@@ -1 +1 @@
1
- {"version":3,"file":"BbbPluginSdk.js","sourceRoot":"","sources":["../../../../src/core/api/BbbPluginSdk.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,+BAAkC;AAOlC,kDAA4D;AAO5D,uDAAwD;AAQxD,kDAAiE;AACjE,gGAEgF;AAChF,wFAEwE;AACxE,oFAA+F;AAC/F,gFAAwF;AACxF,oFAA+F;AAC/F,4DAAoE;AACpE,uDAA0D;AAC1D,mEAA2E;AAE3E,uFAAsG;AACtG,2EAA8F;AAC9F,0EAA4F;AAE5F,2FAAuG;AACvG,oDAAsD;AAEtD,gFAAmF;AACnF,2DAAgE;AAChE,mEAAwG;AAExG,iDAAwD;AAIxD;;;;;;GAMG;AACH;IAAA;IAuHA,CAAC;IAtHC;;;;;;;;;;OAUG;IACW,uBAAU,GAAxB,UAAyB,IAAY;QACnC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,wFAAwF,CAAC,CAAC;QAC1I,IAAM,SAAS,GAAc,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACtD,SAAS,CAAC,qBAAqB,GAAG,CAAC,UACjC,KAAa,EACb,sBAAsD,IACnD,OAAA,IAAA,6BAAqB,EAAC,KAAK,EAAE,sBAAsB,CAAC,EAApD,CAAoD,CAAkC,CAAC;QAC5F,SAAS,CAAC,sBAAsB,GAAG,CACjC,cAAM,OAAA,IAAA,8BAAsB,GAAE,EAAxB,CAAwB,CAAmC,CAAC;QACpE,SAAS,CAAC,iBAAiB,GAAG,CAAC,cAAM,OAAA,IAAA,yBAAiB,GAAE,EAAnB,CAAmB,CAA8B,CAAC;QACvF,SAAS,CAAC,cAAc,GAAG,CAAC,cAAM,OAAA,IAAA,sBAAc,GAAE,EAAhB,CAAgB,CAA2B,CAAC;QAC9E,SAAS,CAAC,UAAU,GAAG,CAAC,cAAM,OAAA,IAAA,mBAAU,GAAE,EAAZ,CAAY,CAAuB,CAAC;QAClE,SAAS,CAAC,iBAAiB,GAAG,CAAC,cAAM,OAAA,IAAA,yBAAiB,GAAE,EAAnB,CAAmB,CAA8B,CAAC;QACvF,SAAS,CAAC,mBAAmB,GAAG,CAAC,cAAM,OAAA,IAAA,4BAAmB,GAAE,EAArB,CAAqB,CAAgC,CAAC;QAC7F,SAAS,CAAC,qBAAqB,GAAG,CAChC,cAAM,OAAA,IAAA,6BAAqB,GAAE,EAAvB,CAAuB,CAAkC,CAAC;QAClE,SAAS,CAAC,yBAAyB,GAAG,UACpC,UAAoB,IACjB,OAAA,IAAA,iCAAyB,EAAC,UAAU,EAAE,IAAI,CAAC,EAA3C,CAA2C,CAAC;QACjD,SAAS,CAAC,wBAAwB,GAAG,UACnC,SAAmB,IAChB,OAAA,IAAA,gCAAwB,EAAC,SAAS,EAAE,IAAI,CAAC,EAAzC,CAAyC,CAAC;QAC/C,SAAS,CAAC,UAAU,GAAG,qBAAU,CAAC;QAClC,SAAS,CAAC,SAAS,GAAG,kBAAS,CAAC;QAChC,IAAM,UAAU,GAAG,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,UAAU,CAAC;QACzC,IAAI,UAAU,EAAE;YACd,SAAS,CAAC,cAAc,GAAG,CAAC,UAC1B,WAAmB,EACnB,eAA8D,EAC9D,cAAkC;gBADlC,gCAAA,EAAA,kBAAoC,wBAAgB,CAAC,SAAS;gBAC9D,+BAAA,EAAA,0BAAkC;gBAC/B,OAAA,IAAA,6BAAqB,EACxB,WAAW,EACX,cAAc,EACd,UAAU,EACV,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,EACxB,eAAe,CAChB;YANI,CAMJ,CAAwC,CAAC;YAC1C,SAAS,CAAC,iBAAiB,GAAG,cAAM,OAAA,IAAA,4BAAiB,EAAC,UAAU,CAAC,EAA7B,CAA6B,CAAC;YAClE,SAAS,CAAC,cAAc,GAAG,IAAA,yBAAc,EAAC,UAAU,CAAC,CAAC;YACtD,SAAS,CAAC,4CAA4C,GAAG,UACvD,IAA8C,IAC3C,OAAA,IAAA,qDAA4C,EAAC,IAAI,EAAE,UAAU,CAAC,EAA9D,CAA8D,CAAC;YACpE,SAAS,CAAC,aAAa,GAAG,UACxB,cAAsB,IACnB,OAAA,IAAA,qBAAa,EAAC,cAAc,EAAE,UAAU,CAAC,EAAzC,CAAyC,CAAC;SAChD;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;SACxC;IACH,CAAC;IAEc,+BAAkB,GAAjC;QACE,IAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC;QACzB,IAAI;YACF,OAAO,CAAC,KAAK,GAAG,cAAO,CAAC,CAAC;YACzB,IAAA,iBAAS,EAAC,cAAO,CAAC,EAAE,EAAE,CAAC,CAAC;SACzB;QAAC,WAAM;YACN,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;YACnB,OAAO,CAAC,KAAK,CAAC,8GAA8G,CAAC,CAAC;YAC9H,OAAO,KAAK,CAAC;SACd;QACD,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;OAYG;IACW,yBAAY,GAA1B,UAA2B,IAAY,EAAE,UAAmB;QAC1D,IAAI,CAAC,MAAM,CAAC,WAAW;YAAE,MAAM,CAAC,WAAW,GAAG,EAAE,CAAC;QACjD,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE;YACxD,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG;gBACzB,wBAAwB,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBAClC,2BAA2B,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBACrC,4BAA4B,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBACtC,kBAAkB,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBAC5B,6BAA6B,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBACvC,4BAA4B,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBACtC,cAAc,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBACxB,yBAAyB,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBACnC,wBAAwB,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBAClC,uBAAuB,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBACjC,8BAA8B,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBACxC,0BAA0B,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBACpC,oCAAoC,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBAC9C,kBAAkB,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBAC5B,sBAAsB,EAAE,cAAM,OAAA,EAAE,EAAF,CAAE;gBAChC,uBAAuB,EAAE;oBACvB,EAAE,EAAE,cAAO,CAAC;iBACb;gBACD,eAAe,EAAE,cAAM,OAAA,IAAA,wBAAe,GAAE,EAAjB,CAAiB;gBACxC,UAAU,EAAE,UAAC,MAAM,IAAK,OAAA,IAAA,mBAAU,EAAC,MAAM,CAAC,EAAlB,CAAkB;gBAC1C,UAAU,YAAA;aACX,CAAC;SACH;QAED,OAAO,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IACH,mBAAC;AAAD,CAAC,AAvHD,IAuHC;AAvHqB,oCAAY"}
1
+ {"version":3,"file":"BbbPluginSdk.js","sourceRoot":"","sources":["../../../../src/core/api/BbbPluginSdk.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,7 @@ import { SendGenericDataForLearningAnalyticsDashboard } from '../../learning-ana
31
31
  import { UseUserCameraDomElementsFunction } from '../../dom-element-manipulation/user-camera/types';
32
32
  import { ScreenshareHelperInterface, UserCameraHelperInterface } from '../../extensible-areas';
33
33
  import { GetDataSource } from '../../remote-data/types';
34
+ import { PersistEventFunction } from '../../event-persistence/types';
34
35
  export type SetPresentationToolbarItems = (presentationToolbarItem: PresentationToolbarInterface[]) => string[];
35
36
  export type SetUserListDropdownItems = (userListDropdownItem: UserListDropdownInterface[]) => string[];
36
37
  export type SetActionButtonDropdownItems = (actionButtonDropdownInterface: ActionButtonDropdownInterface[]) => string[];
@@ -199,6 +200,14 @@ export interface PluginApi {
199
200
  *
200
201
  */
201
202
  getRemoteData?: GetDataSource;
203
+ /**
204
+ * Persists events to `events.xml` file.
205
+ *
206
+ * @param eventName - name of the event to be persisted in `events.xml`
207
+ * @param payload - payload to be persisted in `events.xml`
208
+ *
209
+ */
210
+ persistEvent?: PersistEventFunction;
202
211
  }
203
212
  export interface PluginBrowserWindow extends Window {
204
213
  bbb_plugins: {
@@ -0,0 +1,3 @@
1
+ export declare enum EventPersistenceEvents {
2
+ EVENT_PERSISTED = "PLUGIN_EVENT_PERSISTED"
3
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EventPersistenceEvents = void 0;
4
+ var EventPersistenceEvents;
5
+ (function (EventPersistenceEvents) {
6
+ EventPersistenceEvents["EVENT_PERSISTED"] = "PLUGIN_EVENT_PERSISTED";
7
+ })(EventPersistenceEvents || (exports.EventPersistenceEvents = EventPersistenceEvents = {}));
8
+ //# sourceMappingURL=enums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../src/event-persistence/enums.ts"],"names":[],"mappings":";;;AAAA,IAAY,sBAEX;AAFD,WAAY,sBAAsB;IAChC,oEAA0C,CAAA;AAC5C,CAAC,EAFW,sBAAsB,sCAAtB,sBAAsB,QAEjC"}
@@ -0,0 +1 @@
1
+ export declare const persistEventFunctionWrapper: <T = object>(pluginName: string, eventName: string, payload: T) => void;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.persistEventFunctionWrapper = void 0;
4
+ var enums_1 = require("./enums");
5
+ var persistEventFunctionWrapper = function (pluginName, eventName, payload) {
6
+ window.dispatchEvent(new CustomEvent(enums_1.EventPersistenceEvents.EVENT_PERSISTED, {
7
+ detail: {
8
+ pluginName: pluginName,
9
+ eventName: eventName,
10
+ payload: payload,
11
+ },
12
+ }));
13
+ };
14
+ exports.persistEventFunctionWrapper = persistEventFunctionWrapper;
15
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/event-persistence/hooks.ts"],"names":[],"mappings":";;;AAGA,iCAAiD;AAE1C,IAAM,2BAA2B,GAAG,UACzC,UAAkB,EAClB,SAAiB,EACjB,OAAU;IAEV,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CACa,8BAAsB,CAAC,eAAe,EAAE;QAClE,MAAM,EAAE;YACN,UAAU,YAAA;YACV,SAAS,WAAA;YACT,OAAO,SAAA;SACR;KACF,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAfW,QAAA,2BAA2B,+BAetC"}
@@ -0,0 +1,6 @@
1
+ export interface EventPersistenceDetails<T = object> {
2
+ pluginName: string;
3
+ eventName: string;
4
+ payload: T;
5
+ }
6
+ export type PersistEventFunction = <T = object>(eventName: string, payload: T) => void;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/event-persistence/types.ts"],"names":[],"mappings":""}
@@ -19,7 +19,7 @@ export declare class ActionButtonDropdownOption implements ActionButtonDropdownI
19
19
  *
20
20
  * @returns the option to be displayed in the action button dropdown
21
21
  */
22
- constructor({ label, icon, tooltip, allowed, onClick, }: ActionButtonDropdownOptionProps);
22
+ constructor({ id, label, icon, tooltip, allowed, onClick, }: ActionButtonDropdownOptionProps);
23
23
  setItemId: (id: string) => void;
24
24
  }
25
25
  export declare class ActionButtonDropdownSeparator implements ActionButtonDropdownInterface {
@@ -16,12 +16,15 @@ var ActionButtonDropdownOption = /** @class */ (function () {
16
16
  * @returns the option to be displayed in the action button dropdown
17
17
  */
18
18
  function ActionButtonDropdownOption(_a) {
19
- 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.allowed, allowed = _e === void 0 ? true : _e, _f = _a.onClick, onClick = _f === void 0 ? function () { } : _f;
19
+ var id = _a.id, _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.allowed, allowed = _e === void 0 ? true : _e, _f = _a.onClick, onClick = _f === void 0 ? function () { } : _f;
20
20
  var _this = this;
21
21
  this.id = '';
22
22
  this.setItemId = function (id) {
23
23
  _this.id = "ActionButtonDropdownOption_".concat(id);
24
24
  };
25
+ if (id) {
26
+ this.id = id;
27
+ }
25
28
  this.label = label;
26
29
  this.icon = icon;
27
30
  this.tooltip = tooltip;
@@ -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;IAeE;;;;;;;;;;OAUG;IACH,oCAAY,EAEsB;YADhC,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA,EAAE,YAAS,EAAT,IAAI,mBAAG,EAAE,KAAA,EAAE,eAAY,EAAZ,OAAO,mBAAG,EAAE,KAAA,EAAE,eAAc,EAAd,OAAO,mBAAG,IAAI,KAAA,EAAE,eAAkB,EAAlB,OAAO,mBAAG,cAAO,CAAC,KAAA;QADzE,iBASC;QAlCD,OAAE,GAAW,EAAE,CAAC;QAoChB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,qCAA8B,EAAE,CAAE,CAAC;QAC/C,CAAC,CAAC;QAVA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,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,AAxCD,IAwCC;AAxCY,gEAA0B;AA0CvC;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;IAeE;;;;;;;;;;OAUG;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,eAAc,EAAd,OAAO,mBAAG,IAAI,KAAA,EAAE,eAAkB,EAAlB,OAAO,mBAAG,cAAO,CAAC,KAAA;QAD7E,iBAYC;QArCD,OAAE,GAAW,EAAE,CAAC;QAuChB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,qCAA8B,EAAE,CAAE,CAAC;QAC/C,CAAC,CAAC;QAbA,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,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,AA3CD,IA2CC;AA3CY,gEAA0B;AA6CvC;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"}
@@ -5,6 +5,7 @@ import { PluginProvidedUiItemDescriptor } from '../base';
5
5
  export interface ActionButtonDropdownInterface extends PluginProvidedUiItemDescriptor {
6
6
  }
7
7
  export interface ActionButtonDropdownOptionProps {
8
+ id?: string;
8
9
  label: string;
9
10
  icon: string;
10
11
  tooltip: string;
@@ -18,7 +18,7 @@ export declare class ActionsBarButton implements ActionsBarInterface {
18
18
  *
19
19
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
20
20
  */
21
- constructor({ icon, tooltip, onClick, position, }: ActionsBarButtonProps);
21
+ constructor({ id, icon, tooltip, onClick, position, }: ActionsBarButtonProps);
22
22
  setItemId: (id: string) => void;
23
23
  }
24
24
  export declare class ActionsBarSeparator implements ActionsBarInterface {
@@ -16,12 +16,15 @@ var ActionsBarButton = /** @class */ (function () {
16
16
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
17
17
  */
18
18
  function ActionsBarButton(_a) {
19
- var _b = _a.icon, icon = _b === void 0 ? '' : _b, _c = _a.tooltip, tooltip = _c === void 0 ? '' : _c, _d = _a.onClick, onClick = _d === void 0 ? function () { } : _d, _e = _a.position, position = _e === void 0 ? enums_1.ActionsBarPosition.RIGHT : _e;
19
+ var id = _a.id, _b = _a.icon, icon = _b === void 0 ? '' : _b, _c = _a.tooltip, tooltip = _c === void 0 ? '' : _c, _d = _a.onClick, onClick = _d === void 0 ? function () { } : _d, _e = _a.position, position = _e === void 0 ? enums_1.ActionsBarPosition.RIGHT : _e;
20
20
  var _this = this;
21
21
  this.id = '';
22
22
  this.setItemId = function (id) {
23
23
  _this.id = "ActionsBarButton_".concat(id);
24
24
  };
25
+ if (id) {
26
+ this.id = id;
27
+ }
25
28
  this.icon = icon;
26
29
  this.tooltip = tooltip;
27
30
  this.onClick = onClick;
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/actions-bar-item/component.ts"],"names":[],"mappings":";;;AAAA,iCAAiE;AAKjE,6BAA6B;AAE7B;IAaE;;;;;;;;;;OAUG;IACH,0BAAY,EAEY;YADtB,YAAS,EAAT,IAAI,mBAAG,EAAE,KAAA,EAAE,eAAY,EAAZ,OAAO,mBAAG,EAAE,KAAA,EAAE,eAAkB,EAAlB,OAAO,mBAAG,cAAO,CAAC,KAAA,EAAE,gBAAmC,EAAnC,QAAQ,mBAAG,0BAAkB,CAAC,KAAK,KAAA;QADlF,iBAQC;QA/BD,OAAE,GAAW,EAAE,CAAC;QAiChB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,2BAAoB,EAAE,CAAE,CAAC;QACrC,CAAC,CAAC;QATA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,0BAAkB,CAAC,MAAM,CAAC;IACxC,CAAC;IAKH,uBAAC;AAAD,CAAC,AArCD,IAqCC;AArCY,4CAAgB;AAuC7B;IAOE;;;;;;;OAOG;IACH,6BAAY,EAEe;YADzB,gBAAmC,EAAnC,QAAQ,mBAAG,0BAAkB,CAAC,KAAK,KAAA;QADrC,iBAKC;QAjBD,OAAE,GAAW,EAAE,CAAC;QAmBhB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,8BAAuB,EAAE,CAAE,CAAC;QACxC,CAAC,CAAC;QANA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,0BAAkB,CAAC,SAAS,CAAC;IAC3C,CAAC;IAKH,0BAAC;AAAD,CAAC,AAzBD,IAyBC;AAzBY,kDAAmB"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/actions-bar-item/component.ts"],"names":[],"mappings":";;;AAAA,iCAAiE;AAKjE,6BAA6B;AAE7B;IAaE;;;;;;;;;;OAUG;IACH,0BAAY,EAEY;YADtB,EAAE,QAAA,EAAE,YAAS,EAAT,IAAI,mBAAG,EAAE,KAAA,EAAE,eAAY,EAAZ,OAAO,mBAAG,EAAE,KAAA,EAAE,eAAkB,EAAlB,OAAO,mBAAG,cAAO,CAAC,KAAA,EAAE,gBAAmC,EAAnC,QAAQ,mBAAG,0BAAkB,CAAC,KAAK,KAAA;QADtF,iBAWC;QAlCD,OAAE,GAAW,EAAE,CAAC;QAoChB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,2BAAoB,EAAE,CAAE,CAAC;QACrC,CAAC,CAAC;QAZA,IAAI,EAAE,EAAE;YACN,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;SACd;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,0BAAkB,CAAC,MAAM,CAAC;IACxC,CAAC;IAKH,uBAAC;AAAD,CAAC,AAxCD,IAwCC;AAxCY,4CAAgB;AA0C7B;IAOE;;;;;;;OAOG;IACH,6BAAY,EAEe;YADzB,gBAAmC,EAAnC,QAAQ,mBAAG,0BAAkB,CAAC,KAAK,KAAA;QADrC,iBAKC;QAjBD,OAAE,GAAW,EAAE,CAAC;QAmBhB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,8BAAuB,EAAE,CAAE,CAAC;QACxC,CAAC,CAAC;QANA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,0BAAkB,CAAC,SAAS,CAAC;IAC3C,CAAC;IAKH,0BAAC;AAAD,CAAC,AAzBD,IAyBC;AAzBY,kDAAmB"}
@@ -7,6 +7,7 @@ export interface ActionsBarInterface extends PluginProvidedUiItemDescriptor {
7
7
  position: ActionsBarPosition;
8
8
  }
9
9
  export interface ActionsBarButtonProps {
10
+ id?: string;
10
11
  icon: string;
11
12
  tooltip: string;
12
13
  position: ActionsBarPosition;
@@ -16,7 +16,7 @@ export declare class AudioSettingsDropdownOption implements AudioSettingsDropdow
16
16
  *
17
17
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
18
18
  */
19
- constructor({ label, icon, onClick, }: AudioSettingsDropdownOptionProps);
19
+ constructor({ id, label, icon, onClick, }: AudioSettingsDropdownOptionProps);
20
20
  setItemId: (id: string) => void;
21
21
  }
22
22
  export declare class AudioSettingsDropdownSeparator implements AudioSettingsDropdownInterface {
@@ -15,12 +15,15 @@ var AudioSettingsDropdownOption = /** @class */ (function () {
15
15
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5)
16
16
  */
17
17
  function AudioSettingsDropdownOption(_a) {
18
- var _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;
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
19
  var _this = this;
20
20
  this.id = '';
21
21
  this.setItemId = function (id) {
22
22
  _this.id = "AudioSettingsDropdownOption_".concat(id);
23
23
  };
24
+ if (id) {
25
+ this.id = id;
26
+ }
24
27
  this.label = label;
25
28
  this.icon = icon;
26
29
  this.onClick = onClick;
@@ -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,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA,EAAE,YAAS,EAAT,IAAI,mBAAG,EAAE,KAAA,EAAE,eAAkB,EAAlB,OAAO,mBAAG,cAAO,CAAC,KAAA;QAD3C,iBAOC;QA3BD,OAAE,GAAW,EAAE,CAAC;QA6BhB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,sCAA+B,EAAE,CAAE,CAAC;QAChD,CAAC,CAAC;QARA,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,AAjCD,IAiCC;AAjCY,kEAA2B;AAmCxC;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;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"}
@@ -9,6 +9,7 @@ import { PluginProvidedUiItemDescriptor } from '../base';
9
9
  export interface AudioSettingsDropdownInterface extends PluginProvidedUiItemDescriptor {
10
10
  }
11
11
  export interface AudioSettingsDropdownOptionProps {
12
+ id?: string;
12
13
  label: string;
13
14
  icon: string;
14
15
  onClick: () => void;
@@ -16,7 +16,7 @@ export declare class CameraSettingsDropdownOption implements CameraSettingsDropd
16
16
  *
17
17
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
18
18
  */
19
- constructor({ label, icon, onClick, }: CameraSettingsDropdownOptionProps);
19
+ constructor({ id, label, icon, onClick, }: CameraSettingsDropdownOptionProps);
20
20
  setItemId: (id: string) => void;
21
21
  }
22
22
  export declare class CameraSettingsDropdownSeparator implements CameraSettingsDropdownInterface {
@@ -15,12 +15,15 @@ var CameraSettingsDropdownOption = /** @class */ (function () {
15
15
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
16
16
  */
17
17
  function CameraSettingsDropdownOption(_a) {
18
- var _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;
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
19
  var _this = this;
20
20
  this.id = '';
21
21
  this.setItemId = function (id) {
22
22
  _this.id = "CameraSettingsDropdownOption_".concat(id);
23
23
  };
24
+ if (id) {
25
+ this.id = id;
26
+ }
24
27
  this.label = label;
25
28
  this.icon = icon;
26
29
  this.onClick = onClick;
@@ -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,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA,EAAE,YAAS,EAAT,IAAI,mBAAG,EAAE,KAAA,EAAE,eAAkB,EAAlB,OAAO,mBAAG,cAAO,CAAC,KAAA;QAD3C,iBAOC;QA3BD,OAAE,GAAW,EAAE,CAAC;QA6BhB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,uCAAgC,EAAE,CAAE,CAAC;QACjD,CAAC,CAAC;QARA,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,AAjCD,IAiCC;AAjCY,oEAA4B;AAmCzC;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;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"}
@@ -9,6 +9,7 @@ import { PluginProvidedUiItemDescriptor } from '../base';
9
9
  export interface CameraSettingsDropdownInterface extends PluginProvidedUiItemDescriptor {
10
10
  }
11
11
  export interface CameraSettingsDropdownOptionProps {
12
+ id?: string;
12
13
  label: string;
13
14
  icon: string;
14
15
  onClick: () => void;
@@ -26,6 +26,6 @@ export declare class FloatingWindow implements FloatingWindowInterface {
26
26
  *
27
27
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
28
28
  */
29
- constructor({ top, left, movable, backgroundColor, boxShadow, contentFunction, }: FloatingWindowProps);
29
+ constructor({ id, top, left, movable, backgroundColor, boxShadow, contentFunction, }: FloatingWindowProps);
30
30
  setItemId: (id: string) => void;
31
31
  }
@@ -21,12 +21,15 @@ var FloatingWindow = /** @class */ (function () {
21
21
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
22
22
  */
23
23
  function FloatingWindow(_a) {
24
- var top = _a.top, left = _a.left, movable = _a.movable, backgroundColor = _a.backgroundColor, boxShadow = _a.boxShadow, contentFunction = _a.contentFunction;
24
+ var id = _a.id, top = _a.top, left = _a.left, movable = _a.movable, backgroundColor = _a.backgroundColor, boxShadow = _a.boxShadow, contentFunction = _a.contentFunction;
25
25
  var _this = this;
26
26
  this.id = '';
27
27
  this.setItemId = function (id) {
28
28
  _this.id = "FloatingWindow_".concat(id);
29
29
  };
30
+ if (id) {
31
+ this.id = id;
32
+ }
30
33
  this.top = top;
31
34
  this.left = left;
32
35
  this.movable = movable;
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/floating-window/component.ts"],"names":[],"mappings":";;;AACA,iCAA6C;AAG7C,iCAAiC;AAEjC;IAiBE;;;;;;;;;;;;;;;OAeG;IACH,wBAAY,EAOU;YANpB,GAAG,SAAA,EACH,IAAI,UAAA,EACJ,OAAO,aAAA,EACP,eAAe,qBAAA,EACf,SAAS,eAAA,EACT,eAAe,qBAAA;QANjB,iBAgBC;QAhDD,OAAE,GAAW,EAAE,CAAC;QAkDhB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,yBAAkB,EAAE,CAAE,CAAC;QACnC,CAAC,CAAC;QAZA,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAE3B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,0BAAkB,CAAC,SAAS,CAAC;IAC3C,CAAC;IAKH,qBAAC;AAAD,CAAC,AAtDD,IAsDC;AAtDY,wCAAc"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/floating-window/component.ts"],"names":[],"mappings":";;;AACA,iCAA6C;AAG7C,iCAAiC;AAEjC;IAiBE;;;;;;;;;;;;;;;OAeG;IACH,wBAAY,EAQU;YAPpB,EAAE,QAAA,EACF,GAAG,SAAA,EACH,IAAI,UAAA,EACJ,OAAO,aAAA,EACP,eAAe,qBAAA,EACf,SAAS,eAAA,EACT,eAAe,qBAAA;QAPjB,iBAoBC;QApDD,OAAE,GAAW,EAAE,CAAC;QAsDhB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,yBAAkB,EAAE,CAAE,CAAC;QACnC,CAAC,CAAC;QAfA,IAAI,EAAE,EAAE;YACN,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;SACd;QACD,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAE3B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,0BAAkB,CAAC,SAAS,CAAC;IAC3C,CAAC;IAKH,qBAAC;AAAD,CAAC,AA1DD,IA0DC;AA1DY,wCAAc"}
@@ -3,6 +3,7 @@ import { PluginProvidedUiItemDescriptor } from '../base';
3
3
  export interface FloatingWindowInterface extends PluginProvidedUiItemDescriptor {
4
4
  }
5
5
  export interface FloatingWindowProps {
6
+ id?: string;
6
7
  top: number;
7
8
  left: number;
8
9
  movable: boolean;
@@ -14,7 +14,7 @@ export declare class GenericContentMainArea implements GenericContentInterface {
14
14
  *
15
15
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
16
16
  */
17
- constructor({ contentFunction, }: GenericContentMainAreaProps);
17
+ constructor({ id, contentFunction, }: GenericContentMainAreaProps);
18
18
  setItemId: (id: string) => void;
19
19
  }
20
20
  export declare class GenericContentSidekickArea implements GenericContentInterface {
@@ -41,6 +41,6 @@ export declare class GenericContentSidekickArea implements GenericContentInterfa
41
41
  *
42
42
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
43
43
  */
44
- constructor({ contentFunction, name, section, buttonIcon, open, }: GenericContentSidekickAreaProps);
44
+ constructor({ id, contentFunction, name, section, buttonIcon, open, }: GenericContentSidekickAreaProps);
45
45
  setItemId: (id: string) => void;
46
46
  }
@@ -14,12 +14,15 @@ var GenericContentMainArea = /** @class */ (function () {
14
14
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
15
15
  */
16
16
  function GenericContentMainArea(_a) {
17
- var contentFunction = _a.contentFunction;
17
+ var id = _a.id, contentFunction = _a.contentFunction;
18
18
  var _this = this;
19
19
  this.id = '';
20
20
  this.setItemId = function (id) {
21
21
  _this.id = id;
22
22
  };
23
+ if (id) {
24
+ this.id = id;
25
+ }
23
26
  this.contentFunction = contentFunction;
24
27
  this.type = enums_1.GenericContentType.MAIN_AREA;
25
28
  }
@@ -44,7 +47,7 @@ var GenericContentSidekickArea = /** @class */ (function () {
44
47
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
45
48
  */
46
49
  function GenericContentSidekickArea(_a) {
47
- var contentFunction = _a.contentFunction, name = _a.name, section = _a.section, buttonIcon = _a.buttonIcon, open = _a.open;
50
+ var id = _a.id, contentFunction = _a.contentFunction, name = _a.name, section = _a.section, buttonIcon = _a.buttonIcon, open = _a.open;
48
51
  var _this = this;
49
52
  this.id = '';
50
53
  this.name = '';
@@ -54,6 +57,9 @@ var GenericContentSidekickArea = /** @class */ (function () {
54
57
  this.setItemId = function (id) {
55
58
  _this.id = id;
56
59
  };
60
+ if (id) {
61
+ this.id = id;
62
+ }
57
63
  this.contentFunction = contentFunction;
58
64
  this.name = name;
59
65
  this.section = section;
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/generic-content-item/component.ts"],"names":[],"mappings":";;;AACA,iCAA6C;AAG7C,iCAAiC;AAEjC;IAOE;;;;;;;;OAQG;IACH,gCAAY,EAEkB;YAD5B,eAAe,qBAAA;QADjB,iBAKC;QApBD,OAAE,GAAW,EAAE,CAAC;QAsBhB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACf,CAAC,CAAC;QANA,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,0BAAkB,CAAC,SAAS,CAAC;IAC3C,CAAC;IAKH,6BAAC;AAAD,CAAC,AA1BD,IA0BC;AA1BY,wDAAsB;AA4BnC;IAeE;;;;;;;;;;;;;;;OAeG;IACH,oCAAY,EAEsB;YADhC,eAAe,qBAAA,EAAE,IAAI,UAAA,EAAE,OAAO,aAAA,EAAE,UAAU,gBAAA,EAAE,IAAI,UAAA;QADlD,iBASC;QAvCD,OAAE,GAAW,EAAE,CAAC;QAIhB,SAAI,GAAW,EAAE,CAAC;QAElB,YAAO,GAAW,EAAE,CAAC;QAErB,eAAU,GAAW,EAAE,CAAC;QAExB,SAAI,GAAY,KAAK,CAAC;QA+BtB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACf,CAAC,CAAC;QAVA,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,0BAAkB,CAAC,aAAa,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAKH,iCAAC;AAAD,CAAC,AA7CD,IA6CC;AA7CY,gEAA0B"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/generic-content-item/component.ts"],"names":[],"mappings":";;;AACA,iCAA6C;AAG7C,iCAAiC;AAEjC;IAOE;;;;;;;;OAQG;IACH,gCAAY,EAEkB;YAD5B,EAAE,QAAA,EAAE,eAAe,qBAAA;QADrB,iBAQC;QAvBD,OAAE,GAAW,EAAE,CAAC;QAyBhB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACf,CAAC,CAAC;QATA,IAAI,EAAE,EAAE;YACN,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;SACd;QACD,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,0BAAkB,CAAC,SAAS,CAAC;IAC3C,CAAC;IAKH,6BAAC;AAAD,CAAC,AA7BD,IA6BC;AA7BY,wDAAsB;AA+BnC;IAeE;;;;;;;;;;;;;;;OAeG;IACH,oCAAY,EAEsB;YADhC,EAAE,QAAA,EAAE,eAAe,qBAAA,EAAE,IAAI,UAAA,EAAE,OAAO,aAAA,EAAE,UAAU,gBAAA,EAAE,IAAI,UAAA;QADtD,iBAYC;QA1CD,OAAE,GAAW,EAAE,CAAC;QAIhB,SAAI,GAAW,EAAE,CAAC;QAElB,YAAO,GAAW,EAAE,CAAC;QAErB,eAAU,GAAW,EAAE,CAAC;QAExB,SAAI,GAAY,KAAK,CAAC;QAkCtB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACf,CAAC,CAAC;QAbA,IAAI,EAAE,EAAE;YACN,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;SACd;QACD,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,0BAAkB,CAAC,aAAa,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAKH,iCAAC;AAAD,CAAC,AAhDD,IAgDC;AAhDY,gEAA0B"}
@@ -3,9 +3,11 @@ import { PluginProvidedUiItemDescriptor } from '../base';
3
3
  export interface GenericContentInterface extends PluginProvidedUiItemDescriptor {
4
4
  }
5
5
  export interface GenericContentMainAreaProps {
6
+ id?: string;
6
7
  contentFunction: (element: HTMLElement) => ReactDOM.Root;
7
8
  }
8
9
  export interface GenericContentSidekickAreaProps {
10
+ id?: string;
9
11
  contentFunction: (element: HTMLElement) => ReactDOM.Root;
10
12
  name: string;
11
13
  section: string;
@@ -26,7 +26,7 @@ export declare class NavBarButton implements NavBarInterface {
26
26
  *
27
27
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
28
28
  */
29
- constructor({ label, icon, tooltip, disabled, onClick, position, hasSeparator, }: NavBarButtonProps);
29
+ constructor({ id, label, icon, tooltip, disabled, onClick, position, hasSeparator, }: NavBarButtonProps);
30
30
  setItemId: (id: string) => void;
31
31
  }
32
32
  export declare class NavBarInfo implements NavBarInterface {
@@ -47,6 +47,6 @@ export declare class NavBarInfo implements NavBarInterface {
47
47
  *
48
48
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
49
49
  */
50
- constructor({ label, position, hasSeparator, }: NavBarInfoProps);
50
+ constructor({ id, label, position, hasSeparator, }: NavBarInfoProps);
51
51
  setItemId: (id: string) => void;
52
52
  }
@@ -21,12 +21,15 @@ var NavBarButton = /** @class */ (function () {
21
21
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
22
22
  */
23
23
  function NavBarButton(_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.NavBarItemPosition.RIGHT : _g, _h = _a.hasSeparator, hasSeparator = _h === void 0 ? true : _h;
24
+ var id = _a.id, _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.NavBarItemPosition.RIGHT : _g, _h = _a.hasSeparator, hasSeparator = _h === void 0 ? true : _h;
25
25
  var _this = this;
26
26
  this.id = '';
27
27
  this.setItemId = function (id) {
28
28
  _this.id = "NavBarButton_".concat(id);
29
29
  };
30
+ if (id) {
31
+ this.id = id;
32
+ }
30
33
  this.label = label;
31
34
  this.icon = icon;
32
35
  this.tooltip = tooltip;
@@ -53,12 +56,15 @@ var NavBarInfo = /** @class */ (function () {
53
56
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
54
57
  */
55
58
  function NavBarInfo(_a) {
56
- var _b = _a.label, label = _b === void 0 ? '' : _b, _c = _a.position, position = _c === void 0 ? enums_1.NavBarItemPosition.RIGHT : _c, _d = _a.hasSeparator, hasSeparator = _d === void 0 ? true : _d;
59
+ var id = _a.id, _b = _a.label, label = _b === void 0 ? '' : _b, _c = _a.position, position = _c === void 0 ? enums_1.NavBarItemPosition.RIGHT : _c, _d = _a.hasSeparator, hasSeparator = _d === void 0 ? true : _d;
57
60
  var _this = this;
58
61
  this.id = '';
59
62
  this.setItemId = function (id) {
60
63
  _this.id = "NavBarInfo_".concat(id);
61
64
  };
65
+ if (id) {
66
+ this.id = id;
67
+ }
62
68
  this.label = label;
63
69
  this.type = enums_1.NavBarItemType.INFO;
64
70
  this.position = position;
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/nav-bar-item/component.ts"],"names":[],"mappings":";;;AAAA,iCAA6D;AAM7D,yBAAyB;AAEzB;IAmBE;;;;;;;;;;;;;;;OAeG;IACH,sBAAY,EAGQ;YAFlB,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,gBAAmC,EAAnC,QAAQ,mBAAG,0BAAkB,CAAC,KAAK,KAAA,EAAE,oBAAmB,EAAnB,YAAY,mBAAG,IAAI,KAAA;QAF1D,iBAYC;QA9CD,OAAE,GAAW,EAAE,CAAC;QAgDhB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,uBAAgB,EAAE,CAAE,CAAC;QACjC,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,IAAI,GAAG,sBAAc,CAAC,MAAM,CAAC;QAClC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAKH,mBAAC;AAAD,CAAC,AApDD,IAoDC;AApDY,oCAAY;AAsDzB;IAWE;;;;;;;;;;;OAWG;IACH,oBAAY,EAGM;YAFhB,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA,EAAE,gBAAmC,EAAnC,QAAQ,mBAAG,0BAAkB,CAAC,KAAK,KAAA,EAC/C,oBAAmB,EAAnB,YAAY,mBAAG,IAAI,KAAA;QAFrB,iBAQC;QA9BD,OAAE,GAAW,EAAE,CAAC;QAgChB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,qBAAc,EAAE,CAAE,CAAC;QAC/B,CAAC,CAAC;QARA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,sBAAc,CAAC,IAAI,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAKH,iBAAC;AAAD,CAAC,AApCD,IAoCC;AApCY,gCAAU"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/nav-bar-item/component.ts"],"names":[],"mappings":";;;AAAA,iCAA6D;AAM7D,yBAAyB;AAEzB;IAmBE;;;;;;;;;;;;;;;OAeG;IACH,sBAAY,EAGQ;YAFlB,EAAE,QAAA,EAAE,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,EAC5E,gBAAmC,EAAnC,QAAQ,mBAAG,0BAAkB,CAAC,KAAK,KAAA,EAAE,oBAAmB,EAAnB,YAAY,mBAAG,IAAI,KAAA;QAF1D,iBAeC;QAjDD,OAAE,GAAW,EAAE,CAAC;QAmDhB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,uBAAgB,EAAE,CAAE,CAAC;QACjC,CAAC,CAAC;QAfA,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,IAAI,GAAG,sBAAc,CAAC,MAAM,CAAC;QAClC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAKH,mBAAC;AAAD,CAAC,AAvDD,IAuDC;AAvDY,oCAAY;AAyDzB;IAWE;;;;;;;;;;;OAWG;IACH,oBAAY,EAGM;YAFhB,EAAE,QAAA,EAAE,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA,EAAE,gBAAmC,EAAnC,QAAQ,mBAAG,0BAAkB,CAAC,KAAK,KAAA,EACnD,oBAAmB,EAAnB,YAAY,mBAAG,IAAI,KAAA;QAFrB,iBAWC;QAjCD,OAAE,GAAW,EAAE,CAAC;QAmChB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,qBAAc,EAAE,CAAE,CAAC;QAC/B,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,sBAAc,CAAC,IAAI,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAKH,iBAAC;AAAD,CAAC,AAvCD,IAuCC;AAvCY,gCAAU"}