Compare commits

..
5 changed files with 41 additions and 29 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
{
"monorepoCommit": "e33714a5ca38429d1bdb77a961a14461697944f5",
"monorepoCommit": "84b7713114320c0ff9301b8d124c1a97cf51d21f",
"sourcePath": "quixos-instance/packages/web-studio-canvas-runtime"
}
Generated
+18 -18
View File
@@ -21,19 +21,19 @@
"helpers": {
"flake": false,
"locked": {
"lastModified": 1790852599,
"narHash": "sha256-MdNtZpcsoguLPSCpAy9Naz6fkVPrftbZQbz1Aj7Zm9A=",
"ref": "refs/tags/quixos-reachability/91679e8cc82133093cb0b4f9e519cbb39a5bba4f",
"rev": "91679e8cc82133093cb0b4f9e519cbb39a5bba4f",
"revCount": 54,
"lastModified": 1794464476,
"narHash": "sha256-kHjq5txPHm6PC+Y177BmEqcqFsQo4K/WCLfKBEWq/U4=",
"ref": "refs/tags/quixos-reachability/386bdb9a96f5bc02e4fdeab836c2b146850f90fc",
"rev": "386bdb9a96f5bc02e4fdeab836c2b146850f90fc",
"revCount": 89,
"type": "git",
"url": "https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos-nix-helpers.git"
"url": "https://repos.quixos.org/quixos-toolchain/quixos-nix-helpers.git"
},
"original": {
"ref": "refs/tags/quixos-reachability/91679e8cc82133093cb0b4f9e519cbb39a5bba4f",
"rev": "91679e8cc82133093cb0b4f9e519cbb39a5bba4f",
"ref": "refs/tags/quixos-reachability/386bdb9a96f5bc02e4fdeab836c2b146850f90fc",
"rev": "386bdb9a96f5bc02e4fdeab836c2b146850f90fc",
"type": "git",
"url": "https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos-nix-helpers.git"
"url": "https://repos.quixos.org/quixos-toolchain/quixos-nix-helpers.git"
}
},
"nixpkgs": {
@@ -58,19 +58,19 @@
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1791261504,
"narHash": "sha256-QSk9DWR7n5KL6cMHzmSKKXNIyaFA0s8Nu+wXjhhlENI=",
"ref": "refs/tags/quixos-reachability/5b44c8154dc038efd87cf1cbdd2c00b66bfd4f87",
"rev": "5b44c8154dc038efd87cf1cbdd2c00b66bfd4f87",
"revCount": 184,
"lastModified": 1794474088,
"narHash": "sha256-8Ug1KQjRQN5yJ9GcuBjmTzKWWmjFpPA4xi1rl3F7Ctc=",
"ref": "refs/tags/quixos-reachability/023d73fae6a1ea4d4132ceac4d928ad219e9d6d9",
"rev": "023d73fae6a1ea4d4132ceac4d928ad219e9d6d9",
"revCount": 271,
"type": "git",
"url": "https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos-protocol.git"
"url": "https://repos.quixos.org/quixos-toolchain/quixos-protocol.git"
},
"original": {
"ref": "refs/tags/quixos-reachability/5b44c8154dc038efd87cf1cbdd2c00b66bfd4f87",
"rev": "5b44c8154dc038efd87cf1cbdd2c00b66bfd4f87",
"ref": "refs/tags/quixos-reachability/023d73fae6a1ea4d4132ceac4d928ad219e9d6d9",
"rev": "023d73fae6a1ea4d4132ceac4d928ad219e9d6d9",
"type": "git",
"url": "https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos-protocol.git"
"url": "https://repos.quixos.org/quixos-toolchain/quixos-protocol.git"
}
},
"root": {
+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://repos.quixos.org/quixos-toolchain/quixos-protocol.git?ref=refs/tags/quixos-reachability/023d73fae6a1ea4d4132ceac4d928ad219e9d6d9&rev=023d73fae6a1ea4d4132ceac4d928ad219e9d6d9";
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://repos.quixos.org/quixos-toolchain/quixos-nix-helpers.git?ref=refs/tags/quixos-reachability/386bdb9a96f5bc02e4fdeab836c2b146850f90fc&rev=386bdb9a96f5bc02e4fdeab836c2b146850f90fc";
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 "e33714a5ca38429d1bdb77a961a14461697944f5"; }
interface WebStudioFactory source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-factory.git"; commit "60b15590e6cc9e93baf52748a5ed8d643cca9b15"; }
interface WebStudioSearchable source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-searchable.git"; commit "ff9dde77937ddeeb59f0700e09bfc1eed0e511a4"; }
interface StandaloneView source { repository "https://repos.quixos.org/quixos-templates/interface-react-standalone-view.git"; commit "3b0be4ad469b41bb83a5f08493024ff2cbe1b569"; }
interface WebStudioCanvas source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-canvas.git"; commit "b0c81fc9bfac172b349084b3345d3a816dd9fd8f"; }
interface WebStudioCanvasPlacement source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-canvas-placement.git"; commit "11cd5e76172fd1e322baf393ebdcc44dd1db2797"; }
interface WebStudioPlaceable source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-placeable.git"; commit "d52427dd5e1e945cee8e7a8b9294b8aabc37c843"; }
quixos source { repository "https://gitea.internal.quixos.org/quixos/quixos.git"; commit "84b7713114320c0ff9301b8d124c1a97cf51d21f"; }
interface WebStudioFactory source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-factory.git"; commit "7ccbc4a547ebfd3fb319273d304d92605220c866"; }
interface WebStudioSearchable source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-searchable.git"; commit "b113ce114f419089671fd84f8a9bc07f8addc799"; }
interface StandaloneView source { repository "https://repos.quixos.org/quixos-templates/interface-react-standalone-view.git"; commit "47a84aa4d10fb1879a7d41020e69702d327f49a5"; }
interface WebStudioCanvas source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-canvas.git"; commit "c556c5acfed9fb2d8a96e7f872a5bd81700abfc0"; }
interface WebStudioCanvasPlacement source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-canvas-placement.git"; commit "aa1f8d31513b03a82b882b465c4da0a3c0d9244c"; }
interface WebStudioPlaceable source { repository "https://repos.quixos.org/quixos-templates/interface-web-studio-placeable.git"; commit "afe75ceca5f3d60cf7a11b2c3666e0839785380e"; }
}
+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));
};