update messages

pull/14307/head
Rich Harris 2 years ago
parent f00a403cb1
commit cda50c4ff3

@ -87,7 +87,7 @@ Attribute values containing `{...}` must be enclosed in quote marks, unless the
### bind_invalid_expression
```
Can only bind to an Identifier or MemberExpression
Can only bind to an Identifier or MemberExpression or a `{get, set}` pair
```
### bind_invalid_name
@ -100,6 +100,12 @@ Can only bind to an Identifier or MemberExpression
`bind:%name%` is not a valid binding. %explanation%
```
### bind_invalid_parens
```
`bind:%name%={get, set}` must not have surrounding parentheses
```
### bind_invalid_target
```
@ -436,12 +442,6 @@ Imports of `svelte/internal/*` are forbidden. It contains private runtime code w
The arguments keyword cannot be used within the template or at the top level of a component
```
### invalid_bind_directive
```
Bind directive getter/setter values (`bind:thing={ getter, setter }`) must be two JavaScript expressions separated by a single comma and enclosed in curly braces
```
### js_parse_error
```

@ -56,7 +56,7 @@
## bind_invalid_expression
> Can only bind to an Identifier or MemberExpression
> Can only bind to an Identifier or MemberExpression or a `{get, set}` pair
## bind_invalid_name
@ -64,6 +64,10 @@
> `bind:%name%` is not a valid binding. %explanation%
## bind_invalid_parens
> `bind:%name%={get, set}` must not have surrounding parentheses
## bind_invalid_target
> `bind:%name%` can only be used with %elements%
@ -180,10 +184,6 @@
> `<%name%>` does not support non-event attributes or spread attributes
## invalid_bind_directive
> Bind directive getter/setter values (`bind:thing={ getter, setter }`) must be two JavaScript expressions separated by a single comma and enclosed in curly braces
## js_parse_error
> %message%

@ -706,12 +706,12 @@ export function bind_group_invalid_expression(node) {
}
/**
* Can only bind to an Identifier or MemberExpression
* Can only bind to an Identifier or MemberExpression or a `{get, set}` pair
* @param {null | number | NodeLike} node
* @returns {never}
*/
export function bind_invalid_expression(node) {
e(node, "bind_invalid_expression", "Can only bind to an Identifier or MemberExpression");
e(node, "bind_invalid_expression", "Can only bind to an Identifier or MemberExpression or a `{get, set}` pair");
}
/**
@ -725,6 +725,16 @@ export function bind_invalid_name(node, name, explanation) {
e(node, "bind_invalid_name", explanation ? `\`bind:${name}\` is not a valid binding. ${explanation}` : `\`bind:${name}\` is not a valid binding`);
}
/**
* `bind:%name%={get, set}` must not have surrounding parentheses
* @param {null | number | NodeLike} node
* @param {string} name
* @returns {never}
*/
export function bind_invalid_parens(node, name) {
e(node, "bind_invalid_parens", `\`bind:${name}={get, set}\` must not have surrounding parentheses`);
}
/**
* `bind:%name%` can only be used with %elements%
* @param {null | number | NodeLike} node
@ -1003,15 +1013,6 @@ export function illegal_element_attribute(node, name) {
e(node, "illegal_element_attribute", `\`<${name}>\` does not support non-event attributes or spread attributes`);
}
/**
* Bind directive getter/setter values (`bind:thing={ getter, setter }`) must be two JavaScript expressions separated by a single comma and enclosed in curly braces
* @param {null | number | NodeLike} node
* @returns {never}
*/
export function invalid_bind_directive(node) {
e(node, "invalid_bind_directive", "Bind directive getter/setter values (`bind:thing={ getter, setter }`) must be two JavaScript expressions separated by a single comma and enclosed in curly braces");
}
/**
* %message%
* @param {null | number | NodeLike} node

@ -133,12 +133,12 @@ export function BindDirective(node, context) {
let i = /** @type {number} */ (node.expression.start);
while (context.state.analysis.source[--i] !== '{') {
if (context.state.analysis.source[i] === '(') {
e.invalid_bind_directive(node);
e.bind_invalid_parens(node, node.name);
}
}
if (node.expression.expressions.length !== 2) {
e.invalid_bind_directive(node);
e.bind_invalid_expression(node);
}
return;

Loading…
Cancel
Save