diff --git a/openvidu-browser/config/typedoc.js b/openvidu-browser/config/typedoc.js deleted file mode 100644 index 2c95354e..00000000 --- a/openvidu-browser/config/typedoc.js +++ /dev/null @@ -1,30 +0,0 @@ -module.exports = { - lib: [ - "lib.dom.d.ts", - "lib.es5.d.ts", - "lib.es2015.promise.d.ts", - "lib.scripthost.d.ts" - ], - mode: "file", - module: "commonjs", - name: "OpenVidu Browser", - target: "es5", - externalPattern: "node_modules", - exclude: [ - "**/OpenViduInternal/Interfaces/Private/**", - "**/OpenViduInternal/WebRtcStats/WebRtcStats.ts", - "**/OpenViduInternal/WebRtcPeer/WebRtcPeer.ts", - "**/OpenViduInternal/ScreenSharing/**", - "**/OpenViduInternal/KurentoUtils/**", - "**/OpenViduInternal/Logger/**", - ], - excludeExternals: true, - excludePrivate: true, - excludeProtected: true, - excludeNotExported: true, - theme: "default", - readme: "none", - includeVersion: true, - listInvalidSymbolLinks: true, - out: "./docs" -} \ No newline at end of file diff --git a/openvidu-browser/config/typedoc.json b/openvidu-browser/config/typedoc.json new file mode 100644 index 00000000..aea665c6 --- /dev/null +++ b/openvidu-browser/config/typedoc.json @@ -0,0 +1,16 @@ +{ + "name": "OpenVidu Browser", + "entryPoints": ["src/index.ts"], + "out": "../docs", + "theme": "default", + "readme": "none", + "includeVersion": true, + "validation": { + "notExported": true, + "invalidLink": true + }, + "excludeExternals": true, + "excludePrivate": true, + "excludeProtected": true, + "excludeInternal": true +} \ No newline at end of file diff --git a/openvidu-browser/generate-docs.sh b/openvidu-browser/generate-docs.sh index 3810e947..3d3b4866 100755 --- a/openvidu-browser/generate-docs.sh +++ b/openvidu-browser/generate-docs.sh @@ -9,7 +9,8 @@ fi grep -rl '/en/stable/' src | xargs sed -i -e 's|/en/stable/|/en/'${BASEHREF_VERSION}'/|g' # Generate TypeDoc -./node_modules/typedoc/bin/typedoc --options ./config/typedoc.js ./src +rm -rf ./docs +./node_modules/typedoc/bin/typedoc --options ./config/typedoc.json ./src # Return links to "stable" version grep -rl '/en/'${BASEHREF_VERSION}'/' src | xargs sed -i -e 's|/en/'${BASEHREF_VERSION}'/|/en/stable/|g' diff --git a/openvidu-browser/package.json b/openvidu-browser/package.json index cbdc4964..b9be6b38 100644 --- a/openvidu-browser/package.json +++ b/openvidu-browser/package.json @@ -26,7 +26,7 @@ "terser": "5.10.0", "tsify": "5.0.4", "tslint": "6.1.3", - "typedoc": "0.19.2", + "typedoc": "0.22.10", "typescript": "4.5.4" }, "license": "Apache-2.0", diff --git a/openvidu-browser/src/OpenVidu/OpenVidu.ts b/openvidu-browser/src/OpenVidu/OpenVidu.ts index 34bdeea1..2b635660 100644 --- a/openvidu-browser/src/OpenVidu/OpenVidu.ts +++ b/openvidu-browser/src/OpenVidu/OpenVidu.ts @@ -142,10 +142,6 @@ export class OpenVidu { */ ee = new EventEmitter() - onOrientationChanged(handler): void { - (window).addEventListener('orientationchange', handler); - } - constructor() { platform = PlatformUtils.getInstance(); this.libraryVersion = packageJson.version; @@ -165,49 +161,6 @@ export class OpenVidu { } } - sendNewVideoDimensionsIfRequired(publisher: Publisher, reason: string, WAIT_INTERVAL: number, MAX_ATTEMPTS: number) { - let attempts = 0; - const oldWidth = publisher.stream.videoDimensions.width; - const oldHeight = publisher.stream.videoDimensions.height; - - const repeatUntilChangeOrMaxAttempts: NodeJS.Timeout = setInterval(() => { - attempts++; - if (attempts > MAX_ATTEMPTS) { - clearTimeout(repeatUntilChangeOrMaxAttempts); - } - publisher.getVideoDimensions(publisher.stream.getMediaStream()).then(newDimensions => { - if (newDimensions.width !== oldWidth || newDimensions.height !== oldHeight) { - clearTimeout(repeatUntilChangeOrMaxAttempts); - this.sendVideoDimensionsChangedEvent(publisher, reason, oldWidth, oldHeight, newDimensions.width, newDimensions.height); - } - }); - }, WAIT_INTERVAL); - } - - sendVideoDimensionsChangedEvent(publisher: Publisher, reason: string, oldWidth: number, oldHeight: number, newWidth: number, newHeight: number) { - publisher.stream.videoDimensions = { - width: newWidth || 0, - height: newHeight || 0 - }; - this.sendRequest( - 'streamPropertyChanged', - { - streamId: publisher.stream.streamId, - property: 'videoDimensions', - newValue: JSON.stringify(publisher.stream.videoDimensions), - reason - }, - (error, response) => { - if (error) { - logger.error("Error sending 'streamPropertyChanged' event", error); - } else { - this.session.emitEvent('streamPropertyChanged', [new StreamPropertyChangedEvent(this.session, publisher.stream, 'videoDimensions', publisher.stream.videoDimensions, { width: oldWidth, height: oldHeight }, reason)]); - publisher.emitEvent('streamPropertyChanged', [new StreamPropertyChangedEvent(publisher, publisher.stream, 'videoDimensions', publisher.stream.videoDimensions, { width: oldWidth, height: oldHeight }, reason)]); - this.session.sendVideoData(publisher); - } - }); - }; - /** * Returns new session */ @@ -660,6 +613,62 @@ export class OpenVidu { /* Hidden methods */ + /** + * @hidden + */ + onOrientationChanged(handler): void { + (window).addEventListener('orientationchange', handler); + } + + /** + * @hidden + */ + sendNewVideoDimensionsIfRequired(publisher: Publisher, reason: string, WAIT_INTERVAL: number, MAX_ATTEMPTS: number) { + let attempts = 0; + const oldWidth = publisher.stream.videoDimensions.width; + const oldHeight = publisher.stream.videoDimensions.height; + + const repeatUntilChangeOrMaxAttempts: NodeJS.Timeout = setInterval(() => { + attempts++; + if (attempts > MAX_ATTEMPTS) { + clearTimeout(repeatUntilChangeOrMaxAttempts); + } + publisher.getVideoDimensions(publisher.stream.getMediaStream()).then(newDimensions => { + if (newDimensions.width !== oldWidth || newDimensions.height !== oldHeight) { + clearTimeout(repeatUntilChangeOrMaxAttempts); + this.sendVideoDimensionsChangedEvent(publisher, reason, oldWidth, oldHeight, newDimensions.width, newDimensions.height); + } + }); + }, WAIT_INTERVAL); + } + + /** + * @hidden + */ + sendVideoDimensionsChangedEvent(publisher: Publisher, reason: string, oldWidth: number, oldHeight: number, newWidth: number, newHeight: number) { + publisher.stream.videoDimensions = { + width: newWidth || 0, + height: newHeight || 0 + }; + this.sendRequest( + 'streamPropertyChanged', + { + streamId: publisher.stream.streamId, + property: 'videoDimensions', + newValue: JSON.stringify(publisher.stream.videoDimensions), + reason + }, + (error, response) => { + if (error) { + logger.error("Error sending 'streamPropertyChanged' event", error); + } else { + this.session.emitEvent('streamPropertyChanged', [new StreamPropertyChangedEvent(this.session, publisher.stream, 'videoDimensions', publisher.stream.videoDimensions, { width: oldWidth, height: oldHeight }, reason)]); + publisher.emitEvent('streamPropertyChanged', [new StreamPropertyChangedEvent(publisher, publisher.stream, 'videoDimensions', publisher.stream.videoDimensions, { width: oldWidth, height: oldHeight }, reason)]); + this.session.sendVideoData(publisher); + } + }); + }; + /** * @hidden */ diff --git a/openvidu-browser/src/index.ts b/openvidu-browser/src/index.ts index d86d50cb..3fc5c894 100644 --- a/openvidu-browser/src/index.ts +++ b/openvidu-browser/src/index.ts @@ -11,7 +11,7 @@ export { LocalRecorder } from './OpenVidu/LocalRecorder'; export { Filter } from './OpenVidu/Filter'; export { LocalRecorderState } from './OpenViduInternal/Enums/LocalRecorderState'; -export { OpenViduError } from './OpenViduInternal/Enums/OpenViduError'; +export { OpenViduError, OpenViduErrorName } from './OpenViduInternal/Enums/OpenViduError'; export { VideoInsertMode } from './OpenViduInternal/Enums/VideoInsertMode'; export { Event } from './OpenViduInternal/Events/Event'; @@ -27,7 +27,7 @@ export { StreamPropertyChangedEvent } from './OpenViduInternal/Events/StreamProp export { ConnectionPropertyChangedEvent } from './OpenViduInternal/Events/ConnectionPropertyChangedEvent'; export { FilterEvent } from './OpenViduInternal/Events/FilterEvent'; export { NetworkQualityLevelChangedEvent } from './OpenViduInternal/Events/NetworkQualityLevelChangedEvent'; -export { ExceptionEvent } from './OpenViduInternal/Events/ExceptionEvent'; +export { ExceptionEvent, ExceptionEventName } from './OpenViduInternal/Events/ExceptionEvent'; export { Capabilities } from './OpenViduInternal/Interfaces/Public/Capabilities'; export { Device } from './OpenViduInternal/Interfaces/Public/Device'; @@ -38,5 +38,9 @@ export { SignalOptions } from './OpenViduInternal/Interfaces/Public/SignalOption export { StreamManagerVideo } from './OpenViduInternal/Interfaces/Public/StreamManagerVideo'; export { SubscriberProperties } from './OpenViduInternal/Interfaces/Public/SubscriberProperties'; +export { SessionEventMap } from './OpenViduInternal/Events/EventMap/SessionEventMap'; +export { StreamManagerEventMap } from './OpenViduInternal/Events/EventMap/StreamManagerEventMap'; +export { PublisherEventMap } from './OpenViduInternal/Events/EventMap/PublisherEventMap'; + // Disable jsnlog when library is loaded JL.setOptions({ enabled: false })