mirror of
https://github.com/oven-sh/bun
synced 2026-02-02 15:08:46 +00:00
* Improve support for \`debug-adapter-protocol\` * More improvements, fix formatting in debug console * Fix attaching * Prepare for source maps * Start of source map support, breakpoints work * Source map support * add some package.jsons * wip * Update package.json * More fixes * Make source maps safer if exception occurs * Check bun version if it fails * Fix console.log formatting * Fix source maps partly * More source map fixes * Prepare for extension * watch mode with dap * Improve preview code * Prepare for extension 2 --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
47 lines
703 B
TypeScript
47 lines
703 B
TypeScript
export default {
|
|
fetch(request: Request): Response {
|
|
const animal = getAnimal(request.url);
|
|
const voice = animal.talk();
|
|
return new Response(voice);
|
|
},
|
|
};
|
|
|
|
function getAnimal(query: string): Animal {
|
|
switch (query.split("/").pop()) {
|
|
case "dog":
|
|
return new Dog();
|
|
case "cat":
|
|
return new Cat();
|
|
}
|
|
return new Bird();
|
|
}
|
|
|
|
interface Animal {
|
|
readonly name: string;
|
|
talk(): string;
|
|
}
|
|
|
|
class Dog implements Animal {
|
|
name = "dog";
|
|
|
|
talk(): string {
|
|
return "woof";
|
|
}
|
|
}
|
|
|
|
class Cat implements Animal {
|
|
name = "cat";
|
|
|
|
talk(): string {
|
|
return "meow";
|
|
}
|
|
}
|
|
|
|
class Bird implements Animal {
|
|
name = "bird";
|
|
|
|
talk(): string {
|
|
return "chirp";
|
|
}
|
|
}
|