Bruno Windels
433dc957ee
utility: turn observable value into observable map with one K,V pair
2022-04-26 14:26:56 +02:00
Bruno Windels
c7f7d24273
utility: observable value that emits when event is fired
2022-04-26 14:26:33 +02:00
Bruno Windels
330f234b5a
prefer undefined over null
2022-04-26 14:21:19 +02:00
Bruno Windels
3198ca6a92
expose remote mute settings
2022-04-26 14:20:44 +02:00
Bruno Windels
3767f6a420
put theme back to default
2022-04-26 14:19:13 +02:00
Bruno Windels
6e1174e03d
Merge branch 'master' into bwindels/calls-wip
2022-04-25 16:44:44 +02:00
Bruno Windels
fa34315210
undo refactoring typo from #723
2022-04-25 16:44:31 +02:00
Bruno Windels
14dbe340c7
Merge branch 'master' into bwindels/calls-wip
2022-04-25 14:17:21 +02:00
Bruno Windels
bec8cea583
fix for breaking in #725
2022-04-25 14:17:07 +02:00
Bruno Windels
a52423856d
template view: remove type duplication
2022-04-25 14:05:31 +02:00
Bruno Windels
22df062bbb
fix observable typescript errors
2022-04-25 14:05:02 +02:00
Bruno Windels
8b16782270
Merge branch 'master' into bwindels/calls-wip
2022-04-25 12:43:01 +02:00
Bruno Windels
3536d12680
Merge pull request #725 from vector-im/bwindels/templateview-ts
...
add typing for text bindings in template view
2022-04-25 12:42:37 +02:00
Bruno Windels
ab893f63b5
remove unneeded assignment
2022-04-25 12:40:25 +02:00
Bruno Windels
6c57c96cb9
add typing for text bindings in template view
2022-04-25 12:07:28 +02:00
Bruno Windels
39ecc6cc6d
WIP typing errors
2022-04-25 11:27:33 +02:00
Bruno Windels
cdb2a79b62
add muting again, separate from changing media
2022-04-22 14:48:14 +01:00
RMidhunSuresh
d8da128780
remove await
2022-04-22 14:34:16 +05:30
RMidhunSuresh
7a33c2e00d
await
2022-04-22 12:26:29 +05:30
RMidhunSuresh
5a94a2feba
Move handleConfigRequest inside handleRequest
2022-04-22 12:22:30 +05:30
RMidhunSuresh
c6691cf1cb
Simplify code
2022-04-22 12:10:25 +05:30
RMidhunSuresh
826835e518
No need to rewrite to index.html
2022-04-22 12:07:53 +05:30
Bruno Windels
ac60d1b61d
remove thick abstraction layer
...
instead just copy the DOM typing and make it part of the platform layer
2022-04-21 17:40:45 +02:00
RMidhunSuresh
b6e55ef59c
Remove comment
2022-04-21 14:46:55 +05:30
RMidhunSuresh
4f23944581
Use named param in Legacy Platform
2022-04-21 14:17:47 +05:30
RMidhunSuresh
1cdc76f5a4
Use undefine instead of null
2022-04-21 14:14:38 +05:30
Bruno Windels
baa884e9d0
Merge branch 'bwindels/calls-wip' into bwindels/calls-thinner-abstraction
2022-04-21 10:20:03 +02:00
Bruno Windels
10a6269147
always send new metadata after calling setMedia
2022-04-21 10:15:57 +02:00
Bruno Windels
55c6dcf613
don't re-clone streams when not needed
2022-04-21 10:11:24 +02:00
Bruno Windels
99769eb84e
implement basic renegotiation
2022-04-21 10:10:49 +02:00
Bruno Windels
82ffb557e5
update TODO
2022-04-21 10:09:31 +02:00
RMidhunSuresh
468b7e1595
Cache config.json
2022-04-21 12:52:42 +05:30
Robert Long
9f4743e1ce
Add eventTimestamp and deviceId for members for host election
2022-04-20 16:35:11 -07:00
Robert Long
fdd067038d
Merge branch 'bwindels/calls' into thirdroom/dev
2022-04-20 08:22:58 -07:00
Bruno Windels
d6b239e58f
ensure we always set the correct session id when joining
2022-04-20 16:42:20 +02:00
Bruno Windels
4a8af83c8f
WIP
2022-04-20 10:57:42 +02:00
Bruno Windels
c42292f1b0
more WIP
2022-04-20 10:57:07 +02:00
RMidhunSuresh
6cd3c8ee2b
Read config from URL
2022-04-20 12:42:07 +05:30
RMidhunSuresh
2cfcd4653f
Use named params
2022-04-20 12:00:33 +05:30
Robert Long
3ed9ae7098
Export CallIntent
2022-04-18 21:59:00 -07:00
Robert Long
0f340282e7
Add callType to createCall function parameters
2022-04-18 21:58:49 -07:00
Robert Long
85b77e277f
Add power_level_content_override to create room
2022-04-18 21:57:50 -07:00
Bruno Windels
382fba88bd
WIP for muting
2022-04-14 23:19:44 +02:00
Bruno Windels
468a0a9698
Merge branch 'master' into bwindels/calls
2022-04-14 13:48:34 +02:00
Bruno Windels
ea1c3a2b86
Merge remote-tracking branch 'origin/bwindels/calls' into bwindels/calls
2022-04-14 13:47:23 +02:00
Bruno Windels
021b8cdcdc
send hangup when leaving the call
...
but not when somebody else leaves the call through a member event
2022-04-14 13:45:21 +02:00
Bruno Windels
ff856d843c
ensure all member streams are cloned
...
so we can stop them without affecting the main one
also, only stop them when disconnecting from the member, rather then
when the peer call ends, as we might want to retry connecting to
the peer with the same stream.
2022-04-14 13:44:11 +02:00
Bruno Windels
78f352b839
avoid white ring around avatars in dark theme
2022-04-14 10:38:08 +02:00
Robert Long
55097e4154
Add intent to CallHandler
2022-04-13 13:08:47 -07:00
Robert Long
2d00d10161
Export LocalMedia
2022-04-13 13:08:33 -07:00
Bruno Windels
bc118b5c0b
WIP
2022-04-13 18:34:01 +02:00
RMidhunSuresh
2d8a3d9f9b
Fix SDK build
2022-04-13 17:12:38 +05:30
RMidhunSuresh
23aac5cb45
Make theme-name lowercase in manifest
2022-04-13 14:26:40 +05:30
RMidhunSuresh
f7bfab6e08
Add develop only script tag to index.html
2022-04-13 14:26:40 +05:30
RMidhunSuresh
5e7432b5de
Make badge font color always white
2022-04-13 14:26:40 +05:30
RMidhunSuresh
2de0450e97
Make colors better looking for dark variant
2022-04-13 14:26:40 +05:30
RMidhunSuresh
f26b51e5da
Change colors in more css files
2022-04-13 14:26:40 +05:30
RMidhunSuresh
bf74c3c67b
Add more colors to manifest
2022-04-13 14:26:40 +05:30
RMidhunSuresh
3d304be211
Convert theme.css
...
- Use color variables
- Use colorized icons
2022-04-13 14:26:40 +05:30
RMidhunSuresh
3e2a2b7942
Add theme manifest
2022-04-13 14:26:40 +05:30
RMidhunSuresh
061dc5f824
Replace icon colors with predefined color
2022-04-13 14:26:40 +05:30
Bruno Windels
2d4301fe5a
WIP: expose streams, senders and receivers
2022-04-12 21:20:24 +02:00
Bruno Windels
36dc463d23
update TODO
2022-04-12 21:20:15 +02:00
Bruno Windels
0e9307608b
update TODO
2022-04-12 14:02:57 +02:00
Bruno Windels
2635adb232
hardcode turn server for now
2022-04-12 14:02:38 +02:00
Bruno Windels
797cb23cc7
implement receiving hangup, and retry on connection failure
2022-04-12 14:02:13 +02:00
Bruno Windels
fd5b2aa7bb
only create datachannel on side that sends invite
2022-04-11 16:29:46 +02:00
Bruno Windels
d734a61447
Merge branch 'master' into bwindels/calls
2022-04-11 16:14:34 +02:00
Bruno Windels
a710f394eb
fix lint warning
2022-04-11 15:57:23 +02:00
Bruno Windels
517e796e90
remove obsolete import
2022-04-11 15:56:31 +02:00
Bruno Windels
5cacdcfee0
Add leave button to call view
2022-04-11 15:55:02 +02:00
Bruno Windels
c99fc2ad70
use deviceId getter in Member
2022-04-11 15:54:41 +02:00
Bruno Windels
e0efbaeb4e
show start time in console logger
2022-04-11 15:54:31 +02:00
Bruno Windels
387bad73b0
remove debug alert
2022-04-11 15:54:20 +02:00
Bruno Windels
9be64730b6
don't automatically join a call we create
2022-04-11 15:54:06 +02:00
Bruno Windels
b84c90891c
add very early datachannel support
2022-04-11 15:53:34 +02:00
Bruno Windels
c02e1de001
log when renegotiation would be triggered
2022-04-11 14:55:14 +02:00
Bruno Windels
8e82aad86b
fix logic error that made tracks disappear on the second track event
2022-04-11 14:55:08 +02:00
Bruno Windels
8153060831
only send to target device, not all user devices
2022-04-11 13:39:40 +02:00
Bruno Windels
302d4bc02d
use session id from member event, and also send it for other party
2022-04-11 13:39:18 +02:00
Bruno Windels
1b0abebe8f
remove unused constants
2022-04-11 12:37:05 +02:00
Bruno Windels
156f5b78bf
use session_id from member event to set dest_session_id
...
so our invite event isn't ignored by EC
2022-04-11 12:36:02 +02:00
Bruno Windels
c9bc080aef
Merge pull request #713 from vector-im/bwindels/fix-request-responsecode-error
...
fix error thrown during request when response code is not used
2022-04-08 15:26:12 +02:00
Bruno Windels
cf780ce259
also apply custom tiles in reply preview in composer
2022-04-08 15:16:22 +02:00
Bruno Windels
d21d10e4f2
pass in viewClassForTile from SessionView
...
so you can also use custom tiles when using the grid view
2022-04-08 15:15:21 +02:00
Bruno Windels
1fea14dd10
ensure other parameters don't get passed to TemplateView parent ctors
2022-04-08 15:04:38 +02:00
Bruno Windels
1f0cb542c8
pass viewClassForTile to tile views, so they can create reply view with correct subtile
2022-04-08 15:02:07 +02:00
Bruno Windels
57f50cc416
fix lint warnings
2022-04-08 15:01:27 +02:00
Bruno Windels
cda96a35ee
rename viewClassForEntry to viewClassForTile
2022-04-08 15:01:06 +02:00
Bruno Windels
ac4bb8ca15
export tile view & view models from SDK
2022-04-08 14:27:08 +02:00
Bruno Windels
a913671f0c
make tileClassForEntry optional, as otherwise it is a breaking change
2022-04-08 14:19:34 +02:00
Bruno Windels
5445db2a42
allow injecting the tilesCreator from the Root/Session/RoomViewModel
...
this changes the API slightly to be more future-proof,
as we'll expose it in the SDK now.
The function now returns a SimpleTile constructor, rather than an
instance. This allows us to test if an entry would render in the
timeline without creating a tile, which is something we might want in
the matrix layer later on.
The function is now called tileClassForEntry, analogue to what we
do in TimelineView.
2022-04-08 12:52:30 +02:00
Bruno Windels
220f35ae03
fix typescript error
2022-04-08 11:52:21 +02:00
Bruno Windels
6aa79cf6e2
allow to inject custom tile view creator fn into timeline view
2022-04-07 17:25:20 +02:00
Bruno Windels
8a06663023
load all call members for now at startup
...
later on we can be smarter and load then once you interact with the call
2022-04-07 16:55:41 +02:00
Bruno Windels
ad140d5af1
only show video feed when connected
2022-04-07 16:55:26 +02:00
Bruno Windels
a78ae52a54
to test with EC, also load prompt calls at startup
2022-04-07 16:55:10 +02:00
Bruno Windels
b133f58f7a
don't throw here for now, although it is probably a sign of why the tracks disappear
2022-04-07 16:54:47 +02:00
Bruno Windels
bade40acc6
log track length
2022-04-07 16:54:36 +02:00
Bruno Windels
1dc46127c3
no need to throw here
2022-04-07 16:54:24 +02:00
Bruno Windels
79411437cf
fix who initiates call, needs to be lower, not higher
2022-04-07 16:53:57 +02:00
Bruno Windels
6472800387
impl session id so EC does not ignore our messages
2022-04-07 16:53:37 +02:00
Bruno Windels
fe6e7b09b5
don't encrypt to_device messages for now
2022-04-07 16:50:16 +02:00
Bruno Windels
88482292e1
Merge pull request #700 from vector-im/ajbura-patch-2
...
Add observeNavigation in ViewModel
2022-04-07 14:08:40 +02:00
Bruno Windels
9755062563
fix error thrown during request when response code is not used
2022-04-07 10:35:00 +02:00
Bruno Windels
ad1cceac86
fix error thrown during request when response code is not used
2022-04-07 10:33:12 +02:00
Bruno Windels
2852834ce3
persist calls so they can be quickly loaded after a restart
...
also use event prefixes compatible with Element Call/MSC
2022-04-07 10:32:43 +02:00
Bruno Windels
42b470b06b
helper to print open items with console logger
2022-03-30 15:19:07 +02:00
Bruno Windels
d7360e7741
fix multiple device support
2022-03-30 15:18:46 +02:00
Bruno Windels
c54ffd4fc3
support multiple devices in call per user
2022-03-29 17:13:33 +02:00
Bruno Windels
ba45178e04
implement terminate and hangup (currently unused)
2022-03-29 12:01:47 +02:00
Bruno Windels
11a9177592
log state changes in PeerCall
2022-03-29 12:01:47 +02:00
Bruno Windels
4bf171def9
small fixes
2022-03-29 12:01:47 +02:00
Bruno Windels
eaf92b382b
add structured logging to call code
2022-03-29 12:01:47 +02:00
Bruno Windels
a0a07355d4
more improvements, make hangup work
2022-03-29 12:01:47 +02:00
Bruno Windels
0a37fd561e
just enough view code to join a call
2022-03-29 12:01:47 +02:00
Bruno Windels
9efd191f4e
some more fixes
2022-03-29 12:01:46 +02:00
Bruno Windels
cad2aa760d
some fixes
2022-03-29 12:01:46 +02:00
Bruno Windels
4be82cd472
WIP on UI
2022-03-29 12:01:46 +02:00
Bruno Windels
e760b8e556
basic view model setup
2022-03-29 12:01:46 +02:00
Bruno Windels
e482e3aeef
expose mediaDevices and webRTC from platform
2022-03-29 12:01:46 +02:00
Bruno Windels
6daae797e5
fix some ts/lint errors
2022-03-29 12:01:46 +02:00
Bruno Windels
07bc0a2376
move observable values each in their own file
2022-03-29 12:01:46 +02:00
Bruno Windels
1bccbbfa08
fix typescript errors
2022-03-29 12:01:46 +02:00
Bruno Windels
f674492685
remove local media promises (handle them outside of call code) + glare
2022-03-29 12:01:46 +02:00
Bruno Windels
3c160c8a37
handle remote ice candidates
2022-03-29 12:01:46 +02:00
Bruno Windels
b213a45c5c
WIP: work on group call state transitions
2022-03-29 12:01:46 +02:00
Bruno Windels
b2ac4bc291
WIP13
2022-03-29 12:01:46 +02:00
Bruno Windels
6da4a4209c
WIP: work on group calling code
2022-03-29 12:01:46 +02:00
Bruno Windels
4bedd4737b
WIP11
2022-03-29 12:01:46 +02:00
Bruno Windels
60da85d641
WIP10
2022-03-29 12:01:46 +02:00
Bruno Windels
6fe90e60db
WIP9
2022-03-29 12:01:46 +02:00
Bruno Windels
ecf7eab3ee
WIP8 - implement PeerCall.handleAnswer and other things
2022-03-29 12:01:46 +02:00
Bruno Windels
25b0148073
WIP8
2022-03-29 12:01:46 +02:00
Bruno Windels
98b77fc761
WIP7
2022-03-29 12:01:46 +02:00
Bruno Windels
179c7e74b5
WIP6
2022-03-29 12:01:46 +02:00
Bruno Windels
98e1dcf799
WIP5
2022-03-29 12:01:46 +02:00
Bruno Windels
e5f44aecfb
WIP4
2022-03-29 12:01:46 +02:00
Bruno Windels
468841ecea
WIP3
2022-03-29 12:01:46 +02:00
Bruno Windels
b12bc52c4a
WIP2
2022-03-29 12:01:46 +02:00
Bruno Windels
46ebd55092
WIP
2022-03-29 12:01:46 +02:00
Bruno Windels
ca211f929b
Merge pull request #702 from vector-im/bwindels/observablemapts
...
convert (Base)ObservableMap to typescript
2022-03-09 11:53:59 +01:00
Bruno Windels
6150e91c3f
fix type error again
2022-03-09 11:51:11 +01:00
Bruno Windels
762925d4a5
fix type error
2022-03-09 11:44:49 +01:00
Bruno Windels
21080d2110
fix tests
2022-03-09 11:41:26 +01:00
Bruno Windels
6d7c983e8e
convert (Base)ObservableMap to typescript
2022-03-09 11:33:49 +01:00
Ajay Bura
e07abfa02a
Add missing type
2022-03-07 11:33:51 +05:30
Bruno Windels
8b8233ff00
Merge pull request #691 from vector-im/madlittlemods/only-crypto-in-secure-context
...
Only initialize `Crypto` when olm is provided
2022-03-03 17:33:50 +01:00
Ajay Bura
61ce2f9e3d
Add observeNavigation in ViewModel
2022-03-03 15:36:25 +05:30
Eric Eastwood
2f4c639cef
Only initialize Crypto when olm is provided
...
See https://github.com/vector-im/hydrogen-web/pull/691#discussion_r816988082
2022-03-02 03:17:59 -06:00
Eric Eastwood
c09964dc30
Add data-event-id="$xxx"
attributes to timeline items for easy selecting in end-to-end tests ( #690 )
...
Split out from https://github.com/vector-im/hydrogen-web/pull/653
Example test assertions: db6d3797d7/test/e2e-tests.js (L248-L252)
```js
// Make sure the $abc event on the page has "foobarbaz" text in it
assert.match(
dom.document.querySelector(`[data-event-id="$abc"]`).outerHTML,
new RegExp(`.*foobarbaz.*`)
);
```
2022-03-01 18:36:14 -06:00
Bruno Windels
2e1283d199
Merge pull request #670 from vector-im/bwindels/ts-olm
...
Convert olm code to typescript
2022-03-01 18:53:22 +01:00
Bruno Windels
62ce111938
Merge pull request #692 from ryushar/ryushar/typescriptify
...
Convert domain/avatar.js and domain/LogoutViewModel.js to Typescript
2022-03-01 18:50:19 +01:00
Bruno Windels
770f7aea00
Merge pull request #689 from vector-im/madlittlemods/add-more-html-elements
...
Add more HTML form and SVG elements
2022-03-01 18:43:34 +01:00
Bruno Windels
b6d9993ed0
remove unused import
2022-03-01 17:08:49 +01:00
Bruno Windels
643ab1a5f3
cant export this for some reason
2022-03-01 15:48:42 +01:00
Bruno Windels
ee8e45926f
also export observable value classes
2022-03-01 15:42:04 +01:00
Bruno Windels
4c50dbf7ec
make SDK exports explicit
2022-03-01 15:41:44 +01:00
Ajay Bura
4a4856a29e
export module
2022-02-28 17:19:01 +05:30
Tushar
17acda7741
typescriptify domain/LogoutViewModel.js
2022-02-25 16:45:07 +05:30
Tushar
7055f02f16
typescriptify domain/avatar.js
2022-02-25 15:52:54 +05:30
Eric Eastwood
0935f2d23a
Only try to use window.crypto.subtle in secure contexts to avoid it throwing and stopping all JavaScript
...
Relevant error if you crypto is used in a non-secure context like a local LAN IP `http://192.168.1.151:3050/ `
```
Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'deriveBits')
at new Crypto
at new Platform
at mountHydrogen
```
For my use-case with https://github.com/matrix-org/matrix-public-archive , I don't need crypto/encryption at all.
Docs:
- https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts
- https://developer.mozilla.org/en-US/docs/Web/API/Crypto/subtle
- "Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers."
---
Related to https://github.com/vector-im/hydrogen-web/issues/579
2022-02-25 01:59:48 -06:00
Eric Eastwood
b993331e06
Add more HTML form and SVG elements
...
Split off from https://github.com/vector-im/hydrogen-web/pull/653
Personally using `select`, `option`, and `path` currently in https://github.com/matrix-org/matrix-public-archive
but added a few extra SVG elements that seemed common to me.
2022-02-25 01:40:52 -06:00
Bruno Windels
8adc5a9fae
these were public actually
2022-02-18 17:24:55 +01:00
Bruno Windels
3f9f0e98c7
remove unused olm property in SenderKeyDecryption
2022-02-18 17:21:27 +01:00
Bruno Windels
82299e5aea
Update src/matrix/e2ee/olm/Decryption.ts
...
Co-authored-by: R Midhun Suresh <hi@midhun.dev>
2022-02-18 17:18:33 +01:00
Bruno Windels
3330530f68
Update src/matrix/e2ee/DecryptionResult.ts
...
Co-authored-by: R Midhun Suresh <hi@midhun.dev>
2022-02-18 17:18:25 +01:00
Bruno Windels
620409b3f0
fixup: ctor argument order
...
as it was an object before, order didn't matter
2022-02-18 17:17:24 +01:00
Bruno Windels
78e0bb1ff0
replace isPreKeyMessage with const enum
2022-02-18 17:00:56 +01:00
Bruno Windels
347edb5988
remove unused storage property
2022-02-18 16:47:47 +01:00
Bruno Windels
49f6a2c2eb
Merge pull request #679 from vector-im/bwindels/fix-vm-ctor-default-options
...
always pass options to ViewModel constructor
2022-02-17 10:10:19 +01:00
Bruno Windels
2472f11ec0
export RoomStatus
2022-02-17 09:47:57 +01:00
Bruno Windels
7f1fed6f8c
always pass options to ViewModel constructor
2022-02-17 09:24:18 +01:00
Bruno Windels
d971fd1a47
Merge pull request #678 from vector-im/fix-viewmodel-error
...
Check options exist on emitChange
2022-02-17 09:08:54 +01:00
RMidhunSuresh
498a43327f
Check if options exist in emitChange
2022-02-17 11:30:04 +05:30
Bruno Windels
60f5da60bb
fix lint
2022-02-16 18:01:24 +01:00
Bruno Windels
e3e90ed167
convert olm/Encryption to TS
2022-02-16 18:00:13 +01:00
Bruno Windels
eb5ca200f2
missed rename here
2022-02-16 18:00:03 +01:00
RMidhunSuresh
7a9298328f
Return _type from getter
2022-02-16 14:37:18 +05:30
RMidhunSuresh
a76bcd1739
Changes in TokenAuth
2022-02-16 13:36:24 +05:30
RMidhunSuresh
60bc4450f3
Use type from server
2022-02-16 13:21:04 +05:30
RMidhunSuresh
ed151c8567
Return token stage from createRegistrationStage
2022-02-16 12:33:59 +05:30
RMidhunSuresh
c40801efd9
Implement the registration stage
2022-02-16 12:33:24 +05:30
Bruno Windels
a4fd1615dd
convert decryption
2022-02-15 18:21:29 +01:00
Bruno Windels
74c640f937
convert Session
2022-02-15 18:21:12 +01:00
Bruno Windels
7aeda70ff6
convert DecryptionResult
2022-02-15 18:20:14 +01:00
Bruno Windels
7179758c50
also here
2022-02-15 08:22:09 +01:00
Bruno Windels
1795f58ba5
rename imports
2022-02-14 17:53:59 +01:00
Bruno Windels
4d82dd22b6
convert ViewModel to typescript
2022-02-14 17:50:17 +01:00
Eric Eastwood
dfed04166e
Fix missing reply text when message body is parsed as HTML in [linkedom
]( https://github.com/WebReflection/linkedom ) (SSR).
...
- [`linkedom`](https://github.com/WebReflection/linkedom ) is being used https://github.com/matrix-org/matrix-public-archive to server-side render (SSR) Hydrogen (`hydrogen-view-sdk`)
- This is being fixed by using a explicit HTML wrapper boilerplate with `DOMParser` to get a matching result in the browser and `linkedom`.
Currently `parseHTML` is only used for HTML content bodies in events. Events with replies have content bodies that look like `<mx-reply>Hello</mx-reply> What's up` so they're parsed as HTML to strip out the `<mx-reply>` part.
Before | After
--- | ---
![](https://user-images.githubusercontent.com/558581/153692011-2f0e7114-fcb4-481f-b217-49f461b1740a.png ) | ![](https://user-images.githubusercontent.com/558581/153692016-52582fdb-abd9-439d-9dce-3f04da6959db.png )
Before:
```js
// Browser (Chrome, Firefox)
new DOMParser().parseFromString(`<div>foo</div>`, "text/html").body.outerHTML;
// '<body><div>foo</div></body>'
// `linkedom` ❌
new DOMParser().parseFromString(`<div>foo</div>`, "text/html").body.outerHTML;
// '<body></body>'
```
After (consistent matching output):
```js
// Browser (Chrome, Firefox)
new DOMParser().parseFromString(`<!DOCTYPE html><html><body><div>foo</div></body></html>`, "text/html").body.outerHTML;
// '<body><div>foo</div></body>'
// `linkedom`
new DOMParser().parseFromString(`<!DOCTYPE html><html><body><div>foo</div></body></html>`, "text/html").body.outerHTML;
// '<body><div>foo</div></body>'
```
`linkedom` goal is to be close to the current DOM standard, but [not too close](https://github.com/WebReflection/linkedom#faq ). Focused on the streamlined cases for server-side rendering (SSR).
Here is some context around getting `DOMParser` to interpret things better. The conclusion was to only support the explicit standard cases with a `<html><body></body></html>` specified instead of adding the magic HTML document creation and massaging that the browser does.
- https://github.com/WebReflection/linkedom/issues/106
- https://github.com/WebReflection/linkedom/pull/108
---
Part of https://github.com/vector-im/hydrogen-web/pull/653 to support server-side rendering Hydrogen for the [`matrix-public-archive`](https://github.com/matrix-org/matrix-public-archive ) project.
2022-02-11 20:10:46 -06:00
Bruno Windels
9685ef4dd3
dont log summary valued, as they can contain PII
2022-02-11 18:39:37 +01:00
Bruno Windels
ea8f3e5a6a
remove argument that is already bound in BaseRoom, making decryption fail
2022-02-11 17:14:56 +01:00
Bruno Windels
57b1542688
use private topic field as public one got removed as not needed in view
2022-02-11 09:37:56 +01:00
Bruno Windels
175f869c83
fix lint
2022-02-10 20:07:27 +01:00
Bruno Windels
a442b4b009
Merge branch 'master' into bwindels/create-room
2022-02-10 20:05:40 +01:00
Bruno Windels
d65b25f084
also adjust m.direct if the room has already been replaced
2022-02-10 20:00:01 +01:00
Bruno Windels
2765f48a64
create user id array in m.direct if it doesn't exist already
2022-02-10 19:59:44 +01:00
Bruno Windels
d2008a336b
fix lint errors
2022-02-10 19:54:47 +01:00
Bruno Windels
ff46d382ac
adjust m.direct when creating a DM
2022-02-10 19:54:15 +01:00
Bruno Windels
3adb2c3254
fix ts errors
2022-02-10 16:44:40 +01:00
Bruno Windels
8526461d3c
split up create code into separate files
2022-02-10 16:43:32 +01:00
Bruno Windels
15eecbb463
cleanup
2022-02-10 16:28:44 +01:00
Bruno Windels
30c8ea29b2
fix bug where the wrong left panel tile is removed when accepting invite
...
because when comparing a tile to itself it wasn't returned 0
2022-02-10 16:27:32 +01:00
Bruno Windels
b0d790543a
push to navigation in SessionViewModel rather than RVO
2022-02-10 14:57:48 +01:00
Bruno Windels
2c1b29e637
remove logging
2022-02-10 14:39:41 +01:00
Bruno Windels
75bbde598d
also consider rooms without a name and just you and the other a DM
...
as we don't process m.direct account data yet
2022-02-10 14:39:18 +01:00
Bruno Windels
955a6bd6f9
styling for button in member details to open DM
2022-02-10 14:38:12 +01:00
Bruno Windels
147810864f
add support to set alias and federation flag in create room
2022-02-10 14:09:18 +01:00
Bruno Windels
4c0167ed74
don't show spinner in left panel when room creation fails
2022-02-10 11:19:43 +01:00
Bruno Windels
024a6c06aa
handle offline error nicer
2022-02-10 11:11:15 +01:00
Bruno Windels
b5536830d0
improve RoomBeingCreatedView, allow removing the roombeingcreated
2022-02-10 11:07:29 +01:00
Bruno Windels
20493f9e87
cleanup
2022-02-10 11:07:13 +01:00
Bruno Windels
e8c20c28b2
allow passing label into LoadingView
...
also doesn't need to be a template view, as it doesn't have bindings
or event handlers
2022-02-10 11:06:44 +01:00
Bruno Windels
f12841b2d3
better error handling in RoomBeingCreated
2022-02-10 11:06:20 +01:00
Bruno Windels
d6d1af13d0
rename RoomBeingCreated.localId to id
2022-02-10 11:03:52 +01:00
Bruno Windels
bbb1683dbf
fixup: login view styling
2022-02-10 09:40:42 +01:00
Bruno Windels
fed42f13ad
textarea styling
2022-02-10 09:40:30 +01:00
Bruno Windels
5f6308e7c4
fix homeserver field style in login view
2022-02-10 09:40:19 +01:00
Bruno Windels
74f7879cb6
fix unrelated bug: invite sorting order wasn't stable in left panel
...
as the timestamp is the same when you receive the invite during your
first sync
2022-02-10 09:40:03 +01:00
Bruno Windels
5c085efc10
create room view and view model
2022-02-09 19:02:51 +01:00
Bruno Windels
a1e14c4eec
rename to not have conflict between method name and instance of CreateRoomViewModel
2022-02-09 19:02:18 +01:00
Bruno Windels
4b1be30dc0
improve form-row classes so they can work with create room form
2022-02-09 19:01:35 +01:00
Bruno Windels
8523f6feaf
setup navigation for create room form
2022-02-09 19:00:41 +01:00
Bruno Windels
83d2b58bad
add avatar support to creating room
2022-02-09 19:00:00 +01:00
Bruno Windels
afe8e17a6f
remove debugging code
2022-02-08 17:00:06 +01:00
Bruno Windels
743f2270e5
have a single tile view that supports all 3 view models
2022-02-08 16:22:44 +01:00
Bruno Windels
5325b0b466
cleanup logging
2022-02-08 14:58:29 +01:00
Bruno Windels
d7b024eac1
unrelated fix: encode user name in matrix.to link
2022-02-08 14:35:14 +01:00
Bruno Windels
45c8e3a793
mark room as DM based on synced state events,rather than just inviteData
...
as that does not work for rooms we create ourselves
2022-02-08 14:34:34 +01:00
Bruno Windels
e04463c143
WIP for finding DM room
2022-02-07 18:58:53 +01:00
Bruno Windels
26fa2a5d60
add option
2022-02-07 18:58:43 +01:00
Bruno Windels
e1fbd1242e
WIP 4
2022-02-07 16:30:44 +01:00
Bruno Windels
0bb3cfcfad
WIP3
2022-02-04 17:49:10 +01:00
Bruno Windels
3ff39a9549
Merge pull request #661 from vector-im/sdk-additions
...
Export more code from SDK
2022-02-04 17:43:23 +01:00
RMidhunSuresh
4a0db9f984
Add required exports
2022-02-04 18:28:17 +05:30
RMidhunSuresh
28931f4103
Use async/await
2022-02-04 17:48:42 +05:30
RMidhunSuresh
f7f32ac806
responseCodeReject may not exist
2022-02-04 17:39:52 +05:30
RMidhunSuresh
a163cee18d
Remove dead imports
2022-02-04 17:25:30 +05:30
RMidhunSuresh
0828ac12b1
Fix params
2022-02-04 17:25:15 +05:30
RMidhunSuresh
b59f916824
Merge branch 'registration' of github.com:vector-im/hydrogen-web into registration
2022-02-04 17:16:32 +05:30
R Midhun Suresh
2ac63e78ca
mark method as internal
...
Co-authored-by: Bruno Windels <bruno@windels.cloud>
2022-02-04 17:16:15 +05:30
RMidhunSuresh
028b96e4c5
Let type also be undefined
2022-02-04 17:11:33 +05:30
RMidhunSuresh
22d5505a2b
Create registration stage in Registration itself
2022-02-04 16:50:22 +05:30
RMidhunSuresh
e66549a067
Remove dead code
2022-02-04 16:40:49 +05:30
RMidhunSuresh
e8c480426a
Remove error code
2022-02-04 16:37:43 +05:30
RMidhunSuresh
891375a885
Rename allowerErrors -> allowedStatusCodes
2022-02-04 16:35:47 +05:30
RMidhunSuresh
32af7e6f09
Make more changes
...
- make setter a method
- lazily create promise
2022-02-04 16:23:39 +05:30
Bruno Windels
0b04612d6c
WIP2
2022-02-04 11:16:58 +01:00
RMidhunSuresh
3d8b9cce41
Fix responseCode in Request
2022-02-04 15:41:37 +05:30
Bruno Windels
bc09ede09f
WIP
2022-02-03 17:57:35 +01:00