Async Workflows and Source Panels
Async Result Panel
Replay an async function that awaits a typed result and updates local state.
Async Result Panel
async_result.ts
type ServiceResult = {
prepared: number;
score: number;
};
const fetched: number = ;
let prepared: number = 0;
let score: number = 0;
async function calculate(value: number): Promise<ServiceResult> {
prepared = value + 1;
const remote: number = await Promise.resolve(prepared + 9);
score = remote;
return { prepared, score };
}
async function main(): Promise<void> {
const result: ServiceResult = await calculate(fetched);
console.log(`fetched=${fetched}`);
console.log(`prepared=${result.prepared}`);
console.log(`score=${result.score}`);
}
main();
type ServiceResult = {
prepared: number;
score: number;
};
const fetched: number = ;
let prepared: number = 0;
let score: number = 0;
async function calculate(value: number): Promise<ServiceResult> {
prepared = value + 1;
const remote: number = await Promise.resolve(prepared + 9);
score = remote;
return { prepared, score };
}
async function main(): Promise<void> {
const result: ServiceResult = await calculate(fetched);
console.log(`fetched=${fetched}`);
console.log(`prepared=${result.prepared}`);
console.log(`score=${result.score}`);
}
main();
type ServiceResult = {
prepared: number;
score: number;
};
const fetched: number = ;
let prepared: number = 0;
let score: number = 0;
async function calculate(value: number): Promise<ServiceResult> {
prepared = value + 1;
const remote: number = await Promise.resolve(prepared + 9);
score = remote;
return { prepared, score };
}
async function main(): Promise<void> {
const result: ServiceResult = await calculate(fetched);
console.log(`fetched=${fetched}`);
console.log(`prepared=${result.prepared}`);
console.log(`score=${result.score}`);
}
main();
async result
An `async` function can keep replay visible by awaiting deterministic data and then assigning ordinary local values.