Upgrade to latest gatekeeper protocols

This commit is contained in:
Tony Garnock-Jones 2023-02-11 22:09:44 +01:00
parent f1ff7bb294
commit a3365a5766
4 changed files with 66 additions and 61 deletions

View File

@ -4,7 +4,7 @@
"description": "vr experiments 3",
"scripts": {
"prepare": "yarn regenerate && yarn compile && yarn rollup",
"regenerate": "rm -rf ./src/gen && preserves-schema-ts --module sturdy=@syndicate-lang/core:Schemas.sturdy --module noise=@syndicate-lang/core:Schemas.noise --xref node_modules/@syndicate-lang/core/protocols/schemas --output ./src/gen ./protocols/schemas",
"regenerate": "rm -rf ./src/gen && preserves-schema-ts --module sturdy=@syndicate-lang/core:Schemas.sturdy --module gatekeeper=@syndicate-lang/core:Schemas.gatekeeper --xref node_modules/@syndicate-lang/core/protocols/schemas --output ./src/gen ./protocols/schemas",
"regenerate:watch": "yarn regenerate --watch",
"compile": "syndicate-tsc",
"compile:watch": "syndicate-tsc -w --verbose --intermediate-directory src.ts",

View File

@ -3,7 +3,7 @@ version 1 .
Portal = <portal @name string @destination PortalDestination @position shapes.LiteralVector3> .
PortalDestination =
/ @local #!any
/ @remote noise.Route
/ @remote gatekeeper.Route
.
Gravity = <gravity @direction shapes.LiteralVector3> .

View File

@ -7,6 +7,8 @@ import * as Shapes from './gen/shapes.js';
import * as SceneProtocol from './gen/scene.js';
import { md5 } from './md5.js';
import { setupLog, log } from './log.js';
import G = Schemas.gatekeeper;
import T = Schemas.transportAddress;
import {
AbstractMesh,
@ -68,7 +70,7 @@ function spriteMain(env: Environment, runningEngine: RunningEngine, rootMesh: Me
}
async function enterScene(
routeField: Dataflow.Field<wsRelay.Noise.Route<Ref>>,
routeField: Dataflow.Field<G.Route<Ref>>,
id: string,
runningEngine: RunningEngine,
ds: Ref,
@ -228,7 +230,7 @@ function bootApp(ds: Ref, runningEngine: RunningEngine) {
const id = uuid();
const url = wsurl();
const relayAddr = wsRelay.RelayAddress(Schemas.transportAddress.WebSocket(url));
const relayAddr = T.WebSocket(url);
field email: string = localStorage.getItem('userEmail') ?? id;
const outerFacet = Turn.activeFacet;
@ -239,23 +241,26 @@ function bootApp(ds: Ref, runningEngine: RunningEngine) {
localStorage.setItem('userEmail', emailInput.value);
}));
field route: wsRelay.Noise.Route<Ref> = wsRelay.Noise.Route<Ref>({
field route: G.Route<Ref> = G.Route<Ref>({
"transports": [fromJS(relayAddr)],
"steps": [],
"pathSteps": [],
});
during wsRelay.Resolved({
during G.ResolvePath({
"route": route.value,
"addr": $addr: wsRelay.RelayAddress,
"resolved": $remoteDs_e: Embedded,
"control": $control_e: Embedded,
"resolved": G.Resolved.accepted($remoteDs_e: Embedded),
}) => {
const control = control_e.embeddedValue;
const remoteDs = remoteDs_e.embeddedValue;
setupLog(remoteDs, id, Symbol.for('vr-demo'));
log('connected');
on message wakeDetector.WakeEvent() => {
send message wsRelay.ForceRelayDisconnect(addr);
at control {
send message G.ForceDisconnect();
}
}
react {

102
yarn.lock
View File

@ -3,21 +3,21 @@
"@babylonjs/core@5":
version "5.45.0"
resolved "https://registry.yarnpkg.com/@babylonjs/core/-/core-5.45.0.tgz#b2d1c84429f7eab77410b941ef53aee781831f16"
integrity sha512-AXC+0gfEznHhaJHt6cKpX/xWowvnH4Z/kNNgs3DiBf5GzdH4+4ZqN2AfV6l5lXi4v4pV5slbM004xysMGJrXyw==
version "5.46.0"
resolved "https://registry.yarnpkg.com/@babylonjs/core/-/core-5.46.0.tgz#e6d84906025a6f6f0b805a0f1fb382a36801aef1"
integrity sha512-6PCaBByAxeXjM+lX14K2Do1pVbsOeQPA4TCd/Ve+1Gcr2CFKsfPb7c7mtFB90fTlWkN6+tE3zRDeu1ZdvSVKPQ==
"@preserves/core@*", "@preserves/core@>=0.20.2", "@preserves/core@^0.20.5":
version "0.20.5"
resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.20.5.tgz#3b34693b1f5aff659639690725a703a95689f822"
integrity sha512-hnywtmY30swKSuHix3MbEoheyCh6plCERzmhnCQllrkhdT0hFm66iSr2PVjNsXAUNIwd3Rh3Vu2btgdjMK+Q9Q==
"@preserves/core@*", "@preserves/core@>=0.20.2", "@preserves/core@^0.20.6":
version "0.20.6"
resolved "https://registry.yarnpkg.com/@preserves/core/-/core-0.20.6.tgz#700feffdb25e21b2c817ab8816aefc6620534881"
integrity sha512-SC7NTpkw4Aajs57A7rgRtL8xLAktFFDDQ0OvAKtdc59oDNw606uu2OD6gVTm+R6oLqOCRDre47ndJNEaEHESIA==
"@preserves/schema@*", "@preserves/schema@>=0.21.2":
version "0.21.7"
resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.21.7.tgz#09e388b8c582c3dc95018ebdfe990381dddabfa8"
integrity sha512-q2gncEOOY3qqs+i+Op5yZx89cckqN601vbEcBDfnQge5PB9HrOrfMk68Wq4w/rpdQpRyVqWhZNxLlKsANjgoOw==
"@preserves/schema@*", "@preserves/schema@>=0.21.10":
version "0.21.10"
resolved "https://registry.yarnpkg.com/@preserves/schema/-/schema-0.21.10.tgz#b3a4f071660df65b3c287c58df0ed6fe37f3c301"
integrity sha512-j2duJsLku1P2ASqzdsMR4hKYeca6xNth4mBgfg65ZAmgxHRhVI/IusXasGESCiGEj2GI0SkNQcNPhqctAtx6FQ==
dependencies:
"@preserves/core" "^0.20.5"
"@preserves/core" "^0.20.6"
"@types/glob" "^7.1"
"@types/minimatch" "^3.0"
chalk "^4.1"
@ -56,59 +56,59 @@
estree-walker "^2.0.2"
picomatch "^2.3.1"
"@syndicate-lang/compiler@^0.11.6":
version "0.11.6"
resolved "https://registry.yarnpkg.com/@syndicate-lang/compiler/-/compiler-0.11.6.tgz#98f6016da98033ae7dac9daa0d601f625ea371a1"
integrity sha512-eIz9jqNz4lzf5s05ngefeX+NMS0c63ysL60rEB9bg+9IpWXYTBlZs0xQoy/3lw2igKZerUlOlOeu2kSkszBNDw==
"@syndicate-lang/compiler@^0.13.1":
version "0.13.1"
resolved "https://registry.yarnpkg.com/@syndicate-lang/compiler/-/compiler-0.13.1.tgz#68dccbe1ae7cfddac4a6905d7c8edefaac12deac"
integrity sha512-XGA5OlszRWC3esDxkUq1gPW6qvcTH5F9aZy3//tVAYwS+Qy7M9O1MVkBKJCXhws7fJIcIRKWv1G5s6iT/LbLAA==
"@syndicate-lang/core@*", "@syndicate-lang/core@^0.12.0":
version "0.12.0"
resolved "https://registry.yarnpkg.com/@syndicate-lang/core/-/core-0.12.0.tgz#dc30759789e322f1a4235ab7f7b0c6905e540a50"
integrity sha512-QwgQ+nh2krHsjVMPcSYL116bg/FgkJdMzlrd973TG2a+0PiapwevYetO72yK2Bw0PfRb0pjU2WN4UkwBYNvRJQ==
"@syndicate-lang/core@*", "@syndicate-lang/core@^0.14.1":
version "0.14.1"
resolved "https://registry.yarnpkg.com/@syndicate-lang/core/-/core-0.14.1.tgz#58277a9f8cb441622fec2506c0a1f2011c1070f1"
integrity sha512-Nu6JH82ylaXNOMQZSv5QnNaegOnEraiZjfrl44STnxGtjELZbvbfjqf8YvyCM0Nz6Q65Ow/mfjM+yhxGrgzfmg==
dependencies:
"@preserves/core" ">=0.20.2"
"@preserves/schema" ">=0.21.2"
"@preserves/schema" ">=0.21.10"
salty-crypto "0.3.1"
"@syndicate-lang/html@*":
version "0.11.14"
resolved "https://registry.yarnpkg.com/@syndicate-lang/html/-/html-0.11.14.tgz#c81ddbe5ad5c768fedac15cb850f49e78c6e0c24"
integrity sha512-CcBzG/AKXwfvZbl0Py6l3bmQg9bd3EXUaKrluxkBdeBVBV1aZBVrk+//GfEtiFT8/KbQcOa6mnmaqPpQ/eft2g==
version "0.14.1"
resolved "https://registry.yarnpkg.com/@syndicate-lang/html/-/html-0.14.1.tgz#d6865237ed4baf38e9288f5fe4d99c950a4cb823"
integrity sha512-Q50+PPzxh3fiqWfuHVZPrbcxYPJciCRdOJpB3xwRUf5OvXRgQ+8neIYH5VA15cQkB8p+q3of8CkAX5Htd7h5ZQ==
dependencies:
"@syndicate-lang/core" "^0.12.0"
"@syndicate-lang/core" "^0.14.1"
"@syndicate-lang/timer@*":
version "0.11.12"
resolved "https://registry.yarnpkg.com/@syndicate-lang/timer/-/timer-0.11.12.tgz#0dd2ddca9e254b79242a9b491019fb63c713c225"
integrity sha512-VpqKLf3kheKsdhNXcUJob/sQf0pWLdMNPUJ7HhWI/aieVNMb3FEGfgvnsiEpECQATO3/9QeF2fVwS4dygOqHmg==
version "0.14.1"
resolved "https://registry.yarnpkg.com/@syndicate-lang/timer/-/timer-0.14.1.tgz#3ca94f42a6d9556acc9adeebb84ea3eefd401ff1"
integrity sha512-bd8INj9j3jjFdBfgPK5sQvuxbKAwMrQin4ykya91ponzicD9IjFkYYeYH/FbFzMJCpK51N4FwATy8Iqh1HzMjA==
dependencies:
"@syndicate-lang/core" "^0.12.0"
"@syndicate-lang/core" "^0.14.1"
"@syndicate-lang/ts-plugin@*":
version "0.11.12"
resolved "https://registry.yarnpkg.com/@syndicate-lang/ts-plugin/-/ts-plugin-0.11.12.tgz#2c42b0ee9dfa36e048dc6cf92c0ca81e5bfc86c1"
integrity sha512-fdbUL3OgWvK6SzpTqLVSLxzI855/Bb5WdPE6PFwQp/OKHiU1e8sZ1OGzjMs6t886JA7xForX/q/xM2vpA4Z3RA==
version "0.14.1"
resolved "https://registry.yarnpkg.com/@syndicate-lang/ts-plugin/-/ts-plugin-0.14.1.tgz#9fc2b78fb771e4db2c1c0ee02ef6c419a59666b7"
integrity sha512-7Ebov50uYc96oRpNOMIJn7jOPGONdT7p1pHdty1Xj1wXCPFbo7NUGrgs6ZghJmhq1WzsCQ3L0VlUT4Rbbx2Rzg==
dependencies:
"@syndicate-lang/compiler" "^0.11.6"
"@syndicate-lang/core" "^0.12.0"
"@syndicate-lang/compiler" "^0.13.1"
"@syndicate-lang/core" "^0.14.1"
"@syndicate-lang/tsc@*":
version "0.11.12"
resolved "https://registry.yarnpkg.com/@syndicate-lang/tsc/-/tsc-0.11.12.tgz#125e2af9e2d529587ad28e1d168f57960d6a0a35"
integrity sha512-ICHsGamBdanY13C9PwWgfgwzOgi3Vt9fOAtmTRX1E2TR1dAC4AbeGPFelgjVYASo3HXzuwliznxdh8MxlDY6fg==
version "0.14.1"
resolved "https://registry.yarnpkg.com/@syndicate-lang/tsc/-/tsc-0.14.1.tgz#a4aa1867d0517f19afd3da1576411ba18bf153dd"
integrity sha512-Gi+5r9WBxrL/5B3XjtAInU0Ggc0N1tgQQTLA3ZyjcouCg3F0KOKFXJqzM6BdGZQoGJJe/pdqMmr85OUxJdOdrQ==
dependencies:
"@syndicate-lang/compiler" "^0.11.6"
"@syndicate-lang/core" "^0.12.0"
"@syndicate-lang/compiler" "^0.13.1"
"@syndicate-lang/core" "^0.14.1"
glob "^7.1.6"
yargs "^16.2.0"
"@syndicate-lang/ws-relay@*":
version "0.12.3"
resolved "https://registry.yarnpkg.com/@syndicate-lang/ws-relay/-/ws-relay-0.12.3.tgz#9a392ab60ebbf3e67c4c1e2256863d97092862ea"
integrity sha512-AKMAJeyTA4vOw2rUQuYGZG8+4OTJmBYOCHdLu7rlZrbZOtemDEjEYPnb/3grDJ98PlwaLOw61U7rI0AdjxjA1w==
version "0.14.1"
resolved "https://registry.yarnpkg.com/@syndicate-lang/ws-relay/-/ws-relay-0.14.1.tgz#c4916dc00f7fd1178c5a15ec11d51b5283a54b07"
integrity sha512-ogyHIh6lXWjjQqs+wsAhM/g3mwUqf4/2RXxlZPhKgoBVXAwEP8BDHMI/iB4sGIeisY97vK2t+GT+750tUt5gug==
dependencies:
"@preserves/core" ">=0.20.2"
"@preserves/schema" ">=0.21.2"
"@syndicate-lang/core" "^0.12.0"
"@syndicate-lang/core" "^0.14.1"
salty-crypto "0.3"
"@types/estree@0.0.39":
@ -140,9 +140,9 @@
integrity sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==
"@types/node@*":
version "18.11.18"
resolved "https://registry.yarnpkg.com/@types/node/-/node-18.11.18.tgz#8dfb97f0da23c2293e554c5a50d61ef134d7697f"
integrity sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA==
version "18.13.0"
resolved "https://registry.yarnpkg.com/@types/node/-/node-18.13.0.tgz#0400d1e6ce87e9d3032c19eb6c58205b0d3f7850"
integrity sha512-gC3TazRzGoOnoKAhUx+Q0t8S9Tzs74z7m0ipwGpSqQrleP14hKxP4/JUeEQcD3W1/aIpnWl8pHowI7WokuZpXg==
"@types/resolve@1.20.2":
version "1.20.2"
@ -477,10 +477,10 @@ rollup@3.8:
optionalDependencies:
fsevents "~2.3.2"
salty-crypto@0.3:
version "0.3.0"
resolved "https://registry.yarnpkg.com/salty-crypto/-/salty-crypto-0.3.0.tgz#66d25ec5b58c3b04c7ac1dd0ce65c6e320de75e4"
integrity sha512-bfreqJ7xBF+tO/F/NXW9eIMoAfPLmo69XrDYdhmKKhXF95bzkRnG2AHbj564ZyJRHiYyV1MM9qcf7FfCFvhISQ==
salty-crypto@0.3, salty-crypto@0.3.1:
version "0.3.1"
resolved "https://registry.yarnpkg.com/salty-crypto/-/salty-crypto-0.3.1.tgz#1242cd948d8152aff104d0945980996b1602ba0e"
integrity sha512-dCbF8/UzMV8oXPmMCHWzSp7u8G6NA+pHbaFBVqVgLVBiyxuwVn9iPbyt9WXT0EoXfL9sKt7U1mV+bgsGw5cV7A==
source-map-resolve@^0.6.0:
version "0.6.0"