Compare commits

..
5 changed files with 37 additions and 25 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
{
"monorepoCommit": "be30143a326d5d7d7b0cbabea5bc5ac0301ef5b9",
"monorepoCommit": "16db111f3750c0a1baa581a692dd88543a2c39ef",
"sourcePath": "quixos-instance/packages/web-studio-canvas-runtime"
}
Generated
+14 -14
View File
@@ -21,17 +21,17 @@
"helpers": {
"flake": false,
"locked": {
"lastModified": 1790852599,
"narHash": "sha256-MdNtZpcsoguLPSCpAy9Naz6fkVPrftbZQbz1Aj7Zm9A=",
"ref": "refs/tags/quixos-reachability/91679e8cc82133093cb0b4f9e519cbb39a5bba4f",
"rev": "91679e8cc82133093cb0b4f9e519cbb39a5bba4f",
"revCount": 54,
"lastModified": 1791886789,
"narHash": "sha256-7YF98v0AcxD1qkAdS+nL/aDtmTvcRzld9CB9AxY0qaA=",
"ref": "refs/tags/quixos-reachability/5657043450c46fc84e1a6d38c2f8919ba1e9d10c",
"rev": "5657043450c46fc84e1a6d38c2f8919ba1e9d10c",
"revCount": 78,
"type": "git",
"url": "https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos-nix-helpers.git"
},
"original": {
"ref": "refs/tags/quixos-reachability/91679e8cc82133093cb0b4f9e519cbb39a5bba4f",
"rev": "91679e8cc82133093cb0b4f9e519cbb39a5bba4f",
"ref": "refs/tags/quixos-reachability/5657043450c46fc84e1a6d38c2f8919ba1e9d10c",
"rev": "5657043450c46fc84e1a6d38c2f8919ba1e9d10c",
"type": "git",
"url": "https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos-nix-helpers.git"
}
@@ -58,17 +58,17 @@
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1791261504,
"narHash": "sha256-QSk9DWR7n5KL6cMHzmSKKXNIyaFA0s8Nu+wXjhhlENI=",
"ref": "refs/tags/quixos-reachability/5b44c8154dc038efd87cf1cbdd2c00b66bfd4f87",
"rev": "5b44c8154dc038efd87cf1cbdd2c00b66bfd4f87",
"revCount": 184,
"lastModified": 1792824236,
"narHash": "sha256-2JwSmDiHkECzzlw440v5R80tLV+uCkJ16yYLsuL0Ro8=",
"ref": "refs/tags/quixos-reachability/81a56d7b16ab248c0187411ae5284b6e620ead57",
"rev": "81a56d7b16ab248c0187411ae5284b6e620ead57",
"revCount": 236,
"type": "git",
"url": "https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos-protocol.git"
},
"original": {
"ref": "refs/tags/quixos-reachability/5b44c8154dc038efd87cf1cbdd2c00b66bfd4f87",
"rev": "5b44c8154dc038efd87cf1cbdd2c00b66bfd4f87",
"ref": "refs/tags/quixos-reachability/81a56d7b16ab248c0187411ae5284b6e620ead57",
"rev": "81a56d7b16ab248c0187411ae5284b6e620ead57",
"type": "git",
"url": "https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos-protocol.git"
}
+2 -2
View File
@@ -1,9 +1,9 @@
{
inputs.protocol.url = "git+https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos-protocol.git?ref=refs/tags/quixos-reachability/5b44c8154dc038efd87cf1cbdd2c00b66bfd4f87&rev=5b44c8154dc038efd87cf1cbdd2c00b66bfd4f87";
inputs.protocol.url = "git+https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos-protocol.git?ref=refs/tags/quixos-reachability/81a56d7b16ab248c0187411ae5284b6e620ead57&rev=81a56d7b16ab248c0187411ae5284b6e620ead57";
inputs.nixpkgs.follows = "protocol/nixpkgs";
inputs.flake-utils.follows = "protocol/flake-utils";
inputs.helpers = {
url = "git+https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos-nix-helpers.git?ref=refs/tags/quixos-reachability/91679e8cc82133093cb0b4f9e519cbb39a5bba4f&rev=91679e8cc82133093cb0b4f9e519cbb39a5bba4f";
url = "git+https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos-nix-helpers.git?ref=refs/tags/quixos-reachability/5657043450c46fc84e1a6d38c2f8919ba1e9d10c&rev=5657043450c46fc84e1a6d38c2f8919ba1e9d10c";
flake = false;
};
outputs =
+7 -7
View File
@@ -1,9 +1,9 @@
quixos-lock version 1 {
quixos source { repository "https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos.git"; commit "be30143a326d5d7d7b0cbabea5bc5ac0301ef5b9"; }
interface WebStudioFactory source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-factory.git"; commit "b39116dd8aecd901940e9eee0686b2c228d26d8d"; }
interface WebStudioSearchable source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-searchable.git"; commit "f979824643973d945066f79addbc22cbea365d4e"; }
interface StandaloneView source { repository "https://repos.quixos.org/quixos-templates/interface-react-standalone-view.git"; commit "29a974e9db15387c9efc0f0fe64fec348db10344"; }
interface WebStudioCanvas source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-canvas.git"; commit "98a61b746983960e152f5ae3a29f95bdb7483d9a"; }
interface WebStudioCanvasPlacement source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-canvas-placement.git"; commit "6c40bcab64cecb7349f688800cea3db447a9dd85"; }
interface WebStudioPlaceable source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-placeable.git"; commit "0a095eaaed67f47185a86816be86471285c031a9"; }
quixos source { repository "https://gitea.internal.quixos.org/quixos/quixos.git"; commit "16db111f3750c0a1baa581a692dd88543a2c39ef"; }
interface WebStudioFactory source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-factory.git"; commit "72d6a304b25c76b9358b455517eecef29880f176"; }
interface WebStudioSearchable source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-searchable.git"; commit "ba8fbd56065e4fe3c4e7768a361fc373aecf09fd"; }
interface StandaloneView source { repository "https://repos.quixos.org/quixos-templates/interface-react-standalone-view.git"; commit "0a8a0b262a672fc507f67c9304dfc09abf5cf786"; }
interface WebStudioCanvas source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-canvas.git"; commit "ec92eab9499f7d3915ff2e3330802ef9c1cbb2a6"; }
interface WebStudioCanvasPlacement source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-canvas-placement.git"; commit "59eec6a4a8c60afcc2237af34596e63709d0e5a4"; }
interface WebStudioPlaceable source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-placeable.git"; commit "af7335fc7f07efda3f2ba7283426f7aebd922364"; }
}
+13 -1
View File
@@ -7,7 +7,19 @@ const size = (value: { readonly width: number; readonly height: number }) => {
if (!Number.isFinite(value.width) || !Number.isFinite(value.height) || value.width <= 0 || value.height <= 0)
throw new QxReject("INVALID_SIZE");
};
const canPresent = async ({ receiver, input, ports }: Contexts["canPresent"]) => {
const canPresent = async ({
receiver,
input,
ports,
}: {
readonly receiver: ExactReference;
readonly input: string;
readonly ports: {
readonly catalog: {
presentations(): Promise<ReadonlyArray<{ readonly id: string; readonly atoms: readonly string[] }>>;
};
};
}) => {
const presentations = await ports.catalog.presentations();
return presentations.some((p) => p.id === input && p.atoms.includes(receiver.expectation.id));
};