mirror of
https://github.com/lightpanda-io/browser.git
synced 2026-03-22 04:34:44 +00:00
mcp: resolve absolute URLs for links tool
This commit is contained in:
@@ -6,7 +6,6 @@ const js = lp.js;
|
|||||||
|
|
||||||
const Element = @import("../browser/webapi/Element.zig");
|
const Element = @import("../browser/webapi/Element.zig");
|
||||||
const Selector = @import("../browser/webapi/selector/Selector.zig");
|
const Selector = @import("../browser/webapi/selector/Selector.zig");
|
||||||
const String = @import("../string.zig").String;
|
|
||||||
const protocol = @import("protocol.zig");
|
const protocol = @import("protocol.zig");
|
||||||
const Server = @import("Server.zig");
|
const Server = @import("Server.zig");
|
||||||
|
|
||||||
@@ -133,8 +132,13 @@ const ToolStreamingText = struct {
|
|||||||
if (Selector.querySelectorAll(self.server.page.document.asNode(), "a[href]", self.server.page)) |list| {
|
if (Selector.querySelectorAll(self.server.page.document.asNode(), "a[href]", self.server.page)) |list| {
|
||||||
var first = true;
|
var first = true;
|
||||||
for (list._nodes) |node| {
|
for (list._nodes) |node| {
|
||||||
if (node.is(Element)) |el| {
|
if (node.is(Element.Html.Anchor)) |anchor| {
|
||||||
if (el.getAttributeSafe(String.wrap("href"))) |href| {
|
const href = anchor.getHref(self.server.page) catch |err| {
|
||||||
|
log.err(.mcp, "resolve href failed", .{ .err = err });
|
||||||
|
continue;
|
||||||
|
};
|
||||||
|
|
||||||
|
if (href.len > 0) {
|
||||||
if (!first) try w.writeByte('\n');
|
if (!first) try w.writeByte('\n');
|
||||||
try w.writeAll(href);
|
try w.writeAll(href);
|
||||||
first = false;
|
first = false;
|
||||||
|
|||||||
Reference in New Issue
Block a user