UNPKG

edon-service

Version:

一个开箱即用的前端构建工具,基于Webpack封装,简化了前端项目的开发与构建流程。无论是开发环境的热更新、资源处理,还是生产环境的代码优化、打包部署,都能提供便捷的配置和稳定的性能

2 lines (1 loc) 1.61 kB
"use strict";var d=Object.create;var i=Object.defineProperty;var h=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,_=Object.prototype.hasOwnProperty;var g=(r,t)=>{for(var e in t)i(r,e,{get:t[e],enumerable:!0})},f=(r,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of l(t))!_.call(r,o)&&o!==e&&i(r,o,{get:()=>t[o],enumerable:!(n=h(t,o))||n.enumerable});return r};var s=(r,t,e)=>(e=r!=null?d(y(r)):{},f(t||!r||!r.__esModule?i(e,"default",{value:r,enumerable:!0}):e,r)),w=r=>f(i({},"__esModule",{value:!0}),r);var S={};g(S,{createFileHash256Sync:()=>E,getFilename:()=>P,getPort:()=>O,isProd:()=>x});module.exports=w(S);var m=s(require("crypto")),a=s(require("fs-extra")),c=s(require("portfinder")),p=require("edon-helper"),u=require("url"),b={};function E(r){if(!a.default.existsSync(r))throw new Error(`No Search File ${r}`);let t=a.default.readFileSync(r),e=m.default.createHash("sha256");return e.update(t),e.digest("hex")}function x(){return process.env.NODE_ENV==="production"}var O=async(r,t)=>{let e=3e3,n=await(0,p.getDotEnvObject)(r);if(n.PORT&&(e=+JSON.parse(n.PORT)),t&&(e=t),e===80)return 80;try{return await c.default.getPortPromise({port:e,stopPort:e+10})}catch(o){throw new Error((o==null?void 0:o.message)||"No open ports found")}},P=()=>{if(typeof __filename<"u")return __filename;try{let r=b.url;if(!r)throw new Error("\u8BF7\u5728 ESM \u73AF\u5883\u4E0B\u4F20\u5165 import.meta");return(0,u.fileURLToPath)(r)}catch{return typeof __filename<"u"?__filename:""}};0&&(module.exports={createFileHash256Sync,getFilename,getPort,isProd});