ref(TS) Remove unnecessary ts-ignores

This commit is contained in:
Robert Pintilii 2022-09-30 12:08:03 +03:00 committed by GitHub
parent 2de2500080
commit 7364c7f27b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
32 changed files with 46 additions and 73 deletions

1
globals.d.ts vendored
View File

@ -15,5 +15,6 @@ declare global {
interface Window { interface Window {
config?: IConfig; config?: IConfig;
JITSI_MEET_LITE_SDK?: boolean; JITSI_MEET_LITE_SDK?: boolean;
interfaceConfig?: any;
} }
} }

11
package-lock.json generated
View File

@ -49,6 +49,7 @@
"@svgr/webpack": "4.3.2", "@svgr/webpack": "4.3.2",
"@tensorflow/tfjs-backend-wasm": "3.13.0", "@tensorflow/tfjs-backend-wasm": "3.13.0",
"@tensorflow/tfjs-core": "3.13.0", "@tensorflow/tfjs-core": "3.13.0",
"@types/amplitude-js": "8.16.2",
"@types/audioworklet": "0.0.29", "@types/audioworklet": "0.0.29",
"@types/w3c-image-capture": "1.0.6", "@types/w3c-image-capture": "1.0.6",
"@vladmandic/human": "2.6.5", "@vladmandic/human": "2.6.5",
@ -5794,6 +5795,11 @@
"node": ">=10.13.0" "node": ">=10.13.0"
} }
}, },
"node_modules/@types/amplitude-js": {
"version": "8.16.2",
"resolved": "https://registry.npmjs.org/@types/amplitude-js/-/amplitude-js-8.16.2.tgz",
"integrity": "sha512-a+tb/CEQOlrHRvEvAuYNOcoUy1POERANnAhfKgiTmsy0eACj3eukGP0ucA9t115QOPzVUhbnUfZqtyHp99IZyA=="
},
"node_modules/@types/audioworklet": { "node_modules/@types/audioworklet": {
"version": "0.0.29", "version": "0.0.29",
"resolved": "https://registry.npmjs.org/@types/audioworklet/-/audioworklet-0.0.29.tgz", "resolved": "https://registry.npmjs.org/@types/audioworklet/-/audioworklet-0.0.29.tgz",
@ -24683,6 +24689,11 @@
"resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz",
"integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==" "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA=="
}, },
"@types/amplitude-js": {
"version": "8.16.2",
"resolved": "https://registry.npmjs.org/@types/amplitude-js/-/amplitude-js-8.16.2.tgz",
"integrity": "sha512-a+tb/CEQOlrHRvEvAuYNOcoUy1POERANnAhfKgiTmsy0eACj3eukGP0ucA9t115QOPzVUhbnUfZqtyHp99IZyA=="
},
"@types/audioworklet": { "@types/audioworklet": {
"version": "0.0.29", "version": "0.0.29",
"resolved": "https://registry.npmjs.org/@types/audioworklet/-/audioworklet-0.0.29.tgz", "resolved": "https://registry.npmjs.org/@types/audioworklet/-/audioworklet-0.0.29.tgz",

View File

@ -54,6 +54,7 @@
"@svgr/webpack": "4.3.2", "@svgr/webpack": "4.3.2",
"@tensorflow/tfjs-backend-wasm": "3.13.0", "@tensorflow/tfjs-backend-wasm": "3.13.0",
"@tensorflow/tfjs-core": "3.13.0", "@tensorflow/tfjs-core": "3.13.0",
"@types/amplitude-js": "8.16.2",
"@types/audioworklet": "0.0.29", "@types/audioworklet": "0.0.29",
"@types/w3c-image-capture": "1.0.6", "@types/w3c-image-capture": "1.0.6",
"@vladmandic/human": "2.6.5", "@vladmandic/human": "2.6.5",

View File

@ -4,8 +4,7 @@ import { API_ID } from '../../../modules/API/constants';
// @ts-ignore // @ts-ignore
import { getName as getAppName } from '../app/functions'; import { getName as getAppName } from '../app/functions';
import { IStore } from '../app/types'; import { IStore } from '../app/types';
// @ts-ignore import { getAnalyticsRoomName } from '../base/conference/functions';
import { getAnalyticsRoomName } from '../base/conference';
import { import {
checkChromeExtensionsInstalled, checkChromeExtensionsInstalled,
isMobileBrowser isMobileBrowser
@ -14,8 +13,7 @@ import JitsiMeetJS, {
analytics, analytics,
browser browser
} from '../base/lib-jitsi-meet'; } from '../base/lib-jitsi-meet';
// @ts-ignore import { isAnalyticsEnabled } from '../base/lib-jitsi-meet/functions.any';
import { isAnalyticsEnabled } from '../base/lib-jitsi-meet/functions';
// @ts-ignore // @ts-ignore
import { loadScript } from '../base/util'; import { loadScript } from '../base/util';
import { getJitsiMeetGlobalNS } from '../base/util/helpers'; import { getJitsiMeetGlobalNS } from '../base/util/helpers';

View File

@ -1,4 +1,3 @@
// @ts-ignore
import amplitude from 'amplitude-js'; import amplitude from 'amplitude-js';
export default amplitude; export default amplitude;

View File

@ -16,7 +16,6 @@ import {
import { import {
getLocalAudioTrack, getLocalAudioTrack,
getLocalVideoTrack getLocalVideoTrack
// @ts-ignore
} from '../base/tracks/functions'; } from '../base/tracks/functions';
import { createLocalTracksDurationEvent, createNetworkInfoEvent } from './AnalyticsEvents'; import { createLocalTracksDurationEvent, createNetworkInfoEvent } from './AnalyticsEvents';

View File

@ -7,12 +7,10 @@ import type { Dispatch } from 'redux';
import { connect } from '../../../../../connection'; import { connect } from '../../../../../connection';
import { IState } from '../../../app/types'; import { IState } from '../../../app/types';
import { IConfig } from '../../../base/config/configType'; import { IConfig } from '../../../base/config/configType';
// @ts-ignore
import { toJid } from '../../../base/connection/functions'; import { toJid } from '../../../base/connection/functions';
// @ts-ignore // @ts-ignore
import { Dialog } from '../../../base/dialog'; import { Dialog } from '../../../base/dialog';
import { translate, translateToHTML } from '../../../base/i18n/functions'; import { translate, translateToHTML } from '../../../base/i18n/functions';
// @ts-ignore
import { JitsiConnectionErrors } from '../../../base/lib-jitsi-meet'; import { JitsiConnectionErrors } from '../../../base/lib-jitsi-meet';
import { connect as reduxConnect } from '../../../base/redux/functions'; import { connect as reduxConnect } from '../../../base/redux/functions';
import Input from '../../../base/ui/components/web/Input'; import Input from '../../../base/ui/components/web/Input';

View File

@ -1,7 +1,5 @@
import { IStore } from '../app/types'; import { IStore } from '../app/types';
// eslint-disable-next-line lines-around-comment import { getConferenceState } from '../base/conference/functions';
// @ts-ignore
import { getConferenceState } from '../base/conference';
import { MEDIA_TYPE, type MediaType } from '../base/media/constants'; import { MEDIA_TYPE, type MediaType } from '../base/media/constants';
import { getParticipantById, isParticipantModerator } from '../base/participants/functions'; import { getParticipantById, isParticipantModerator } from '../base/participants/functions';
import { Participant } from '../base/participants/types'; import { Participant } from '../base/participants/types';
@ -40,7 +38,7 @@ export const approveParticipantAudio = (id: string) => (dispatch: IStore['dispat
const isVideoForceMuted = isForceMuted(participant, MEDIA_TYPE.VIDEO, state); const isVideoForceMuted = isForceMuted(participant, MEDIA_TYPE.VIDEO, state);
if (isAudioModerationOn || !isVideoModerationOn || !isVideoForceMuted) { if (isAudioModerationOn || !isVideoModerationOn || !isVideoForceMuted) {
conference.avModerationApprove(MEDIA_TYPE.AUDIO, id); conference?.avModerationApprove(MEDIA_TYPE.AUDIO, id);
} }
}; };
@ -59,7 +57,7 @@ export const approveParticipantVideo = (id: string) => (dispatch: IStore['dispat
const isVideoModerationOn = isEnabledFromState(MEDIA_TYPE.VIDEO, state); const isVideoModerationOn = isEnabledFromState(MEDIA_TYPE.VIDEO, state);
if (isVideoModerationOn && isVideoForceMuted) { if (isVideoModerationOn && isVideoForceMuted) {
conference.avModerationApprove(MEDIA_TYPE.VIDEO, id); conference?.avModerationApprove(MEDIA_TYPE.VIDEO, id);
} }
}; };
@ -90,7 +88,7 @@ export const rejectParticipantAudio = (id: string) => (dispatch: IStore['dispatc
const isModerator = isParticipantModerator(participant); const isModerator = isParticipantModerator(participant);
if (audioModeration && !isAudioForceMuted && !isModerator) { if (audioModeration && !isAudioForceMuted && !isModerator) {
conference.avModerationReject(MEDIA_TYPE.AUDIO, id); conference?.avModerationReject(MEDIA_TYPE.AUDIO, id);
} }
}; };
@ -110,7 +108,7 @@ export const rejectParticipantVideo = (id: string) => (dispatch: IStore['dispatc
const isModerator = isParticipantModerator(participant); const isModerator = isParticipantModerator(participant);
if (videoModeration && !isVideoForceMuted && !isModerator) { if (videoModeration && !isVideoForceMuted && !isModerator) {
conference.avModerationReject(MEDIA_TYPE.VIDEO, id); conference?.avModerationReject(MEDIA_TYPE.VIDEO, id);
} }
}; };

View File

@ -2,8 +2,7 @@
import { batch } from 'react-redux'; import { batch } from 'react-redux';
import { APP_WILL_MOUNT, APP_WILL_UNMOUNT } from '../base/app/actionTypes'; import { APP_WILL_MOUNT, APP_WILL_UNMOUNT } from '../base/app/actionTypes';
// @ts-ignore import { getConferenceState } from '../base/conference/functions';
import { getConferenceState } from '../base/conference';
import { JitsiConferenceEvents } from '../base/lib-jitsi-meet'; import { JitsiConferenceEvents } from '../base/lib-jitsi-meet';
import { MEDIA_TYPE, MediaType } from '../base/media/constants'; import { MEDIA_TYPE, MediaType } from '../base/media/constants';
import { PARTICIPANT_UPDATED } from '../base/participants/actionTypes'; import { PARTICIPANT_UPDATED } from '../base/participants/actionTypes';
@ -17,10 +16,8 @@ import {
} from '../base/participants/functions'; } from '../base/participants/functions';
import MiddlewareRegistry from '../base/redux/MiddlewareRegistry'; import MiddlewareRegistry from '../base/redux/MiddlewareRegistry';
import StateListenerRegistry from '../base/redux/StateListenerRegistry'; import StateListenerRegistry from '../base/redux/StateListenerRegistry';
// @ts-ignore import { playSound, registerSound, unregisterSound } from '../base/sounds/actions';
import { playSound, registerSound, unregisterSound } from '../base/sounds'; import { hideNotification, showNotification } from '../notifications/actions';
// @ts-ignore
import { hideNotification, showNotification } from '../notifications';
import { NOTIFICATION_TIMEOUT_TYPE } from '../notifications/constants'; import { NOTIFICATION_TIMEOUT_TYPE } from '../notifications/constants';
// @ts-ignore // @ts-ignore
import { muteLocal } from '../video-menu/actions.any'; import { muteLocal } from '../video-menu/actions.any';
@ -81,7 +78,7 @@ MiddlewareRegistry.register(({ dispatch, getState }) => next => action => {
case LOCAL_PARTICIPANT_MODERATION_NOTIFICATION: { case LOCAL_PARTICIPANT_MODERATION_NOTIFICATION: {
let descriptionKey; let descriptionKey;
let titleKey; let titleKey;
let uid: string | undefined; let uid = '';
const localParticipant = getLocalParticipant(getState); const localParticipant = getLocalParticipant(getState);
const raisedHand = hasRaisedHand(localParticipant); const raisedHand = hasRaisedHand(localParticipant);
@ -118,19 +115,19 @@ MiddlewareRegistry.register(({ dispatch, getState }) => next => action => {
break; break;
} }
case REQUEST_DISABLE_AUDIO_MODERATION: { case REQUEST_DISABLE_AUDIO_MODERATION: {
conference.disableAVModeration(MEDIA_TYPE.AUDIO); conference?.disableAVModeration(MEDIA_TYPE.AUDIO);
break; break;
} }
case REQUEST_DISABLE_VIDEO_MODERATION: { case REQUEST_DISABLE_VIDEO_MODERATION: {
conference.disableAVModeration(MEDIA_TYPE.VIDEO); conference?.disableAVModeration(MEDIA_TYPE.VIDEO);
break; break;
} }
case REQUEST_ENABLE_AUDIO_MODERATION: { case REQUEST_ENABLE_AUDIO_MODERATION: {
conference.enableAVModeration(MEDIA_TYPE.AUDIO); conference?.enableAVModeration(MEDIA_TYPE.AUDIO);
break; break;
} }
case REQUEST_ENABLE_VIDEO_MODERATION: { case REQUEST_ENABLE_VIDEO_MODERATION: {
conference.enableAVModeration(MEDIA_TYPE.VIDEO); conference?.enableAVModeration(MEDIA_TYPE.VIDEO);
break; break;
} }
case PARTICIPANT_UPDATED: { case PARTICIPANT_UPDATED: {

View File

@ -5,7 +5,6 @@ import React, { ReactNode, useEffect, useLayoutEffect, useRef, useState } from '
import { useSelector } from 'react-redux'; import { useSelector } from 'react-redux';
import { makeStyles } from 'tss-react/mui'; import { makeStyles } from 'tss-react/mui';
// @ts-ignore
import { getComputedOuterHeight } from '../../../participants-pane/functions'; import { getComputedOuterHeight } from '../../../participants-pane/functions';
// @ts-ignore // @ts-ignore
import { Drawer, JitsiPortal } from '../../../toolbox/components/web'; import { Drawer, JitsiPortal } from '../../../toolbox/components/web';

View File

@ -1,7 +1,6 @@
/* eslint-disable lines-around-comment */ /* eslint-disable lines-around-comment */
import { LOCKED_LOCALLY, LOCKED_REMOTELY } from '../../room-lock/constants'; import { LOCKED_LOCALLY, LOCKED_REMOTELY } from '../../room-lock/constants';
import { CONNECTION_WILL_CONNECT, SET_LOCATION_URL } from '../connection/actionTypes'; import { CONNECTION_WILL_CONNECT, SET_LOCATION_URL } from '../connection/actionTypes';
// @ts-ignore
import { JitsiConferenceErrors } from '../lib-jitsi-meet'; import { JitsiConferenceErrors } from '../lib-jitsi-meet';
import ReducerRegistry from '../redux/ReducerRegistry'; import ReducerRegistry from '../redux/ReducerRegistry';
import { assign, set } from '../redux/functions'; import { assign, set } from '../redux/functions';
@ -26,7 +25,6 @@ import {
SET_START_MUTED_POLICY, SET_START_MUTED_POLICY,
SET_START_REACTIONS_MUTED SET_START_REACTIONS_MUTED
} from './actionTypes'; } from './actionTypes';
// @ts-ignore
import { isRoomValid } from './functions'; import { isRoomValid } from './functions';
const DEFAULT_STATE = { const DEFAULT_STATE = {
@ -42,6 +40,10 @@ const DEFAULT_STATE = {
export interface IJitsiConference { export interface IJitsiConference {
addTrack: Function; addTrack: Function;
avModerationApprove: Function;
avModerationReject: Function;
disableAVModeration: Function;
enableAVModeration: Function;
getBreakoutRooms: Function; getBreakoutRooms: Function;
getLocalTracks: Function; getLocalTracks: Function;
grantOwner: Function; grantOwner: Function;

View File

@ -116,8 +116,6 @@ export function setConfig(config: Object = {}) {
// On Web the config also comes from the window.config global, // On Web the config also comes from the window.config global,
// but it is resolved in the loadConfig procedure. // but it is resolved in the loadConfig procedure.
config, config,
// @ts-ignore
window.interfaceConfig, window.interfaceConfig,
locationURL); locationURL);
@ -144,7 +142,6 @@ export function storeConfig(baseURL: string, config: Object) {
let b = false; let b = false;
try { try {
// @ts-ignore
if (typeof window.config === 'undefined' || window.config !== config) { if (typeof window.config === 'undefined' || window.config !== config) {
jitsiLocalStorage.setItem(`${_CONFIG_STORE_PREFIX}/${baseURL}`, JSON.stringify(config)); jitsiLocalStorage.setItem(`${_CONFIG_STORE_PREFIX}/${baseURL}`, JSON.stringify(config));
b = true; b = true;

View File

@ -87,9 +87,7 @@ function _setConfig({ dispatch, getState }: IStore, next: Function, action: AnyA
// not be the global variable which is being modified anymore due to // not be the global variable which is being modified anymore due to
// different merge methods being used along the way. The global variable // different merge methods being used along the way. The global variable
// must be synchronized with the final state resolved by the reducer. // must be synchronized with the final state resolved by the reducer.
// @ts-ignore
if (typeof window.config !== 'undefined') { if (typeof window.config !== 'undefined') {
// @ts-ignore
window.config = state['features/base/config']; window.config = state['features/base/config'];
} }

View File

@ -3,7 +3,6 @@ import { Dispatch } from 'redux';
// @ts-ignore // @ts-ignore
import { conferenceLeft, conferenceWillLeave } from '../conference/actions'; import { conferenceLeft, conferenceWillLeave } from '../conference/actions';
// @ts-ignore
import { getCurrentConference } from '../conference/functions'; import { getCurrentConference } from '../conference/functions';
import JitsiMeetJS, { JitsiConnectionEvents } from '../lib-jitsi-meet'; import JitsiMeetJS, { JitsiConnectionEvents } from '../lib-jitsi-meet';

View File

@ -1,6 +1,5 @@
/* eslint-disable lines-around-comment */ /* eslint-disable lines-around-comment */
import { SET_ROOM } from '../conference/actionTypes'; import { SET_ROOM } from '../conference/actionTypes';
// @ts-ignore
import { JitsiConnectionErrors } from '../lib-jitsi-meet'; import { JitsiConnectionErrors } from '../lib-jitsi-meet';
import ReducerRegistry from '../redux/ReducerRegistry'; import ReducerRegistry from '../redux/ReducerRegistry';
import { assign, set } from '../redux/functions'; import { assign, set } from '../redux/functions';
@ -13,7 +12,6 @@ import {
SET_LOCATION_URL, SET_LOCATION_URL,
SHOW_CONNECTION_INFO SHOW_CONNECTION_INFO
} from './actionTypes'; } from './actionTypes';
// @ts-ignore
import { ConnectionFailedError } from './actions.native'; import { ConnectionFailedError } from './actions.native';
export interface IConnectionState { export interface IConnectionState {

View File

@ -8,8 +8,6 @@ import {
SET_VIDEO_INPUT_DEVICE, SET_VIDEO_INPUT_DEVICE,
UPDATE_DEVICE_LIST UPDATE_DEVICE_LIST
} from './actionTypes'; } from './actionTypes';
// eslint-disable-next-line lines-around-comment
// @ts-ignore
import { groupDevicesByKind } from './functions'; import { groupDevicesByKind } from './functions';
import logger from './logger'; import logger from './logger';

View File

@ -1,4 +1,3 @@
// @ts-ignore
import JitsiMeetJS from '../lib-jitsi-meet'; import JitsiMeetJS from '../lib-jitsi-meet';
import Platform from '../react/Platform.web'; import Platform from '../react/Platform.web';

View File

@ -1,5 +1,3 @@
// @flow
import { getLogger } from '../logging/functions'; import { getLogger } from '../logging/functions';
export default getLogger('features/base/i18n'); export default getLogger('features/base/i18n');

View File

@ -4,8 +4,6 @@ import MiddlewareRegistry from '../redux/MiddlewareRegistry';
import { I18NEXT_INITIALIZED, LANGUAGE_CHANGED } from './actionTypes'; import { I18NEXT_INITIALIZED, LANGUAGE_CHANGED } from './actionTypes';
import { changeLanguageBundle } from './functions'; import { changeLanguageBundle } from './functions';
import i18next from './i18next'; import i18next from './i18next';
// eslint-disable-next-line lines-around-comment
// @ts-ignore
import logger from './logger'; import logger from './logger';
/** /**

View File

@ -22,8 +22,6 @@ import {
getParticipantCount getParticipantCount
} from '../participants/functions'; } from '../participants/functions';
import MiddlewareRegistry from '../redux/MiddlewareRegistry'; import MiddlewareRegistry from '../redux/MiddlewareRegistry';
// eslint-disable-next-line lines-around-comment
// @ts-ignore
import { isLocalVideoTrackDesktop } from '../tracks/functions'; import { isLocalVideoTrackDesktop } from '../tracks/functions';
import { setLastN } from './actions'; import { setLastN } from './actions';

View File

@ -7,7 +7,6 @@ import ReducerRegistry from '../redux/ReducerRegistry';
import { set } from '../redux/functions'; import { set } from '../redux/functions';
import { SET_LAST_N } from './actionTypes'; import { SET_LAST_N } from './actionTypes';
// @ts-ignore
import { validateLastNLimits } from './functions'; import { validateLastNLimits } from './functions';
export interface ILastNState { export interface ILastNState {

View File

@ -14,8 +14,7 @@ import {
LIB_WILL_DISPOSE, LIB_WILL_DISPOSE,
LIB_WILL_INIT LIB_WILL_INIT
} from './actionTypes'; } from './actionTypes';
// @ts-ignore import { isAnalyticsEnabled } from './functions.any';
import { isAnalyticsEnabled } from './functions';
/** /**
* Disposes (of) lib-jitsi-meet. * Disposes (of) lib-jitsi-meet.

View File

@ -93,7 +93,6 @@ function _setErrorHandlers() {
if (JitsiMeetJS.getGlobalOnErrorHandler) { if (JitsiMeetJS.getGlobalOnErrorHandler) {
const oldOnErrorHandler = window.onerror; const oldOnErrorHandler = window.onerror;
// @ts-ignore
window.onerror = (message, source, lineno, colno, error) => { // eslint-disable-line max-params window.onerror = (message, source, lineno, colno, error) => { // eslint-disable-line max-params
const errMsg = message || error?.message; const errMsg = message || error?.message;
const stack = error?.stack; const stack = error?.stack;

View File

@ -1,10 +1,6 @@
/* eslint-disable lines-around-comment */
// @ts-ignore
import RTCStats from '../../rtcstats/RTCStats'; import RTCStats from '../../rtcstats/RTCStats';
// @ts-ignore
import { canSendRtcstatsData } from '../../rtcstats/functions'; import { canSendRtcstatsData } from '../../rtcstats/functions';
// @ts-ignore import { getCurrentConference } from '../conference/functions';
import { getCurrentConference } from '../conference';
/** /**
* Implements log storage interface from the @jitsi/logger lib. Captured * Implements log storage interface from the @jitsi/logger lib. Captured

View File

@ -4,16 +4,15 @@ import Logger from '@jitsi/logger';
import { IStore } from '../../app/types'; import { IStore } from '../../app/types';
import { APP_WILL_MOUNT } from '../app/actionTypes'; import { APP_WILL_MOUNT } from '../app/actionTypes';
// @ts-ignore import { CONFERENCE_JOINED } from '../conference/actionTypes';
import { CONFERENCE_JOINED, getCurrentConference } from '../conference'; import { getCurrentConference } from '../conference/functions';
import { SET_CONFIG } from '../config/actionTypes'; import { SET_CONFIG } from '../config/actionTypes';
import JitsiMeetJS, { import JitsiMeetJS, {
JitsiConferenceEvents JitsiConferenceEvents
} from '../lib-jitsi-meet'; } from '../lib-jitsi-meet';
import { LIB_WILL_INIT } from '../lib-jitsi-meet/actionTypes'; import { LIB_WILL_INIT } from '../lib-jitsi-meet/actionTypes';
import MiddlewareRegistry from '../redux/MiddlewareRegistry'; import MiddlewareRegistry from '../redux/MiddlewareRegistry';
// @ts-ignore import { isTestModeEnabled } from '../testing/functions';
import { isTestModeEnabled } from '../testing';
import buildExternalApiLogTransport from './ExternalApiLogTransport'; import buildExternalApiLogTransport from './ExternalApiLogTransport';
import JitsiMeetInMemoryLogStorage from './JitsiMeetInMemoryLogStorage'; import JitsiMeetInMemoryLogStorage from './JitsiMeetInMemoryLogStorage';

View File

@ -120,7 +120,7 @@ export function isVideoMutedByUser(stateful: IStateful) {
* otherwise, false. * otherwise, false.
*/ */
export function shouldRenderVideoTrack( export function shouldRenderVideoTrack(
videoTrack: { muted: boolean; videoStarted: boolean; }, videoTrack: { muted: boolean; videoStarted: boolean; } | undefined,
waitForVideoStarted: boolean) { waitForVideoStarted: boolean) {
return ( return (
videoTrack videoTrack

View File

@ -2,7 +2,6 @@
import './middleware.any.js'; import './middleware.any.js';
import { IStore } from '../../app/types'; import { IStore } from '../../app/types';
// @ts-ignore
import { showNotification } from '../../notifications/actions'; import { showNotification } from '../../notifications/actions';
import { NOTIFICATION_TIMEOUT_TYPE } from '../../notifications/constants'; import { NOTIFICATION_TIMEOUT_TYPE } from '../../notifications/constants';
import LocalRecordingManager from '../../recording/components/Recording/LocalRecordingManager.web'; import LocalRecordingManager from '../../recording/components/Recording/LocalRecordingManager.web';

View File

@ -8,15 +8,12 @@ import { isStageFilmstripAvailable } from '../../filmstrip/functions';
import { IStateful } from '../app/types'; import { IStateful } from '../app/types';
import { GRAVATAR_BASE_URL } from '../avatar/constants'; import { GRAVATAR_BASE_URL } from '../avatar/constants';
import { isCORSAvatarURL } from '../avatar/functions'; import { isCORSAvatarURL } from '../avatar/functions';
// @ts-ignore import { getMultipleVideoSupportFeatureFlag, getSourceNameSignalingFeatureFlag } from '../config/functions.any';
import { getMultipleVideoSupportFeatureFlag, getSourceNameSignalingFeatureFlag } from '../config';
import i18next from '../i18n/i18next'; import i18next from '../i18n/i18next';
import { JitsiParticipantConnectionStatus, JitsiTrackStreamingStatus } from '../lib-jitsi-meet'; import { JitsiParticipantConnectionStatus, JitsiTrackStreamingStatus } from '../lib-jitsi-meet';
// @ts-ignore import { shouldRenderVideoTrack } from '../media/functions';
import { shouldRenderVideoTrack } from '../media';
import { toState } from '../redux/functions'; import { toState } from '../redux/functions';
// @ts-ignore import { getScreenShareTrack, getVideoTrackByParticipant } from '../tracks/functions';
import { getScreenShareTrack, getVideoTrackByParticipant } from '../tracks';
import { createDeferred } from '../util/helpers'; import { createDeferred } from '../util/helpers';
import { JIGASI_PARTICIPANT_ICON, MAX_DISPLAY_NAME_LENGTH, PARTICIPANT_ROLE } from './constants'; import { JIGASI_PARTICIPANT_ICON, MAX_DISPLAY_NAME_LENGTH, PARTICIPANT_ROLE } from './constants';
@ -305,13 +302,14 @@ export function getFakeParticipants(stateful: IStateful) {
* @returns {number} * @returns {number}
*/ */
export function getRemoteParticipantCount(stateful: IStateful) { export function getRemoteParticipantCount(stateful: IStateful) {
const state = toState(stateful)['features/base/participants']; const state = toState(stateful);
const participantsState = state['features/base/participants'];
if (getMultipleVideoSupportFeatureFlag(state)) { if (getMultipleVideoSupportFeatureFlag(state)) {
return state.remote.size - state.sortedRemoteVirtualScreenshareParticipants.size; return participantsState.remote.size - participantsState.sortedRemoteVirtualScreenshareParticipants.size;
} }
return state.remote.size; return participantsState.remote.size;
} }
/** /**

View File

@ -12,7 +12,6 @@ import { IconArrowDownSmall, IconWifi1Bar, IconWifi2Bars, IconWifi3Bars } from '
import { connect } from '../../../redux/functions'; import { connect } from '../../../redux/functions';
import { PREJOIN_DEFAULT_CONTENT_WIDTH } from '../../../ui/components/variables'; import { PREJOIN_DEFAULT_CONTENT_WIDTH } from '../../../ui/components/variables';
import { CONNECTION_TYPE } from '../../constants'; import { CONNECTION_TYPE } from '../../constants';
// @ts-ignore
import { getConnectionData } from '../../functions'; import { getConnectionData } from '../../functions';
interface Props extends WithTranslation { interface Props extends WithTranslation {

View File

@ -9,7 +9,6 @@ import { setPrejoinPageVisibility } from '../../prejoin/actions';
import { APP_WILL_MOUNT } from '../app/actionTypes'; import { APP_WILL_MOUNT } from '../app/actionTypes';
import { setAudioOnly } from '../audio-only/actions'; import { setAudioOnly } from '../audio-only/actions';
import { SET_LOCATION_URL } from '../connection/actionTypes'; // minimize imports to avoid circular imports import { SET_LOCATION_URL } from '../connection/actionTypes'; // minimize imports to avoid circular imports
// @ts-ignore
import { getJwtName } from '../jwt/functions'; import { getJwtName } from '../jwt/functions';
import { participantUpdated } from '../participants/actions'; import { participantUpdated } from '../participants/actions';
import { getLocalParticipant } from '../participants/functions'; import { getLocalParticipant } from '../participants/functions';

View File

@ -10,7 +10,6 @@ import {
_ADD_AUDIO_ELEMENT, _ADD_AUDIO_ELEMENT,
_REMOVE_AUDIO_ELEMENT _REMOVE_AUDIO_ELEMENT
} from './actionTypes'; } from './actionTypes';
// @ts-ignore
import logger from './logger'; import logger from './logger';
/** /**

View File

@ -97,6 +97,7 @@ interface INotificationProps {
description?: string; description?: string;
descriptionKey?: string; descriptionKey?: string;
icon?: string; icon?: string;
sticky?: boolean;
title?: string; title?: string;
titleArguments?: { titleArguments?: {
[key: string]: string; [key: string]: string;