Fix standalone candidate binding options and test real React props contracts

This commit is contained in:
Timothy J. Aveni
2026-09-14 22:11:36 -07:00
parent 6c2f030243
commit a84c985256
+3 -1
View File
@@ -63,6 +63,8 @@ let
in { packageRevisionId = candidate.revision.revisionId; artifactPath = artifact; };
checks = if contractOnly then [ ] else map checkPackage (builtins.filter (node: node.kind == "package") nodes);
manifest = pkgs.writeText "qx-candidate-checks.json" (builtins.toJSON checks);
bindingOptions = pkgs.writeText "qx-typescript-options.json" (builtins.toJSON
((builtins.fromJSON (builtins.readFile "${root.directory}/quixos.check.json")).options or { }));
in pkgs.runCommand (if contractOnly then "qx-contract" else "qx-checked-candidate") { } ''
mkdir -p "$out"
cp ${contract}/candidate.json "$out/candidate.json"
@@ -72,6 +74,6 @@ in pkgs.runCommand (if contractOnly then "qx-contract" else "qx-checked-candidat
${pkgs.lib.optionalString (kind == "package") ''
${protocol}/bin/quixos-codegen-ts ${contract}/bindings.json \
${pkgs.lib.escapeShellArg (builtins.fromJSON (builtins.readFile "${contract}/candidate.json")).revision.revisionId} \
"$out/bindings.ts" ${pkgs.lib.optionalString (builtins.pathExists (root.directory + "/bindings.json")) (toString root.directory + "/bindings.json")}
"$out/bindings.ts" ${bindingOptions}
''}
''