diff options
author | Kitson Kelly <me@kitsonkelly.com> | 2019-09-15 22:58:06 +1000 |
---|---|---|
committer | Ryan Dahl <ry@tinyclouds.org> | 2019-09-15 08:58:06 -0400 |
commit | c30decab77c4ebeb34ebd1d73b0f45bb26944c79 (patch) | |
tree | 9665d533e7a204d0658c25bd72b6f94f4d76b9f1 | |
parent | 686b86edb1ee4cbac90ecb1c3931174879531207 (diff) |
Fix type directive parsing (#2954)
-rw-r--r-- | js/type_directives.ts | 4 | ||||
-rw-r--r-- | tests/type_definitions.ts | 4 | ||||
-rw-r--r-- | tests/type_definitions.ts.out | 2 | ||||
-rw-r--r-- | tests/type_definitions/fizz.d.ts | 4 | ||||
-rw-r--r-- | tests/type_definitions/fizz.js | 2 | ||||
-rw-r--r-- | tests/type_definitions/qat.ts | 1 |
6 files changed, 12 insertions, 5 deletions
diff --git a/js/type_directives.ts b/js/type_directives.ts index 4817738c7..b457d2394 100644 --- a/js/type_directives.ts +++ b/js/type_directives.ts @@ -39,9 +39,9 @@ const typeDirectiveRegEx = /@deno-types\s*=\s*(["'])((?:(?=(\\?))\3.)*?)\1/gi; * import * as foo from "./foo.js" * export { a, b, c } from "./bar.js" * - * [See Diagram](https://bit.ly/2lK0izL) + * [See Diagram](http://bit.ly/2lOsp0K) */ -const importExportRegEx = /(?:import|export)\s+(?:[\s\S]*?from\s+)?(["'])((?:(?=(\\?))\3.)*?)\1/; +const importExportRegEx = /(?:import|export)(?:\s+|\s+[\s\S]*?from\s+)?(["'])((?:(?=(\\?))\3.)*?)\1/; /** Parses out any Deno type directives that are part of the source code, or * returns `undefined` if there are not any. diff --git a/tests/type_definitions.ts b/tests/type_definitions.ts index 8e85df2b9..ecf3ae0b2 100644 --- a/tests/type_definitions.ts +++ b/tests/type_definitions.ts @@ -3,4 +3,8 @@ import { foo } from "./type_definitions/foo.js"; // @deno-types="./type_definitions/fizz.d.ts" import "./type_definitions/fizz.js"; +import * as qat from "./type_definitions/qat.ts"; + console.log(foo); +console.log(fizz); +console.log(qat.qat); diff --git a/tests/type_definitions.ts.out b/tests/type_definitions.ts.out index 291e85a7b..b4fa88c50 100644 --- a/tests/type_definitions.ts.out +++ b/tests/type_definitions.ts.out @@ -1 +1,3 @@ [WILDCARD]foo +fizz +qat diff --git a/tests/type_definitions/fizz.d.ts b/tests/type_definitions/fizz.d.ts index 4b087efb7..34eb41b96 100644 --- a/tests/type_definitions/fizz.d.ts +++ b/tests/type_definitions/fizz.d.ts @@ -1,2 +1,2 @@ -/** An exported value. */ -export const fizz: string; +/** A global value. */ +declare const fizz: string; diff --git a/tests/type_definitions/fizz.js b/tests/type_definitions/fizz.js index 5141a4ddf..852162c94 100644 --- a/tests/type_definitions/fizz.js +++ b/tests/type_definitions/fizz.js @@ -1 +1 @@ -export const fizz = "fizz"; +globalThis.fizz = "fizz"; diff --git a/tests/type_definitions/qat.ts b/tests/type_definitions/qat.ts new file mode 100644 index 000000000..6196c9d38 --- /dev/null +++ b/tests/type_definitions/qat.ts @@ -0,0 +1 @@ +export const qat = "qat"; |