From 3faeb9c9538dbe724d53017471d98adaba466882 Mon Sep 17 00:00:00 2001 From: pngwn Date: Fri, 4 Sep 2020 18:25:42 +0100 Subject: [PATCH] move most parse errors into central location --- src/compiler/parse/errors.ts | 99 ++++++++++++++++++++++++++-- src/compiler/parse/index.ts | 8 +-- src/compiler/parse/read/script.ts | 10 +-- src/compiler/parse/state/mustache.ts | 38 ++++------- src/compiler/parse/state/tag.ts | 91 +++++++------------------ 5 files changed, 142 insertions(+), 104 deletions(-) diff --git a/src/compiler/parse/errors.ts b/src/compiler/parse/errors.ts index 3f2f8a711e..bdcf13c64f 100644 --- a/src/compiler/parse/errors.ts +++ b/src/compiler/parse/errors.ts @@ -16,7 +16,24 @@ interface ErroMessage { */ type error_generator = (...args: string[]) => ErroMessage; +export const end_of_file_error: error_generator = () => ({ + code: `unexpected-eof`, + message: `Unexpected end of input` +}); + export const template_errors: Record = { + attribute_duplicate: () => ({ + code: `duplicate-attribute`, + message: 'Attributes need to be unique' + }), + attribute_quote_outside_value: () => ({ + code: `unexpected-token`, + message: `Expected =` + }), + directive_value_invalid: () => ({ + code: `invalid-directive-value`, + message: `Directive value must be a JavaScript expression enclosed in curly braces` + }), duplicate_style: () => ({ code: 'duplicate-style', message: 'You can only have one top-level