Up until now we relied on implicit loading of middlewares and reducers, through having imports in each feature's index.js. This leads to many complex import cycles which result in (sometimes) hard to fix bugs in addition to (often) breaking mobile because a web-only feature gets imported on mobile too, thanks to the implicit loading. This PR changes that to make the process explicit. Both middlewares and reducers are imported in a single place, the app entrypoint. They have been divided into 3 categories: any, web and native, which represent each of the platforms respectively. Ideally no feature should have an index.js exporting actions, action types and components, but that's a larger ordeal, so this is just the first step in getting there. In order to both set example and avoid large cycles the app feature has been refactored to not have an idex.js itself.
30 lines
1.4 KiB
JavaScript
30 lines
1.4 KiB
JavaScript
// Re-export JitsiMeetJS from the library lib-jitsi-meet to (the other features
|
|
// of) the project jitsi-meet.
|
|
import JitsiMeetJS from './_';
|
|
export { JitsiMeetJS as default };
|
|
|
|
// XXX Re-export the properties exported by JitsiMeetJS in order to prevent
|
|
// undefined imported JitsiMeetJS. It may be caused by import cycles but I have
|
|
// not confirmed the theory.
|
|
export const analytics = JitsiMeetJS.analytics;
|
|
export const browser = JitsiMeetJS.util.browser;
|
|
export const JitsiConferenceErrors = JitsiMeetJS.errors.conference;
|
|
export const JitsiConferenceEvents = JitsiMeetJS.events.conference;
|
|
export const JitsiConnectionErrors = JitsiMeetJS.errors.connection;
|
|
export const JitsiConnectionEvents = JitsiMeetJS.events.connection;
|
|
export const JitsiConnectionQualityEvents
|
|
= JitsiMeetJS.events.connectionQuality;
|
|
export const JitsiDetectionEvents = JitsiMeetJS.events.detection;
|
|
export const JitsiE2ePingEvents = JitsiMeetJS.events.e2eping;
|
|
export const JitsiMediaDevicesEvents = JitsiMeetJS.events.mediaDevices;
|
|
export const JitsiParticipantConnectionStatus
|
|
= JitsiMeetJS.constants.participantConnectionStatus;
|
|
export const JitsiRecordingConstants = JitsiMeetJS.constants.recording;
|
|
export const JitsiSIPVideoGWStatus = JitsiMeetJS.constants.sipVideoGW;
|
|
export const JitsiTrackErrors = JitsiMeetJS.errors.track;
|
|
export const JitsiTrackEvents = JitsiMeetJS.events.track;
|
|
|
|
export * from './actions';
|
|
export * from './actionTypes';
|
|
export * from './functions';
|