diff --git a/src/index.js b/src/index.js index 9033b64..973f54c 100644 --- a/src/index.js +++ b/src/index.js @@ -15,7 +15,7 @@ const { } = require("./utils"); const schema = require("./options.json"); -const { minify: minifyWorker } = require("./minify"); +const { minify } = require("./minify"); /** @typedef {import("schema-utils/declarations/validate").Schema} Schema */ /** @typedef {import("webpack").Compiler} Compiler */ @@ -134,7 +134,7 @@ const { minify: minifyWorker } = require("./minify"); /** * @template T - * @typedef {JestWorker & { transform: (options: string) => InternalResult, minify: (options: InternalOptions) => InternalResult }} MinimizerWorker + * @typedef {JestWorker & { transform: (options: string) => Promise, minify: (options: InternalOptions) => Promise }} MinimizerWorker */ /** @@ -578,7 +578,7 @@ class CssMinimizerPlugin { try { result = await (getWorker ? getWorker().transform(getSerializeJavascript()(options)) - : minifyWorker(options)); + : minify(options)); } catch (error) { const hasSourceMap = inputSourceMap && CssMinimizerPlugin.isSourceMap(inputSourceMap); diff --git a/src/minify.js b/src/minify.js index 000f0fd..8f76cbf 100644 --- a/src/minify.js +++ b/src/minify.js @@ -6,7 +6,7 @@ * @param {import("./index.js").InternalOptions} options * @returns {Promise} */ -const minify = async (options) => { +async function minify(options) { const minifyFns = Array.isArray(options.minimizer.implementation) ? options.minimizer.implementation : [options.minimizer.implementation]; @@ -59,7 +59,7 @@ const minify = async (options) => { } return result; -}; +} /** * @param {string} options diff --git a/src/utils.js b/src/utils.js index ccef7d4..8466f32 100644 --- a/src/utils.js +++ b/src/utils.js @@ -69,7 +69,7 @@ function throttleAll(limit, tasks) { /* istanbul ignore next */ /** * @param {Input} input - * @param {RawSourceMap | undefined} sourceMap + * @param {RawSourceMap} [sourceMap] * @param {CustomOptions} [minimizerOptions] * @return {Promise} */ @@ -191,7 +191,7 @@ cssnanoMinify.supportsWorkerThreads = () => true; /* istanbul ignore next */ /** * @param {Input} input - * @param {RawSourceMap | undefined} sourceMap + * @param {RawSourceMap} [sourceMap] * @param {CustomOptions} [minimizerOptions] * @return {Promise} */ @@ -220,7 +220,7 @@ cssoMinify.supportsWorkerThreads = () => true; /* istanbul ignore next */ /** * @param {Input} input - * @param {RawSourceMap | undefined} sourceMap + * @param {RawSourceMap} [sourceMap] * @param {CustomOptions} [minimizerOptions] * @return {Promise} */ @@ -265,7 +265,7 @@ cleanCssMinify.supportsWorkerThreads = () => true; /* istanbul ignore next */ /** * @param {Input} input - * @param {RawSourceMap | undefined} sourceMap + * @param {RawSourceMap} [sourceMap] * @param {CustomOptions} [minimizerOptions] * @return {Promise} */ @@ -359,7 +359,7 @@ esbuildMinify.supportsWorkerThreads = () => false; /* istanbul ignore next */ /** * @param {Input} input - * @param {RawSourceMap | undefined} sourceMap + * @param {RawSourceMap} [sourceMap] * @param {CustomOptions} [minimizerOptions] * @return {Promise} */ @@ -405,7 +405,7 @@ parcelCssMinify.supportsWorkerThreads = () => false; /* istanbul ignore next */ /** * @param {Input} input - * @param {RawSourceMap | undefined} sourceMap + * @param {RawSourceMap} [sourceMap] * @param {CustomOptions} [minimizerOptions] * @return {Promise} */ @@ -451,7 +451,7 @@ lightningCssMinify.supportsWorkerThreads = () => false; /* istanbul ignore next */ /** * @param {Input} input - * @param {RawSourceMap | undefined} sourceMap + * @param {RawSourceMap} [sourceMap] * @param {CustomOptions} [minimizerOptions] * @return {Promise} */ diff --git a/types/index.d.ts b/types/index.d.ts index 43431b2..c34d48c 100644 --- a/types/index.d.ts +++ b/types/index.d.ts @@ -222,8 +222,8 @@ type BasePluginOptions = { parallel?: Parallel; }; type MinimizerWorker = JestWorker & { - transform: (options: string) => InternalResult; - minify: (options: InternalOptions) => InternalResult; + transform: (options: string) => Promise; + minify: (options: InternalOptions) => Promise; }; type ProcessOptionsExtender = | ProcessOptions diff --git a/types/utils.d.ts b/types/utils.d.ts index 7d9615d..e1ea35c 100644 --- a/types/utils.d.ts +++ b/types/utils.d.ts @@ -25,13 +25,13 @@ export function throttleAll(limit: number, tasks: Task[]): Promise; export function memoize(fn: (() => any) | undefined): () => T; /** * @param {Input} input - * @param {RawSourceMap | undefined} sourceMap + * @param {RawSourceMap} [sourceMap] * @param {CustomOptions} [minimizerOptions] * @return {Promise} */ export function cssnanoMinify( input: Input, - sourceMap: RawSourceMap | undefined, + sourceMap?: import("@jridgewell/trace-mapping").EncodedSourceMap | undefined, minimizerOptions?: import("./index.js").CustomOptions | undefined, ): Promise; export namespace cssnanoMinify { @@ -39,13 +39,13 @@ export namespace cssnanoMinify { } /** * @param {Input} input - * @param {RawSourceMap | undefined} sourceMap + * @param {RawSourceMap} [sourceMap] * @param {CustomOptions} [minimizerOptions] * @return {Promise} */ export function cssoMinify( input: Input, - sourceMap: RawSourceMap | undefined, + sourceMap?: import("@jridgewell/trace-mapping").EncodedSourceMap | undefined, minimizerOptions?: import("./index.js").CustomOptions | undefined, ): Promise; export namespace cssoMinify { @@ -53,13 +53,13 @@ export namespace cssoMinify { } /** * @param {Input} input - * @param {RawSourceMap | undefined} sourceMap + * @param {RawSourceMap} [sourceMap] * @param {CustomOptions} [minimizerOptions] * @return {Promise} */ export function cleanCssMinify( input: Input, - sourceMap: RawSourceMap | undefined, + sourceMap?: import("@jridgewell/trace-mapping").EncodedSourceMap | undefined, minimizerOptions?: import("./index.js").CustomOptions | undefined, ): Promise; export namespace cleanCssMinify { @@ -67,13 +67,13 @@ export namespace cleanCssMinify { } /** * @param {Input} input - * @param {RawSourceMap | undefined} sourceMap + * @param {RawSourceMap} [sourceMap] * @param {CustomOptions} [minimizerOptions] * @return {Promise} */ export function esbuildMinify( input: Input, - sourceMap: RawSourceMap | undefined, + sourceMap?: import("@jridgewell/trace-mapping").EncodedSourceMap | undefined, minimizerOptions?: import("./index.js").CustomOptions | undefined, ): Promise; export namespace esbuildMinify { @@ -81,13 +81,13 @@ export namespace esbuildMinify { } /** * @param {Input} input - * @param {RawSourceMap | undefined} sourceMap + * @param {RawSourceMap} [sourceMap] * @param {CustomOptions} [minimizerOptions] * @return {Promise} */ export function parcelCssMinify( input: Input, - sourceMap: RawSourceMap | undefined, + sourceMap?: import("@jridgewell/trace-mapping").EncodedSourceMap | undefined, minimizerOptions?: import("./index.js").CustomOptions | undefined, ): Promise; export namespace parcelCssMinify { @@ -95,13 +95,13 @@ export namespace parcelCssMinify { } /** * @param {Input} input - * @param {RawSourceMap | undefined} sourceMap + * @param {RawSourceMap} [sourceMap] * @param {CustomOptions} [minimizerOptions] * @return {Promise} */ export function lightningCssMinify( input: Input, - sourceMap: RawSourceMap | undefined, + sourceMap?: import("@jridgewell/trace-mapping").EncodedSourceMap | undefined, minimizerOptions?: import("./index.js").CustomOptions | undefined, ): Promise; export namespace lightningCssMinify { @@ -109,13 +109,13 @@ export namespace lightningCssMinify { } /** * @param {Input} input - * @param {RawSourceMap | undefined} sourceMap + * @param {RawSourceMap} [sourceMap] * @param {CustomOptions} [minimizerOptions] * @return {Promise} */ export function swcMinify( input: Input, - sourceMap: RawSourceMap | undefined, + sourceMap?: import("@jridgewell/trace-mapping").EncodedSourceMap | undefined, minimizerOptions?: import("./index.js").CustomOptions | undefined, ): Promise; export namespace swcMinify {