From 04927051282149d8abf24bf554da1bb8ec295aca Mon Sep 17 00:00:00 2001 From: maki Date: Sat, 7 Jun 2025 11:24:36 +0800 Subject: [PATCH] (1/?) e2e (doesnt work right now) --- .gitignore | 4 +++- package-lock.json | 7 +++++++ package.json | 1 + src/Cheesecake.ts | 13 +++++++++---- src/index.ts | 1 - src/types/Cheesecake.ts | 5 +++-- 6 files changed, 23 insertions(+), 8 deletions(-) diff --git a/.gitignore b/.gitignore index ec84150..e97aef3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,6 @@ output/ logs/ node_modules/ -.env \ No newline at end of file +.env +session.json +crypto*/ \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 3bbc92c..2a2c767 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,7 @@ "version": "1.0.0", "license": "ISC", "dependencies": { + "@matrix-org/olm": "^3.2.15", "colorts": "^0.1.63", "dotenv": "^16.5.0", "matrix-bot-sdk": "^0.7.1", @@ -70,6 +71,12 @@ "node": ">= 16" } }, + "node_modules/@matrix-org/olm": { + "version": "3.2.15", + "resolved": "https://registry.npmjs.org/@matrix-org/olm/-/olm-3.2.15.tgz", + "integrity": "sha512-S7lOrndAK9/8qOtaTq/WhttJC/o4GAzdfK0MUPpo8ApzsJEC0QjtwrkC3KBXdFP1cD1MXi/mlKR7aaoVMKgs6Q==", + "license": "Apache-2.0" + }, "node_modules/@selderee/plugin-htmlparser2": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/@selderee/plugin-htmlparser2/-/plugin-htmlparser2-0.11.0.tgz", diff --git a/package.json b/package.json index d8cb3a7..9a6ea6d 100644 --- a/package.json +++ b/package.json @@ -11,6 +11,7 @@ "license": "ISC", "description": "", "dependencies": { + "@matrix-org/olm": "^3.2.15", "colorts": "^0.1.63", "dotenv": "^16.5.0", "matrix-bot-sdk": "^0.7.1", diff --git a/src/Cheesecake.ts b/src/Cheesecake.ts index b9f17dd..21fb579 100644 --- a/src/Cheesecake.ts +++ b/src/Cheesecake.ts @@ -1,4 +1,6 @@ -import { AutojoinRoomsMixin, MatrixClient, SimpleFsStorageProvider } from "matrix-bot-sdk"; +import { AutojoinRoomsMixin, MatrixClient, SimpleFsStorageProvider, RustSdkCryptoStorageProvider } from "matrix-bot-sdk"; +import * as sdk from 'matrix-bot-sdk' + import Logger from "./util/Logger"; import { StrawberryFilling } from "./types/Cheesecake"; const csc = new Logger("Strawberry Cheesecake", 'red') @@ -9,15 +11,17 @@ var homeServer = process.env.homeserver var accessToken: any = process.env.token var storage: SimpleFsStorageProvider +var crypto: RustSdkCryptoStorageProvider var client: MatrixClient = null; export function BakeStrawberryCheesecake(): StrawberryFilling { client = null; csc.log('Baking strawberry cheesecake...') + crypto = new RustSdkCryptoStorageProvider('./crypto1/') storage = new SimpleFsStorageProvider('session.json') cd.quiet('Started Matrix Client.') - client = new MatrixClient(homeServer, accessToken, storage); + client = new MatrixClient(homeServer, accessToken, storage, crypto); client.start() csc.log(`Baked strawberry cheesecake. Serving cake.`) AutojoinRoomsMixin.setupOnClient(client); @@ -28,8 +32,9 @@ export function BakeStrawberryCheesecake(): StrawberryFilling { export function GetStrawberryCheesecake(): StrawberryFilling { return { accessToken: accessToken, - stomach: storage, - cake: client + stomach_session: storage, + cake: client, + stomach_crypto: crypto } } diff --git a/src/index.ts b/src/index.ts index ba2653e..81d0359 100644 --- a/src/index.ts +++ b/src/index.ts @@ -8,7 +8,6 @@ import { Cinnamon, CinnamonInit } from "./Cinnamon"; import { BakeStrawberryCheesecake } from "./Cheesecake"; import { StrawberryFilling } from "./types/Cheesecake"; - dotenv.config() export const cd = new Logger("DEBUGGER", 'cyan', `${new Date().toLocaleDateString('en-us').replaceAll('/', '-')}-DEBUG`) const cm = new Logger("CLIENT/index.ts") diff --git a/src/types/Cheesecake.ts b/src/types/Cheesecake.ts index 47cdb3b..8ded8b2 100644 --- a/src/types/Cheesecake.ts +++ b/src/types/Cheesecake.ts @@ -1,7 +1,8 @@ -import { MatrixClient, SimpleFsStorageProvider } from "matrix-bot-sdk"; +import { MatrixClient, RustSdkCryptoStorageProvider, SimpleFsStorageProvider } from "matrix-bot-sdk"; export interface StrawberryFilling { accessToken: string, - stomach: SimpleFsStorageProvider, + stomach_session: SimpleFsStorageProvider, + stomach_crypto: RustSdkCryptoStorageProvider, cake: MatrixClient } \ No newline at end of file