From a8e0a322873583a138a84b3dd24dd049f9d1b422 Mon Sep 17 00:00:00 2001 From: Tan Li Hau Date: Fri, 18 Sep 2020 23:11:47 +0800 Subject: [PATCH] no missing-declaration warning for import.meta --- src/compiler/compile/nodes/shared/Expression.ts | 2 ++ test/validator/samples/import-meta/errors.json | 1 + test/validator/samples/import-meta/input.svelte | 6 ++++++ 3 files changed, 9 insertions(+) create mode 100644 test/validator/samples/import-meta/errors.json create mode 100644 test/validator/samples/import-meta/input.svelte diff --git a/src/compiler/compile/nodes/shared/Expression.ts b/src/compiler/compile/nodes/shared/Expression.ts index bbbc1b2f2d..834287bb63 100644 --- a/src/compiler/compile/nodes/shared/Expression.ts +++ b/src/compiler/compile/nodes/shared/Expression.ts @@ -64,6 +64,8 @@ export default class Expression { enter(node: any, parent: any, key: string) { // don't manipulate shorthand props twice if (key === 'value' && parent.shorthand) return; + // don't manipulate `import.meta`, `new.target` + if (node.type === 'MetaProperty') return this.skip(); if (map.has(node)) { scope = map.get(node); diff --git a/test/validator/samples/import-meta/errors.json b/test/validator/samples/import-meta/errors.json new file mode 100644 index 0000000000..0637a088a0 --- /dev/null +++ b/test/validator/samples/import-meta/errors.json @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/test/validator/samples/import-meta/input.svelte b/test/validator/samples/import-meta/input.svelte new file mode 100644 index 0000000000..a49e70a66d --- /dev/null +++ b/test/validator/samples/import-meta/input.svelte @@ -0,0 +1,6 @@ + + +{ url } +{ import.meta.url }