From 185fee680ab24d973c80e9987412614c0314890d Mon Sep 17 00:00:00 2001 From: Jonas Jenwald Date: Mon, 23 Feb 2026 18:58:40 +0100 Subject: [PATCH] Use `Map.prototype.getOrInsertComputed()` in the `web/struct_tree_layer_builder.js` file --- web/struct_tree_layer_builder.js | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/web/struct_tree_layer_builder.js b/web/struct_tree_layer_builder.js index b1bf2189e..6214b5fcd 100644 --- a/web/struct_tree_layer_builder.js +++ b/web/struct_tree_layer_builder.js @@ -15,7 +15,7 @@ /** @typedef {import("../src/display/api").PDFPageProxy} PDFPageProxy */ -import { FeatureTest, shadow } from "pdfjs-lib"; +import { FeatureTest, makeMap, shadow } from "pdfjs-lib"; import { removeNullCharacters } from "./ui_utils.js"; const PDF_ROLE_TO_HTML_ROLE = { @@ -251,12 +251,9 @@ class StructTreeLayerBuilder { const label = removeNullCharacters(alt); for (const child of structElement.children) { if (child.type === "annotation") { - let attrs = this.#elementAttributes.get(child.id); - if (!attrs) { - attrs = new Map(); - this.#elementAttributes.set(child.id, attrs); - } - attrs.set("aria-label", label); + this.#elementAttributes + .getOrInsertComputed(child.id, makeMap) + .set("aria-label", label); added = true; } }