From 008ea589dcdb792d6baff8cd46e3b0e9388de43d Mon Sep 17 00:00:00 2001 From: Oliver Gramberg Date: Tue, 4 May 2021 20:10:54 +0000 Subject: [PATCH 1/9] Translated using Weblate (German) Currently translated at 100.0% (34 of 34 strings) Translation: Element Web/element-web Translate-URL: https://translate.element.io/projects/element-web/element-web/de/ --- src/i18n/strings/de_DE.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index 0052218a9f..3fdd5390a7 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -2,7 +2,7 @@ "powered by Matrix": "betrieben mit Matrix", "Dismiss": "Ausblenden", "Unknown device": "Unbekanntes Gerät", - "You need to be using HTTPS to place a screen-sharing call.": "Du musst HTTPS nutzen um einen Anruf mit Bildschirmfreigabe durchzuführen.", + "You need to be using HTTPS to place a screen-sharing call.": "Du musst HTTPS nutzen, um einen Anruf mit Bildschirmfreigabe durchzuführen.", "Welcome to Element": "Willkommen bei Element", "Decentralised, encrypted chat & collaboration powered by [matrix]": "Dezentrale, verschlüsselte Chat- & Kollaborationslösung mittels [matrix]", "Sign In": "Anmelden", From b39b92eb2092d02ebfac9ca37394f53b40d5ad38 Mon Sep 17 00:00:00 2001 From: Bartosz Date: Wed, 5 May 2021 20:22:38 +0000 Subject: [PATCH 2/9] Translated using Weblate (Polish) Currently translated at 100.0% (34 of 34 strings) Translation: Element Web/element-web Translate-URL: https://translate.element.io/projects/element-web/element-web/pl/ --- src/i18n/strings/pl.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/i18n/strings/pl.json b/src/i18n/strings/pl.json index 4c9329cf0c..19f5e8e455 100644 --- a/src/i18n/strings/pl.json +++ b/src/i18n/strings/pl.json @@ -32,5 +32,6 @@ "%(brand)s uses advanced browser features which aren't supported by your current browser.": "%(brand)s używa zaawansowanych funkcji przeglądarki, które nie są dostępne w twojej przeglądarce.", "Your Element configuration contains invalid JSON. Please correct the problem and reload the page.": "Konfiguracja Elementa zawiera niepoprawny JSON. Popraw konfiguracje i odśwież stronę.", "Your Element is misconfigured": "Element jest nieprawidłowo skonfigurowany", - "Powered by Matrix": "Zasilane przez Matrix" + "Powered by Matrix": "Zasilane przez Matrix", + "Use %(brand)s on mobile": "Użyj %(brand)s w telefonie" } From 12c56fb6478699df893e4a26a08e653be0bbcd7b Mon Sep 17 00:00:00 2001 From: Quang Trung Date: Wed, 5 May 2021 13:59:00 +0000 Subject: [PATCH 3/9] Translated using Weblate (Vietnamese) Currently translated at 100.0% (34 of 34 strings) Translation: Element Web/element-web Translate-URL: https://translate.element.io/projects/element-web/element-web/vi/ --- src/i18n/strings/vi.json | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/i18n/strings/vi.json b/src/i18n/strings/vi.json index 03581c75ea..6547c6f79f 100644 --- a/src/i18n/strings/vi.json +++ b/src/i18n/strings/vi.json @@ -6,7 +6,7 @@ "Welcome to Element": "Chào mừng tới Element", "Decentralised, encrypted chat & collaboration powered by [matrix]": "Chat phân tán, mã hóa & giao tiếp được tài trợ bởi [matrix]", "Unexpected error preparing the app. See console for details.": "Lỗi xảy ra trong lúc chuẩn bị app. Xem console log để biết chi tiết.", - "The message from the parser is: %(message)s": "Nội dung tin là: %(message)s", + "The message from the parser is: %(message)s": "Thông báo của trình xử lý là: %(message)s", "Invalid JSON": "JSON không hợp lệ", "Invalid configuration: can only specify one of default_server_config, default_server_name, or default_hs_url.": "Thiết lập không hợp lệ: chỉ có thể điền một trong số default_server_config, default_server_name, hoặc default_hs_url.", "Invalid configuration: no default server specified.": "Cấu hình không hợp lệ: máy chủ mặc định không được thiết lập.", @@ -23,8 +23,15 @@ "Unsupported browser": "Trình duyệt không được hỗ trợ", "Go to your browser to complete Sign In": "Mở trình duyệt web để hoàn thành đăng nhập", "%(brand)s Desktop (%(platformName)s)": "%(brand)s Máy tính để bàn (%(platformName)s)", - "Previous/next recently visited room or community": "Phòng chat hoặc cộng đồng gần đây trước/tiếp theo", + "Previous/next recently visited room or community": "Phòng chat hoặc cộng đồng đã đi đến gần đây trước/tiếp theo", "Open user settings": "Mở cài đặt người dùng", "Open": "Mở", - "Unable to load config file: please refresh the page to try again.": "Không thể tải tệp cấu hình: hãy làm mới trang để thử lại." + "Unable to load config file: please refresh the page to try again.": "Không thể tải tệp cấu hình: hãy làm mới trang để thử lại.", + "Failed to start": "Khởi động thất bại", + "Use %(brand)s on mobile": "Sử dụng %(brand)s trên di động", + "Powered by Matrix": "Được chạy bởi công nghệ Matrix", + "%(appName)s (%(browserName)s, %(osName)s)": "%(appName)s (%(browserName)s, %(osName)s)", + "Missing indexeddb worker script!": "Thiếu tệp lệnh làm việc của indexeddb!", + "Your Element configuration contains invalid JSON. Please correct the problem and reload the page.": "Thiết lập Element của bạn chứa JSON không hợp lệ. Vui lòng sửa vấn đề và tải lại trang.", + "Your Element is misconfigured": "Element của bạn bị thiết lập sai" } From 07a0af2aaef1931e6a4cda7173f04c53fd74e0f6 Mon Sep 17 00:00:00 2001 From: Travis Ralston Date: Thu, 6 May 2021 21:51:03 -0600 Subject: [PATCH 4/9] Add required webpack config to load Safari support modules See https://github.com/matrix-org/matrix-react-sdk/pull/5989 --- webpack.config.js | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/webpack.config.js b/webpack.config.js index 560beec121..9d7fa703d9 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -47,6 +47,11 @@ module.exports = (env, argv) => { return { ...development, + node: { + // Mock out the NodeFS module: The opus decoder imports this wrongly. + fs: 'empty', + }, + entry: { "bundle": "./src/vector/index.ts", "indexeddb-worker": "./src/vector/indexeddb-worker.js", @@ -278,6 +283,43 @@ module.exports = (env, argv) => { outputPath: '.', }, }, + { + // This is from the same place as the encoderWorker above, but only needed + // for Safari support. + test: /decoderWorker\.min\.js$/, + loader: "file-loader", + type: "javascript/auto", // https://github.com/webpack/webpack/issues/6725 + options: { + // We deliberately override the name so it makes sense in debugging + name: 'opus-decoderWorker.min.[hash:7].[ext]', + outputPath: '.', + }, + }, + { + // This is from the same place as the encoderWorker above, but only needed + // for Safari support. + test: /decoderWorker\.min\.wasm$/, + loader: "file-loader", + type: "javascript/auto", // https://github.com/webpack/webpack/issues/6725 + options: { + // We deliberately don't change the name because the decoderWorker has this + // hardcoded. This is here to avoid the default wasm rule from adding a hash. + name: 'decoderWorker.min.wasm', + outputPath: '.', + }, + }, + { + // This is from the same place as the encoderWorker above, but only needed + // for Safari support. + test: /waveWorker\.min\.js$/, + loader: "file-loader", + type: "javascript/auto", // https://github.com/webpack/webpack/issues/6725 + options: { + // We deliberately override the name so it makes sense in debugging + name: 'wave-encoderWorker.min.[hash:7].[ext]', + outputPath: '.', + }, + }, { // cache-bust languages.json file placed in // element-web/webapp/i18n during build by copy-res.js From 6c8d52f8df12e74c8d897b4a2e08b7532e2533a4 Mon Sep 17 00:00:00 2001 From: Travis Ralston Date: Thu, 6 May 2021 22:14:33 -0600 Subject: [PATCH 5/9] Add jest config too --- package.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index cb629f17b7..632e6cbf9d 100644 --- a/package.json +++ b/package.json @@ -167,7 +167,10 @@ "^react$": "/node_modules/react", "^react-dom$": "/node_modules/react-dom", "^matrix-js-sdk$": "/node_modules/matrix-js-sdk/src", - "^matrix-react-sdk$": "/node_modules/matrix-react-sdk/src" + "^matrix-react-sdk$": "/node_modules/matrix-react-sdk/src", + "decoderWorker\\.min\\.js": "/node_modules/matrix-react-sdk/__mocks__/empty.js", + "decoderWorker\\.min\\.wasm": "/node_modules/matrix-react-sdk/__mocks__/empty.js", + "waveWorker\\.min\\.js": "/node_modules/matrix-react-sdk/__mocks__/empty.js" }, "transformIgnorePatterns": [ "/node_modules/(?!matrix-js-sdk).+$", From c246d7839fd090536e47f491f9ee598fb3e1daef Mon Sep 17 00:00:00 2001 From: Travis Ralston Date: Fri, 7 May 2021 19:37:40 -0600 Subject: [PATCH 6/9] Remove "in development" flag from voice messages labs documentation See https://github.com/matrix-org/matrix-react-sdk/pull/5995 --- docs/labs.md | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/docs/labs.md b/docs/labs.md index 3dff4474ca..3907959793 100644 --- a/docs/labs.md +++ b/docs/labs.md @@ -124,12 +124,9 @@ or feedback for this functionality at this time. Allows users to receive encrypted messages by creating a device that is stored encrypted on the server, as described in [MSC2697](https://github.com/matrix-org/matrix-doc/pull/2697). -## Voice messages (`feature_voice_messages`) [In Development] +## Voice messages (`feature_voice_messages`) -An in-progress implementation of [MSC2516](https://github.com/matrix-org/matrix-doc/pull/2516) to add -[voice messages](https://github.com/vector-im/element-web/issues/1358) to Element. Note that this feature -is currently under active development and therefore is entirely incomplete and may not work at all - it -is not recommended for general use at this time. +An implementation of [voice messages](https://github.com/vector-im/element-web/issues/1358) in Element. ## Do not disturb (`feature_dnd`) From dbd4e209d32adad4cbd68ef6db344b1847a11246 Mon Sep 17 00:00:00 2001 From: "J. Ryan Stinnett" Date: Mon, 10 May 2021 15:00:56 +0100 Subject: [PATCH 7/9] Switch back to release version of `sanitize-html` The limit depth option has been available in a released version for a while now. --- package.json | 4 ++-- yarn.lock | 56 +++++++++++++++++++--------------------------------- 2 files changed, 22 insertions(+), 38 deletions(-) diff --git a/package.json b/package.json index 2a92db9532..66459d89fa 100644 --- a/package.json +++ b/package.json @@ -65,7 +65,7 @@ "prop-types": "^15.7.2", "react": "^16.14.0", "react-dom": "^16.14.0", - "sanitize-html": "github:apostrophecms/sanitize-html#3c7f93f2058f696f5359e3e58d464161647226db", + "sanitize-html": "^2.3.2", "ua-parser-js": "^0.7.24" }, "devDependencies": { @@ -92,7 +92,7 @@ "@types/node": "^14.14.22", "@types/react": "^16.9", "@types/react-dom": "^16.9.10", - "@types/sanitize-html": "^1.27.1", + "@types/sanitize-html": "^2.3.1", "autoprefixer": "^9.8.6", "babel-eslint": "^10.1.0", "babel-jest": "^26.6.3", diff --git a/yarn.lock b/yarn.lock index d613d65ac0..04c2d9d7bf 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1561,12 +1561,12 @@ "@types/prop-types" "*" csstype "^3.0.2" -"@types/sanitize-html@^1.27.1": - version "1.27.1" - resolved "https://registry.yarnpkg.com/@types/sanitize-html/-/sanitize-html-1.27.1.tgz#1fc4b67edd6296eeb366960d13cd01f5d6bffdcd" - integrity sha512-TW5gfZYplKQYO8003WrxaDgwyJsEG74920S+Ei7zB9mbUFgm7l2NvFAumXzxL+1fOwM2I9A+G/1rgiEebQOxcQ== +"@types/sanitize-html@^2.3.1": + version "2.3.1" + resolved "https://registry.yarnpkg.com/@types/sanitize-html/-/sanitize-html-2.3.1.tgz#094d696b83b7394b016e96342bbffa6a028795ce" + integrity sha512-+UT/XRluJuCunRftwO6OzG6WOBgJ+J3sROIoSJWX+7PB2FtTJTEJLrHCcNwzCQc0r60bej3WAbaigK+VZtZCGw== dependencies: - htmlparser2 "^4.1.0" + htmlparser2 "^6.0.0" "@types/source-list-map@*": version "0.1.2" @@ -4051,13 +4051,6 @@ domhandler@^2.3.0: dependencies: domelementtype "1" -domhandler@^3.0.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-3.3.0.tgz#6db7ea46e4617eb15cf875df68b2b8524ce0037a" - integrity sha512-J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA== - dependencies: - domelementtype "^2.0.1" - domhandler@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.0.0.tgz#01ea7821de996d85f69029e81fa873c21833098e" @@ -4073,7 +4066,7 @@ domutils@^1.5.1, domutils@^1.7.0: dom-serializer "0" domelementtype "1" -domutils@^2.0.0, domutils@^2.4.3, domutils@^2.4.4: +domutils@^2.4.3, domutils@^2.4.4: version "2.4.4" resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.4.4.tgz#282739c4b150d022d34699797369aad8d19bbbd3" integrity sha512-jBC0vOsECI4OMdD0GC9mGn7NXPLb+Qt6KW1YDQzeQYRUFKmNG8lh7mO5HiELfr+lLQE7loDVI4QcAxV80HS+RA== @@ -5848,16 +5841,6 @@ htmlparser2@^3.10.0, htmlparser2@^3.10.1: inherits "^2.0.1" readable-stream "^3.1.1" -htmlparser2@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-4.1.0.tgz#9a4ef161f2e4625ebf7dfbe6c0a2f52d18a59e78" - integrity sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q== - dependencies: - domelementtype "^2.0.1" - domhandler "^3.0.0" - domutils "^2.0.0" - entities "^2.0.0" - htmlparser2@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.0.0.tgz#c2da005030390908ca4c91e5629e418e0665ac01" @@ -7653,8 +7636,8 @@ matrix-mock-request@^1.2.3: expect "^1.20.2" "matrix-react-sdk@github:matrix-org/matrix-react-sdk#develop": - version "3.19.0" - resolved "https://codeload.github.com/matrix-org/matrix-react-sdk/tar.gz/3817aaeaca9622c56894df4092b5ce727b943f64" + version "3.20.0" + resolved "https://codeload.github.com/matrix-org/matrix-react-sdk/tar.gz/1b372b17e039db98a9dba34ba90e25e5433b1aec" dependencies: "@babel/runtime" "^7.12.5" await-lock "^2.1.0" @@ -7700,7 +7683,7 @@ matrix-mock-request@^1.2.3: react-transition-group "^4.4.1" resize-observer-polyfill "^1.5.1" rfc4648 "^1.4.0" - sanitize-html "github:apostrophecms/sanitize-html#3c7f93f2058f696f5359e3e58d464161647226db" + sanitize-html "^2.3.2" tar-js "^0.3.0" text-encoding-utf-8 "^1.0.2" url "^0.11.0" @@ -8807,6 +8790,11 @@ parse-passwd@^1.0.0: resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY= +parse-srcset@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/parse-srcset/-/parse-srcset-1.0.2.tgz#f2bd221f6cc970a938d88556abc589caaaa2bde1" + integrity sha1-8r0iH2zJcKk42IVWq8WJyqqiveE= + parse5-htmlparser2-tree-adapter@^6.0.0: version "6.0.1" resolved "https://registry.yarnpkg.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz#2cdf9ad823321140370d4dbf5d3e92c7c8ddc6e6" @@ -10693,17 +10681,18 @@ sane@^4.0.3: minimist "^1.1.1" walker "~1.0.5" -"sanitize-html@github:apostrophecms/sanitize-html#3c7f93f2058f696f5359e3e58d464161647226db": - version "2.0.0-rc.3" - resolved "https://codeload.github.com/apostrophecms/sanitize-html/tar.gz/3c7f93f2058f696f5359e3e58d464161647226db" +sanitize-html@^2.3.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/sanitize-html/-/sanitize-html-2.3.3.tgz#3db382c9a621cce4c46d90f10c64f1e9da9e8353" + integrity sha512-DCFXPt7Di0c6JUnlT90eIgrjs6TsJl/8HYU3KLdmrVclFN4O0heTcVbJiMa23OKVr6aR051XYtsgd8EWwEBwUA== dependencies: deepmerge "^4.2.2" escape-string-regexp "^4.0.0" - htmlparser2 "^4.1.0" + htmlparser2 "^6.0.0" is-plain-object "^5.0.0" klona "^2.0.3" + parse-srcset "^1.0.2" postcss "^8.0.2" - srcset "^3.0.0" sax@^1.2.4, sax@~1.2.4: version "1.2.4" @@ -11177,11 +11166,6 @@ sprintf-js@~1.0.2: resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= -srcset@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/srcset/-/srcset-3.0.0.tgz#8afd8b971362dfc129ae9c1a99b3897301ce6441" - integrity sha512-D59vF08Qzu/C4GAOXVgMTLfgryt5fyWo93FZyhEWANo0PokFz/iWdDe13mX3O5TRf6l8vMTqckAfR4zPiaH0yQ== - sshpk@^1.7.0: version "1.16.1" resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" From 45424f4a3bac2a4f5092ce5df8b0529905ebae49 Mon Sep 17 00:00:00 2001 From: Travis Ralston Date: Mon, 10 May 2021 19:03:57 -0600 Subject: [PATCH 8/9] Better words? --- docs/labs.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/labs.md b/docs/labs.md index 3907959793..eb2956f22e 100644 --- a/docs/labs.md +++ b/docs/labs.md @@ -126,7 +126,11 @@ encrypted on the server, as described in [MSC2697](https://github.com/matrix-org ## Voice messages (`feature_voice_messages`) -An implementation of [voice messages](https://github.com/vector-im/element-web/issues/1358) in Element. +Offers a way to send more time-sensitive information through the power of voice. When enabled, use the microphone +icon on the lower right to start recording your message. You will have a chance to review after you're done recording, +and if it sounds fine then send it off for the rest of the room to hear. + +Voice messages are automatically downloaded to ensure they are ready for playback as soon as possible. ## Do not disturb (`feature_dnd`) From d998fa88e610d2de5c0ecf688aa1827972141005 Mon Sep 17 00:00:00 2001 From: Hivaa Date: Mon, 10 May 2021 10:09:22 +0000 Subject: [PATCH 9/9] Translated using Weblate (Persian) Currently translated at 100.0% (34 of 34 strings) Translation: Element Web/element-web Translate-URL: https://translate.element.io/projects/element-web/element-web/fa/ --- src/i18n/strings/fa.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/i18n/strings/fa.json b/src/i18n/strings/fa.json index 2b504cf382..38b4441b00 100644 --- a/src/i18n/strings/fa.json +++ b/src/i18n/strings/fa.json @@ -26,11 +26,12 @@ "%(appName)s (%(browserName)s, %(osName)s)": "%(appName)s%(browserName)s، %(osName)s", "Unsupported browser": "مرورگر پش‬تبانی نشده", "Your browser can't run %(brand)s": "مرورگر شما نمیتواند %(brand)s را اجرا کند", - "%(brand)s uses advanced browser features which aren't supported by your current browser.": "%(brand)s از ویژگی های پیشرفته مرورگر استفاده میکند که که در مرورگر فعلی شما پشتیبانی نمیشوند.", + "%(brand)s uses advanced browser features which aren't supported by your current browser.": "%(brand)s از ویژگی های پیشرفته مرورگر استفاده میکند که در مرورگر فعلی شما پشتیبانی نمیشوند.", "Please install Chrome, Firefox, or Safari for the best experience.": "لطفا برای تجربه بهتر کروم، فایرفاکس، یا سافاری را نصب کنید.", "You can continue using your current browser, but some or all features may not work and the look and feel of the application may be incorrect.": "شما میتوانید با مرورگر فعلی خود ادامه دهید، اما ممکن است برخی یا کل ویژگی ها کار نکنند و نگاه و احساس از برنامه ممکن است درست نباشد.", "I understand the risks and wish to continue": "از خطرات این کار آگاهم و مایلم که ادامه بدهم", "Go to element.io": "برو به element.io", "Failed to start": "مشکل در آغاز", - "Powered by Matrix": "قدرت‌گرفته از ماتریکس" + "Powered by Matrix": "قدرت‌گرفته از ماتریکس", + "Use %(brand)s on mobile": "استفاده از %(brand)s روی گوشی" }