Fix HTML attribute parsing for escaped quotes #480

Merged
Oneric merged 2 commits from mkljczk/akkoma-fe:get-attrs-fix into develop 2026-02-19 12:32:01 +00:00
Showing only changes of commit b04e4810f8 - Show all commits

Fix HTML attribute parsing, discard attributes not strating with a letter

Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
Alexander Tumin 2023-05-31 00:25:10 +03:00 committed by nicole mikołajczyk

View file

@ -22,7 +22,7 @@ export const getAttrs = tag => {
.replace(new RegExp('^' + getTagName(tag)), '')
.replace(/\/?$/, '')
.trim()
const attrs = Array.from(innertag.matchAll(/([a-z0-9-]+)(?:=("[^"]+?"|'[^']+?'))?/gi))
const attrs = Array.from(innertag.matchAll(/([a-z]+[a-z0-9-]*)(?:=("[^"]+?"|'[^']+?'))?/gi))
.map(([trash, key, value]) => [key, value])
.map(([k, v]) => {
if (!v) return [k, true]