diff --git a/openvidu-components-angular/.gitignore b/openvidu-components-angular/.gitignore
index b8993b28..a9278f73 100644
--- a/openvidu-components-angular/.gitignore
+++ b/openvidu-components-angular/.gitignore
@@ -10,7 +10,4 @@
node_modules
dist/
docs/
-openvidu-webcomponent/
coverage/**
-e2e/webcomponent-app/openvidu-webcomponent-*.css
-e2e/webcomponent-app/openvidu-webcomponent-*.js
diff --git a/openvidu-components-angular/angular.json b/openvidu-components-angular/angular.json
index 70501825..da1888c8 100644
--- a/openvidu-components-angular/angular.json
+++ b/openvidu-components-angular/angular.json
@@ -149,82 +149,6 @@
}
}
}
- },
- "openvidu-webcomponent": {
- "projectType": "application",
- "root": "",
- "sourceRoot": "src",
- "architect": {
- "build": {
- "builder": "@angular-devkit/build-angular:application",
- "options": {
- "outputPath": {
- "base": "dist/openvidu-webcomponent-rc",
- "browser": ""
- },
- "index": "src/index.html",
- "polyfills": ["zone.js"],
- "tsConfig": "src/app/openvidu-webcomponent/tsconfig.openvidu-webcomponent.json",
- "aot": true,
- "assets": ["src/favicon.ico"],
- "styles": ["src/app/openvidu-webcomponent/openvidu-webcomponent.component.scss"],
- "scripts": [],
- "browser": "src/app/openvidu-webcomponent/openvidu-webcomponent.main.ts"
- },
- "configurations": {
- "production": {
- "fileReplacements": [
- {
- "replace": "src/environments/environment.ts",
- "with": "src/environments/environment.prod.ts"
- }
- ],
- "optimization": true,
- "outputHashing": "none",
- "sourceMap": false,
- "namedChunks": false,
- "extractLicenses": true,
- "budgets": [
- {
- "type": "initial",
- "maximumWarning": "1mb",
- "maximumError": "2mb"
- },
- {
- "type": "anyComponentStyle",
- "maximumWarning": "2kb",
- "maximumError": "4kb"
- }
- ]
- },
- "testing": {
- "fileReplacements": [
- {
- "replace": "src/environments/environment.ts",
- "with": "src/environments/environment.testing.ts"
- }
- ],
- "optimization": true,
- "outputHashing": "none",
- "sourceMap": false,
- "namedChunks": false,
- "extractLicenses": true,
- "budgets": [
- {
- "type": "initial",
- "maximumWarning": "1mb",
- "maximumError": "2mb"
- },
- {
- "type": "anyComponentStyle",
- "maximumWarning": "2kb",
- "maximumError": "4kb"
- }
- ]
- }
- }
- }
- }
}
},
"cli": {
diff --git a/openvidu-components-angular/e2e/config.ts b/openvidu-components-angular/e2e/config.ts
index 110073e8..0ab3f493 100644
--- a/openvidu-components-angular/e2e/config.ts
+++ b/openvidu-components-angular/e2e/config.ts
@@ -1,4 +1,3 @@
export const LAUNCH_MODE = process.env.LAUNCH_MODE || 'DEV';
-export const OPENVIDU_CALL_SERVER = process.env.OPENVIDU_CALL_SERVER || 'http://localhost:6080';
jasmine.DEFAULT_TIMEOUT_INTERVAL = 30000;
diff --git a/openvidu-components-angular/e2e/selenium.conf.ts b/openvidu-components-angular/e2e/selenium.conf.ts
index 4ff2db08..39b3b473 100644
--- a/openvidu-components-angular/e2e/selenium.conf.ts
+++ b/openvidu-components-angular/e2e/selenium.conf.ts
@@ -47,14 +47,6 @@ const chromeArgumentsWithoutMediaDevicesCI = [
'--deny-permission-prompts'
];
-export const WebComponentConfig: BrowserConfig = {
- appUrl: 'http://localhost:8080/',
- seleniumAddress: LAUNCH_MODE === 'CI' ? 'http://localhost:4444/wd/hub' : '',
- browserName: 'chrome',
- browserCapabilities: Capabilities.chrome().set('acceptInsecureCerts', true),
- browserOptions: new chrome.Options().addArguments(...(LAUNCH_MODE === 'CI' ? chromeArgumentsCI : chromeArguments))
-};
-
export const TestAppConfig: BrowserConfig = {
appUrl: 'http://localhost:4200/#/call?staticVideos=false',
seleniumAddress: LAUNCH_MODE === 'CI' ? 'http://localhost:4444/wd/hub' : '',
diff --git a/openvidu-components-angular/e2e/webcomponent-app/app.js b/openvidu-components-angular/e2e/webcomponent-app/app.js
deleted file mode 100644
index 79f5c0cb..00000000
--- a/openvidu-components-angular/e2e/webcomponent-app/app.js
+++ /dev/null
@@ -1,285 +0,0 @@
-import monkeyPatchMediaDevices from './utils/media-devices.js';
-
-var MINIMAL;
-var LANG;
-var CAPTIONS_LANG;
-var CUSTOM_LANG_OPTIONS;
-var CUSTOM_CAPTIONS_LANG_OPTIONS;
-var PREJOIN;
-var VIDEO_ENABLED;
-var AUDIO_ENABLED;
-
-var CAMERA_BUTTON;
-var MICROPHONE_BUTTON;
-var SCREENSHARE_BUTTON;
-var FULLSCREEN_BUTTON;
-var ACTIVITIES_PANEL_BUTTON;
-var RECORDING_BUTTON;
-var BROADCASTING_BUTTON;
-var CHAT_PANEL_BUTTON;
-var DISPLAY_LOGO;
-var DISPLAY_ROOM_NAME;
-var DISPLAY_PARTICIPANT_NAME;
-var DISPLAY_AUDIO_DETECTION;
-var VIDEO_CONTROLS;
-var LEAVE_BUTTON;
-var PARTICIPANT_MUTE_BUTTON;
-var PARTICIPANTS_PANEL_BUTTON;
-var ACTIVITIES_RECORDING_ACTIVITY;
-var ACTIVITIES_BROADCASTING_ACTIVITY;
-var TOOLBAR_SETTINGS_BUTTON;
-var CAPTIONS_BUTTON;
-
-var ROOM_NAME;
-var FAKE_DEVICES;
-var FAKE_RECORDINGS;
-
-var PARTICIPANT_NAME;
-
-var OPENVIDU_CALL_SERVER_URL;
-
-document.addEventListener('DOMContentLoaded', () => {
- var url = new URL(window.location.href);
-
- OPENVIDU_CALL_SERVER_URL = url.searchParams.get('OPENVIDU_CALL_SERVER_URL') || 'http://localhost:6080';
-
- FAKE_DEVICES = url.searchParams.get('fakeDevices') === null ? false : url.searchParams.get('fakeDevices') === 'true';
-
- FAKE_RECORDINGS = url.searchParams.get('fakeRecordings') === null ? false : url.searchParams.get('fakeRecordings') === 'true';
-
- // Directives
- MINIMAL = url.searchParams.get('minimal') === null ? false : url.searchParams.get('minimal') === 'true';
- LANG = url.searchParams.get('lang') || 'en';
- CUSTOM_LANG_OPTIONS = url.searchParams.get('langOptions') === null ? false : url.searchParams.get('langOptions') === 'true';
- // CAPTIONS_LANG = url.searchParams.get('captionsLang') || 'en-US';
- // CUSTOM_CAPTIONS_LANG_OPTIONS = url.searchParams.get('captionsLangOptions') === null ? false : url.searchParams.get('captionsLangOptions') === 'true';
- PARTICIPANT_NAME =
- url.searchParams.get('participantName') === null
- ? 'TEST_USER' + Math.random().toString(36).substr(2, 9)
- : url.searchParams.get('participantName');
- PREJOIN = url.searchParams.get('prejoin') === null ? true : url.searchParams.get('prejoin') === 'true';
- VIDEO_ENABLED = url.searchParams.get('videoEnabled') === null ? true : url.searchParams.get('videoEnabled') === 'true';
- AUDIO_ENABLED = url.searchParams.get('audioEnabled') === null ? true : url.searchParams.get('audioEnabled') === 'true';
- CAMERA_BUTTON = url.searchParams.get('cameraBtn') === null ? true : url.searchParams.get('cameraBtn') === 'true';
- MICROPHONE_BUTTON = url.searchParams.get('microphoneBtn') === null ? true : url.searchParams.get('microphoneBtn') === 'true';
- SCREENSHARE_BUTTON = url.searchParams.get('screenshareBtn') === null ? true : url.searchParams.get('screenshareBtn') === 'true';
- RECORDING_BUTTON =
- url.searchParams.get('toolbarRecordingButton') === null ? true : url.searchParams.get('toolbarRecordingButton') === 'true';
- FULLSCREEN_BUTTON = url.searchParams.get('fullscreenBtn') === null ? true : url.searchParams.get('fullscreenBtn') === 'true';
- BROADCASTING_BUTTON =
- url.searchParams.get('toolbarBroadcastingButton') === null ? true : url.searchParams.get('toolbarBroadcastingButton') === 'true';
-
- TOOLBAR_SETTINGS_BUTTON =
- url.searchParams.get('toolbarSettingsBtn') === null ? true : url.searchParams.get('toolbarSettingsBtn') === 'true';
- CAPTIONS_BUTTON = url.searchParams.get('toolbarCaptionsBtn') === null ? true : url.searchParams.get('toolbarCaptionsBtn') === 'true';
-
- LEAVE_BUTTON = url.searchParams.get('leaveBtn') === null ? true : url.searchParams.get('leaveBtn') === 'true';
- ACTIVITIES_PANEL_BUTTON =
- url.searchParams.get('activitiesPanelBtn') === null ? true : url.searchParams.get('activitiesPanelBtn') === 'true';
- CHAT_PANEL_BUTTON = url.searchParams.get('chatPanelBtn') === null ? true : url.searchParams.get('chatPanelBtn') === 'true';
- PARTICIPANTS_PANEL_BUTTON =
- url.searchParams.get('participantsPanelBtn') === null ? true : url.searchParams.get('participantsPanelBtn') === 'true';
- ACTIVITIES_BROADCASTING_ACTIVITY =
- url.searchParams.get('activitiesPanelBroadcastingActivity') === null
- ? true
- : url.searchParams.get('activitiesPanelBroadcastingActivity') === 'true';
- ACTIVITIES_RECORDING_ACTIVITY =
- url.searchParams.get('activitiesPanelRecordingActivity') === null
- ? true
- : url.searchParams.get('activitiesPanelRecordingActivity') === 'true';
-
- DISPLAY_LOGO = url.searchParams.get('displayLogo') === null ? true : url.searchParams.get('displayLogo') === 'true';
- DISPLAY_ROOM_NAME = url.searchParams.get('displayRoomName') === null ? true : url.searchParams.get('displayRoomName') === 'true';
- DISPLAY_PARTICIPANT_NAME =
- url.searchParams.get('displayParticipantName') === null ? true : url.searchParams.get('displayParticipantName') === 'true';
- DISPLAY_AUDIO_DETECTION =
- url.searchParams.get('displayAudioDetection') === null ? true : url.searchParams.get('displayAudioDetection') === 'true';
- VIDEO_CONTROLS = url.searchParams.get('videoControls') === null ? true : url.searchParams.get('videoControls') === 'true';
- PARTICIPANT_MUTE_BUTTON =
- url.searchParams.get('participantMuteBtn') === null ? true : url.searchParams.get('participantMuteBtn') === 'true';
-
- ROOM_NAME = url.searchParams.get('roomName') === null ? `E2ESession${Math.floor(Date.now())}` : url.searchParams.get('roomName');
-
- var webComponent = document.querySelector('openvidu-webcomponent');
-
- webComponent.addEventListener('onTokenRequested', (event) => {
- appendElement('onTokenRequested');
- console.log('Token ready', event.detail);
- joinSession(ROOM_NAME, event.detail);
- });
- webComponent.addEventListener('onReadyToJoin', (event) => appendElement('onReadyToJoin'));
- webComponent.addEventListener('onRoomDisconnected', (event) => appendElement('onRoomDisconnected'));
- webComponent.addEventListener('onParticipantLeft', (event) => appendElement('onParticipantLeft'));
- webComponent.addEventListener('onVideoEnabledChanged', (event) => appendElement('onVideoEnabledChanged-' + event.detail));
- webComponent.addEventListener('onVideoDeviceChanged', (event) => appendElement('onVideoDeviceChanged'));
- webComponent.addEventListener('onAudioEnabledChanged', (eSESSIONvent) => appendElement('onAudioEnabledChanged-' + event.detail));
- webComponent.addEventListener('onAudioDeviceChanged', (event) => appendElement('onAudioDeviceChanged'));
- webComponent.addEventListener('onScreenShareEnabledChanged', (event) => appendElement('onScreenShareEnabledChanged'));
- webComponent.addEventListener('onParticipantsPanelStatusChanged', (event) =>
- appendElement('onParticipantsPanelStatusChanged-' + event.detail.isOpened)
- );
- webComponent.addEventListener('onLangChanged', (event) => appendElement('onLangChanged-' + event.detail.lang));
- webComponent.addEventListener('onChatPanelStatusChanged', (event) =>
- appendElement('onChatPanelStatusChanged-' + event.detail.isOpened)
- );
- webComponent.addEventListener('onActivitiesPanelStatusChanged', (event) =>
- appendElement('onActivitiesPanelStatusChanged-' + event.detail.isOpened)
- );
- webComponent.addEventListener('onSettingsPanelStatusChanged', (event) =>
- appendElement('onSettingsPanelStatusChanged-' + event.detail.isOpened)
- );
- webComponent.addEventListener('onFullscreenEnabledChanged', (event) => appendElement('onFullscreenEnabledChanged-' + event.detail));
-
- webComponent.addEventListener('onRecordingStartRequested', async (event) => {
- appendElement('onRecordingStartRequested-' + event.detail.roomName);
- // Can't test the recording
- // RECORDING_ID = await startRecording(SESSION_NAME);
- });
- // Can't test the recording
- // webComponent.addEventListener('onRecordingStopRequested', async (event) => {
- // appendElement('onRecordingStopRequested-' + event.detail.roomName);
- // await stopRecording(RECORDING_ID);
- // });
-
- webComponent.addEventListener('onRecordingStopRequested', async (event) => {
- appendElement('onRecordingStopRequested-' + event.detail.roomName);
- });
-
- // Can't test the recording
- // webComponent.addEventListener('onActivitiesPanelStopRecordingClicked', async (event) => {
- // appendElement('onActivitiesPanelStopRecordingClicked');
- // await stopRecording(RECORDING_ID);
- // });
-
- webComponent.addEventListener('onRecordingDeleteRequested', (event) => {
- const { roomName, recordingId } = event.detail;
- appendElement(`onRecordingDeleteRequested-${roomName}-${recordingId}`);
- });
-
- webComponent.addEventListener('onBroadcastingStartRequested', async (event) => {
- const { roomName, broadcastUrl } = event.detail;
- appendElement(`onBroadcastingStartRequested-${roomName}-${broadcastUrl}`);
- });
-
- webComponent.addEventListener('onActivitiesPanelStopBroadcastingClicked', async (event) => {
- appendElement('onActivitiesPanelStopBroadcastingClicked');
- });
-
- webComponent.addEventListener('onRoomCreated', (event) => {
- var room = event.detail;
- appendElement('onRoomCreated');
-
- room.on('disconnected', (e) => {
- console.log('Room disconnected', e);
- appendElement('roomDisconnected');
- });
- });
-
- webComponent.addEventListener('onParticipantCreated', (event) => {
- var participant = event.detail;
- appendElement(`${participant.name}-onParticipantCreated`);
- });
-
- setWebcomponentAttributes();
-});
-
-function setWebcomponentAttributes() {
- var webComponent = document.querySelector('openvidu-webcomponent');
- webComponent.participantName = PARTICIPANT_NAME;
-
- webComponent.minimal = MINIMAL;
- webComponent.lang = LANG;
- if (CUSTOM_LANG_OPTIONS) {
- webComponent.langOptions = [
- { name: 'Esp', lang: 'es' },
- { name: 'Eng', lang: 'en' }
- ];
- }
- // TODO: Uncomment when the captions are implemented
- // webComponent.captionsLang = CAPTIONS_LANG;
- // if (CUSTOM_CAPTIONS_LANG_OPTIONS) {
- // webComponent.captionsLangOptions = [
- // { name: 'Esp', lang: 'es-ES' },
- // { name: 'Eng', lang: 'en-US' }
- // ];
- // }
- if (FAKE_DEVICES) {
- console.warn('Using fake devices');
- monkeyPatchMediaDevices();
- }
- if (FAKE_RECORDINGS) {
- console.warn('Using fake recordings');
- webComponent.recordingActivityRecordingsList = [{ status: 'ready', filename: 'fakeRecording' }];
- }
-
- webComponent.prejoin = PREJOIN;
- webComponent.videoEnabled = VIDEO_ENABLED;
- webComponent.audioEnabled = AUDIO_ENABLED;
- webComponent.toolbarCameraButton = CAMERA_BUTTON;
- webComponent.toolbarMicrophoneButton = MICROPHONE_BUTTON;
- webComponent.toolbarScreenshareButton = SCREENSHARE_BUTTON;
-
- webComponent.toolbarFullscreenButton = FULLSCREEN_BUTTON;
- webComponent.toolbarSettingsButton = TOOLBAR_SETTINGS_BUTTON;
- // webComponent.toolbarCaptionsButton = CAPTIONS_BUTTON;
- webComponent.toolbarLeaveButton = LEAVE_BUTTON;
- webComponent.toolbarRecordingButton = RECORDING_BUTTON;
- webComponent.toolbarBroadcastingButton = BROADCASTING_BUTTON;
- webComponent.toolbarActivitiesPanelButton = ACTIVITIES_PANEL_BUTTON;
- webComponent.toolbarChatPanelButton = CHAT_PANEL_BUTTON;
- webComponent.toolbarParticipantsPanelButton = PARTICIPANTS_PANEL_BUTTON;
- webComponent.toolbarDisplayLogo = DISPLAY_LOGO;
- webComponent.toolbarDisplayRoomName = DISPLAY_ROOM_NAME;
- webComponent.streamDisplayParticipantName = DISPLAY_PARTICIPANT_NAME;
- webComponent.streamDisplayAudioDetection = DISPLAY_AUDIO_DETECTION;
- webComponent.streamVideoControls = VIDEO_CONTROLS;
- webComponent.participantPanelItemMuteButton = PARTICIPANT_MUTE_BUTTON;
-
- webComponent.activitiesPanelRecordingActivity = ACTIVITIES_RECORDING_ACTIVITY;
- webComponent.activitiesPanelBroadcastingActivity = ACTIVITIES_BROADCASTING_ACTIVITY;
-}
-
-function appendElement(id) {
- var eventsDiv = document.getElementById('events');
- eventsDiv.setAttribute('style', 'position: absolute;');
- var element = document.createElement('div');
- element.setAttribute('id', id);
- element.setAttribute('style', 'height: 1px;');
- eventsDiv.appendChild(element);
-}
-
-async function joinSession(roomName, participantName) {
- var webComponent = document.querySelector('openvidu-webcomponent');
- console.log('Joining session', roomName, participantName);
- try {
- webComponent.token = await getToken(roomName, participantName);
- } catch (error) {
- webComponent.tokenError = error;
- }
-}
-
-async function getToken(roomName, participantName) {
- try {
- const response = await fetch(OPENVIDU_CALL_SERVER_URL + '/call/api/rooms', {
- method: 'POST',
- headers: {
- 'Content-Type': 'application/json'
- // 'Authorization': 'Basic ' + btoa('OPENVIDUAPP:' + OPENVIDU_SECRET),
- },
- body: JSON.stringify({
- participantName,
- roomName
- })
- });
-
- if (!response.ok) {
- throw new Error('Failed to fetch token');
- }
-
- const data = await response.json();
- return data.token;
- } catch (error) {
- console.error(error);
- throw error;
- }
-}
diff --git a/openvidu-components-angular/e2e/webcomponent-app/index.html b/openvidu-components-angular/e2e/webcomponent-app/index.html
deleted file mode 100644
index 6fae701e..00000000
--- a/openvidu-components-angular/e2e/webcomponent-app/index.html
+++ /dev/null
@@ -1,40 +0,0 @@
-
-
-
- openvidu-web-component
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/openvidu-components-angular/e2e/webcomponent-app/utils/filter-stream.js b/openvidu-components-angular/e2e/webcomponent-app/utils/filter-stream.js
deleted file mode 100644
index 485bc547..00000000
--- a/openvidu-components-angular/e2e/webcomponent-app/utils/filter-stream.js
+++ /dev/null
@@ -1,30 +0,0 @@
-class FilterStream {
- constructor(stream, label) {
- const videoTrack = stream.getVideoTracks()[0];
- const { width, height } = videoTrack.getSettings();
- const canvas = document.createElement('canvas');
- const ctx = canvas.getContext('2d');
- const video = document.createElement('video');
- video.srcObject = new MediaStream([videoTrack]);
- video.play();
-
- video.addEventListener('play', () => {
- const loop = () => {
- if (!video.paused && !video.ended) {
- ctx.filter = 'grayscale(100%)';
- ctx.drawImage(video, 0, 0, video.videoWidth, video.videoHeight, 0, 0, video.videoWidth, video.videoHeight);
- setTimeout(loop, 33);
- }
- };
- loop();
- });
- this.outputStream = canvas.captureStream();
-
- Object.defineProperty(this.outputStream.getVideoTracks()[0], 'label', {
- writable: true,
- value: label
- });
- }
-}
-
-export { FilterStream };
diff --git a/openvidu-components-angular/e2e/webcomponent-app/utils/media-devices.js b/openvidu-components-angular/e2e/webcomponent-app/utils/media-devices.js
deleted file mode 100644
index 1e901209..00000000
--- a/openvidu-components-angular/e2e/webcomponent-app/utils/media-devices.js
+++ /dev/null
@@ -1,77 +0,0 @@
-// Ideally we'd use an editor or import shaders directly from the API.
-import { FilterStream } from './filter-stream.js';
-
-export default function monkeyPatchMediaDevices() {
- const enumerateDevicesFn = MediaDevices.prototype.enumerateDevices;
- const getUserMediaFn = MediaDevices.prototype.getUserMedia;
- const getDisplayMediaFn = MediaDevices.prototype.getDisplayMedia;
-
- const fakeVideoDevice = {
- deviceId: 'virtual',
- groupID: '',
- kind: 'videoinput',
- label: 'custom_fake_video_1'
- };
-
- const fakeAudioDevice = {
- deviceId: 'virtual',
- groupID: '',
- kind: 'audioinput',
- label: 'custom_fake_audio_1'
- };
-
- const enumerateDevicesMonkeyPatch = async function () {
- const res = await enumerateDevicesFn.call(navigator.mediaDevices);
- res.push(fakeVideoDevice);
- res.push(fakeAudioDevice);
- return res;
- };
-
- const getUserMediaMonkeyPatch = async function () {
- const args = arguments[0];
- const { deviceId, advanced, width, height } = args.video;
- if (deviceId === 'virtual' || deviceId?.exact === 'virtual') {
- const constraints = {
- video: {
- facingMode: args.facingMode,
- advanced,
- width,
- height
- },
- audio: false
- };
- const res = await getUserMediaFn.call(navigator.mediaDevices, constraints);
-
- if (res) {
- const filter = new FilterStream(res, fakeVideoDevice.label);
- return filter.outputStream;
- }
-
- return res;
- }
-
- return getUserMediaFn.call(navigator.mediaDevices, ...arguments);
- };
-
- const getDisplayMediaMonkeyPatch = async function () {
- const { video, audio } = arguments[0];
-
- const screenVideoElement = document.getElementsByClassName('OV_video-element screen-type')[0];
- const currentTrackLabel = screenVideoElement?.srcObject?.getVideoTracks()[0]?.label;
- const res = await getDisplayMediaFn.call(navigator.mediaDevices, { video, audio });
-
- if (res && currentTrackLabel && currentTrackLabel !== 'custom_fake_screen') {
- const filter = new FilterStream(res, 'custom_fake_screen');
- return filter.outputStream;
- }
-
- return res;
- };
-
- MediaDevices.prototype.enumerateDevices = enumerateDevicesMonkeyPatch;
- navigator.mediaDevices.enumerateDevices = enumerateDevicesMonkeyPatch;
- MediaDevices.prototype.getUserMedia = getUserMediaMonkeyPatch;
- navigator.mediaDevices.getUserMedia = getUserMediaMonkeyPatch;
- MediaDevices.prototype.getDisplayMedia = getDisplayMediaMonkeyPatch;
- navigator.mediaDevices.getDisplayMedia = getDisplayMediaMonkeyPatch;
-}
diff --git a/openvidu-components-angular/e2e/webcomponent-e2e/captions.test.ts b/openvidu-components-angular/e2e/webcomponent-e2e/captions.test.ts
deleted file mode 100644
index 74ce961f..00000000
--- a/openvidu-components-angular/e2e/webcomponent-e2e/captions.test.ts
+++ /dev/null
@@ -1,180 +0,0 @@
-import { Builder, Key, WebDriver } from 'selenium-webdriver';
-import { OPENVIDU_CALL_SERVER } from '../config';
-import { WebComponentConfig } from '../selenium.conf';
-import { OpenViduComponentsPO } from '../utils.po.test';
-
-const url = `${WebComponentConfig.appUrl}?OV_URL=${OPENVIDU_CALL_SERVER}`;
-
-//TODO: Uncomment when captions are implemented
-// describe('Testing captions features', () => {
-// let browser: WebDriver;
-// let utils: OpenViduComponentsPO;
-// async function createChromeBrowser(): Promise {
-// return await new Builder()
-// .forBrowser(WebComponentConfig.browserName)
-// .withCapabilities(WebComponentConfig.browserCapabilities)
-// .setChromeOptions(WebComponentConfig.browserOptions)
-// .usingServer(WebComponentConfig.seleniumAddress)
-// .build();
-// }
-
-// beforeEach(async () => {
-// browser = await createChromeBrowser();
-// utils = new OpenViduComponentsPO(browser);
-// });
-
-// afterEach(async () => {
-// await browser.quit();
-// });
-
-// it('should OPEN the CAPTIONS container', async () => {
-// await browser.get(`${url}&prejoin=false`);
-
-// await utils.checkSessionIsPresent();
-
-// // Checking if toolbar is present
-// await utils.checkToolbarIsPresent();
-
-// // Open more options menu
-// await utils.clickOn('#more-options-btn');
-
-// await browser.sleep(500);
-
-// // Checking if button panel is present
-// await utils.waitForElement('#more-options-menu');
-// expect(await utils.isPresent('#more-options-menu')).toBeTrue();
-
-// // Checking if captions button is present
-// await utils.waitForElement('#captions-btn');
-// expect(await utils.isPresent('#captions-btn')).toBeTrue();
-// await utils.clickOn('#captions-btn');
-
-// await utils.waitForElement('.captions-container');
-// });
-
-// it('should OPEN the SETTINGS panel from captions button', async () => {
-// await browser.get(`${url}&prejoin=false`);
-
-// await utils.checkSessionIsPresent();
-
-// // Checking if toolbar is present
-// await utils.checkToolbarIsPresent();
-
-// // Open more options menu
-// await utils.clickOn('#more-options-btn');
-
-// await browser.sleep(500);
-
-// // Checking if button panel is present
-// await utils.waitForElement('#more-options-menu');
-// expect(await utils.isPresent('#more-options-menu')).toBeTrue();
-
-// // Checking if captions button is present
-// await utils.waitForElement('#captions-btn');
-// expect(await utils.isPresent('#captions-btn')).toBeTrue();
-// await utils.clickOn('#captions-btn');
-
-// await utils.waitForElement('.captions-container');
-// await utils.waitForElement('#caption-settings-btn');
-// await utils.clickOn('#caption-settings-btn');
-
-// await browser.sleep(500);
-
-// await utils.waitForElement('.settings-container');
-// expect(await utils.isPresent('.settings-container')).toBeTrue();
-
-// await utils.waitForElement('ov-captions-settings');
-
-// // Expect caption button is not present
-// expect(await utils.isPresent('#caption-settings-btn')).toBeFalse();
-// });
-
-// it('should TOGGLE the CAPTIONS container from settings panel', async () => {
-// await browser.get(`${url}&prejoin=false`);
-
-// await utils.checkSessionIsPresent();
-
-// // Checking if toolbar is present
-// await utils.checkToolbarIsPresent();
-
-// // Open more options menu
-// await utils.clickOn('#more-options-btn');
-
-// await browser.sleep(500);
-
-// // Checking if button panel is present
-// await utils.waitForElement('#more-options-menu');
-// expect(await utils.isPresent('#more-options-menu')).toBeTrue();
-
-// // Checking if captions button is present
-// await utils.waitForElement('#captions-btn');
-// expect(await utils.isPresent('#captions-btn')).toBeTrue();
-// await utils.clickOn('#captions-btn');
-
-// await utils.waitForElement('.captions-container');
-// await utils.waitForElement('#caption-settings-btn');
-// await utils.clickOn('#caption-settings-btn');
-
-// await browser.sleep(500);
-
-// await utils.waitForElement('.settings-container');
-// expect(await utils.isPresent('.settings-container')).toBeTrue();
-
-// await utils.waitForElement('ov-captions-settings');
-
-// expect(await utils.isPresent('.captions-container')).toBeTrue();
-// await utils.clickOn('#captions-toggle-slide');
-// expect(await utils.isPresent('.captions-container')).toBeFalse();
-
-// await browser.sleep(200);
-
-// await utils.clickOn('#captions-toggle-slide');
-// expect(await utils.isPresent('.captions-container')).toBeTrue();
-// });
-
-// it('should change the CAPTIONS language', async () => {
-// await browser.get(`${url}&prejoin=false`);
-
-// await utils.checkSessionIsPresent();
-
-// // Checking if toolbar is present
-// await utils.checkToolbarIsPresent();
-
-// // Open more options menu
-// await utils.clickOn('#more-options-btn');
-
-// await browser.sleep(500);
-
-// // Checking if button panel is present
-// await utils.waitForElement('#more-options-menu');
-// expect(await utils.isPresent('#more-options-menu')).toBeTrue();
-
-// // Checking if captions button is present
-// await utils.waitForElement('#captions-btn');
-// expect(await utils.isPresent('#captions-btn')).toBeTrue();
-// await utils.clickOn('#captions-btn');
-
-// await utils.waitForElement('.captions-container');
-// await utils.waitForElement('#caption-settings-btn');
-// await utils.clickOn('#caption-settings-btn');
-
-// await browser.sleep(500);
-
-// await utils.waitForElement('.settings-container');
-// expect(await utils.isPresent('.settings-container')).toBeTrue();
-
-// await utils.waitForElement('ov-captions-settings');
-
-// expect(await utils.isPresent('.captions-container')).toBeTrue();
-
-// await utils.clickOn('.lang-button');
-// await browser.sleep(500);
-
-// await utils.clickOn('#es-ES');
-// await utils.clickOn('.panel-close-button');
-
-// const button = await utils.waitForElement('#caption-settings-btn');
-// expect(await button.getText()).toEqual('settingsEspañol');
-
-// });
-// });
\ No newline at end of file
diff --git a/openvidu-components-angular/openvidu-webcomponent-build.js b/openvidu-components-angular/openvidu-webcomponent-build.js
deleted file mode 100644
index dd35a81b..00000000
--- a/openvidu-components-angular/openvidu-webcomponent-build.js
+++ /dev/null
@@ -1,65 +0,0 @@
-import fs from 'fs-extra';
-import concat from 'concat';
-const packageJson = fs.readJSONSync('./package.json');
-const VERSION = packageJson.version;
-const ovWebcomponentRCPath = './dist/openvidu-webcomponent-rc';
-const ovWebcomponentProdPath = './dist/openvidu-webcomponent';
-
-export const buildWebcomponent = async () => {
- console.log('Building OpenVidu Web Component (' + VERSION + ')');
- const tutorialWcPath = '../../openvidu-tutorials/openvidu-webcomponent/web';
- const e2eWcPath = './e2e/webcomponent-app';
-
- try {
- await buildElement();
- await copyFiles(tutorialWcPath);
- await copyFiles(e2eWcPath);
- await renameWebComponentTestName(e2eWcPath);
-
- console.log(`OpenVidu Web Component (${VERSION}) built`);
- } catch (error) {
- console.error(error);
- }
-};
-
-async function buildElement() {
- const files = [`${ovWebcomponentRCPath}/polyfills.js`, /*`${ovWebcomponentRCPath}/runtime.js`,*/ `${ovWebcomponentRCPath}/main.js`];
- try {
- for (const file of files) {
- if (!fs.existsSync(file)) {
- console.error(`Error: File ${file} does not exist`);
- throw new Error(`Missing required file: ${file}`);
- }
- }
- await fs.ensureDir('./dist/openvidu-webcomponent');
- await concat(files, `${ovWebcomponentProdPath}/openvidu-webcomponent-${VERSION}.js`);
- await fs.copy(`${ovWebcomponentRCPath}/styles.css`, `${ovWebcomponentProdPath}/openvidu-webcomponent-${VERSION}.css`);
-
- if (fs.existsSync(`${ovWebcomponentRCPath}/assets`)) {
- await fs.copy(`${ovWebcomponentRCPath}/assets`, `${ovWebcomponentProdPath}/assets`);
- }
- } catch (err) {
- console.error('Error executing build function in webcomponent-builds.js');
- throw err;
- }
-}
-
-function renameWebComponentTestName(dir) {
- fs.renameSync(`${dir}/openvidu-webcomponent-${VERSION}.js`, `${dir}/openvidu-webcomponent-dev.js`);
- fs.renameSync(`${dir}/openvidu-webcomponent-${VERSION}.css`, `${dir}/openvidu-webcomponent-dev.css`);
-}
-
-async function copyFiles(destination) {
- if (fs.existsSync(destination)) {
- try {
- console.log(`Copying openvidu-webcomponent files from: ${ovWebcomponentProdPath} to: ${destination}`);
- await fs.ensureDir(ovWebcomponentProdPath);
- await fs.copy(ovWebcomponentProdPath, destination);
- } catch (err) {
- console.error('Error executing copy function in webcomponent-builds.js');
- throw err;
- }
- }
-}
-
-await buildWebcomponent();
diff --git a/openvidu-components-angular/package-lock.json b/openvidu-components-angular/package-lock.json
index f08aabbd..ce8888ba 100644
--- a/openvidu-components-angular/package-lock.json
+++ b/openvidu-components-angular/package-lock.json
@@ -30,7 +30,6 @@
"@angular/cli": "19.2.9",
"@angular/compiler": "19.2.8",
"@angular/compiler-cli": "19.2.8",
- "@angular/elements": "19.2.8",
"@compodoc/compodoc": "^1.1.25",
"@types/jasmine": "^5.1.4",
"@types/node": "20.12.14",
@@ -773,6 +772,20 @@
"dev": true,
"license": "0BSD"
},
+ "node_modules/@angular-devkit/build-angular/node_modules/watchpack": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz",
+ "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "glob-to-regexp": "^0.4.1",
+ "graceful-fs": "^4.1.2"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
"node_modules/@angular-devkit/build-webpack": {
"version": "0.1902.9",
"resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1902.9.tgz",
@@ -1026,23 +1039,6 @@
"zone.js": "~0.15.0"
}
},
- "node_modules/@angular/elements": {
- "version": "19.2.8",
- "resolved": "https://registry.npmjs.org/@angular/elements/-/elements-19.2.8.tgz",
- "integrity": "sha512-rcTf0/p8B7ESWcFFrY7XScSCnITMyJKYkK4RG0dc7gGfXQsTbiBV8SgZe/Zvf12zqpk5OMIeOZoLEqiv6t2WVg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "tslib": "^2.3.0"
- },
- "engines": {
- "node": "^18.19.1 || ^20.11.1 || >=22.0.0"
- },
- "peerDependencies": {
- "@angular/core": "19.2.8",
- "rxjs": "^6.5.3 || ^7.4.0"
- }
- },
"node_modules/@angular/forms": {
"version": "19.2.8",
"resolved": "https://registry.npmjs.org/@angular/forms/-/forms-19.2.8.tgz",
@@ -1152,9 +1148,9 @@
}
},
"node_modules/@babel/compat-data": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.1.tgz",
- "integrity": "sha512-Q+E+rd/yBzNQhXkG+zQnF58e4zoZfBedaxwzPmicKsiK3nt8iJYrSrDbjwFFDGC4f+rPafqRaPH6TsDoSvMf7A==",
+ "version": "7.27.2",
+ "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.2.tgz",
+ "integrity": "sha512-TUtMJYRPyUb/9aU8f3K0mjmjf6M9N5Woshn2CS6nqJSeJtTtQcpLUXjGt9vbF8ZGff0El99sWkLgzwW3VXnxZQ==",
"dev": true,
"license": "MIT",
"engines": {
@@ -1240,13 +1236,13 @@
}
},
"node_modules/@babel/helper-compilation-targets": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.1.tgz",
- "integrity": "sha512-2YaDd/Rd9E598B5+WIc8wJPmWETiiJXFYVE60oX8FDohv7rAUU3CQj+A1MgeEmcsk2+dQuEjIe/GDvig0SqL4g==",
+ "version": "7.27.2",
+ "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz",
+ "integrity": "sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/compat-data": "^7.27.1",
+ "@babel/compat-data": "^7.27.2",
"@babel/helper-validator-option": "^7.27.1",
"browserslist": "^4.24.0",
"lru-cache": "^5.1.1",
@@ -1574,9 +1570,9 @@
}
},
"node_modules/@babel/parser": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.1.tgz",
- "integrity": "sha512-I0dZ3ZpCrJ1c04OqlNsQcKiZlsrXf/kkE4FXzID9rIOYICsAbA8mMDzhW/luRNAHdCNt7os/u8wenklZDlUVUQ==",
+ "version": "7.27.2",
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.2.tgz",
+ "integrity": "sha512-QYLs8299NA7WM/bZAdp+CviYYkVoYXlDW2rzliy3chxd1PQjej7JORuMJDJXJUb9g0TT+B99EwaVLKmX+sPXWw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -2253,14 +2249,15 @@
}
},
"node_modules/@babel/plugin-transform-object-rest-spread": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.27.1.tgz",
- "integrity": "sha512-/sSliVc9gHE20/7D5qsdGlq7RG5NCDTWsAhyqzGuq174EtWJoGzIu1BQ7G56eDsTcy1jseBZwv50olSdXOlGuA==",
+ "version": "7.27.2",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.27.2.tgz",
+ "integrity": "sha512-AIUHD7xJ1mCrj3uPozvtngY3s0xpv7Nu7DoUSnzNY6Xam1Cy4rUznR//pvMHOhQ4AvbCexhbqXCtpxGHOGOO6g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-compilation-targets": "^7.27.1",
+ "@babel/helper-compilation-targets": "^7.27.2",
"@babel/helper-plugin-utils": "^7.27.1",
+ "@babel/plugin-transform-destructuring": "^7.27.1",
"@babel/plugin-transform-parameters": "^7.27.1"
},
"engines": {
@@ -2751,14 +2748,14 @@
}
},
"node_modules/@babel/template": {
- "version": "7.27.1",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.1.tgz",
- "integrity": "sha512-Fyo3ghWMqkHHpHQCoBs2VnYjR4iWFFjguTDEqA5WgZDOrFesVjMhMM2FSqTKSoUSDO1VQtavj8NFpdRBEvJTtg==",
+ "version": "7.27.2",
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz",
+ "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==",
"dev": true,
"license": "MIT",
"dependencies": {
"@babel/code-frame": "^7.27.1",
- "@babel/parser": "^7.27.1",
+ "@babel/parser": "^7.27.2",
"@babel/types": "^7.27.1"
},
"engines": {
@@ -3878,9 +3875,9 @@
}
},
"node_modules/@eslint/core": {
- "version": "0.13.0",
- "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.13.0.tgz",
- "integrity": "sha512-yfkgDw1KR66rkT5A8ci4irzDysN7FRpq3ttJolR88OqQikAWqwA8j5VZyas+vjyBNFIJ7MfybJ9plMILI2UrCw==",
+ "version": "0.14.0",
+ "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.14.0.tgz",
+ "integrity": "sha512-qIbV0/JZr7iSDjqAc60IqbLdsj9GDt16xQtWD+B78d/HAlvysGdZZ6rpJHGAc2T0FQx1X6thsSPdnoiGKdNtdg==",
"dev": true,
"license": "Apache-2.0",
"peer": true,
@@ -3957,14 +3954,17 @@
"peer": true
},
"node_modules/@eslint/js": {
- "version": "9.26.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.26.0.tgz",
- "integrity": "sha512-I9XlJawFdSMvWjDt6wksMCrgns5ggLNfFwFvnShsleWruvXM514Qxk8V246efTw+eo9JABvVz+u3q2RiAowKxQ==",
+ "version": "9.27.0",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.27.0.tgz",
+ "integrity": "sha512-G5JD9Tu5HJEu4z2Uo4aHY2sLV64B7CDMXxFzqzjl3NKd6RVzSXNoE80jk7Y0lJkTTkjiIhBAqmlYwjuBY3tvpA==",
"dev": true,
"license": "MIT",
"peer": true,
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "url": "https://eslint.org/donate"
}
},
"node_modules/@eslint/object-schema": {
@@ -3979,14 +3979,14 @@
}
},
"node_modules/@eslint/plugin-kit": {
- "version": "0.2.8",
- "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.8.tgz",
- "integrity": "sha512-ZAoA40rNMPwSm+AeHpCq8STiNAwzWLJuP8Xv4CHIc9wv/PSuExjMrmjfYNj682vW0OOiZ1HKxzvjQr9XZIisQA==",
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.1.tgz",
+ "integrity": "sha512-0J+zgWxHN+xXONWIyPWKFMgVuJoZuGiIFu8yxk7RJjxkzpGmyja5wRFqZIVtjDVOQpV+Rw0iOAjYPE2eQyjr0w==",
"dev": true,
"license": "Apache-2.0",
"peer": true,
"dependencies": {
- "@eslint/core": "^0.13.0",
+ "@eslint/core": "^0.14.0",
"levn": "^0.4.1"
},
"engines": {
@@ -4050,9 +4050,9 @@
}
},
"node_modules/@humanwhocodes/retry": {
- "version": "0.4.2",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.2.tgz",
- "integrity": "sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==",
+ "version": "0.4.3",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz",
+ "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==",
"dev": true,
"license": "Apache-2.0",
"peer": true,
@@ -4065,13 +4065,13 @@
}
},
"node_modules/@inquirer/checkbox": {
- "version": "4.1.5",
- "resolved": "https://registry.npmjs.org/@inquirer/checkbox/-/checkbox-4.1.5.tgz",
- "integrity": "sha512-swPczVU+at65xa5uPfNP9u3qx/alNwiaykiI/ExpsmMSQW55trmZcwhYWzw/7fj+n6Q8z1eENvR7vFfq9oPSAQ==",
+ "version": "4.1.6",
+ "resolved": "https://registry.npmjs.org/@inquirer/checkbox/-/checkbox-4.1.6.tgz",
+ "integrity": "sha512-62u896rWCtKKE43soodq5e/QcRsA22I+7/4Ov7LESWnKRO6BVo2A1DFLDmXL9e28TB0CfHc3YtkbPm7iwajqkg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@inquirer/core": "^10.1.10",
+ "@inquirer/core": "^10.1.11",
"@inquirer/figures": "^1.0.11",
"@inquirer/type": "^3.0.6",
"ansi-escapes": "^4.3.2",
@@ -4090,13 +4090,13 @@
}
},
"node_modules/@inquirer/confirm": {
- "version": "5.1.9",
- "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-5.1.9.tgz",
- "integrity": "sha512-NgQCnHqFTjF7Ys2fsqK2WtnA8X1kHyInyG+nMIuHowVTIgIuS10T4AznI/PvbqSpJqjCUqNBlKGh1v3bwLFL4w==",
+ "version": "5.1.10",
+ "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-5.1.10.tgz",
+ "integrity": "sha512-FxbQ9giWxUWKUk2O5XZ6PduVnH2CZ/fmMKMBkH71MHJvWr7WL5AHKevhzF1L5uYWB2P548o1RzVxrNd3dpmk6g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@inquirer/core": "^10.1.10",
+ "@inquirer/core": "^10.1.11",
"@inquirer/type": "^3.0.6"
},
"engines": {
@@ -4112,9 +4112,9 @@
}
},
"node_modules/@inquirer/core": {
- "version": "10.1.10",
- "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-10.1.10.tgz",
- "integrity": "sha512-roDaKeY1PYY0aCqhRmXihrHjoSW2A00pV3Ke5fTpMCkzcGF64R8e0lw3dK+eLEHwS4vB5RnW1wuQmvzoRul8Mw==",
+ "version": "10.1.11",
+ "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-10.1.11.tgz",
+ "integrity": "sha512-BXwI/MCqdtAhzNQlBEFE7CEflhPkl/BqvAuV/aK6lW3DClIfYVDWPP/kXuXHtBWC7/EEbNqd/1BGq2BGBBnuxw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -4140,13 +4140,13 @@
}
},
"node_modules/@inquirer/editor": {
- "version": "4.2.10",
- "resolved": "https://registry.npmjs.org/@inquirer/editor/-/editor-4.2.10.tgz",
- "integrity": "sha512-5GVWJ+qeI6BzR6TIInLP9SXhWCEcvgFQYmcRG6d6RIlhFjM5TyG18paTGBgRYyEouvCmzeco47x9zX9tQEofkw==",
+ "version": "4.2.11",
+ "resolved": "https://registry.npmjs.org/@inquirer/editor/-/editor-4.2.11.tgz",
+ "integrity": "sha512-YoZr0lBnnLFPpfPSNsQ8IZyKxU47zPyVi9NLjCWtna52//M/xuL0PGPAxHxxYhdOhnvY2oBafoM+BI5w/JK7jw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@inquirer/core": "^10.1.10",
+ "@inquirer/core": "^10.1.11",
"@inquirer/type": "^3.0.6",
"external-editor": "^3.1.0"
},
@@ -4163,13 +4163,13 @@
}
},
"node_modules/@inquirer/expand": {
- "version": "4.0.12",
- "resolved": "https://registry.npmjs.org/@inquirer/expand/-/expand-4.0.12.tgz",
- "integrity": "sha512-jV8QoZE1fC0vPe6TnsOfig+qwu7Iza1pkXoUJ3SroRagrt2hxiL+RbM432YAihNR7m7XnU0HWl/WQ35RIGmXHw==",
+ "version": "4.0.13",
+ "resolved": "https://registry.npmjs.org/@inquirer/expand/-/expand-4.0.13.tgz",
+ "integrity": "sha512-HgYNWuZLHX6q5y4hqKhwyytqAghmx35xikOGY3TcgNiElqXGPas24+UzNPOwGUZa5Dn32y25xJqVeUcGlTv+QQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@inquirer/core": "^10.1.10",
+ "@inquirer/core": "^10.1.11",
"@inquirer/type": "^3.0.6",
"yoctocolors-cjs": "^2.1.2"
},
@@ -4196,13 +4196,13 @@
}
},
"node_modules/@inquirer/input": {
- "version": "4.1.9",
- "resolved": "https://registry.npmjs.org/@inquirer/input/-/input-4.1.9.tgz",
- "integrity": "sha512-mshNG24Ij5KqsQtOZMgj5TwEjIf+F2HOESk6bjMwGWgcH5UBe8UoljwzNFHqdMbGYbgAf6v2wU/X9CAdKJzgOA==",
+ "version": "4.1.10",
+ "resolved": "https://registry.npmjs.org/@inquirer/input/-/input-4.1.10.tgz",
+ "integrity": "sha512-kV3BVne3wJ+j6reYQUZi/UN9NZGZLxgc/tfyjeK3mrx1QI7RXPxGp21IUTv+iVHcbP4ytZALF8vCHoxyNSC6qg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@inquirer/core": "^10.1.10",
+ "@inquirer/core": "^10.1.11",
"@inquirer/type": "^3.0.6"
},
"engines": {
@@ -4218,13 +4218,13 @@
}
},
"node_modules/@inquirer/number": {
- "version": "3.0.12",
- "resolved": "https://registry.npmjs.org/@inquirer/number/-/number-3.0.12.tgz",
- "integrity": "sha512-7HRFHxbPCA4e4jMxTQglHJwP+v/kpFsCf2szzfBHy98Wlc3L08HL76UDiA87TOdX5fwj2HMOLWqRWv9Pnn+Z5Q==",
+ "version": "3.0.13",
+ "resolved": "https://registry.npmjs.org/@inquirer/number/-/number-3.0.13.tgz",
+ "integrity": "sha512-IrLezcg/GWKS8zpKDvnJ/YTflNJdG0qSFlUM/zNFsdi4UKW/CO+gaJpbMgQ20Q58vNKDJbEzC6IebdkprwL6ew==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@inquirer/core": "^10.1.10",
+ "@inquirer/core": "^10.1.11",
"@inquirer/type": "^3.0.6"
},
"engines": {
@@ -4240,13 +4240,13 @@
}
},
"node_modules/@inquirer/password": {
- "version": "4.0.12",
- "resolved": "https://registry.npmjs.org/@inquirer/password/-/password-4.0.12.tgz",
- "integrity": "sha512-FlOB0zvuELPEbnBYiPaOdJIaDzb2PmJ7ghi/SVwIHDDSQ2K4opGBkF+5kXOg6ucrtSUQdLhVVY5tycH0j0l+0g==",
+ "version": "4.0.13",
+ "resolved": "https://registry.npmjs.org/@inquirer/password/-/password-4.0.13.tgz",
+ "integrity": "sha512-NN0S/SmdhakqOTJhDwOpeBEEr8VdcYsjmZHDb0rblSh2FcbXQOr+2IApP7JG4WE3sxIdKytDn4ed3XYwtHxmJQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@inquirer/core": "^10.1.10",
+ "@inquirer/core": "^10.1.11",
"@inquirer/type": "^3.0.6",
"ansi-escapes": "^4.3.2"
},
@@ -4293,13 +4293,13 @@
}
},
"node_modules/@inquirer/rawlist": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/@inquirer/rawlist/-/rawlist-4.1.0.tgz",
- "integrity": "sha512-6ob45Oh9pXmfprKqUiEeMz/tjtVTFQTgDDz1xAMKMrIvyrYjAmRbQZjMJfsictlL4phgjLhdLu27IkHNnNjB7g==",
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/@inquirer/rawlist/-/rawlist-4.1.1.tgz",
+ "integrity": "sha512-VBUC0jPN2oaOq8+krwpo/mf3n/UryDUkKog3zi+oIi8/e5hykvdntgHUB9nhDM78RubiyR1ldIOfm5ue+2DeaQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@inquirer/core": "^10.1.10",
+ "@inquirer/core": "^10.1.11",
"@inquirer/type": "^3.0.6",
"yoctocolors-cjs": "^2.1.2"
},
@@ -4316,13 +4316,13 @@
}
},
"node_modules/@inquirer/search": {
- "version": "3.0.12",
- "resolved": "https://registry.npmjs.org/@inquirer/search/-/search-3.0.12.tgz",
- "integrity": "sha512-H/kDJA3kNlnNIjB8YsaXoQI0Qccgf0Na14K1h8ExWhNmUg2E941dyFPrZeugihEa9AZNW5NdsD/NcvUME83OPQ==",
+ "version": "3.0.13",
+ "resolved": "https://registry.npmjs.org/@inquirer/search/-/search-3.0.13.tgz",
+ "integrity": "sha512-9g89d2c5Izok/Gw/U7KPC3f9kfe5rA1AJ24xxNZG0st+vWekSk7tB9oE+dJv5JXd0ZSijomvW0KPMoBd8qbN4g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@inquirer/core": "^10.1.10",
+ "@inquirer/core": "^10.1.11",
"@inquirer/figures": "^1.0.11",
"@inquirer/type": "^3.0.6",
"yoctocolors-cjs": "^2.1.2"
@@ -4340,13 +4340,13 @@
}
},
"node_modules/@inquirer/select": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/@inquirer/select/-/select-4.2.0.tgz",
- "integrity": "sha512-KkXQ4aSySWimpV4V/TUJWdB3tdfENZUU765GjOIZ0uPwdbGIG6jrxD4dDf1w68uP+DVtfNhr1A92B+0mbTZ8FA==",
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/@inquirer/select/-/select-4.2.1.tgz",
+ "integrity": "sha512-gt1Kd5XZm+/ddemcT3m23IP8aD8rC9drRckWoP/1f7OL46Yy2FGi8DSmNjEjQKtPl6SV96Kmjbl6p713KXJ/Jg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@inquirer/core": "^10.1.10",
+ "@inquirer/core": "^10.1.11",
"@inquirer/figures": "^1.0.11",
"@inquirer/type": "^3.0.6",
"ansi-escapes": "^4.3.2",
@@ -4559,9 +4559,9 @@
}
},
"node_modules/@jsonjoy.com/util": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/@jsonjoy.com/util/-/util-1.5.0.tgz",
- "integrity": "sha512-ojoNsrIuPI9g6o8UxhraZQSyF2ByJanAY4cTFbc8Mf2AXEF4aQRGY1dJxyJpuyav8r9FGflEt/Ff3u5Nt6YMPA==",
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/@jsonjoy.com/util/-/util-1.6.0.tgz",
+ "integrity": "sha512-sw/RMbehRhN68WRtcKCpQOPfnH6lLP4GJfqzi3iYej8tnzpZUDr6UkZYJjcjjC0FWEJOJbyM3PTIwxucUmDG2A==",
"dev": true,
"license": "Apache-2.0",
"engines": {
@@ -4738,29 +4738,6 @@
"integrity": "sha512-vOifgZhkndgybdvoRITzRkIueWWSiCKuEUXXK6Q4FaJsFvRJuwgg++vqFUMlL0Uox62U5aEXFhHxlhV7Ja5e3Q==",
"license": "Apache-2.0"
},
- "node_modules/@modelcontextprotocol/sdk": {
- "version": "1.11.0",
- "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.11.0.tgz",
- "integrity": "sha512-k/1pb70eD638anoi0e8wUGAlbMJXyvdV4p62Ko+EZ7eBe1xMx8Uhak1R5DgfoofsK5IBBnRwsYGTaLZl+6/+RQ==",
- "dev": true,
- "license": "MIT",
- "peer": true,
- "dependencies": {
- "content-type": "^1.0.5",
- "cors": "^2.8.5",
- "cross-spawn": "^7.0.3",
- "eventsource": "^3.0.2",
- "express": "^5.0.1",
- "express-rate-limit": "^7.5.0",
- "pkce-challenge": "^5.0.0",
- "raw-body": "^3.0.0",
- "zod": "^3.23.8",
- "zod-to-json-schema": "^3.24.1"
- },
- "engines": {
- "node": ">=18"
- }
- },
"node_modules/@msgpackr-extract/msgpackr-extract-darwin-arm64": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-arm64/-/msgpackr-extract-darwin-arm64-3.0.3.tgz",
@@ -5468,9 +5445,9 @@
}
},
"node_modules/@npmcli/redact": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-3.2.1.tgz",
- "integrity": "sha512-VW+1SW5CkP1aSegFQx7/AawdzM6b4UP6R3QET192ON4IAP6iK++IG6Ztg+bkoeGN8lh/prOzT+ZkNgWQrAXLNQ==",
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-3.2.2.tgz",
+ "integrity": "sha512-7VmYAmk4csGv08QzrDKScdzn11jHPFGyqJW39FyPgPuAp3zIaUmuCo1yxw9aGs+NEJuTGQ9Gwqpt93vtJubucg==",
"dev": true,
"license": "ISC",
"engines": {
@@ -5907,9 +5884,9 @@
}
},
"node_modules/@rollup/rollup-android-arm-eabi": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.40.1.tgz",
- "integrity": "sha512-kxz0YeeCrRUHz3zyqvd7n+TVRlNyTifBsmnmNPtk3hQURUyG9eAB+usz6DAwagMusjx/zb3AjvDUvhFGDAexGw==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.41.0.tgz",
+ "integrity": "sha512-KxN+zCjOYHGwCl4UCtSfZ6jrq/qi88JDUtiEFk8LELEHq2Egfc/FgW+jItZiOLRuQfb/3xJSgFuNPC9jzggX+A==",
"cpu": [
"arm"
],
@@ -5921,9 +5898,9 @@
]
},
"node_modules/@rollup/rollup-android-arm64": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.40.1.tgz",
- "integrity": "sha512-PPkxTOisoNC6TpnDKatjKkjRMsdaWIhyuMkA4UsBXT9WEZY4uHezBTjs6Vl4PbqQQeu6oION1w2voYZv9yquCw==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.41.0.tgz",
+ "integrity": "sha512-yDvqx3lWlcugozax3DItKJI5j05B0d4Kvnjx+5mwiUpWramVvmAByYigMplaoAQ3pvdprGCTCE03eduqE/8mPQ==",
"cpu": [
"arm64"
],
@@ -5935,9 +5912,9 @@
]
},
"node_modules/@rollup/rollup-darwin-arm64": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.40.1.tgz",
- "integrity": "sha512-VWXGISWFY18v/0JyNUy4A46KCFCb9NVsH+1100XP31lud+TzlezBbz24CYzbnA4x6w4hx+NYCXDfnvDVO6lcAA==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.41.0.tgz",
+ "integrity": "sha512-2KOU574vD3gzcPSjxO0eyR5iWlnxxtmW1F5CkNOHmMlueKNCQkxR6+ekgWyVnz6zaZihpUNkGxjsYrkTJKhkaw==",
"cpu": [
"arm64"
],
@@ -5949,9 +5926,9 @@
]
},
"node_modules/@rollup/rollup-darwin-x64": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.40.1.tgz",
- "integrity": "sha512-nIwkXafAI1/QCS7pxSpv/ZtFW6TXcNUEHAIA9EIyw5OzxJZQ1YDrX+CL6JAIQgZ33CInl1R6mHet9Y/UZTg2Bw==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.41.0.tgz",
+ "integrity": "sha512-gE5ACNSxHcEZyP2BA9TuTakfZvULEW4YAOtxl/A/YDbIir/wPKukde0BNPlnBiP88ecaN4BJI2TtAd+HKuZPQQ==",
"cpu": [
"x64"
],
@@ -5963,9 +5940,9 @@
]
},
"node_modules/@rollup/rollup-freebsd-arm64": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.40.1.tgz",
- "integrity": "sha512-BdrLJ2mHTrIYdaS2I99mriyJfGGenSaP+UwGi1kB9BLOCu9SR8ZpbkmmalKIALnRw24kM7qCN0IOm6L0S44iWw==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.41.0.tgz",
+ "integrity": "sha512-GSxU6r5HnWij7FoSo7cZg3l5GPg4HFLkzsFFh0N/b16q5buW1NAWuCJ+HMtIdUEi6XF0qH+hN0TEd78laRp7Dg==",
"cpu": [
"arm64"
],
@@ -5977,9 +5954,9 @@
]
},
"node_modules/@rollup/rollup-freebsd-x64": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.40.1.tgz",
- "integrity": "sha512-VXeo/puqvCG8JBPNZXZf5Dqq7BzElNJzHRRw3vjBE27WujdzuOPecDPc/+1DcdcTptNBep3861jNq0mYkT8Z6Q==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.41.0.tgz",
+ "integrity": "sha512-KGiGKGDg8qLRyOWmk6IeiHJzsN/OYxO6nSbT0Vj4MwjS2XQy/5emsmtoqLAabqrohbgLWJ5GV3s/ljdrIr8Qjg==",
"cpu": [
"x64"
],
@@ -5991,9 +5968,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm-gnueabihf": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.40.1.tgz",
- "integrity": "sha512-ehSKrewwsESPt1TgSE/na9nIhWCosfGSFqv7vwEtjyAqZcvbGIg4JAcV7ZEh2tfj/IlfBeZjgOXm35iOOjadcg==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.41.0.tgz",
+ "integrity": "sha512-46OzWeqEVQyX3N2/QdiU/CMXYDH/lSHpgfBkuhl3igpZiaB3ZIfSjKuOnybFVBQzjsLwkus2mjaESy8H41SzvA==",
"cpu": [
"arm"
],
@@ -6005,9 +5982,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm-musleabihf": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.40.1.tgz",
- "integrity": "sha512-m39iO/aaurh5FVIu/F4/Zsl8xppd76S4qoID8E+dSRQvTyZTOI2gVk3T4oqzfq1PtcvOfAVlwLMK3KRQMaR8lg==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.41.0.tgz",
+ "integrity": "sha512-lfgW3KtQP4YauqdPpcUZHPcqQXmTmH4nYU0cplNeW583CMkAGjtImw4PKli09NFi2iQgChk4e9erkwlfYem6Lg==",
"cpu": [
"arm"
],
@@ -6019,9 +5996,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm64-gnu": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.40.1.tgz",
- "integrity": "sha512-Y+GHnGaku4aVLSgrT0uWe2o2Rq8te9hi+MwqGF9r9ORgXhmHK5Q71N757u0F8yU1OIwUIFy6YiJtKjtyktk5hg==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.41.0.tgz",
+ "integrity": "sha512-nn8mEyzMbdEJzT7cwxgObuwviMx6kPRxzYiOl6o/o+ChQq23gfdlZcUNnt89lPhhz3BYsZ72rp0rxNqBSfqlqw==",
"cpu": [
"arm64"
],
@@ -6033,9 +6010,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm64-musl": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.40.1.tgz",
- "integrity": "sha512-jEwjn3jCA+tQGswK3aEWcD09/7M5wGwc6+flhva7dsQNRZZTe30vkalgIzV4tjkopsTS9Jd7Y1Bsj6a4lzz8gQ==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.41.0.tgz",
+ "integrity": "sha512-l+QK99je2zUKGd31Gh+45c4pGDAqZSuWQiuRFCdHYC2CSiO47qUWsCcenrI6p22hvHZrDje9QjwSMAFL3iwXwQ==",
"cpu": [
"arm64"
],
@@ -6047,9 +6024,9 @@
]
},
"node_modules/@rollup/rollup-linux-loongarch64-gnu": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.40.1.tgz",
- "integrity": "sha512-ySyWikVhNzv+BV/IDCsrraOAZ3UaC8SZB67FZlqVwXwnFhPihOso9rPOxzZbjp81suB1O2Topw+6Ug3JNegejQ==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.41.0.tgz",
+ "integrity": "sha512-WbnJaxPv1gPIm6S8O/Wg+wfE/OzGSXlBMbOe4ie+zMyykMOeqmgD1BhPxZQuDqwUN+0T/xOFtL2RUWBspnZj3w==",
"cpu": [
"loong64"
],
@@ -6061,9 +6038,9 @@
]
},
"node_modules/@rollup/rollup-linux-powerpc64le-gnu": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.40.1.tgz",
- "integrity": "sha512-BvvA64QxZlh7WZWqDPPdt0GH4bznuL6uOO1pmgPnnv86rpUpc8ZxgZwcEgXvo02GRIZX1hQ0j0pAnhwkhwPqWg==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.41.0.tgz",
+ "integrity": "sha512-eRDWR5t67/b2g8Q/S8XPi0YdbKcCs4WQ8vklNnUYLaSWF+Cbv2axZsp4jni6/j7eKvMLYCYdcsv8dcU+a6QNFg==",
"cpu": [
"ppc64"
],
@@ -6075,9 +6052,9 @@
]
},
"node_modules/@rollup/rollup-linux-riscv64-gnu": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.40.1.tgz",
- "integrity": "sha512-EQSP+8+1VuSulm9RKSMKitTav89fKbHymTf25n5+Yr6gAPZxYWpj3DzAsQqoaHAk9YX2lwEyAf9S4W8F4l3VBQ==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.41.0.tgz",
+ "integrity": "sha512-TWrZb6GF5jsEKG7T1IHwlLMDRy2f3DPqYldmIhnA2DVqvvhY2Ai184vZGgahRrg8k9UBWoSlHv+suRfTN7Ua4A==",
"cpu": [
"riscv64"
],
@@ -6089,9 +6066,9 @@
]
},
"node_modules/@rollup/rollup-linux-riscv64-musl": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.40.1.tgz",
- "integrity": "sha512-n/vQ4xRZXKuIpqukkMXZt9RWdl+2zgGNx7Uda8NtmLJ06NL8jiHxUawbwC+hdSq1rrw/9CghCpEONor+l1e2gA==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.41.0.tgz",
+ "integrity": "sha512-ieQljaZKuJpmWvd8gW87ZmSFwid6AxMDk5bhONJ57U8zT77zpZ/TPKkU9HpnnFrM4zsgr4kiGuzbIbZTGi7u9A==",
"cpu": [
"riscv64"
],
@@ -6103,9 +6080,9 @@
]
},
"node_modules/@rollup/rollup-linux-s390x-gnu": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.40.1.tgz",
- "integrity": "sha512-h8d28xzYb98fMQKUz0w2fMc1XuGzLLjdyxVIbhbil4ELfk5/orZlSTpF/xdI9C8K0I8lCkq+1En2RJsawZekkg==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.41.0.tgz",
+ "integrity": "sha512-/L3pW48SxrWAlVsKCN0dGLB2bi8Nv8pr5S5ocSM+S0XCn5RCVCXqi8GVtHFsOBBCSeR+u9brV2zno5+mg3S4Aw==",
"cpu": [
"s390x"
],
@@ -6117,9 +6094,9 @@
]
},
"node_modules/@rollup/rollup-linux-x64-gnu": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.40.1.tgz",
- "integrity": "sha512-XiK5z70PEFEFqcNj3/zRSz/qX4bp4QIraTy9QjwJAb/Z8GM7kVUsD0Uk8maIPeTyPCP03ChdI+VVmJriKYbRHQ==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.41.0.tgz",
+ "integrity": "sha512-XMLeKjyH8NsEDCRptf6LO8lJk23o9wvB+dJwcXMaH6ZQbbkHu2dbGIUindbMtRN6ux1xKi16iXWu6q9mu7gDhQ==",
"cpu": [
"x64"
],
@@ -6131,9 +6108,9 @@
]
},
"node_modules/@rollup/rollup-linux-x64-musl": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.40.1.tgz",
- "integrity": "sha512-2BRORitq5rQ4Da9blVovzNCMaUlyKrzMSvkVR0D4qPuOy/+pMCrh1d7o01RATwVy+6Fa1WBw+da7QPeLWU/1mQ==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.41.0.tgz",
+ "integrity": "sha512-m/P7LycHZTvSQeXhFmgmdqEiTqSV80zn6xHaQ1JSqwCtD1YGtwEK515Qmy9DcB2HK4dOUVypQxvhVSy06cJPEg==",
"cpu": [
"x64"
],
@@ -6145,9 +6122,9 @@
]
},
"node_modules/@rollup/rollup-win32-arm64-msvc": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.40.1.tgz",
- "integrity": "sha512-b2bcNm9Kbde03H+q+Jjw9tSfhYkzrDUf2d5MAd1bOJuVplXvFhWz7tRtWvD8/ORZi7qSCy0idW6tf2HgxSXQSg==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.41.0.tgz",
+ "integrity": "sha512-4yodtcOrFHpbomJGVEqZ8fzD4kfBeCbpsUy5Pqk4RluXOdsWdjLnjhiKy2w3qzcASWd04fp52Xz7JKarVJ5BTg==",
"cpu": [
"arm64"
],
@@ -6159,9 +6136,9 @@
]
},
"node_modules/@rollup/rollup-win32-ia32-msvc": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.40.1.tgz",
- "integrity": "sha512-DfcogW8N7Zg7llVEfpqWMZcaErKfsj9VvmfSyRjCyo4BI3wPEfrzTtJkZG6gKP/Z92wFm6rz2aDO7/JfiR/whA==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.41.0.tgz",
+ "integrity": "sha512-tmazCrAsKzdkXssEc65zIE1oC6xPHwfy9d5Ta25SRCDOZS+I6RypVVShWALNuU9bxIfGA0aqrmzlzoM5wO5SPQ==",
"cpu": [
"ia32"
],
@@ -6173,9 +6150,9 @@
]
},
"node_modules/@rollup/rollup-win32-x64-msvc": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.40.1.tgz",
- "integrity": "sha512-ECyOuDeH3C1I8jH2MK1RtBJW+YPMvSfT0a5NN0nHfQYnDSJ6tUiZH3gzwVP5/Kfh/+Tt7tpWVF9LXNTnhTJ3kA==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.41.0.tgz",
+ "integrity": "sha512-h1J+Yzjo/X+0EAvR2kIXJDuTuyT7drc+t2ALY0nIcGPbTatNOf0VWdhEA2Z4AAjv6X1NJV7SYo5oCTYRJhSlVA==",
"cpu": [
"x64"
],
@@ -6187,9 +6164,9 @@
]
},
"node_modules/@rollup/wasm-node": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/@rollup/wasm-node/-/wasm-node-4.40.1.tgz",
- "integrity": "sha512-3nXUKfAq1nD/vgQi7ncLNyn8jx1PAsN6njSS9baCpI9JHk92Y/JOWZib7HvLJ5BBZ4MC5NSeqkpUKnmceXyzXA==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/@rollup/wasm-node/-/wasm-node-4.41.0.tgz",
+ "integrity": "sha512-G+y2Uj8XvsPWMA+kVfKPcrhOWtcwKaCCr8KNZPiADfJV4+g4HUeJKuT8Fz71F7PNVD3t+xqX8rlpIULAlAJ+sQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -6247,9 +6224,9 @@
}
},
"node_modules/@sigstore/protobuf-specs": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.4.1.tgz",
- "integrity": "sha512-7MJXQhIm7dWF9zo7rRtMYh8d2gSnc3+JddeQOTIg6gUN7FjcuckZ9EwGq+ReeQtbbl3Tbf5YqRrWxA1DMfIn+w==",
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.4.2.tgz",
+ "integrity": "sha512-F2ye+n1INNhqT0MW+LfUEvTUPc/nS70vICJcxorKl7/gV9CO39+EDCw+qHNKEqvsDWk++yGVKCbzK1qLPvmC8g==",
"dev": true,
"license": "Apache-2.0",
"engines": {
@@ -6532,9 +6509,9 @@
}
},
"node_modules/@types/cors": {
- "version": "2.8.17",
- "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz",
- "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==",
+ "version": "2.8.18",
+ "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.18.tgz",
+ "integrity": "sha512-nX3d0sxJW41CqQvfOzVG1NCTXfFDrDWIghCZncpHeWlVFd81zxB/DLhg7avFg6eHLCRX7ckBmoIIcqa++upvJA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -6551,9 +6528,9 @@
}
},
"node_modules/@types/dom-webcodecs": {
- "version": "0.1.14",
- "resolved": "https://registry.npmjs.org/@types/dom-webcodecs/-/dom-webcodecs-0.1.14.tgz",
- "integrity": "sha512-ba9aF0qARLLQpLihONIRbj8VvAdUxO+5jIxlscVcDAQTcJmq5qVr781+ino5qbQUJUmO21cLP2eLeXYWzao5Vg==",
+ "version": "0.1.15",
+ "resolved": "https://registry.npmjs.org/@types/dom-webcodecs/-/dom-webcodecs-0.1.15.tgz",
+ "integrity": "sha512-omOlCPvTWyPm4ZE5bZUhlSvnHM2ZWM2U+1cPiYFL/e8aV5O9MouELp+L4dMKNTON0nTeHqEg+KWDfFQMY5Wkaw==",
"license": "MIT"
},
"node_modules/@types/eslint": {
@@ -6586,9 +6563,9 @@
"license": "MIT"
},
"node_modules/@types/express": {
- "version": "4.17.21",
- "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz",
- "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==",
+ "version": "4.17.22",
+ "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.22.tgz",
+ "integrity": "sha512-eZUmSnhRX9YRSkplpz0N+k6NljUUn5l3EWZIKZvYzhvMphEuNiyyy1viH/ejgt66JWgALwC/gtSUAeQKtSwW/w==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -6642,9 +6619,9 @@
}
},
"node_modules/@types/jasmine": {
- "version": "5.1.7",
- "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-5.1.7.tgz",
- "integrity": "sha512-DVOfk9FaClQfNFpSfaML15jjB5cjffDMvjtph525sroR5BEAW2uKnTOYUTqTFuZFjNvH0T5XMIydvIctnUKufw==",
+ "version": "5.1.8",
+ "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-5.1.8.tgz",
+ "integrity": "sha512-u7/CnvRdh6AaaIzYjCgUuVbREFgulhX05Qtf6ZtW+aOcjCKKVvKgpkPYJBFTZSHtFBYimzU4zP0V2vrEsq9Wcg==",
"dev": true,
"license": "MIT"
},
@@ -6683,9 +6660,9 @@
}
},
"node_modules/@types/qs": {
- "version": "6.9.18",
- "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.18.tgz",
- "integrity": "sha512-kK7dgTYDyGqS+e2Q4aK9X3D7q234CIZ1Bv0q/7Z5IwRDoADNU81xXJK/YVyLbLTZCoIwUoDoffFeF+p/eIklAA==",
+ "version": "6.14.0",
+ "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.14.0.tgz",
+ "integrity": "sha512-eOunJqu0K1923aExK6y8p6fsihYEn/BYuQ4g0CxAAgFc4b/ZLN4CrsRZ55srTdqoiLzU2B2evC+apEIxprEzkQ==",
"dev": true,
"license": "MIT"
},
@@ -6983,20 +6960,29 @@
}
},
"node_modules/accepts": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/accepts/-/accepts-2.0.0.tgz",
- "integrity": "sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==",
+ "version": "1.3.8",
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
+ "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
- "mime-types": "^3.0.0",
- "negotiator": "^1.0.0"
+ "mime-types": "~2.1.34",
+ "negotiator": "0.6.3"
},
"engines": {
"node": ">= 0.6"
}
},
+ "node_modules/accepts/node_modules/negotiator": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
+ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
"node_modules/acorn": {
"version": "8.14.1",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz",
@@ -7467,13 +7453,6 @@
"node": ">= 0.8"
}
},
- "node_modules/basic-auth/node_modules/safe-buffer": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
- "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/basic-ftp": {
"version": "5.0.5",
"resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.5.tgz",
@@ -7587,25 +7566,58 @@
}
},
"node_modules/body-parser": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-2.2.0.tgz",
- "integrity": "sha512-02qvAaxv8tp7fBa/mw1ga98OGm+eCbqzJOKoRt70sLmfEEi+jyBYVTDGfCL/k06/4EMk/z01gCe7HoCH/f2LTg==",
+ "version": "1.20.3",
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz",
+ "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
- "bytes": "^3.1.2",
- "content-type": "^1.0.5",
- "debug": "^4.4.0",
- "http-errors": "^2.0.0",
- "iconv-lite": "^0.6.3",
- "on-finished": "^2.4.1",
- "qs": "^6.14.0",
- "raw-body": "^3.0.0",
- "type-is": "^2.0.0"
+ "bytes": "3.1.2",
+ "content-type": "~1.0.5",
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "http-errors": "2.0.0",
+ "iconv-lite": "0.4.24",
+ "on-finished": "2.4.1",
+ "qs": "6.13.0",
+ "raw-body": "2.5.2",
+ "type-is": "~1.6.18",
+ "unpipe": "1.0.0"
},
"engines": {
- "node": ">=18"
+ "node": ">= 0.8",
+ "npm": "1.2.8000 || >= 1.4.16"
+ }
+ },
+ "node_modules/body-parser/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ms": "2.0.0"
+ }
+ },
+ "node_modules/body-parser/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/body-parser/node_modules/on-finished": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
+ "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ee-first": "1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.8"
}
},
"node_modules/bonjour-service": {
@@ -7993,9 +8005,9 @@
}
},
"node_modules/caniuse-lite": {
- "version": "1.0.30001717",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001717.tgz",
- "integrity": "sha512-auPpttCq6BDEG8ZAuHJIplGw6GODhjw+/11e7IjpnYCxZcW/ONgPs0KVBJ0d1bY3e2+7PRe5RCLyP+PfwVgkYw==",
+ "version": "1.0.30001718",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001718.tgz",
+ "integrity": "sha512-AflseV1ahcSunK53NfEs9gFWgOEmzr0f+kaMFA4xiLZlr9Hzt7HxcSpIFcnNCUkz6R6dWKa54rUz3HUmI3nVcw==",
"dev": true,
"funding": [
{
@@ -8500,6 +8512,27 @@
"node": ">= 0.6"
}
},
+ "node_modules/compression/node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
+ },
"node_modules/concat": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/concat/-/concat-1.0.3.tgz",
@@ -8574,12 +8607,11 @@
"license": "MIT"
},
"node_modules/content-disposition": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-1.0.0.tgz",
- "integrity": "sha512-Au9nRL8VNUut/XSzbQA38+M78dzP4D+eqg3gfJHMIHHYa3bg067xj1KxMUWj+VULbiZMowKngFFbKczUrNJ1mg==",
+ "version": "0.5.4",
+ "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
+ "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"safe-buffer": "5.2.1"
},
@@ -8587,6 +8619,27 @@
"node": ">= 0.6"
}
},
+ "node_modules/content-disposition/node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
+ },
"node_modules/content-type": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
@@ -8615,15 +8668,11 @@
}
},
"node_modules/cookie-signature": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.2.2.tgz",
- "integrity": "sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==",
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
+ "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==",
"dev": true,
- "license": "MIT",
- "peer": true,
- "engines": {
- "node": ">=6.6.0"
- }
+ "license": "MIT"
},
"node_modules/copy-anything": {
"version": "2.0.6",
@@ -8890,9 +8939,9 @@
"license": "MIT"
},
"node_modules/debug": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz",
- "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==",
+ "version": "4.4.1",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz",
+ "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -9203,9 +9252,9 @@
"license": "MIT"
},
"node_modules/electron-to-chromium": {
- "version": "1.5.149",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.149.tgz",
- "integrity": "sha512-UyiO82eb9dVOx8YO3ajDf9jz2kKyt98DEITRdeLPstOEuTlLzDA4Gyq5K9he71TQziU5jUVu2OAu5N48HmQiyQ==",
+ "version": "1.5.155",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.155.tgz",
+ "integrity": "sha512-ps5KcGGmwL8VaeJlvlDlu4fORQpv3+GIcF5I3f9tUKUlJ/wsysh6HU8P5L1XWRYeXfA0oJd4PyM8ds8zTFf6Ng==",
"dev": true,
"license": "ISC"
},
@@ -9236,9 +9285,9 @@
}
},
"node_modules/encodeurl": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
- "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
+ "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
"dev": true,
"license": "MIT",
"engines": {
@@ -9256,6 +9305,20 @@
"iconv-lite": "^0.6.2"
}
},
+ "node_modules/encoding/node_modules/iconv-lite": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
+ "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/end-of-stream": {
"version": "1.4.4",
"resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
@@ -9297,20 +9360,6 @@
"node": ">=10.0.0"
}
},
- "node_modules/engine.io/node_modules/accepts": {
- "version": "1.3.8",
- "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
- "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mime-types": "~2.1.34",
- "negotiator": "0.6.3"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
"node_modules/engine.io/node_modules/debug": {
"version": "4.3.7",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
@@ -9329,39 +9378,6 @@
}
}
},
- "node_modules/engine.io/node_modules/mime-db": {
- "version": "1.52.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
- "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/engine.io/node_modules/mime-types": {
- "version": "2.1.35",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
- "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mime-db": "1.52.0"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/engine.io/node_modules/negotiator": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
- "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
"node_modules/engine.io/node_modules/ws": {
"version": "8.17.1",
"resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz",
@@ -9662,9 +9678,9 @@
}
},
"node_modules/eslint": {
- "version": "9.26.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.26.0.tgz",
- "integrity": "sha512-Hx0MOjPh6uK9oq9nVsATZKE/Wlbai7KFjfCuw9UHaguDW3x+HF0O5nIi3ud39TWgrTjTO5nHxmL3R1eANinWHQ==",
+ "version": "9.27.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.27.0.tgz",
+ "integrity": "sha512-ixRawFQuMB9DZ7fjU3iGGganFDp3+45bPOdaRurcFHSXO1e/sYwUX/FtQZpLZJR6SjMoJH8hR2pPEAfDyCoU2Q==",
"dev": true,
"license": "MIT",
"peer": true,
@@ -9673,14 +9689,13 @@
"@eslint-community/regexpp": "^4.12.1",
"@eslint/config-array": "^0.20.0",
"@eslint/config-helpers": "^0.2.1",
- "@eslint/core": "^0.13.0",
+ "@eslint/core": "^0.14.0",
"@eslint/eslintrc": "^3.3.1",
- "@eslint/js": "9.26.0",
- "@eslint/plugin-kit": "^0.2.8",
+ "@eslint/js": "9.27.0",
+ "@eslint/plugin-kit": "^0.3.1",
"@humanfs/node": "^0.16.6",
"@humanwhocodes/module-importer": "^1.0.1",
"@humanwhocodes/retry": "^0.4.2",
- "@modelcontextprotocol/sdk": "^1.8.0",
"@types/estree": "^1.0.6",
"@types/json-schema": "^7.0.15",
"ajv": "^6.12.4",
@@ -9704,8 +9719,7 @@
"lodash.merge": "^4.6.2",
"minimatch": "^3.1.2",
"natural-compare": "^1.4.0",
- "optionator": "^0.9.3",
- "zod": "^3.24.2"
+ "optionator": "^0.9.3"
},
"bin": {
"eslint": "bin/eslint.js"
@@ -9739,9 +9753,9 @@
}
},
"node_modules/eslint-plugin-prettier": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.3.1.tgz",
- "integrity": "sha512-vad9VWgEm9xaVXRNmb4aeOt0PWDc61IAdzghkbYQ2wavgax148iKoX1rNJcgkBGCipzLzOnHYVgL7xudM9yccQ==",
+ "version": "5.4.0",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.4.0.tgz",
+ "integrity": "sha512-BvQOvUhkVQM1i63iMETK9Hjud9QhqBnbtT1Zc642p9ynzBuCe5pybkOnvqZIBypXmMlsGcnU4HZ8sCTPfpAexA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -9956,31 +9970,6 @@
"node": ">=0.8.x"
}
},
- "node_modules/eventsource": {
- "version": "3.0.6",
- "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-3.0.6.tgz",
- "integrity": "sha512-l19WpE2m9hSuyP06+FbuUUf1G+R0SFLrtQfbRb9PRr+oimOfxQhgGCbVaXg5IvZyyTThJsxh6L/srkMiCeBPDA==",
- "dev": true,
- "license": "MIT",
- "peer": true,
- "dependencies": {
- "eventsource-parser": "^3.0.1"
- },
- "engines": {
- "node": ">=18.0.0"
- }
- },
- "node_modules/eventsource-parser": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.0.1.tgz",
- "integrity": "sha512-VARTJ9CYeuQYb0pZEPbzi740OWFgpHe7AYJ2WFZVnUDUQp5Dk2yJUgF36YsZ81cOyxT0QxmXD2EQpapAouzWVA==",
- "dev": true,
- "license": "MIT",
- "peer": true,
- "engines": {
- "node": ">=18.0.0"
- }
- },
"node_modules/execa": {
"version": "8.0.1",
"resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz",
@@ -10026,85 +10015,197 @@
"license": "Apache-2.0"
},
"node_modules/express": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/express/-/express-5.1.0.tgz",
- "integrity": "sha512-DT9ck5YIRU+8GYzzU5kT3eHGA5iL+1Zd0EutOmTE9Dtk+Tvuzd23VBU+ec7HPNSTxXYO55gPV/hq4pSBJDjFpA==",
+ "version": "4.21.2",
+ "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz",
+ "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
- "accepts": "^2.0.0",
- "body-parser": "^2.2.0",
- "content-disposition": "^1.0.0",
- "content-type": "^1.0.5",
- "cookie": "^0.7.1",
- "cookie-signature": "^1.2.1",
- "debug": "^4.4.0",
- "encodeurl": "^2.0.0",
- "escape-html": "^1.0.3",
- "etag": "^1.8.1",
- "finalhandler": "^2.1.0",
- "fresh": "^2.0.0",
- "http-errors": "^2.0.0",
- "merge-descriptors": "^2.0.0",
- "mime-types": "^3.0.0",
- "on-finished": "^2.4.1",
- "once": "^1.4.0",
- "parseurl": "^1.3.3",
- "proxy-addr": "^2.0.7",
- "qs": "^6.14.0",
- "range-parser": "^1.2.1",
- "router": "^2.2.0",
- "send": "^1.1.0",
- "serve-static": "^2.2.0",
- "statuses": "^2.0.1",
- "type-is": "^2.0.1",
- "vary": "^1.1.2"
+ "accepts": "~1.3.8",
+ "array-flatten": "1.1.1",
+ "body-parser": "1.20.3",
+ "content-disposition": "0.5.4",
+ "content-type": "~1.0.4",
+ "cookie": "0.7.1",
+ "cookie-signature": "1.0.6",
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "encodeurl": "~2.0.0",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "finalhandler": "1.3.1",
+ "fresh": "0.5.2",
+ "http-errors": "2.0.0",
+ "merge-descriptors": "1.0.3",
+ "methods": "~1.1.2",
+ "on-finished": "2.4.1",
+ "parseurl": "~1.3.3",
+ "path-to-regexp": "0.1.12",
+ "proxy-addr": "~2.0.7",
+ "qs": "6.13.0",
+ "range-parser": "~1.2.1",
+ "safe-buffer": "5.2.1",
+ "send": "0.19.0",
+ "serve-static": "1.16.2",
+ "setprototypeof": "1.2.0",
+ "statuses": "2.0.1",
+ "type-is": "~1.6.18",
+ "utils-merge": "1.0.1",
+ "vary": "~1.1.2"
},
"engines": {
- "node": ">= 18"
+ "node": ">= 0.10.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/express"
}
},
- "node_modules/express-rate-limit": {
- "version": "7.5.0",
- "resolved": "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-7.5.0.tgz",
- "integrity": "sha512-eB5zbQh5h+VenMPM3fh+nw1YExi5nMr6HUCR62ELSP11huvxm/Uir1H1QEyTkk5QX6A58pX6NmaTMceKZ0Eodg==",
+ "node_modules/express/node_modules/cookie": {
+ "version": "0.7.1",
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz",
+ "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==",
"dev": true,
"license": "MIT",
- "peer": true,
"engines": {
- "node": ">= 16"
- },
- "funding": {
- "url": "https://github.com/sponsors/express-rate-limit"
- },
- "peerDependencies": {
- "express": "^4.11 || 5 || ^5.0.0-beta.1"
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/express/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ms": "2.0.0"
+ }
+ },
+ "node_modules/express/node_modules/debug/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/express/node_modules/encodeurl": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
+ "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8"
}
},
"node_modules/express/node_modules/finalhandler": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-2.1.0.tgz",
- "integrity": "sha512-/t88Ty3d5JWQbWYgaOGCCYfXRwV1+be02WqYYlL6h0lEiUAMPM8o8qKGO01YIkOHzka2up08wvgYD0mDiI+q3Q==",
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz",
+ "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
- "debug": "^4.4.0",
- "encodeurl": "^2.0.0",
- "escape-html": "^1.0.3",
- "on-finished": "^2.4.1",
- "parseurl": "^1.3.3",
- "statuses": "^2.0.1"
+ "debug": "2.6.9",
+ "encodeurl": "~2.0.0",
+ "escape-html": "~1.0.3",
+ "on-finished": "2.4.1",
+ "parseurl": "~1.3.3",
+ "statuses": "2.0.1",
+ "unpipe": "~1.0.0"
},
"engines": {
"node": ">= 0.8"
}
},
+ "node_modules/express/node_modules/fresh": {
+ "version": "0.5.2",
+ "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
+ "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/express/node_modules/on-finished": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
+ "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ee-first": "1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/express/node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/express/node_modules/send": {
+ "version": "0.19.0",
+ "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz",
+ "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "fresh": "0.5.2",
+ "http-errors": "2.0.0",
+ "mime": "1.6.0",
+ "ms": "2.1.3",
+ "on-finished": "2.4.1",
+ "range-parser": "~1.2.1",
+ "statuses": "2.0.1"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/express/node_modules/send/node_modules/encodeurl": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
+ "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/express/node_modules/statuses": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
+ "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
"node_modules/extend": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
@@ -10127,19 +10228,6 @@
"node": ">=4"
}
},
- "node_modules/external-editor/node_modules/iconv-lite": {
- "version": "0.4.24",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
- "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "safer-buffer": ">= 2.1.2 < 3"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/extract-zip": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz",
@@ -10355,16 +10443,6 @@
"ms": "2.0.0"
}
},
- "node_modules/finalhandler/node_modules/encodeurl": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
- "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8"
- }
- },
"node_modules/finalhandler/node_modules/ms": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
@@ -10372,29 +10450,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/finalhandler/node_modules/on-finished": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
- "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ee-first": "1.1.1"
- },
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/finalhandler/node_modules/statuses": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
- "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
"node_modules/find-cache-dir": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-4.0.0.tgz",
@@ -10516,29 +10571,6 @@
"node": ">= 6"
}
},
- "node_modules/form-data/node_modules/mime-db": {
- "version": "1.52.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
- "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/form-data/node_modules/mime-types": {
- "version": "2.1.35",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
- "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mime-db": "1.52.0"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
"node_modules/forwarded": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
@@ -11057,13 +11089,6 @@
"util-deprecate": "~1.0.1"
}
},
- "node_modules/hpack.js/node_modules/safe-buffer": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
- "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/hpack.js/node_modules/string_decoder": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
@@ -11168,9 +11193,9 @@
}
},
"node_modules/http-cache-semantics": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz",
- "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==",
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz",
+ "integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==",
"dev": true,
"license": "BSD-2-Clause"
},
@@ -11198,6 +11223,16 @@
"node": ">= 0.8"
}
},
+ "node_modules/http-errors/node_modules/statuses": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
+ "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
"node_modules/http-parser-js": {
"version": "0.5.10",
"resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.10.tgz",
@@ -11355,13 +11390,13 @@
}
},
"node_modules/iconv-lite": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
- "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
+ "version": "0.4.24",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
+ "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "safer-buffer": ">= 2.1.2 < 3.0.0"
+ "safer-buffer": ">= 2.1.2 < 3"
},
"engines": {
"node": ">=0.10.0"
@@ -11480,9 +11515,9 @@
"license": "MIT"
},
"node_modules/immutable": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.1.tgz",
- "integrity": "sha512-3jatXi9ObIsPGr3N5hGw/vWWcTkq6hUYhpQz4k0wLC+owqWi/LiugIw9x0EdNZ2yGedKN/HzePiBvaJRXa0Ujg==",
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.2.tgz",
+ "integrity": "sha512-qHKXW1q6liAk1Oys6umoaZbDRqjcjgSrbnrifHsfsttza7zcvRAsL7mMV6xWcyhwQy7Xj5v4hhbr6b+iDYwlmQ==",
"dev": true,
"license": "MIT"
},
@@ -11577,13 +11612,13 @@
}
},
"node_modules/ipaddr.js": {
- "version": "1.9.1",
- "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
- "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz",
+ "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">= 0.10"
+ "node": ">= 10"
}
},
"node_modules/is-arrayish": {
@@ -11765,14 +11800,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/is-promise": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz",
- "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==",
- "dev": true,
- "license": "MIT",
- "peer": true
- },
"node_modules/is-regex": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz",
@@ -12305,13 +12332,6 @@
"util-deprecate": "~1.0.1"
}
},
- "node_modules/jszip/node_modules/safe-buffer": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
- "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/jszip/node_modules/string_decoder": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
@@ -12744,31 +12764,6 @@
"node": ">=8"
}
},
- "node_modules/karma/node_modules/body-parser": {
- "version": "1.20.3",
- "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz",
- "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bytes": "3.1.2",
- "content-type": "~1.0.5",
- "debug": "2.6.9",
- "depd": "2.0.0",
- "destroy": "1.2.0",
- "http-errors": "2.0.0",
- "iconv-lite": "0.4.24",
- "on-finished": "2.4.1",
- "qs": "6.13.0",
- "raw-body": "2.5.2",
- "type-is": "~1.6.18",
- "unpipe": "1.0.0"
- },
- "engines": {
- "node": ">= 0.8",
- "npm": "1.2.8000 || >= 1.4.16"
- }
- },
"node_modules/karma/node_modules/chokidar": {
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
@@ -12806,16 +12801,6 @@
"wrap-ansi": "^7.0.0"
}
},
- "node_modules/karma/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "2.0.0"
- }
- },
"node_modules/karma/node_modules/emoji-regex": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
@@ -12858,19 +12843,6 @@
"node": ">= 6"
}
},
- "node_modules/karma/node_modules/iconv-lite": {
- "version": "0.4.24",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
- "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "safer-buffer": ">= 2.1.2 < 3"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/karma/node_modules/is-fullwidth-code-point": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
@@ -12881,16 +12853,6 @@
"node": ">=8"
}
},
- "node_modules/karma/node_modules/media-typer": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
- "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
"node_modules/karma/node_modules/mime": {
"version": "2.6.0",
"resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz",
@@ -12904,36 +12866,6 @@
"node": ">=4.0.0"
}
},
- "node_modules/karma/node_modules/mime-db": {
- "version": "1.52.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
- "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/karma/node_modules/mime-types": {
- "version": "2.1.35",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
- "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mime-db": "1.52.0"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/karma/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/karma/node_modules/picomatch": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
@@ -12947,38 +12879,6 @@
"url": "https://github.com/sponsors/jonschlinkert"
}
},
- "node_modules/karma/node_modules/qs": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz",
- "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==",
- "dev": true,
- "license": "BSD-3-Clause",
- "dependencies": {
- "side-channel": "^1.0.6"
- },
- "engines": {
- "node": ">=0.6"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/karma/node_modules/raw-body": {
- "version": "2.5.2",
- "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz",
- "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bytes": "3.1.2",
- "http-errors": "2.0.0",
- "iconv-lite": "0.4.24",
- "unpipe": "1.0.0"
- },
- "engines": {
- "node": ">= 0.8"
- }
- },
"node_modules/karma/node_modules/readdirp": {
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
@@ -13040,20 +12940,6 @@
"node": ">=14.14"
}
},
- "node_modules/karma/node_modules/type-is": {
- "version": "1.6.18",
- "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
- "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "media-typer": "0.3.0",
- "mime-types": "~2.1.24"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
"node_modules/karma/node_modules/wrap-ansi": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
@@ -13294,9 +13180,9 @@
"license": "MIT"
},
"node_modules/lint-staged": {
- "version": "15.5.1",
- "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.5.1.tgz",
- "integrity": "sha512-6m7u8mue4Xn6wK6gZvSCQwBvMBR36xfY24nF5bMTf2MHDYG6S3yhJuOgdYVw99hsjyDt2d4z168b3naI8+NWtQ==",
+ "version": "15.5.2",
+ "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.5.2.tgz",
+ "integrity": "sha512-YUSOLq9VeRNAo/CTaVmhGDKG+LBtA8KF1X4K5+ykMSwWST1vDxJRB2kv2COgLb1fvpCo+A/y9A0G0znNVmdx4w==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -13912,20 +13798,19 @@
}
},
"node_modules/media-typer": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-1.1.0.tgz",
- "integrity": "sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==",
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
+ "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==",
"dev": true,
"license": "MIT",
- "peer": true,
"engines": {
- "node": ">= 0.8"
+ "node": ">= 0.6"
}
},
"node_modules/memfs": {
- "version": "4.17.1",
- "resolved": "https://registry.npmjs.org/memfs/-/memfs-4.17.1.tgz",
- "integrity": "sha512-thuTRd7F4m4dReCIy7vv4eNYnU6XI/tHMLSMMHLiortw/Y0QxqKtinG523U2aerzwYWGi606oBP4oMPy4+edag==",
+ "version": "4.17.2",
+ "resolved": "https://registry.npmjs.org/memfs/-/memfs-4.17.2.tgz",
+ "integrity": "sha512-NgYhCOWgovOXSzvYgUW0LQ7Qy72rWQMGGFJDoWg4G30RHd3z77VbYdtJ4fembJXBy8pMIUA31XNAupobOQlwdg==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
@@ -13943,15 +13828,11 @@
}
},
"node_modules/merge-descriptors": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-2.0.0.tgz",
- "integrity": "sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==",
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz",
+ "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==",
"dev": true,
"license": "MIT",
- "peer": true,
- "engines": {
- "node": ">=18"
- },
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
@@ -14024,9 +13905,9 @@
}
},
"node_modules/mime-db": {
- "version": "1.54.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz",
- "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==",
+ "version": "1.52.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
+ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
"dev": true,
"license": "MIT",
"engines": {
@@ -14034,13 +13915,13 @@
}
},
"node_modules/mime-types": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.1.tgz",
- "integrity": "sha512-xRc4oEhT6eaBpU1XF7AjpOFD+xQmXNB5OVKwp4tqCuBpHLS/ZbBDrc07mYTDqVMg6PfxUjjNp85O6Cd2Z/5HWA==",
+ "version": "2.1.35",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
+ "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "mime-db": "^1.54.0"
+ "mime-db": "1.52.0"
},
"engines": {
"node": ">= 0.6"
@@ -14333,19 +14214,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/morgan/node_modules/on-finished": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
- "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ee-first": "1.1.1"
- },
- "engines": {
- "node": ">= 0.8"
- }
- },
"node_modules/mrmime": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.1.tgz",
@@ -14364,9 +14232,9 @@
"license": "MIT"
},
"node_modules/msgpackr": {
- "version": "1.11.2",
- "resolved": "https://registry.npmjs.org/msgpackr/-/msgpackr-1.11.2.tgz",
- "integrity": "sha512-F9UngXRlPyWCDEASDpTf6c9uNhGPTqnTeLVt7bN+bU1eajoR/8V9ys2BRaV5C/e5ihE6sJ9uPIKaYt6bFuO32g==",
+ "version": "1.11.4",
+ "resolved": "https://registry.npmjs.org/msgpackr/-/msgpackr-1.11.4.tgz",
+ "integrity": "sha512-uaff7RG9VIC4jacFW9xzL3jc0iM32DNHe4jYVycBcjUePT/Klnfj7pqtWJt9khvDFizmjN2TlYniYmSS2LIaZg==",
"dev": true,
"license": "MIT",
"optional": true,
@@ -14466,6 +14334,20 @@
"node": ">= 4.4.x"
}
},
+ "node_modules/needle/node_modules/iconv-lite": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
+ "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/negotiator": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz",
@@ -15204,9 +15086,9 @@
"license": "MIT"
},
"node_modules/on-finished": {
- "version": "2.4.1",
- "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
- "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
+ "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -15847,15 +15729,11 @@
}
},
"node_modules/path-to-regexp": {
- "version": "8.2.0",
- "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.2.0.tgz",
- "integrity": "sha512-TdrF7fW9Rphjq4RjrW0Kp2AW0Ahwu9sRGTkS6bvDi0SCwZlEZYmcfDbEsTz8RVk0EHIS/Vd1bv3JhG+1xZuAyQ==",
+ "version": "0.1.12",
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz",
+ "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==",
"dev": true,
- "license": "MIT",
- "peer": true,
- "engines": {
- "node": ">=16"
- }
+ "license": "MIT"
},
"node_modules/path-type": {
"version": "6.0.0",
@@ -15943,17 +15821,6 @@
"@napi-rs/nice": "^1.0.1"
}
},
- "node_modules/pkce-challenge": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/pkce-challenge/-/pkce-challenge-5.0.0.tgz",
- "integrity": "sha512-ueGLflrrnvwB3xuo/uGob5pd5FN7l0MsLf0Z87o/UQmRtwjvfylfc9MurIxRAWywCYTgrvpXBcqjV4OfCYGCIQ==",
- "dev": true,
- "license": "MIT",
- "peer": true,
- "engines": {
- "node": ">=16.20.0"
- }
- },
"node_modules/pkg-dir": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-7.0.0.tgz",
@@ -16329,6 +16196,16 @@
"node": ">= 0.10"
}
},
+ "node_modules/proxy-addr/node_modules/ipaddr.js": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
+ "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.10"
+ }
+ },
"node_modules/proxy-agent": {
"version": "6.5.0",
"resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.5.0.tgz",
@@ -16420,13 +16297,13 @@
}
},
"node_modules/qs": {
- "version": "6.14.0",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz",
- "integrity": "sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==",
+ "version": "6.13.0",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz",
+ "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==",
"dev": true,
"license": "BSD-3-Clause",
"dependencies": {
- "side-channel": "^1.1.0"
+ "side-channel": "^1.0.6"
},
"engines": {
"node": ">=0.6"
@@ -16477,16 +16354,15 @@
}
},
"node_modules/raw-body": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-3.0.0.tgz",
- "integrity": "sha512-RmkhL8CAyCRPXCE28MMH0z2PNWQBNk2Q09ZdxM9IOOXwxwZbN+qbWaatPkdkWIKL2ZVDImrN/pK5HTRz2PcS4g==",
+ "version": "2.5.2",
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz",
+ "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
"bytes": "3.1.2",
"http-errors": "2.0.0",
- "iconv-lite": "0.6.3",
+ "iconv-lite": "0.4.24",
"unpipe": "1.0.0"
},
"engines": {
@@ -16815,9 +16691,9 @@
}
},
"node_modules/rollup": {
- "version": "4.40.1",
- "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.40.1.tgz",
- "integrity": "sha512-C5VvvgCCyfyotVITIAv+4efVytl5F7wt+/I2i9q9GZcEXW9BP52YYOXC58igUi+LFZVHukErIIqQSWwv/M3WRw==",
+ "version": "4.41.0",
+ "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.41.0.tgz",
+ "integrity": "sha512-HqMFpUbWlf/tvcxBFNKnJyzc7Lk+XO3FGc3pbNBLqEbOz0gPLRgcrlS3UF4MfUrVlstOaP/q0kM6GVvi+LrLRg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -16831,47 +16707,29 @@
"npm": ">=8.0.0"
},
"optionalDependencies": {
- "@rollup/rollup-android-arm-eabi": "4.40.1",
- "@rollup/rollup-android-arm64": "4.40.1",
- "@rollup/rollup-darwin-arm64": "4.40.1",
- "@rollup/rollup-darwin-x64": "4.40.1",
- "@rollup/rollup-freebsd-arm64": "4.40.1",
- "@rollup/rollup-freebsd-x64": "4.40.1",
- "@rollup/rollup-linux-arm-gnueabihf": "4.40.1",
- "@rollup/rollup-linux-arm-musleabihf": "4.40.1",
- "@rollup/rollup-linux-arm64-gnu": "4.40.1",
- "@rollup/rollup-linux-arm64-musl": "4.40.1",
- "@rollup/rollup-linux-loongarch64-gnu": "4.40.1",
- "@rollup/rollup-linux-powerpc64le-gnu": "4.40.1",
- "@rollup/rollup-linux-riscv64-gnu": "4.40.1",
- "@rollup/rollup-linux-riscv64-musl": "4.40.1",
- "@rollup/rollup-linux-s390x-gnu": "4.40.1",
- "@rollup/rollup-linux-x64-gnu": "4.40.1",
- "@rollup/rollup-linux-x64-musl": "4.40.1",
- "@rollup/rollup-win32-arm64-msvc": "4.40.1",
- "@rollup/rollup-win32-ia32-msvc": "4.40.1",
- "@rollup/rollup-win32-x64-msvc": "4.40.1",
+ "@rollup/rollup-android-arm-eabi": "4.41.0",
+ "@rollup/rollup-android-arm64": "4.41.0",
+ "@rollup/rollup-darwin-arm64": "4.41.0",
+ "@rollup/rollup-darwin-x64": "4.41.0",
+ "@rollup/rollup-freebsd-arm64": "4.41.0",
+ "@rollup/rollup-freebsd-x64": "4.41.0",
+ "@rollup/rollup-linux-arm-gnueabihf": "4.41.0",
+ "@rollup/rollup-linux-arm-musleabihf": "4.41.0",
+ "@rollup/rollup-linux-arm64-gnu": "4.41.0",
+ "@rollup/rollup-linux-arm64-musl": "4.41.0",
+ "@rollup/rollup-linux-loongarch64-gnu": "4.41.0",
+ "@rollup/rollup-linux-powerpc64le-gnu": "4.41.0",
+ "@rollup/rollup-linux-riscv64-gnu": "4.41.0",
+ "@rollup/rollup-linux-riscv64-musl": "4.41.0",
+ "@rollup/rollup-linux-s390x-gnu": "4.41.0",
+ "@rollup/rollup-linux-x64-gnu": "4.41.0",
+ "@rollup/rollup-linux-x64-musl": "4.41.0",
+ "@rollup/rollup-win32-arm64-msvc": "4.41.0",
+ "@rollup/rollup-win32-ia32-msvc": "4.41.0",
+ "@rollup/rollup-win32-x64-msvc": "4.41.0",
"fsevents": "~2.3.2"
}
},
- "node_modules/router": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/router/-/router-2.2.0.tgz",
- "integrity": "sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ==",
- "dev": true,
- "license": "MIT",
- "peer": true,
- "dependencies": {
- "debug": "^4.4.0",
- "depd": "^2.0.0",
- "is-promise": "^4.0.0",
- "parseurl": "^1.3.3",
- "path-to-regexp": "^8.0.0"
- },
- "engines": {
- "node": ">= 18"
- }
- },
"node_modules/run-applescript": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-7.0.0.tgz",
@@ -16919,24 +16777,10 @@
}
},
"node_modules/safe-buffer": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
- "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
"dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
"license": "MIT"
},
"node_modules/safe-regex-test": {
@@ -17187,6 +17031,62 @@
"node": ">= 18"
}
},
+ "node_modules/send/node_modules/encodeurl": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
+ "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/send/node_modules/mime-db": {
+ "version": "1.54.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz",
+ "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/send/node_modules/mime-types": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.1.tgz",
+ "integrity": "sha512-xRc4oEhT6eaBpU1XF7AjpOFD+xQmXNB5OVKwp4tqCuBpHLS/ZbBDrc07mYTDqVMg6PfxUjjNp85O6Cd2Z/5HWA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "mime-db": "^1.54.0"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/send/node_modules/on-finished": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
+ "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ee-first": "1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/send/node_modules/statuses": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
+ "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
"node_modules/serialize-javascript": {
"version": "6.0.2",
"resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz",
@@ -17216,20 +17116,6 @@
"node": ">= 0.8.0"
}
},
- "node_modules/serve-index/node_modules/accepts": {
- "version": "1.3.8",
- "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
- "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mime-types": "~2.1.34",
- "negotiator": "0.6.3"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
"node_modules/serve-index/node_modules/debug": {
"version": "2.6.9",
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
@@ -17273,29 +17159,6 @@
"dev": true,
"license": "ISC"
},
- "node_modules/serve-index/node_modules/mime-db": {
- "version": "1.52.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
- "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/serve-index/node_modules/mime-types": {
- "version": "2.1.35",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
- "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mime-db": "1.52.0"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
"node_modules/serve-index/node_modules/ms": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
@@ -17303,16 +17166,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/serve-index/node_modules/negotiator": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
- "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
"node_modules/serve-index/node_modules/setprototypeof": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
@@ -17320,31 +17173,115 @@
"dev": true,
"license": "ISC"
},
- "node_modules/serve-index/node_modules/statuses": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
- "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==",
+ "node_modules/serve-static": {
+ "version": "1.16.2",
+ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz",
+ "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "encodeurl": "~2.0.0",
+ "escape-html": "~1.0.3",
+ "parseurl": "~1.3.3",
+ "send": "0.19.0"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/serve-static/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ms": "2.0.0"
+ }
+ },
+ "node_modules/serve-static/node_modules/debug/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/serve-static/node_modules/encodeurl": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
+ "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/serve-static/node_modules/fresh": {
+ "version": "0.5.2",
+ "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
+ "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">= 0.6"
}
},
- "node_modules/serve-static": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-2.2.0.tgz",
- "integrity": "sha512-61g9pCh0Vnh7IutZjtLGGpTA355+OPn2TyDv/6ivP2h/AdAVX9azsoxmg2/M6nZeQZNYBEwIcsne1mJd9oQItQ==",
+ "node_modules/serve-static/node_modules/on-finished": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
+ "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
- "encodeurl": "^2.0.0",
- "escape-html": "^1.0.3",
- "parseurl": "^1.3.3",
- "send": "^1.2.0"
+ "ee-first": "1.1.1"
},
"engines": {
- "node": ">= 18"
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/serve-static/node_modules/send": {
+ "version": "0.19.0",
+ "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz",
+ "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "fresh": "0.5.2",
+ "http-errors": "2.0.0",
+ "mime": "1.6.0",
+ "ms": "2.1.3",
+ "on-finished": "2.4.1",
+ "range-parser": "~1.2.1",
+ "statuses": "2.0.1"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/serve-static/node_modules/send/node_modules/encodeurl": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
+ "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/serve-static/node_modules/statuses": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
+ "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8"
}
},
"node_modules/setimmediate": {
@@ -17708,20 +17645,6 @@
}
}
},
- "node_modules/socket.io/node_modules/accepts": {
- "version": "1.3.8",
- "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
- "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mime-types": "~2.1.34",
- "negotiator": "0.6.3"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
"node_modules/socket.io/node_modules/debug": {
"version": "4.3.7",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
@@ -17740,39 +17663,6 @@
}
}
},
- "node_modules/socket.io/node_modules/mime-db": {
- "version": "1.52.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
- "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/socket.io/node_modules/mime-types": {
- "version": "2.1.35",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
- "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mime-db": "1.52.0"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/socket.io/node_modules/negotiator": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
- "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
"node_modules/sockjs": {
"version": "0.3.24",
"resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz",
@@ -17866,6 +17756,19 @@
"webpack": "^5.72.1"
}
},
+ "node_modules/source-map-loader/node_modules/iconv-lite": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
+ "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/source-map-support": {
"version": "0.5.21",
"resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
@@ -17989,13 +17892,13 @@
}
},
"node_modules/statuses": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
- "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
+ "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">= 0.8"
+ "node": ">= 0.6"
}
},
"node_modules/stream-combiner": {
@@ -18069,6 +17972,27 @@
"safe-buffer": "~5.2.0"
}
},
+ "node_modules/string_decoder/node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
+ },
"node_modules/string-argv": {
"version": "0.3.2",
"resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.2.tgz",
@@ -18264,14 +18188,13 @@
}
},
"node_modules/synckit": {
- "version": "0.11.4",
- "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.11.4.tgz",
- "integrity": "sha512-Q/XQKRaJiLiFIBNN+mndW7S/RHxvwzuZS6ZwmRzUBqJBv/5QIKCEwkBC8GBf8EQJKYnaFs0wOZbKTXBPj8L9oQ==",
+ "version": "0.11.6",
+ "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.11.6.tgz",
+ "integrity": "sha512-2pR2ubZSV64f/vqm9eLPz/KOvR9Dm+Co/5ChLgeHl0yEDRc6h5hXHoxEQH8Y5Ljycozd3p1k5TTSVdzYGkPvLw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@pkgr/core": "^0.2.3",
- "tslib": "^2.8.1"
+ "@pkgr/core": "^0.2.4"
},
"engines": {
"node": "^14.18.0 || >=16.0.0"
@@ -18280,13 +18203,6 @@
"url": "https://opencollective.com/synckit"
}
},
- "node_modules/synckit/node_modules/tslib": {
- "version": "2.8.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
- "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
- "dev": true,
- "license": "0BSD"
- },
"node_modules/tablesort": {
"version": "5.6.0",
"resolved": "https://registry.npmjs.org/tablesort/-/tablesort-5.6.0.tgz",
@@ -18299,9 +18215,9 @@
}
},
"node_modules/tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
+ "version": "2.2.2",
+ "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.2.tgz",
+ "integrity": "sha512-Re10+NauLTMCudc7T5WLFLAwDhQ0JWdrMK+9B2M8zR5hRExKmsRDCBA7/aV/pNJFltmBFO5BAMlQFi/vq3nKOg==",
"dev": true,
"license": "MIT",
"engines": {
@@ -18617,9 +18533,9 @@
}
},
"node_modules/tree-dump": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/tree-dump/-/tree-dump-1.0.2.tgz",
- "integrity": "sha512-dpev9ABuLWdEubk+cIaI9cHwRNNDjkBBLXTwI4UCUFdQ5xXKqNXoK4FEciw/vxf+NQ7Cb7sGUyeUtORvHIdRXQ==",
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/tree-dump/-/tree-dump-1.0.3.tgz",
+ "integrity": "sha512-il+Cv80yVHFBwokQSfd4bldvr1Md951DpgAGfmhydt04L+YzHgubm2tQ7zueWDcGENKHq0ZvGFR/hjvNXilHEg==",
"dev": true,
"license": "Apache-2.0",
"engines": {
@@ -18960,16 +18876,14 @@
}
},
"node_modules/type-is": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/type-is/-/type-is-2.0.1.tgz",
- "integrity": "sha512-OZs6gsjF4vMp32qrCbiVSkrFmXtG/AZhY3t0iAMrMBiAZyV9oALtXO8hsrHbMXF9x6L3grlFuwW2oAz7cav+Gw==",
+ "version": "1.6.18",
+ "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
+ "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
- "content-type": "^1.0.5",
- "media-typer": "^1.1.0",
- "mime-types": "^3.0.0"
+ "media-typer": "0.3.0",
+ "mime-types": "~2.1.24"
},
"engines": {
"node": ">= 0.6"
@@ -19327,9 +19241,9 @@
}
},
"node_modules/vite": {
- "version": "6.3.4",
- "resolved": "https://registry.npmjs.org/vite/-/vite-6.3.4.tgz",
- "integrity": "sha512-BiReIiMS2fyFqbqNT/Qqt4CVITDU9M9vE+DKcVAsB+ZV0wvTKd+3hMbkpxz1b+NmEDMegpVbisKiAZOnvO92Sw==",
+ "version": "6.3.5",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-6.3.5.tgz",
+ "integrity": "sha512-cZn6NDFE7wdTpINgs++ZJ4N49W2vRp8LCKrn3Ob1kYNtOo21vfDoaV5GzBfLU4MovSAB8uNRm4jgzVQZ+mBzPQ==",
"dev": true,
"license": "MIT",
"peer": true,
@@ -19443,9 +19357,9 @@
}
},
"node_modules/watchpack": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz",
- "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==",
+ "version": "2.4.4",
+ "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.4.tgz",
+ "integrity": "sha512-c5EGNOiyxxV5qmTtAB7rbiXxi1ooX1pQKMLX/MIabJjRA0SJBQOjKF+KSVfHkr9U1cADPon0mRiVe/riyaiDUA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -19630,27 +19544,17 @@
}
}
},
- "node_modules/webpack-dev-middleware/node_modules/mime-db": {
- "version": "1.52.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
- "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/webpack-dev-middleware/node_modules/mime-types": {
- "version": "2.1.35",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
- "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
+ "node_modules/webpack-dev-middleware/node_modules/on-finished": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
+ "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "mime-db": "1.52.0"
+ "ee-first": "1.1.1"
},
"engines": {
- "node": ">= 0.6"
+ "node": ">= 0.8"
}
},
"node_modules/webpack-dev-server": {
@@ -19710,45 +19614,6 @@
}
}
},
- "node_modules/webpack-dev-server/node_modules/accepts": {
- "version": "1.3.8",
- "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
- "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mime-types": "~2.1.34",
- "negotiator": "0.6.3"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/webpack-dev-server/node_modules/body-parser": {
- "version": "1.20.3",
- "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz",
- "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bytes": "3.1.2",
- "content-type": "~1.0.5",
- "debug": "2.6.9",
- "depd": "2.0.0",
- "destroy": "1.2.0",
- "http-errors": "2.0.0",
- "iconv-lite": "0.4.24",
- "on-finished": "2.4.1",
- "qs": "6.13.0",
- "raw-body": "2.5.2",
- "type-is": "~1.6.18",
- "unpipe": "1.0.0"
- },
- "engines": {
- "node": ">= 0.8",
- "npm": "1.2.8000 || >= 1.4.16"
- }
- },
"node_modules/webpack-dev-server/node_modules/chokidar": {
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
@@ -19774,129 +19639,6 @@
"fsevents": "~2.3.2"
}
},
- "node_modules/webpack-dev-server/node_modules/content-disposition": {
- "version": "0.5.4",
- "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
- "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "safe-buffer": "5.2.1"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/webpack-dev-server/node_modules/cookie": {
- "version": "0.7.1",
- "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz",
- "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/webpack-dev-server/node_modules/cookie-signature": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
- "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/webpack-dev-server/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "2.0.0"
- }
- },
- "node_modules/webpack-dev-server/node_modules/debug/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/webpack-dev-server/node_modules/express": {
- "version": "4.21.2",
- "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz",
- "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "accepts": "~1.3.8",
- "array-flatten": "1.1.1",
- "body-parser": "1.20.3",
- "content-disposition": "0.5.4",
- "content-type": "~1.0.4",
- "cookie": "0.7.1",
- "cookie-signature": "1.0.6",
- "debug": "2.6.9",
- "depd": "2.0.0",
- "encodeurl": "~2.0.0",
- "escape-html": "~1.0.3",
- "etag": "~1.8.1",
- "finalhandler": "1.3.1",
- "fresh": "0.5.2",
- "http-errors": "2.0.0",
- "merge-descriptors": "1.0.3",
- "methods": "~1.1.2",
- "on-finished": "2.4.1",
- "parseurl": "~1.3.3",
- "path-to-regexp": "0.1.12",
- "proxy-addr": "~2.0.7",
- "qs": "6.13.0",
- "range-parser": "~1.2.1",
- "safe-buffer": "5.2.1",
- "send": "0.19.0",
- "serve-static": "1.16.2",
- "setprototypeof": "1.2.0",
- "statuses": "2.0.1",
- "type-is": "~1.6.18",
- "utils-merge": "1.0.1",
- "vary": "~1.1.2"
- },
- "engines": {
- "node": ">= 0.10.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/express"
- }
- },
- "node_modules/webpack-dev-server/node_modules/finalhandler": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz",
- "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "debug": "2.6.9",
- "encodeurl": "~2.0.0",
- "escape-html": "~1.0.3",
- "on-finished": "2.4.1",
- "parseurl": "~1.3.3",
- "statuses": "2.0.1",
- "unpipe": "~1.0.0"
- },
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/webpack-dev-server/node_modules/fresh": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
- "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
"node_modules/webpack-dev-server/node_modules/glob-parent": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
@@ -19935,89 +19677,6 @@
}
}
},
- "node_modules/webpack-dev-server/node_modules/iconv-lite": {
- "version": "0.4.24",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
- "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "safer-buffer": ">= 2.1.2 < 3"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/webpack-dev-server/node_modules/ipaddr.js": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz",
- "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/webpack-dev-server/node_modules/media-typer": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
- "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/webpack-dev-server/node_modules/merge-descriptors": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz",
- "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==",
- "dev": true,
- "license": "MIT",
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/webpack-dev-server/node_modules/mime-db": {
- "version": "1.52.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
- "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/webpack-dev-server/node_modules/mime-types": {
- "version": "2.1.35",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
- "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mime-db": "1.52.0"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/webpack-dev-server/node_modules/negotiator": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
- "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/webpack-dev-server/node_modules/path-to-regexp": {
- "version": "0.1.12",
- "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz",
- "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/webpack-dev-server/node_modules/picomatch": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
@@ -20031,38 +19690,6 @@
"url": "https://github.com/sponsors/jonschlinkert"
}
},
- "node_modules/webpack-dev-server/node_modules/qs": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz",
- "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==",
- "dev": true,
- "license": "BSD-3-Clause",
- "dependencies": {
- "side-channel": "^1.0.6"
- },
- "engines": {
- "node": ">=0.6"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/webpack-dev-server/node_modules/raw-body": {
- "version": "2.5.2",
- "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz",
- "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bytes": "3.1.2",
- "http-errors": "2.0.0",
- "iconv-lite": "0.4.24",
- "unpipe": "1.0.0"
- },
- "engines": {
- "node": ">= 0.8"
- }
- },
"node_modules/webpack-dev-server/node_modules/readdirp": {
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
@@ -20076,71 +19703,6 @@
"node": ">=8.10.0"
}
},
- "node_modules/webpack-dev-server/node_modules/send": {
- "version": "0.19.0",
- "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz",
- "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "debug": "2.6.9",
- "depd": "2.0.0",
- "destroy": "1.2.0",
- "encodeurl": "~1.0.2",
- "escape-html": "~1.0.3",
- "etag": "~1.8.1",
- "fresh": "0.5.2",
- "http-errors": "2.0.0",
- "mime": "1.6.0",
- "ms": "2.1.3",
- "on-finished": "2.4.1",
- "range-parser": "~1.2.1",
- "statuses": "2.0.1"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/webpack-dev-server/node_modules/send/node_modules/encodeurl": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
- "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/webpack-dev-server/node_modules/serve-static": {
- "version": "1.16.2",
- "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz",
- "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "encodeurl": "~2.0.0",
- "escape-html": "~1.0.3",
- "parseurl": "~1.3.3",
- "send": "0.19.0"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/webpack-dev-server/node_modules/type-is": {
- "version": "1.6.18",
- "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
- "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "media-typer": "0.3.0",
- "mime-types": "~2.1.24"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
"node_modules/webpack-merge": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-6.0.1.tgz",
@@ -20219,29 +19781,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/webpack/node_modules/mime-db": {
- "version": "1.52.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
- "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/webpack/node_modules/mime-types": {
- "version": "2.1.35",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
- "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mime-db": "1.52.0"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
"node_modules/webrtc-adapter": {
"version": "9.0.3",
"resolved": "https://registry.npmjs.org/webrtc-adapter/-/webrtc-adapter-9.0.3.tgz",
@@ -20293,6 +19832,19 @@
"node": ">=12"
}
},
+ "node_modules/whatwg-encoding/node_modules/iconv-lite": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
+ "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/which": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
@@ -20654,16 +20206,16 @@
"license": "ISC"
},
"node_modules/yaml": {
- "version": "2.7.1",
- "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.1.tgz",
- "integrity": "sha512-10ULxpnOCQXxJvBgxsn9ptjq6uviG/htZKk9veJGhlqn3w/DxQ631zFF+nlQXLwmImeS5amR2dl2U8sg6U9jsQ==",
+ "version": "2.8.0",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.0.tgz",
+ "integrity": "sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ==",
"dev": true,
"license": "ISC",
"bin": {
"yaml": "bin.mjs"
},
"engines": {
- "node": ">= 14"
+ "node": ">= 14.6"
}
},
"node_modules/yargs": {
@@ -20798,28 +20350,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/zod": {
- "version": "3.24.4",
- "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.4.tgz",
- "integrity": "sha512-OdqJE9UDRPwWsrHjLN2F8bPxvwJBK22EHLWtanu0LSYr5YqzsaaW3RMgmjwr8Rypg5k+meEJdSPXJZXE/yqOMg==",
- "dev": true,
- "license": "MIT",
- "peer": true,
- "funding": {
- "url": "https://github.com/sponsors/colinhacks"
- }
- },
- "node_modules/zod-to-json-schema": {
- "version": "3.24.5",
- "resolved": "https://registry.npmjs.org/zod-to-json-schema/-/zod-to-json-schema-3.24.5.tgz",
- "integrity": "sha512-/AuWwMP+YqiPbsJx5D6TfgRTc4kTLjsh5SOcd4bLsfUg2RcEXrFMJl1DGgdHy2aCfsIA/cr/1JM0xcB2GZji8g==",
- "dev": true,
- "license": "ISC",
- "peer": true,
- "peerDependencies": {
- "zod": "^3.24.1"
- }
- },
"node_modules/zone.js": {
"version": "0.15.0",
"resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.15.0.tgz",
diff --git a/openvidu-components-angular/package.json b/openvidu-components-angular/package.json
index 084efa86..1f6678f1 100644
--- a/openvidu-components-angular/package.json
+++ b/openvidu-components-angular/package.json
@@ -22,7 +22,6 @@
"@angular/cli": "19.2.9",
"@angular/compiler": "19.2.8",
"@angular/compiler-cli": "19.2.8",
- "@angular/elements": "19.2.8",
"@compodoc/compodoc": "^1.1.25",
"@types/jasmine": "^5.1.4",
"@types/node": "20.12.14",
@@ -74,7 +73,6 @@
"start-prod": "npx http-server ./dist/openvidu-components-testapp/browser --port 4200",
"start:ssl": "ng serve --ssl --configuration development --host 0.0.0.0 --port 5080",
"build": "ng build openvidu-components-testapp --configuration production",
- "bundle-report": "ng build openvidu-webcomponent --stats-json --configuration production && webpack-bundle-analyzer dist/openvidu-webcomponent/stats.json",
"doc:build": "npx compodoc -c ./projects/openvidu-components-angular/doc/.compodocrc.json",
"doc:generate-directives-tutorials": "node ./projects/openvidu-components-angular/doc/scripts/generate-directive-tutorials.js",
"doc:generate-directive-tables": "node ./projects/openvidu-components-angular/doc/scripts/generate-directive-tables.js",
@@ -98,12 +96,6 @@
"e2e:lib-screensharing": "tsc --project ./e2e && npx jasmine --fail-fast ./e2e/dist/screensharing.test.js",
"e2e:lib-stream": "tsc --project ./e2e && npx jasmine --fail-fast ./e2e/dist/stream.test.js",
"e2e:lib-toolbar": "tsc --project ./e2e && npx jasmine --fail-fast ./e2e/dist/toolbar.test.js",
-
- "e2e:webcomponent-all": "tsc --project ./e2e && npx jasmine --fail-fast ./e2e/dist/webcomponent-e2e/**/*.test.js",
- "e2e:webcomponent-captions": "tsc --project ./e2e && npx jasmine --fail-fast ./e2e/dist/webcomponent-e2e/captions.test.js",
- "webcomponent:testing-build": "./node_modules/@angular/cli/bin/ng.js build openvidu-webcomponent --configuration testing && node ./openvidu-webcomponent-build.js",
- "webcomponent:build": "./node_modules/@angular/cli/bin/ng.js build openvidu-webcomponent --configuration production && node ./openvidu-webcomponent-build.js",
- "webcomponent:serve-testapp": "npx http-server ./e2e/webcomponent-app/",
"simulate:multiparty": "livekit-cli load-test --url ws://localhost:7880 --api-key devkey --api-secret secret --room daily-call --publishers 8 --audio-publishers 8 --identity-prefix Participant --identity publisher",
"husky": "cd .. && husky install"
},
diff --git a/openvidu-components-angular/projects/openvidu-components-angular/doc/tsconfig.doc.json b/openvidu-components-angular/projects/openvidu-components-angular/doc/tsconfig.doc.json
index dd5ca432..1455dc36 100644
--- a/openvidu-components-angular/projects/openvidu-components-angular/doc/tsconfig.doc.json
+++ b/openvidu-components-angular/projects/openvidu-components-angular/doc/tsconfig.doc.json
@@ -5,8 +5,7 @@
"../src/lib/directives/**/*.ts",
"../src/lib/services/**/*.ts",
"../src/lib/models/**/*.ts",
- "../src/lib/pipes/**/*.ts",
- // "../../../src/app/openvidu-webcomponent/**/*.ts",
+ "../src/lib/pipes/**/*.ts"
],
"exclude": [
"src/test.ts",
diff --git a/openvidu-components-angular/src/app/openvidu-webcomponent/openvidu-webcomponent.component.html b/openvidu-components-angular/src/app/openvidu-webcomponent/openvidu-webcomponent.component.html
deleted file mode 100644
index 7fe6aaa0..00000000
--- a/openvidu-components-angular/src/app/openvidu-webcomponent/openvidu-webcomponent.component.html
+++ /dev/null
@@ -1,57 +0,0 @@
-
diff --git a/openvidu-components-angular/src/app/openvidu-webcomponent/openvidu-webcomponent.component.scss b/openvidu-components-angular/src/app/openvidu-webcomponent/openvidu-webcomponent.component.scss
deleted file mode 100644
index b97760c2..00000000
--- a/openvidu-components-angular/src/app/openvidu-webcomponent/openvidu-webcomponent.component.scss
+++ /dev/null
@@ -1,59 +0,0 @@
-@use '@angular/material' as mat;
-
-@include mat.elevation-classes();
-@include mat.app-background();
-
-// Define the theme
-$openvidu-theme: mat.define-theme();
-
-html {
- // Emit theme-dependent styles for common features used across multiple components.
- @include mat.elevation-classes();
- @include mat.app-background();
- // @include mat.button-theme($theme);
- @include mat.all-component-bases($openvidu-theme);
- @include mat.all-component-colors($openvidu-theme);
- @include mat.all-component-typographies($openvidu-theme);
- @include mat.all-component-densities($openvidu-theme);
-}
-
-
-@font-face {
- font-family: 'Material Icons';
- font-style: normal;
- font-weight: 400;
- src: url(https://fonts.gstatic.com/s/materialicons/v129/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2) format('woff2');
-}
-
-.material-icons {
- font-family: 'Material Icons';
- font-weight: normal;
- font-style: normal;
- font-size: 24px;
- line-height: 1;
- letter-spacing: normal;
- text-transform: none;
- display: inline-block;
- white-space: nowrap;
- word-wrap: normal;
- direction: ltr;
- -webkit-font-feature-settings: 'liga';
- -webkit-font-smoothing: antialiased;
-}
-
-html,
-body {
- height: 100%;
- overflow: hidden;
-}
-body {
- margin: 0;
- font-family: 'Roboto', 'RobotoDraft', Helvetica, Arial, sans-serif;
-}
-
-#poster-text {
- padding: 0px !important;
-}
-ov-chat-panel .text-info {
- margin: 3px auto !important;
-}
diff --git a/openvidu-components-angular/src/app/openvidu-webcomponent/openvidu-webcomponent.component.ts b/openvidu-components-angular/src/app/openvidu-webcomponent/openvidu-webcomponent.component.ts
deleted file mode 100644
index 7ad2c664..00000000
--- a/openvidu-components-angular/src/app/openvidu-webcomponent/openvidu-webcomponent.component.ts
+++ /dev/null
@@ -1,850 +0,0 @@
-import { Component, ElementRef, EventEmitter, Input, Output } from '@angular/core';
-import { OpenViduService, ParticipantModel, Room, ParticipantLeftEvent } from 'openvidu-components-angular';
-// import { CaptionsLangOption } from '../../../projects/openvidu-components-angular/src/lib/models/caption.model';
-import { CustomDevice } from '../../../projects/openvidu-components-angular/src/lib/models/device.model';
-import {
- ActivitiesPanelStatusEvent,
- ChatPanelStatusEvent,
- ParticipantsPanelStatusEvent,
- SettingsPanelStatusEvent
-} from '../../../projects/openvidu-components-angular/src/lib/models/panel.model';
-import {
- RecordingDeleteRequestedEvent,
- RecordingDownloadClickedEvent,
- RecordingPlayClickedEvent,
- RecordingStartRequestedEvent,
- RecordingStopRequestedEvent
-} from '../../../projects/openvidu-components-angular/src/lib/models/recording.model';
-import {
- BroadcastingStartRequestedEvent,
- BroadcastingStopRequestedEvent
-} from '../../../projects/openvidu-components-angular/src/lib/models/broadcasting.model';
-import { LangOption } from '../../../projects/openvidu-components-angular/src/lib/models/lang.model';
-
-/**
- *
- * The **OpenviduWebComponentComponent** serves as a bridge to create and export the **OpenVidu Webcomponent**.
- * It acts as an intermediary interface to the web component, it is not part of the Angular library.
- *
- */
-@Component({
- templateUrl: './openvidu-webcomponent.component.html',
- standalone: false
-})
-export class OpenviduWebComponentComponent {
- /**
- * @internal
- */
- _livekitUrl: string;
- /**
- * @internal
- */
- _token: string;
- /**
- * @internal
- */
- _tokenError: string;
- /**
- * @internal
- */
- _minimal: boolean = false;
-
- /**
- * @internal
- */
- _lang: string = '';
-
- /**
- * @internal
- */
- _langOptions: LangOption;
-
- /**
- * @internal
- */
- _captionsLang: string = '';
-
- /**
- * @internal
- */
- // _captionsLangOptions: CaptionsLangOption;
-
- /**
- * @internal
- */
- _participantName: string;
- /**
- * @internal
- */
- _prejoin: boolean = true;
- /**
- * @internal
- */
- _videoEnabled: boolean = true;
- /**
- * @internal
- */
- _audioEnabled: boolean = true;
-
- /**
- * @internal
- */
- _toolbarCameraButton: boolean = true;
- /**
- * @internal
- */
- _toolbarMicrophoneButton: boolean = true;
- /**
- * @internal
- */
- _toolbarScreenshareButton: boolean = true;
- /**
- * @internal
- */
- _toolbarRecordingButton: boolean = true;
- /**
- * @internal
- */
- _toolbarBroadcastingButton: boolean = true;
- /**
- * @internal
- */
- _toolbarFullscreenButton: boolean = true;
- /**
- * @internal
- */
- _toolbarBackgroundEffectsButton: boolean = true;
- /**
- * @internal
- */
- _toolbarSettingsButton: boolean = true;
- /**
- * @internal
- */
- _toolbarLeaveButton: boolean = true;
- /**
- * @internal
- */
- _toolbarChatPanelButton: boolean = true;
- /**
- * @internal
- */
- _toolbarActivitiesPanelButton: boolean = true;
- /**
- * @internal
- */
- _toolbarParticipantsPanelButton: boolean = true;
- /**
- * @internal
- */
- _toolbarDisplayLogo: boolean = true;
- /**
- * @internal
- */
- _toolbarDisplayRoomName: boolean = true;
- /**
- * @internal
- */
-
- // _toolbarCaptionsButton: boolean = true;
- /**
- * @internal
- */
- _streamDisplayParticipantName: boolean = true;
- /**
- * @internal
- */
- _streamDisplayAudioDetection: boolean = true;
- /**
- * @internal
- */
- _streamVideoControls: boolean = true;
- /**
- * @internal
- */
- _participantPanelItemMuteButton: boolean = true;
-
- /**
- * @internal
- */
- _activitiesPanelRecordingActivity: boolean = true;
- /**
- * @internal
- */
- _activitiesPanelBroadcastingActivity: boolean = true;
-
- /**
- * The **minimal** attribute applies a minimal UI hiding all controls except for cam and mic.
- *
- * Default: `false`
- *
- * @example
- *
- */
- @Input() set minimal(value: string | boolean) {
- this._minimal = this.castToBoolean(value);
- }
- /**
- * The **lang** attribute sets the default UI language.
- *
- * Default: `en`
- *
- * @example
- *
- */
- @Input() set lang(value: string) {
- this._lang = value;
- }
-
- /**
- * The **langOptions** directive allows to set the application language options.
- * It will override the application languages provided by default.
- * This propety is an array of objects which must comply with the {@link LangOption} interface.
- *
- * It is only available for {@link VideoconferenceComponent}.
- *
- * Default: ```
- * [
- * { name: 'English', lang: 'en' },
- * { name: 'Español', lang: 'es' },
- * { name: 'Deutsch', lang: 'de' },
- * { name: 'Français', lang: 'fr' },
- * { name: '中国', lang: 'cn' },
- * { name: 'हिन्दी', lang: 'hi' },
- * { name: 'Italiano', lang: 'it' },
- * { name: 'やまと', lang: 'ja' },
- * { name: 'Dutch', lang: 'nl' },
- * { name: 'Português', lang: 'pt' }
- * ]```
- *
- * Note: If you want to add a new language, you must add a new object with the name and the language code (e.g. `{ name: 'Custom', lang: 'cus' }`)
- * and then add the language file in the `assets/lang` folder with the name `cus.json`.
- *
- *
- * @example
- *
- */
- @Input() set langOptions(value: string | LangOption[]) {
- this._langOptions = this.castToArray(value);
- }
-
- /**
- * The **captionsLang** attribute sets the deafult language that OpenVidu will try to recognise.
- *
- * It must be a valid [BCP-47](https://tools.ietf.org/html/bcp47) language tag like "en-US" or "es-ES".
- *
- * Default: `en-US`
- *
- * @example
- *
- */
- // TODO: Uncomment when captions are implemented
- // @Input() set captionsLang(value: string) {
- // this._captionsLang = value;
- // }
- /**
- * The captionsLangOptions attribute sets the language options for the captions.
- * It will override the languages provided by default.
- * This propety is an array of objects which must comply with the {@link CaptionsLangOption} interface.
- *
- * Default: ```
- * [
- * { name: 'English', lang: 'en-US' },
- * { name: 'Español', lang: 'es-ES' },
- * { name: 'Deutsch', lang: 'de-DE' },
- * { name: 'Français', lang: 'fr-FR' },
- * { name: '中国', lang: 'zh-CN' },
- * { name: 'हिन्दी', lang: 'hi-IN' },
- * { name: 'Italiano', lang: 'it-IT' },
- * { name: 'やまと', lang: 'jp-JP' },
- * { name: 'Português', lang: 'pt-PT' }
- * ]```
- *
- * @example
- *
- */
- // TODO: Uncomment when captions are implemented
- // @Input() set captionsLangOptions(value: string | CaptionsLangOption[]) {
- // this._captionsLangOptions = this.castToArray(value);
- // }
- /**
- * The **participantName** attribute sets the participant name. It can be useful for aplications which doesn't need the prejoin page.
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set participantName(value: string) {
- this._participantName = value;
- }
- /**
- * The **prejoin** attribute allows show/hide the prejoin page for selecting media devices.
- *
- * Default: `true`
- *
- * @example
- *
- */
- @Input() set prejoin(value: string | boolean) {
- this._prejoin = this.castToBoolean(value);
- }
- /**
- * The **videoEnabled** attribute allows to join the room with camera enabled or disabled.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set videoEnabled(value: string | boolean) {
- this._videoEnabled = this.castToBoolean(value);
- }
- /**
- * The **audioEnabled** attribute allows to join the room with microphone muted/unmuted.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set audioEnabled(value: string | boolean) {
- this._audioEnabled = this.castToBoolean(value);
- }
-
- /**
- * The **toolbarCameraButton** attribute allows show/hide the camera toolbar button.
- *
- * Default: `true`
- *
- * @example
- *
- */
- @Input() set toolbarCameraButton(value: string | boolean) {
- this._toolbarCameraButton = this.castToBoolean(value);
- }
-
- /**
- * The **toolbarMicrophoneButton** attribute allows show/hide the microphone toolbar button.
- *
- * Default: `true`
- *
- * @example
- *
- */
-
- @Input() set toolbarMicrophoneButton(value: string | boolean) {
- this._toolbarMicrophoneButton = this.castToBoolean(value);
- }
-
- /**
- * The **toolbarScreenshareButton** attribute allows show/hide the screenshare toolbar button.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set toolbarScreenshareButton(value: string | boolean) {
- this._toolbarScreenshareButton = this.castToBoolean(value);
- }
-
- /**
- * The **toolbarRecordingButton** attribute allows show/hide the start/stop recording toolbar button.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set toolbarRecordingButton(value: string | boolean) {
- this._toolbarRecordingButton = this.castToBoolean(value);
- }
-
- /**
- * The **toolbarBroadcastingButton** attribute allows show/hide the start/stop broadcasting toolbar button.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set toolbarBroadcastingButton(value: string | boolean) {
- this._toolbarBroadcastingButton = this.castToBoolean(value);
- }
- /**
- * The **toolbarFullscreenButton** attribute allows show/hide the fullscreen toolbar button.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set toolbarFullscreenButton(value: string | boolean) {
- this._toolbarFullscreenButton = this.castToBoolean(value);
- }
-
- /**
- * The **toolbarBackgroundEffectsButton** attribute allows show/hide the background effects toolbar button.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set toolbarBackgroundEffectsButton(value: string | boolean) {
- this._toolbarBackgroundEffectsButton = this.castToBoolean(value);
- }
-
- /**
- * The **toolbarSettingsButton** attribute allows show/hide the settings toolbar button.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set toolbarSettingsButton(value: string | boolean) {
- this._toolbarSettingsButton = this.castToBoolean(value);
- }
- /**
- * The **toolbarLeaveButton** attribute allows show/hide the leave toolbar button.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set toolbarLeaveButton(value: string | boolean) {
- this._toolbarLeaveButton = this.castToBoolean(value);
- }
- /**
- * The **toolbarChatPanelButton** attribute allows show/hide the chat panel toolbar button.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set toolbarChatPanelButton(value: string | boolean) {
- this._toolbarChatPanelButton = this.castToBoolean(value);
- }
-
- /**
- * The **toolbarActivitiesPanelButton** attribute allows show/hide the activities panel toolbar button.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set toolbarActivitiesPanelButton(value: string | boolean) {
- this._toolbarActivitiesPanelButton = this.castToBoolean(value);
- }
- /**
- * The **toolbarParticipantsPanelButton** attribute allows show/hide the participants panel toolbar button.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set toolbarParticipantsPanelButton(value: string | boolean) {
- this._toolbarParticipantsPanelButton = this.castToBoolean(value);
- }
- /**
- * The **toolbarDisplayLogo** attribute allows show/hide the branding logo.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set toolbarDisplayLogo(value: string | boolean) {
- this._toolbarDisplayLogo = this.castToBoolean(value);
- }
- /**
- * The **toolbarDisplayRoomName** attribute allows show/hide the room name.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set toolbarDisplayRoomName(value: string | boolean) {
- this._toolbarDisplayRoomName = this.castToBoolean(value);
- }
- /**
- * The **toolbarCaptionsButton** attribute allows show/hide the captions toolbar button.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- // TODO: Uncomment when captions are implemented
- // @Input() set toolbarCaptionsButton(value: string | boolean) {
- // this._toolbarCaptionsButton = this.castToBoolean(value);
- // }
- /**
- * The **streamDisplayParticipantName** attribute allows show/hide the participants name in stream component.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set streamDisplayParticipantName(value: string | boolean) {
- this._streamDisplayParticipantName = this.castToBoolean(value);
- }
- /**
- * The **streamDisplayAudioDetection** attribute allows show/hide the participants audio detection in stream component.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set streamDisplayAudioDetection(value: string | boolean) {
- this._streamDisplayAudioDetection = this.castToBoolean(value);
- }
- /**
- * The **streamVideoControls** attribute allows show/hide the participants video controls in stream component.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set streamVideoControls(value: string | boolean) {
- this._streamVideoControls = this.castToBoolean(value);
- }
- /**
- * The **participantPanelItemMuteButton** attribute allows show/hide the muted button in participant panel item component.
- *
- * Default: `true`
- *
- *
- * WARNING : If you want to use this parameter to OpenVidu Web Component statically, you have to replace the camelCase with a hyphen between words .
- *
- * @example
- *
- */
- @Input() set participantPanelItemMuteButton(value: string | boolean) {
- this._participantPanelItemMuteButton = this.castToBoolean(value);
- }
-
- /**
- * The **activitiesPanelRecordingActivity** attribute allows show/hide the recording activity in {@link ActivitiesPanelComponent}.
- *
- * Default: `true`
- *
- * @example
- *
- */
- @Input() set activitiesPanelRecordingActivity(value: string | boolean) {
- this._activitiesPanelRecordingActivity = this.castToBoolean(value);
- }
-
- /**
- * The **activitiesPanelBroadcastingActivity** attribute allows show/hide the broadcasting activity in {@link ActivitiesPanelComponent}.
- *
- * Default: `true`
- *
- * @example
- *
- */
- @Input() set activitiesPanelBroadcastingActivity(value: string | boolean) {
- this._activitiesPanelBroadcastingActivity = this.castToBoolean(value);
- }
-
- /**
- * Provides event notifications that fire when videconference is ready to received the token.
- * This event emits the participant name as data.
- */
- @Output() onTokenRequested: EventEmitter = new EventEmitter();
-
- /**
- * Provides event notifications that fire when the participant is ready to join to the room. This event is only emitted when the prejoin page has been shown.
- */
- @Output() onReadyToJoin: EventEmitter = new EventEmitter();
-
- /**
- * This event is emitted when the room connection has been lost and the reconnection process has started.
- */
- @Output() onRoomDisconnected: EventEmitter = new EventEmitter();
-
- /**
- * This event is emitted when a participant leaves the room.
- */
- @Output() onParticipantLeft: EventEmitter = new EventEmitter();
-
- /**
- * This event is emitted when the video state changes, providing information about if the video is enabled (true) or disabled (false).
- */
- @Output() onVideoEnabledChanged = new EventEmitter();
- /**
- * This event is emitted when the selected video device changes, providing information about the new custom device that has been selected.
- */
- @Output() onVideoDeviceChanged = new EventEmitter();
-
- /**
- * This event is emitted when the audio state changes, providing information about if the audio is enabled (true) or disabled (false).
- */
- @Output() onAudioEnabledChanged = new EventEmitter();
- /**
- * This event is emitted when the selected audio device changes, providing information about the new custom device that has been selected.
- */
- @Output() onAudioDeviceChanged = new EventEmitter();
-
- /**
- * This event is emitted when the language changes, providing information about the new language that has been selected.
- */
- @Output() onLangChanged: EventEmitter = new EventEmitter();
-
- /**
- * This event is emitted when the screen share state changes, providing information about if the screen share is enabled (true) or disabled (false).
- */
- @Output() onScreenShareEnabledChanged: EventEmitter = new EventEmitter();
-
- /**
- * This event is emitted when the fullscreen state changes, providing information about if the fullscreen is enabled (true) or disabled (false).
- */
- @Output() onFullscreenEnabledChanged: EventEmitter = new EventEmitter();
-
- /**
- * This events is emitted when the settings panel status changes.
- */
- @Output() onSettingsPanelStatusChanged = new EventEmitter();
- /**
- * This events is emitted when the participants panel status changes.
- */
- @Output() onParticipantsPanelStatusChanged = new EventEmitter();
-
- /**
- * This events is emitted when the chat panel status changes.
- */
- @Output() onChatPanelStatusChanged = new EventEmitter();
-
- /**
- * This events is emitted when the activities panel status changes.
- */
- @Output() onActivitiesPanelStatusChanged = new EventEmitter();
-
- /**
- * This event is fired when the user clicks on the start recording button.
- * It provides the {@link RecordingStartRequestedEvent} payload as event data.
- */
- @Output() onRecordingStartRequested: EventEmitter = new EventEmitter();
- /**
- * Provides event notifications that fire when stop recording button has been clicked.
- * It provides the {@link RecordingStopRequestedEvent} payload as event data.
- */
- @Output() onRecordingStopRequested: EventEmitter = new EventEmitter();
-
- /**
- * Provides event notifications that fire when delete recording button has been clicked.
- * It provides the {@link RecordingDeleteRequestedEvent} payload as event data.
- */
- @Output() onRecordingDeleteRequested: EventEmitter = new EventEmitter();
-
- /**
- * Provides event notifications that fire when download recording button is clicked.
- * It provides the {@link RecordingDownloadClickedEvent} payload as event data.
- */
- @Output() onRecordingDownloadClicked: EventEmitter = new EventEmitter();
-
- /**
- * Provides event notifications that fire when play recording button is clicked.
- * It provides the {@link RecordingPlayClickedEvent} payload as event data.
- */
- @Output() onRecordingPlayClicked: EventEmitter = new EventEmitter();
-
- /**
- * Provides event notifications that fire when download recording button is clicked from {@link ActivitiesPanelComponent}.
- * The recording should be downloaded using the REST API.
- */
- @Output() onActivitiesPanelDownloadRecordingClicked: EventEmitter = new EventEmitter();
-
- /**
- * Provides event notifications that fire when start broadcasting button is clicked.
- * It provides the {@link BroadcastingStartRequestedEvent} payload as event data.
- */
- @Output() onBroadcastingStartRequested: EventEmitter =
- new EventEmitter();
-
- /**
- * Provides event notifications that fire when stop broadcasting button is clicked.
- * It provides the {@link BroadcastingStopRequestedEvent} payload as event data.
- */
- @Output() onBroadcastingStopRequested: EventEmitter =
- new EventEmitter();
-
- /**
- * Provides event notifications that fire when OpenVidu Room is created.
- */
- @Output() onRoomCreated: EventEmitter = new EventEmitter();
-
- /**
- * Provides event notifications that fire when local participant is created.
- */
- @Output() onParticipantCreated: EventEmitter = new EventEmitter();
-
- /**
- * @internal
- */
- success: boolean = false;
-
- /**
- * @internal
- */
- constructor(
- private host: ElementRef,
- private openviduService: OpenViduService
- ) {
- this.host.nativeElement.disconnect = this.disconnect.bind(this);
- }
-
- /**
- * LivekitUrl parameter allows to grant a participant access to a Room.
- * This parameter will be use by each participant when connecting to a Room.
- *
- * @example
- *
- *
- */
- @Input('livekitUrl')
- set livekitUrl(value: string) {
- console.debug('Webcomponent livekit url: ', value);
- this._livekitUrl = value;
- }
-
- /**
- * Token parameter is required to grant a participant access to a Room.
- * This OpenVidu token will be use by each participant when connecting to a Room.
- *
- * @example
- *
- *
- */
- @Input('token')
- set token(value: string) {
- console.debug('Webcomponent token: ', value);
- if (!value) {
- console.error('Token parameter is required');
- return;
- }
- this._token = value;
- }
-
- /**
- * Use the 'tokenError' input to display an error message in case of issues during token request.
- *
- * @example
- *
- *
- */
- @Input('tokenError')
- set tokenError(value: any) {
- this._tokenError = value;
- }
-
- /**
- * @internal
- */
- _onParticipantLeft(event: ParticipantLeftEvent) {
- this.success = false;
- this.onParticipantLeft.emit(event);
- }
-
- /**
- * Disconnects from the Livekit Room.
- */
- disconnect() {
- this.openviduService.disconnectRoom();
- }
-
- private castToBoolean(value: string | boolean): boolean {
- if (typeof value === 'boolean') {
- return value;
- } else if (typeof value === 'string') {
- if (value !== 'true' && value !== 'false') {
- throw new Error('Parameter has an incorrect string value.');
- }
- return value === 'true';
- } else {
- throw new Error('Parameter has not a valid type. The parameters must to be string or boolean.');
- }
- }
-
- private castToArray(value: LangOption[] | /* CaptionsLangOption[] |*/ string) {
- if (typeof value === 'string') {
- try {
- return JSON.parse(value);
- } catch (error) {
- throw 'Unexpected JSON' + error;
- }
- } else if (typeof value === 'object' && value.length > 0) {
- return value;
- } else {
- throw new Error(
- `Parameter has not a valid type. The parameters must to be string or LangOption Array: [{name:string, lang: string}].`
- );
- }
- }
-}
diff --git a/openvidu-components-angular/src/app/openvidu-webcomponent/openvidu-webcomponent.main.ts b/openvidu-components-angular/src/app/openvidu-webcomponent/openvidu-webcomponent.main.ts
deleted file mode 100644
index a4cdc71b..00000000
--- a/openvidu-components-angular/src/app/openvidu-webcomponent/openvidu-webcomponent.main.ts
+++ /dev/null
@@ -1,19 +0,0 @@
-import { OpenviduWebComponentModule } from './openvidu-webcomponent.module';
-import { enableProdMode } from '@angular/core';
-import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
-import { environment } from '../../environments/environment';
-import 'zone.js';
-
-if (environment.production) {
- enableProdMode();
-}
-
-/**
- *
- * @internal
- */
-platformBrowserDynamic()
- .bootstrapModule(OpenviduWebComponentModule, {
- ngZone: 'zone.js' // Especificar explícitamente la zona
- })
- .catch((err) => console.error('Error bootstrapping webcomponent:', err));
diff --git a/openvidu-components-angular/src/app/openvidu-webcomponent/openvidu-webcomponent.module.ts b/openvidu-components-angular/src/app/openvidu-webcomponent/openvidu-webcomponent.module.ts
deleted file mode 100644
index 64ffa5cb..00000000
--- a/openvidu-components-angular/src/app/openvidu-webcomponent/openvidu-webcomponent.module.ts
+++ /dev/null
@@ -1,29 +0,0 @@
-import { APP_BASE_HREF, CommonModule } from '@angular/common';
-import { DoBootstrap, Injector, NgModule } from '@angular/core';
-import { BrowserModule } from '@angular/platform-browser';
-import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
-
-import { OpenviduWebComponentComponent } from './openvidu-webcomponent.component';
-
-import { OpenViduComponentsModule, VideoconferenceComponent } from 'openvidu-components-angular';
-import { environment } from '../../environments/environment';
-
-import { createCustomElement } from '@angular/elements';
-
-@NgModule({
- declarations: [OpenviduWebComponentComponent],
- imports: [CommonModule, BrowserModule, BrowserAnimationsModule, OpenViduComponentsModule.forRoot(environment)],
- // exports: [OpenviduWebComponentComponent],
- providers: [{ provide: APP_BASE_HREF, useValue: '/' }, VideoconferenceComponent]
-})
-export class OpenviduWebComponentModule implements DoBootstrap {
- constructor(private injector: Injector) {}
-
- ngDoBootstrap(): void {
- const elementConstructor = createCustomElement(OpenviduWebComponentComponent, {
- injector: this.injector
- });
-
- customElements.define('openvidu-webcomponent', elementConstructor);
- }
-}
diff --git a/openvidu-components-angular/src/app/openvidu-webcomponent/tsconfig.openvidu-webcomponent.json b/openvidu-components-angular/src/app/openvidu-webcomponent/tsconfig.openvidu-webcomponent.json
deleted file mode 100644
index d81ab2e4..00000000
--- a/openvidu-components-angular/src/app/openvidu-webcomponent/tsconfig.openvidu-webcomponent.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "extends": "../../../tsconfig.base.json",
- "compilerOptions": {
- "outDir": "../../../out-tsc/app",
- "types": [],
- "paths": {
- "openvidu-components-angular": ["dist/openvidu-components-angular"]
- },
- "skipLibCheck": true // Livekit track processors fails with typescript types checking
- },
- "files": ["./openvidu-webcomponent.main.ts"],
- "include": ["src/**/*.d.ts"]
-}