Skip to content

Commit 5bfdb8e

Browse files
committed
chore: move and fix legacy-provider
1 parent e4f35cc commit 5bfdb8e

File tree

3 files changed

+36
-28
lines changed

3 files changed

+36
-28
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
"test": "npm run build.unit && npm run test.only",
1414
"test.only": "atom --test ./dist/spec",
1515
"clean": "shx rm -rf dist",
16-
"build.unit": "tsc -p ./tsconfig.json || echo done",
16+
"build.unit": "tsc -p ./tsconfig.json",
1717
"dev": "npm run clean && cross-env NODE_ENV=development cross-env BABEL_KEEP_MODULES=true rollup -c -w",
1818
"build": "npm run clean && cross-env NODE_ENV=production cross-env BABEL_KEEP_MODULES=true rollup -c ",
1919
"build-commit": "build-commit -o dist",

src/legacy-provider.ts

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
// TODO Remove
2+
3+
import type { Disposable } from "atom"
4+
import { consumeRangeProvider, consumeFileProvider, consumeOnSaveProvider, consumeOnTypeProvider } from "./main"
5+
import type { CodeFormatProvider } from "./types"
6+
7+
export function consumeLegacyProvider(provider: CodeFormatProvider): Disposable {
8+
// Legacy providers used `selector` / `inclusionPriority`.
9+
// @ts-ignore legacy API compatability.
10+
provider.grammarScopes =
11+
provider.grammarScopes ||
12+
// @ts-ignore
13+
(provider.selector != null ? provider.selector.split(", ") : null)
14+
provider.priority =
15+
provider.priority != null
16+
? provider.priority
17+
: // @ts-ignore
18+
provider.inclusionPriority != null
19+
// @ts-ignore
20+
? provider.inclusionPriority
21+
: 0
22+
if ("formatCode" in provider) {
23+
return consumeRangeProvider(provider)
24+
} else if ("formatEntireFile" in provider) {
25+
return consumeFileProvider(provider)
26+
} else if ("formatAtPosition" in provider) {
27+
return consumeOnTypeProvider(provider)
28+
} else if ("formatOnSave" in provider) {
29+
return consumeOnSaveProvider(provider)
30+
}
31+
throw new Error("Invalid code format provider")
32+
}

src/main.ts

Lines changed: 3 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import type { Disposable } from "atom"
22
import type { BusySignalService } from "atom-ide-base"
33
import type {
4-
CodeFormatProvider,
54
RangeCodeFormatProvider,
65
FileCodeFormatProvider,
76
OnTypeCodeFormatProvider,
@@ -18,32 +17,6 @@ export function activate() {
1817
codeFormatManager = new CodeFormatManager()
1918
}
2019

21-
export function consumeLegacyProvider(provider: CodeFormatProvider): Disposable {
22-
// Legacy providers used `selector` / `inclusionPriority`.
23-
// $FlowIgnore legacy API compatability.
24-
provider.grammarScopes =
25-
provider.grammarScopes ||
26-
// $FlowIgnore
27-
(provider.selector != null ? provider.selector.split(", ") : null)
28-
provider.priority =
29-
provider.priority != null
30-
? provider.priority
31-
: // $FlowFixMe(>=0.68.0) Flow suppress (T27187857)
32-
provider.inclusionPriority != null
33-
? provider.inclusionPriority
34-
: 0
35-
if (provider.formatCode) {
36-
return consumeRangeProvider(provider)
37-
} else if (provider.formatEntireFile) {
38-
return consumeFileProvider(provider)
39-
} else if (provider.formatAtPosition) {
40-
return consumeOnTypeProvider(provider)
41-
} else if (provider.formatOnSave) {
42-
return consumeOnSaveProvider(provider)
43-
}
44-
throw new Error("Invalid code format provider")
45-
}
46-
4720
export function consumeRangeProvider(provider: RangeCodeFormatProvider): Disposable {
4821
return codeFormatManager.addRangeProvider(provider)
4922
}
@@ -67,3 +40,6 @@ export function consumeBusySignal(busySignalService: BusySignalService): Disposa
6740
export function deactivate() {
6841
codeFormatManager.dispose()
6942
}
43+
44+
// TODO remove
45+
export { consumeLegacyProvider } from "./legacy-provider"

0 commit comments

Comments
 (0)