Compare commits

..
5 changed files with 37 additions and 25 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
{
"monorepoCommit": "7fb6b0307ff26355d7ddbce5aceef8d71c87efa0",
"monorepoCommit": "58ec50b74876df5a243dbd7ebbe2d37cec087d4a",
"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 "7fb6b0307ff26355d7ddbce5aceef8d71c87efa0"; }
interface WebStudioFactory source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-factory.git"; commit "0481154547f27e628a3e6ee829d254d8568741a3"; }
interface WebStudioSearchable source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-searchable.git"; commit "1374d3554ccd1d65f29b1852c9e8635ac139282d"; }
interface StandaloneView source { repository "https://repos.quixos.org/quixos-templates/interface-react-standalone-view.git"; commit "b375239d06727ff238b386dbdc3c878cc0122948"; }
interface WebStudioCanvas source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-canvas.git"; commit "88c915f6f116bf2cb437e54e7f61e0c28f13fc2d"; }
interface WebStudioCanvasPlacement source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-canvas-placement.git"; commit "67140e72b7c05541af2b0da57937dcb74aa6b210"; }
interface WebStudioPlaceable source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-placeable.git"; commit "e7addef0880747326165456d95141dd27a5df35d"; }
quixos source { repository "https://gitea.internal.quixos.org/quixos/quixos.git"; commit "58ec50b74876df5a243dbd7ebbe2d37cec087d4a"; }
interface WebStudioFactory source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-factory.git"; commit "b8eb946dbfa243de48c694684f4eafaebed2592d"; }
interface WebStudioSearchable source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-searchable.git"; commit "7d71d6a1e0c8a8916ab791d1373f96e0135f9324"; }
interface StandaloneView source { repository "https://repos.quixos.org/quixos-templates/interface-react-standalone-view.git"; commit "537890c31430fc9783b0bd5ccaa46be9e13c2847"; }
interface WebStudioCanvas source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-canvas.git"; commit "34a82b0ebe7fcf17d17057d11970f4825036330f"; }
interface WebStudioCanvasPlacement source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-canvas-placement.git"; commit "855d6f04baf027e5c9143776b6ff69ddd27b71e8"; }
interface WebStudioPlaceable source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-placeable.git"; commit "d4cf19af6aae1fac243e37f6f2f28132647d55cd"; }
}
+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));
};