diff --git a/.changeset/avatars.md b/.changeset/avatars.md deleted file mode 100644 index 954693d0db..0000000000 --- a/.changeset/avatars.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -sable: minor ---- - -Add avatars to calls by forking element call, among other things. diff --git a/.gitignore b/.gitignore index 5cc8aa47a6..1c11044143 100644 --- a/.gitignore +++ b/.gitignore @@ -18,4 +18,3 @@ devAssets *.tfbackend !*.tfbackend.example crash.log -build.sh diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index 21b4a2cc4d..0000000000 --- a/.gitmodules +++ /dev/null @@ -1,3 +0,0 @@ -[submodule "element-call"] - path = element-call - url = https://github.com/melogale/element-call.git diff --git a/.prettierignore b/.prettierignore index cc2e802256..dd3a20e64d 100644 --- a/.prettierignore +++ b/.prettierignore @@ -1,6 +1,5 @@ dist node_modules -element-call package.json package-lock.json LICENSE diff --git a/element-call b/element-call deleted file mode 160000 index ecef381c24..0000000000 --- a/element-call +++ /dev/null @@ -1 +0,0 @@ -Subproject commit ecef381c246c177af28b8c99c5076da19878a136 diff --git a/eslint.config.js b/eslint.config.js index fcd06a9b4c..9fa0c87bb4 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -134,7 +134,6 @@ const projectOverrides = defineConfig([ ]); export default defineConfig([ - { ignores: ['element-call/'] }, includeIgnoreFile(gitignorePath), ...jsConfig, ...reactConfig, diff --git a/package-lock.json b/package-lock.json index 2a8fa778d0..5683a6d19d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -71,7 +71,7 @@ }, "devDependencies": { "@cloudflare/vite-plugin": "^1.26.0", - "@element-hq/element-call-embedded": "file:element-call/embedded/web", + "@element-hq/element-call-embedded": "0.16.3", "@esbuild-plugins/node-globals-polyfill": "^0.2.3", "@eslint/compat": "2.0.2", "@eslint/js": "9.39.3", @@ -110,11 +110,6 @@ "npm": "11.x" } }, - "element-call/embedded/web": { - "name": "@element-hq/element-call-embedded", - "version": "0.0.0", - "dev": true - }, "node_modules/@apideck/better-ajv-errors": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/@apideck/better-ajv-errors/-/better-ajv-errors-0.3.6.tgz", @@ -1917,8 +1912,10 @@ } }, "node_modules/@element-hq/element-call-embedded": { - "resolved": "element-call/embedded/web", - "link": true + "version": "0.16.3", + "resolved": "https://registry.npmjs.org/@element-hq/element-call-embedded/-/element-call-embedded-0.16.3.tgz", + "integrity": "sha512-OViKJonDaDNVBUW9WdV9mk78/Ruh34C7XsEgt3O8D9z+64C39elbIgllHSoH5S12IRlv9RYrrV37FZLo6QWsDQ==", + "dev": true }, "node_modules/@emnapi/core": { "version": "1.8.1", @@ -17887,7 +17884,10 @@ } }, "@element-hq/element-call-embedded": { - "version": "file:element-call/embedded/web" + "version": "0.16.3", + "resolved": "https://registry.npmjs.org/@element-hq/element-call-embedded/-/element-call-embedded-0.16.3.tgz", + "integrity": "sha512-OViKJonDaDNVBUW9WdV9mk78/Ruh34C7XsEgt3O8D9z+64C39elbIgllHSoH5S12IRlv9RYrrV37FZLo6QWsDQ==", + "dev": true }, "@emnapi/core": { "version": "1.8.1", @@ -26905,4 +26905,4 @@ "dev": true } } -} +} \ No newline at end of file diff --git a/package.json b/package.json index 25f4ca223a..2667d1481f 100644 --- a/package.json +++ b/package.json @@ -87,7 +87,7 @@ }, "devDependencies": { "@cloudflare/vite-plugin": "^1.26.0", - "@element-hq/element-call-embedded": "file:element-call/embedded/web", + "@element-hq/element-call-embedded": "0.16.3", "@esbuild-plugins/node-globals-polyfill": "^0.2.3", "@eslint/compat": "2.0.2", "@eslint/js": "9.39.3", diff --git a/src/app/plugins/call/utils.ts b/src/app/plugins/call/utils.ts index 8c4955b4e1..0ea72b3c83 100644 --- a/src/app/plugins/call/utils.ts +++ b/src/app/plugins/call/utils.ts @@ -18,8 +18,6 @@ export function getCallCapabilities( capabilities.add(MatrixCapabilities.MSC3846TurnServers); capabilities.add(MatrixCapabilities.MSC4157SendDelayedEvent); capabilities.add(MatrixCapabilities.MSC4157UpdateDelayedEvent); - capabilities.add('moe.sable.thumbnails'); - capabilities.add('moe.sable.media_proxy'); capabilities.add(`org.matrix.msc2762.timeline:${roomId}`); capabilities.add(`org.matrix.msc2762.state:${roomId}`); diff --git a/src/sw.ts b/src/sw.ts index 815c3be719..7185fbd304 100644 --- a/src/sw.ts +++ b/src/sw.ts @@ -270,20 +270,6 @@ self.addEventListener('fetch', (event: FetchEvent) => { return; } - // Since widgets like element call have their own client ids, - // we need this logic. We just go through the sessions list and get a session - // with the right base url. Media requests to a homeserver simply are fine with any account - // on the homeserver authenticating it, so this is fine. But it can be technically wrong. - // If you have two tabs for different users on the same homeserver, it might authenticate - // as the wrong one. - // Thus any logic in the future which cares about which user is authenticating the request - // might break this. Also, again, it is technically wrong. - const byBaseUrl = [...sessions.values()].find((s) => validMediaRequest(url, s.baseUrl)); - if (byBaseUrl) { - event.respondWith(fetch(url, { ...fetchConfig(byBaseUrl.accessToken), redirect })); - return; - } - event.respondWith( requestSessionWithTimeout(clientId).then((s) => { if (s && validMediaRequest(url, s.baseUrl)) {