fix: adjust static attribute regex (#9552)

Svelte 5 version of #9551
pull/9563/head
Simon H 9 months ago committed by GitHub
parent 550cecf311
commit 9926347ad9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -382,7 +382,7 @@ function read_tag_name(parser) {
// eslint-disable-next-line no-useless-escape
const regex_token_ending_character = /[\s=\/>"']/;
const regex_starts_with_quote_characters = /^["']/;
const regex_attribute_value = /^(?:"([^"]*)"|'([^'])*'|([^>\s]))/;
const regex_attribute_value = /^(?:"([^"]*)"|'([^'])*'|([^>\s]+))/;
/**
* @param {import('../index.js').Parser} parser

@ -254,9 +254,9 @@ function stringify_tag_attributes(attributes) {
}
const regex_style_tags =
/<!--[^]*?-->|<style((?:\s+[^=>'"/]+=(?:"[^"]*"|'[^']*'|[^>\s])|\s+[^=>'"/]+)*\s*)(?:\/>|>([\S\s]*?)<\/style>)/g;
/<!--[^]*?-->|<style((?:\s+[^=>'"/]+=(?:"[^"]*"|'[^']*'|[^>\s]+)|\s+[^=>'"/]+)*\s*)(?:\/>|>([\S\s]*?)<\/style>)/g;
const regex_script_tags =
/<!--[^]*?-->|<script((?:\s+[^=>'"/]+=(?:"[^"]*"|'[^']*'|[^>\s])|\s+[^=>'"/]+)*\s*)(?:\/>|>([\S\s]*?)<\/script>)/g;
/<!--[^]*?-->|<script((?:\s+[^=>'"/]+=(?:"[^"]*"|'[^']*'|[^>\s]+)|\s+[^=>'"/]+)*\s*)(?:\/>|>([\S\s]*?)<\/script>)/g;
/**
* Calculate the updates required to process all instances of the specified tag.

@ -0,0 +1,7 @@
<script context=module>
export const foo = 'bar';
</script>
<script>
foo;
</script>

@ -0,0 +1,178 @@
{
"html": {
"start": 62,
"end": 60,
"type": "Fragment",
"children": [
{
"start": 60,
"end": 62,
"type": "Text",
"raw": "\n\n",
"data": "\n\n"
}
]
},
"instance": {
"type": "Script",
"start": 62,
"end": 86,
"context": "default",
"content": {
"type": "Program",
"start": 70,
"end": 77,
"loc": {
"start": {
"line": 1,
"column": 0
},
"end": {
"line": 7,
"column": 0
}
},
"body": [
{
"type": "ExpressionStatement",
"start": 72,
"end": 76,
"loc": {
"start": {
"line": 6,
"column": 1
},
"end": {
"line": 6,
"column": 5
}
},
"expression": {
"type": "Identifier",
"start": 72,
"end": 75,
"loc": {
"start": {
"line": 6,
"column": 1
},
"end": {
"line": 6,
"column": 4
}
},
"name": "foo"
}
}
],
"sourceType": "module"
}
},
"module": {
"type": "Script",
"start": 0,
"end": 60,
"context": "module",
"content": {
"type": "Program",
"start": 23,
"end": 51,
"loc": {
"start": {
"line": 1,
"column": 0
},
"end": {
"line": 3,
"column": 0
}
},
"body": [
{
"type": "ExportNamedDeclaration",
"start": 25,
"end": 50,
"loc": {
"start": {
"line": 2,
"column": 1
},
"end": {
"line": 2,
"column": 26
}
},
"declaration": {
"type": "VariableDeclaration",
"start": 32,
"end": 50,
"loc": {
"start": {
"line": 2,
"column": 8
},
"end": {
"line": 2,
"column": 26
}
},
"declarations": [
{
"type": "VariableDeclarator",
"start": 38,
"end": 49,
"loc": {
"start": {
"line": 2,
"column": 14
},
"end": {
"line": 2,
"column": 25
}
},
"id": {
"type": "Identifier",
"start": 38,
"end": 41,
"loc": {
"start": {
"line": 2,
"column": 14
},
"end": {
"line": 2,
"column": 17
}
},
"name": "foo"
},
"init": {
"type": "Literal",
"start": 44,
"end": 49,
"loc": {
"start": {
"line": 2,
"column": 20
},
"end": {
"line": 2,
"column": 25
}
},
"value": "bar",
"raw": "'bar'"
}
}
],
"kind": "const"
},
"specifiers": [],
"source": null
}
],
"sourceType": "module"
}
}
}
Loading…
Cancel
Save