diff --git a/app/package.json b/app/package.json index f511c5d3..579676f4 100644 --- a/app/package.json +++ b/app/package.json @@ -1,6 +1,6 @@ { "name": "edumeet", - "version": "3.5.4", + "version": "3.5.5", "private": true, "description": "edumeet meeting service", "author": "Håvar Aambø Fosstveit ", @@ -70,6 +70,7 @@ "source-map-explorer": "^2.1.0", "streamsaver": "^2.0.5", "typescript": "^4.2.4", + "universal-cookie": "4.0.4", "web-streams-polyfill": "^3.0.2", "webtorrent": "^0.108.1" }, @@ -110,6 +111,6 @@ "eslint-webpack-plugin": "^2.5.3", "foreman": "^3.0.1", "redux-mock-store": "^1.5.3", - "ts-node": "^10.5.0" + "ts-node": "^10.9.1" } } diff --git a/app/public/config/README.md b/app/public/config/README.md index 2b59e31f..d5a233a4 100644 --- a/app/public/config/README.md +++ b/app/public/config/README.md @@ -52,6 +52,9 @@ | lockLastN | If true, the users can not change the number of visible speakers. | `"boolean"` | ``false`` | | logo | If not null, it shows the logo loaded from the specified URL, otherwise it shows the title. | `"url"` | ``"images/logo.edumeet.svg"`` | | title | The title to show if the logo is not specified. | `"string"` | ``"edumeet"`` | +| infoTooltipText | Informative text on the join page. If empty hidden. | `"string"` | ``""`` | +| infoTooltipLink | Informative text link site on the join page. If empty hidden. | `"string"` | ``""`` | +| infoTooltipDesc | Informative text description on the join page. If empty hidden. | `"string"` | ``""`` | | supportUrl | The service & Support URL; if `null`, it will be not displayed on the about dialogs. | `"url"` | ``"https://support.example.com"`` | | privacyUrl | The privacy and data protection external URL or local HTML path. | `"string"` | ``"privacy/privacy.html"`` | | theme | UI theme elements colors. | `"object"` | ``{ "palette": { "primary": { "main": "#313131" } }, "overrides": { "MuiAppBar": { "colorPrimary": { "backgroundColor": "#313131" } }, "MuiButton": { "containedPrimary": { "backgroundColor": "#5F9B2D", "&:hover": { "backgroundColor": "#5F9B2D" } }, "containedSecondary": { "backgroundColor": "#f50057", "&:hover": { "backgroundColor": "#f50057" } } }, "MuiFab": { "primary": { "backgroundColor": "#518029", "&:hover": { "backgroundColor": "#518029" }, "&:disabled": { "color": "#999898", "backgroundColor": "#323131" } }, "secondary": { "backgroundColor": "#f50057", "&:hover": { "backgroundColor": "#f50057" }, "&:disabled": { "color": "#999898", "backgroundColor": "#323131" } } }, "MuiBadge": { "colorPrimary": { "backgroundColor": "#5F9B2D", "&:hover": { "backgroundColor": "#518029" } } } }, "typography": { "useNextVariants": true }}`` | diff --git a/app/public/config/config.example.js b/app/public/config/config.example.js index 6cd51625..a09f5a1b 100644 --- a/app/public/config/config.example.js +++ b/app/public/config/config.example.js @@ -304,6 +304,15 @@ var config = { // The title to show if the logo is not specified. title : 'edumeet', + // Informative text on the join page. If empty hidden. + infoTooltipText : '', + + // Informative text link site on the join page. If empty hidden. + infoTooltipLink : '', + + // Informative text description on the join page. If empty hidden. + infoTooltipDesc : '', + // The service & Support URL; if `null`, it will be not displayed on the about dialogs. supportUrl : 'https://support.example.com', diff --git a/app/src/components/JoinDialog.js b/app/src/components/JoinDialog.js index 2346d686..dd070d00 100644 --- a/app/src/components/JoinDialog.js +++ b/app/src/components/JoinDialog.js @@ -39,6 +39,7 @@ import { useHistory, useLocation } from 'react-router-dom'; import IconButton from '@material-ui/core/IconButton'; import Tooltip from '@material-ui/core/Tooltip'; import { config } from '../config'; +import InfoIcon from '@material-ui/icons/Info'; const styles = (theme) => ({ @@ -186,7 +187,6 @@ const JoinDialog = ({ }) => { - const location = useLocation(); const history = useHistory(); @@ -671,6 +671,51 @@ const JoinDialog = ({ + { config.infoTooltipText!=='' && + +
+ + { config.infoTooltipLink!=='' && + {config.infoTooltipText} + } + + { config.infoTooltipLink==='' && +

{config.infoTooltipText}

+ } +
+ } + { config.infoTooltipDesc!=='' && +
+ {config.infoTooltipDesc} +
+ } {/* {authType === 'auth' && !loggedIn && diff --git a/app/src/config.ts b/app/src/config.ts index c0a0eab4..402f6cd4 100644 --- a/app/src/config.ts +++ b/app/src/config.ts @@ -498,6 +498,24 @@ Setting 'play' to null disables the sound notification. format : 'String', default : 'edumeet' }, + infoTooltipText : + { + doc : 'Informative text on the join page. If empty hidden.', + format : 'String', + default : '' + }, + infoTooltipLink : + { + doc : 'Informative text link site on the join page. If empty hidden.', + format : 'String', + default : '' + }, + infoTooltipDesc : + { + doc : 'Informative text description on the join page. If empty hidden.', + format : 'String', + default : '' + }, supportUrl : { doc : 'The service & Support URL; if `null`, it will be not displayed on the about dialogs.', diff --git a/app/src/index.js b/app/src/index.js index 2ab358dd..39a207df 100644 --- a/app/src/index.js +++ b/app/src/index.js @@ -6,7 +6,7 @@ import isElectron from 'is-electron'; import { createIntl } from 'react-intl'; import { IntlProvider } from 'react-intl-redux'; - +import Cookies from 'universal-cookie'; import { Route, HashRouter, BrowserRouter, Switch } from 'react-router-dom'; import randomString from 'random-string'; import Logger from './Logger'; @@ -15,6 +15,7 @@ import RoomClient from './RoomClient'; import RoomContext from './RoomContext'; import deviceInfo from './deviceInfo'; import * as meActions from './store/actions/meActions'; +import * as roomActions from './store/actions/roomActions'; import UnsupportedBrowser from './components/UnsupportedBrowser'; import ConfigDocumentation from './components/ConfigDocumentation'; import ConfigError from './components/ConfigError'; @@ -97,6 +98,25 @@ function run() const displayName = parameters.get('displayName'); const muted = parameters.get('muted') === 'true'; const headless = parameters.get('headless'); + const hideNoVideoParticipants = parameters.get('hideNoVideoParticipants'); + const filmstripmode = parameters.get('filmstrip'); // filmstrip mode by default + const acceptCookie = parameters.get('acceptCookie'); // auto accept cookie popup + const hideSelfView = parameters.get('hideSelfView'); + + if (filmstripmode === 'true') + { + store.dispatch( + roomActions.setDisplayMode('filmstrip') + ); + } + + if (acceptCookie === 'true') + { + const cookies = new Cookies(); + + cookies.set('CookieConsent', 'true', { path: '/' }); + } + const showConfigDocumentationPath = parameters.get('config') === 'true'; const { pathname } = window.location; @@ -218,6 +238,16 @@ function run() basePath }); + if (hideNoVideoParticipants === 'true') + { + roomClient.setHideNoVideoParticipants(true); + } + + if (hideSelfView === 'true') + { + store.dispatch(roomActions.setHideSelfView(hideSelfView)); + } + global.CLIENT = roomClient; render( diff --git a/app/src/intl/translations/cn.json b/app/src/intl/translations/cn.json index 2ce8c456..c38619d4 100644 --- a/app/src/intl/translations/cn.json +++ b/app/src/intl/translations/cn.json @@ -1,12 +1,12 @@ { - "configDocumentation.title": null, - "configError.bodyText": null, - "configError.link": null, - "configError.title": null, + "configDocumentation.title": "Edumeet 配置", + "configError.bodyText": "Edumeet 配置存在如下错误:", + "configError.link": "查看配置文档", + "configError.title": "配置错误", "device.activateAudio": "激活音频", "device.audioUnsupported": "音频不受支持", "device.muteAudio": "静音", - "device.options": null, + "device.options": "设置", "device.screenSharingUnsupported": "不支持屏幕共享", "device.startScreenSharing": "开始屏幕共享", "device.startVideo": "开始视频", @@ -16,12 +16,12 @@ "device.videoUnsupported": "视频不受支持", "devices.cameraDisconnected": "相机已断开连接", "devices.cameraError": "访问相机时发生错误", - "devices.chooseMedia": null, + "devices.chooseMedia": "选择媒体", "devices.devicesChanged": "您的设备已更改,请在设置对话框中配置设备", - "devices.disableBothMicrophoneAndCamera": null, - "devices.enableBothMicrophoneAndCamera": null, - "devices.enableOnlyCamera": null, - "devices.enableOnlyMicrophone": null, + "devices.disableBothMicrophoneAndCamera": "关闭麦克风和摄像头", + "devices.enableBothMicrophoneAndCamera": "打开麦克风和摄像头", + "devices.enableOnlyCamera": "仅打开摄像头", + "devices.enableOnlyMicrophone": "仅打开麦克风", "devices.microphoneDisconnected": "麦克风已断开", "devices.microphoneEnable": "启用了麦克风", "devices.microphoneError": "麦克风发生错误", @@ -33,7 +33,7 @@ "devices.screenSharingError": "访问屏幕时发生错误", "filesharing.download": "下载共享文件", "filesharing.error": "文件共享发生错误", - "filesharing.missingSeeds": "如果此过程需要很长时间,则可能没有人播下该种子。请尝试让某人重新上传您想要的文件。", + "filesharing.missingSeeds": "如果此过程需要很长时间,则可能没有人进行做种。请尝试使上传者重新上传您想要的文件。", "filesharing.save": "保存共享文件", "filesharing.saveFileError": "无法保存文件", "filesharing.startingFileShare": "正在尝试共享文件", @@ -50,14 +50,14 @@ "label.chatNewMessages": null, "label.chatNoMessages": null, "label.close": "关闭", - "label.democratic": "民主视图", + "label.democratic": "主持人视图", "label.fileSharingUnsupported": "不支持文件共享", "label.filmstrip": "幻灯片视图", "label.fullscreen": "全屏", - "label.guest": null, + "label.guest": "访客", "label.high": "高 (HD)", "label.italic": null, - "label.join": null, + "label.join": "入会", "label.leave": "离开", "label.leaveWithSavingChat": null, "label.login": null, @@ -252,4 +252,4 @@ "unsupportedBrowser.bodyText": null, "unsupportedBrowser.titleUnsupportedBrowser": null, "unsupportedBrowser.titlewebrtcUnavailable": null -} \ No newline at end of file +} diff --git a/app/yarn.lock b/app/yarn.lock index c916fe85..a3a0e5ad 100644 --- a/app/yarn.lock +++ b/app/yarn.lock @@ -1209,17 +1209,12 @@ exec-sh "^0.3.2" minimist "^1.2.0" -"@cspotcode/source-map-consumer@0.8.0": - version "0.8.0" - resolved "https://registry.yarnpkg.com/@cspotcode/source-map-consumer/-/source-map-consumer-0.8.0.tgz#33bf4b7b39c178821606f669bbc447a6a629786b" - integrity sha512-41qniHzTU8yAGbCp04ohlmSrZf8bkf/iJsl3V0dRGsQN/5GFfx+LbCSsCpp2gqrqjTVg/K6O8ycoV35JIwAzAg== - -"@cspotcode/source-map-support@0.7.0": - version "0.7.0" - resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.7.0.tgz#4789840aa859e46d2f3173727ab707c66bf344f5" - integrity sha512-X4xqRHqN8ACt2aHVe51OxeA2HjbcL4MqFqXkrmQszJ1NOUuUu5u6Vqx/0lZSVNku7velL5FC/s5uEAj1lsBMhA== +"@cspotcode/source-map-support@^0.8.0": + version "0.8.1" + resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1" + integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw== dependencies: - "@cspotcode/source-map-consumer" "0.8.0" + "@jridgewell/trace-mapping" "0.3.9" "@csstools/convert-colors@^1.4.0": version "1.4.0" @@ -1519,6 +1514,24 @@ "@types/yargs" "^15.0.0" chalk "^4.0.0" +"@jridgewell/resolve-uri@^3.0.3": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" + integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== + +"@jridgewell/sourcemap-codec@^1.4.10": + version "1.4.14" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" + integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== + +"@jridgewell/trace-mapping@0.3.9": + version "0.3.9" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9" + integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ== + dependencies: + "@jridgewell/resolve-uri" "^3.0.3" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@material-ui/core@^4.11.3": version "4.11.4" resolved "https://registry.yarnpkg.com/@material-ui/core/-/core-4.11.4.tgz#4fb9fe5dec5dcf780b687e3a40cff78b2b9640a4" @@ -1931,6 +1944,11 @@ dependencies: "@types/node" "*" +"@types/cookie@^0.3.3": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@types/cookie/-/cookie-0.3.3.tgz#85bc74ba782fb7aa3a514d11767832b0e3bc6803" + integrity sha512-LKVP3cgXBT9RYj+t+9FDKwS5tdI+rPBXaNSkma7hvqy35lc7mAokC2zsqWJH0LaqIt3B962nuYI77hsJoT1gow== + "@types/debug@^4.1.7": version "4.1.7" resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.7.tgz#7cc0ea761509124709b8b2d1090d8f6c17aadb82" @@ -1956,11 +1974,6 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f" integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw== -"@types/events@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/events/-/events-3.0.0.tgz#2862f3f58a9a7f7c3e78d79f130dd4d71c25c2a7" - integrity sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g== - "@types/glob@^7.1.1": version "7.1.3" resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.3.tgz#e6ba80f36b7daad2c685acd9266382e68985c183" @@ -2831,10 +2844,10 @@ autoprefixer@^9.6.1: postcss "^7.0.32" postcss-value-parser "^4.1.0" -awaitqueue@^2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/awaitqueue/-/awaitqueue-2.3.3.tgz#35e6568970fcac3de1644a2c28abc1074045b570" - integrity sha512-RbzQg6VtPUtyErm55iuQLTrBJ2uihy5BKBOEkyBwv67xm5Fn2o/j+Bz+a5BmfSoe2oZ5dcz9Z3fExS8pL+LLhw== +awaitqueue@^2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/awaitqueue/-/awaitqueue-2.4.0.tgz#beb9a2b563b4817921f21c09cca2cdbb0d5989d4" + integrity sha512-9nTnPxVuxiuKFTHslm9ltnekUECJidOQ5kE6JpZUH77KrKqStQuWUW7JPB2GJZ7rOwWLcbToHiIXle/nJe1VpQ== axe-core@^4.0.2: version "4.2.1" @@ -4085,6 +4098,11 @@ cookie@0.4.0: resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.0.tgz#beb437e7022b3b6d49019d088665303ebe9c14ba" integrity sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg== +cookie@^0.4.0: + version "0.4.2" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" + integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA== + copy-concurrently@^1.0.0: version "1.0.5" resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" @@ -4558,10 +4576,10 @@ debug@^3.1.1, debug@^3.2.6, debug@^3.2.7: dependencies: ms "^2.1.1" -debug@^4.3.3: - version "4.3.3" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664" - integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q== +debug@^4.3.4: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== dependencies: ms "2.1.2" @@ -8401,21 +8419,21 @@ media-typer@0.3.0: resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= -mediasoup-client@^3.6.47: - version "3.6.50" - resolved "https://registry.yarnpkg.com/mediasoup-client/-/mediasoup-client-3.6.50.tgz#16ca4fe7e2920c1d0e74c7e9b66bd13a4ebdf44b" - integrity sha512-YSd5GHD3gTyZXUBWDtpCeng1i+pE5dbRQeY11fQWKcFGEao2XaNW/+4FCzLBRNbEJZ2nFVJmxwNSFB4R4Jt/PQ== +mediasoup-client@^3.6.55: + version "3.6.66" + resolved "https://registry.yarnpkg.com/mediasoup-client/-/mediasoup-client-3.6.66.tgz#80e5dc2746b795d44c55901b0b8f5a796b196d87" + integrity sha512-xTT8v42ykXeAgGHH4MsTirtkMZ46hbPkKfbO663l0/vGu9uD1bSR5dFSe+scp6go1LKF+iDLnPyO0mvWLhlAKg== dependencies: "@types/debug" "^4.1.7" - "@types/events" "^3.0.0" - awaitqueue "^2.3.3" + awaitqueue "^2.4.0" bowser "^2.11.0" - debug "^4.3.3" + debug "^4.3.4" events "^3.3.0" fake-mediastreamtrack "^1.1.6" h264-profile-level-id "^1.0.1" sdp-transform "^2.14.1" - supports-color "^9.2.1" + supports-color "^9.2.3" + uuid "^3.4.0" mediasource@^2.2.2, mediasource@^2.3.0: version "2.4.0" @@ -12223,10 +12241,10 @@ supports-color@^7.0.0, supports-color@^7.1.0: dependencies: has-flag "^4.0.0" -supports-color@^9.2.1: - version "9.2.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-9.2.1.tgz#599dc9d45acf74c6176e0d880bab1d7d718fe891" - integrity sha512-Obv7ycoCTG51N7y175StI9BlAXrmgZrFhZOb0/PyjHBher/NmsdBgbbQ1Inhq+gIhz6+7Gb+jWF2Vqi7Mf1xnQ== +supports-color@^9.2.3: + version "9.3.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-9.3.0.tgz#cce566c5ad562eece4dfe5a4502a58efc54986a9" + integrity sha512-hJ6RYjNbcBFkpHi+ykjar+7GgHs+65Kxyw940nBLOSjaWZ13acq4A5f+gWiV5w+xfsg5MbnjDxTigLcUuljerw== supports-hyperlinks@^2.0.0: version "2.2.0" @@ -12540,12 +12558,12 @@ tryer@^1.0.1: resolved "https://registry.yarnpkg.com/tryer/-/tryer-1.0.1.tgz#f2c85406800b9b0f74c9f7465b81eaad241252f8" integrity sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA== -ts-node@^10.5.0: - version "10.5.0" - resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.5.0.tgz#618bef5854c1fbbedf5e31465cbb224a1d524ef9" - integrity sha512-6kEJKwVxAJ35W4akuiysfKwKmjkbYxwQMTBaAxo9KKAx/Yd26mPUyhGz3ji+EsJoAgrLqVsYHNuuYwQe22lbtw== +ts-node@^10.9.1: + version "10.9.1" + resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.1.tgz#e73de9102958af9e1f0b168a6ff320e25adcff4b" + integrity sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw== dependencies: - "@cspotcode/source-map-support" "0.7.0" + "@cspotcode/source-map-support" "^0.8.0" "@tsconfig/node10" "^1.0.7" "@tsconfig/node12" "^1.0.7" "@tsconfig/node14" "^1.0.0" @@ -12556,7 +12574,7 @@ ts-node@^10.5.0: create-require "^1.1.0" diff "^4.0.1" make-error "^1.1.1" - v8-compile-cache-lib "^3.0.0" + v8-compile-cache-lib "^3.0.1" yn "3.1.1" ts-pnp@1.2.0, ts-pnp@^1.1.6: @@ -12771,6 +12789,14 @@ unique-string@^1.0.0: dependencies: crypto-random-string "^1.0.0" +universal-cookie@4.0.4: + version "4.0.4" + resolved "https://registry.yarnpkg.com/universal-cookie/-/universal-cookie-4.0.4.tgz#06e8b3625bf9af049569ef97109b4bb226ad798d" + integrity sha512-lbRVHoOMtItjWbM7TwDLdl8wug7izB0tq3/YVKhT/ahB4VDvWMyvnADfnJI8y6fSvsjh51Ix7lTGC6Tn4rMPhw== + dependencies: + "@types/cookie" "^0.3.3" + cookie "^0.4.0" + universalify@^0.1.0, universalify@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" @@ -12941,10 +12967,10 @@ uuid@^8.1.0, uuid@^8.3.0: resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== -v8-compile-cache-lib@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.0.tgz#0582bcb1c74f3a2ee46487ceecf372e46bce53e8" - integrity sha512-mpSYqfsFvASnSn5qMiwrr4VKfumbPyONLCOPmsR3A6pTY/r0+tSaVbgPWSAIuzbk3lCTa+FForeTiO+wBQGkjA== +v8-compile-cache-lib@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" + integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== v8-compile-cache@^2.0.3: version "2.3.0" diff --git a/server/lib/config/config.ts b/server/lib/config/config.ts index 33eb6c57..d0975b53 100644 --- a/server/lib/config/config.ts +++ b/server/lib/config/config.ts @@ -32,7 +32,7 @@ import { const logger = new Logger('config'); // add network interfaces list -const ifaceWhiteListRegex = '^(eth.*)|(ens.*)|(br.*)|(wl.*)|(ww.*)'; +const ifaceWhiteListRegex = '^(eth.*)|(enp.*)|(ens.*)|(br.*)|(wl.*)|(ww.*)'; // add parsers convict.addParser([ diff --git a/server/package.json b/server/package.json index dd82201c..d6987a96 100644 --- a/server/package.json +++ b/server/package.json @@ -1,6 +1,6 @@ { "name": "edumeet-server", - "version": "3.5.4", + "version": "3.5.5", "private": true, "description": "edumeet server", "author": "Håvar Aambø Fosstveit ", @@ -15,7 +15,7 @@ "main": "lib/index.js", "scripts": { "start": "node dist/server.js", - "build": "mkdir -p dist && find dist/* -maxdepth 0 ! -name public -exec rm -rf {} \\; && tsc && ln -s ../certs dist/certs && chmod 755 dist/server.js && ( for fileExt in yaml json toml ; do [ -f config/config.$fileExt ] && cp config/config.$fileExt dist/config/; done ) | true && touch 'dist/ __AUTO_GENERATED_CONTENT_REFRESHED_AFTER_REBUILDING!__ '", + "build": "mkdir -p dist && touch dist/tmp && find dist/* -maxdepth 0 ! -name public -exec rm -rf {} \\; && tsc && ln -s ../certs dist/certs && chmod 755 dist/server.js && ( for fileExt in yaml json toml ; do [ -f config/config.$fileExt ] && cp config/config.$fileExt dist/config/; done ) | true && touch 'dist/ __AUTO_GENERATED_CONTENT_REFRESHED_AFTER_REBUILDING!__ '", "dev": "nodemon --exec ts-node --ignore dist/ -e js,ts server.js", "connect": "ts-node connect.js", "lint": "eslint ./ --ext .js,.ts; exit 0", diff --git a/server/yarn.lock b/server/yarn.lock index 9280519a..1bcf9d2d 100644 --- a/server/yarn.lock +++ b/server/yarn.lock @@ -909,7 +909,7 @@ debug@2.6.9, debug@^2.6.9, debug@~2.6.0: dependencies: ms "2.0.0" -debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3: +debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2: version "4.3.3" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664" integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q== @@ -923,6 +923,13 @@ debug@^3.2.7: dependencies: ms "^2.1.1" +debug@^4.3.4: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + debug@~3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" @@ -2189,16 +2196,15 @@ media-typer@0.3.0: resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= -mediasoup@3.9.6: - version "3.9.6" - resolved "https://registry.yarnpkg.com/mediasoup/-/mediasoup-3.9.6.tgz#406d6e5eea9096fa55df2b890ab1c42df2547b15" - integrity sha512-eRWdsyO5m9IN3EHJ1cST4Muv+ddhZbBcvDLUGHVoRm34l5xiB/2F9H0iL7aASVSis0yWN9O/ogqEAb4J6xDDlA== +mediasoup@3.10.5: + version "3.10.5" + resolved "https://registry.yarnpkg.com/mediasoup/-/mediasoup-3.10.5.tgz#bbc0da60286b4c9e44331308249d123a0e996738" + integrity sha512-qYxJvCPcHndEP5vuIUgk+b/YjFq2vlVxX7BnYLxhTC/qYZF6103o/6J7HgwxAfLpkLLEyBq+g3nSBXxretPo/Q== dependencies: "@types/node" "^16.11.10" - debug "^4.3.3" + debug "^4.3.4" h264-profile-level-id "^1.0.1" - random-number "^0.0.9" - supports-color "^9.2.1" + supports-color "^9.2.2" uuid "^8.3.2" merge-descriptors@1.0.1: @@ -2698,11 +2704,6 @@ random-bytes@~1.0.0: resolved "https://registry.yarnpkg.com/random-bytes/-/random-bytes-1.0.0.tgz#4f68a1dc0ae58bd3fb95848c30324db75d64360b" integrity sha1-T2ih3Arli9P7lYSMMDJNt11kNgs= -random-number@^0.0.9: - version "0.0.9" - resolved "https://registry.yarnpkg.com/random-number/-/random-number-0.0.9.tgz#5907b96f05041807c52aed601c869524d86fbbd5" - integrity sha512-ipG3kRCREi/YQpi2A5QGcvDz1KemohovWmH6qGfboVyyGdR2t/7zQz0vFxrfxpbHQgPPdtVlUDaks3aikD1Ljw== - range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" @@ -3154,10 +3155,10 @@ supports-color@^7.1.0: dependencies: has-flag "^4.0.0" -supports-color@^9.2.1: - version "9.2.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-9.2.1.tgz#599dc9d45acf74c6176e0d880bab1d7d718fe891" - integrity sha512-Obv7ycoCTG51N7y175StI9BlAXrmgZrFhZOb0/PyjHBher/NmsdBgbbQ1Inhq+gIhz6+7Gb+jWF2Vqi7Mf1xnQ== +supports-color@^9.2.2: + version "9.3.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-9.3.0.tgz#cce566c5ad562eece4dfe5a4502a58efc54986a9" + integrity sha512-hJ6RYjNbcBFkpHi+ykjar+7GgHs+65Kxyw940nBLOSjaWZ13acq4A5f+gWiV5w+xfsg5MbnjDxTigLcUuljerw== supports-preserve-symlinks-flag@^1.0.0: version "1.0.0"