matrix-js-sdk 31.6.1 → 32.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +27 -0
- package/README.md +26 -59
- package/git-revision.txt +1 -1
- package/lib/@types/common.d.ts +7 -0
- package/lib/@types/common.d.ts.map +1 -1
- package/lib/@types/common.js.map +1 -1
- package/lib/@types/event.d.ts +68 -14
- package/lib/@types/event.d.ts.map +1 -1
- package/lib/@types/event.js +18 -0
- package/lib/@types/event.js.map +1 -1
- package/lib/@types/events.d.ts +92 -0
- package/lib/@types/events.d.ts.map +1 -0
- package/lib/@types/events.js +6 -0
- package/lib/@types/events.js.map +1 -0
- package/lib/@types/partials.d.ts +0 -12
- package/lib/@types/partials.d.ts.map +1 -1
- package/lib/@types/partials.js.map +1 -1
- package/lib/@types/state_events.d.ts +115 -0
- package/lib/@types/state_events.d.ts.map +1 -0
- package/lib/@types/state_events.js +6 -0
- package/lib/@types/state_events.js.map +1 -0
- package/lib/@types/uia.d.ts +2 -2
- package/lib/@types/uia.d.ts.map +1 -1
- package/lib/@types/uia.js.map +1 -1
- package/lib/browser-index.js +1 -1
- package/lib/browser-index.js.map +1 -1
- package/lib/client.d.ts +28 -41
- package/lib/client.d.ts.map +1 -1
- package/lib/client.js +25 -91
- package/lib/client.js.map +1 -1
- package/lib/common-crypto/CryptoBackend.d.ts +16 -5
- package/lib/common-crypto/CryptoBackend.d.ts.map +1 -1
- package/lib/common-crypto/CryptoBackend.js +72 -0
- package/lib/common-crypto/CryptoBackend.js.map +1 -1
- package/lib/content-helpers.d.ts +7 -7
- package/lib/content-helpers.d.ts.map +1 -1
- package/lib/content-helpers.js.map +1 -1
- package/lib/crypto/DeviceList.js +1 -1
- package/lib/crypto/DeviceList.js.map +1 -1
- package/lib/crypto/OlmDevice.d.ts.map +1 -1
- package/lib/crypto/OlmDevice.js +4 -5
- package/lib/crypto/OlmDevice.js.map +1 -1
- package/lib/crypto/SecretSharing.js +1 -1
- package/lib/crypto/SecretSharing.js.map +1 -1
- package/lib/crypto/algorithms/base.d.ts +1 -13
- package/lib/crypto/algorithms/base.d.ts.map +1 -1
- package/lib/crypto/algorithms/base.js +11 -28
- package/lib/crypto/algorithms/base.js.map +1 -1
- package/lib/crypto/algorithms/megolm.d.ts.map +1 -1
- package/lib/crypto/algorithms/megolm.js +10 -8
- package/lib/crypto/algorithms/megolm.js.map +1 -1
- package/lib/crypto/algorithms/olm.d.ts.map +1 -1
- package/lib/crypto/algorithms/olm.js +12 -10
- package/lib/crypto/algorithms/olm.js.map +1 -1
- package/lib/crypto/index.d.ts +1 -1
- package/lib/crypto/index.d.ts.map +1 -1
- package/lib/crypto/index.js +3 -2
- package/lib/crypto/index.js.map +1 -1
- package/lib/crypto/recoverykey.js +1 -1
- package/lib/crypto/recoverykey.js.map +1 -1
- package/lib/crypto/store/indexeddb-crypto-store.js +1 -1
- package/lib/crypto/store/indexeddb-crypto-store.js.map +1 -1
- package/lib/crypto/verification/QRCode.d.ts +3 -2
- package/lib/crypto/verification/QRCode.d.ts.map +1 -1
- package/lib/crypto/verification/QRCode.js +3 -2
- package/lib/crypto/verification/QRCode.js.map +1 -1
- package/lib/crypto/verification/SAS.d.ts.map +1 -1
- package/lib/crypto/verification/SAS.js +2 -1
- package/lib/crypto/verification/SAS.js.map +1 -1
- package/lib/crypto/verification/request/InRoomChannel.d.ts.map +1 -1
- package/lib/crypto/verification/request/InRoomChannel.js.map +1 -1
- package/lib/crypto-api.d.ts +35 -0
- package/lib/crypto-api.d.ts.map +1 -1
- package/lib/crypto-api.js +22 -4
- package/lib/crypto-api.js.map +1 -1
- package/lib/errors.d.ts +0 -9
- package/lib/errors.d.ts.map +1 -1
- package/lib/errors.js +1 -16
- package/lib/errors.js.map +1 -1
- package/lib/http-api/index.js +1 -1
- package/lib/http-api/index.js.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/interactive-auth.d.ts +2 -7
- package/lib/interactive-auth.d.ts.map +1 -1
- package/lib/interactive-auth.js +0 -4
- package/lib/interactive-auth.js.map +1 -1
- package/lib/matrix.js +1 -1
- package/lib/matrix.js.map +1 -1
- package/lib/models/MSC3089Branch.d.ts +15 -3
- package/lib/models/MSC3089Branch.d.ts.map +1 -1
- package/lib/models/MSC3089Branch.js.map +1 -1
- package/lib/models/MSC3089TreeSpace.d.ts +8 -2
- package/lib/models/MSC3089TreeSpace.d.ts.map +1 -1
- package/lib/models/MSC3089TreeSpace.js +1 -0
- package/lib/models/MSC3089TreeSpace.js.map +1 -1
- package/lib/models/event.d.ts +21 -27
- package/lib/models/event.d.ts.map +1 -1
- package/lib/models/event.js +46 -66
- package/lib/models/event.js.map +1 -1
- package/lib/models/invites-ignorer.d.ts +3 -0
- package/lib/models/invites-ignorer.d.ts.map +1 -1
- package/lib/models/invites-ignorer.js +12 -5
- package/lib/models/invites-ignorer.js.map +1 -1
- package/lib/models/room-state.d.ts +6 -1
- package/lib/models/room-state.d.ts.map +1 -1
- package/lib/models/room-state.js.map +1 -1
- package/lib/models/room.d.ts +15 -2
- package/lib/models/room.d.ts.map +1 -1
- package/lib/models/room.js +106 -11
- package/lib/models/room.js.map +1 -1
- package/lib/models/thread.d.ts +2 -5
- package/lib/models/thread.d.ts.map +1 -1
- package/lib/models/thread.js +52 -36
- package/lib/models/thread.js.map +1 -1
- package/lib/oidc/validate.d.ts +1 -6
- package/lib/oidc/validate.d.ts.map +1 -1
- package/lib/oidc/validate.js +0 -11
- package/lib/oidc/validate.js.map +1 -1
- package/lib/rust-crypto/OutgoingRequestProcessor.d.ts.map +1 -1
- package/lib/rust-crypto/OutgoingRequestProcessor.js.map +1 -1
- package/lib/rust-crypto/RoomEncryptor.js +1 -1
- package/lib/rust-crypto/RoomEncryptor.js.map +1 -1
- package/lib/rust-crypto/backup.js +1 -1
- package/lib/rust-crypto/backup.js.map +1 -1
- package/lib/rust-crypto/device-converter.js +1 -1
- package/lib/rust-crypto/device-converter.js.map +1 -1
- package/lib/rust-crypto/index.js +1 -1
- package/lib/rust-crypto/index.js.map +1 -1
- package/lib/rust-crypto/libolm_migration.js +1 -1
- package/lib/rust-crypto/libolm_migration.js.map +1 -1
- package/lib/rust-crypto/rust-crypto.d.ts.map +1 -1
- package/lib/rust-crypto/rust-crypto.js +35 -36
- package/lib/rust-crypto/rust-crypto.js.map +1 -1
- package/lib/rust-crypto/verification.d.ts.map +1 -1
- package/lib/rust-crypto/verification.js +9 -8
- package/lib/rust-crypto/verification.js.map +1 -1
- package/lib/sync.d.ts +2 -6
- package/lib/sync.d.ts.map +1 -1
- package/lib/sync.js +15 -48
- package/lib/sync.js.map +1 -1
- package/lib/testing.d.ts +81 -0
- package/lib/testing.d.ts.map +1 -0
- package/lib/testing.js +138 -0
- package/lib/testing.js.map +1 -0
- package/lib/types.d.ts +29 -0
- package/lib/types.d.ts.map +1 -1
- package/lib/types.js +34 -0
- package/lib/types.js.map +1 -1
- package/lib/webrtc/call.d.ts +3 -1
- package/lib/webrtc/call.d.ts.map +1 -1
- package/lib/webrtc/call.js +2 -1
- package/lib/webrtc/call.js.map +1 -1
- package/lib/webrtc/callEventTypes.d.ts +2 -1
- package/lib/webrtc/callEventTypes.d.ts.map +1 -1
- package/lib/webrtc/callEventTypes.js.map +1 -1
- package/lib/webrtc/groupCall.d.ts +5 -0
- package/lib/webrtc/groupCall.d.ts.map +1 -1
- package/lib/webrtc/groupCall.js +2 -0
- package/lib/webrtc/groupCall.js.map +1 -1
- package/package.json +2 -2
- package/src/@types/common.ts +5 -0
- package/src/@types/event.ts +116 -13
- package/src/@types/events.ts +119 -0
- package/src/@types/partials.ts +0 -14
- package/src/@types/state_events.ts +144 -0
- package/src/@types/uia.ts +2 -2
- package/src/client.ts +65 -139
- package/src/common-crypto/CryptoBackend.ts +41 -5
- package/src/content-helpers.ts +7 -7
- package/src/crypto/OlmDevice.ts +6 -5
- package/src/crypto/algorithms/base.ts +3 -39
- package/src/crypto/algorithms/megolm.ts +11 -7
- package/src/crypto/algorithms/olm.ts +50 -22
- package/src/crypto/index.ts +5 -4
- package/src/crypto/verification/QRCode.ts +3 -2
- package/src/crypto/verification/SAS.ts +2 -1
- package/src/crypto/verification/request/InRoomChannel.ts +6 -2
- package/src/crypto-api.ts +51 -0
- package/src/errors.ts +0 -19
- package/src/interactive-auth.ts +5 -11
- package/src/models/MSC3089Branch.ts +18 -3
- package/src/models/MSC3089TreeSpace.ts +19 -9
- package/src/models/event.ts +55 -69
- package/src/models/invites-ignorer.ts +10 -3
- package/src/models/room-state.ts +8 -1
- package/src/models/room.ts +128 -16
- package/src/models/thread.ts +54 -39
- package/src/oidc/validate.ts +0 -6
- package/src/rust-crypto/OutgoingRequestProcessor.ts +2 -2
- package/src/rust-crypto/rust-crypto.ts +51 -47
- package/src/rust-crypto/verification.ts +8 -7
- package/src/sync.ts +17 -46
- package/src/testing.ts +191 -0
- package/src/types.ts +33 -0
- package/src/webrtc/call.ts +29 -11
- package/src/webrtc/callEventTypes.ts +2 -1
- package/src/webrtc/groupCall.ts +7 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,30 @@
|
|
|
1
|
+
Changes in [32.0.0](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v32.0.0) (2024-04-09)
|
|
2
|
+
==================================================================================================
|
|
3
|
+
## 🚨 BREAKING CHANGES
|
|
4
|
+
|
|
5
|
+
* Remove various deprecated methods \& re-exports ([#4125](https://github.com/matrix-org/matrix-js-sdk/pull/4125)). Contributed by @t3chguy.
|
|
6
|
+
* Remove the logic that throws when the lazy loading options has changed. ([#4124](https://github.com/matrix-org/matrix-js-sdk/pull/4124)). Contributed by @langleyd.
|
|
7
|
+
* Fix highlights from threads disappearing on new messages ([#4106](https://github.com/matrix-org/matrix-js-sdk/pull/4106)). Contributed by @dbkr.
|
|
8
|
+
|
|
9
|
+
## ✨ Features
|
|
10
|
+
|
|
11
|
+
* Add new `decryptExistingEvent` test helper ([#4133](https://github.com/matrix-org/matrix-js-sdk/pull/4133)). Contributed by @richvdh.
|
|
12
|
+
* Improve types for `sendEvent` ([#4108](https://github.com/matrix-org/matrix-js-sdk/pull/4108)). Contributed by @t3chguy.
|
|
13
|
+
* Remove various deprecated methods \& re-exports ([#4125](https://github.com/matrix-org/matrix-js-sdk/pull/4125)). Contributed by @t3chguy.
|
|
14
|
+
* Add new enum for verification methods. ([#4129](https://github.com/matrix-org/matrix-js-sdk/pull/4129)). Contributed by @richvdh.
|
|
15
|
+
* Add some test utils in a new entrypoint ([#4127](https://github.com/matrix-org/matrix-js-sdk/pull/4127)). Contributed by @richvdh.
|
|
16
|
+
* Improve types for `sendStateEvent` ([#4105](https://github.com/matrix-org/matrix-js-sdk/pull/4105)). Contributed by @t3chguy.
|
|
17
|
+
|
|
18
|
+
## 🐛 Bug Fixes
|
|
19
|
+
|
|
20
|
+
* Improve types for `IPowerLevelsContent` and `hasSufficientPowerLevelFor` ([#4128](https://github.com/matrix-org/matrix-js-sdk/pull/4128)). Contributed by @galash13.
|
|
21
|
+
* Remove the logic that throws when the lazy loading options has changed. ([#4124](https://github.com/matrix-org/matrix-js-sdk/pull/4124)). Contributed by @langleyd.
|
|
22
|
+
* Fix highlights from threads disappearing on new messages ([#4106](https://github.com/matrix-org/matrix-js-sdk/pull/4106)). Contributed by @dbkr.
|
|
23
|
+
* Extend logic for local notification processing to threads ([#4111](https://github.com/matrix-org/matrix-js-sdk/pull/4111)). Contributed by @dbkr.
|
|
24
|
+
* Fix public rooms post request search params and body ([#4110](https://github.com/matrix-org/matrix-js-sdk/pull/4110)). Contributed by @ajbura.
|
|
25
|
+
* Fix bugs with the first reply to a thread ([#4104](https://github.com/matrix-org/matrix-js-sdk/pull/4104)). Contributed by @dbkr.
|
|
26
|
+
|
|
27
|
+
|
|
1
28
|
Changes in [31.6.1](https://github.com/matrix-org/matrix-js-sdk/releases/tag/v31.6.1) (2024-03-28)
|
|
2
29
|
==================================================================================================
|
|
3
30
|
## 🐛 Bug Fixes
|
package/README.md
CHANGED
|
@@ -21,16 +21,6 @@ endpoints from before Matrix 1.1, for example.
|
|
|
21
21
|
|
|
22
22
|
# Quickstart
|
|
23
23
|
|
|
24
|
-
## In a browser
|
|
25
|
-
|
|
26
|
-
### Note, the browserify build has been removed. Please use a bundler like webpack or vite instead.
|
|
27
|
-
|
|
28
|
-
## In Node.js
|
|
29
|
-
|
|
30
|
-
Ensure you have the latest LTS version of Node.js installed.
|
|
31
|
-
This library relies on `fetch` which is available in Node from v18.0.0 - it should work fine also with polyfills.
|
|
32
|
-
If you wish to use a ponyfill or adapter of some sort then pass it as `fetchFn` to the MatrixClient constructor options.
|
|
33
|
-
|
|
34
24
|
Using `yarn` instead of `npm` is recommended. Please see the Yarn [install guide](https://classic.yarnpkg.com/en/docs/install)
|
|
35
25
|
if you do not have it already.
|
|
36
26
|
|
|
@@ -47,8 +37,6 @@ client.publicRooms(function (err, data) {
|
|
|
47
37
|
See below for how to include libolm to enable end-to-end-encryption. Please check
|
|
48
38
|
[the Node.js terminal app](examples/node) for a more complex example.
|
|
49
39
|
|
|
50
|
-
You can also use the sdk with [Deno](https://deno.land/) (`import npm:matrix-js-sdk`) but its not officialy supported.
|
|
51
|
-
|
|
52
40
|
To start the client:
|
|
53
41
|
|
|
54
42
|
```javascript
|
|
@@ -106,7 +94,7 @@ Object.keys(client.store.rooms).forEach((roomId) => {
|
|
|
106
94
|
This SDK provides a full object model around the Matrix Client-Server API and emits
|
|
107
95
|
events for incoming data and state changes. Aside from wrapping the HTTP API, it:
|
|
108
96
|
|
|
109
|
-
- Handles syncing (via `/
|
|
97
|
+
- Handles syncing (via `/sync`)
|
|
110
98
|
- Handles the generation of "friendly" room and member names.
|
|
111
99
|
- Handles historical `RoomMember` information (e.g. display names).
|
|
112
100
|
- Manages room member state across multiple events (e.g. it handles typing, power
|
|
@@ -127,20 +115,20 @@ events for incoming data and state changes. Aside from wrapping the HTTP API, it
|
|
|
127
115
|
- Handles room initial sync on accepting invites.
|
|
128
116
|
- Handles WebRTC calling.
|
|
129
117
|
|
|
130
|
-
|
|
118
|
+
# Usage
|
|
131
119
|
|
|
132
|
-
|
|
133
|
-
- Provide different pluggable storage layers (e.g. local storage, database-backed)
|
|
120
|
+
## Supported platforms
|
|
134
121
|
|
|
135
|
-
|
|
122
|
+
`matrix-js-sdk` can be used in either Node.js applications (ensure you have the latest LTS version of Node.js installed),
|
|
123
|
+
or in browser applications, via a bundler such as Webpack or Vite.
|
|
136
124
|
|
|
137
|
-
|
|
125
|
+
You can also use the sdk with [Deno](https://deno.land/) (`import npm:matrix-js-sdk`) but its not officialy supported.
|
|
138
126
|
|
|
139
|
-
|
|
127
|
+
## Emitted events
|
|
140
128
|
|
|
141
|
-
The SDK
|
|
142
|
-
|
|
143
|
-
|
|
129
|
+
The SDK raises notifications to the application using
|
|
130
|
+
[`EventEmitter`s](https://nodejs.org/api/events.html#class-eventemitter). The `MatrixClient` itself
|
|
131
|
+
implements `EventEmitter`, as do many of the high-level abstractions such as `Room` and `RoomMember`.
|
|
144
132
|
|
|
145
133
|
```javascript
|
|
146
134
|
// Listen for low-level MatrixEvents
|
|
@@ -161,45 +149,21 @@ client.on(RoomMemberEvent.Typing, function (event, member) {
|
|
|
161
149
|
client.startClient();
|
|
162
150
|
```
|
|
163
151
|
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
Most of the methods in the SDK are asynchronous: they do not directly return a
|
|
167
|
-
result, but instead return a [Promise](http://documentup.com/kriskowal/q/)
|
|
168
|
-
which will be fulfilled in the future.
|
|
169
|
-
|
|
170
|
-
The typical usage is something like:
|
|
171
|
-
|
|
172
|
-
```javascript
|
|
173
|
-
matrixClient.someMethod(arg1, arg2).then(function(result) {
|
|
174
|
-
...
|
|
175
|
-
});
|
|
176
|
-
```
|
|
177
|
-
|
|
178
|
-
Alternatively, if you have a Node.js-style `callback(err, result)` function,
|
|
179
|
-
you can pass the result of the promise into it with something like:
|
|
152
|
+
## Entry points
|
|
180
153
|
|
|
181
|
-
|
|
182
|
-
matrixClient.someMethod(arg1, arg2).nodeify(callback);
|
|
183
|
-
```
|
|
154
|
+
As well as the primary entry point (`matrix-js-sdk`), there are several other entry points which may be useful:
|
|
184
155
|
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
via an optional `callback` argument. The callback support is now deprecated:
|
|
192
|
-
new methods do not include a `callback` argument, and in the future it may be
|
|
193
|
-
removed from existing methods.
|
|
194
|
-
|
|
195
|
-
## Low level types
|
|
196
|
-
|
|
197
|
-
There are some low level TypeScript types exported via the `matrix-js-sdk/lib/types` entrypoint to not bloat the main entrypoint.
|
|
156
|
+
| Entry point | Description |
|
|
157
|
+
| ------------------------------ | --------------------------------------------------------------------------------------------------- |
|
|
158
|
+
| `matrix-js-sdk` | Primary entry point. High-level functionality, and lots of historical clutter in need of a cleanup. |
|
|
159
|
+
| `matrix-js-sdk/lib/crypto-api` | Cryptography functionality. |
|
|
160
|
+
| `matrix-js-sdk/lib/types` | Low-level types, reflecting data structures defined in the Matrix spec. |
|
|
161
|
+
| `matrix-js-sdk/lib/testing` | Test utilities, which may be useful in test code but should not be used in production code. |
|
|
198
162
|
|
|
199
163
|
## Examples
|
|
200
164
|
|
|
201
165
|
This section provides some useful code snippets which demonstrate the
|
|
202
|
-
core functionality of the SDK. These examples assume the SDK is
|
|
166
|
+
core functionality of the SDK. These examples assume the SDK is set up like this:
|
|
203
167
|
|
|
204
168
|
```javascript
|
|
205
169
|
import * as sdk from "matrix-js-sdk";
|
|
@@ -215,10 +179,10 @@ const matrixClient = sdk.createClient({
|
|
|
215
179
|
### Automatically join rooms when invited
|
|
216
180
|
|
|
217
181
|
```javascript
|
|
218
|
-
matrixClient.on(
|
|
219
|
-
if (
|
|
220
|
-
matrixClient.joinRoom(
|
|
221
|
-
console.log("Auto-joined %s",
|
|
182
|
+
matrixClient.on(RoomEvent.MyMembership, function (room, membership, prevMembership) {
|
|
183
|
+
if (membership === KnownMembership.Invite) {
|
|
184
|
+
matrixClient.joinRoom(room.roomId).then(function () {
|
|
185
|
+
console.log("Auto-joined %s", room.roomId);
|
|
222
186
|
});
|
|
223
187
|
}
|
|
224
188
|
});
|
|
@@ -306,6 +270,9 @@ Then visit `http://localhost:8005` to see the API docs.
|
|
|
306
270
|
|
|
307
271
|
# End-to-end encryption support
|
|
308
272
|
|
|
273
|
+
**This section is outdated.** Use of `libolm` is deprecated and we are replacing it with support
|
|
274
|
+
from the matrix-rust-sdk (https://github.com/element-hq/element-web/issues/21972).
|
|
275
|
+
|
|
309
276
|
The SDK supports end-to-end encryption via the Olm and Megolm protocols, using
|
|
310
277
|
[libolm](https://gitlab.matrix.org/matrix-org/olm). It is left up to the
|
|
311
278
|
application to make libolm available, via the `Olm` global.
|
package/git-revision.txt
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
e4937e62226a90428a66194cb2eb389c94fd848b
|
package/lib/@types/common.d.ts
CHANGED
|
@@ -1,2 +1,9 @@
|
|
|
1
1
|
export type NonEmptyArray<T> = [T, ...T[]];
|
|
2
|
+
export type Without<T, U> = {
|
|
3
|
+
[P in Exclude<keyof T, keyof U>]?: never;
|
|
4
|
+
};
|
|
5
|
+
export type XOR<T, U> = T | U extends object ? (Without<T, U> & U) | (Without<U, T> & T) : T | U;
|
|
6
|
+
export type Writeable<T> = {
|
|
7
|
+
-readonly [P in keyof T]: T[P];
|
|
8
|
+
};
|
|
2
9
|
//# sourceMappingURL=common.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/@types/common.ts"],"names":[],"mappings":"AAgBA,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/@types/common.ts"],"names":[],"mappings":"AAgBA,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;AAG3C,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,CAAC,IAAI;KAAG,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK;CAAE,CAAC;AACzE,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACjG,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI;IAAE,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC"}
|
package/lib/@types/common.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","names":[],"sources":["../../src/@types/common.ts"],"sourcesContent":["/*\nCopyright 2024 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\nhttp://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\nexport type NonEmptyArray<T> = [T, ...T[]];\n"],"mappings":"","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"common.js","names":[],"sources":["../../src/@types/common.ts"],"sourcesContent":["/*\nCopyright 2024 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\nhttp://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\nexport type NonEmptyArray<T> = [T, ...T[]];\n\n// Based on https://stackoverflow.com/a/53229857/3532235\nexport type Without<T, U> = { [P in Exclude<keyof T, keyof U>]?: never };\nexport type XOR<T, U> = T | U extends object ? (Without<T, U> & U) | (Without<U, T> & T) : T | U;\nexport type Writeable<T> = { -readonly [P in keyof T]: T[P] };\n"],"mappings":"","ignoreList":[]}
|
package/lib/@types/event.d.ts
CHANGED
|
@@ -1,4 +1,14 @@
|
|
|
1
1
|
import { UnstableValue } from "../NamespacedValue";
|
|
2
|
+
import { PolicyRuleEventContent, RoomAvatarEventContent, RoomCanonicalAliasEventContent, RoomCreateEventContent, RoomEncryptionEventContent, RoomGuestAccessEventContent, RoomHistoryVisibilityEventContent, RoomJoinRulesEventContent, RoomMemberEventContent, RoomNameEventContent, RoomPinnedEventsEventContent, RoomPowerLevelsEventContent, RoomServerAclEventContent, RoomThirdPartyInviteEventContent, RoomTombstoneEventContent, RoomTopicEventContent, SpaceChildEventContent, SpaceParentEventContent } from "./state_events";
|
|
3
|
+
import { ExperimentalGroupCallRoomMemberState, IGroupCallRoomMemberState, IGroupCallRoomState } from "../webrtc/groupCall";
|
|
4
|
+
import { MSC3089EventContent } from "../models/MSC3089Branch";
|
|
5
|
+
import { M_BEACON, M_BEACON_INFO, MBeaconEventContent, MBeaconInfoEventContent } from "./beacon";
|
|
6
|
+
import { XOR } from "./common";
|
|
7
|
+
import { ReactionEventContent, RoomMessageEventContent, StickerEventContent } from "./events";
|
|
8
|
+
import { MCallAnswer, MCallBase, MCallCandidates, MCallHangupReject, MCallInviteNegotiate, MCallReplacesEvent, MCallSelectAnswer, SDPStreamMetadata, SDPStreamMetadataKey } from "../webrtc/callEventTypes";
|
|
9
|
+
import { EncryptionKeysEventContent, ICallNotifyContent } from "../matrixrtc/types";
|
|
10
|
+
import { EncryptedFile } from "./media";
|
|
11
|
+
import { M_POLL_END, M_POLL_START, PollEndEventContent, PollStartEventContent } from "./polls";
|
|
2
12
|
export declare enum EventType {
|
|
3
13
|
RoomCanonicalAlias = "m.room.canonical_alias",
|
|
4
14
|
RoomCreate = "m.room.create",
|
|
@@ -16,6 +26,9 @@ export declare enum EventType {
|
|
|
16
26
|
RoomServerAcl = "m.room.server_acl",
|
|
17
27
|
RoomTombstone = "m.room.tombstone",
|
|
18
28
|
RoomPredecessor = "org.matrix.msc3946.room_predecessor",
|
|
29
|
+
PolicyRuleUser = "m.policy.rule.user",
|
|
30
|
+
PolicyRuleRoom = "m.policy.rule.room",
|
|
31
|
+
PolicyRuleServer = "m.policy.rule.server",
|
|
19
32
|
SpaceChild = "m.space.child",
|
|
20
33
|
SpaceParent = "m.space.parent",
|
|
21
34
|
RoomRedaction = "m.room.redaction",
|
|
@@ -183,20 +196,61 @@ export declare const LOCAL_NOTIFICATION_SETTINGS_PREFIX: UnstableValue<"m.local_
|
|
|
183
196
|
* @experimental
|
|
184
197
|
*/
|
|
185
198
|
export declare const UNSIGNED_THREAD_ID_FIELD: UnstableValue<"thread_id", "org.matrix.msc4023.thread_id">;
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
+
/**
|
|
200
|
+
* @deprecated in favour of {@link EncryptedFile}
|
|
201
|
+
*/
|
|
202
|
+
export type IEncryptedFile = EncryptedFile;
|
|
203
|
+
/**
|
|
204
|
+
* Mapped type from event type to content type for all specified non-state room events.
|
|
205
|
+
*/
|
|
206
|
+
export interface TimelineEvents {
|
|
207
|
+
[EventType.RoomMessage]: RoomMessageEventContent;
|
|
208
|
+
[EventType.Sticker]: StickerEventContent;
|
|
209
|
+
[EventType.Reaction]: ReactionEventContent;
|
|
210
|
+
[EventType.CallReplaces]: MCallReplacesEvent;
|
|
211
|
+
[EventType.CallAnswer]: MCallAnswer;
|
|
212
|
+
[EventType.CallSelectAnswer]: MCallSelectAnswer;
|
|
213
|
+
[EventType.CallNegotiate]: Omit<MCallInviteNegotiate, "offer">;
|
|
214
|
+
[EventType.CallInvite]: MCallInviteNegotiate;
|
|
215
|
+
[EventType.CallCandidates]: MCallCandidates;
|
|
216
|
+
[EventType.CallHangup]: MCallHangupReject;
|
|
217
|
+
[EventType.CallReject]: MCallHangupReject;
|
|
218
|
+
[EventType.CallSDPStreamMetadataChangedPrefix]: MCallBase & {
|
|
219
|
+
[SDPStreamMetadataKey]: SDPStreamMetadata;
|
|
199
220
|
};
|
|
200
|
-
|
|
221
|
+
[EventType.CallEncryptionKeysPrefix]: EncryptionKeysEventContent;
|
|
222
|
+
[EventType.CallNotify]: ICallNotifyContent;
|
|
223
|
+
[M_BEACON.name]: MBeaconEventContent;
|
|
224
|
+
[M_POLL_START.name]: PollStartEventContent;
|
|
225
|
+
[M_POLL_END.name]: PollEndEventContent;
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* Mapped type from event type to content type for all specified room state events.
|
|
229
|
+
*/
|
|
230
|
+
export interface StateEvents {
|
|
231
|
+
[EventType.RoomCanonicalAlias]: RoomCanonicalAliasEventContent;
|
|
232
|
+
[EventType.RoomCreate]: RoomCreateEventContent;
|
|
233
|
+
[EventType.RoomJoinRules]: RoomJoinRulesEventContent;
|
|
234
|
+
[EventType.RoomMember]: RoomMemberEventContent;
|
|
235
|
+
[EventType.RoomThirdPartyInvite]: XOR<RoomThirdPartyInviteEventContent, {}>;
|
|
236
|
+
[EventType.RoomPowerLevels]: RoomPowerLevelsEventContent;
|
|
237
|
+
[EventType.RoomName]: RoomNameEventContent;
|
|
238
|
+
[EventType.RoomTopic]: RoomTopicEventContent;
|
|
239
|
+
[EventType.RoomAvatar]: RoomAvatarEventContent;
|
|
240
|
+
[EventType.RoomPinnedEvents]: RoomPinnedEventsEventContent;
|
|
241
|
+
[EventType.RoomEncryption]: RoomEncryptionEventContent;
|
|
242
|
+
[EventType.RoomHistoryVisibility]: RoomHistoryVisibilityEventContent;
|
|
243
|
+
[EventType.RoomGuestAccess]: RoomGuestAccessEventContent;
|
|
244
|
+
[EventType.RoomServerAcl]: RoomServerAclEventContent;
|
|
245
|
+
[EventType.RoomTombstone]: RoomTombstoneEventContent;
|
|
246
|
+
[EventType.SpaceChild]: SpaceChildEventContent;
|
|
247
|
+
[EventType.SpaceParent]: SpaceParentEventContent;
|
|
248
|
+
[EventType.PolicyRuleUser]: XOR<PolicyRuleEventContent, {}>;
|
|
249
|
+
[EventType.PolicyRuleRoom]: XOR<PolicyRuleEventContent, {}>;
|
|
250
|
+
[EventType.PolicyRuleServer]: XOR<PolicyRuleEventContent, {}>;
|
|
251
|
+
[EventType.GroupCallPrefix]: IGroupCallRoomState;
|
|
252
|
+
[EventType.GroupCallMemberPrefix]: XOR<IGroupCallRoomMemberState, ExperimentalGroupCallRoomMemberState>;
|
|
253
|
+
[UNSTABLE_MSC3089_BRANCH.name]: MSC3089EventContent;
|
|
254
|
+
[M_BEACON_INFO.name]: MBeaconInfoEventContent;
|
|
201
255
|
}
|
|
202
256
|
//# sourceMappingURL=event.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../src/@types/event.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../src/@types/event.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EACH,sBAAsB,EACtB,sBAAsB,EACtB,8BAA8B,EAC9B,sBAAsB,EACtB,0BAA0B,EAC1B,2BAA2B,EAC3B,iCAAiC,EACjC,yBAAyB,EACzB,sBAAsB,EACtB,oBAAoB,EACpB,4BAA4B,EAC5B,2BAA2B,EAC3B,yBAAyB,EACzB,gCAAgC,EAChC,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EAC1B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACH,oCAAoC,EACpC,yBAAyB,EACzB,mBAAmB,EACtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AACjG,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC9F,OAAO,EACH,WAAW,EACX,SAAS,EACT,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACvB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAE/F,oBAAY,SAAS;IAEjB,kBAAkB,2BAA2B;IAC7C,UAAU,kBAAkB;IAC5B,aAAa,sBAAsB;IACnC,UAAU,kBAAkB;IAC5B,oBAAoB,8BAA8B;IAClD,eAAe,wBAAwB;IACvC,QAAQ,gBAAgB;IACxB,SAAS,iBAAiB;IAC1B,UAAU,kBAAkB;IAC5B,gBAAgB,yBAAyB;IACzC,cAAc,sBAAsB;IACpC,qBAAqB,8BAA8B;IACnD,eAAe,wBAAwB;IACvC,aAAa,sBAAsB;IACnC,aAAa,qBAAqB;IAClC,eAAe,wCAAwC;IAGvD,cAAc,uBAAuB;IACrC,cAAc,uBAAuB;IACrC,gBAAgB,yBAAyB;IAEzC,UAAU,kBAAkB;IAC5B,WAAW,mBAAmB;IAG9B,aAAa,qBAAqB;IAClC,WAAW,mBAAmB;IAC9B,oBAAoB,qBAAqB;IACzC,OAAO,cAAc;IACrB,UAAU,kBAAkB;IAC5B,cAAc,sBAAsB;IACpC,UAAU,kBAAkB;IAC5B,UAAU,kBAAkB;IAC5B,UAAU,kBAAkB;IAC5B,gBAAgB,yBAAyB;IACzC,aAAa,qBAAqB;IAClC,4BAA4B,uCAAuC;IACnE,kCAAkC,gDAAgD;IAClF,YAAY,oBAAoB;IAChC,oBAAoB,6BAA6B;IACjD,0BAA0B,sCAAsC;IAChE,wBAAwB,oCAAoC;IAC5D,sBAAsB,+BAA+B;IACrD,oBAAoB,6BAA6B;IACjD,qBAAqB,8BAA8B;IACnD,kBAAkB,2BAA2B;IAC7C,mBAAmB,4BAA4B;IAC/C,kBAAkB,2BAA2B;IAC7C,qBAAqB,8BAA8B;IAEnD,oBAAoB,6BAA6B;IAEjD,mBAAmB,4BAA4B;IAC/C,QAAQ,eAAe;IACvB,SAAS,kCAAkC;IAG3C,MAAM,aAAa;IACnB,OAAO,cAAc;IACrB,QAAQ,eAAe;IAGvB,SAAS,iBAAiB;IAC1B,GAAG,UAAU;IACb,UAAU,mCAAmC,CAAE,UAAU;IAGzD,SAAS,iBAAiB;IAC1B,MAAM,aAAa;IACnB,eAAe,wBAAwB;IAGvC,OAAO,eAAe;IACtB,cAAc,uBAAuB;IACrC,gBAAgB,yBAAyB;IACzC,KAAK,YAAY;IAGjB,eAAe,4BAA4B;IAC3C,qBAAqB,mCAAmC;IAGxD,UAAU,mCAAmC;CAChD;AAED,oBAAY,YAAY;IACpB,UAAU,iBAAiB;IAC3B,OAAO,cAAc;IACrB,SAAS,gBAAgB;IAKzB,MAAM,aAAa;CACtB;AAED,oBAAY,OAAO;IACf,IAAI,WAAW;IACf,KAAK,YAAY;IACjB,MAAM,aAAa;IACnB,KAAK,YAAY;IACjB,IAAI,WAAW;IACf,KAAK,YAAY;IACjB,QAAQ,eAAe;IACvB,KAAK,YAAY;IACjB,sBAAsB,+BAA+B;CACxD;AAED,eAAO,MAAM,mBAAmB,SAAS,CAAC;AAE1C,oBAAY,QAAQ;IAChB,KAAK,YAAY;IACjB,YAAY,4BAA4B;IACxC,YAAY,qBAAqB;CACpC;AAED,eAAO,MAAM,iBAAiB,qBAAqB,CAAC;AAEpD;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,+DAAoE,CAAC;AAE1G;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,0DAA+D,CAAC;AAErG;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,8DAAmE,CAAC;AAE9G;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,oDAAyD,CAAC;AAE5F;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,wDAA6D,CAAC;AAElG;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,6DAAkE,CAAC;AAEvG;;;GAGG;AACH,eAAO,MAAM,sCAAsC,sEAGlD,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,iCAAiC,iFAG7C,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,gEAAqE,CAAC;AAE/G;;;;GAIG;AACH,eAAO,MAAM,cAAc,wDAA6D,CAAC;AAEzF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,4DAAiE,CAAC;AAE/F;;;;GAIG;AACH,eAAO,MAAM,kCAAkC,kGAG9C,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,4DAAiE,CAAC;AAEvG;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,aAAa,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,uBAAuB,CAAC;IACjD,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,mBAAmB,CAAC;IACzC,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAC3C,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAC7C,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC;IACpC,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IAChD,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAC7C,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,eAAe,CAAC;IAC5C,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC1C,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC1C,CAAC,SAAS,CAAC,kCAAkC,CAAC,EAAE,SAAS,GAAG;QAAE,CAAC,oBAAoB,CAAC,EAAE,iBAAiB,CAAA;KAAE,CAAC;IAC1G,CAAC,SAAS,CAAC,wBAAwB,CAAC,EAAE,0BAA0B,CAAC;IACjE,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAC3C,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,mBAAmB,CAAC;IACrC,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,qBAAqB,CAAC;IAC3C,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,mBAAmB,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,CAAC,SAAS,CAAC,kBAAkB,CAAC,EAAE,8BAA8B,CAAC;IAC/D,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,sBAAsB,CAAC;IAC/C,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,yBAAyB,CAAC;IACrD,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,sBAAsB,CAAC;IAE/C,CAAC,SAAS,CAAC,oBAAoB,CAAC,EAAE,GAAG,CAAC,gCAAgC,EAAE,EAAE,CAAC,CAAC;IAC5E,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,2BAA2B,CAAC;IACzD,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAC3C,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,qBAAqB,CAAC;IAC7C,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,sBAAsB,CAAC;IAC/C,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,4BAA4B,CAAC;IAC3D,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,0BAA0B,CAAC;IACvD,CAAC,SAAS,CAAC,qBAAqB,CAAC,EAAE,iCAAiC,CAAC;IACrE,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,2BAA2B,CAAC;IACzD,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,yBAAyB,CAAC;IACrD,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,yBAAyB,CAAC;IACrD,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,sBAAsB,CAAC;IAC/C,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,uBAAuB,CAAC;IAEjD,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,GAAG,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,GAAG,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,GAAG,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAC;IAG9D,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACjD,CAAC,SAAS,CAAC,qBAAqB,CAAC,EAAE,GAAG,CAAC,yBAAyB,EAAE,oCAAoC,CAAC,CAAC;IAGxG,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAGpD,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,uBAAuB,CAAC;CACjD"}
|
package/lib/@types/event.js
CHANGED
|
@@ -5,6 +5,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.UNSTABLE_MSC3089_TREE_SUBTYPE = exports.UNSTABLE_MSC3089_LEAF = exports.UNSTABLE_MSC3089_BRANCH = exports.UNSTABLE_MSC3088_PURPOSE = exports.UNSTABLE_MSC3088_ENABLED = exports.UNSTABLE_MSC2716_MARKER = exports.UNSTABLE_ELEMENT_FUNCTIONAL_USERS = exports.UNSIGNED_THREAD_ID_FIELD = exports.ToDeviceMessageId = exports.RoomType = exports.RoomCreateTypeField = exports.RelationType = exports.PUSHER_ENABLED = exports.PUSHER_DEVICE_ID = exports.MsgType = exports.MSC3912_RELATION_BASED_REDACTIONS_PROP = exports.LOCAL_NOTIFICATION_SETTINGS_PREFIX = exports.EventType = exports.EVENT_VISIBILITY_CHANGE_TYPE = void 0;
|
|
7
7
|
var _NamespacedValue = require("../NamespacedValue");
|
|
8
|
+
var _beacon = require("./beacon");
|
|
9
|
+
var _callEventTypes = require("../webrtc/callEventTypes");
|
|
10
|
+
var _polls = require("./polls");
|
|
8
11
|
/*
|
|
9
12
|
Copyright 2020 The Matrix.org Foundation C.I.C.
|
|
10
13
|
|
|
@@ -37,6 +40,9 @@ let EventType = exports.EventType = /*#__PURE__*/function (EventType) {
|
|
|
37
40
|
EventType["RoomServerAcl"] = "m.room.server_acl";
|
|
38
41
|
EventType["RoomTombstone"] = "m.room.tombstone";
|
|
39
42
|
EventType["RoomPredecessor"] = "org.matrix.msc3946.room_predecessor";
|
|
43
|
+
EventType["PolicyRuleUser"] = "m.policy.rule.user";
|
|
44
|
+
EventType["PolicyRuleRoom"] = "m.policy.rule.room";
|
|
45
|
+
EventType["PolicyRuleServer"] = "m.policy.rule.server";
|
|
40
46
|
EventType["SpaceChild"] = "m.space.child";
|
|
41
47
|
EventType["SpaceParent"] = "m.space.parent";
|
|
42
48
|
EventType["RoomRedaction"] = "m.room.redaction";
|
|
@@ -221,4 +227,16 @@ const LOCAL_NOTIFICATION_SETTINGS_PREFIX = exports.LOCAL_NOTIFICATION_SETTINGS_P
|
|
|
221
227
|
* @experimental
|
|
222
228
|
*/
|
|
223
229
|
const UNSIGNED_THREAD_ID_FIELD = exports.UNSIGNED_THREAD_ID_FIELD = new _NamespacedValue.UnstableValue("thread_id", "org.matrix.msc4023.thread_id");
|
|
230
|
+
|
|
231
|
+
/**
|
|
232
|
+
* @deprecated in favour of {@link EncryptedFile}
|
|
233
|
+
*/
|
|
234
|
+
|
|
235
|
+
/**
|
|
236
|
+
* Mapped type from event type to content type for all specified non-state room events.
|
|
237
|
+
*/
|
|
238
|
+
|
|
239
|
+
/**
|
|
240
|
+
* Mapped type from event type to content type for all specified room state events.
|
|
241
|
+
*/
|
|
224
242
|
//# sourceMappingURL=event.js.map
|
package/lib/@types/event.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event.js","names":["_NamespacedValue","require","EventType","exports","RelationType","MsgType","RoomCreateTypeField","RoomType","ToDeviceMessageId","UNSTABLE_MSC3088_PURPOSE","UnstableValue","UNSTABLE_MSC3088_ENABLED","UNSTABLE_MSC3089_TREE_SUBTYPE","UNSTABLE_MSC3089_LEAF","UNSTABLE_MSC3089_BRANCH","UNSTABLE_MSC2716_MARKER","MSC3912_RELATION_BASED_REDACTIONS_PROP","UNSTABLE_ELEMENT_FUNCTIONAL_USERS","EVENT_VISIBILITY_CHANGE_TYPE","PUSHER_ENABLED","PUSHER_DEVICE_ID","LOCAL_NOTIFICATION_SETTINGS_PREFIX","UNSIGNED_THREAD_ID_FIELD"],"sources":["../../src/@types/event.ts"],"sourcesContent":["/*\nCopyright 2020 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\nimport { UnstableValue } from \"../NamespacedValue\";\n\nexport enum EventType {\n // Room state events\n RoomCanonicalAlias = \"m.room.canonical_alias\",\n RoomCreate = \"m.room.create\",\n RoomJoinRules = \"m.room.join_rules\",\n RoomMember = \"m.room.member\",\n RoomThirdPartyInvite = \"m.room.third_party_invite\",\n RoomPowerLevels = \"m.room.power_levels\",\n RoomName = \"m.room.name\",\n RoomTopic = \"m.room.topic\",\n RoomAvatar = \"m.room.avatar\",\n RoomPinnedEvents = \"m.room.pinned_events\",\n RoomEncryption = \"m.room.encryption\",\n RoomHistoryVisibility = \"m.room.history_visibility\",\n RoomGuestAccess = \"m.room.guest_access\",\n RoomServerAcl = \"m.room.server_acl\",\n RoomTombstone = \"m.room.tombstone\",\n RoomPredecessor = \"org.matrix.msc3946.room_predecessor\",\n\n SpaceChild = \"m.space.child\",\n SpaceParent = \"m.space.parent\",\n\n // Room timeline events\n RoomRedaction = \"m.room.redaction\",\n RoomMessage = \"m.room.message\",\n RoomMessageEncrypted = \"m.room.encrypted\",\n Sticker = \"m.sticker\",\n CallInvite = \"m.call.invite\",\n CallCandidates = \"m.call.candidates\",\n CallAnswer = \"m.call.answer\",\n CallHangup = \"m.call.hangup\",\n CallReject = \"m.call.reject\",\n CallSelectAnswer = \"m.call.select_answer\",\n CallNegotiate = \"m.call.negotiate\",\n CallSDPStreamMetadataChanged = \"m.call.sdp_stream_metadata_changed\",\n CallSDPStreamMetadataChangedPrefix = \"org.matrix.call.sdp_stream_metadata_changed\",\n CallReplaces = \"m.call.replaces\",\n CallAssertedIdentity = \"m.call.asserted_identity\",\n CallAssertedIdentityPrefix = \"org.matrix.call.asserted_identity\",\n CallEncryptionKeysPrefix = \"io.element.call.encryption_keys\",\n KeyVerificationRequest = \"m.key.verification.request\",\n KeyVerificationStart = \"m.key.verification.start\",\n KeyVerificationCancel = \"m.key.verification.cancel\",\n KeyVerificationMac = \"m.key.verification.mac\",\n KeyVerificationDone = \"m.key.verification.done\",\n KeyVerificationKey = \"m.key.verification.key\",\n KeyVerificationAccept = \"m.key.verification.accept\",\n // Not used directly - see READY_TYPE in VerificationRequest.\n KeyVerificationReady = \"m.key.verification.ready\",\n // use of this is discouraged https://matrix.org/docs/spec/client_server/r0.6.1#m-room-message-feedback\n RoomMessageFeedback = \"m.room.message.feedback\",\n Reaction = \"m.reaction\",\n PollStart = \"org.matrix.msc3381.poll.start\",\n\n // Room ephemeral events\n Typing = \"m.typing\",\n Receipt = \"m.receipt\",\n Presence = \"m.presence\",\n\n // Room account_data events\n FullyRead = \"m.fully_read\",\n Tag = \"m.tag\",\n SpaceOrder = \"org.matrix.msc3230.space_order\", // MSC3230\n\n // User account_data events\n PushRules = \"m.push_rules\",\n Direct = \"m.direct\",\n IgnoredUserList = \"m.ignored_user_list\",\n\n // to_device events\n RoomKey = \"m.room_key\",\n RoomKeyRequest = \"m.room_key_request\",\n ForwardedRoomKey = \"m.forwarded_room_key\",\n Dummy = \"m.dummy\",\n\n // Group call events\n GroupCallPrefix = \"org.matrix.msc3401.call\",\n GroupCallMemberPrefix = \"org.matrix.msc3401.call.member\",\n\n // MatrixRTC events\n CallNotify = \"org.matrix.msc4075.call.notify\",\n}\n\nexport enum RelationType {\n Annotation = \"m.annotation\",\n Replace = \"m.replace\",\n Reference = \"m.reference\",\n Thread = \"m.thread\",\n}\n\nexport enum MsgType {\n Text = \"m.text\",\n Emote = \"m.emote\",\n Notice = \"m.notice\",\n Image = \"m.image\",\n File = \"m.file\",\n Audio = \"m.audio\",\n Location = \"m.location\",\n Video = \"m.video\",\n KeyVerificationRequest = \"m.key.verification.request\",\n}\n\nexport const RoomCreateTypeField = \"type\";\n\nexport enum RoomType {\n Space = \"m.space\",\n UnstableCall = \"org.matrix.msc3417.call\",\n ElementVideo = \"io.element.video\",\n}\n\nexport const ToDeviceMessageId = \"org.matrix.msgid\";\n\n/**\n * Identifier for an [MSC3088](https://github.com/matrix-org/matrix-doc/pull/3088)\n * room purpose. Note that this reference is UNSTABLE and subject to breaking changes,\n * including its eventual removal.\n */\nexport const UNSTABLE_MSC3088_PURPOSE = new UnstableValue(\"m.room.purpose\", \"org.matrix.msc3088.purpose\");\n\n/**\n * Enabled flag for an [MSC3088](https://github.com/matrix-org/matrix-doc/pull/3088)\n * room purpose. Note that this reference is UNSTABLE and subject to breaking changes,\n * including its eventual removal.\n */\nexport const UNSTABLE_MSC3088_ENABLED = new UnstableValue(\"m.enabled\", \"org.matrix.msc3088.enabled\");\n\n/**\n * Subtype for an [MSC3089](https://github.com/matrix-org/matrix-doc/pull/3089) space-room.\n * Note that this reference is UNSTABLE and subject to breaking changes, including its\n * eventual removal.\n */\nexport const UNSTABLE_MSC3089_TREE_SUBTYPE = new UnstableValue(\"m.data_tree\", \"org.matrix.msc3089.data_tree\");\n\n/**\n * Leaf type for an event in a [MSC3089](https://github.com/matrix-org/matrix-doc/pull/3089) space-room.\n * Note that this reference is UNSTABLE and subject to breaking changes, including its\n * eventual removal.\n */\nexport const UNSTABLE_MSC3089_LEAF = new UnstableValue(\"m.leaf\", \"org.matrix.msc3089.leaf\");\n\n/**\n * Branch (Leaf Reference) type for the index approach in a\n * [MSC3089](https://github.com/matrix-org/matrix-doc/pull/3089) space-room. Note that this reference is\n * UNSTABLE and subject to breaking changes, including its eventual removal.\n */\nexport const UNSTABLE_MSC3089_BRANCH = new UnstableValue(\"m.branch\", \"org.matrix.msc3089.branch\");\n\n/**\n * Marker event type to point back at imported historical content in a room. See\n * [MSC2716](https://github.com/matrix-org/matrix-spec-proposals/pull/2716).\n * Note that this reference is UNSTABLE and subject to breaking changes,\n * including its eventual removal.\n */\nexport const UNSTABLE_MSC2716_MARKER = new UnstableValue(\"m.room.marker\", \"org.matrix.msc2716.marker\");\n\n/**\n * Name of the request property for relation based redactions.\n * {@link https://github.com/matrix-org/matrix-spec-proposals/pull/3912}\n */\nexport const MSC3912_RELATION_BASED_REDACTIONS_PROP = new UnstableValue(\n \"with_rel_types\",\n \"org.matrix.msc3912.with_relations\",\n);\n\n/**\n * Functional members type for declaring a purpose of room members (e.g. helpful bots).\n * Note that this reference is UNSTABLE and subject to breaking changes, including its\n * eventual removal.\n *\n * Schema (TypeScript):\n * ```\n * {\n * service_members?: string[]\n * }\n * ```\n *\n * @example\n * ```\n * {\n * \"service_members\": [\n * \"@helperbot:localhost\",\n * \"@reminderbot:alice.tdl\"\n * ]\n * }\n * ```\n */\nexport const UNSTABLE_ELEMENT_FUNCTIONAL_USERS = new UnstableValue(\n \"io.element.functional_members\",\n \"io.element.functional_members\",\n);\n\n/**\n * A type of message that affects visibility of a message,\n * as per https://github.com/matrix-org/matrix-doc/pull/3531\n *\n * @experimental\n */\nexport const EVENT_VISIBILITY_CHANGE_TYPE = new UnstableValue(\"m.visibility\", \"org.matrix.msc3531.visibility\");\n\n/**\n * https://github.com/matrix-org/matrix-doc/pull/3881\n *\n * @experimental\n */\nexport const PUSHER_ENABLED = new UnstableValue(\"enabled\", \"org.matrix.msc3881.enabled\");\n\n/**\n * https://github.com/matrix-org/matrix-doc/pull/3881\n *\n * @experimental\n */\nexport const PUSHER_DEVICE_ID = new UnstableValue(\"device_id\", \"org.matrix.msc3881.device_id\");\n\n/**\n * https://github.com/matrix-org/matrix-doc/pull/3890\n *\n * @experimental\n */\nexport const LOCAL_NOTIFICATION_SETTINGS_PREFIX = new UnstableValue(\n \"m.local_notification_settings\",\n \"org.matrix.msc3890.local_notification_settings\",\n);\n\n/**\n * https://github.com/matrix-org/matrix-doc/pull/4023\n *\n * @experimental\n */\nexport const UNSIGNED_THREAD_ID_FIELD = new UnstableValue(\"thread_id\", \"org.matrix.msc4023.thread_id\");\n\nexport interface IEncryptedFile {\n url: string;\n mimetype?: string;\n key: {\n alg: string;\n key_ops: string[]; // eslint-disable-line camelcase\n kty: string;\n k: string;\n ext: boolean;\n };\n iv: string;\n hashes: { [alg: string]: string };\n v: string;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"event.js","names":["_NamespacedValue","require","_beacon","_callEventTypes","_polls","EventType","exports","RelationType","MsgType","RoomCreateTypeField","RoomType","ToDeviceMessageId","UNSTABLE_MSC3088_PURPOSE","UnstableValue","UNSTABLE_MSC3088_ENABLED","UNSTABLE_MSC3089_TREE_SUBTYPE","UNSTABLE_MSC3089_LEAF","UNSTABLE_MSC3089_BRANCH","UNSTABLE_MSC2716_MARKER","MSC3912_RELATION_BASED_REDACTIONS_PROP","UNSTABLE_ELEMENT_FUNCTIONAL_USERS","EVENT_VISIBILITY_CHANGE_TYPE","PUSHER_ENABLED","PUSHER_DEVICE_ID","LOCAL_NOTIFICATION_SETTINGS_PREFIX","UNSIGNED_THREAD_ID_FIELD"],"sources":["../../src/@types/event.ts"],"sourcesContent":["/*\nCopyright 2020 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\nimport { UnstableValue } from \"../NamespacedValue\";\nimport {\n PolicyRuleEventContent,\n RoomAvatarEventContent,\n RoomCanonicalAliasEventContent,\n RoomCreateEventContent,\n RoomEncryptionEventContent,\n RoomGuestAccessEventContent,\n RoomHistoryVisibilityEventContent,\n RoomJoinRulesEventContent,\n RoomMemberEventContent,\n RoomNameEventContent,\n RoomPinnedEventsEventContent,\n RoomPowerLevelsEventContent,\n RoomServerAclEventContent,\n RoomThirdPartyInviteEventContent,\n RoomTombstoneEventContent,\n RoomTopicEventContent,\n SpaceChildEventContent,\n SpaceParentEventContent,\n} from \"./state_events\";\nimport {\n ExperimentalGroupCallRoomMemberState,\n IGroupCallRoomMemberState,\n IGroupCallRoomState,\n} from \"../webrtc/groupCall\";\nimport { MSC3089EventContent } from \"../models/MSC3089Branch\";\nimport { M_BEACON, M_BEACON_INFO, MBeaconEventContent, MBeaconInfoEventContent } from \"./beacon\";\nimport { XOR } from \"./common\";\nimport { ReactionEventContent, RoomMessageEventContent, StickerEventContent } from \"./events\";\nimport {\n MCallAnswer,\n MCallBase,\n MCallCandidates,\n MCallHangupReject,\n MCallInviteNegotiate,\n MCallReplacesEvent,\n MCallSelectAnswer,\n SDPStreamMetadata,\n SDPStreamMetadataKey,\n} from \"../webrtc/callEventTypes\";\nimport { EncryptionKeysEventContent, ICallNotifyContent } from \"../matrixrtc/types\";\nimport { EncryptedFile } from \"./media\";\nimport { M_POLL_END, M_POLL_START, PollEndEventContent, PollStartEventContent } from \"./polls\";\n\nexport enum EventType {\n // Room state events\n RoomCanonicalAlias = \"m.room.canonical_alias\",\n RoomCreate = \"m.room.create\",\n RoomJoinRules = \"m.room.join_rules\",\n RoomMember = \"m.room.member\",\n RoomThirdPartyInvite = \"m.room.third_party_invite\",\n RoomPowerLevels = \"m.room.power_levels\",\n RoomName = \"m.room.name\",\n RoomTopic = \"m.room.topic\",\n RoomAvatar = \"m.room.avatar\",\n RoomPinnedEvents = \"m.room.pinned_events\",\n RoomEncryption = \"m.room.encryption\",\n RoomHistoryVisibility = \"m.room.history_visibility\",\n RoomGuestAccess = \"m.room.guest_access\",\n RoomServerAcl = \"m.room.server_acl\",\n RoomTombstone = \"m.room.tombstone\",\n RoomPredecessor = \"org.matrix.msc3946.room_predecessor\",\n\n // Moderation policy lists\n PolicyRuleUser = \"m.policy.rule.user\",\n PolicyRuleRoom = \"m.policy.rule.room\",\n PolicyRuleServer = \"m.policy.rule.server\",\n\n SpaceChild = \"m.space.child\",\n SpaceParent = \"m.space.parent\",\n\n // Room timeline events\n RoomRedaction = \"m.room.redaction\",\n RoomMessage = \"m.room.message\",\n RoomMessageEncrypted = \"m.room.encrypted\",\n Sticker = \"m.sticker\",\n CallInvite = \"m.call.invite\",\n CallCandidates = \"m.call.candidates\",\n CallAnswer = \"m.call.answer\",\n CallHangup = \"m.call.hangup\",\n CallReject = \"m.call.reject\",\n CallSelectAnswer = \"m.call.select_answer\",\n CallNegotiate = \"m.call.negotiate\",\n CallSDPStreamMetadataChanged = \"m.call.sdp_stream_metadata_changed\",\n CallSDPStreamMetadataChangedPrefix = \"org.matrix.call.sdp_stream_metadata_changed\",\n CallReplaces = \"m.call.replaces\",\n CallAssertedIdentity = \"m.call.asserted_identity\",\n CallAssertedIdentityPrefix = \"org.matrix.call.asserted_identity\",\n CallEncryptionKeysPrefix = \"io.element.call.encryption_keys\",\n KeyVerificationRequest = \"m.key.verification.request\",\n KeyVerificationStart = \"m.key.verification.start\",\n KeyVerificationCancel = \"m.key.verification.cancel\",\n KeyVerificationMac = \"m.key.verification.mac\",\n KeyVerificationDone = \"m.key.verification.done\",\n KeyVerificationKey = \"m.key.verification.key\",\n KeyVerificationAccept = \"m.key.verification.accept\",\n // Not used directly - see READY_TYPE in VerificationRequest.\n KeyVerificationReady = \"m.key.verification.ready\",\n // use of this is discouraged https://matrix.org/docs/spec/client_server/r0.6.1#m-room-message-feedback\n RoomMessageFeedback = \"m.room.message.feedback\",\n Reaction = \"m.reaction\",\n PollStart = \"org.matrix.msc3381.poll.start\",\n\n // Room ephemeral events\n Typing = \"m.typing\",\n Receipt = \"m.receipt\",\n Presence = \"m.presence\",\n\n // Room account_data events\n FullyRead = \"m.fully_read\",\n Tag = \"m.tag\",\n SpaceOrder = \"org.matrix.msc3230.space_order\", // MSC3230\n\n // User account_data events\n PushRules = \"m.push_rules\",\n Direct = \"m.direct\",\n IgnoredUserList = \"m.ignored_user_list\",\n\n // to_device events\n RoomKey = \"m.room_key\",\n RoomKeyRequest = \"m.room_key_request\",\n ForwardedRoomKey = \"m.forwarded_room_key\",\n Dummy = \"m.dummy\",\n\n // Group call events\n GroupCallPrefix = \"org.matrix.msc3401.call\",\n GroupCallMemberPrefix = \"org.matrix.msc3401.call.member\",\n\n // MatrixRTC events\n CallNotify = \"org.matrix.msc4075.call.notify\",\n}\n\nexport enum RelationType {\n Annotation = \"m.annotation\",\n Replace = \"m.replace\",\n Reference = \"m.reference\",\n\n // Don't use this yet: it's only the stable version. The code still assumes we support the unstable prefix and,\n // moreover, our tests currently use the unstable prefix. Use THREAD_RELATION_TYPE.name.\n // Once we support *only* the stable prefix, THREAD_RELATION_TYPE can die and we can switch to this.\n Thread = \"m.thread\",\n}\n\nexport enum MsgType {\n Text = \"m.text\",\n Emote = \"m.emote\",\n Notice = \"m.notice\",\n Image = \"m.image\",\n File = \"m.file\",\n Audio = \"m.audio\",\n Location = \"m.location\",\n Video = \"m.video\",\n KeyVerificationRequest = \"m.key.verification.request\",\n}\n\nexport const RoomCreateTypeField = \"type\";\n\nexport enum RoomType {\n Space = \"m.space\",\n UnstableCall = \"org.matrix.msc3417.call\",\n ElementVideo = \"io.element.video\",\n}\n\nexport const ToDeviceMessageId = \"org.matrix.msgid\";\n\n/**\n * Identifier for an [MSC3088](https://github.com/matrix-org/matrix-doc/pull/3088)\n * room purpose. Note that this reference is UNSTABLE and subject to breaking changes,\n * including its eventual removal.\n */\nexport const UNSTABLE_MSC3088_PURPOSE = new UnstableValue(\"m.room.purpose\", \"org.matrix.msc3088.purpose\");\n\n/**\n * Enabled flag for an [MSC3088](https://github.com/matrix-org/matrix-doc/pull/3088)\n * room purpose. Note that this reference is UNSTABLE and subject to breaking changes,\n * including its eventual removal.\n */\nexport const UNSTABLE_MSC3088_ENABLED = new UnstableValue(\"m.enabled\", \"org.matrix.msc3088.enabled\");\n\n/**\n * Subtype for an [MSC3089](https://github.com/matrix-org/matrix-doc/pull/3089) space-room.\n * Note that this reference is UNSTABLE and subject to breaking changes, including its\n * eventual removal.\n */\nexport const UNSTABLE_MSC3089_TREE_SUBTYPE = new UnstableValue(\"m.data_tree\", \"org.matrix.msc3089.data_tree\");\n\n/**\n * Leaf type for an event in a [MSC3089](https://github.com/matrix-org/matrix-doc/pull/3089) space-room.\n * Note that this reference is UNSTABLE and subject to breaking changes, including its\n * eventual removal.\n */\nexport const UNSTABLE_MSC3089_LEAF = new UnstableValue(\"m.leaf\", \"org.matrix.msc3089.leaf\");\n\n/**\n * Branch (Leaf Reference) type for the index approach in a\n * [MSC3089](https://github.com/matrix-org/matrix-doc/pull/3089) space-room. Note that this reference is\n * UNSTABLE and subject to breaking changes, including its eventual removal.\n */\nexport const UNSTABLE_MSC3089_BRANCH = new UnstableValue(\"m.branch\", \"org.matrix.msc3089.branch\");\n\n/**\n * Marker event type to point back at imported historical content in a room. See\n * [MSC2716](https://github.com/matrix-org/matrix-spec-proposals/pull/2716).\n * Note that this reference is UNSTABLE and subject to breaking changes,\n * including its eventual removal.\n */\nexport const UNSTABLE_MSC2716_MARKER = new UnstableValue(\"m.room.marker\", \"org.matrix.msc2716.marker\");\n\n/**\n * Name of the request property for relation based redactions.\n * {@link https://github.com/matrix-org/matrix-spec-proposals/pull/3912}\n */\nexport const MSC3912_RELATION_BASED_REDACTIONS_PROP = new UnstableValue(\n \"with_rel_types\",\n \"org.matrix.msc3912.with_relations\",\n);\n\n/**\n * Functional members type for declaring a purpose of room members (e.g. helpful bots).\n * Note that this reference is UNSTABLE and subject to breaking changes, including its\n * eventual removal.\n *\n * Schema (TypeScript):\n * ```\n * {\n * service_members?: string[]\n * }\n * ```\n *\n * @example\n * ```\n * {\n * \"service_members\": [\n * \"@helperbot:localhost\",\n * \"@reminderbot:alice.tdl\"\n * ]\n * }\n * ```\n */\nexport const UNSTABLE_ELEMENT_FUNCTIONAL_USERS = new UnstableValue(\n \"io.element.functional_members\",\n \"io.element.functional_members\",\n);\n\n/**\n * A type of message that affects visibility of a message,\n * as per https://github.com/matrix-org/matrix-doc/pull/3531\n *\n * @experimental\n */\nexport const EVENT_VISIBILITY_CHANGE_TYPE = new UnstableValue(\"m.visibility\", \"org.matrix.msc3531.visibility\");\n\n/**\n * https://github.com/matrix-org/matrix-doc/pull/3881\n *\n * @experimental\n */\nexport const PUSHER_ENABLED = new UnstableValue(\"enabled\", \"org.matrix.msc3881.enabled\");\n\n/**\n * https://github.com/matrix-org/matrix-doc/pull/3881\n *\n * @experimental\n */\nexport const PUSHER_DEVICE_ID = new UnstableValue(\"device_id\", \"org.matrix.msc3881.device_id\");\n\n/**\n * https://github.com/matrix-org/matrix-doc/pull/3890\n *\n * @experimental\n */\nexport const LOCAL_NOTIFICATION_SETTINGS_PREFIX = new UnstableValue(\n \"m.local_notification_settings\",\n \"org.matrix.msc3890.local_notification_settings\",\n);\n\n/**\n * https://github.com/matrix-org/matrix-doc/pull/4023\n *\n * @experimental\n */\nexport const UNSIGNED_THREAD_ID_FIELD = new UnstableValue(\"thread_id\", \"org.matrix.msc4023.thread_id\");\n\n/**\n * @deprecated in favour of {@link EncryptedFile}\n */\nexport type IEncryptedFile = EncryptedFile;\n\n/**\n * Mapped type from event type to content type for all specified non-state room events.\n */\nexport interface TimelineEvents {\n [EventType.RoomMessage]: RoomMessageEventContent;\n [EventType.Sticker]: StickerEventContent;\n [EventType.Reaction]: ReactionEventContent;\n [EventType.CallReplaces]: MCallReplacesEvent;\n [EventType.CallAnswer]: MCallAnswer;\n [EventType.CallSelectAnswer]: MCallSelectAnswer;\n [EventType.CallNegotiate]: Omit<MCallInviteNegotiate, \"offer\">;\n [EventType.CallInvite]: MCallInviteNegotiate;\n [EventType.CallCandidates]: MCallCandidates;\n [EventType.CallHangup]: MCallHangupReject;\n [EventType.CallReject]: MCallHangupReject;\n [EventType.CallSDPStreamMetadataChangedPrefix]: MCallBase & { [SDPStreamMetadataKey]: SDPStreamMetadata };\n [EventType.CallEncryptionKeysPrefix]: EncryptionKeysEventContent;\n [EventType.CallNotify]: ICallNotifyContent;\n [M_BEACON.name]: MBeaconEventContent;\n [M_POLL_START.name]: PollStartEventContent;\n [M_POLL_END.name]: PollEndEventContent;\n}\n\n/**\n * Mapped type from event type to content type for all specified room state events.\n */\nexport interface StateEvents {\n [EventType.RoomCanonicalAlias]: RoomCanonicalAliasEventContent;\n [EventType.RoomCreate]: RoomCreateEventContent;\n [EventType.RoomJoinRules]: RoomJoinRulesEventContent;\n [EventType.RoomMember]: RoomMemberEventContent;\n // XXX: Spec says this event has 3 required fields but kicking such an invitation requires sending `{}`\n [EventType.RoomThirdPartyInvite]: XOR<RoomThirdPartyInviteEventContent, {}>;\n [EventType.RoomPowerLevels]: RoomPowerLevelsEventContent;\n [EventType.RoomName]: RoomNameEventContent;\n [EventType.RoomTopic]: RoomTopicEventContent;\n [EventType.RoomAvatar]: RoomAvatarEventContent;\n [EventType.RoomPinnedEvents]: RoomPinnedEventsEventContent;\n [EventType.RoomEncryption]: RoomEncryptionEventContent;\n [EventType.RoomHistoryVisibility]: RoomHistoryVisibilityEventContent;\n [EventType.RoomGuestAccess]: RoomGuestAccessEventContent;\n [EventType.RoomServerAcl]: RoomServerAclEventContent;\n [EventType.RoomTombstone]: RoomTombstoneEventContent;\n [EventType.SpaceChild]: SpaceChildEventContent;\n [EventType.SpaceParent]: SpaceParentEventContent;\n\n [EventType.PolicyRuleUser]: XOR<PolicyRuleEventContent, {}>;\n [EventType.PolicyRuleRoom]: XOR<PolicyRuleEventContent, {}>;\n [EventType.PolicyRuleServer]: XOR<PolicyRuleEventContent, {}>;\n\n // MSC3401\n [EventType.GroupCallPrefix]: IGroupCallRoomState;\n [EventType.GroupCallMemberPrefix]: XOR<IGroupCallRoomMemberState, ExperimentalGroupCallRoomMemberState>;\n\n // MSC3089\n [UNSTABLE_MSC3089_BRANCH.name]: MSC3089EventContent;\n\n // MSC3672\n [M_BEACON_INFO.name]: MBeaconInfoEventContent;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { MsgType, RelationType } from "./event";
|
|
2
|
+
import { FileInfo, ImageInfo, MediaEventContent } from "./media";
|
|
3
|
+
import { XOR } from "./common";
|
|
4
|
+
interface BaseTimelineEvent {
|
|
5
|
+
"body": string;
|
|
6
|
+
"m.mentions"?: {
|
|
7
|
+
user_ids?: string[];
|
|
8
|
+
room?: boolean;
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
interface ReplyEvent {
|
|
12
|
+
"m.relates_to"?: {
|
|
13
|
+
"m.in_reply_to"?: {
|
|
14
|
+
event_id: string;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
interface NoRelationEvent {
|
|
19
|
+
"m.new_content"?: never;
|
|
20
|
+
"m.relates_to"?: never;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Partial content format of timeline events with rel_type `m.replace`
|
|
24
|
+
*
|
|
25
|
+
* @see https://spec.matrix.org/v1.9/client-server-api/#event-replacements
|
|
26
|
+
*/
|
|
27
|
+
export interface ReplacementEvent<T> {
|
|
28
|
+
"m.new_content": T;
|
|
29
|
+
"m.relates_to": {
|
|
30
|
+
event_id: string;
|
|
31
|
+
rel_type: RelationType.Replace;
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Partial content format of timeline events with rel_type other than `m.replace`
|
|
36
|
+
*
|
|
37
|
+
* @see https://spec.matrix.org/v1.9/client-server-api/#forming-relationships-between-events
|
|
38
|
+
*/
|
|
39
|
+
export interface RelationEvent {
|
|
40
|
+
"m.new_content"?: never;
|
|
41
|
+
"m.relates_to": {
|
|
42
|
+
event_id: string;
|
|
43
|
+
rel_type: Exclude<RelationType, RelationType.Replace>;
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Content format of timeline events with type `m.room.message` and `msgtype` `m.text`, `m.emote`, or `m.notice`
|
|
48
|
+
*
|
|
49
|
+
* @see https://spec.matrix.org/v1.9/client-server-api/#mroommessage
|
|
50
|
+
*/
|
|
51
|
+
export interface RoomMessageTextEventContent extends BaseTimelineEvent {
|
|
52
|
+
msgtype: MsgType.Text | MsgType.Emote | MsgType.Notice;
|
|
53
|
+
format?: "org.matrix.custom.html";
|
|
54
|
+
formatted_body?: string;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Content format of timeline events with type `m.room.message` and `msgtype` `m.location`
|
|
58
|
+
*
|
|
59
|
+
* @see https://spec.matrix.org/v1.9/client-server-api/#mlocation
|
|
60
|
+
*/
|
|
61
|
+
export interface RoomMessageLocationEventContent extends BaseTimelineEvent {
|
|
62
|
+
body: string;
|
|
63
|
+
geo_uri: string;
|
|
64
|
+
info: Pick<FileInfo, "thumbnail_info" | "thumbnail_file" | "thumbnail_url">;
|
|
65
|
+
msgtype: MsgType.Location;
|
|
66
|
+
}
|
|
67
|
+
type MessageEventContent = RoomMessageTextEventContent | RoomMessageLocationEventContent | MediaEventContent;
|
|
68
|
+
export type RoomMessageEventContent = BaseTimelineEvent & XOR<XOR<ReplacementEvent<MessageEventContent>, RelationEvent>, XOR<ReplyEvent, NoRelationEvent>> & MessageEventContent;
|
|
69
|
+
/**
|
|
70
|
+
* Content format of timeline events with type `m.sticker`
|
|
71
|
+
*
|
|
72
|
+
* @see https://spec.matrix.org/v1.9/client-server-api/#msticker
|
|
73
|
+
*/
|
|
74
|
+
export interface StickerEventContent extends BaseTimelineEvent {
|
|
75
|
+
body: string;
|
|
76
|
+
info: ImageInfo;
|
|
77
|
+
url: string;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Content format of timeline events with type `m.reaction`
|
|
81
|
+
*
|
|
82
|
+
* @see https://spec.matrix.org/v1.9/client-server-api/#mreaction
|
|
83
|
+
*/
|
|
84
|
+
export interface ReactionEventContent {
|
|
85
|
+
"m.relates_to": {
|
|
86
|
+
event_id: string;
|
|
87
|
+
key: string;
|
|
88
|
+
rel_type: RelationType.Annotation;
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
export {};
|
|
92
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/@types/events.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B,UAAU,iBAAiB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE;QACX,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QACpB,IAAI,CAAC,EAAE,OAAO,CAAC;KAClB,CAAC;CACL;AAED,UAAU,UAAU;IAChB,cAAc,CAAC,EAAE;QACb,eAAe,CAAC,EAAE;YACd,QAAQ,EAAE,MAAM,CAAC;SACpB,CAAC;KACL,CAAC;CACL;AAED,UAAU,eAAe;IACrB,eAAe,CAAC,EAAE,KAAK,CAAC;IACxB,cAAc,CAAC,EAAE,KAAK,CAAC;CAC1B;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB,CAAC,CAAC;IAC/B,eAAe,EAAE,CAAC,CAAC;IACnB,cAAc,EAAE;QACZ,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,YAAY,CAAC,OAAO,CAAC;KAClC,CAAC;CACL;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC1B,eAAe,CAAC,EAAE,KAAK,CAAC;IACxB,cAAc,EAAE;QACZ,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,OAAO,CAAC,YAAY,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;KACzD,CAAC;CACL;AAED;;;;GAIG;AACH,MAAM,WAAW,2BAA4B,SAAQ,iBAAiB;IAClE,OAAO,EAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;IACvD,MAAM,CAAC,EAAE,wBAAwB,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,WAAW,+BAAgC,SAAQ,iBAAiB;IACtE,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,gBAAgB,GAAG,gBAAgB,GAAG,eAAe,CAAC,CAAC;IAC5E,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC;CAC7B;AAED,KAAK,mBAAmB,GAAG,2BAA2B,GAAG,+BAA+B,GAAG,iBAAiB,CAAC;AAE7G,MAAM,MAAM,uBAAuB,GAAG,iBAAiB,GACnD,GAAG,CAAC,GAAG,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,EAAE,aAAa,CAAC,EAAE,GAAG,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,GAChG,mBAAmB,CAAC;AAExB;;;;GAIG;AACH,MAAM,WAAW,mBAAoB,SAAQ,iBAAiB;IAC1D,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,SAAS,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACjC,cAAc,EAAE;QACZ,QAAQ,EAAE,MAAM,CAAC;QACjB,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,EAAE,YAAY,CAAC,UAAU,CAAC;KACrC,CAAC;CACL"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.js","names":[],"sources":["../../src/@types/events.ts"],"sourcesContent":["/*\nCopyright 2024 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\nimport { MsgType, RelationType } from \"./event\";\nimport { FileInfo, ImageInfo, MediaEventContent } from \"./media\";\nimport { XOR } from \"./common\";\n\ninterface BaseTimelineEvent {\n \"body\": string;\n \"m.mentions\"?: {\n user_ids?: string[];\n room?: boolean;\n };\n}\n\ninterface ReplyEvent {\n \"m.relates_to\"?: {\n \"m.in_reply_to\"?: {\n event_id: string;\n };\n };\n}\n\ninterface NoRelationEvent {\n \"m.new_content\"?: never;\n \"m.relates_to\"?: never;\n}\n\n/**\n * Partial content format of timeline events with rel_type `m.replace`\n *\n * @see https://spec.matrix.org/v1.9/client-server-api/#event-replacements\n */\nexport interface ReplacementEvent<T> {\n \"m.new_content\": T;\n \"m.relates_to\": {\n event_id: string;\n rel_type: RelationType.Replace;\n };\n}\n\n/**\n * Partial content format of timeline events with rel_type other than `m.replace`\n *\n * @see https://spec.matrix.org/v1.9/client-server-api/#forming-relationships-between-events\n */\nexport interface RelationEvent {\n \"m.new_content\"?: never;\n \"m.relates_to\": {\n event_id: string;\n rel_type: Exclude<RelationType, RelationType.Replace>;\n };\n}\n\n/**\n * Content format of timeline events with type `m.room.message` and `msgtype` `m.text`, `m.emote`, or `m.notice`\n *\n * @see https://spec.matrix.org/v1.9/client-server-api/#mroommessage\n */\nexport interface RoomMessageTextEventContent extends BaseTimelineEvent {\n msgtype: MsgType.Text | MsgType.Emote | MsgType.Notice;\n format?: \"org.matrix.custom.html\";\n formatted_body?: string;\n}\n\n/**\n * Content format of timeline events with type `m.room.message` and `msgtype` `m.location`\n *\n * @see https://spec.matrix.org/v1.9/client-server-api/#mlocation\n */\nexport interface RoomMessageLocationEventContent extends BaseTimelineEvent {\n body: string;\n geo_uri: string;\n info: Pick<FileInfo, \"thumbnail_info\" | \"thumbnail_file\" | \"thumbnail_url\">;\n msgtype: MsgType.Location;\n}\n\ntype MessageEventContent = RoomMessageTextEventContent | RoomMessageLocationEventContent | MediaEventContent;\n\nexport type RoomMessageEventContent = BaseTimelineEvent &\n XOR<XOR<ReplacementEvent<MessageEventContent>, RelationEvent>, XOR<ReplyEvent, NoRelationEvent>> &\n MessageEventContent;\n\n/**\n * Content format of timeline events with type `m.sticker`\n *\n * @see https://spec.matrix.org/v1.9/client-server-api/#msticker\n */\nexport interface StickerEventContent extends BaseTimelineEvent {\n body: string;\n info: ImageInfo;\n url: string;\n}\n\n/**\n * Content format of timeline events with type `m.reaction`\n *\n * @see https://spec.matrix.org/v1.9/client-server-api/#mreaction\n */\nexport interface ReactionEventContent {\n \"m.relates_to\": {\n event_id: string;\n key: string;\n rel_type: RelationType.Annotation;\n };\n}\n"],"mappings":"","ignoreList":[]}
|
package/lib/@types/partials.d.ts
CHANGED
|
@@ -1,15 +1,3 @@
|
|
|
1
|
-
export interface IImageInfo {
|
|
2
|
-
size?: number;
|
|
3
|
-
mimetype?: string;
|
|
4
|
-
thumbnail_info?: {
|
|
5
|
-
w?: number;
|
|
6
|
-
h?: number;
|
|
7
|
-
size?: number;
|
|
8
|
-
mimetype?: string;
|
|
9
|
-
};
|
|
10
|
-
w?: number;
|
|
11
|
-
h?: number;
|
|
12
|
-
}
|
|
13
1
|
export declare enum Visibility {
|
|
14
2
|
Public = "public",
|
|
15
3
|
Private = "private"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"partials.d.ts","sourceRoot":"","sources":["../../src/@types/partials.ts"],"names":[],"mappings":"AAgBA,
|
|
1
|
+
{"version":3,"file":"partials.d.ts","sourceRoot":"","sources":["../../src/@types/partials.ts"],"names":[],"mappings":"AAgBA,oBAAY,UAAU;IAClB,MAAM,WAAW;IACjB,OAAO,YAAY;CACtB;AAED,oBAAY,MAAM;IACd,WAAW,iBAAiB;IAC5B,kBAAkB,yBAAyB;IAC3C,UAAU,gBAAgB;CAC7B;AAED,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,OAAO,CAAC;AAE5C,MAAM,MAAM,oBAAoB,GAAG,YAAY,GAAG,SAAS,CAAC;AAG5D,oBAAY,QAAQ;IAChB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB;;OAEG;IACH,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,UAAU,eAAe;CAC5B;AAED,oBAAY,mBAAmB;IAC3B,cAAc,sBAAsB;CACvC;AAED,MAAM,WAAW,qBAAqB;IAClC,SAAS,EAAE,QAAQ,CAAC;IACpB,KAAK,CAAC,EAAE;QACJ,IAAI,EAAE,mBAAmB,CAAC;QAC1B,OAAO,EAAE,MAAM,CAAC;KACnB,EAAE,CAAC;CACP;AAED,oBAAY,WAAW;IACnB,OAAO,aAAa;IACpB,SAAS,cAAc;CAC1B;AAED,oBAAY,iBAAiB;IACzB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,aAAa,mBAAmB;CACnC;AAED,MAAM,WAAW,WAAW;IAIxB,UAAU,EAAE,qBAAqB,GAAG,aAAa,GAAG,MAAM,CAAC;IAE3D,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"partials.js","names":["Visibility","exports","Preset","JoinRule","RestrictedAllowType","GuestAccess","HistoryVisibility"],"sources":["../../src/@types/partials.ts"],"sourcesContent":["/*\nCopyright 2021 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\nexport
|
|
1
|
+
{"version":3,"file":"partials.js","names":["Visibility","exports","Preset","JoinRule","RestrictedAllowType","GuestAccess","HistoryVisibility"],"sources":["../../src/@types/partials.ts"],"sourcesContent":["/*\nCopyright 2021 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\nexport enum Visibility {\n Public = \"public\",\n Private = \"private\",\n}\n\nexport enum Preset {\n PrivateChat = \"private_chat\",\n TrustedPrivateChat = \"trusted_private_chat\",\n PublicChat = \"public_chat\",\n}\n\nexport type ResizeMethod = \"crop\" | \"scale\";\n\nexport type IdServerUnbindResult = \"no-support\" | \"success\";\n\n// Knock and private are reserved keywords which are not yet implemented.\nexport enum JoinRule {\n Public = \"public\",\n Invite = \"invite\",\n /**\n * @deprecated Reserved keyword. Should not be used. Not yet implemented.\n */\n Private = \"private\",\n Knock = \"knock\",\n Restricted = \"restricted\",\n}\n\nexport enum RestrictedAllowType {\n RoomMembership = \"m.room_membership\",\n}\n\nexport interface IJoinRuleEventContent {\n join_rule: JoinRule; // eslint-disable-line camelcase\n allow?: {\n type: RestrictedAllowType;\n room_id: string; // eslint-disable-line camelcase\n }[];\n}\n\nexport enum GuestAccess {\n CanJoin = \"can_join\",\n Forbidden = \"forbidden\",\n}\n\nexport enum HistoryVisibility {\n Invited = \"invited\",\n Joined = \"joined\",\n Shared = \"shared\",\n WorldReadable = \"world_readable\",\n}\n\nexport interface IUsageLimit {\n // \"hs_disabled\" is NOT a specced string, but is used in Synapse\n // This is tracked over at https://github.com/matrix-org/synapse/issues/9237\n // eslint-disable-next-line camelcase\n limit_type: \"monthly_active_user\" | \"hs_disabled\" | string;\n // eslint-disable-next-line camelcase\n admin_contact?: string;\n}\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAdA,IAgBYA,UAAU,GAAAC,OAAA,CAAAD,UAAA,0BAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA;AAAA,IAKVE,MAAM,GAAAD,OAAA,CAAAC,MAAA,0BAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAANA,MAAM;EAAA,OAANA,MAAM;AAAA;AAUlB;AAAA,IACYC,QAAQ,GAAAF,OAAA,CAAAE,QAAA,0BAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAAA,OAARA,QAAQ;AAAA;AAAA,IAWRC,mBAAmB,GAAAH,OAAA,CAAAG,mBAAA,0BAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAA,OAAnBA,mBAAmB;AAAA;AAAA,IAYnBC,WAAW,GAAAJ,OAAA,CAAAI,WAAA,0BAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAA,OAAXA,WAAW;AAAA;AAAA,IAKXC,iBAAiB,GAAAL,OAAA,CAAAK,iBAAA,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA","ignoreList":[]}
|