aboutsummaryrefslogtreecommitdiff
path: root/examples/openInEditor.js
diff options
context:
space:
mode:
Diffstat (limited to 'examples/openInEditor.js')
-rw-r--r--examples/openInEditor.js23
1 files changed, 23 insertions, 0 deletions
diff --git a/examples/openInEditor.js b/examples/openInEditor.js
new file mode 100644
index 000000000..59282c098
--- /dev/null
+++ b/examples/openInEditor.js
@@ -0,0 +1,23 @@
+import { resolve } from "path";
+import { parse } from "querystring";
+
+export default {
+ fetch(req) {
+ if (req.url === "/favicon.ico")
+ return new Response("nooo dont open favicon in editor", { status: 404 });
+
+ var pathname = req.url.substring(1);
+ const q = pathname.indexOf("?");
+ var { editor } = parse(pathname.substring(q + 1)) || {};
+
+ if (q > 0) {
+ pathname = pathname.substring(0, q);
+ }
+
+ Bun.openInEditor(resolve(pathname), {
+ editor,
+ });
+
+ return new Response(`Opened ${req.url}`);
+ },
+};