Skip to content

Commit d471637

Browse files
committed
chore(textlint): make static availableExtensions() optional
1 parent 7268b9e commit d471637

File tree

2 files changed

+5
-2
lines changed

2 files changed

+5
-2
lines changed

packages/@textlint/kernel/src/textlint-kernel-interface.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ export interface TextlintPluginProcessorConstructor extends Function {
9797
* @deprecated textlint@11+
9898
* @see https://github.com/textlint/textlint/issues/531
9999
*/
100-
availableExtensions(): Array<string>;
100+
availableExtensions?(): Array<string>;
101101
}
102102

103103
export declare class TextlintPluginProcessor {

packages/textlint/src/textlintrc-descriptor/TextlintPluginDescriptor.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,10 @@ const getAvailableExtensions = (pluginProcessor: TextlintPluginProcessor): strin
2626
// Recommended: `availableExtensions()` should be defined as instance method.
2727
// https://github.com/textlint/textlint/issues/531
2828
const PluginProcessorConstructor = pluginProcessor.constructor as TextlintPluginProcessorConstructor;
29-
return PluginProcessorConstructor.availableExtensions();
29+
if (typeof PluginProcessorConstructor.availableExtensions === "function") {
30+
return PluginProcessorConstructor.availableExtensions();
31+
}
32+
throw new Error(`Plugin(${pluginProcessor}) should implement availableExtensions() method`);
3033
};
3134
const createPluginInstances = (
3235
rawPluginObject: { [index: string]: TextlintPluginCreator } = {},

0 commit comments

Comments
 (0)