fix TS errors

This commit is contained in:
Huáng Jùnliàng 2022-01-14 20:51:34 -05:00 committed by Nicolò Ribaudo
parent 351f1585b7
commit 2fc8ad9539
2 changed files with 5 additions and 4 deletions

View File

@ -38,7 +38,7 @@ interface Options {
name: string;
feature: number;
loose?: boolean;
inherits?: () => Options;
inherits?: (api: any, options: any) => any;
// same as PluginObject.manipulateOptions
manipulateOptions: (options: unknown, parserOpts: ParserOptions) => void;
// TODO(flow->ts): change to babel api
@ -52,6 +52,7 @@ export function createClassFeaturePlugin({
manipulateOptions,
// TODO(Babel 8): Remove the default value
api = { assumption: () => void 0 },
inherits,
}: Options) {
const setPublicClassFields = api.assumption("setPublicClassFields");
const privateFieldsAsProperties = api.assumption("privateFieldsAsProperties");
@ -86,6 +87,7 @@ export function createClassFeaturePlugin({
return {
name,
manipulateOptions,
inherits,
pre() {
enableFeature(this.file, feature, loose);

View File

@ -26,18 +26,17 @@ export default declare((api, options) => {
} else if (version === "2021-12") {
return transformer2021_12(api, options);
} else {
const plugin = createClassFeaturePlugin({
return createClassFeaturePlugin({
name: "proposal-decorators",
api,
feature: FEATURES.decorators,
inherits: syntaxDecorators,
// loose: options.loose, Not supported
manipulateOptions({ generatorOpts }) {
generatorOpts.decoratorsBeforeExport = decoratorsBeforeExport;
},
});
plugin.inherits = syntaxDecorators;
return plugin;
}
});