bigbluebutton-html-plugin-sdk 0.0.28 → 0.0.30

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 (88) hide show
  1. package/README.md +13 -0
  2. package/dist/cjs/core/api/BbbPluginSdk.js +9 -2
  3. package/dist/cjs/core/api/BbbPluginSdk.js.map +1 -1
  4. package/dist/cjs/core/api/types.d.ts +24 -2
  5. package/dist/cjs/core/auxiliary/join-url/getter.js.map +1 -0
  6. package/dist/cjs/core/auxiliary/join-url/types.js.map +1 -0
  7. package/dist/cjs/core/auxiliary/session-token/getter.js.map +1 -0
  8. package/dist/cjs/core/auxiliary/session-token/types.js.map +1 -0
  9. package/dist/cjs/core/enum.d.ts +1 -0
  10. package/dist/cjs/core/enum.js +1 -0
  11. package/dist/cjs/core/enum.js.map +1 -1
  12. package/dist/cjs/data-consumption/domain/chat/index.d.ts +1 -0
  13. package/dist/cjs/data-consumption/domain/chat/index.js +3 -0
  14. package/dist/cjs/data-consumption/domain/chat/index.js.map +1 -0
  15. package/dist/cjs/data-consumption/domain/chat/loaded-chat-messages/hooks.d.ts +2 -0
  16. package/dist/cjs/data-consumption/domain/chat/loaded-chat-messages/hooks.js +8 -0
  17. package/dist/cjs/data-consumption/domain/chat/loaded-chat-messages/hooks.js.map +1 -0
  18. package/dist/cjs/data-consumption/domain/chat/loaded-chat-messages/types.d.ts +8 -0
  19. package/dist/cjs/data-consumption/domain/chat/loaded-chat-messages/types.js +3 -0
  20. package/dist/cjs/data-consumption/domain/chat/loaded-chat-messages/types.js.map +1 -0
  21. package/dist/cjs/data-consumption/domain/settings/index.d.ts +1 -0
  22. package/dist/cjs/data-consumption/domain/settings/index.js +6 -0
  23. package/dist/cjs/data-consumption/domain/settings/index.js.map +1 -0
  24. package/dist/cjs/data-consumption/domain/settings/plugin-settings/hooks.d.ts +5 -0
  25. package/dist/cjs/data-consumption/domain/settings/plugin-settings/hooks.js +13 -0
  26. package/dist/cjs/data-consumption/domain/settings/plugin-settings/hooks.js.map +1 -0
  27. package/dist/cjs/data-consumption/domain/settings/plugin-settings/queries.d.ts +1 -0
  28. package/dist/cjs/data-consumption/domain/settings/plugin-settings/queries.js +5 -0
  29. package/dist/cjs/data-consumption/domain/settings/plugin-settings/queries.js.map +1 -0
  30. package/dist/cjs/data-consumption/domain/settings/plugin-settings/types.d.ts +10 -0
  31. package/dist/cjs/data-consumption/domain/settings/plugin-settings/types.js +3 -0
  32. package/dist/cjs/data-consumption/domain/settings/plugin-settings/types.js.map +1 -0
  33. package/dist/cjs/data-consumption/domain/settings/plugin-settings/utils.d.ts +7 -0
  34. package/dist/cjs/data-consumption/domain/settings/plugin-settings/utils.js +22 -0
  35. package/dist/cjs/data-consumption/domain/settings/plugin-settings/utils.js.map +1 -0
  36. package/dist/cjs/data-consumption/index.d.ts +1 -0
  37. package/dist/cjs/data-consumption/index.js +1 -0
  38. package/dist/cjs/data-consumption/index.js.map +1 -1
  39. package/dist/cjs/extensible-areas/base.d.ts +2 -1
  40. package/dist/cjs/extensible-areas/floating-window/component.d.ts +30 -0
  41. package/dist/cjs/extensible-areas/floating-window/component.js +41 -0
  42. package/dist/cjs/extensible-areas/floating-window/component.js.map +1 -0
  43. package/dist/cjs/extensible-areas/floating-window/enums.d.ts +3 -0
  44. package/dist/cjs/extensible-areas/floating-window/enums.js +9 -0
  45. package/dist/cjs/extensible-areas/floating-window/enums.js.map +1 -0
  46. package/dist/cjs/extensible-areas/floating-window/index.d.ts +2 -0
  47. package/dist/cjs/extensible-areas/floating-window/index.js +6 -0
  48. package/dist/cjs/extensible-areas/floating-window/index.js.map +1 -0
  49. package/dist/cjs/extensible-areas/floating-window/types.d.ts +12 -0
  50. package/dist/cjs/extensible-areas/floating-window/types.js +3 -0
  51. package/dist/cjs/extensible-areas/floating-window/types.js.map +1 -0
  52. package/dist/cjs/extensible-areas/index.d.ts +1 -0
  53. package/dist/cjs/extensible-areas/index.js +1 -0
  54. package/dist/cjs/extensible-areas/index.js.map +1 -1
  55. package/dist/cjs/ui-commands/chat/commands.d.ts +6 -0
  56. package/dist/cjs/ui-commands/chat/commands.js +8 -0
  57. package/dist/cjs/ui-commands/chat/commands.js.map +1 -0
  58. package/dist/cjs/ui-commands/chat/form/commands.d.ts +14 -0
  59. package/dist/cjs/ui-commands/chat/form/commands.js +24 -0
  60. package/dist/cjs/ui-commands/chat/form/commands.js.map +1 -0
  61. package/dist/cjs/ui-commands/chat/form/enums.d.ts +4 -0
  62. package/dist/cjs/ui-commands/chat/form/enums.js +9 -0
  63. package/dist/cjs/ui-commands/chat/form/enums.js.map +1 -0
  64. package/dist/cjs/ui-commands/chat/form/types.d.ts +7 -0
  65. package/dist/cjs/ui-commands/chat/form/types.js +3 -0
  66. package/dist/cjs/ui-commands/chat/form/types.js.map +1 -0
  67. package/dist/cjs/ui-commands/chat/types.d.ts +4 -0
  68. package/dist/cjs/ui-commands/chat/types.js +3 -0
  69. package/dist/cjs/ui-commands/chat/types.js.map +1 -0
  70. package/dist/cjs/ui-commands/commands.d.ts +8 -0
  71. package/dist/cjs/ui-commands/commands.js +8 -0
  72. package/dist/cjs/ui-commands/commands.js.map +1 -0
  73. package/dist/cjs/ui-commands/types.d.ts +7 -0
  74. package/dist/cjs/ui-commands/types.js +3 -0
  75. package/dist/cjs/ui-commands/types.js.map +1 -0
  76. package/package.json +1 -1
  77. package/dist/cjs/core/auxiliar/join-url/getter.js.map +0 -1
  78. package/dist/cjs/core/auxiliar/join-url/types.js.map +0 -1
  79. package/dist/cjs/core/auxiliar/session-token/getter.js.map +0 -1
  80. package/dist/cjs/core/auxiliar/session-token/types.js.map +0 -1
  81. /package/dist/cjs/core/{auxiliar → auxiliary}/join-url/getter.d.ts +0 -0
  82. /package/dist/cjs/core/{auxiliar → auxiliary}/join-url/getter.js +0 -0
  83. /package/dist/cjs/core/{auxiliar → auxiliary}/join-url/types.d.ts +0 -0
  84. /package/dist/cjs/core/{auxiliar → auxiliary}/join-url/types.js +0 -0
  85. /package/dist/cjs/core/{auxiliar → auxiliary}/session-token/getter.d.ts +0 -0
  86. /package/dist/cjs/core/{auxiliar → auxiliary}/session-token/getter.js +0 -0
  87. /package/dist/cjs/core/{auxiliar → auxiliary}/session-token/types.d.ts +0 -0
  88. /package/dist/cjs/core/{auxiliar → auxiliary}/session-token/types.js +0 -0
package/README.md CHANGED
@@ -26,6 +26,8 @@ SDK for developing BigBlueButton plugins, examples of implementations can be fou
26
26
 
27
27
  - User list item additional information (item, label)
28
28
 
29
+ - Floating window item (floatingWindow)
30
+
29
31
  ### Getters available through the API:
30
32
  - `getSessionToken`: returns the user session token located on the user's URL.
31
33
 
@@ -40,10 +42,21 @@ SDK for developing BigBlueButton plugins, examples of implementations can be fou
40
42
 
41
43
  - `useUsersBasicInfo` hook: provides information regarding all users (only crucial information: userId, name and role);
42
44
 
45
+ - `useLoadedChatMessages` hook: provides information regarding the loaded chat messages;
46
+
43
47
  - `useCustomSubscription` hook: with this hook, the developer can query pretty much anything graphql can provide. Note: Make sure that, on BBB version change, the custom subscriptions you make will work as expected.
44
48
 
49
+ - `usePluginSettings` hook: it provides all the specific settings regarding the current plugin it's been loaded from.
50
+
45
51
  ### Real time data exchange
46
52
  - `useDataChannel` hook: this will allow you to exchange information (Send and receive) amongst different users through the same plugin;
47
53
 
48
54
  ### Real time event reaction
49
55
  - `useUiEvent` hook: this will allow you to react to certain events fired from the BBB core (refer to the sample-ui-events-plugin in the samples directory for example on how to use some of the events);
56
+
57
+ ### Ui Commands to automatize tasks in BBB
58
+ `uiCommands` object: It basically contains all the possible commands available to the developer to interact with the core BBB UI, see the ones implemented down below:
59
+ - chat:
60
+ - form:
61
+ - open: this function will open the sidebar chat panel automatically;
62
+ - fill: this function will fill the form input field of the chat passed in the argument as {text: string}
@@ -1,15 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BbbPluginSdk = void 0;
4
+ var commands_1 = require("../../ui-commands/commands");
4
5
  var hooks_1 = require("../../data-channel/hooks");
5
6
  var hooks_2 = require("../../data-consumption/domain/presentations/current-presentation/hooks");
6
7
  var hooks_3 = require("../../data-consumption/domain/shared/custom-subscription/hooks");
7
8
  var hooks_4 = require("../../data-consumption/domain/users/loaded-user-list/hooks");
8
9
  var hooks_5 = require("../../data-consumption/domain/users/current-user/hooks");
9
10
  var hooks_6 = require("../../data-consumption/domain/users/users-basic-info/hooks");
10
- var getter_1 = require("../auxiliar/session-token/getter");
11
- var getter_2 = require("../auxiliar/join-url/getter");
11
+ var getter_1 = require("../auxiliary/session-token/getter");
12
+ var getter_2 = require("../auxiliary/join-url/getter");
13
+ var settings_1 = require("../../data-consumption/domain/settings");
12
14
  var hooks_7 = require("../../ui-events/hooks");
15
+ var hooks_8 = require("../../data-consumption/domain/chat/loaded-chat-messages/hooks");
13
16
  /**
14
17
  * Class responsible for either initialize or get the PluginApi
15
18
  *
@@ -38,10 +41,13 @@ var BbbPluginSdk = /** @class */ (function () {
38
41
  pluginApi.useLoadedUserList = (function () { return (0, hooks_4.useLoadedUserList)(); });
39
42
  pluginApi.useCurrentUser = (function () { return (0, hooks_5.useCurrentUser)(); });
40
43
  pluginApi.useUsersBasicInfo = (function () { return (0, hooks_6.useUsersBasicInfo)(); });
44
+ pluginApi.useLoadedChatMessages = (function () { return (0, hooks_8.useLoadedChatMessages)(); });
41
45
  pluginApi.useUiEvent = (function (eventName, callback) { return (0, hooks_7.useUiEvent)(eventName, callback); });
46
+ pluginApi.uiCommands = commands_1.uiCommands;
42
47
  var pluginName = pluginApi === null || pluginApi === void 0 ? void 0 : pluginApi.pluginName;
43
48
  if (pluginName) {
44
49
  pluginApi.useDataChannel = (function (channelName) { return (0, hooks_1.useDataChannel)(channelName, pluginName, window.bbb_plugins[uuid]); });
50
+ pluginApi.usePluginSettings = function () { return (0, settings_1.usePluginSettings)(pluginName); };
45
51
  }
46
52
  else {
47
53
  throw new Error('Plugin name not set');
@@ -76,6 +82,7 @@ var BbbPluginSdk = /** @class */ (function () {
76
82
  setCameraSettingsDropdownItems: function () { },
77
83
  setUserCameraDropdownItems: function () { },
78
84
  setUserListItemAdditionalInformation: function () { },
85
+ setFloatingWindows: function () { },
79
86
  mapOfDispatchers: {
80
87
  '': function () { },
81
88
  },
@@ -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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"}
@@ -1,3 +1,4 @@
1
+ import { UiCommands } from 'src/ui-commands/types';
1
2
  import { ActionButtonDropdownItem } from '../../extensible-areas/action-button-dropdown-item/types';
2
3
  import { ActionsBarItem } from '../../extensible-areas/actions-bar-item/types';
3
4
  import { AudioSettingsDropdownItem } from '../../extensible-areas/audio-settings-dropdown-item/types';
@@ -13,11 +14,14 @@ import { UseCurrentPresentationFunction } from '../../data-consumption/domain/pr
13
14
  import { UseLoadedUserListFunction } from '../../data-consumption/domain/users/loaded-user-list/types';
14
15
  import { UseCurrentUserFunction } from '../../data-consumption/domain/users/current-user/types';
15
16
  import { UseUsersBasicInfoFunction } from '../../data-consumption/domain/users/users-basic-info/types';
17
+ import { SetFloatingWindows } from '../../extensible-areas/floating-window/types';
16
18
  import { UseCustomSubscriptionFunction } from '../../data-consumption/domain/shared/custom-subscription/types';
17
19
  import { MapOfDispatchers, UseDataChannelFunctionFromPluginApi } from '../../data-channel/types';
18
- import { GetSessionTokenFunction } from '../auxiliar/session-token/types';
19
- import { GetJoinUrlFunction } from '../auxiliar/join-url/types';
20
+ import { GetSessionTokenFunction } from '../auxiliary/session-token/types';
21
+ import { GetJoinUrlFunction } from '../auxiliary/join-url/types';
22
+ import { UsePluginSettingsFunction } from '../../data-consumption/domain/settings/plugin-settings/types';
20
23
  import { UseUiEventFunction } from '../../ui-events/types';
24
+ import { UseLoadedChatMessagesFunction } from '../../data-consumption/domain/chat/loaded-chat-messages/types';
21
25
  export type SetPresentationToolbarItems = (presentationToolbarItem: PresentationToolbarItem[]) => void;
22
26
  export type SetUserListDropdownItems = (userListDropdownItem: UserListDropdownItem[]) => void;
23
27
  export type SetActionButtonDropdownItems = (actionButtonDropdownItem: ActionButtonDropdownItem[]) => void;
@@ -45,6 +49,7 @@ export interface PluginApi {
45
49
  setCameraSettingsDropdownItems: SetCameraSettingsDropdownItems;
46
50
  setUserCameraDropdownItems: SetUserCameraDropdownItems;
47
51
  setUserListItemAdditionalInformation: SetUserListItemAdditionalInformation;
52
+ setFloatingWindows: SetFloatingWindows;
48
53
  /**
49
54
  * Returns an object containing the data on the current presentation being displayed
50
55
  * in the presentation area, and its current page.
@@ -76,6 +81,22 @@ export interface PluginApi {
76
81
  *
77
82
  */
78
83
  useUsersBasicInfo?: UseUsersBasicInfoFunction;
84
+ /**
85
+ * Returns an object containing brief data on the messages already loaded in the chat.
86
+ *
87
+ * @returns `GraphqlResponseWrapper` with the LoadedChatMessages.
88
+ *
89
+ */
90
+ useLoadedChatMessages?: UseLoadedChatMessagesFunction;
91
+ /**
92
+ * Returns an object containing the settings for the current plugin (with pluginName
93
+ * defined in the pluginApi). It needs to be explicitly written in the client settings
94
+ * within the plugin's directive
95
+ *
96
+ * @returns `GraphqlResponseWrapper` with the plugin specific settings.
97
+ *
98
+ */
99
+ usePluginSettings?: UsePluginSettingsFunction;
79
100
  /**
80
101
  * Returns an object containing the data on the current presentation being displayed
81
102
  * in the presentation area, and its current page.
@@ -108,6 +129,7 @@ export interface PluginApi {
108
129
  */
109
130
  useDataChannel?: UseDataChannelFunctionFromPluginApi;
110
131
  mapOfDispatchers: MapOfDispatchers;
132
+ uiCommands?: UiCommands;
111
133
  getSessionToken?: GetSessionTokenFunction;
112
134
  getJoinUrl?: GetJoinUrlFunction;
113
135
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getter.js","sourceRoot":"","sources":["../../../../../src/core/auxiliary/join-url/getter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0D;AAE1D,SAAS,qBAAqB,CAAC,UAAmC;IAChE,IAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;SAC3C,GAAG,CAAC,UAAC,EAAY;YAAX,GAAG,QAAA,EAAE,KAAK,QAAA;QAAM,OAAA,UAAG,kBAAkB,CAAC,GAAG,CAAC,cAAI,kBAAkB,CAAC,KAAK,CAAC,CAAE;IAAzD,CAAyD,CAAC;SAChF,IAAI,CAAC,GAAG,CAAC,CAAC;IACb,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAsB,UAAU,CAAC,UAAmC;;;;;;oBAC5D,aAAa,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;oBAClD,GAAG,GAAG,UAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,wDAA8C,IAAA,wBAAe,GAAE,cAAI,aAAa,CAAE,CAAC;oBACzG,qBAAM,KAAK,CAAC,GAAG,CAAC,EAAA;;oBAA3B,QAAQ,GAAG,SAAgB;oBACb,qBAAM,QAAQ,CAAC,IAAI,EAAE,EAAA;;oBAAnC,WAAW,GAAG,SAAqB;oBACzC,sBAAO,WAAW,CAAC,QAAQ,CAAC,GAAa,EAAC;;;;CAC3C;AAND,gCAMC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/core/auxiliary/join-url/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getter.js","sourceRoot":"","sources":["../../../../../src/core/auxiliary/session-token/getter.ts"],"names":[],"mappings":";;;AAAA,SAAgB,eAAe;IAC7B,IAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3D,OAAO,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,SAAS,CAAC;AACjD,CAAC;AAHD,0CAGC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/core/auxiliary/session-token/types.ts"],"names":[],"mappings":""}
@@ -7,6 +7,7 @@ export declare enum Hooks {
7
7
  CURRENT_PRESENTATION = "Hooks::UseCurrentPresentation",
8
8
  LOADED_USER_LIST = "Hooks::UseLoadedUserList",
9
9
  CURRENT_USER = "Hooks::UseCurrentUser",
10
+ LOADED_CHAT_MESSAGES = "Hooks::UseLoadedChatMessages",
10
11
  CUSTOM_SUBSCRIPTION = "Hooks::CustomSubscription",
11
12
  DATA_CHANNEL = "Hooks::DataChannel"
12
13
  }
@@ -12,6 +12,7 @@ var Hooks;
12
12
  Hooks["CURRENT_PRESENTATION"] = "Hooks::UseCurrentPresentation";
13
13
  Hooks["LOADED_USER_LIST"] = "Hooks::UseLoadedUserList";
14
14
  Hooks["CURRENT_USER"] = "Hooks::UseCurrentUser";
15
+ Hooks["LOADED_CHAT_MESSAGES"] = "Hooks::UseLoadedChatMessages";
15
16
  Hooks["CUSTOM_SUBSCRIPTION"] = "Hooks::CustomSubscription";
16
17
  Hooks["DATA_CHANNEL"] = "Hooks::DataChannel";
17
18
  })(Hooks || (exports.Hooks = Hooks = {}));
@@ -1 +1 @@
1
- {"version":3,"file":"enum.js","sourceRoot":"","sources":["../../../src/core/enum.ts"],"names":[],"mappings":";;;AAAA,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,2CAA6B,CAAA;IAC7B,sDAAwC,CAAA;IACxC,4DAA8C,CAAA;AAChD,CAAC,EAJW,UAAU,0BAAV,UAAU,QAIrB;AAED,IAAY,KAMX;AAND,WAAY,KAAK;IACf,+DAAsD,CAAA;IACtD,sDAA6C,CAAA;IAC7C,+CAAsC,CAAA;IACtC,0DAAiD,CAAA;IACjD,4CAAmC,CAAA;AACrC,CAAC,EANW,KAAK,qBAAL,KAAK,QAMhB"}
1
+ {"version":3,"file":"enum.js","sourceRoot":"","sources":["../../../src/core/enum.ts"],"names":[],"mappings":";;;AAAA,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,2CAA6B,CAAA;IAC7B,sDAAwC,CAAA;IACxC,4DAA8C,CAAA;AAChD,CAAC,EAJW,UAAU,0BAAV,UAAU,QAIrB;AAED,IAAY,KAOX;AAPD,WAAY,KAAK;IACf,+DAAsD,CAAA;IACtD,sDAA6C,CAAA;IAC7C,+CAAsC,CAAA;IACtC,8DAAqD,CAAA;IACrD,0DAAiD,CAAA;IACjD,4CAAmC,CAAA;AACrC,CAAC,EAPW,KAAK,qBAAL,KAAK,QAOhB"}
@@ -0,0 +1 @@
1
+ export { LoadedChatMessage } from './loaded-chat-messages/types';
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/data-consumption/domain/chat/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import { LoadedChatMessage } from './types';
2
+ export declare const useLoadedChatMessages: () => import("../../../..").GraphqlResponseWrapper<LoadedChatMessage[]>;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useLoadedChatMessages = void 0;
4
+ var enum_1 = require("../../../../core/enum");
5
+ var hookCreator_1 = require("../../../factory/hookCreator");
6
+ var useLoadedChatMessages = function () { return (0, hookCreator_1.createDataConsumptionHook)(enum_1.Hooks.LOADED_CHAT_MESSAGES); };
7
+ exports.useLoadedChatMessages = useLoadedChatMessages;
8
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../../../../src/data-consumption/domain/chat/loaded-chat-messages/hooks.ts"],"names":[],"mappings":";;;AAAA,8CAA8C;AAC9C,4DAAyE;AAGlE,IAAM,qBAAqB,GAAG,cAAM,OAAA,IAAA,uCAAyB,EAGlE,YAAK,CAAC,oBAAoB,CAC3B,EAJ0C,CAI1C,CAAC;AAJW,QAAA,qBAAqB,yBAIhC"}
@@ -0,0 +1,8 @@
1
+ import { GraphqlResponseWrapper } from '../../../../core';
2
+ export interface LoadedChatMessage {
3
+ createdAt: string;
4
+ message: string;
5
+ messageId: string;
6
+ senderUserId: string;
7
+ }
8
+ export type UseLoadedChatMessagesFunction = () => GraphqlResponseWrapper<LoadedChatMessage[]>;
@@ -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/data-consumption/domain/chat/loaded-chat-messages/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export { usePluginSettings } from './plugin-settings/hooks';
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.usePluginSettings = void 0;
4
+ var hooks_1 = require("./plugin-settings/hooks");
5
+ Object.defineProperty(exports, "usePluginSettings", { enumerable: true, get: function () { return hooks_1.usePluginSettings; } });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/data-consumption/domain/settings/index.ts"],"names":[],"mappings":";;;AAAA,iDAA4D;AAAnD,0GAAA,iBAAiB,OAAA"}
@@ -0,0 +1,5 @@
1
+ export declare const usePluginSettings: (pluginName: string) => {
2
+ data: import("./types").PluginSettingsData | undefined;
3
+ loading: boolean;
4
+ error?: import("@apollo/client").ApolloError | undefined;
5
+ };
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.usePluginSettings = void 0;
4
+ var hooks_1 = require("../../shared/custom-subscription/hooks");
5
+ var queries_1 = require("./queries");
6
+ var utils_1 = require("./utils");
7
+ var usePluginSettings = function (pluginName) { return (0, utils_1.filterPluginSpecificSettings)((0, hooks_1.useCustomSubscription)(queries_1.PLUGIN_SETTINGS_QUERY, {
8
+ variables: {
9
+ pluginName: pluginName,
10
+ },
11
+ })); };
12
+ exports.usePluginSettings = usePluginSettings;
13
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../../../../src/data-consumption/domain/settings/plugin-settings/hooks.ts"],"names":[],"mappings":";;;AAAA,gEAA+E;AAC/E,qCAAkD;AAElD,iCAAuD;AAEhD,IAAM,iBAAiB,GAAG,UAC/B,UAAkB,IACf,OAAA,IAAA,oCAA4B,EAAC,IAAA,6BAAqB,EACT,+BAAqB,EAAE;IAC/D,SAAS,EAAE;QACT,UAAU,YAAA;KACX;CACF,CAAC,CAAC,EALF,CAKE,CAAC;AAPK,QAAA,iBAAiB,qBAOtB"}
@@ -0,0 +1 @@
1
+ export declare const PLUGIN_SETTINGS_QUERY = "\nsubscription pluginSettingsSubscription ($pluginName: String!){\n meeting_clientPluginSettings(where: {name: {_eq: $pluginName}}) {\n settings\n }\n}\n";
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PLUGIN_SETTINGS_QUERY = void 0;
4
+ exports.PLUGIN_SETTINGS_QUERY = "\nsubscription pluginSettingsSubscription ($pluginName: String!){\n meeting_clientPluginSettings(where: {name: {_eq: $pluginName}}) {\n settings\n }\n}\n";
5
+ //# sourceMappingURL=queries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queries.js","sourceRoot":"","sources":["../../../../../../src/data-consumption/domain/settings/plugin-settings/queries.ts"],"names":[],"mappings":";;;AAAa,QAAA,qBAAqB,GAAG,gKAMpC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { GraphqlResponseWrapper } from '../../../../core';
2
+ export interface PluginSettingsData {
3
+ [key: string]: object;
4
+ }
5
+ export interface PluginSettingsResponseFromGraphqlWrapper {
6
+ meeting_clientPluginSettings: {
7
+ settings: PluginSettingsData;
8
+ }[];
9
+ }
10
+ export type UsePluginSettingsFunction = () => GraphqlResponseWrapper<PluginSettingsData>;
@@ -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/data-consumption/domain/settings/plugin-settings/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import { GraphqlResponseWrapper } from '../../../../core';
2
+ import { PluginSettingsResponseFromGraphqlWrapper } from './types';
3
+ export declare const filterPluginSpecificSettings: (completeSettings: GraphqlResponseWrapper<PluginSettingsResponseFromGraphqlWrapper>) => {
4
+ data: import("./types").PluginSettingsData | undefined;
5
+ loading: boolean;
6
+ error?: import("@apollo/client").ApolloError | undefined;
7
+ };
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.filterPluginSpecificSettings = void 0;
15
+ var filterPluginSpecificSettings = function (completeSettings) {
16
+ var _a;
17
+ var pluginSettings = (_a = completeSettings
18
+ .data) === null || _a === void 0 ? void 0 : _a.meeting_clientPluginSettings[0].settings;
19
+ return __assign(__assign({}, completeSettings), { data: pluginSettings });
20
+ };
21
+ exports.filterPluginSpecificSettings = filterPluginSpecificSettings;
22
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../../src/data-consumption/domain/settings/plugin-settings/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAGO,IAAM,4BAA4B,GAAG,UAC1C,gBAAkF;;IAElF,IAAM,cAAc,GAAG,MAAA,gBAAgB;SACpC,IAAI,0CAAE,4BAA4B,CAAC,CAAC,EAAE,QAAQ,CAAC;IAClD,6BACK,gBAAgB,KACnB,IAAI,EAAE,cAAc,IACpB;AACJ,CAAC,CAAC;AATW,QAAA,4BAA4B,gCASvC"}
@@ -1,3 +1,4 @@
1
1
  export * from './domain/presentations';
2
+ export * from './domain/chat';
2
3
  export * from './domain/users';
3
4
  export * from './domain/shared';
@@ -15,6 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./domain/presentations"), exports);
18
+ __exportStar(require("./domain/chat"), exports);
18
19
  __exportStar(require("./domain/users"), exports);
19
20
  __exportStar(require("./domain/shared"), exports);
20
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/data-consumption/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,iDAA+B;AAC/B,kDAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/data-consumption/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,gDAA8B;AAC9B,iDAA+B;AAC/B,kDAAgC"}
@@ -2,6 +2,7 @@ import { ActionButtonDropdownItemType } from './action-button-dropdown-item/enum
2
2
  import { ActionsBarItemType } from './actions-bar-item/enums';
3
3
  import { AudioSettingsDropdownItemType } from './audio-settings-dropdown-item/enums';
4
4
  import { CameraSettingsDropdownItemType } from './camera-settings-dropdown-item/enums';
5
+ import { FloatingWindowType } from './floating-window/enums';
5
6
  import { NavBarItemType } from './nav-bar-item/enums';
6
7
  import { OptionsDropdownItemType } from './options-dropdown-item/enums';
7
8
  import { PresentationDropdownItemType } from './presentation-dropdown-item/enums';
@@ -9,7 +10,7 @@ import { PresentationToolbarItemType } from './presentation-toolbar-item/enums';
9
10
  import { UserCameraDropdownItemType } from './user-camera-dropdown-item/enums';
10
11
  import { UserListDropdownItemType } from './user-list-dropdown-item/enums';
11
12
  import { UserListItemAdditionalInformationType } from './user-list-item-additional-information/enums';
12
- type PluginProvidedUiItemType = PresentationToolbarItemType | UserListDropdownItemType | ActionButtonDropdownItemType | ActionsBarItemType | AudioSettingsDropdownItemType | PresentationDropdownItemType | NavBarItemType | OptionsDropdownItemType | CameraSettingsDropdownItemType | UserCameraDropdownItemType | UserListItemAdditionalInformationType;
13
+ type PluginProvidedUiItemType = PresentationToolbarItemType | UserListDropdownItemType | ActionButtonDropdownItemType | ActionsBarItemType | AudioSettingsDropdownItemType | PresentationDropdownItemType | NavBarItemType | OptionsDropdownItemType | CameraSettingsDropdownItemType | UserCameraDropdownItemType | UserListItemAdditionalInformationType | FloatingWindowType;
13
14
  export interface PluginProvidedUiItemDescriptor {
14
15
  /** Defined by BigBlueButton Plugin Engine. */
15
16
  id: string;
@@ -0,0 +1,30 @@
1
+ import { FloatingWindowType } from './enums';
2
+ import { FloatingWindowInterface, FloatingWindowProps } from './types';
3
+ export declare class FloatingWindow implements FloatingWindowInterface {
4
+ id: string;
5
+ type: FloatingWindowType;
6
+ top: number;
7
+ left: number;
8
+ movable: boolean;
9
+ backgroundColor: string;
10
+ boxShadow: string;
11
+ contentFunction: (element: HTMLElement) => void;
12
+ /**
13
+ * Returns object to be used in the setter for the Navigation Bar. In this case,
14
+ * a button.
15
+ *
16
+ * @param top - position in which the the top left corner of the floating window is relative
17
+ * to the top of the rendered window.
18
+ * @param left - position in which the the top left corner of the floating window is relative
19
+ * to the left of the rendered window.
20
+ * @param movable - tells whether the floating window is movable or static.
21
+ * @param backgroundColor - background color of the floating window.
22
+ * @param boxShadow - box shadow to apply to the floating window
23
+ * @param contentFunction - function that gives the html element to render the content of
24
+ * the floating window
25
+ *
26
+ * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
27
+ */
28
+ constructor({ top, left, movable, backgroundColor, boxShadow, contentFunction, }: FloatingWindowProps);
29
+ setItemId: (id: string) => void;
30
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FloatingWindow = void 0;
4
+ var enums_1 = require("./enums");
5
+ // FloatingWindow Extensible Area
6
+ var FloatingWindow = /** @class */ (function () {
7
+ /**
8
+ * Returns object to be used in the setter for the Navigation Bar. In this case,
9
+ * a button.
10
+ *
11
+ * @param top - position in which the the top left corner of the floating window is relative
12
+ * to the top of the rendered window.
13
+ * @param left - position in which the the top left corner of the floating window is relative
14
+ * to the left of the rendered window.
15
+ * @param movable - tells whether the floating window is movable or static.
16
+ * @param backgroundColor - background color of the floating window.
17
+ * @param boxShadow - box shadow to apply to the floating window
18
+ * @param contentFunction - function that gives the html element to render the content of
19
+ * the floating window
20
+ *
21
+ * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
22
+ */
23
+ function FloatingWindow(_a) {
24
+ var top = _a.top, left = _a.left, movable = _a.movable, backgroundColor = _a.backgroundColor, boxShadow = _a.boxShadow, contentFunction = _a.contentFunction;
25
+ var _this = this;
26
+ this.id = '';
27
+ this.setItemId = function (id) {
28
+ _this.id = "FloatingWindow_".concat(id);
29
+ };
30
+ this.top = top;
31
+ this.left = left;
32
+ this.movable = movable;
33
+ this.backgroundColor = backgroundColor;
34
+ this.boxShadow = boxShadow;
35
+ this.contentFunction = contentFunction;
36
+ this.type = enums_1.FloatingWindowType.CONTAINER;
37
+ }
38
+ return FloatingWindow;
39
+ }());
40
+ exports.FloatingWindow = FloatingWindow;
41
+ //# sourceMappingURL=component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/floating-window/component.ts"],"names":[],"mappings":";;;AAAA,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"}
@@ -0,0 +1,3 @@
1
+ export declare enum FloatingWindowType {
2
+ CONTAINER = "FLOATING_WINDOW_CONTAINER"
3
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FloatingWindowType = void 0;
4
+ // Floating window types:
5
+ var FloatingWindowType;
6
+ (function (FloatingWindowType) {
7
+ FloatingWindowType["CONTAINER"] = "FLOATING_WINDOW_CONTAINER";
8
+ })(FloatingWindowType || (exports.FloatingWindowType = FloatingWindowType = {}));
9
+ //# sourceMappingURL=enums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../src/extensible-areas/floating-window/enums.ts"],"names":[],"mappings":";;;AAAA,yBAAyB;AACzB,IAAY,kBAEX;AAFD,WAAY,kBAAkB;IAC5B,6DAAuC,CAAA;AACzC,CAAC,EAFW,kBAAkB,kCAAlB,kBAAkB,QAE7B"}
@@ -0,0 +1,2 @@
1
+ export { FloatingWindow, } from './component';
2
+ export { FloatingWindowInterface, } from './types';
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FloatingWindow = void 0;
4
+ var component_1 = require("./component");
5
+ Object.defineProperty(exports, "FloatingWindow", { enumerable: true, get: function () { return component_1.FloatingWindow; } });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/extensible-areas/floating-window/index.ts"],"names":[],"mappings":";;;AAAA,yCAEqB;AADnB,2GAAA,cAAc,OAAA"}
@@ -0,0 +1,12 @@
1
+ import { PluginProvidedUiItemDescriptor } from '../base';
2
+ export interface FloatingWindowInterface extends PluginProvidedUiItemDescriptor {
3
+ }
4
+ export interface FloatingWindowProps {
5
+ top: number;
6
+ left: number;
7
+ movable: boolean;
8
+ backgroundColor: string;
9
+ boxShadow: string;
10
+ contentFunction: (element: HTMLElement) => void;
11
+ }
12
+ export type SetFloatingWindows = (FloatingWindows: FloatingWindowInterface[]) => 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/extensible-areas/floating-window/types.ts"],"names":[],"mappings":""}
@@ -9,3 +9,4 @@ export * from './options-dropdown-item';
9
9
  export * from './camera-settings-dropdown-item';
10
10
  export * from './user-camera-dropdown-item';
11
11
  export * from './user-list-item-additional-information';
12
+ export * from './floating-window';
@@ -25,4 +25,5 @@ __exportStar(require("./options-dropdown-item"), exports);
25
25
  __exportStar(require("./camera-settings-dropdown-item"), exports);
26
26
  __exportStar(require("./user-camera-dropdown-item"), exports);
27
27
  __exportStar(require("./user-list-item-additional-information"), exports);
28
+ __exportStar(require("./floating-window"), exports);
28
29
  //# sourceMappingURL=index.js.map
@@ -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,0DAAwC;AACxC,kEAAgD;AAChD,8DAA4C;AAC5C,0EAAwD"}
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,0DAAwC;AACxC,kEAAgD;AAChD,8DAA4C;AAC5C,0EAAwD;AACxD,oDAAkC"}
@@ -0,0 +1,6 @@
1
+ export declare const chat: {
2
+ form: {
3
+ open: () => void;
4
+ fill: (fillChatFormCommandArguments: import("./form/types").FillChatFormCommandArguments) => void;
5
+ };
6
+ };
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.chat = void 0;
4
+ var commands_1 = require("./form/commands");
5
+ exports.chat = {
6
+ form: commands_1.form,
7
+ };
8
+ //# sourceMappingURL=commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../../src/ui-commands/chat/commands.ts"],"names":[],"mappings":";;;AAAA,4CAAuC;AAE1B,QAAA,IAAI,GAAG;IAClB,IAAI,iBAAA;CACL,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { FillChatFormCommandArguments } from './types';
2
+ export declare const form: {
3
+ /**
4
+ * Opens the public chat panel automatically.
5
+ */
6
+ open: () => void;
7
+ /**
8
+ * Fills in the chat input when called.
9
+ *
10
+ * @param FillChatFormCommandArguments the text with which the method will fill the chat input.
11
+ * Refer to {@link FillChatFormCommandArguments} to understand the argument structure.
12
+ */
13
+ fill: (fillChatFormCommandArguments: FillChatFormCommandArguments) => void;
14
+ };
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.form = void 0;
4
+ var enums_1 = require("./enums");
5
+ exports.form = {
6
+ /**
7
+ * Opens the public chat panel automatically.
8
+ */
9
+ open: function () {
10
+ window.dispatchEvent(new Event(enums_1.ChatFormCommandsEnum.OPEN));
11
+ },
12
+ /**
13
+ * Fills in the chat input when called.
14
+ *
15
+ * @param FillChatFormCommandArguments the text with which the method will fill the chat input.
16
+ * Refer to {@link FillChatFormCommandArguments} to understand the argument structure.
17
+ */
18
+ fill: function (fillChatFormCommandArguments) {
19
+ window.dispatchEvent(new CustomEvent(enums_1.ChatFormCommandsEnum.FILL, {
20
+ detail: fillChatFormCommandArguments,
21
+ }));
22
+ },
23
+ };
24
+ //# sourceMappingURL=commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../../../src/ui-commands/chat/form/commands.ts"],"names":[],"mappings":";;;AAAA,iCAA+C;AAGlC,QAAA,IAAI,GAAG;IAClB;;OAEG;IACH,IAAI,EAAE;QACJ,MAAM,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,4BAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;OAKG;IACH,IAAI,EAAE,UAAC,4BAA0D;QAC/D,MAAM,CAAC,aAAa,CAClB,IAAI,WAAW,CAEb,4BAAoB,CAAC,IAAI,EAAE;YAC3B,MAAM,EAAE,4BAA4B;SACrC,CAAC,CACH,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare enum ChatFormCommandsEnum {
2
+ OPEN = "OPEN_CHAT_FORM_COMMAND",
3
+ FILL = "FILL_CHAT_FORM_COMMAND"
4
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ChatFormCommandsEnum = void 0;
4
+ var ChatFormCommandsEnum;
5
+ (function (ChatFormCommandsEnum) {
6
+ ChatFormCommandsEnum["OPEN"] = "OPEN_CHAT_FORM_COMMAND";
7
+ ChatFormCommandsEnum["FILL"] = "FILL_CHAT_FORM_COMMAND";
8
+ })(ChatFormCommandsEnum || (exports.ChatFormCommandsEnum = ChatFormCommandsEnum = {}));
9
+ //# sourceMappingURL=enums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../../src/ui-commands/chat/form/enums.ts"],"names":[],"mappings":";;;AAAA,IAAY,oBAGX;AAHD,WAAY,oBAAoB;IAC9B,uDAA+B,CAAA;IAC/B,uDAA+B,CAAA;AACjC,CAAC,EAHW,oBAAoB,oCAApB,oBAAoB,QAG/B"}
@@ -0,0 +1,7 @@
1
+ export interface FillChatFormCommandArguments {
2
+ text: string;
3
+ }
4
+ export interface UiCommandsChatFormObject {
5
+ open: () => void;
6
+ fill: (FillChatFormCommandArguments: FillChatFormCommandArguments) => void;
7
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/ui-commands/chat/form/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import { UiCommandsChatFormObject } from './form/types';
2
+ export interface UiCommandsChatObject {
3
+ form: UiCommandsChatFormObject;
4
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/ui-commands/chat/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,8 @@
1
+ export declare const uiCommands: {
2
+ chat: {
3
+ form: {
4
+ open: () => void;
5
+ fill: (fillChatFormCommandArguments: import("./chat/form/types").FillChatFormCommandArguments) => void;
6
+ };
7
+ };
8
+ };
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.uiCommands = void 0;
4
+ var commands_1 = require("./chat/commands");
5
+ exports.uiCommands = {
6
+ chat: commands_1.chat,
7
+ };
8
+ //# sourceMappingURL=commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/ui-commands/commands.ts"],"names":[],"mappings":";;;AAAA,4CAAuC;AAE1B,QAAA,UAAU,GAAG;IACxB,IAAI,iBAAA;CACL,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { UiCommandsChatObject } from './chat/types';
2
+ export interface UiCommandsEventWrapper<T> extends Event {
3
+ detail: T;
4
+ }
5
+ export interface UiCommands {
6
+ chat: UiCommandsChatObject;
7
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/ui-commands/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.28",
3
+ "version": "0.0.30",
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",
@@ -1 +0,0 @@
1
- {"version":3,"file":"getter.js","sourceRoot":"","sources":["../../../../../src/core/auxiliar/join-url/getter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0D;AAE1D,SAAS,qBAAqB,CAAC,UAAmC;IAChE,IAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;SAC3C,GAAG,CAAC,UAAC,EAAY;YAAX,GAAG,QAAA,EAAE,KAAK,QAAA;QAAM,OAAA,UAAG,kBAAkB,CAAC,GAAG,CAAC,cAAI,kBAAkB,CAAC,KAAK,CAAC,CAAE;IAAzD,CAAyD,CAAC;SAChF,IAAI,CAAC,GAAG,CAAC,CAAC;IACb,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAsB,UAAU,CAAC,UAAmC;;;;;;oBAC5D,aAAa,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;oBAClD,GAAG,GAAG,UAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,wDAA8C,IAAA,wBAAe,GAAE,cAAI,aAAa,CAAE,CAAC;oBACzG,qBAAM,KAAK,CAAC,GAAG,CAAC,EAAA;;oBAA3B,QAAQ,GAAG,SAAgB;oBACb,qBAAM,QAAQ,CAAC,IAAI,EAAE,EAAA;;oBAAnC,WAAW,GAAG,SAAqB;oBACzC,sBAAO,WAAW,CAAC,QAAQ,CAAC,GAAa,EAAC;;;;CAC3C;AAND,gCAMC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/core/auxiliar/join-url/types.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"getter.js","sourceRoot":"","sources":["../../../../../src/core/auxiliar/session-token/getter.ts"],"names":[],"mappings":";;;AAAA,SAAgB,eAAe;IAC7B,IAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3D,OAAO,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,SAAS,CAAC;AACjD,CAAC;AAHD,0CAGC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/core/auxiliar/session-token/types.ts"],"names":[],"mappings":""}