UNPKG

sdin

Version:

JavaScript package builder.

2 lines 2.18 kB
import s from"@babel/runtime/helpers/defineProperty";function i(r,t){var o,s=Object.keys(r);return Object.getOwnPropertySymbols&&(o=Object.getOwnPropertySymbols(r),t&&(o=o.filter(function(t){return Object.getOwnPropertyDescriptor(r,t).enumerable})),s.push.apply(s,o)),s}function o(r){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{};t%2?i(Object(o),!0).forEach(function(t){s(r,t,o[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(o)):i(Object(o)).forEach(function(t){Object.defineProperty(r,t,Object.getOwnPropertyDescriptor(o,t))})}return r}import{resolve as e}from"path";import{getPackageRootPath as a,readPackageInfo as h}from"../utils/npm";import{getWorkPath as n,joinPosix as c}from"../utils/path";import{SdinAbstractConfig as t}from"./abstract-config";class r extends t{constructor(t,r,o){super(t,r,o),r?(this.root=o.root?e(a(o.root)):r.root,this.root===r.root?(this.tmp=r.tmp,this.pro=r.pro,this.cfg=r.cfg,this.pkg=r.pkg):(this.tmp=this.withRoot(".tmp"),this.pro=this.withRoot("pro"),this.cfg=this.withRoot("pro/configs"),this.pkg=h(this.root,!0)),this.alias=o.alias?Object.assign({},r.alias,o.alias):r.alias,this.codes=o.codes?Object.assign({},r.codes,o.codes):r.codes):(this.root=e(a(o.root||n())),this.tmp=this.withRoot(".tmp"),this.pro=this.withRoot("pro"),this.cfg=this.withRoot("pro/configs"),this.pkg=h(this.root,!0),this.alias=o.alias||{},this.codes=o.codes||{})}withRoot(){for(var t=arguments.length,r=new Array(t),o=0;o<t;o++)r[o]=arguments[o];return e(this.root,...r)}withTmp(){for(var t=arguments.length,r=new Array(t),o=0;o<t;o++)r[o]=arguments[o];return e(this.tmp,...r)}withPro(){for(var t=arguments.length,r=new Array(t),o=0;o<t;o++)r[o]=arguments[o];return e(this.pro,...r)}withCfg(){for(var t=arguments.length,r=new Array(t),o=0;o<t;o++)r[o]=arguments[o];return e(this.cfg,...r)}toMacros(){var t,r=o({},this.codes);for(t in this.datas)r[t]=JSON.stringify(this.datas[t]);return r}toTsCfgPaths(){let o={};return Object.keys(this.alias).forEach(t=>{var r=this.alias[t];o[c(t,"*")]=[c(r,"*")],o[t]=[r]}),o}}export{r as SdinAbstractProject}; //# sourceMappingURL=abstract-project.js.map