diff --git a/package.json b/package.json index 1e6f4828cc..79bab28a1d 100644 --- a/package.json +++ b/package.json @@ -59,7 +59,6 @@ "@types/geojson": "^7946.0.8", "await-lock": "^2.1.0", "blurhash": "^1.1.3", - "browser-encrypt-attachment": "^0.3.0", "browser-request": "^0.3.3", "cheerio": "^1.0.0-rc.9", "classnames": "^2.2.6", @@ -88,6 +87,7 @@ "lodash": "^4.17.20", "maplibre-gl": "^1.15.2", "matrix-analytics-events": "github:matrix-org/matrix-analytics-events.git#daad3faed54f0b1f1e026a7498b4653e4d01cd90", + "matrix-encrypt-attachment": "^1.0.3", "matrix-events-sdk": "^0.0.1-beta.7", "matrix-js-sdk": "github:matrix-org/matrix-js-sdk#develop", "matrix-widget-api": "^0.1.0-beta.18", diff --git a/src/@types/browser-encrypt-attachment.ts b/src/@types/browser-encrypt-attachment.ts deleted file mode 100644 index a8249ab350..0000000000 --- a/src/@types/browser-encrypt-attachment.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* -Copyright 2021 The Matrix.org Foundation C.I.C. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - -http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -declare module "browser-encrypt-attachment" { - interface IInfo { - v: string; - key: { - alg: string; - key_ops: string[]; // eslint-disable-line camelcase - kty: string; - k: string; - ext: boolean; - }; - iv: string; - hashes: {[alg: string]: string}; - } - - interface IEncryptedAttachment { - data: ArrayBuffer; - info: IInfo; - } - - export function encryptAttachment(plaintextBuffer: ArrayBuffer): Promise; - export function decryptAttachment(ciphertextBuffer: ArrayBuffer, info: IInfo): Promise; -} diff --git a/src/ContentMessages.ts b/src/ContentMessages.ts index fe91688101..1d54b1adc3 100644 --- a/src/ContentMessages.ts +++ b/src/ContentMessages.ts @@ -19,7 +19,7 @@ limitations under the License. import { MatrixClient } from "matrix-js-sdk/src/client"; import { IUploadOpts } from "matrix-js-sdk/src/@types/requests"; import { MsgType } from "matrix-js-sdk/src/@types/event"; -import encrypt from "browser-encrypt-attachment"; +import encrypt from "matrix-encrypt-attachment"; import extractPngChunks from "png-chunks-extract"; import { IAbortablePromise, IImageInfo } from "matrix-js-sdk/src/@types/partials"; import { logger } from "matrix-js-sdk/src/logger"; diff --git a/src/utils/DecryptFile.ts b/src/utils/DecryptFile.ts index d7ac3d4f56..7e8bcf1a99 100644 --- a/src/utils/DecryptFile.ts +++ b/src/utils/DecryptFile.ts @@ -15,7 +15,7 @@ limitations under the License. */ // Pull in the encryption lib so that we can decrypt attachments. -import encrypt from 'browser-encrypt-attachment'; +import encrypt from 'matrix-encrypt-attachment'; import { mediaFromContent } from "../customisations/Media"; import { IEncryptedFile, IMediaEventInfo } from "../customisations/models/IMediaEventContent"; @@ -24,7 +24,7 @@ import { getBlobSafeMimeType } from "./blobs"; /** * Decrypt a file attached to a matrix event. * @param {IEncryptedFile} file The encrypted file information taken from the matrix event. - * This passed to [link]{@link https://github.com/matrix-org/browser-encrypt-attachments} + * This passed to [link]{@link https://github.com/matrix-org/matrix-encrypt-attachment} * as the encryption info object, so will also have the those keys in addition to * the keys below. * @param {IMediaEventInfo} info The info parameter taken from the matrix event. diff --git a/yarn.lock b/yarn.lock index 62c76d4f99..40ac955944 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2660,11 +2660,6 @@ braces@^3.0.1, braces@~3.0.2: dependencies: fill-range "^7.0.1" -browser-encrypt-attachment@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/browser-encrypt-attachment/-/browser-encrypt-attachment-0.3.0.tgz#205a94caadf0dc7e81413941812f655bd190ff1c" - integrity sha1-IFqUyq3w3H6BQTlBgS9lW9GQ/xw= - browser-process-hrtime@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" @@ -6232,6 +6227,11 @@ mathml-tag-names@^2.1.3: version "0.0.1" resolved "https://codeload.github.com/matrix-org/matrix-analytics-events/tar.gz/daad3faed54f0b1f1e026a7498b4653e4d01cd90" +matrix-encrypt-attachment@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/matrix-encrypt-attachment/-/matrix-encrypt-attachment-1.0.3.tgz#6e016587728c396549c833985f39cbf6c07ee97b" + integrity sha512-NwfoDY/yHL9Zo8KrY5GP8ymAoZJpEFKEK+IgJKdWf5xtsIFf7KIU2pbw8+Eq592j//nSDOC+/Ff4Fk8gVvDZpw== + matrix-events-sdk@^0.0.1-beta.7: version "0.0.1-beta.7" resolved "https://registry.yarnpkg.com/matrix-events-sdk/-/matrix-events-sdk-0.0.1-beta.7.tgz#5ffe45eba1f67cc8d7c2377736c728b322524934"