UNPKG

flowbite-react

Version:

Official React components built for Flowbite and Tailwind CSS

40 lines (36 loc) 1.29 kB
'use strict'; var getJsType = require('./get-js-type.cjs'); function wrapDefaultExport(content, withFunction) { const { isCJS, isESM } = getJsType.getJsType(content); if (!isCJS && !isESM) { return content; } let wrappedContent = content; if (isESM) { const esmMatch = content.match(/export\s+default\s+(?:class|interface|abstract\s+class)\s+/); if (!esmMatch) { wrappedContent = wrappedContent.replace( /(export\s+default\s+)([^;\n]+(?:{[^}]*})?[^;\n]*)(;?\s*)$/gm, (_, prefix, exportValue, semicolon) => { const trimmedValue = exportValue.trim(); return `${prefix}${withFunction}(${trimmedValue})${semicolon}`; } ); } } if (isCJS) { const cjsMatch = content.match(/module\.exports\s*=\s*(?:class|interface|abstract\s+class)\s+/); if (!cjsMatch) { wrappedContent = wrappedContent.replace( /(module\.exports\s*=\s*)([^;\n]+(?:{[^}]*})?[^;\n]*)(;?\s*)$/gm, (_, prefix, exportValue, semicolon) => { const trimmedValue = exportValue.trim(); return `${prefix}${withFunction}(${trimmedValue})${semicolon}`; } ); } } return wrappedContent; } exports.wrapDefaultExport = wrapDefaultExport; //# sourceMappingURL=wrap-default-export.cjs.map