@currents/cmd 1.3.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/bin/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  #! /usr/bin/env node
2
- "use strict";var Kn=Object.create;var je=Object.defineProperty;var $n=Object.getOwnPropertyDescriptor;var Vn=Object.getOwnPropertyNames;var Jn=Object.getPrototypeOf,qn=Object.prototype.hasOwnProperty;var Yn=(e,t)=>{for(var r in t)je(e,r,{get:t[r],enumerable:!0})},Wn=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Vn(t))!qn.call(e,n)&&n!==r&&je(e,n,{get:()=>t[n],enumerable:!(o=$n(t,n))||o.enumerable});return e};var d=(e,t,r)=>(r=e!=null?Kn(Jn(e)):{},Wn(t||!e||!e.__esModule?je(r,"default",{value:e,enumerable:!0}):r,e));var Mf=require("source-map-support/register");var Gn=require("@commander-js/extra-typings");var xt={name:"@currents/cmd",version:"1.3.0",main:"./dist/index.js",author:"Currents Software Inc",license:"MIT",description:"Currents CLI tools",scripts:{test:"vitest",rm:"rimraf dist",lint:'TIMING=1 eslint "**/*.ts*"',types:"tsc --noEmit",build:"tsup-node --minify --dts",dev:"tsup-node --watch --dts",release:"release-it","publish:npm":"npm run rm && npm run build && ./publish.js"},devDependencies:{"@jest/reporters":"^29.7.0","@jest/types":"^29.6.3","@release-it/conventional-changelog":"^7.0.2","@types/archiver":"^6.0.3","@types/async-retry":"^1.4.9","@types/debug":"^4.1.12","@types/fs-extra":"^11.0.4","@types/getos":"^3.0.4","@types/lodash":"^4.17.13","@types/node":"^20.14.2","@types/proxy-from-env":"^1.0.4","@types/semver":"^7.5.8","@types/tmp":"^0.2.6","@types/unzipper":"^0.10.10","@types/uuid":"^9.0.8","@types/xml2js":"^0.4.14",jest:"^29.7.0",rimraf:"^5.0.7",tsup:"^8.1.0",typescript:"^5.7.2",vitest:"^2.1.4"},dependencies:{"@commander-js/extra-typings":"^11.1.0","@currents/commit-info":"1.0.1-beta.0",archiver:"^7.0.1","async-retry":"^1.3.3",axios:"^1.7.2","axios-retry":"^4.4.0",commander:"^11.1.0",debug:"^4.3.5",dotenv:"^16.4.5",execa:"^9.5.1","fs-extra":"^11.2.0",getos:"^3.2.1",glob:"^11.0.0","https-proxy-agent":"^7.0.4","jest-cli":"^29.7.0","jest-config":"^29.7.0",lodash:"^4.17.21",nanoid:"^3.3.4","pretty-ms":"^7.0.1","proxy-from-env":"^1.1.0",semver:"^7.6.0","source-map-support":"^0.5.21",tmp:"^0.2.3","tmp-promise":"^3.0.3","ts-pattern":"^5.5.0",unzipper:"^0.12.3",uuid:"^11.0.3",xml2js:"^0.6.2"},bin:{currents:"./dist/bin/index.js","currents-cli":"./dist/bin/index.js"},files:["dist","!**/*.map","!**/*/*.map"],keywords:["cloud test dashboard","test reporter","test results","currents","currents dashboard","ci"],exports:{".":{import:"./dist/index.js",require:"./dist/index.js",types:"./dist/index.d.ts"},"./discovery/jest":{import:"./dist/services/upload/discovery/jest/reporter.js",require:"./dist/services/upload/discovery/jest/reporter.js",types:"./dist/services/upload/discovery/jest/reporter.d.ts"},"./package.json":"./package.json"},"release-it":{npm:{publish:!1},github:{release:!0,releaseName:"${npm.name} v${version}"},plugins:{"@release-it/conventional-changelog":{preset:"angular",header:"# Changelog",ignoreVersion:!0,infile:"./CHANGELOG.md"}},git:{commitMessage:"chore: release ${npm.name} v${version}",tagName:"${npm.name}-v${version}"}}};var ae=xt.version;var Tt=require("@commander-js/extra-typings");var zn=[];function Ke(e){zn.push(e)}var _=d(require("chalk")),N=d(require("util"));var $e=require("debug"),Xn=d(require("fs-extra")),s=(0,$e.debug)("currents"),Zn=null;function bt(){$e.debug.enable("currents,currents:*")}function At(e){Zn=e}var St=[],Ut=[];var ce=(...e)=>{let t=N.default.format(...e);Ke(t),console.log(t)},ei=(...e)=>{let t=N.default.format(...e);Ke(t),console.error(t)},y=ce,C=(...e)=>{let t=N.default.format(...e);return Ut.push(t),s("WARNING: ",t),ce(_.default.bgYellow.black(" WARNING "),t)},ee=(...e)=>{let t=N.default.format(...vt(e));return s("WARNING: ",N.default.format(...e)),ce(_.default.bgYellow.black(" WARNING "),t)},me=(...e)=>ce(_.default.green.bold(N.default.format(...e))),f=(...e)=>{let t=N.default.format(...vt(e));return St.push(t),s("ERROR: ",N.default.format(...e)),ei(_.default.bgRed.white(" ERROR "),t)};var vt=e=>e.map(t=>t instanceof Error?t.message:t),pe=(e=2)=>console.log(Array(e).fill("").join(`
2
+ "use strict";var Kn=Object.create;var je=Object.defineProperty;var $n=Object.getOwnPropertyDescriptor;var Vn=Object.getOwnPropertyNames;var Jn=Object.getPrototypeOf,qn=Object.prototype.hasOwnProperty;var Yn=(e,t)=>{for(var r in t)je(e,r,{get:t[r],enumerable:!0})},Wn=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Vn(t))!qn.call(e,n)&&n!==r&&je(e,n,{get:()=>t[n],enumerable:!(o=$n(t,n))||o.enumerable});return e};var d=(e,t,r)=>(r=e!=null?Kn(Jn(e)):{},Wn(t||!e||!e.__esModule?je(r,"default",{value:e,enumerable:!0}):r,e));var Mf=require("source-map-support/register");var Gn=require("@commander-js/extra-typings");var xt={name:"@currents/cmd",version:"1.4.0",main:"./dist/index.js",author:"Currents Software Inc",license:"MIT",description:"Currents CLI tools",scripts:{test:"vitest",rm:"rimraf dist",lint:'TIMING=1 eslint "**/*.ts*"',types:"tsc --noEmit",build:"tsup-node --minify --dts",dev:"tsup-node --watch --dts",release:"release-it","publish:npm":"npm run rm && npm run build && ./publish.js"},devDependencies:{"@jest/reporters":"^29.7.0","@jest/types":"^29.6.3","@release-it/conventional-changelog":"^7.0.2","@types/archiver":"^6.0.3","@types/async-retry":"^1.4.9","@types/debug":"^4.1.12","@types/fs-extra":"^11.0.4","@types/getos":"^3.0.4","@types/lodash":"^4.17.13","@types/node":"^20.14.2","@types/proxy-from-env":"^1.0.4","@types/semver":"^7.5.8","@types/tmp":"^0.2.6","@types/unzipper":"^0.10.10","@types/uuid":"^9.0.8","@types/xml2js":"^0.4.14",jest:"^29.7.0",rimraf:"^5.0.7",tsup:"^8.1.0",typescript:"^5.7.2",vitest:"^2.1.4"},dependencies:{"@commander-js/extra-typings":"^12.1.0","@currents/commit-info":"1.0.1-beta.0",archiver:"^7.0.1","async-retry":"^1.3.3",axios:"^1.7.2","axios-retry":"^4.4.0",chalk:"^4.1.2",commander:"^11.1.0",debug:"^4.3.5",dotenv:"^16.4.5",execa:"^9.5.1","fs-extra":"^11.2.0",getos:"^3.2.1",glob:"^11.0.0","https-proxy-agent":"^7.0.4","jest-cli":"^29.7.0","jest-config":"^29.7.0",lodash:"^4.17.21",nanoid:"^3.3.4","pretty-ms":"^7.0.1","proxy-from-env":"^1.1.0",semver:"^7.6.0","source-map-support":"^0.5.21",tmp:"^0.2.3","tmp-promise":"^3.0.3","ts-pattern":"^5.5.0",unzipper:"^0.12.3",uuid:"^11.0.3",xml2js:"^0.6.2"},bin:{currents:"./dist/bin/index.js","currents-cli":"./dist/bin/index.js"},files:["dist","!**/*.map","!**/*/*.map"],keywords:["cloud test dashboard","test reporter","test results","currents","currents dashboard","ci"],exports:{".":{import:"./dist/index.js",require:"./dist/index.js",types:"./dist/index.d.ts"},"./discovery/jest":{import:"./dist/services/upload/discovery/jest/reporter.js",require:"./dist/services/upload/discovery/jest/reporter.js",types:"./dist/services/upload/discovery/jest/reporter.d.ts"},"./package.json":"./package.json"},"release-it":{npm:{publish:!1},github:{release:!0,releaseName:"${npm.name} v${version}"},plugins:{"@release-it/conventional-changelog":{preset:"angular",header:"# Changelog",ignoreVersion:!0,infile:"./CHANGELOG.md"}},git:{commitMessage:"chore: release ${npm.name} v${version}",tagName:"${npm.name}-v${version}"}}};var ae=xt.version;var Tt=require("@commander-js/extra-typings");var zn=[];function Ke(e){zn.push(e)}var _=d(require("chalk")),N=d(require("util"));var $e=require("debug"),Xn=d(require("fs-extra")),s=(0,$e.debug)("currents"),Zn=null;function bt(){$e.debug.enable("currents,currents:*")}function At(e){Zn=e}var St=[],Ut=[];var ce=(...e)=>{let t=N.default.format(...e);Ke(t),console.log(t)},ei=(...e)=>{let t=N.default.format(...e);Ke(t),console.error(t)},y=ce,C=(...e)=>{let t=N.default.format(...e);return Ut.push(t),s("WARNING: ",t),ce(_.default.bgYellow.black(" WARNING "),t)},ee=(...e)=>{let t=N.default.format(...vt(e));return s("WARNING: ",N.default.format(...e)),ce(_.default.bgYellow.black(" WARNING "),t)},me=(...e)=>ce(_.default.green.bold(N.default.format(...e))),f=(...e)=>{let t=N.default.format(...vt(e));return St.push(t),s("ERROR: ",N.default.format(...e)),ei(_.default.bgRed.white(" ERROR "),t)};var vt=e=>e.map(t=>t instanceof Error?t.message:t),pe=(e=2)=>console.log(Array(e).fill("").join(`
3
3
  `)),ca=_.default.cyan,ma=_.default.blueBright,pa=_.default.red,ua=_.default.yellow,da=_.default.green,la=_.default.gray,fa=_.default.white,ga=_.default.black,Ca=_.default.magenta,l=_.default.dim,ha=_.default.bold;var Jo=d(require("chalk"));var ue=class extends Error{};function Dt(e){return Object.entries(e??{}).reduce((t,[r,o])=>o===void 0?t:{...t,[r]:o},{})}function R(e,t){return"env"in e[t]&&e[t].env?e[t].env:""}function ri(e,t){return e[t].cli}function oi(e,t){return e[t].name}function L(e,t,r,o){let n={...Dt(o),...Dt(r())};return t.forEach(a=>{if(!n[a])throw f(`${oi(e,a)} is required for Currents Reporter. Use the following methods to set the value:
4
4
  - as environment variable: ${l(R(e,a))}
5
5
  - as CLI flag of the command: ${l(ri(e,a))}`),new ue("Missing required config variable")}),n}var ni={apiKey:{name:"Api Key",env:"CURRENTS_API_KEY",cli:"--api-key"},debug:{name:"Debug",env:"CURRENTS_DEBUG",cli:"--debug"}},ii={branch:{name:"Run Branch",cli:"--branch"},output:{name:"Output Path",env:"CURRENTS_OUTPUT",cli:"--output"},ciBuildId:{name:"CI Build ID",cli:"--ci-build-id"},projectId:{name:"Project ID",env:"CURRENTS_PROJECT_ID",cli:"--project-id"},tag:{name:"Run Tag",cli:"--tag"}},M={...ni,...ii};function Nt(){return{apiKey:process.env[M.apiKey.env],debug:!!process.env[M.debug.env]}}var si=s.extend("config"),ai=["apiKey","projectId"],Ve=null;function Lt(e){Ve=L(M,ai,Nt,e),si("Resolved config: %o",Ve)}function de(){return Ve}var q=d(require("fs-extra")),le=require("path"),Mt=require("uuid");async function $(e){try{return await q.default.readJson(e)}catch(t){throw f("Error while reading JSON file: %s",e,t),f}}async function x(e,t){try{return await q.default.writeFile(e,t,"utf8"),e}catch(r){throw f(`Error writing file at ${e}:`,r),r}}async function Bt(e,t){if(t){await q.default.ensureDir(e);return}let r=(0,le.dirname)(e);await q.default.ensureDir(r)}function ci(){let e=new Date().toISOString().replace(/[:.]/g,"-"),t=(0,Mt.v4)();return`${e}-${t}`}async function Ft(e,t){let r=ci(),o=(0,le.join)(e,t,r);return fe(o)}async function fe(e){try{return await q.default.ensureDir(e),s("Folder created",e),e}catch(t){throw f(`Failed to create folder at ${e}:`,t),t}}var kt=d(require("crypto"));function ge(e){return kt.createHash("sha256").update(e).digest("base64").slice(0,8).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}var Ce={};Yn(Ce,{getNanoid:()=>mi,userFacingNanoid:()=>qe});var Je=require("nanoid"),Gt="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",mi=(e=16)=>(0,Je.customAlphabet)(Gt,e)(),qe=(0,Je.customAlphabet)(Gt,12);var fr=require("fs/promises");var nr=d(require("lodash"));var Yt=d(require("axios")),Wt=d(require("axios-retry")),Qt=d(require("lodash"));var Ye=()=>process.env.CURRENTS_API_URL??"https://cy.currents.dev",Ht=()=>process.env.CURRENTS_REST_API_URL??"https://api.currents.dev",jt=()=>3e4;var We=require("axios"),Qe=d(require("pretty-ms"));var Kt=s.extend("http"),he=e=>[3*1e3,15*1e3,30*1e3][e-1],$t=e=>(Kt("isRetriableError: %o",{message:e.message,code:"code"in e?e.code:void 0,status:"response"in e?e.response?.status:void 0,headers:"response"in e?e.response?.headers:void 0,data:"response"in e?e.response?.data:void 0,isAxiosError:(0,We.isAxiosError)(e)}),"code"in e&&e.code&&["ECONNABORTED","ECONNREFUSED","ECONNRESET","ETIMEDOUT","ENETRESET"].includes(e.code)?!0:(0,We.isAxiosError)(e)?[429,502,503,504].includes(e.response?.status??0):!1),Ee=()=>3;function Vt(e,t,r){Kt("Network request '%s' failed: '%s'. Next attempt is in %s (%d/%d).",`${r.method?.toUpperCase()} ${r.url}`,t.message,(0,Qe.default)(he(e)),e,Ee()),C("Network request '%s' failed: '%s'. Next attempt is in %s (%d/%d).",`${r.method?.toUpperCase()} ${r.url}`,t.message,(0,Qe.default)(he(e)),e,Ee())}var Jt=s.extend("http");var ze={api:null,restApi:null};function pi(e){let t=Yt.default.create({baseURL:e==="api"?Ye():Ht(),timeout:jt(),transitional:{clarifyTimeoutError:!0}});return t.interceptors.request.use(r=>{let o=r["axios-retry"]?.retryCount??0;r.headers.get("Content-Type")||r.headers.set("Content-Type","application/json");let n={...Qt.default.pick(r,"method","url","headers"),data:Buffer.isBuffer(r.data)?"buffer":r.data};return o?Jt("network request retry: %o",qt({...n,isRetry:!0})):Jt("network request: %o",qt(n)),r}),(0,Wt.default)(t,{retries:Ee(),retryCondition:$t,retryDelay:he,shouldResetTimeout:!0,onRetry:Vt}),t}function zt(e){return ze[e]===null&&(ze[e]=pi(e)),ze[e]}function qt(e){return{method:e.method,baseUrl:Ye(),url:e.url,data:e.isRetry?"<retry>":ui(e.data),headers:{...e.headers,"x-currents-key":"***"}}}function ui(e){return e?.results?.raw?{...e,results:{...e.results,raw:"***"}}:e}var er=require("axios"),tr=d(require("lodash")),T=require("ts-pattern");function rr(e){(0,T.match)(e).when(er.isAxiosError,di).otherwise(()=>{C("Unexpected error while sending network request: %s",e)})}function di(e){return(0,T.match)(e).with({code:"ECONNABORTED"},()=>{C("Network connection aborted")}).with({code:"ECONNREFUSED"},()=>{C("Network connection aborted")}).with({code:"ECONNRESET"},()=>{C("Network connection reset")}).with({code:"ETIMEDOUT"},()=>{C("Network connection timeout")}).with({response:T.P.not(T.P.nullish)},t=>{li(t,{status:t.response.status,data:t.response.data})}).otherwise(t=>{C(`[currents] Unexpected network error: %s
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  "use strict";var Lt=Object.create;var y=Object.defineProperty;var yt=Object.getOwnPropertyDescriptor;var Bt=Object.getOwnPropertyNames;var bt=Object.getPrototypeOf,xt=Object.prototype.hasOwnProperty;var ue=(e,t)=>{for(var r in t)y(e,r,{get:t[r],enumerable:!0})},me=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Bt(t))!xt.call(e,o)&&o!==r&&y(e,o,{get:()=>t[o],enumerable:!(n=yt(t,o))||n.enumerable});return e};var c=(e,t,r)=>(r=e!=null?Lt(bt(e)):{},me(t||!e||!e.__esModule?y(r,"default",{value:e,enumerable:!0}):r,e)),vt=e=>me(y({},"__esModule",{value:!0}),e);var Mr={};ue(Mr,{handleCurrentsReport:()=>Dt});module.exports=vt(Mr);var pe=require("debug"),Mt=c(require("fs-extra")),i=(0,pe.debug)("currents"),wt=null;function le(e){wt=e}var B={};ue(B,{getNanoid:()=>Ft,userFacingNanoid:()=>q});var Y=require("nanoid"),ge="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",Ft=(e=16)=>(0,Y.customAlphabet)(ge,e)(),q=(0,Y.customAlphabet)(ge,12);var p=require("lodash");var b=i.extend("ci"),Ht=(e,...t)=>(0,p.chain)(t).compact().join(e).value(),kt=(e,t)=>(0,p.set)(e,(0,p.camelCase)(t),process.env[t]),u=e=>(0,p.transform)(e,kt,{}),Gt=()=>process.env.TF_BUILD&&process.env.TF_BUILD_BUILDNUMBER,jt=()=>process.env.TF_BUILD&&process.env.AZURE_HTTP_USER_AGENT,Vt=()=>(0,p.some)(process.env,(e,t)=>/^CODEBUILD_/.test(t)),Kt=()=>process.env.bamboo_buildNumber,Jt=()=>process.env.CI_NAME&&process.env.CI_NAME==="codeship"&&process.env.CODESHIP,$t=()=>process.env.CI_NAME&&process.env.CI_NAME==="codeship"&&!process.env.CODESHIP,Yt=()=>(0,p.some)(process.env,(e,t)=>/^CONCOURSE_/.test(t)),qt=()=>process.env.GITLAB_CI||process.env.CI_SERVER_NAME&&/^GitLab/.test(process.env.CI_SERVER_NAME),Qt=()=>process.env.GCP_PROJECT||process.env.GCLOUD_PROJECT||process.env.GOOGLE_CLOUD_PROJECT,Wt=()=>process.env.JENKINS_URL||process.env.JENKINS_HOME||process.env.JENKINS_VERSION||process.env.HUDSON_URL||process.env.HUDSON_HOME,zt=()=>process.env.WERCKER||process.env.WERCKER_MAIN_PIPELINE_STARTED,Xt={appveyor:"APPVEYOR",azure:jt,awsCodeBuild:Vt,bamboo:Kt,bitbucket:"BITBUCKET_BUILD_NUMBER",buildkite:"BUILDKITE",circle:"CIRCLECI",codeshipBasic:Jt,codeshipPro:$t,concourse:Yt,codeFresh:"CF_BUILD_ID",drone:"DRONE",githubActions:"GITHUB_ACTIONS",gitlab:qt,goCD:"GO_JOB_NAME",googleCloud:Qt,jenkins:Wt,semaphore:"SEMAPHORE",shippable:"SHIPPABLE",teamcity:"TEAMCITY_VERSION",teamfoundation:Gt,travis:"TRAVIS",wercker:zt,netlify:"NETLIFY",layerci:"LAYERCI"};function Zt(){let{env:e}=process;return(0,p.findKey)(Xt,t=>{if((0,p.isString)(t))return e[t];if((0,p.isFunction)(t))return t()})}var de=()=>({appveyor:u(["APPVEYOR_JOB_ID","APPVEYOR_ACCOUNT_NAME","APPVEYOR_PROJECT_SLUG","APPVEYOR_BUILD_NUMBER","APPVEYOR_BUILD_VERSION","APPVEYOR_PULL_REQUEST_NUMBER","APPVEYOR_PULL_REQUEST_HEAD_REPO_BRANCH"]),azure:u(["BUILD_BUILDID","BUILD_BUILDNUMBER","BUILD_CONTAINERID","BUILD_REPOSITORY_URI","SYSTEM_TEAMPROJECT","SYSTEM_COLLECTIONURI"]),awsCodeBuild:u(["CODEBUILD_BUILD_ID","CODEBUILD_BUILD_NUMBER","CODEBUILD_RESOLVED_SOURCE_VERSION","CODEBUILD_SOURCE_REPO_URL","CODEBUILD_SOURCE_VERSION"]),bamboo:u(["bamboo_buildNumber","bamboo_buildResultsUrl","bamboo_planRepository_repositoryUrl","bamboo_buildKey"]),bitbucket:u(["BITBUCKET_REPO_SLUG","BITBUCKET_REPO_OWNER","BITBUCKET_BUILD_NUMBER","BITBUCKET_PARALLEL_STEP","BITBUCKET_STEP_RUN_NUMBER","BITBUCKET_PR_ID","BITBUCKET_PR_DESTINATION_BRANCH","BITBUCKET_PR_DESTINATION_COMMIT"]),buildkite:u(["BUILDKITE_REPO","BUILDKITE_SOURCE","BUILDKITE_JOB_ID","BUILDKITE_BUILD_ID","BUILDKITE_BUILD_URL","BUILDKITE_BUILD_NUMBER","BUILDKITE_PULL_REQUEST","BUILDKITE_PULL_REQUEST_REPO","BUILDKITE_PULL_REQUEST_BASE_BRANCH"]),circle:u(["CIRCLE_JOB","CIRCLE_BUILD_NUM","CIRCLE_BUILD_URL","CIRCLE_PR_NUMBER","CIRCLE_PR_REPONAME","CIRCLE_PR_USERNAME","CIRCLE_COMPARE_URL","CIRCLE_WORKFLOW_ID","CIRCLE_WORKFLOW_WORKSPACE_ID","CIRCLE_PULL_REQUEST","CIRCLE_REPOSITORY_URL","CI_PULL_REQUEST","CIRCLE_NODE_INDEX","CIRCLE_NODE_TOTAL"]),codeshipBasic:u(["CI_BUILD_ID","CI_REPO_NAME","CI_BUILD_URL","CI_PROJECT_ID","CI_BUILD_NUMBER","CI_PULL_REQUEST"]),codeshipPro:u(["CI_BUILD_ID","CI_REPO_NAME","CI_PROJECT_ID"]),concourse:u(["BUILD_ID","BUILD_NAME","BUILD_JOB_NAME","BUILD_PIPELINE_NAME","BUILD_TEAM_NAME","ATC_EXTERNAL_URL"]),codeFresh:u(["CF_BUILD_ID","CF_BUILD_URL","CF_CURRENT_ATTEMPT","CF_STEP_NAME","CF_PIPELINE_NAME","CF_PIPELINE_TRIGGER_ID","CF_PULL_REQUEST_ID","CF_PULL_REQUEST_IS_FORK","CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_TARGET"]),drone:u(["DRONE_JOB_NUMBER","DRONE_BUILD_LINK","DRONE_BUILD_NUMBER","DRONE_PULL_REQUEST"]),githubActions:u(["GITHUB_WORKFLOW","GITHUB_ACTION","GITHUB_EVENT_NAME","GITHUB_RUN_ID","GITHUB_RUN_ATTEMPT","GITHUB_REPOSITORY"]),gitlab:u(["CI_PIPELINE_ID","CI_PIPELINE_URL","CI_BUILD_ID","CI_JOB_ID","CI_JOB_URL","CI_JOB_NAME","CI_NODE_INDEX","CI_NODE_TOTAL","GITLAB_HOST","CI_PROJECT_ID","CI_PROJECT_URL","CI_REPOSITORY_URL","CI_ENVIRONMENT_URL","CI_DEFAULT_BRANCH","RUN_ATTEMPT"]),goCD:u(["GO_SERVER_URL","GO_ENVIRONMENT_NAME","GO_PIPELINE_NAME","GO_PIPELINE_COUNTER","GO_PIPELINE_LABEL","GO_STAGE_NAME","GO_STAGE_COUNTER","GO_JOB_NAME","GO_TRIGGER_USER","GO_REVISION","GO_TO_REVISION","GO_FROM_REVISION","GO_MATERIAL_HAS_CHANGED"]),googleCloud:u(["BUILD_ID","PROJECT_ID","REPO_NAME","BRANCH_NAME","TAG_NAME","COMMIT_SHA","SHORT_SHA"]),jenkins:u(["BUILD_ID","BUILD_URL","BUILD_NUMBER","ghprbPullId"]),semaphore:u(["SEMAPHORE_BRANCH_ID","SEMAPHORE_BUILD_NUMBER","SEMAPHORE_CURRENT_JOB","SEMAPHORE_CURRENT_THREAD","SEMAPHORE_EXECUTABLE_UUID","SEMAPHORE_GIT_BRANCH","SEMAPHORE_GIT_DIR","SEMAPHORE_GIT_REF","SEMAPHORE_GIT_REF_TYPE","SEMAPHORE_GIT_REPO_SLUG","SEMAPHORE_GIT_SHA","SEMAPHORE_GIT_URL","SEMAPHORE_JOB_COUNT","SEMAPHORE_JOB_ID","SEMAPHORE_JOB_NAME","SEMAPHORE_JOB_UUID","SEMAPHORE_PIPELINE_ID","SEMAPHORE_PLATFORM","SEMAPHORE_PROJECT_DIR","SEMAPHORE_PROJECT_HASH_ID","SEMAPHORE_PROJECT_ID","SEMAPHORE_PROJECT_NAME","SEMAPHORE_PROJECT_UUID","SEMAPHORE_REPO_SLUG","SEMAPHORE_TRIGGER_SOURCE","SEMAPHORE_WORKFLOW_ID","PULL_REQUEST_NUMBER"]),shippable:u(["SHIPPABLE_BUILD_ID","SHIPPABLE_BUILD_NUMBER","SHIPPABLE_COMMIT_RANGE","SHIPPABLE_CONTAINER_NAME","SHIPPABLE_JOB_ID","SHIPPABLE_JOB_NUMBER","SHIPPABLE_REPO_SLUG","IS_FORK","IS_GIT_TAG","IS_PRERELEASE","IS_RELEASE","REPOSITORY_URL","REPO_FULL_NAME","REPO_NAME","BUILD_URL","BASE_BRANCH","HEAD_BRANCH","IS_PULL_REQUEST","PULL_REQUEST","PULL_REQUEST_BASE_BRANCH","PULL_REQUEST_REPO_FULL_NAME"]),teamcity:null,teamfoundation:u(["BUILD_BUILDID","BUILD_BUILDNUMBER","BUILD_CONTAINERID"]),travis:u(["TRAVIS_JOB_ID","TRAVIS_BUILD_ID","TRAVIS_BUILD_WEB_URL","TRAVIS_REPO_SLUG","TRAVIS_JOB_NUMBER","TRAVIS_EVENT_TYPE","TRAVIS_COMMIT_RANGE","TRAVIS_BUILD_NUMBER","TRAVIS_PULL_REQUEST","TRAVIS_PULL_REQUEST_BRANCH","TRAVIS_PULL_REQUEST_SHA"]),wercker:null,netlify:u(["BUILD_ID","CONTEXT","URL","DEPLOY_URL","DEPLOY_PRIME_URL","DEPLOY_ID"]),layerci:u(["LAYERCI_JOB_ID","LAYERCI_RUNNER_ID","RETRY_INDEX","LAYERCI_PULL_REQUEST","LAYERCI_REPO_NAME","LAYERCI_REPO_OWNER","LAYERCI_BRANCH","GIT_TAG"])}),er=()=>{let{env:e}=process;return{appveyor:{sha:e.APPVEYOR_REPO_COMMIT,branch:e.APPVEYOR_PULL_REQUEST_HEAD_REPO_BRANCH||e.APPVEYOR_REPO_BRANCH,message:Ht(`
2
- `,e.APPVEYOR_REPO_COMMIT_MESSAGE,e.APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDED),authorName:e.APPVEYOR_REPO_COMMIT_AUTHOR,authorEmail:e.APPVEYOR_REPO_COMMIT_AUTHOR_EMAIL},awsCodeBuild:{sha:e.CODEBUILD_RESOLVED_SOURCE_VERSION,remoteOrigin:e.CODEBUILD_SOURCE_REPO_URL},azure:{sha:e.BUILD_SOURCEVERSION,branch:e.BUILD_SOURCEBRANCHNAME,message:e.BUILD_SOURCEVERSIONMESSAGE,authorName:e.BUILD_SOURCEVERSIONAUTHOR,authorEmail:e.BUILD_REQUESTEDFOREMAIL},bamboo:{sha:e.bamboo_planRepository_revision,branch:e.bamboo_planRepository_branch,authorName:e.bamboo_planRepository_username,remoteOrigin:e.bamboo_planRepository_repositoryURL},bitbucket:{sha:e.BITBUCKET_COMMIT,branch:e.BITBUCKET_BRANCH},buildkite:{sha:e.BUILDKITE_COMMIT,branch:e.BUILDKITE_BRANCH,message:e.BUILDKITE_MESSAGE,authorName:e.BUILDKITE_BUILD_CREATOR,authorEmail:e.BUILDKITE_BUILD_CREATOR_EMAIL,remoteOrigin:e.BUILDKITE_REPO,defaultBranch:e.BUILDKITE_PIPELINE_DEFAULT_BRANCH},circle:{sha:e.CIRCLE_SHA1,branch:e.CIRCLE_BRANCH,authorName:e.CIRCLE_USERNAME,remoteOrigin:e.CIRCLE_REPOSITORY_URL},codeshipBasic:{sha:e.CI_COMMIT_ID,branch:e.CI_BRANCH,message:e.CI_COMMIT_MESSAGE,authorName:e.CI_COMMITTER_NAME,authorEmail:e.CI_COMMITTER_EMAIL},codeshipPro:{sha:e.CI_COMMIT_ID,branch:e.CI_BRANCH,message:e.CI_COMMIT_MESSAGE,authorName:e.CI_COMMITTER_NAME,authorEmail:e.CI_COMMITTER_EMAIL},codeFresh:{sha:e.CF_REVISION,branch:e.CF_BRANCH,message:e.CF_COMMIT_MESSAGE,authorName:e.CF_COMMIT_AUTHOR},drone:{sha:e.DRONE_COMMIT_SHA,branch:e.DRONE_SOURCE_BRANCH,message:e.DRONE_COMMIT_MESSAGE,authorName:e.DRONE_COMMIT_AUTHOR,authorEmail:e.DRONE_COMMIT_AUTHOR_EMAIL,remoteOrigin:e.DRONE_GIT_HTTP_URL,defaultBranch:e.DRONE_REPO_BRANCH},githubActions:{sha:e.GITHUB_SHA,branch:e.GH_BRANCH||e.GITHUB_REF,defaultBranch:e.GITHUB_BASE_REF,remoteBranch:e.GITHUB_HEAD_REF,runAttempt:e.GITHUB_RUN_ATTEMPT},gitlab:{sha:e.CI_COMMIT_SHA,branch:e.CI_COMMIT_REF_NAME,message:e.CI_COMMIT_MESSAGE,authorName:e.GITLAB_USER_NAME,authorEmail:e.GITLAB_USER_EMAIL,remoteOrigin:e.CI_REPOSITORY_URL,defaultBranch:e.CI_DEFAULT_BRANCH},googleCloud:{sha:e.COMMIT_SHA,branch:e.BRANCH_NAME},jenkins:{sha:e.GIT_COMMIT,branch:e.GIT_BRANCH},semaphore:{sha:e.SEMAPHORE_GIT_SHA,branch:e.SEMAPHORE_GIT_BRANCH,remoteOrigin:e.SEMAPHORE_GIT_REPO_SLUG},shippable:{sha:e.COMMIT,branch:e.BRANCH,message:e.COMMIT_MESSAGE,authorName:e.COMMITTER},snap:null,teamcity:null,teamfoundation:{sha:e.BUILD_SOURCEVERSION,branch:e.BUILD_SOURCEBRANCHNAME,message:e.BUILD_SOURCEVERSIONMESSAGE,authorName:e.BUILD_SOURCEVERSIONAUTHOR},travis:{sha:e.TRAVIS_PULL_REQUEST_SHA||e.TRAVIS_COMMIT,branch:e.TRAVIS_PULL_REQUEST_BRANCH||e.TRAVIS_BRANCH,message:e.TRAVIS_COMMIT_MESSAGE},wercker:null,netlify:{sha:e.COMMIT_REF,branch:e.BRANCH,remoteOrigin:e.REPOSITORY_URL},layerci:{sha:e.GIT_COMMIT,branch:e.LAYERCI_BRANCH,message:e.GIT_COMMIT_TITLE}}},Ee=e=>{let t=fe();return t?(0,p.chain)(e()).get(t).value():{}};function tr(){return(0,p.chain)(de()).omitBy(p.isNull).keys().value()}function rr(e){return e&&tr().includes(e)}function fe(){let e=Zt();return b("detected CI provider name: %s",e),e||null}function or(){return Ee(de)}function _e(){return Ee(er)}function Re(e){let t=or(),r=fe(),n=nr(e,r);return b("detected CI provider: %s",r),b("detected CI params: %O",t),b("detected CI build ID: %o",n),{params:t,provider:r,ciBuildId:n}}function nr(e,t){return e?{source:"user",value:e}:rr(t)?{source:"server",value:null}:{source:"random",value:`auto:${q()}`}}var Te=require("@currents/commit-info"),Ce=require("lodash");var x=require("lodash");var Q=i.extend("ci-git");function Ie(e){Q("git commit existing info: %O",e);let t=_e();Q("commit info from provider environment variables: %O",t);let r=(0,x.transform)(e,(n,o,a)=>{let m=o||(t?t[a]:null);return n[a]=(0,x.defaultTo)(m,null)});return Q("combined git and environment variables from provider: %O",r),r}var sr=async()=>{let e=await(0,Te.commitInfo)();return Ie({branch:e.branch,remoteOrigin:e.remote,authorEmail:e.email,authorName:e.author,message:e.message,sha:e.sha,ghaEventData:e.ghaEventData})},he=(0,Ce.memoize)(sr);var Oe=c(require("getos")),Se=require("lodash"),R=require("os"),Pe=require("util"),ir=async()=>{if((0,R.platform)()==="linux")try{let e=await(0,Pe.promisify)(Oe.default)();return"dist"in e&&"release"in e?[e.dist,e.release].join(" - "):(0,R.release)()}catch{return(0,R.release)()}return(0,R.release)()},ar=async()=>{let e=await ir();return{osName:(0,R.platform)(),osVersion:e,osCpus:[],osMemory:{free:(0,R.freemem)(),total:(0,R.totalmem)()}}},Ue=(0,Se.memoize)(ar);var Ae={name:"@currents/cmd",version:"1.3.0",main:"./dist/index.js",author:"Currents Software Inc",license:"MIT",description:"Currents CLI tools",scripts:{test:"vitest",rm:"rimraf dist",lint:'TIMING=1 eslint "**/*.ts*"',types:"tsc --noEmit",build:"tsup-node --minify --dts",dev:"tsup-node --watch --dts",release:"release-it","publish:npm":"npm run rm && npm run build && ./publish.js"},devDependencies:{"@jest/reporters":"^29.7.0","@jest/types":"^29.6.3","@release-it/conventional-changelog":"^7.0.2","@types/archiver":"^6.0.3","@types/async-retry":"^1.4.9","@types/debug":"^4.1.12","@types/fs-extra":"^11.0.4","@types/getos":"^3.0.4","@types/lodash":"^4.17.13","@types/node":"^20.14.2","@types/proxy-from-env":"^1.0.4","@types/semver":"^7.5.8","@types/tmp":"^0.2.6","@types/unzipper":"^0.10.10","@types/uuid":"^9.0.8","@types/xml2js":"^0.4.14",jest:"^29.7.0",rimraf:"^5.0.7",tsup:"^8.1.0",typescript:"^5.7.2",vitest:"^2.1.4"},dependencies:{"@commander-js/extra-typings":"^11.1.0","@currents/commit-info":"1.0.1-beta.0",archiver:"^7.0.1","async-retry":"^1.3.3",axios:"^1.7.2","axios-retry":"^4.4.0",commander:"^11.1.0",debug:"^4.3.5",dotenv:"^16.4.5",execa:"^9.5.1","fs-extra":"^11.2.0",getos:"^3.2.1",glob:"^11.0.0","https-proxy-agent":"^7.0.4","jest-cli":"^29.7.0","jest-config":"^29.7.0",lodash:"^4.17.21",nanoid:"^3.3.4","pretty-ms":"^7.0.1","proxy-from-env":"^1.1.0",semver:"^7.6.0","source-map-support":"^0.5.21",tmp:"^0.2.3","tmp-promise":"^3.0.3","ts-pattern":"^5.5.0",unzipper:"^0.12.3",uuid:"^11.0.3",xml2js:"^0.6.2"},bin:{currents:"./dist/bin/index.js","currents-cli":"./dist/bin/index.js"},files:["dist","!**/*.map","!**/*/*.map"],keywords:["cloud test dashboard","test reporter","test results","currents","currents dashboard","ci"],exports:{".":{import:"./dist/index.js",require:"./dist/index.js",types:"./dist/index.d.ts"},"./discovery/jest":{import:"./dist/services/upload/discovery/jest/reporter.js",require:"./dist/services/upload/discovery/jest/reporter.js",types:"./dist/services/upload/discovery/jest/reporter.d.ts"},"./package.json":"./package.json"},"release-it":{npm:{publish:!1},github:{release:!0,releaseName:"${npm.name} v${version}"},plugins:{"@release-it/conventional-changelog":{preset:"angular",header:"# Changelog",ignoreVersion:!0,infile:"./CHANGELOG.md"}},git:{commitMessage:"chore: release ${npm.name} v${version}",tagName:"${npm.name}-v${version}"}}};var De=Ae.version;var ur=[];function W(e){ur.push(e)}var _=c(require("chalk")),A=c(require("util"));var Ne=[],Le=[];var ye=(...e)=>{let t=A.default.format(...e);W(t),console.log(t)},mr=(...e)=>{let t=A.default.format(...e);W(t),console.error(t)},z=ye,g=(...e)=>{let t=A.default.format(...e);return Le.push(t),i("WARNING: ",t),ye(_.default.bgYellow.black(" WARNING "),t)};var d=(...e)=>{let t=A.default.format(...pr(e));return Ne.push(t),i("ERROR: ",A.default.format(...e)),mr(_.default.bgRed.white(" ERROR "),t)};var pr=e=>e.map(t=>t instanceof Error?t.message:t),v=(e=2)=>console.log(Array(e).fill("").join(`
2
+ `,e.APPVEYOR_REPO_COMMIT_MESSAGE,e.APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDED),authorName:e.APPVEYOR_REPO_COMMIT_AUTHOR,authorEmail:e.APPVEYOR_REPO_COMMIT_AUTHOR_EMAIL},awsCodeBuild:{sha:e.CODEBUILD_RESOLVED_SOURCE_VERSION,remoteOrigin:e.CODEBUILD_SOURCE_REPO_URL},azure:{sha:e.BUILD_SOURCEVERSION,branch:e.BUILD_SOURCEBRANCHNAME,message:e.BUILD_SOURCEVERSIONMESSAGE,authorName:e.BUILD_SOURCEVERSIONAUTHOR,authorEmail:e.BUILD_REQUESTEDFOREMAIL},bamboo:{sha:e.bamboo_planRepository_revision,branch:e.bamboo_planRepository_branch,authorName:e.bamboo_planRepository_username,remoteOrigin:e.bamboo_planRepository_repositoryURL},bitbucket:{sha:e.BITBUCKET_COMMIT,branch:e.BITBUCKET_BRANCH},buildkite:{sha:e.BUILDKITE_COMMIT,branch:e.BUILDKITE_BRANCH,message:e.BUILDKITE_MESSAGE,authorName:e.BUILDKITE_BUILD_CREATOR,authorEmail:e.BUILDKITE_BUILD_CREATOR_EMAIL,remoteOrigin:e.BUILDKITE_REPO,defaultBranch:e.BUILDKITE_PIPELINE_DEFAULT_BRANCH},circle:{sha:e.CIRCLE_SHA1,branch:e.CIRCLE_BRANCH,authorName:e.CIRCLE_USERNAME,remoteOrigin:e.CIRCLE_REPOSITORY_URL},codeshipBasic:{sha:e.CI_COMMIT_ID,branch:e.CI_BRANCH,message:e.CI_COMMIT_MESSAGE,authorName:e.CI_COMMITTER_NAME,authorEmail:e.CI_COMMITTER_EMAIL},codeshipPro:{sha:e.CI_COMMIT_ID,branch:e.CI_BRANCH,message:e.CI_COMMIT_MESSAGE,authorName:e.CI_COMMITTER_NAME,authorEmail:e.CI_COMMITTER_EMAIL},codeFresh:{sha:e.CF_REVISION,branch:e.CF_BRANCH,message:e.CF_COMMIT_MESSAGE,authorName:e.CF_COMMIT_AUTHOR},drone:{sha:e.DRONE_COMMIT_SHA,branch:e.DRONE_SOURCE_BRANCH,message:e.DRONE_COMMIT_MESSAGE,authorName:e.DRONE_COMMIT_AUTHOR,authorEmail:e.DRONE_COMMIT_AUTHOR_EMAIL,remoteOrigin:e.DRONE_GIT_HTTP_URL,defaultBranch:e.DRONE_REPO_BRANCH},githubActions:{sha:e.GITHUB_SHA,branch:e.GH_BRANCH||e.GITHUB_REF,defaultBranch:e.GITHUB_BASE_REF,remoteBranch:e.GITHUB_HEAD_REF,runAttempt:e.GITHUB_RUN_ATTEMPT},gitlab:{sha:e.CI_COMMIT_SHA,branch:e.CI_COMMIT_REF_NAME,message:e.CI_COMMIT_MESSAGE,authorName:e.GITLAB_USER_NAME,authorEmail:e.GITLAB_USER_EMAIL,remoteOrigin:e.CI_REPOSITORY_URL,defaultBranch:e.CI_DEFAULT_BRANCH},googleCloud:{sha:e.COMMIT_SHA,branch:e.BRANCH_NAME},jenkins:{sha:e.GIT_COMMIT,branch:e.GIT_BRANCH},semaphore:{sha:e.SEMAPHORE_GIT_SHA,branch:e.SEMAPHORE_GIT_BRANCH,remoteOrigin:e.SEMAPHORE_GIT_REPO_SLUG},shippable:{sha:e.COMMIT,branch:e.BRANCH,message:e.COMMIT_MESSAGE,authorName:e.COMMITTER},snap:null,teamcity:null,teamfoundation:{sha:e.BUILD_SOURCEVERSION,branch:e.BUILD_SOURCEBRANCHNAME,message:e.BUILD_SOURCEVERSIONMESSAGE,authorName:e.BUILD_SOURCEVERSIONAUTHOR},travis:{sha:e.TRAVIS_PULL_REQUEST_SHA||e.TRAVIS_COMMIT,branch:e.TRAVIS_PULL_REQUEST_BRANCH||e.TRAVIS_BRANCH,message:e.TRAVIS_COMMIT_MESSAGE},wercker:null,netlify:{sha:e.COMMIT_REF,branch:e.BRANCH,remoteOrigin:e.REPOSITORY_URL},layerci:{sha:e.GIT_COMMIT,branch:e.LAYERCI_BRANCH,message:e.GIT_COMMIT_TITLE}}},Ee=e=>{let t=fe();return t?(0,p.chain)(e()).get(t).value():{}};function tr(){return(0,p.chain)(de()).omitBy(p.isNull).keys().value()}function rr(e){return e&&tr().includes(e)}function fe(){let e=Zt();return b("detected CI provider name: %s",e),e||null}function or(){return Ee(de)}function _e(){return Ee(er)}function Re(e){let t=or(),r=fe(),n=nr(e,r);return b("detected CI provider: %s",r),b("detected CI params: %O",t),b("detected CI build ID: %o",n),{params:t,provider:r,ciBuildId:n}}function nr(e,t){return e?{source:"user",value:e}:rr(t)?{source:"server",value:null}:{source:"random",value:`auto:${q()}`}}var Te=require("@currents/commit-info"),Ce=require("lodash");var x=require("lodash");var Q=i.extend("ci-git");function Ie(e){Q("git commit existing info: %O",e);let t=_e();Q("commit info from provider environment variables: %O",t);let r=(0,x.transform)(e,(n,o,a)=>{let m=o||(t?t[a]:null);return n[a]=(0,x.defaultTo)(m,null)});return Q("combined git and environment variables from provider: %O",r),r}var sr=async()=>{let e=await(0,Te.commitInfo)();return Ie({branch:e.branch,remoteOrigin:e.remote,authorEmail:e.email,authorName:e.author,message:e.message,sha:e.sha,ghaEventData:e.ghaEventData})},he=(0,Ce.memoize)(sr);var Oe=c(require("getos")),Se=require("lodash"),R=require("os"),Pe=require("util"),ir=async()=>{if((0,R.platform)()==="linux")try{let e=await(0,Pe.promisify)(Oe.default)();return"dist"in e&&"release"in e?[e.dist,e.release].join(" - "):(0,R.release)()}catch{return(0,R.release)()}return(0,R.release)()},ar=async()=>{let e=await ir();return{osName:(0,R.platform)(),osVersion:e,osCpus:[],osMemory:{free:(0,R.freemem)(),total:(0,R.totalmem)()}}},Ue=(0,Se.memoize)(ar);var Ae={name:"@currents/cmd",version:"1.4.0",main:"./dist/index.js",author:"Currents Software Inc",license:"MIT",description:"Currents CLI tools",scripts:{test:"vitest",rm:"rimraf dist",lint:'TIMING=1 eslint "**/*.ts*"',types:"tsc --noEmit",build:"tsup-node --minify --dts",dev:"tsup-node --watch --dts",release:"release-it","publish:npm":"npm run rm && npm run build && ./publish.js"},devDependencies:{"@jest/reporters":"^29.7.0","@jest/types":"^29.6.3","@release-it/conventional-changelog":"^7.0.2","@types/archiver":"^6.0.3","@types/async-retry":"^1.4.9","@types/debug":"^4.1.12","@types/fs-extra":"^11.0.4","@types/getos":"^3.0.4","@types/lodash":"^4.17.13","@types/node":"^20.14.2","@types/proxy-from-env":"^1.0.4","@types/semver":"^7.5.8","@types/tmp":"^0.2.6","@types/unzipper":"^0.10.10","@types/uuid":"^9.0.8","@types/xml2js":"^0.4.14",jest:"^29.7.0",rimraf:"^5.0.7",tsup:"^8.1.0",typescript:"^5.7.2",vitest:"^2.1.4"},dependencies:{"@commander-js/extra-typings":"^12.1.0","@currents/commit-info":"1.0.1-beta.0",archiver:"^7.0.1","async-retry":"^1.3.3",axios:"^1.7.2","axios-retry":"^4.4.0",chalk:"^4.1.2",commander:"^11.1.0",debug:"^4.3.5",dotenv:"^16.4.5",execa:"^9.5.1","fs-extra":"^11.2.0",getos:"^3.2.1",glob:"^11.0.0","https-proxy-agent":"^7.0.4","jest-cli":"^29.7.0","jest-config":"^29.7.0",lodash:"^4.17.21",nanoid:"^3.3.4","pretty-ms":"^7.0.1","proxy-from-env":"^1.1.0",semver:"^7.6.0","source-map-support":"^0.5.21",tmp:"^0.2.3","tmp-promise":"^3.0.3","ts-pattern":"^5.5.0",unzipper:"^0.12.3",uuid:"^11.0.3",xml2js:"^0.6.2"},bin:{currents:"./dist/bin/index.js","currents-cli":"./dist/bin/index.js"},files:["dist","!**/*.map","!**/*/*.map"],keywords:["cloud test dashboard","test reporter","test results","currents","currents dashboard","ci"],exports:{".":{import:"./dist/index.js",require:"./dist/index.js",types:"./dist/index.d.ts"},"./discovery/jest":{import:"./dist/services/upload/discovery/jest/reporter.js",require:"./dist/services/upload/discovery/jest/reporter.js",types:"./dist/services/upload/discovery/jest/reporter.d.ts"},"./package.json":"./package.json"},"release-it":{npm:{publish:!1},github:{release:!0,releaseName:"${npm.name} v${version}"},plugins:{"@release-it/conventional-changelog":{preset:"angular",header:"# Changelog",ignoreVersion:!0,infile:"./CHANGELOG.md"}},git:{commitMessage:"chore: release ${npm.name} v${version}",tagName:"${npm.name}-v${version}"}}};var De=Ae.version;var ur=[];function W(e){ur.push(e)}var _=c(require("chalk")),A=c(require("util"));var Ne=[],Le=[];var ye=(...e)=>{let t=A.default.format(...e);W(t),console.log(t)},mr=(...e)=>{let t=A.default.format(...e);W(t),console.error(t)},z=ye,g=(...e)=>{let t=A.default.format(...e);return Le.push(t),i("WARNING: ",t),ye(_.default.bgYellow.black(" WARNING "),t)};var d=(...e)=>{let t=A.default.format(...pr(e));return Ne.push(t),i("ERROR: ",A.default.format(...e)),mr(_.default.bgRed.white(" ERROR "),t)};var pr=e=>e.map(t=>t instanceof Error?t.message:t),v=(e=2)=>console.log(Array(e).fill("").join(`
3
3
  `)),_o=_.default.cyan,Ro=_.default.blueBright,Io=_.default.red,To=_.default.yellow,Co=_.default.green,ho=_.default.gray,Oo=_.default.white,So=_.default.black,Po=_.default.magenta,D=_.default.dim,Uo=_.default.bold;var X=c(require("fs-extra")),Be=require("path"),gr=require("uuid");async function P(e){try{return await X.default.readJson(e)}catch(t){throw d("Error while reading JSON file: %s",e,t),d}}async function Z(e,t){try{return await X.default.writeFile(e,t,"utf8"),e}catch(r){throw d(`Error writing file at ${e}:`,r),r}}var dr=c(require("crypto"));var Ut=require("lodash"),K=c(require("path")),At=c(require("semver"));var We=c(require("lodash"));var ke=c(require("axios")),Ge=c(require("axios-retry")),je=c(require("lodash"));var ee=()=>process.env.CURRENTS_API_URL??"https://cy.currents.dev",be=()=>process.env.CURRENTS_REST_API_URL??"https://api.currents.dev",xe=()=>3e4;var te=require("axios"),re=c(require("pretty-ms"));var ve=i.extend("http"),M=e=>[3*1e3,15*1e3,30*1e3][e-1],Me=e=>(ve("isRetriableError: %o",{message:e.message,code:"code"in e?e.code:void 0,status:"response"in e?e.response?.status:void 0,headers:"response"in e?e.response?.headers:void 0,data:"response"in e?e.response?.data:void 0,isAxiosError:(0,te.isAxiosError)(e)}),"code"in e&&e.code&&["ECONNABORTED","ECONNREFUSED","ECONNRESET","ETIMEDOUT","ENETRESET"].includes(e.code)?!0:(0,te.isAxiosError)(e)?[429,502,503,504].includes(e.response?.status??0):!1),w=()=>3;function we(e,t,r){ve("Network request '%s' failed: '%s'. Next attempt is in %s (%d/%d).",`${r.method?.toUpperCase()} ${r.url}`,t.message,(0,re.default)(M(e)),e,w()),g("Network request '%s' failed: '%s'. Next attempt is in %s (%d/%d).",`${r.method?.toUpperCase()} ${r.url}`,t.message,(0,re.default)(M(e)),e,w())}var Fe=i.extend("http");var oe={api:null,restApi:null};function Er(e){let t=ke.default.create({baseURL:e==="api"?ee():be(),timeout:xe(),transitional:{clarifyTimeoutError:!0}});return t.interceptors.request.use(r=>{let n=r["axios-retry"]?.retryCount??0;r.headers.get("Content-Type")||r.headers.set("Content-Type","application/json");let o={...je.default.pick(r,"method","url","headers"),data:Buffer.isBuffer(r.data)?"buffer":r.data};return n?Fe("network request retry: %o",He({...o,isRetry:!0})):Fe("network request: %o",He(o)),r}),(0,Ge.default)(t,{retries:w(),retryCondition:Me,retryDelay:M,shouldResetTimeout:!0,onRetry:we}),t}function Ve(e){return oe[e]===null&&(oe[e]=Er(e)),oe[e]}function He(e){return{method:e.method,baseUrl:ee(),url:e.url,data:e.isRetry?"<retry>":fr(e.data),headers:{...e.headers,"x-currents-key":"***"}}}function fr(e){return e?.results?.raw?{...e,results:{...e.results,raw:"***"}}:e}var $e=require("axios"),Ye=c(require("lodash")),E=require("ts-pattern");function qe(e){(0,E.match)(e).when($e.isAxiosError,_r).otherwise(()=>{g("Unexpected error while sending network request: %s",e)})}function _r(e){return(0,E.match)(e).with({code:"ECONNABORTED"},()=>{g("Network connection aborted")}).with({code:"ECONNREFUSED"},()=>{g("Network connection aborted")}).with({code:"ECONNRESET"},()=>{g("Network connection reset")}).with({code:"ETIMEDOUT"},()=>{g("Network connection timeout")}).with({response:E.P.not(E.P.nullish)},t=>{Rr(t,{status:t.response.status,data:t.response.data})}).otherwise(t=>{g(`[currents] Unexpected network error: %s
4
4
  %O`,e.message,{method:e.response?.config.method,url:e.response?.config.url,status:e.response?.status,payload:e.response?.config.data})})}function Rr(e,{status:t,data:r}){(0,E.match)(t).with(401,()=>{g(`[currents] ${e.response?.config.method} ${e.response?.config.url}} - 401 Unauthorized Request from cloud service`)}).with(400,()=>{g(`[currents] ${e.response?.config.method} ${e.response?.config.url} - 400 Bad Request from cloud service:
5
5
  %o`,r)}).with(429,()=>{g(`[currents] ${e.response?.config.method} ${e.response?.config.url} - 429 Too Many Requests from cloud service`)}).with(422,()=>{Ir(e,r)}).otherwise(()=>{g(`[currents] Unexpected network response: %s
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@currents/cmd",
3
- "version": "1.3.0",
3
+ "version": "1.4.0",
4
4
  "main": "./dist/index.js",
5
5
  "author": "Currents Software Inc",
6
6
  "license": "MIT",
@@ -39,12 +39,13 @@
39
39
  "vitest": "^2.1.4"
40
40
  },
41
41
  "dependencies": {
42
- "@commander-js/extra-typings": "^11.1.0",
42
+ "@commander-js/extra-typings": "^12.1.0",
43
43
  "@currents/commit-info": "1.0.1-beta.0",
44
44
  "archiver": "^7.0.1",
45
45
  "async-retry": "^1.3.3",
46
46
  "axios": "^1.7.2",
47
47
  "axios-retry": "^4.4.0",
48
+ "chalk": "^4.1.2",
48
49
  "commander": "^11.1.0",
49
50
  "debug": "^4.3.5",
50
51
  "dotenv": "^16.4.5",