From 7b52bfba88293706eb4e299da611823a9dd49ff1 Mon Sep 17 00:00:00 2001 From: Eneko Date: Mon, 26 Apr 2021 00:59:23 +0200 Subject: [PATCH] Finally typed matrix-js-sdk --- package-lock.json | 26 +++++++++++++------------- package.json | 2 +- src/app/services/chat.service.ts | 14 +++++--------- src/app/views/chat/chat.component.ts | 4 ++-- tsconfig.json | 7 ++++--- 5 files changed, 25 insertions(+), 28 deletions(-) diff --git a/package-lock.json b/package-lock.json index faf9a04..fdc189d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,7 +21,7 @@ "@angular/platform-browser-dynamic": "~11.2.11", "@angular/router": "~11.2.11", "angular-auth-oidc-client": "^11.6.6", - "matrix-js-sdk": "^9.2.0", + "matrix-js-sdk": "^9.11.0", "moment": "^2.29.1", "olm": "https://packages.matrix.org/npm/olm/olm-3.2.1.tgz", "path": "^0.12.7", @@ -9365,17 +9365,17 @@ } }, "node_modules/matrix-js-sdk": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/matrix-js-sdk/-/matrix-js-sdk-9.2.0.tgz", - "integrity": "sha512-3lPgCB2in+AHDd+tLT8HbJ9elqDeJjYCE8i8Ti+NO2Myua62HIsf3pE/C/FE/QCDTuZBTjN0vgjym22M+GO65g==", + "version": "9.11.0", + "resolved": "https://registry.npmjs.org/matrix-js-sdk/-/matrix-js-sdk-9.11.0.tgz", + "integrity": "sha512-wP28ybOxyQ7lbC48QddRORYr8atEwbTqDOsu8H6u9jTTgB2qqczI/bkSoXHtutODuSeLY5x0UuwLcxVCy4yxVQ==", "dependencies": { - "@babel/runtime": "^7.11.2", + "@babel/runtime": "^7.12.5", "another-json": "^0.2.0", "browser-request": "^0.3.3", "bs58": "^4.0.1", "content-type": "^1.0.4", - "loglevel": "^1.7.0", - "qs": "^6.9.4", + "loglevel": "^1.7.1", + "qs": "^6.9.6", "request": "^2.88.2", "unhomoglyph": "^1.0.6" } @@ -25926,17 +25926,17 @@ } }, "matrix-js-sdk": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/matrix-js-sdk/-/matrix-js-sdk-9.2.0.tgz", - "integrity": "sha512-3lPgCB2in+AHDd+tLT8HbJ9elqDeJjYCE8i8Ti+NO2Myua62HIsf3pE/C/FE/QCDTuZBTjN0vgjym22M+GO65g==", + "version": "9.11.0", + "resolved": "https://registry.npmjs.org/matrix-js-sdk/-/matrix-js-sdk-9.11.0.tgz", + "integrity": "sha512-wP28ybOxyQ7lbC48QddRORYr8atEwbTqDOsu8H6u9jTTgB2qqczI/bkSoXHtutODuSeLY5x0UuwLcxVCy4yxVQ==", "requires": { - "@babel/runtime": "^7.11.2", + "@babel/runtime": "^7.12.5", "another-json": "^0.2.0", "browser-request": "^0.3.3", "bs58": "^4.0.1", "content-type": "^1.0.4", - "loglevel": "^1.7.0", - "qs": "^6.9.4", + "loglevel": "^1.7.1", + "qs": "^6.9.6", "request": "^2.88.2", "unhomoglyph": "^1.0.6" }, diff --git a/package.json b/package.json index 2c385bf..3ea027e 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "@angular/platform-browser-dynamic": "~11.2.11", "@angular/router": "~11.2.11", "angular-auth-oidc-client": "^11.6.6", - "matrix-js-sdk": "^9.2.0", + "matrix-js-sdk": "^9.11.0", "moment": "^2.29.1", "olm": "https://packages.matrix.org/npm/olm/olm-3.2.1.tgz", "path": "^0.12.7", diff --git a/src/app/services/chat.service.ts b/src/app/services/chat.service.ts index 5dafd69..bea9fe5 100644 --- a/src/app/services/chat.service.ts +++ b/src/app/services/chat.service.ts @@ -1,14 +1,10 @@ import { HttpClient } from '@angular/common/http'; import { Injectable } from '@angular/core'; -import * as matrixsdk from 'matrix-js-sdk'; import { Observable } from 'rxjs'; import { MatrixLoginDto } from '../entities/matrix-login-dto'; import { ChatMessageHandler } from './chat-message-handler'; -// global.Olm = olm; -export type MatrixClient = matrixsdk.MatrixClient; -export type MatrixEvent = matrixsdk.MatrixEvent; -export type Room = matrixsdk.Room; -export type RoomMember = matrixsdk.RoomMember; +import { MatrixEvent, MatrixClient, Room, RoomMember } from 'matrix-js-sdk'; +import { createClient, ICreateClientOpts } from '../../../node_modules/matrix-js-sdk'; const FORWARDS = 'f'; @@ -94,7 +90,7 @@ export class ChatService { } catch (error) { return true; } } - const joinRule = room.getLiveTimeline().getState(FORWARDS).getJoinRule(); + const joinRule = room.currentState.getJoinRule(); return joinRule === 'invite'; } @@ -109,12 +105,12 @@ export class ChatService { ).toPromise(); console.log('LOGGED TO CHAT'); console.log({ matrixLogin }); - const ops: matrixsdk.CreateClientOption = { + const ops: ICreateClientOpts = { baseUrl: 'http://okupamicoche-synapse:8008', accessToken: matrixLogin.access_token, userId: matrixLogin.user_id }; - this.matrixClient = matrixsdk.createClient(ops); + this.matrixClient = createClient(ops); await this.matrixClient.startClient({ initialSyncLimit: 100 }); diff --git a/src/app/views/chat/chat.component.ts b/src/app/views/chat/chat.component.ts index 2753b9c..413e6a9 100644 --- a/src/app/views/chat/chat.component.ts +++ b/src/app/views/chat/chat.component.ts @@ -1,6 +1,6 @@ import { AfterViewInit, ChangeDetectorRef, Component, ElementRef, Input, OnInit, QueryList, ViewChild, ViewChildren } from '@angular/core'; -import { MatrixEvent, RoomMember, ChatService } from 'src/app/services/chat.service'; - +import { ChatService } from 'src/app/services/chat.service'; +import { MatrixEvent, RoomMember } from 'matrix-js-sdk'; @Component({ selector: 'app-chat', diff --git a/tsconfig.json b/tsconfig.json index 2c25379..552383a 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -25,9 +25,10 @@ ] } }, - // "exclude": [ - // "node_modules/matrix-js-sdk/lib/*.d.ts" - // ], + "exclude": [ + "node_modules/matrix-js-sdk/lib/*.d.ts", + "node_modules/matrix-js-sdk/lib/*/*.d.ts" + ], "angularCompilerOptions": { "strictInjectionParameters": true, "strictTemplates": true