import * as NodeServices from "@effect/platform-node/NodeServices";
import * as NodeCrypto from "@effect/platform-node/NodeCrypto";
import * as Effect from "effect/Effect";
import * as Layer from "effect/Layer";
import { driver } from "./src/server/driver.ts";
import { OnePasswordAccount } from "./src/shared/definition.ts";
const started = performance.now();
console.log("Production 1Password driver; real Node subprocesses and wall clock");
console.log("Fixture: inject fails after 40s; each read succeeds after 40s; two references");
const values = await Effect.runPromise(driver.read({account: OnePasswordAccount.make("synthetic.1password.com")}, ["op://Demo/First/key", "op://Demo/Second/key"]).pipe(Effect.provide(Layer.mergeAll(NodeServices.layer, NodeCrypto.layer))));
console.log(JSON.stringify({elapsedSeconds: +( (performance.now()-started)/1000).toFixed(3),readable:values.map(v=>v!==undefined)},null,2));
