bigbluebutton-html-plugin-sdk 0.0.95 → 0.0.96

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 (82) hide show
  1. package/README.md +1045 -21
  2. package/dist/cjs/core/api/BbbPluginSdk.js +13 -6
  3. package/dist/cjs/core/api/BbbPluginSdk.js.map +1 -1
  4. package/dist/cjs/core/api/types.d.ts +48 -1
  5. package/dist/cjs/data-consumption/domain/meeting/index.d.ts +1 -0
  6. package/dist/cjs/data-consumption/domain/meeting/meeting-data/hooks.d.ts +3 -0
  7. package/dist/cjs/data-consumption/domain/meeting/meeting-data/hooks.js +9 -0
  8. package/dist/cjs/data-consumption/domain/meeting/meeting-data/hooks.js.map +1 -0
  9. package/dist/cjs/data-consumption/domain/meeting/meeting-data/types.d.ts +139 -0
  10. package/dist/cjs/data-consumption/domain/meeting/meeting-data/types.js +3 -0
  11. package/dist/cjs/data-consumption/domain/meeting/meeting-data/types.js.map +1 -0
  12. package/dist/cjs/data-consumption/domain/users/users-basic-info/types.d.ts +2 -0
  13. package/dist/cjs/data-consumption/enums.d.ts +1 -0
  14. package/dist/cjs/data-consumption/enums.js +1 -0
  15. package/dist/cjs/data-consumption/enums.js.map +1 -1
  16. package/dist/cjs/data-consumption/factory/hooks.d.ts +4 -0
  17. package/dist/cjs/data-consumption/factory/hooks.js +55 -0
  18. package/dist/cjs/data-consumption/factory/hooks.js.map +1 -0
  19. package/dist/cjs/data-consumption/factory/types.d.ts +3 -0
  20. package/dist/cjs/data-consumption/factory/types.js +3 -0
  21. package/dist/cjs/data-consumption/factory/types.js.map +1 -0
  22. package/dist/cjs/data-consumption/factory/utils.d.ts +2 -0
  23. package/dist/cjs/data-consumption/factory/utils.js +11 -0
  24. package/dist/cjs/data-consumption/factory/utils.js.map +1 -0
  25. package/dist/cjs/data-consumption/index.d.ts +1 -0
  26. package/dist/cjs/data-consumption/index.js +1 -0
  27. package/dist/cjs/data-consumption/index.js.map +1 -1
  28. package/dist/cjs/extensible-areas/base.d.ts +1 -0
  29. package/dist/cjs/extensible-areas/floating-window/component.d.ts +4 -1
  30. package/dist/cjs/extensible-areas/floating-window/component.js +4 -1
  31. package/dist/cjs/extensible-areas/floating-window/component.js.map +1 -1
  32. package/dist/cjs/extensible-areas/floating-window/types.d.ts +2 -0
  33. package/dist/cjs/extensible-areas/generic-content-item/component.d.ts +6 -2
  34. package/dist/cjs/extensible-areas/generic-content-item/component.js +6 -2
  35. package/dist/cjs/extensible-areas/generic-content-item/component.js.map +1 -1
  36. package/dist/cjs/extensible-areas/generic-content-item/types.d.ts +2 -0
  37. package/dist/cjs/extensible-areas/nav-bar-item/component.d.ts +6 -2
  38. package/dist/cjs/extensible-areas/nav-bar-item/component.js +6 -2
  39. package/dist/cjs/extensible-areas/nav-bar-item/component.js.map +1 -1
  40. package/dist/cjs/extensible-areas/nav-bar-item/types.d.ts +2 -0
  41. package/dist/cjs/extensible-areas/options-dropdown-item/component.d.ts +9 -2
  42. package/dist/cjs/extensible-areas/options-dropdown-item/component.js +8 -2
  43. package/dist/cjs/extensible-areas/options-dropdown-item/component.js.map +1 -1
  44. package/dist/cjs/extensible-areas/options-dropdown-item/types.d.ts +1 -0
  45. package/dist/cjs/extensible-areas/presentation-dropdown-item/component.d.ts +10 -3
  46. package/dist/cjs/extensible-areas/presentation-dropdown-item/component.js +9 -3
  47. package/dist/cjs/extensible-areas/presentation-dropdown-item/component.js.map +1 -1
  48. package/dist/cjs/extensible-areas/presentation-dropdown-item/types.d.ts +1 -0
  49. package/dist/cjs/extensible-areas/screenshare-helper-item/component.d.ts +3 -1
  50. package/dist/cjs/extensible-areas/screenshare-helper-item/component.js +3 -1
  51. package/dist/cjs/extensible-areas/screenshare-helper-item/component.js.map +1 -1
  52. package/dist/cjs/extensible-areas/screenshare-helper-item/types.d.ts +1 -0
  53. package/dist/cjs/extensible-areas/user-camera-dropdown-item/component.d.ts +7 -2
  54. package/dist/cjs/extensible-areas/user-camera-dropdown-item/component.js +7 -2
  55. package/dist/cjs/extensible-areas/user-camera-dropdown-item/component.js.map +1 -1
  56. package/dist/cjs/extensible-areas/user-camera-dropdown-item/types.d.ts +2 -0
  57. package/dist/cjs/extensible-areas/user-camera-helper-item/component.d.ts +3 -1
  58. package/dist/cjs/extensible-areas/user-camera-helper-item/component.js +3 -1
  59. package/dist/cjs/extensible-areas/user-camera-helper-item/component.js.map +1 -1
  60. package/dist/cjs/extensible-areas/user-camera-helper-item/types.d.ts +1 -0
  61. package/dist/cjs/extensible-areas/user-list-dropdown-item/component.d.ts +15 -5
  62. package/dist/cjs/extensible-areas/user-list-dropdown-item/component.js +15 -5
  63. package/dist/cjs/extensible-areas/user-list-dropdown-item/component.js.map +1 -1
  64. package/dist/cjs/extensible-areas/user-list-dropdown-item/types.d.ts +5 -0
  65. package/dist/cjs/extensible-areas/user-list-item-additional-information/component.d.ts +6 -2
  66. package/dist/cjs/extensible-areas/user-list-item-additional-information/component.js +6 -2
  67. package/dist/cjs/extensible-areas/user-list-item-additional-information/component.js.map +1 -1
  68. package/dist/cjs/extensible-areas/user-list-item-additional-information/types.d.ts +2 -0
  69. package/dist/cjs/learning-analytics-dashboard/commands.d.ts +5 -0
  70. package/dist/cjs/learning-analytics-dashboard/commands.js +43 -0
  71. package/dist/cjs/learning-analytics-dashboard/commands.js.map +1 -0
  72. package/dist/cjs/learning-analytics-dashboard/enums.d.ts +4 -1
  73. package/dist/cjs/learning-analytics-dashboard/enums.js +3 -0
  74. package/dist/cjs/learning-analytics-dashboard/enums.js.map +1 -1
  75. package/dist/cjs/learning-analytics-dashboard/types.d.ts +41 -2
  76. package/dist/cjs/utils/logger/logger.d.ts +3 -1
  77. package/dist/cjs/utils/logger/logger.js +89 -1
  78. package/dist/cjs/utils/logger/logger.js.map +1 -1
  79. package/package.json +1 -1
  80. package/dist/cjs/learning-analytics-dashboard/hooks.d.ts +0 -2
  81. package/dist/cjs/learning-analytics-dashboard/hooks.js +0 -14
  82. package/dist/cjs/learning-analytics-dashboard/hooks.js.map +0 -1
@@ -25,13 +25,14 @@ var hooks_10 = require("../../data-consumption/domain/user-voice/talking-indicat
25
25
  var hooks_11 = require("../../ui-data/hooks/hooks");
26
26
  var hooks_12 = require("../../data-consumption/domain/meeting/from-core/hooks");
27
27
  var commands_2 = require("../../server-commands/commands");
28
- var hooks_13 = require("../../learning-analytics-dashboard/hooks");
28
+ var commands_3 = require("../../learning-analytics-dashboard/commands");
29
29
  var utils_1 = require("../../remote-data/utils");
30
- var hooks_14 = require("../../event-persistence/hooks");
30
+ var hooks_13 = require("../../event-persistence/hooks");
31
31
  var useLocaleMessages_1 = __importDefault(require("../auxiliary/plugin-information/locale-messages/useLocaleMessages"));
32
32
  var getters_1 = require("../../ui-data/getters/getters");
33
- var hooks_15 = require("../../data-consumption/domain/shared/custom-query/hooks");
33
+ var hooks_14 = require("../../data-consumption/domain/shared/custom-query/hooks");
34
34
  var hook_2 = require("../../data-creation/hook");
35
+ var hooks_15 = require("../../data-consumption/domain/meeting/meeting-data/hooks");
35
36
  /**
36
37
  * Class responsible for either initialize or get the PluginApi
37
38
  *
@@ -58,12 +59,13 @@ var BbbPluginSdk = /** @class */ (function () {
58
59
  throw new Error('Initializing pluginApi outside of a react function component. It should be done inside');
59
60
  var pluginApi = window.bbb_plugins[uuid];
60
61
  pluginApi.useCustomSubscription = (function (query, variablesObjectWrapper) { return (0, hooks_3.useCustomSubscription)(query, variablesObjectWrapper); });
61
- pluginApi.useCustomQuery = (function (query, variablesObjectWrapper) { return (0, hooks_15.useCustomQuery)(query, variablesObjectWrapper); });
62
+ pluginApi.useCustomQuery = (function (query, variablesObjectWrapper) { return (0, hooks_14.useCustomQuery)(query, variablesObjectWrapper); });
62
63
  pluginApi.useCustomMutation = (function (mutation, options) { return (0, hook_2.useCustomMutation)(mutation, options); });
63
64
  pluginApi.useCurrentPresentation = (function () { return (0, hooks_2.useCurrentPresentation)(); });
64
65
  pluginApi.useLoadedUserList = (function () { return (0, hooks_4.useLoadedUserList)(); });
65
66
  pluginApi.useCurrentUser = (function () { return (0, hooks_5.useCurrentUser)(); });
66
67
  pluginApi.useMeeting = (function () { return (0, hooks_12.useMeeting)(); });
68
+ pluginApi.useMeetingData = hooks_15.useMeetingData;
67
69
  pluginApi.useUsersBasicInfo = (function () { return (0, hooks_6.useUsersBasicInfo)(); });
68
70
  pluginApi.useTalkingIndicator = (function () { return (0, hooks_10.useTalkingIndicator)(); });
69
71
  pluginApi.getJoinUrl = function (params) { return (0, getter_2.getJoinUrl)(params); };
@@ -83,10 +85,15 @@ var BbbPluginSdk = /** @class */ (function () {
83
85
  });
84
86
  pluginApi.usePluginSettings = function () { return (0, settings_1.usePluginSettings)(pluginName); };
85
87
  pluginApi.serverCommands = (0, commands_2.serverCommands)(pluginName);
86
- pluginApi.sendGenericDataForLearningAnalyticsDashboard = function (data) { return (0, hooks_13.sendGenericDataForLearningAnalyticsDashboard)(data, pluginName); };
88
+ pluginApi.sendGenericDataForLearningAnalyticsDashboard = function (data) { return (0, commands_3.sendGenericDataForLearningAnalyticsDashboard)(data, pluginName); };
89
+ pluginApi.learningAnalyticsDashboard = {
90
+ upsertUserData: function (data, targetUserId) { return (0, commands_3.upsertUserData)(data, pluginName, targetUserId); },
91
+ deleteUserData: function (data, targetUserId) { return (0, commands_3.deleteUserData)(data, pluginName, targetUserId); },
92
+ clearAllUsersData: function (cardTitle) { return (0, commands_3.clearAllUsersData)(pluginName, cardTitle); },
93
+ };
87
94
  pluginApi.getRemoteData = function (dataSourceName) { return (0, utils_1.getRemoteData)(dataSourceName, pluginName); };
88
95
  pluginApi
89
- .persistEvent = function (eventName, payload) { return (0, hooks_14.persistEventFunctionWrapper)(pluginName, eventName, payload); };
96
+ .persistEvent = function (eventName, payload) { return (0, hooks_13.persistEventFunctionWrapper)(pluginName, eventName, payload); };
90
97
  pluginApi.useLocaleMessages = function (fetchConfigs) { return (0, useLocaleMessages_1.default)({ pluginApi: pluginApi, fetchConfigs: fetchConfigs }); };
91
98
  }
92
99
  else {
@@ -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 { Logger } from 'browser-bunyan';
1
2
  import { UiCommands } from '../../ui-commands/types';
2
3
  import { UseChatMessageDomElementsFunction } from '../../dom-element-manipulation/chat/message/types';
3
4
  import { ActionButtonDropdownInterface } from '../../extensible-areas/action-button-dropdown-item/types';
@@ -27,7 +28,7 @@ import { GenericContentInterface } from '../../extensible-areas/generic-content-
27
28
  import { UseUiDataFunction } from '../../ui-data/hooks/types';
28
29
  import { UseMeetingFunction } from '../../data-consumption/domain/meeting/from-core/types';
29
30
  import { ServerCommands } from '../../server-commands/types';
30
- import { SendGenericDataForLearningAnalyticsDashboard } from '../../learning-analytics-dashboard/types';
31
+ import { LearningAnalyticsDashboardWrapperObject, SendGenericDataForLearningAnalyticsDashboard } from '../../learning-analytics-dashboard/types';
31
32
  import { UseUserCameraDomElementsFunction } from '../../dom-element-manipulation/user-camera/types';
32
33
  import { ScreenshareHelperInterface, UserCameraHelperInterface } from '../../extensible-areas';
33
34
  import { GetDataSource } from '../../remote-data/types';
@@ -37,6 +38,7 @@ import { UseShouldUnmountPluginFunction } from '../auxiliary/plugin-unmount/type
37
38
  import { GetUiDataFunction } from '../../ui-data/getters/types';
38
39
  import { UseCustomQueryFunction } from '../../data-consumption/domain/shared/custom-query/types';
39
40
  import { UseCustomMutationFunction } from '../../data-creation/types';
41
+ import { UseMeetingDataFunction } from '../../data-consumption/domain/meeting/meeting-data/types';
40
42
  export type SetPresentationToolbarItems = (presentationToolbarItem: PresentationToolbarInterface[]) => string[];
41
43
  export type SetUserListDropdownItems = (userListDropdownItem: UserListDropdownInterface[]) => string[];
42
44
  export type SetActionButtonDropdownItems = (actionButtonDropdownInterface: ActionButtonDropdownInterface[]) => string[];
@@ -102,8 +104,21 @@ export interface PluginApi {
102
104
  *
103
105
  * @returns `GraphqlResponseWrapper` with the CurrentMeeting type.
104
106
  *
107
+ * @deprecated use {@link useMeetingData}
108
+ *
105
109
  */
106
110
  useMeeting?: UseMeetingFunction;
111
+ /**
112
+ * Returns an object containing the data on the current meeting, i.e. the meeting on which the
113
+ * plugin is running.
114
+ *
115
+ * @param projectionFunction - function to select only specific fields from the
116
+ * Meeting type (Optional - if not provided, returns all fields).
117
+ *
118
+ * @returns `GraphqlResponseWrapper` with the CurrentMeeting type.
119
+ *
120
+ */
121
+ useMeetingData?: UseMeetingDataFunction;
107
122
  /**
108
123
  * Returns an object containing the brief data on every user in te meeting.
109
124
  *
@@ -236,12 +251,22 @@ export interface PluginApi {
236
251
  */
237
252
  useLocaleMessages?: UseLocaleMessagesFunction;
238
253
  /**
254
+ * @deprecated Use {@link learningAnalyticsDashboard.upsertUserData} object instead.
255
+ *
239
256
  * Send data to the Learning analytics dashboard
240
257
  *
241
258
  * @param data - object in which one can render in the learning analytics dashboard
242
259
  *
243
260
  */
244
261
  sendGenericDataForLearningAnalyticsDashboard?: SendGenericDataForLearningAnalyticsDashboard;
262
+ /**
263
+ * Wrapper object of functions related to the learning analytics dashboard.
264
+ * It contains the following functions:
265
+ * - deleteGenericData: Deletes a certain entry in the learning dashboard generic-data;
266
+ * - upsertGenericData: Updates or insert a generic data entry in the learning dashboard;
267
+ *
268
+ */
269
+ learningAnalyticsDashboard?: LearningAnalyticsDashboardWrapperObject;
245
270
  /**
246
271
  * Fetches external data from pre-defined data-source in manifest.
247
272
  *
@@ -257,12 +282,34 @@ export interface PluginApi {
257
282
  *
258
283
  */
259
284
  persistEvent?: PersistEventFunction;
285
+ /**
286
+ * Function used to log in the console.
287
+ */
288
+ logger?: Logger;
289
+ }
290
+ export interface Console {
291
+ enabled: boolean;
292
+ level: string;
293
+ }
294
+ export interface External {
295
+ enabled: boolean;
296
+ level: string;
297
+ url: string;
298
+ method: string;
299
+ throttleInterval: number;
300
+ flushOnClose: boolean;
301
+ logTag: string;
302
+ }
303
+ export interface ClientLog {
304
+ console: Console;
305
+ external: External;
260
306
  }
261
307
  export interface MeetingClientSettings {
262
308
  public: {
263
309
  app: {
264
310
  bbbWebBase: string;
265
311
  };
312
+ clientLog: ClientLog;
266
313
  };
267
314
  }
268
315
  export interface PluginBrowserWindow extends Window {
@@ -1 +1,2 @@
1
1
  export { Meeting } from './from-core/types';
2
+ export { MeetingData } from './meeting-data/types';
@@ -0,0 +1,3 @@
1
+ import { DeepPartial } from '../../../../data-consumption/factory/types';
2
+ import { MeetingData } from './types';
3
+ export declare const useMeetingData: (projectionFunction?: ((q: MeetingData) => DeepPartial<MeetingData>) | undefined) => import("../../../..").GraphqlResponseWrapper<MeetingData> | import("../../../..").GraphqlResponseWrapper<DeepPartial<MeetingData>>;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useMeetingData = void 0;
4
+ var hooks_1 = require("../../../../data-consumption/factory/hooks");
5
+ var enums_1 = require("../../../enums");
6
+ var hookCreator_1 = require("../../../factory/hookCreator");
7
+ var useMeetingData = function (projectionFunction) { return (0, hooks_1.useProjectedValue)((0, hookCreator_1.createDataConsumptionHook)(enums_1.DataConsumptionHooks.MEETING_DATA), projectionFunction); };
8
+ exports.useMeetingData = useMeetingData;
9
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../../../../src/data-consumption/domain/meeting/meeting-data/hooks.ts"],"names":[],"mappings":";;;AACA,oEAA+E;AAC/E,wCAAsD;AACtD,4DAAyE;AAGlE,IAAM,cAAc,GAAG,UAC5B,kBAAiE,IAC9D,OAAA,IAAA,yBAAiB,EACpB,IAAA,uCAAyB,EAGvB,4BAAoB,CAAC,YAAY,CAClC,EACD,kBAAkB,CACnB,EAPI,CAOJ,CAAC;AATW,QAAA,cAAc,kBASzB"}
@@ -0,0 +1,139 @@
1
+ import { DeepPartial } from '../../../../data-consumption/factory/types';
2
+ import { GraphqlResponseWrapper } from '../../../../core';
3
+ export interface LockSettings {
4
+ disableCam: boolean;
5
+ disableMic: boolean;
6
+ disableNotes: boolean;
7
+ disablePrivateChat: boolean;
8
+ disablePublicChat: boolean;
9
+ hasActiveLockSetting: boolean;
10
+ hideUserList: boolean;
11
+ hideViewersCursor: boolean;
12
+ hideViewersAnnotation: false;
13
+ meetingId: boolean;
14
+ webcamsOnlyForModerator: boolean;
15
+ }
16
+ export interface groups {
17
+ groupId: string;
18
+ name: string;
19
+ }
20
+ export interface WelcomeSettings {
21
+ welcomeMsg: string;
22
+ welcomeMsgForModerators: string;
23
+ meetingId: string;
24
+ }
25
+ export interface MeetingRecording {
26
+ isRecording: boolean;
27
+ startedAt: Date;
28
+ previousRecordedTimeInSeconds: number;
29
+ startedBy: string;
30
+ stoppedAt: number;
31
+ stoppedBy: string;
32
+ }
33
+ export interface MeetingRecordingPolicies {
34
+ allowStartStopRecording: boolean;
35
+ autoStartRecording: boolean;
36
+ record: boolean;
37
+ keepEvents: boolean;
38
+ startedAt: number;
39
+ startedBy: string;
40
+ stoppedAt: number;
41
+ stoppedBy: string;
42
+ }
43
+ export interface UsersPolicies {
44
+ allowModsToEjectCameras: boolean;
45
+ allowModsToUnmuteUsers: boolean;
46
+ authenticatedGuest: boolean;
47
+ allowPromoteGuestToModerator: boolean;
48
+ guestPolicy: string;
49
+ maxUserConcurrentAccesses: number;
50
+ maxUsers: number;
51
+ meetingId: string;
52
+ meetingLayout: string;
53
+ userCameraCap: number;
54
+ webcamsOnlyForModerator: boolean;
55
+ guestLobbyMessage: string | null;
56
+ }
57
+ export interface VoiceSettings {
58
+ dialNumber: string;
59
+ meetingId: string;
60
+ muteOnStart: boolean;
61
+ telVoice: string;
62
+ voiceConf: string;
63
+ }
64
+ export interface BreakoutPolicies {
65
+ breakoutRooms: Array<unknown>;
66
+ captureNotes: string;
67
+ captureNotesFilename: string;
68
+ captureSlides: string;
69
+ captureSlidesFilename: string;
70
+ freeJoin: boolean;
71
+ parentId: string;
72
+ privateChatEnabled: boolean;
73
+ record: boolean;
74
+ sequence: number;
75
+ }
76
+ export interface BreakoutRoomsCommonProperties {
77
+ durationInSeconds: number;
78
+ freeJoin: boolean;
79
+ sendInvitationToModerators: boolean;
80
+ startedAt: Date;
81
+ }
82
+ export interface ExternalVideo {
83
+ externalVideoId: string;
84
+ playerCurrentTime: number;
85
+ playerPlaybackRate: number;
86
+ playerPlaying: boolean;
87
+ externalVideoUrl: string;
88
+ startedSharingAt: number;
89
+ stoppedSharingAt: number;
90
+ updatedAt: string;
91
+ }
92
+ export interface Layout {
93
+ currentLayoutType: string;
94
+ }
95
+ export interface ComponentsFlags {
96
+ hasCaption: boolean;
97
+ hasBreakoutRoom: boolean;
98
+ hasExternalVideo: boolean;
99
+ hasPoll: boolean;
100
+ hasScreenshare: boolean;
101
+ hasTimer: boolean;
102
+ showRemainingTime: boolean;
103
+ hasCameraAsContent: boolean;
104
+ hasScreenshareAsContent: boolean;
105
+ hasCurrentPresentation: boolean;
106
+ hasSharedNotes: boolean;
107
+ isSharedNotesPinned: boolean;
108
+ }
109
+ export interface MeetingData {
110
+ createdTime: number;
111
+ disabledFeatures: Array<string>;
112
+ durationInSeconds: number;
113
+ extId: string;
114
+ isBreakout: boolean;
115
+ learningDashboardAccessToken: string;
116
+ maxPinnedCameras: number;
117
+ meetingCameraCap: number;
118
+ cameraBridge: string;
119
+ screenShareBridge: string;
120
+ audioBridge: string;
121
+ meetingId: string;
122
+ name: string;
123
+ notifyRecordingIsOn: boolean;
124
+ presentationUploadExternalDescription: string;
125
+ presentationUploadExternalUrl: string;
126
+ usersPolicies: UsersPolicies;
127
+ lockSettings: LockSettings;
128
+ voiceSettings: VoiceSettings;
129
+ breakoutPolicies: BreakoutPolicies;
130
+ breakoutRoomsCommonProperties: BreakoutRoomsCommonProperties;
131
+ externalVideo: ExternalVideo;
132
+ layout: Layout;
133
+ componentsFlags: ComponentsFlags;
134
+ endWhenNoModerator: boolean;
135
+ endWhenNoModeratorDelayInMinutes: number;
136
+ loginUrl: string | null;
137
+ groups: Array<groups>;
138
+ }
139
+ export type UseMeetingDataFunction = (projectionFunction?: (q: MeetingData) => DeepPartial<MeetingData>) => GraphqlResponseWrapper<MeetingData>;
@@ -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/meeting/meeting-data/types.ts"],"names":[],"mappings":""}
@@ -3,6 +3,8 @@ export interface UsersBasicInfoData {
3
3
  userId: string;
4
4
  extId: string;
5
5
  name: string;
6
+ nameSortable: string;
7
+ bot: boolean;
6
8
  /**
7
9
  * @deprecated use {@link isModerator} instead
8
10
  */
@@ -5,6 +5,7 @@ export declare enum DataConsumptionHooks {
5
5
  USERS_BASIC_INFO = "Hooks::UseUsersBasicInfo",
6
6
  LOADED_CHAT_MESSAGES = "Hooks::UseLoadedChatMessages",
7
7
  MEETING = "Hooks::UseMeeting",
8
+ MEETING_DATA = "Hooks::UseMeetingData",
8
9
  TALKING_INDICATOR = "Hooks::UseTalkingIndicator",
9
10
  CUSTOM_SUBSCRIPTION = "Hooks::CustomSubscription",
10
11
  CUSTOM_QUERY = "Hooks::CustomQuery"
@@ -9,6 +9,7 @@ var DataConsumptionHooks;
9
9
  DataConsumptionHooks["USERS_BASIC_INFO"] = "Hooks::UseUsersBasicInfo";
10
10
  DataConsumptionHooks["LOADED_CHAT_MESSAGES"] = "Hooks::UseLoadedChatMessages";
11
11
  DataConsumptionHooks["MEETING"] = "Hooks::UseMeeting";
12
+ DataConsumptionHooks["MEETING_DATA"] = "Hooks::UseMeetingData";
12
13
  DataConsumptionHooks["TALKING_INDICATOR"] = "Hooks::UseTalkingIndicator";
13
14
  DataConsumptionHooks["CUSTOM_SUBSCRIPTION"] = "Hooks::CustomSubscription";
14
15
  DataConsumptionHooks["CUSTOM_QUERY"] = "Hooks::CustomQuery";
@@ -1 +1 @@
1
- {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../src/data-consumption/enums.ts"],"names":[],"mappings":";;;AAAA,IAAY,oBAUX;AAVD,WAAY,oBAAoB;IAC9B,8EAAsD,CAAA;IACtD,qEAA6C,CAAA;IAC7C,8DAAsC,CAAA;IACtC,qEAA6C,CAAA;IAC7C,6EAAqD,CAAA;IACrD,qDAA6B,CAAA;IAC7B,wEAAgD,CAAA;IAChD,yEAAiD,CAAA;IACjD,2DAAmC,CAAA;AACrC,CAAC,EAVW,oBAAoB,oCAApB,oBAAoB,QAU/B"}
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../src/data-consumption/enums.ts"],"names":[],"mappings":";;;AAAA,IAAY,oBAWX;AAXD,WAAY,oBAAoB;IAC9B,8EAAsD,CAAA;IACtD,qEAA6C,CAAA;IAC7C,8DAAsC,CAAA;IACtC,qEAA6C,CAAA;IAC7C,6EAAqD,CAAA;IACrD,qDAA6B,CAAA;IAC7B,8DAAsC,CAAA;IACtC,wEAAgD,CAAA;IAChD,yEAAiD,CAAA;IACjD,2DAAmC,CAAA;AACrC,CAAC,EAXW,oBAAoB,oCAApB,oBAAoB,QAW/B"}
@@ -0,0 +1,4 @@
1
+ import { GraphqlResponseWrapper } from '../../core';
2
+ import { DeepPartial } from './types';
3
+ export declare function useProjectedValue<TQueryResult>(queryResult: GraphqlResponseWrapper<TQueryResult[]>, project?: (q: TQueryResult) => DeepPartial<TQueryResult>): GraphqlResponseWrapper<TQueryResult[]> | GraphqlResponseWrapper<DeepPartial<TQueryResult>[]>;
4
+ export declare function useProjectedValue<TQueryResult>(queryResult: GraphqlResponseWrapper<TQueryResult>, project?: (q: TQueryResult) => DeepPartial<TQueryResult>): GraphqlResponseWrapper<TQueryResult> | GraphqlResponseWrapper<DeepPartial<TQueryResult>>;
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useProjectedValue = void 0;
4
+ var react_1 = require("react");
5
+ var utils_1 = require("../utils");
6
+ var utils_2 = require("./utils");
7
+ // Implementation
8
+ function useProjectedValue(queryResult, project) {
9
+ if (!project)
10
+ return queryResult;
11
+ var isArray = Array.isArray(queryResult.data);
12
+ // Store the previous projected data to compare against
13
+ var previousProjectedDataRef = (0, react_1.useRef)(undefined);
14
+ // Compute the new projected value from the data field
15
+ var currentProjectedData = (0, react_1.useMemo)(function () {
16
+ if (!queryResult.data)
17
+ return undefined;
18
+ if (isArray) {
19
+ return queryResult.data.map(function (item) { return project(item); });
20
+ }
21
+ return project(queryResult.data);
22
+ }, [queryResult.data, project, isArray]);
23
+ // Initialize state with the wrapper structure
24
+ var _a = (0, react_1.useState)({
25
+ loading: queryResult.loading,
26
+ data: currentProjectedData,
27
+ error: queryResult.error,
28
+ }), projectionResult = _a[0], setProjectionResult = _a[1];
29
+ (0, react_1.useEffect)(function () {
30
+ // Perform deep equality check using sortedStringify
31
+ var currentSerialized = (0, utils_1.sortedStringify)(currentProjectedData);
32
+ var previousSerialized = (0, utils_1.sortedStringify)(previousProjectedDataRef.current);
33
+ // Check if loading or error states changed
34
+ var loadingChanged = queryResult.loading !== projectionResult.loading;
35
+ var errorChanged = (0, utils_2.hasErrorChanged)(projectionResult.error, queryResult.error);
36
+ // Only update if the projected data, loading, or error state has changed
37
+ if (currentSerialized !== previousSerialized || loadingChanged || errorChanged) {
38
+ previousProjectedDataRef.current = currentProjectedData;
39
+ setProjectionResult({
40
+ loading: queryResult.loading,
41
+ data: currentProjectedData,
42
+ error: queryResult.error,
43
+ });
44
+ }
45
+ }, [
46
+ currentProjectedData,
47
+ queryResult.loading,
48
+ queryResult.error,
49
+ projectionResult.loading,
50
+ projectionResult.error,
51
+ ]);
52
+ return projectionResult;
53
+ }
54
+ exports.useProjectedValue = useProjectedValue;
55
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../../src/data-consumption/factory/hooks.ts"],"names":[],"mappings":";;;AAAA,+BAKe;AACf,kCAA2C;AAE3C,iCAA0C;AAa1C,iBAAiB;AACjB,SAAgB,iBAAiB,CAC/B,WAAkE,EAClE,OAAwD;IAGxD,IAAI,CAAC,OAAO;QAAE,OAAO,WAAW,CAAC;IAEjC,IAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEhD,uDAAuD;IACvD,IAAM,wBAAwB,GAAG,IAAA,cAAM,EAErC,SAAS,CAAC,CAAC;IAEb,sDAAsD;IACtD,IAAM,oBAAoB,GAAG,IAAA,eAAO,EAAC;QACnC,IAAI,CAAC,WAAW,CAAC,IAAI;YAAE,OAAO,SAAS,CAAC;QACxC,IAAI,OAAO,EAAE;YACX,OAAQ,WAAW,CAAC,IAAuB,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,OAAO,CAAC,IAAI,CAAC,EAAb,CAAa,CAAC,CAAC;SAC1E;QACD,OAAO,OAAO,CAAC,WAAW,CAAC,IAAoB,CAAC,CAAC;IACnD,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAEzC,8CAA8C;IACxC,IAAA,KAA0C,IAAA,gBAAQ,EAEtD;QACA,OAAO,EAAE,WAAW,CAAC,OAAO;QAC5B,IAAI,EAAE,oBAAoB;QAC1B,KAAK,EAAE,WAAW,CAAC,KAAK;KACzB,CAAC,EANK,gBAAgB,QAAA,EAAE,mBAAmB,QAM1C,CAAC;IAEH,IAAA,iBAAS,EAAC;QACR,oDAAoD;QACpD,IAAM,iBAAiB,GAAG,IAAA,uBAAe,EAAC,oBAAoB,CAAC,CAAC;QAChE,IAAM,kBAAkB,GAAG,IAAA,uBAAe,EAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;QAE7E,2CAA2C;QAC3C,IAAM,cAAc,GAAG,WAAW,CAAC,OAAO,KAAK,gBAAgB,CAAC,OAAO,CAAC;QACxE,IAAM,YAAY,GAAG,IAAA,uBAAe,EAAC,gBAAgB,CAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;QAEhF,yEAAyE;QACzE,IAAI,iBAAiB,KAAK,kBAAkB,IAAI,cAAc,IAAI,YAAY,EAAE;YAC9E,wBAAwB,CAAC,OAAO,GAAG,oBAAoB,CAAC;YACxD,mBAAmB,CAAC;gBAClB,OAAO,EAAE,WAAW,CAAC,OAAO;gBAC5B,IAAI,EAAE,oBAAoB;gBAC1B,KAAK,EAAE,WAAW,CAAC,KAAK;aACzB,CAAC,CAAC;SACJ;IACH,CAAC,EAAE;QACD,oBAAoB;QACpB,WAAW,CAAC,OAAO;QACnB,WAAW,CAAC,KAAK;QACjB,gBAAgB,CAAC,OAAO;QACxB,gBAAgB,CAAC,KAAK;KACvB,CAAC,CAAC;IAEH,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AA3DD,8CA2DC"}
@@ -0,0 +1,3 @@
1
+ export type DeepPartial<T> = {
2
+ [K in keyof T]?: T[K] extends (infer U)[] ? DeepPartial<U>[] : T[K] extends object ? DeepPartial<T[K]> : T[K];
3
+ };
@@ -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/factory/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import { ApolloError } from '@apollo/client';
2
+ export declare const hasErrorChanged: (previousResultError?: ApolloError, currentResultError?: ApolloError) => boolean;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.hasErrorChanged = void 0;
4
+ var utils_1 = require("../utils");
5
+ var hasErrorChanged = function (previousResultError, currentResultError) {
6
+ var currentSerialized = (0, utils_1.sortedStringify)(currentResultError);
7
+ var previousSerialized = (0, utils_1.sortedStringify)(previousResultError);
8
+ return currentSerialized !== previousSerialized;
9
+ };
10
+ exports.hasErrorChanged = hasErrorChanged;
11
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/data-consumption/factory/utils.ts"],"names":[],"mappings":";;;AACA,kCAA2C;AAEpC,IAAM,eAAe,GAAG,UAC7B,mBAAiC,EACjC,kBAAgC;IAEhC,IAAM,iBAAiB,GAAG,IAAA,uBAAe,EAAC,kBAAkB,CAAC,CAAC;IAC9D,IAAM,kBAAkB,GAAG,IAAA,uBAAe,EAAC,mBAAmB,CAAC,CAAC;IAChE,OAAO,iBAAiB,KAAK,kBAAkB,CAAC;AAClD,CAAC,CAAC;AAPW,QAAA,eAAe,mBAO1B"}
@@ -4,3 +4,4 @@ export * from './domain/meeting';
4
4
  export * from './domain/users';
5
5
  export * from './domain/user-voice';
6
6
  export * from './domain/shared';
7
+ export * from './factory/types';
@@ -20,4 +20,5 @@ __exportStar(require("./domain/meeting"), exports);
20
20
  __exportStar(require("./domain/users"), exports);
21
21
  __exportStar(require("./domain/user-voice"), exports);
22
22
  __exportStar(require("./domain/shared"), exports);
23
+ __exportStar(require("./factory/types"), exports);
23
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/data-consumption/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,gDAA8B;AAC9B,mDAAiC;AACjC,iDAA+B;AAC/B,sDAAoC;AACpC,kDAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/data-consumption/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,gDAA8B;AAC9B,mDAAiC;AACjC,iDAA+B;AAC/B,sDAAoC;AACpC,kDAAgC;AAEhC,kDAAgC"}
@@ -19,5 +19,6 @@ export interface PluginProvidedUiItemDescriptor {
19
19
  id: string;
20
20
  type: PluginProvidedUiItemType;
21
21
  setItemId: (id: string) => void;
22
+ dataTest?: string;
22
23
  }
23
24
  export {};
@@ -9,6 +9,8 @@ export declare class FloatingWindow implements FloatingWindowInterface {
9
9
  movable: boolean;
10
10
  backgroundColor: string;
11
11
  boxShadow: string;
12
+ zIndex?: number;
13
+ dataTest?: string;
12
14
  contentFunction: (element: HTMLElement) => ReactDOM.Root;
13
15
  /**
14
16
  * Returns object to be used in the setter for the Floating Window
@@ -21,11 +23,12 @@ export declare class FloatingWindow implements FloatingWindowInterface {
21
23
  * @param movable - tells whether the floating window is movable or static.
22
24
  * @param backgroundColor - background color of the floating window.
23
25
  * @param boxShadow - box shadow to apply to the floating window
26
+ * @param zIndex - z-index of the floating window (Optional).
24
27
  * @param contentFunction - function that gives the html element to render the content of
25
28
  * the floating window. It must return the root element where the floating window was rendered.
26
29
  *
27
30
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
28
31
  */
29
- constructor({ id, top, left, movable, backgroundColor, boxShadow, contentFunction, }: FloatingWindowProps);
32
+ constructor({ id, top, left, movable, backgroundColor, boxShadow, zIndex, contentFunction, dataTest, }: FloatingWindowProps);
30
33
  setItemId: (id: string) => void;
31
34
  }
@@ -15,13 +15,14 @@ var FloatingWindow = /** @class */ (function () {
15
15
  * @param movable - tells whether the floating window is movable or static.
16
16
  * @param backgroundColor - background color of the floating window.
17
17
  * @param boxShadow - box shadow to apply to the floating window
18
+ * @param zIndex - z-index of the floating window (Optional).
18
19
  * @param contentFunction - function that gives the html element to render the content of
19
20
  * the floating window. It must return the root element where the floating window was rendered.
20
21
  *
21
22
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
22
23
  */
23
24
  function FloatingWindow(_a) {
24
- var id = _a.id, top = _a.top, left = _a.left, movable = _a.movable, backgroundColor = _a.backgroundColor, boxShadow = _a.boxShadow, contentFunction = _a.contentFunction;
25
+ var id = _a.id, top = _a.top, left = _a.left, movable = _a.movable, backgroundColor = _a.backgroundColor, boxShadow = _a.boxShadow, zIndex = _a.zIndex, contentFunction = _a.contentFunction, dataTest = _a.dataTest;
25
26
  var _this = this;
26
27
  this.id = '';
27
28
  this.setItemId = function (id) {
@@ -33,8 +34,10 @@ var FloatingWindow = /** @class */ (function () {
33
34
  this.top = top;
34
35
  this.left = left;
35
36
  this.movable = movable;
37
+ this.dataTest = dataTest;
36
38
  this.backgroundColor = backgroundColor;
37
39
  this.boxShadow = boxShadow;
40
+ this.zIndex = zIndex;
38
41
  this.contentFunction = contentFunction;
39
42
  this.type = enums_1.FloatingWindowType.CONTAINER;
40
43
  }
@@ -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,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"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/extensible-areas/floating-window/component.ts"],"names":[],"mappings":";;;AACA,iCAA6C;AAG7C,iCAAiC;AAEjC;IAqBE;;;;;;;;;;;;;;;;OAgBG;IACH,wBAAY,EAUU;YATpB,EAAE,QAAA,EACF,GAAG,SAAA,EACH,IAAI,UAAA,EACJ,OAAO,aAAA,EACP,eAAe,qBAAA,EACf,SAAS,eAAA,EACT,MAAM,YAAA,EACN,eAAe,qBAAA,EACf,QAAQ,cAAA;QATV,iBAwBC;QA7DD,OAAE,GAAW,EAAE,CAAC;QA+DhB,cAAS,GAAyB,UAAC,EAAU;YAC3C,KAAI,CAAC,EAAE,GAAG,yBAAkB,EAAE,CAAE,CAAC;QACnC,CAAC,CAAC;QAjBA,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,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,0BAAkB,CAAC,SAAS,CAAC;IAC3C,CAAC;IAKH,qBAAC;AAAD,CAAC,AAnED,IAmEC;AAnEY,wCAAc"}
@@ -9,6 +9,8 @@ export interface FloatingWindowProps {
9
9
  movable: boolean;
10
10
  backgroundColor: string;
11
11
  boxShadow: string;
12
+ zIndex?: number;
13
+ dataTest?: string;
12
14
  contentFunction: (element: HTMLElement) => ReactDOM.Root;
13
15
  }
14
16
  export type SetFloatingWindows = (FloatingWindows: FloatingWindowInterface[]) => void;
@@ -5,16 +5,18 @@ export declare class GenericContentMainArea implements GenericContentInterface {
5
5
  id: string;
6
6
  type: GenericContentType;
7
7
  contentFunction: (element: HTMLElement) => ReactDOM.Root;
8
+ dataTest: string;
8
9
  /**
9
10
  * Returns an object that when used in the setter as a generic content will be rendered
10
11
  * over the meeting main presentation.
11
12
  *
12
13
  * @param contentFunction - function that gives the html element to render the content of
13
14
  * the generic component
15
+ * @param dataTest - string attribute to be used for testing
14
16
  *
15
17
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
16
18
  */
17
- constructor({ id, contentFunction, }: GenericContentMainAreaProps);
19
+ constructor({ id, contentFunction, dataTest, }: GenericContentMainAreaProps);
18
20
  setItemId: (id: string) => void;
19
21
  }
20
22
  export declare class GenericContentSidekickArea implements GenericContentInterface {
@@ -24,6 +26,7 @@ export declare class GenericContentSidekickArea implements GenericContentInterfa
24
26
  section: string;
25
27
  buttonIcon: string;
26
28
  open: boolean;
29
+ dataTest: string;
27
30
  contentFunction: (element: HTMLElement) => ReactDOM.Root;
28
31
  /**
29
32
  * Returns an object that when used in the setter as a generic content will be rendered
@@ -38,9 +41,10 @@ export declare class GenericContentSidekickArea implements GenericContentInterfa
38
41
  * displayed
39
42
  * @param buttonIcon - the icon of the associated sidebar navigation button
40
43
  * @param open - boolean value to decide wether to start open
44
+ * @param dataTest - string attribute to be used for testing
41
45
  *
42
46
  * @returns Object that will be interpreted by the core of Bigbluebutton (HTML5).
43
47
  */
44
- constructor({ id, contentFunction, name, section, buttonIcon, open, }: GenericContentSidekickAreaProps);
48
+ constructor({ id, contentFunction, name, section, buttonIcon, open, dataTest, }: GenericContentSidekickAreaProps);
45
49
  setItemId: (id: string) => void;
46
50
  }