From 5f4ccfa716f56a6943f597b80025b51103d535d3 Mon Sep 17 00:00:00 2001 From: Eneko Nieto Date: Mon, 18 Apr 2022 13:15:05 +0200 Subject: [PATCH] Initial commit --- .gitignore | 24 +++ favicon.svg | 15 ++ index.html | 16 ++ package.json | 17 ++ src/assets/config.json | 8 + src/assets/download-sandbox.html | 46 ++++++ src/assets/icon-maskable.png | Bin 0 -> 16599 bytes src/assets/icon-maskable.svg | 6 + src/assets/icon.png | Bin 0 -> 15862 bytes src/assets/icon.svg | 4 + src/assets/manifest.json | 12 ++ src/main.example.ts | 67 ++++++++ src/main.ts | 61 +++++++ src/style.css | 8 + src/typings.d.ts | 1 + src/vite-env.d.ts | 1 + tsconfig.json | 19 +++ yarn.lock | 262 +++++++++++++++++++++++++++++++ 18 files changed, 567 insertions(+) create mode 100644 .gitignore create mode 100644 favicon.svg create mode 100644 index.html create mode 100644 package.json create mode 100644 src/assets/config.json create mode 100644 src/assets/download-sandbox.html create mode 100644 src/assets/icon-maskable.png create mode 100644 src/assets/icon-maskable.svg create mode 100644 src/assets/icon.png create mode 100644 src/assets/icon.svg create mode 100644 src/assets/manifest.json create mode 100644 src/main.example.ts create mode 100644 src/main.ts create mode 100644 src/style.css create mode 100644 src/typings.d.ts create mode 100644 src/vite-env.d.ts create mode 100644 tsconfig.json create mode 100644 yarn.lock diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a547bf3 --- /dev/null +++ b/.gitignore @@ -0,0 +1,24 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? diff --git a/favicon.svg b/favicon.svg new file mode 100644 index 0000000..de4aedd --- /dev/null +++ b/favicon.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/index.html b/index.html new file mode 100644 index 0000000..0110c53 --- /dev/null +++ b/index.html @@ -0,0 +1,16 @@ + + + + + + + + Vite App + + + +
+ + + + \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 0000000..bfa86c8 --- /dev/null +++ b/package.json @@ -0,0 +1,17 @@ +{ + "name": "okupamicoche-hydrogen", + "private": true, + "version": "0.0.0", + "scripts": { + "dev": "vite", + "build": "tsc && vite build", + "preview": "vite preview" + }, + "devDependencies": { + "typescript": "^4.5.4", + "vite": "^2.9.2" + }, + "dependencies": { + "hydrogen-view-sdk": "^0.0.10" + } +} diff --git a/src/assets/config.json b/src/assets/config.json new file mode 100644 index 0000000..703ae1e --- /dev/null +++ b/src/assets/config.json @@ -0,0 +1,8 @@ +{ + "push": { + "appId": "io.element.hydrogen.web", + "gatewayUrl": "https://matrix.org", + "applicationServerKey": "BC-gpSdVHEXhvHSHS0AzzWrQoukv2BE7KzpoPO_FfPacqOo3l1pdqz7rSgmB04pZCWaHPz7XRe6fjLaC-WPDopM" + }, + "defaultHomeServer": "matrix.org" +} diff --git a/src/assets/download-sandbox.html b/src/assets/download-sandbox.html new file mode 100644 index 0000000..9666cb9 --- /dev/null +++ b/src/assets/download-sandbox.html @@ -0,0 +1,46 @@ + + + + + + + Download + + + diff --git a/src/assets/icon-maskable.png b/src/assets/icon-maskable.png new file mode 100644 index 0000000000000000000000000000000000000000..3d96b2d8238c8d524f82533586cb9f6f22c89e1d GIT binary patch literal 16599 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 T?96B2zL1K7rhJX8Mfm>!lo{VW literal 0 HcmV?d00001 diff --git a/src/assets/icon-maskable.svg b/src/assets/icon-maskable.svg new file mode 100644 index 0000000..15dd494 --- /dev/null +++ b/src/assets/icon-maskable.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/assets/icon.png b/src/assets/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..b6c70c00a4957f34bda8d23ef1dd258f074f8764 GIT binary patch literal 15862 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 literal 0 HcmV?d00001 diff --git a/src/assets/icon.svg b/src/assets/icon.svg new file mode 100644 index 0000000..134a3f7 --- /dev/null +++ b/src/assets/icon.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/assets/manifest.json b/src/assets/manifest.json new file mode 100644 index 0000000..e8d897b --- /dev/null +++ b/src/assets/manifest.json @@ -0,0 +1,12 @@ +{ + "name": "Hydrogen", + "short_name": "Hydrogen", + "display": "standalone", + "description": "Lightweight matrix client with legacy and mobile browser support", + "start_url": "../index.html", + "icons": [ + {"src": "icon.png", "sizes": "384x384", "type": "image/png"}, + {"src": "icon-maskable.png", "sizes": "384x384", "type": "image/png", "purpose": "maskable"} + ], + "theme_color": "#0DBD8B" +} diff --git a/src/main.example.ts b/src/main.example.ts new file mode 100644 index 0000000..bcc4996 --- /dev/null +++ b/src/main.example.ts @@ -0,0 +1,67 @@ +import olmJsPath from '@matrix-org/olm/olm.js?url'; +import olmWasmPath from '@matrix-org/olm/olm.wasm?url'; +import olmLegacyJsPath from '@matrix-org/olm/olm_legacy.js?url'; +import { + Client, createNavigation, + createRouter, LoadStatus, Platform, RoomView, RoomViewModel, viewClassForTile +} from 'hydrogen-view-sdk'; +import downloadSandboxPath from 'hydrogen-view-sdk/download-sandbox.html?url'; +import workerPath from 'hydrogen-view-sdk/main.js?url'; +import "hydrogen-view-sdk/style.css"; +const assetPaths = { + downloadSandbox: downloadSandboxPath, + worker: workerPath, + olm: { + wasm: olmWasmPath, + legacyBundle: olmLegacyJsPath, + wasmBundle: olmJsPath + } +}; +// import "hydrogen-view-sdk/theme-element-light.css"; +// OR import "hydrogen-view-sdk/theme-element-dark.css"; + +async function main() { + const app = document.querySelector('#app')! + const config = {}; + const platform = new Platform(app, assetPaths, config, { development: import.meta.env.DEV }); + const navigation = createNavigation(); + platform.setNavigation(navigation); + const urlRouter = createRouter({ + navigation: navigation, + history: platform.history + }); + urlRouter.attach(); + const client = new Client(platform); + + const loginOptions = await client.queryLogin("matrix.org").result; + client.startWithLogin(loginOptions.password("user", "pass")); + + await client.loadStatus.waitFor((status: string) => { + return status === LoadStatus.Ready || + status === LoadStatus.Error || + status === LoadStatus.LoginFailed; + }).promise; + + if (client.loginFailure) { + alert("login failed: " + client.loginFailure); + } else if (client.loadError) { + alert("load failed: " + client.loadError.message); + } else { + const { session } = client; + // looks for room corresponding to #element-dev:matrix.org, assuming it is already joined + const room = session.rooms.get("!bEWtlqtDwCLFIAKAcv:matrix.org"); + const vm = new RoomViewModel({ + room, + ownUserId: session.userId, + platform, + urlCreator: urlRouter, + navigation, + }); + await vm.load(); + const view = new RoomView(vm, viewClassForTile); + // const view = new TimelineView(vm.timelineViewModel, viewClassForTile); + app.appendChild(view.mount()); + } +} + +main(); \ No newline at end of file diff --git a/src/main.ts b/src/main.ts new file mode 100644 index 0000000..41b8374 --- /dev/null +++ b/src/main.ts @@ -0,0 +1,61 @@ +// import {RecordRequester, ReplayRequester} from "./matrix/net/request/replay"; +import olmJsPath from '@matrix-org/olm/olm.js?url'; +import olmWasmPath from '@matrix-org/olm/olm.wasm?url'; +import olmLegacyJsPath from '@matrix-org/olm/olm_legacy.js?url'; +import configJSON from "./assets/config.json?raw"; +import { + createNavigation, + createRouter, Platform, RootViewModel +} from 'hydrogen-view-sdk'; +import downloadSandboxPath from 'hydrogen-view-sdk/download-sandbox.html?url'; +import workerPath from 'hydrogen-view-sdk/main.js?url'; +const assetPaths = { + downloadSandbox: downloadSandboxPath, + worker: workerPath, + olm: { + wasm: olmWasmPath, + legacyBundle: olmLegacyJsPath, + wasmBundle: olmJsPath + } +}; +import "hydrogen-view-sdk/style.css"; + +// Don't use a default export here, as we use multiple entries during legacy build, +// which does not support default exports, +// see https://github.com/rollup/plugins/tree/master/packages/multi-entry +export async function main(platform: any) { + try { + // to replay: + // const fetchLog = await (await fetch("/fetchlogs/constrainterror.json")).json(); + // const replay = new ReplayRequester(fetchLog, {delay: false}); + // const request = replay.request; + + // to record: + // const recorder = new RecordRequester(createFetchRequest(clock.createTimeout)); + // const request = recorder.request; + // window.getBrawlFetchLog = () => recorder.log(); + const navigation = createNavigation(); + platform.setNavigation(navigation); + const urlRouter = createRouter({ navigation, history: platform.history }); + urlRouter.attach(); + const vm = new RootViewModel({ + platform, + // the only public interface of the router is to create urls, + // so we call it that in the view models + urlCreator: urlRouter, + navigation, + }); + await vm.load(); + platform.createAndMountRootView(vm); + } catch (err: any) { + console.error(`${err.message}:\n${err.stack}`); + } +} + +const platform = new Platform( + document.body, + assetPaths, + JSON.parse(configJSON), + { development: import.meta.env.DEV } +); +main(platform); diff --git a/src/style.css b/src/style.css new file mode 100644 index 0000000..852de7a --- /dev/null +++ b/src/style.css @@ -0,0 +1,8 @@ +#app { + font-family: Avenir, Helvetica, Arial, sans-serif; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + text-align: center; + color: #2c3e50; + margin-top: 60px; +} diff --git a/src/typings.d.ts b/src/typings.d.ts new file mode 100644 index 0000000..99a35ca --- /dev/null +++ b/src/typings.d.ts @@ -0,0 +1 @@ +declare module "hydrogen-view-sdk"; \ No newline at end of file diff --git a/src/vite-env.d.ts b/src/vite-env.d.ts new file mode 100644 index 0000000..11f02fe --- /dev/null +++ b/src/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..05f80b9 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,19 @@ +{ + "compilerOptions": { + "target": "ESNext", + "useDefineForClassFields": true, + "module": "ESNext", + "lib": ["ESNext", "DOM"], + "moduleResolution": "Node", + "strict": true, + "sourceMap": true, + "resolveJsonModule": true, + "isolatedModules": true, + "esModuleInterop": true, + "noEmit": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noImplicitReturns": true + }, + "include": ["src"] +} diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 0000000..0291607 --- /dev/null +++ b/yarn.lock @@ -0,0 +1,262 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@matrix-org/olm@https://gitlab.matrix.org/api/v4/projects/27/packages/npm/@matrix-org/olm/-/@matrix-org/olm-3.2.3.tgz": + version "3.2.3" + resolved "https://gitlab.matrix.org/api/v4/projects/27/packages/npm/@matrix-org/olm/-/@matrix-org/olm-3.2.3.tgz#cc332fdd25c08ef0e40f4d33fc3f822a0f98b6f4" + +another-json@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/another-json/-/another-json-0.2.0.tgz#b5f4019c973b6dd5c6506a2d93469cb6d32aeedc" + integrity sha1-tfQBnJc7bdXGUGotk0acttMq7tw= + +base64-arraybuffer@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.2.0.tgz#4b944fac0191aa5907afe2d8c999ccc57ce80f45" + integrity sha512-7emyCsu1/xiBXgQZrscw/8KPRT44I4Yq9Pe6EGs3aPRTsWuggML1/1DTuZUuIaJPIm1FTDUVXl4x/yW8s0kQDQ== + +core-js@^3.6.5: + version "3.22.0" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.22.0.tgz#b52007870c5e091517352e833b77f0b2d2b259f3" + integrity sha512-8h9jBweRjMiY+ORO7bdWSeWfHhLPO7whobj7Z2Bl0IDo00C228EdGgH7FE4jGumbEjzcFfkfW8bXgdkEDhnwHQ== + +dompurify@^2.3.0: + version "2.3.6" + resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-2.3.6.tgz#2e019d7d7617aacac07cbbe3d88ae3ad354cf875" + integrity sha512-OFP2u/3T1R5CEgWCEONuJ1a5+MFKnOYpkywpUSxv/dj1LeBT1erK+JwM7zK0ROy2BRhqVCf0LRw/kHqKuMkVGg== + +esbuild-android-64@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-android-64/-/esbuild-android-64-0.14.36.tgz#fc5f95ce78c8c3d790fa16bc71bd904f2bb42aa1" + integrity sha512-jwpBhF1jmo0tVCYC/ORzVN+hyVcNZUWuozGcLHfod0RJCedTDTvR4nwlTXdx1gtncDqjk33itjO+27OZHbiavw== + +esbuild-android-arm64@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.14.36.tgz#44356fbb9f8de82a5cdf11849e011dfb3ad0a8a8" + integrity sha512-/hYkyFe7x7Yapmfv4X/tBmyKnggUmdQmlvZ8ZlBnV4+PjisrEhAvC3yWpURuD9XoB8Wa1d5dGkTsF53pIvpjsg== + +esbuild-darwin-64@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-darwin-64/-/esbuild-darwin-64-0.14.36.tgz#3d9324b21489c70141665c2e740d6e84f16f725d" + integrity sha512-kkl6qmV0dTpyIMKagluzYqlc1vO0ecgpviK/7jwPbRDEv5fejRTaBBEE2KxEQbTHcLhiiDbhG7d5UybZWo/1zQ== + +esbuild-darwin-arm64@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.36.tgz#2a8040c2e465131e5281034f3c72405e643cb7b2" + integrity sha512-q8fY4r2Sx6P0Pr3VUm//eFYKVk07C5MHcEinU1BjyFnuYz4IxR/03uBbDwluR6ILIHnZTE7AkTUWIdidRi1Jjw== + +esbuild-freebsd-64@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.36.tgz#d82c387b4d01fe9e8631f97d41eb54f2dbeb68a3" + integrity sha512-Hn8AYuxXXRptybPqoMkga4HRFE7/XmhtlQjXFHoAIhKUPPMeJH35GYEUWGbjteai9FLFvBAjEAlwEtSGxnqWww== + +esbuild-freebsd-arm64@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.36.tgz#e8ce2e6c697da6c7ecd0cc0ac821d47c5ab68529" + integrity sha512-S3C0attylLLRiCcHiJd036eDEMOY32+h8P+jJ3kTcfhJANNjP0TNBNL30TZmEdOSx/820HJFgRrqpNAvTbjnDA== + +esbuild-linux-32@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-linux-32/-/esbuild-linux-32-0.14.36.tgz#a4a261e2af91986ea62451f2db712a556cb38a15" + integrity sha512-Eh9OkyTrEZn9WGO4xkI3OPPpUX7p/3QYvdG0lL4rfr73Ap2HAr6D9lP59VMF64Ex01LhHSXwIsFG/8AQjh6eNw== + +esbuild-linux-64@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-linux-64/-/esbuild-linux-64-0.14.36.tgz#4a9500f9197e2c8fcb884a511d2c9d4c2debde72" + integrity sha512-vFVFS5ve7PuwlfgoWNyRccGDi2QTNkQo/2k5U5ttVD0jRFaMlc8UQee708fOZA6zTCDy5RWsT5MJw3sl2X6KDg== + +esbuild-linux-arm64@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.36.tgz#c91c21e25b315464bd7da867365dd1dae14ca176" + integrity sha512-24Vq1M7FdpSmaTYuu1w0Hdhiqkbto1I5Pjyi+4Cdw5fJKGlwQuw+hWynTcRI/cOZxBcBpP21gND7W27gHAiftw== + +esbuild-linux-arm@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-linux-arm/-/esbuild-linux-arm-0.14.36.tgz#90e23bca2e6e549affbbe994f80ba3bb6c4d934a" + integrity sha512-NhgU4n+NCsYgt7Hy61PCquEz5aevI6VjQvxwBxtxrooXsxt5b2xtOUXYZe04JxqQo+XZk3d1gcr7pbV9MAQ/Lg== + +esbuild-linux-mips64le@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.36.tgz#40e11afb08353ff24709fc89e4db0f866bc131d2" + integrity sha512-hZUeTXvppJN+5rEz2EjsOFM9F1bZt7/d2FUM1lmQo//rXh1RTFYzhC0txn7WV0/jCC7SvrGRaRz0NMsRPf8SIA== + +esbuild-linux-ppc64le@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.36.tgz#9e8a588c513d06cc3859f9dcc52e5fdfce8a1a5e" + integrity sha512-1Bg3QgzZjO+QtPhP9VeIBhAduHEc2kzU43MzBnMwpLSZ890azr4/A9Dganun8nsqD/1TBcqhId0z4mFDO8FAvg== + +esbuild-linux-riscv64@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.36.tgz#e578c09b23b3b97652e60e3692bfda628b541f06" + integrity sha512-dOE5pt3cOdqEhaufDRzNCHf5BSwxgygVak9UR7PH7KPVHwSTDAZHDoEjblxLqjJYpc5XaU9+gKJ9F8mp9r5I4A== + +esbuild-linux-s390x@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.36.tgz#3c9dab40d0d69932ffded0fd7317bb403626c9bc" + integrity sha512-g4FMdh//BBGTfVHjF6MO7Cz8gqRoDPzXWxRvWkJoGroKA18G9m0wddvPbEqcQf5Tbt2vSc1CIgag7cXwTmoTXg== + +esbuild-netbsd-64@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.36.tgz#e27847f6d506218291619b8c1e121ecd97628494" + integrity sha512-UB2bVImxkWk4vjnP62ehFNZ73lQY1xcnL5ZNYF3x0AG+j8HgdkNF05v67YJdCIuUJpBuTyCK8LORCYo9onSW+A== + +esbuild-openbsd-64@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.36.tgz#c94c04c557fae516872a586eae67423da6d2fabb" + integrity sha512-NvGB2Chf8GxuleXRGk8e9zD3aSdRO5kLt9coTQbCg7WMGXeX471sBgh4kSg8pjx0yTXRt0MlrUDnjVYnetyivg== + +esbuild-sunos-64@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.14.36.tgz#9b79febc0df65a30f1c9bd63047d1675511bf99d" + integrity sha512-VkUZS5ftTSjhRjuRLp+v78auMO3PZBXu6xl4ajomGenEm2/rGuWlhFSjB7YbBNErOchj51Jb2OK8lKAo8qdmsQ== + +esbuild-windows-32@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-windows-32/-/esbuild-windows-32-0.14.36.tgz#910d11936c8d2122ffdd3275e5b28d8a4e1240ec" + integrity sha512-bIar+A6hdytJjZrDxfMBUSEHHLfx3ynoEZXx/39nxy86pX/w249WZm8Bm0dtOAByAf4Z6qV0LsnTIJHiIqbw0w== + +esbuild-windows-64@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-windows-64/-/esbuild-windows-64-0.14.36.tgz#21b4ce8b42a4efc63f4b58ec617f1302448aad26" + integrity sha512-+p4MuRZekVChAeueT1Y9LGkxrT5x7YYJxYE8ZOTcEfeUUN43vktSn6hUNsvxzzATrSgq5QqRdllkVBxWZg7KqQ== + +esbuild-windows-arm64@0.14.36: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.36.tgz#ba21546fecb7297667d0052d00150de22c044b24" + integrity sha512-fBB4WlDqV1m18EF/aheGYQkQZHfPHiHJSBYzXIo8yKehek+0BtBwo/4PNwKGJ5T0YK0oc8pBKjgwPbzSrPLb+Q== + +esbuild@^0.14.27: + version "0.14.36" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.14.36.tgz#0023a73eab57886ac5605df16ee421e471a971b3" + integrity sha512-HhFHPiRXGYOCRlrhpiVDYKcFJRdO0sBElZ668M4lh2ER0YgnkLxECuFe7uWCf23FrcLc59Pqr7dHkTqmRPDHmw== + optionalDependencies: + esbuild-android-64 "0.14.36" + esbuild-android-arm64 "0.14.36" + esbuild-darwin-64 "0.14.36" + esbuild-darwin-arm64 "0.14.36" + esbuild-freebsd-64 "0.14.36" + esbuild-freebsd-arm64 "0.14.36" + esbuild-linux-32 "0.14.36" + esbuild-linux-64 "0.14.36" + esbuild-linux-arm "0.14.36" + esbuild-linux-arm64 "0.14.36" + esbuild-linux-mips64le "0.14.36" + esbuild-linux-ppc64le "0.14.36" + esbuild-linux-riscv64 "0.14.36" + esbuild-linux-s390x "0.14.36" + esbuild-netbsd-64 "0.14.36" + esbuild-openbsd-64 "0.14.36" + esbuild-sunos-64 "0.14.36" + esbuild-windows-32 "0.14.36" + esbuild-windows-64 "0.14.36" + esbuild-windows-arm64 "0.14.36" + +fsevents@~2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" + integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== + +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== + +has@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== + dependencies: + function-bind "^1.1.1" + +hydrogen-view-sdk@^0.0.10: + version "0.0.10" + resolved "https://registry.yarnpkg.com/hydrogen-view-sdk/-/hydrogen-view-sdk-0.0.10.tgz#be0c729db67e1d1511b7fa32aa101fd889ec9cdc" + integrity sha512-7Ni7ui0mQzKbz6noGDyS1ceIKjU5sjoyX6+2a5dk0nXwttrQYXJbrgblCWC3nIljQPbW+09o+t9BFE0OuBHDPw== + dependencies: + "@matrix-org/olm" "https://gitlab.matrix.org/api/v4/projects/27/packages/npm/@matrix-org/olm/-/@matrix-org/olm-3.2.3.tgz" + another-json "^0.2.0" + base64-arraybuffer "^0.2.0" + dompurify "^2.3.0" + off-color "^2.0.0" + +is-core-module@^2.8.1: + version "2.8.1" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" + integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA== + dependencies: + has "^1.0.3" + +nanoid@^3.3.1: + version "3.3.2" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.2.tgz#c89622fafb4381cd221421c69ec58547a1eec557" + integrity sha512-CuHBogktKwpm5g2sRgv83jEy2ijFzBwMoYA60orPDR7ynsLijJDqgsi4RDGj3OJpy3Ieb+LYwiRmIOGyytgITA== + +off-color@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/off-color/-/off-color-2.0.0.tgz#ecf3bda52e9a78dde535db86361e048741a56631" + integrity sha512-JJ9ObbY2CzgT7F8PpdpHGNjQa7QbU8f4DkY3cCxYUq9NezYUMmL/oSofCc5MMaiUnNNBEFCc4w1unMA+R8syvw== + dependencies: + core-js "^3.6.5" + +path-parse@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +picocolors@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== + +postcss@^8.4.12: + version "8.4.12" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.12.tgz#1e7de78733b28970fa4743f7da6f3763648b1905" + integrity sha512-lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg== + dependencies: + nanoid "^3.3.1" + picocolors "^1.0.0" + source-map-js "^1.0.2" + +resolve@^1.22.0: + version "1.22.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" + integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== + dependencies: + is-core-module "^2.8.1" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +rollup@^2.59.0: + version "2.70.2" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.70.2.tgz#808d206a8851628a065097b7ba2053bd83ba0c0d" + integrity sha512-EitogNZnfku65I1DD5Mxe8JYRUCy0hkK5X84IlDtUs+O6JRMpRciXTzyCUuX11b5L5pvjH+OmFXiQ3XjabcXgg== + optionalDependencies: + fsevents "~2.3.2" + +source-map-js@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" + integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== + +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + +typescript@^4.5.4: + version "4.6.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.6.3.tgz#eefeafa6afdd31d725584c67a0eaba80f6fc6c6c" + integrity sha512-yNIatDa5iaofVozS/uQJEl3JRWLKKGJKh6Yaiv0GLGSuhpFJe7P3SbHZ8/yjAHRQwKRoA6YZqlfjXWmVzoVSMw== + +vite@^2.9.2: + version "2.9.5" + resolved "https://registry.yarnpkg.com/vite/-/vite-2.9.5.tgz#08ef37ac7a6d879c96f328b791732c9a00ea25ea" + integrity sha512-dvMN64X2YEQgSXF1lYabKXw3BbN6e+BL67+P3Vy4MacnY+UzT1AfkHiioFSi9+uiDUiaDy7Ax/LQqivk6orilg== + dependencies: + esbuild "^0.14.27" + postcss "^8.4.12" + resolve "^1.22.0" + rollup "^2.59.0" + optionalDependencies: + fsevents "~2.3.2"