oss-upload-tool
Version:
Integrated oss upload
1 lines • 1.39 kB
JavaScript
;Object.defineProperty(exports,"__esModule",{value:!0}),exports.defaultVal=defaultVal,exports.getGlobalValue=getGlobalValue,exports.getRemoteFileInfo=getRemoteFileInfo,exports.isStatusCodeOK=isStatusCodeOK,exports.safeSetEnv=safeSetEnv;var _http=_interopRequireDefault(require("http")),_https=_interopRequireDefault(require("https")),_stanUtils=require("stan-utils"),_utils=require("@planjs/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function isStatusCodeOK(e){return e>=200&&e<=300}function getGlobalValue(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];for(var r=0,o=t;r<o.length;r++){var s=o[r],a=process.env[s]||_stanUtils.execa.sync("npm",["config","get",s]).stdout;if(a&&"undefined"!==a)return a}}function safeSetEnv(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];t&&!n&&(process.env[e]=t)}function defaultVal(e,t){return void 0!==e?e:t}function getRemoteFileInfo(e){var t=e.startsWith("https:")?_https.default:_http.default;return new Promise((function(n,r){t.get(e,(function(e){var t="";e.on("data",(function(e){t+=e})),e.on("end",(function(){if(isStatusCodeOK(e.statusCode)){var o=(0,_utils.convertObjectKeysCase)(e.headers||{}),s=o.etag||o["if-none-match"];s&&"string"==typeof s&&(s=s.toLowerCase()),n({body:t,headers:o,etag:s})}else r(e)}))})).on("error",(function(e){r(e.message)}))}))}