Skip to content

Commit 585cc27

Browse files
committed
Add importModuleSpecifierEnding and *Preference options
1 parent c40296e commit 585cc27

File tree

3 files changed

+31
-4
lines changed

3 files changed

+31
-4
lines changed

lib/main/typescriptBuffer.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -164,15 +164,16 @@ export class TypescriptBuffer {
164164
if (!this.state || !this.state.configFile) return
165165
const options = getProjectConfig(this.state.configFile.getPath())
166166
this.compileOnSave = options.compileOnSave
167+
const cfg = atom.config.get("atom-typescript")
167168
await this.state.client.execute("configure", {
168169
file: this.state.filePath,
169170
formatOptions: options.formatCodeOptions,
170171
preferences: {
171172
includeCompletionsWithInsertText: true,
172-
includeCompletionsForModuleExports: atom.config.get(
173-
"atom-typescript.includeCompletionsForModuleExports",
174-
),
175-
quotePreference: atom.config.get("atom-typescript.quotePreference"),
173+
includeCompletionsForModuleExports: cfg.includeCompletionsForModuleExports,
174+
quotePreference: cfg.quotePreference,
175+
importModuleSpecifierEnding: cfg.importModuleSpecifierEnding,
176+
importModuleSpecifierPreference: cfg.importModuleSpecifierPreference,
176177
...options.preferences,
177178
},
178179
})

lib/typings/atom-config.d.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@ declare module "atom" {
2222
"atom-typescript.autocompleteParens": boolean
2323
"atom-typescript.includeCompletionsForModuleExports": boolean
2424
"atom-typescript.quotePreference": "auto" | "double" | "single"
25+
"atom-typescript.importModuleSpecifierEnding": "auto" | "minimal" | "index" | "js"
26+
"atom-typescript.importModuleSpecifierPreference": "auto" | "relative" | "non-relative"
2527
"atom-typescript.tsdkPath": string
2628
"atom-typescript.ignoredDiagnosticCodes": string[]
2729
"atom-typescript.ignoreUnusedSuggestionDiagnostics": boolean
@@ -55,6 +57,8 @@ declare module "atom" {
5557
autocompleteParens: boolean
5658
includeCompletionsForModuleExports: boolean
5759
quotePreference: "auto" | "double" | "single"
60+
importModuleSpecifierEnding: "auto" | "minimal" | "index" | "js"
61+
importModuleSpecifierPreference: "auto" | "relative" | "non-relative"
5862
tsdkPath: string
5963
ignoredDiagnosticCodes: string[]
6064
ignoreUnusedSuggestionDiagnostics: boolean

package.json

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,28 @@
179179
"default": "auto",
180180
"order": 67
181181
},
182+
"importModuleSpecifierEnding": {
183+
"type": "string",
184+
"description": "Determines whether we import `foo/index.ts` as \"foo\", \"foo/index\", or \"foo/index.js\"",
185+
"enum": [
186+
"auto",
187+
"minimal",
188+
"index",
189+
"js"
190+
],
191+
"default": "auto",
192+
"order": 68
193+
},
194+
"importModuleSpecifierPreference": {
195+
"type": "string",
196+
"enum": [
197+
"auto",
198+
"relative",
199+
"non-relative"
200+
],
201+
"default": "auto",
202+
"order": 69
203+
},
182204
"tsdkPath": {
183205
"title": "Path to default TypeScript SDK",
184206
"description": "TypeScript SDK found at the specified path will be preferred over the bundled one if TypeScript is not installed in node_modules as a project dependency. Ignored when empty",

0 commit comments

Comments
 (0)