summaryrefslogtreecommitdiff
path: root/packages/astro-parser/src
diff options
context:
space:
mode:
authorGravatar Nate Moore <natemoo-re@users.noreply.github.com> 2021-06-24 17:41:10 -0500
committerGravatar GitHub <noreply@github.com> 2021-06-24 17:41:10 -0500
commit47ac2ccd17031dca576175e79b8196db615b5c35 (patch)
treebffac9c4c0852756c48eeeb51b5de50dc84b7daa /packages/astro-parser/src
parent02ecaf3d3364b910f08f15eeb0532285743b7efb (diff)
downloadastro-47ac2ccd17031dca576175e79b8196db615b5c35.tar.gz
astro-47ac2ccd17031dca576175e79b8196db615b5c35.tar.zst
astro-47ac2ccd17031dca576175e79b8196db615b5c35.zip
Fix `{...spread}` props (#522)
* fix(#521): allow spread props * chore: add spread prop tests * fix: falsy expressions should only be skipped in 'Expression' case * fix: support primitives in expressions (objects, arrays)
Diffstat (limited to 'packages/astro-parser/src')
-rw-r--r--packages/astro-parser/src/parse/read/expression.ts1
-rw-r--r--packages/astro-parser/src/parse/state/tag.ts3
2 files changed, 1 insertions, 3 deletions
diff --git a/packages/astro-parser/src/parse/read/expression.ts b/packages/astro-parser/src/parse/read/expression.ts
index c1fd6031b..98d94e26a 100644
--- a/packages/astro-parser/src/parse/read/expression.ts
+++ b/packages/astro-parser/src/parse/read/expression.ts
@@ -240,7 +240,6 @@ export const parse_expression_at = (source: string, index: number): Expression =
return expression;
};
-// @ts-ignore
export default function read_expression(parser: Parser) {
try {
const expression = parse_expression_at(parser.template, parser.index);
diff --git a/packages/astro-parser/src/parse/state/tag.ts b/packages/astro-parser/src/parse/state/tag.ts
index 28783df67..719baa55d 100644
--- a/packages/astro-parser/src/parse/state/tag.ts
+++ b/packages/astro-parser/src/parse/state/tag.ts
@@ -349,8 +349,7 @@ function read_attribute(parser: Parser, unique_names: Set<string>) {
parser.allow_whitespace();
if (parser.eat('...')) {
- const { expression } = read_expression(parser);
-
+ const expression = read_expression(parser);
parser.allow_whitespace();
parser.eat('}', true);