diff --git a/src/events2.json b/src/events2.json
new file mode 100644
index 0000000..5c09c7a
--- /dev/null
+++ b/src/events2.json
@@ -0,0 +1,186 @@
+[
+ {
+ "content": {
+ "body": "y",
+ "msgtype": "m.text",
+ "org.matrix.msc1767.text": "y"
+ },
+ "origin_server_ts": 1643751261463,
+ "sender": "@madlittlemods:matrix.org",
+ "type": "m.room.message",
+ "unsigned": {
+ "age": 28534993
+ },
+ "event_id": "$p2K-H4KLf9rFsijWtovL_8iBSA0RL6fsmXq1F-nvZZ0"
+ },
+ {
+ "content": {
+ "avatar_url": "mxc://matrix.org/djdngehyFuFlApXWpYotALoK",
+ "displayname": "erictroupetester",
+ "membership": "join"
+ },
+ "origin_server_ts": 1643751279424,
+ "sender": "@erictroupetester:matrix.org",
+ "state_key": "@erictroupetester:matrix.org",
+ "type": "m.room.member",
+ "unsigned": {
+ "age": 28517032
+ },
+ "event_id": "$Me_sKWilYAR3G4KifH1ytusbkCcZN955l63rrj-hj1E"
+ },
+ {
+ "content": {
+ "body": "o",
+ "msgtype": "m.text",
+ "org.matrix.msc1767.text": "o"
+ },
+ "origin_server_ts": 1643751285181,
+ "sender": "@erictroupetester:matrix.org",
+ "type": "m.room.message",
+ "unsigned": {
+ "age": 28511275
+ },
+ "event_id": "$dggun2-VMSDr9qT_oT_tl0w_5Xi68A7upvu996CSDjg"
+ },
+ {
+ "content": {
+ "body": "u",
+ "msgtype": "m.text",
+ "org.matrix.msc1767.text": "u"
+ },
+ "origin_server_ts": 1643751287241,
+ "sender": "@madlittlemods:matrix.org",
+ "type": "m.room.message",
+ "unsigned": {
+ "age": 28509215
+ },
+ "event_id": "$qK4Rp5t_ovTGstWu49Zw1FiplUBaFG36yenkShvqB0Q"
+ },
+ {
+ "content": {
+ "body": "> <@madlittlemods:matrix.org> u\n\nupdog",
+ "format": "org.matrix.custom.html",
+ "formatted_body": "In reply to @madlittlemods:matrix.org
u
updog",
+ "m.relates_to": {
+ "m.in_reply_to": {
+ "event_id": "$qK4Rp5t_ovTGstWu49Zw1FiplUBaFG36yenkShvqB0Q"
+ }
+ },
+ "msgtype": "m.text",
+ "org.matrix.msc1767.message": [
+ {
+ "body": "> <@madlittlemods:matrix.org> u\n\nupdog",
+ "mimetype": "text/plain"
+ },
+ {
+ "body": "In reply to @madlittlemods:matrix.org
u
updog",
+ "mimetype": "text/html"
+ }
+ ]
+ },
+ "origin_server_ts": 1643751346493,
+ "sender": "@erictroupetester:matrix.org",
+ "type": "m.room.message",
+ "unsigned": {
+ "age": 28449963
+ },
+ "event_id": "$FcdFuZLl_G7W8HaQW9INkSrZoP_ZcBKTaYqB0sG4Kns"
+ },
+ {
+ "content": {
+ "body": "😀 Skin friction is a component of drag, the force resisting the motion of a fluid across the surface of a body.",
+ "msgtype": "m.text",
+ "org.matrix.msc1767.text": "😀 Skin friction is a component of drag, the force resisting the motion of a fluid across the surface of a body."
+ },
+ "origin_server_ts": 1643779720223,
+ "sender": "@madlittlemods:matrix.org",
+ "type": "m.room.message",
+ "unsigned": {
+ "age": 76233
+ },
+ "event_id": "$50Yhop7d2WHs4IiBiA4YQsGbKqXuvwHeJFf5uZ8c0jY"
+ },
+ {
+ "content": {
+ "body": "Friction_between_surfaces.jpg",
+ "info": {
+ "h": 925,
+ "mimetype": "image/jpeg",
+ "size": 396644,
+ "thumbnail_info": {
+ "h": 390,
+ "mimetype": "image/jpeg",
+ "size": 126490,
+ "w": 800
+ },
+ "thumbnail_url": "mxc://matrix.org/zsAjnuqrbMuPlwhcHgjpSobL",
+ "w": 1894,
+ "xyz.amorgan.blurhash": "LkR3G|IU?w%NbwbIemae_NxuD$M{"
+ },
+ "msgtype": "m.image",
+ "url": "mxc://matrix.org/VmOplYoLzBxmHxrwgtugnHnS"
+ },
+ "origin_server_ts": 1643779746726,
+ "sender": "@erictroupetester:matrix.org",
+ "type": "m.room.message",
+ "unsigned": {
+ "age": 49730
+ },
+ "event_id": "$129QzqeZk0EbB4mTOFTIfnZpcihByAtCrFInuvyBNl8"
+ },
+ {
+ "content": {
+ "body": "^ Simulated blocks with fractal rough surfaces, exhibiting static frictional interactions",
+ "msgtype": "m.text",
+ "org.matrix.msc1767.text": "^ Simulated blocks with fractal rough surfaces, exhibiting static frictional interactions"
+ },
+ "origin_server_ts": 1643779756545,
+ "sender": "@erictroupetester:matrix.org",
+ "type": "m.room.message",
+ "unsigned": {
+ "age": 39911,
+ "m.relations": {
+ "m.annotation": {
+ "chunk": [
+ {
+ "type": "m.reaction",
+ "key": "😮",
+ "count": 1
+ }
+ ]
+ }
+ }
+ },
+ "event_id": "$QvdtjOIIbX8R1NlN10swcQJ5LoZFgbX_E7UmvYSah4k"
+ },
+ {
+ "content": {
+ "m.relates_to": {
+ "event_id": "$QvdtjOIIbX8R1NlN10swcQJ5LoZFgbX_E7UmvYSah4k",
+ "key": "😮",
+ "rel_type": "m.annotation"
+ }
+ },
+ "origin_server_ts": 1643779769772,
+ "sender": "@madlittlemods:matrix.org",
+ "type": "m.reaction",
+ "unsigned": {
+ "age": 26684
+ },
+ "event_id": "$k52WkLrC5T541zfVbofUdSDhmp8Zq2wnF8fh10x4dKI"
+ },
+ {
+ "content": {
+ "body": "The Greeks, including Aristotle, Vitruvius, and Pliny the Elder, were interested in the cause and mitigation of friction.",
+ "msgtype": "m.text",
+ "org.matrix.msc1767.text": "The Greeks, including Aristotle, Vitruvius, and Pliny the Elder, were interested in the cause and mitigation of friction."
+ },
+ "origin_server_ts": 1643779783542,
+ "sender": "@madlittlemods:matrix.org",
+ "type": "m.room.message",
+ "unsigned": {
+ "age": 12914
+ },
+ "event_id": "$ptJA2m9yHXrgx4Cl0mFUTVwiBy5gR25Z3oe0pdG33OU"
+ }
+]
diff --git a/src/main.ts b/src/main.ts
index 653bcd5..11c679f 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -77,6 +77,6 @@ async function main() {
}
-main();
+//main();
import './main2';
diff --git a/src/main2.ts b/src/main2.ts
index e60ddaa..84d9c85 100644
--- a/src/main2.ts
+++ b/src/main2.ts
@@ -2,6 +2,7 @@ import {
Platform,
createNavigation,
createRouter,
+ MediaRepository,
BaseObservableList,
FragmentIdComparer,
@@ -12,7 +13,7 @@ import {
TimelineView
} from "hydrogen-view-sdk";
-import events1 from './events1.json'
+import eventsJson from './events2.json'
class TilesCollection extends BaseObservableList {
constructor(tiles) {
@@ -74,12 +75,9 @@ async function asdf() {
platform,
roomVM: {
room: {
- // todo
- mediaRepository: {
- mxcUrlThumbnail: () => {
- return 'todo';
- }
- }
+ mediaRepository: new MediaRepository({
+ homeserver: 'https://matrix-client.matrix.org'
+ })
}
},
timeline: {
@@ -88,12 +86,20 @@ async function asdf() {
urlCreator: {
urlUntilSegment: () => {
return 'todo';
+ },
+ urlForSegments: () => {
+ return 'todo';
+ },
+ },
+ navigation: {
+ segment: () => {
+ return 'todo';
}
}
});
- console.log('events1', events1)
- const eventEntries = events1.map((eventJson) => {
+ console.log('eventsJson', eventsJson)
+ const eventEntries = eventsJson.map((eventJson) => {
return makeEventEntryFromEventJson(eventJson);
});
console.log('eventEntries', eventEntries)
@@ -135,8 +141,13 @@ async function asdf() {
return tilesCreator(entry);
})
.filter((tile) => !!tile);
+
+ // Make the lazy-load images appear
+ rawTiles.forEach((tile) => {
+ tile.notifyVisible();
+ })
- console.log('rawTiles', rawTiles)
+ console.log('rawTiles', rawTiles);
const tiles = new TilesCollection(rawTiles);
// const navigation = createNavigation();