UNPKG

@stellarwp/tyson

Version:

Create and manage custom configurations to build projects with @wordpress/scripts.

37 lines (36 loc) 1.15 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.usesLoader = usesLoader; /** * Returns whether a WebPack rule `use` entry uses the given loader. * * @param {UseEntry|UseEntry[]} ruleUse The webpack rule `use` property * @param {string} loader The loader to search for. * * @return {boolean} Whether or not the webpack rule `use` property uses the given loader. */ function usesLoader(ruleUse, loader) { // The rule.use property is a string. if (typeof ruleUse === "string") { return ruleUse.includes(loader); } if (!Array.isArray(ruleUse)) { // If it's not an array, we cannot continue searching for our loader, so we can return false here. return false; } for (let i = 0; i < ruleUse.length; i++) { const use = ruleUse[i]; if (typeof use === "string") { if (use.includes(loader)) { return true; } continue; } if (typeof use === "object") { if ((use?.loader || "").includes(loader)) { return true; } } } return false; }