From 40475dc372c36b9ffe0ec4a423459c45d8e0faa6 Mon Sep 17 00:00:00 2001
From: Carlos Santos <4a.santos@gmail.com>
Date: Mon, 17 Nov 2025 16:47:50 +0100
Subject: [PATCH] frontend: use content projection for configuring
videoconference components
Refactored all components and services related to the meeting
---
.../src/lib/components/index.ts | 7 -
.../meeting-layout.component.html | 17 -
.../meeting-lobby.component.html | 42 +-
.../meeting-lobby/meeting-lobby.component.ts | 135 ++----
.../meeting-participant-panel.component.html | 62 ---
.../meeting-participant-panel.component.ts | 128 ------
.../meeting-share-link-panel.component.html | 5 -
.../meeting-share-link-panel.component.ts | 44 --
.../meeting-toolbar-buttons.component.ts | 116 -----
.../src/lib/customization/components/index.ts | 4 +
.../meeting-layout.component.html | 23 +
.../meeting-layout.component.scss | 38 ++
.../meeting-layout.component.spec.ts | 4 +-
.../meeting-layout.component.ts | 85 ++--
...ting-participant-panel-item.component.html | 67 +++
...ing-participant-panel-item.component.scss} | 2 +-
...eeting-participant-panel-item.component.ts | 139 ++++++
.../meeting-share-link-panel.component.html | 5 +
.../meeting-share-link-panel.component.scss | 0
.../meeting-share-link-panel.component.ts | 47 ++
.../meeting-toolbar-buttons.component.html | 8 +-
.../meeting-toolbar-buttons.component.scss | 2 +-
.../meeting-toolbar-buttons.component.ts | 77 ++++
.../src/lib/customization/index.ts | 2 +
.../src/lib/guards/check-room-edit.guard.ts | 2 +-
.../lib/guards/extract-query-params.guard.ts | 5 +-
.../src/lib/guards/validate-access.guard.ts | 16 +-
.../src/lib/interceptors/http.interceptor.ts | 10 +-
.../src/lib/models/lobby.model.ts | 13 +-
.../lib/pages/meeting/meeting.component.html | 88 ++--
.../lib/pages/meeting/meeting.component.ts | 428 +++++-------------
.../room-recordings.component.ts | 28 +-
.../src/lib/routes/base-routes.ts | 4 +-
.../src/lib/services/index.ts | 2 +-
.../meeting/meeting-context.service.ts | 234 ++++++++++
.../meeting/meeting-event-handler.service.ts | 129 ++----
.../services/meeting/meeting-lobby.service.ts | 287 ++++++++----
.../meeting/meeting-plugin-manager.service.ts | 203 ---------
.../lib/services/meeting/meeting.service.ts | 26 +-
.../src/lib/services/room.service.ts | 64 ++-
.../services/webcomponent-manager.service.ts | 23 +-
meet-ce/frontend/src/app/app.routes.ts | 9 +-
.../app/customization/meeting-ce.providers.ts | 49 --
.../app-ce-meeting.component.html | 6 +
.../app-ce-meeting.component.scss | 0
.../app-ce-meeting.component.spec.ts | 23 +
.../app-ce-meeting.component.ts | 22 +
47 files changed, 1298 insertions(+), 1432 deletions(-)
delete mode 100644 meet-ce/frontend/projects/shared-meet-components/src/lib/components/meeting-layout/meeting-layout.component.html
delete mode 100644 meet-ce/frontend/projects/shared-meet-components/src/lib/components/meeting-participant-panel/meeting-participant-panel.component.html
delete mode 100644 meet-ce/frontend/projects/shared-meet-components/src/lib/components/meeting-participant-panel/meeting-participant-panel.component.ts
delete mode 100644 meet-ce/frontend/projects/shared-meet-components/src/lib/components/meeting-share-link-panel/meeting-share-link-panel.component.html
delete mode 100644 meet-ce/frontend/projects/shared-meet-components/src/lib/components/meeting-share-link-panel/meeting-share-link-panel.component.ts
delete mode 100644 meet-ce/frontend/projects/shared-meet-components/src/lib/components/meeting-toolbar-buttons/meeting-toolbar-buttons.component.ts
create mode 100644 meet-ce/frontend/projects/shared-meet-components/src/lib/customization/components/index.ts
create mode 100644 meet-ce/frontend/projects/shared-meet-components/src/lib/customization/components/meeting-layout/meeting-layout.component.html
rename meet-ce/frontend/projects/shared-meet-components/src/lib/{ => customization}/components/meeting-layout/meeting-layout.component.scss (68%)
rename meet-ce/frontend/projects/shared-meet-components/src/lib/{ => customization}/components/meeting-layout/meeting-layout.component.spec.ts (98%)
rename meet-ce/frontend/projects/shared-meet-components/src/lib/{ => customization}/components/meeting-layout/meeting-layout.component.ts (76%)
create mode 100644 meet-ce/frontend/projects/shared-meet-components/src/lib/customization/components/meeting-participant-panel-item/meeting-participant-panel-item.component.html
rename meet-ce/frontend/projects/shared-meet-components/src/lib/{components/meeting-participant-panel/meeting-participant-panel.component.scss => customization/components/meeting-participant-panel-item/meeting-participant-panel-item.component.scss} (86%)
create mode 100644 meet-ce/frontend/projects/shared-meet-components/src/lib/customization/components/meeting-participant-panel-item/meeting-participant-panel-item.component.ts
create mode 100644 meet-ce/frontend/projects/shared-meet-components/src/lib/customization/components/meeting-share-link-panel/meeting-share-link-panel.component.html
rename meet-ce/frontend/projects/shared-meet-components/src/lib/{ => customization}/components/meeting-share-link-panel/meeting-share-link-panel.component.scss (100%)
create mode 100644 meet-ce/frontend/projects/shared-meet-components/src/lib/customization/components/meeting-share-link-panel/meeting-share-link-panel.component.ts
rename meet-ce/frontend/projects/shared-meet-components/src/lib/{ => customization}/components/meeting-toolbar-buttons/meeting-toolbar-buttons.component.html (90%)
rename meet-ce/frontend/projects/shared-meet-components/src/lib/{ => customization}/components/meeting-toolbar-buttons/meeting-toolbar-buttons.component.scss (85%)
create mode 100644 meet-ce/frontend/projects/shared-meet-components/src/lib/customization/components/meeting-toolbar-buttons/meeting-toolbar-buttons.component.ts
create mode 100644 meet-ce/frontend/projects/shared-meet-components/src/lib/services/meeting/meeting-context.service.ts
delete mode 100644 meet-ce/frontend/projects/shared-meet-components/src/lib/services/meeting/meeting-plugin-manager.service.ts
delete mode 100644 meet-ce/frontend/src/app/customization/meeting-ce.providers.ts
create mode 100644 meet-ce/frontend/src/app/customization/pages/app-ce-meeting/app-ce-meeting.component.html
create mode 100644 meet-ce/frontend/src/app/customization/pages/app-ce-meeting/app-ce-meeting.component.scss
create mode 100644 meet-ce/frontend/src/app/customization/pages/app-ce-meeting/app-ce-meeting.component.spec.ts
create mode 100644 meet-ce/frontend/src/app/customization/pages/app-ce-meeting/app-ce-meeting.component.ts
diff --git a/meet-ce/frontend/projects/shared-meet-components/src/lib/components/index.ts b/meet-ce/frontend/projects/shared-meet-components/src/lib/components/index.ts
index 8253b4b7..31264226 100644
--- a/meet-ce/frontend/projects/shared-meet-components/src/lib/components/index.ts
+++ b/meet-ce/frontend/projects/shared-meet-components/src/lib/components/index.ts
@@ -14,18 +14,11 @@ export * from './wizard-nav/wizard-nav.component';
export * from './share-meeting-link/share-meeting-link.component';
// Meeting modular components
-export * from './meeting-toolbar-buttons/meeting-toolbar-buttons.component';
-export * from './meeting-participant-panel/meeting-participant-panel.component';
-export * from './meeting-share-link-panel/meeting-share-link-panel.component';
export * from './meeting-share-link-overlay/meeting-share-link-overlay.component';
export * from './meeting-lobby/meeting-lobby.component';
-export * from './meeting-layout/meeting-layout.component';
// Meeting components
-export * from './meeting-toolbar-buttons/meeting-toolbar-buttons.component';
-export * from './meeting-participant-panel/meeting-participant-panel.component';
-export * from './meeting-share-link-panel/meeting-share-link-panel.component';
export * from './meeting-share-link-overlay/meeting-share-link-overlay.component';
export * from './meeting-lobby/meeting-lobby.component';
diff --git a/meet-ce/frontend/projects/shared-meet-components/src/lib/components/meeting-layout/meeting-layout.component.html b/meet-ce/frontend/projects/shared-meet-components/src/lib/components/meeting-layout/meeting-layout.component.html
deleted file mode 100644
index db0baf54..00000000
--- a/meet-ce/frontend/projects/shared-meet-components/src/lib/components/meeting-layout/meeting-layout.component.html
+++ /dev/null
@@ -1,17 +0,0 @@
-