angular-cn/packages/language-service/test
ayazhafiz 53fc2ed8bf feat(language-service): completions support for indexed types (#33775)
Previously, indexing a container type would not return completions for
the indexed type because for every TypeScript type, the recorded index
type was always marked as `undefined`, regardless of the index
signature.

This PR now returns the index type of TypeScript containers with numeric
or string index signatures. This allows use to generate completions for
arrays and defined index types:

```typescript
interface Container<T> {
  [key: string]: T;
}
const ctr: Container<T>;
ctr['stringKey']. // gives `T.` completions

const arr: T[];
arr[0]. // gives `T.` completions
```

Note that this does _not_ provide completions for properties indexed by
string literals, e.g.

```typescript
interface Container<T> {
  foo: T;
}
const ctr: Container<T>;
ctr['foo']. // does not give `T.` completions
```

Closes angular/vscode-ng-language-service#110
Closes angular/vscode-ng-language-service#277

PR Close #33775
2019-11-15 16:16:06 -08:00
..
project feat(language-service): completions support for indexed types (#33775) 2019-11-15 16:16:06 -08:00
BUILD.bazel refactor(compiler-cli): Move diagnostics files to language service (#33809) 2019-11-14 09:29:07 -08:00
completions_spec.ts feat(language-service): completions support for indexed types (#33775) 2019-11-15 16:16:06 -08:00
definitions_spec.ts fix(language-service): reset MockHost after every spec instead of creating new LS (#33200) 2019-10-16 17:49:55 -04:00
diagnostics_spec.ts feat(language-service): completions support for indexed types (#33775) 2019-11-15 16:16:06 -08:00
expression_diagnostics_spec.ts refactor(compiler-cli): Move diagnostics files to language service (#33809) 2019-11-14 09:29:07 -08:00
global_symbols_spec.ts refactor(compiler-cli): Move diagnostics files to language service (#33809) 2019-11-14 09:29:07 -08:00
hover_spec.ts fix(language-service): Add global symbol for $any() (#33245) 2019-10-23 10:02:50 -07:00
html_info_spec.ts refactor: move angular source to /packages rather than modules/@angular 2017-03-08 16:29:27 -08:00
language_service_spec.ts fix(language-service): Remove getTemplateReferences() from LanguageService API (#33807) 2019-11-15 10:41:51 -08:00
mocks.ts refactor(compiler-cli): Move diagnostics files to language service (#33809) 2019-11-14 09:29:07 -08:00
reflector_host_spec.ts test(language-service): remove MockData from MockTypescriptHost (#32752) 2019-09-18 15:29:25 -07:00
template_references_spec.ts fix(language-service): Remove getTemplateReferences() from LanguageService API (#33807) 2019-11-15 10:41:51 -08:00
template_spec.ts test(language-service): remove MockData from MockTypescriptHost (#32752) 2019-09-18 15:29:25 -07:00
test_utils.ts fix(language-service): Recompute analyzed modules only when source files change (#33806) 2019-11-15 10:42:09 -08:00
ts_plugin_spec.ts feat(language-service): add support for text replacement (#33091) 2019-10-29 11:47:01 -07:00
typescript_host_spec.ts fix(language-service): Recompute analyzed modules only when source files change (#33806) 2019-11-15 10:42:09 -08:00
typescript_symbols_spec.ts fix(compiler-cli): Refactor getTsTypeFromBuiltinType (#33778) 2019-11-15 10:43:41 -08:00
utils_spec.ts refactor(language-service): Omit typechecking for finding directives (#32156) 2019-08-16 09:58:28 -07:00