"use strict";
/* eslint-disable no-new-func */
// import { transformSync } from '@babel/core';
Object.defineProperty(exports, "__esModule", { value: true });
exports.BabelTransform = void 0;
// export function BabelTransform(
//   code,
//   options: {
//     IIFE?: boolean;
//   } = {},
// ) {
//   const { IIFE = false } = options;
//   /**
//    * 如果 trim 完为空
//    * 则原样不用再编译了
//    */
//   if (!code?.trim?.()) {
//     return code;
//   }
//   try {
//     /**
//      * 如果是基础字面量的话
//      * 可以直接使用原值，不用过babel
//      */
//     if (typeof code === 'string' && JSON.parse(code?.trim?.())) {
//       return code;
//     }
//   } catch (e) {}
//   try {
//     const simpleWrapped = `(\n${code || 'undefined'}\n)`;
//     const { code: expression } =
//       transformSync(IIFE ? `(()=>${simpleWrapped})()` : simpleWrapped, {
//         cwd: __dirname,
//         sourceType: 'script',
//         comments: false,
//         // minified: true,
//         presets: [
//           [
//             '@babel/preset-env',
//             {
//               targets: {
//                 /**
//                  * 支持 proxy 的版本
//                  * 低于这个版本完全无法支持
//                  */
//                 // browsers: ['chrome >= 49', 'iOS >= 10', 'safari >= 10'],
//                 /**
//                  * 一个相对较高的版本，包涵解构赋值，这样不用注入太多 polifill
//                  * 但是不包涵 options chain
//                  * 基本上是 es2019
//                  */
//                 browsers: ['chrome >= 67', 'iOS >= 12', 'safari >= 12'],
//               },
//               include: [
//                 // es2015
//                 '@babel/plugin-transform-arrow-functions',
//               ],
//             },
//           ],
//         ],
//       }) || {};
//     const res = expression?.replace?.(/;$/, '') || code;
//     if (expression) {
//       new Function(`return (\n${res}\n)`);
//     }
//     return res;
//   } catch (e: any) {
//     console.error(`transform [${code}] fail:`, e?.message);
//     return code;
//   }
// }
function BabelTransform(code, options = {}) {
    return '';
}
exports.BabelTransform = BabelTransform;
