@qlover/fe-release 2.3.3 → 2.3.4

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/cli.cjs CHANGED
@@ -1,2 +1,2 @@
1
1
  #! /usr/bin/env node
2
- "use strict";var e=require("commander"),r=require("semver"),o=require("./index.cjs");require("@qlover/scripts-context"),require("@qlover/env-loader"),require("@qlover/fe-corekit"),require("@octokit/rest"),require("gitlog"),require("node:path"),require("find-workspaces"),require("fs"),require("path"),require("node:module"),require("node:url"),require("p-limit");const t=["patch","minor","major"],n=e=>e.split(",").filter((e=>null!=e&&""!=e));(async function(){const{shared:i,...a}=function(){const i=new e.Command;return i.version("2.3.3","-v, --version","Show version").description("A tool for releasing front-end projects, supporting multiple release modes and configurations, simplifying the release process and improving efficiency.").option("-d, --dry-run","Do not touch or write anything, but show the commands").option("-V, --verbose","Show more information").option("-p, --publish-path <publishPath>","The path of the package to release, map to feConfig.release.publishPath").option("-b, --branch-name <branchName>","The branch name of the release, map to feConfig.release.branchName, default(release-${pkgName}-${tagName})").option("-s, --source-branch <sourceBranch>","The source branch of the release").option("-i, --changelog.increment <increment>","The increment of the release",(e=>{if(!t.includes(e)&&!r.valid(e))throw new Error(`Invalid increment(-i) Must be one of [${t.join(", ")}] or valid version string(semver)`);return e}),"patch").option("--changelog.skip","Whether to skip the changelog").option("--changelog.ignore-non-updated-packages","Whether to ignore non updated packages").option("--changelog.skip-changeset","Whether to skip the changeset").option("--githubPR.skip","Whether to skip the githubPR").option("--packages-directories <packagesDirectories>","The packages that have been changed, multiple values use `,` to split, map to feConfig.release.packagesDirectories",n).option("--githubPR.dry-run-create-PR","Whether to dry run the creation of the pull request").option("--githubPR.push-change-labels","Whether to push the changed labels to the release PR").option("-P, --githubPR.release-PR","Create a release PR").option("-l, --workspaces.change-labels <changeLabels>","The change labels of the release, multiple values use `,` to split",n),i.parse(),o.reduceOptions(i.opts(),"shared")}(),{dryRun:s,verbose:h,...c}=i,p=Object.assign(a,{});await new o.ReleaseTask({dryRun:s,verbose:h,options:p,shared:c}).exec()})().catch((e=>{console.error(e.message),process.exit(1)}));
2
+ "use strict";var e=require("commander"),r=require("semver"),o=require("./index.cjs");require("@qlover/scripts-context"),require("@qlover/env-loader"),require("@qlover/fe-corekit"),require("@octokit/rest"),require("gitlog"),require("node:path"),require("find-workspaces"),require("fs"),require("path"),require("node:module"),require("node:url"),require("p-limit");const t=["patch","minor","major"],n=e=>e.split(",").filter((e=>null!=e&&""!=e));(async function(){const{shared:i,...a}=function(){const i=new e.Command;return i.version("2.3.4","-v, --version","Show version").description("A tool for releasing front-end projects, supporting multiple release modes and configurations, simplifying the release process and improving efficiency.").option("-d, --dry-run","Do not touch or write anything, but show the commands").option("-V, --verbose","Show more information").option("-p, --publish-path <publishPath>","The path of the package to release, map to feConfig.release.publishPath").option("-b, --branch-name <branchName>","The branch name of the release, map to feConfig.release.branchName, default(release-${pkgName}-${tagName})").option("-s, --source-branch <sourceBranch>","The source branch of the release").option("-i, --changelog.increment <increment>","The increment of the release",(e=>{if(!t.includes(e)&&!r.valid(e))throw new Error(`Invalid increment(-i) Must be one of [${t.join(", ")}] or valid version string(semver)`);return e}),"patch").option("--changelog.skip","Whether to skip the changelog").option("--changelog.ignore-non-updated-packages","Whether to ignore non updated packages").option("--changelog.skip-changeset","Whether to skip the changeset").option("--githubPR.skip","Whether to skip the githubPR").option("--packages-directories <packagesDirectories>","The packages that have been changed, multiple values use `,` to split, map to feConfig.release.packagesDirectories",n).option("--githubPR.dry-run-create-PR","Whether to dry run the creation of the pull request").option("--githubPR.push-change-labels","Whether to push the changed labels to the release PR").option("-P, --githubPR.release-PR","Create a release PR").option("-l, --workspaces.change-labels <changeLabels>","The change labels of the release, multiple values use `,` to split",n),i.parse(),o.reduceOptions(i.opts(),"shared")}(),{dryRun:s,verbose:h,...c}=i,p=Object.assign(a,{});await new o.ReleaseTask({dryRun:s,verbose:h,options:p,shared:c}).exec()})().catch((e=>{console.error(e.message),process.exit(1)}));
package/dist/cli.js CHANGED
@@ -1,2 +1,2 @@
1
1
  #! /usr/bin/env node
2
- import{Command as e}from"commander";import o from"semver";import{ReleaseTask as t,reduceOptions as r}from"./index.js";import"@qlover/scripts-context";import"@qlover/env-loader";import"@qlover/fe-corekit";import"@octokit/rest";import"gitlog";import"node:path";import"find-workspaces";import"fs";import"path";import"node:module";import"node:url";import"p-limit";const n=["patch","minor","major"],i=e=>e.split(",").filter((e=>null!=e&&""!=e));(async function(){const{shared:a,...s}=function(){const t=new e;return t.version("2.3.3","-v, --version","Show version").description("A tool for releasing front-end projects, supporting multiple release modes and configurations, simplifying the release process and improving efficiency.").option("-d, --dry-run","Do not touch or write anything, but show the commands").option("-V, --verbose","Show more information").option("-p, --publish-path <publishPath>","The path of the package to release, map to feConfig.release.publishPath").option("-b, --branch-name <branchName>","The branch name of the release, map to feConfig.release.branchName, default(release-${pkgName}-${tagName})").option("-s, --source-branch <sourceBranch>","The source branch of the release").option("-i, --changelog.increment <increment>","The increment of the release",(e=>{if(!n.includes(e)&&!o.valid(e))throw new Error(`Invalid increment(-i) Must be one of [${n.join(", ")}] or valid version string(semver)`);return e}),"patch").option("--changelog.skip","Whether to skip the changelog").option("--changelog.ignore-non-updated-packages","Whether to ignore non updated packages").option("--changelog.skip-changeset","Whether to skip the changeset").option("--githubPR.skip","Whether to skip the githubPR").option("--packages-directories <packagesDirectories>","The packages that have been changed, multiple values use `,` to split, map to feConfig.release.packagesDirectories",i).option("--githubPR.dry-run-create-PR","Whether to dry run the creation of the pull request").option("--githubPR.push-change-labels","Whether to push the changed labels to the release PR").option("-P, --githubPR.release-PR","Create a release PR").option("-l, --workspaces.change-labels <changeLabels>","The change labels of the release, multiple values use `,` to split",i),t.parse(),r(t.opts(),"shared")}(),{dryRun:p,verbose:h,...c}=a,l=Object.assign(s,{});await new t({dryRun:p,verbose:h,options:l,shared:c}).exec()})().catch((e=>{console.error(e.message),process.exit(1)}));
2
+ import{Command as e}from"commander";import o from"semver";import{ReleaseTask as t,reduceOptions as r}from"./index.js";import"@qlover/scripts-context";import"@qlover/env-loader";import"@qlover/fe-corekit";import"@octokit/rest";import"gitlog";import"node:path";import"find-workspaces";import"fs";import"path";import"node:module";import"node:url";import"p-limit";const n=["patch","minor","major"],i=e=>e.split(",").filter((e=>null!=e&&""!=e));(async function(){const{shared:a,...s}=function(){const t=new e;return t.version("2.3.4","-v, --version","Show version").description("A tool for releasing front-end projects, supporting multiple release modes and configurations, simplifying the release process and improving efficiency.").option("-d, --dry-run","Do not touch or write anything, but show the commands").option("-V, --verbose","Show more information").option("-p, --publish-path <publishPath>","The path of the package to release, map to feConfig.release.publishPath").option("-b, --branch-name <branchName>","The branch name of the release, map to feConfig.release.branchName, default(release-${pkgName}-${tagName})").option("-s, --source-branch <sourceBranch>","The source branch of the release").option("-i, --changelog.increment <increment>","The increment of the release",(e=>{if(!n.includes(e)&&!o.valid(e))throw new Error(`Invalid increment(-i) Must be one of [${n.join(", ")}] or valid version string(semver)`);return e}),"patch").option("--changelog.skip","Whether to skip the changelog").option("--changelog.ignore-non-updated-packages","Whether to ignore non updated packages").option("--changelog.skip-changeset","Whether to skip the changeset").option("--githubPR.skip","Whether to skip the githubPR").option("--packages-directories <packagesDirectories>","The packages that have been changed, multiple values use `,` to split, map to feConfig.release.packagesDirectories",i).option("--githubPR.dry-run-create-PR","Whether to dry run the creation of the pull request").option("--githubPR.push-change-labels","Whether to push the changed labels to the release PR").option("-P, --githubPR.release-PR","Create a release PR").option("-l, --workspaces.change-labels <changeLabels>","The change labels of the release, multiple values use `,` to split",i),t.parse(),r(t.opts(),"shared")}(),{dryRun:p,verbose:h,...c}=a,l=Object.assign(s,{});await new t({dryRun:p,verbose:h,options:l,shared:c}).exec()})().catch((e=>{console.error(e.message),process.exit(1)}));
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";var t,e,r,n,o,i,a,s,u,c,h,f,l,g,p,m,v,d,b,y,w,k,_,R,x,P,j,C,$,N,O,E,B,T,S,A,L,W,U,G,M,F,D,H,q,I,z,V,J,Y,K,Q,X,Z,tt,et,rt,nt,ot,it,at,st,ut,ct,ht,ft,lt,gt,pt,mt,vt,dt,bt,yt,wt,kt,_t,Rt,xt,Pt,jt,Ct,$t,Nt,Ot,Et,Bt,Tt,St,At,Lt,Wt,Ut,Gt,Mt,Ft,Dt,Ht,qt=require("@qlover/scripts-context"),It=require("@qlover/env-loader"),zt=require("@qlover/fe-corekit"),Vt=require("@octokit/rest"),Jt=require("gitlog"),Yt=require("node:path"),Kt=require("find-workspaces"),Qt=require("fs"),Xt=require("path"),Zt=require("node:module"),te=require("node:url"),ee=require("p-limit"),re="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function ne(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function oe(){if(e)return t;return e=1,t=function(){this.__data__=[],this.size=0}}function ie(){if(n)return r;return n=1,r=function(t,e){return t===e||t!=t&&e!=e}}function ae(){if(i)return o;i=1;var t=ie();return o=function(e,r){for(var n=e.length;n--;)if(t(e[n][0],r))return n;return-1}}function se(){if(s)return a;s=1;var t=ae(),e=Array.prototype.splice;return a=function(r){var n=this.__data__,o=t(n,r);return!(o<0)&&(o==n.length-1?n.pop():e.call(n,o,1),--this.size,!0)}}function ue(){if(c)return u;c=1;var t=ae();return u=function(e){var r=this.__data__,n=t(r,e);return n<0?void 0:r[n][1]}}function ce(){if(f)return h;f=1;var t=ae();return h=function(e){return t(this.__data__,e)>-1}}function he(){if(g)return l;g=1;var t=ae();return l=function(e,r){var n=this.__data__,o=t(n,e);return o<0?(++this.size,n.push([e,r])):n[o][1]=r,this}}function fe(){if(m)return p;m=1;var t=oe(),e=se(),r=ue(),n=ce(),o=he();function i(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}return i.prototype.clear=t,i.prototype.delete=e,i.prototype.get=r,i.prototype.has=n,i.prototype.set=o,p=i}function le(){if(d)return v;d=1;var t=fe();return v=function(){this.__data__=new t,this.size=0}}function ge(){if(y)return b;return y=1,b=function(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}}function pe(){if(k)return w;return k=1,w=function(t){return this.__data__.get(t)}}function me(){if(R)return _;return R=1,_=function(t){return this.__data__.has(t)}}function ve(){if(P)return x;P=1;var t="object"==typeof re&&re&&re.Object===Object&&re;return x=t}function de(){if(C)return j;C=1;var t=ve(),e="object"==typeof self&&self&&self.Object===Object&&self,r=t||e||Function("return this")();return j=r}function be(){if(N)return $;N=1;var t=de().Symbol;return $=t}function ye(){if(E)return O;E=1;var t=be(),e=Object.prototype,r=e.hasOwnProperty,n=e.toString,o=t?t.toStringTag:void 0;return O=function(t){var e=r.call(t,o),i=t[o];try{t[o]=void 0;var a=!0}catch(t){}var s=n.call(t);return a&&(e?t[o]=i:delete t[o]),s}}function we(){if(T)return B;T=1;var t=Object.prototype.toString;return B=function(e){return t.call(e)}}function ke(){if(A)return S;A=1;var t=be(),e=ye(),r=we(),n=t?t.toStringTag:void 0;return S=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":n&&n in Object(t)?e(t):r(t)}}function _e(){if(W)return L;return W=1,L=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}}function Re(){if(G)return U;G=1;var t=ke(),e=_e();return U=function(r){if(!e(r))return!1;var n=t(r);return"[object Function]"==n||"[object GeneratorFunction]"==n||"[object AsyncFunction]"==n||"[object Proxy]"==n}}function xe(){if(F)return M;F=1;var t=de()["__core-js_shared__"];return M=t}function Pe(){if(H)return D;H=1;var t,e=xe(),r=(t=/[^.]+$/.exec(e&&e.keys&&e.keys.IE_PROTO||""))?"Symbol(src)_1."+t:"";return D=function(t){return!!r&&r in t}}function je(){if(I)return q;I=1;var t=Function.prototype.toString;return q=function(e){if(null!=e){try{return t.call(e)}catch(t){}try{return e+""}catch(t){}}return""}}function Ce(){if(V)return z;V=1;var t=Re(),e=Pe(),r=_e(),n=je(),o=/^\[object .+?Constructor\]$/,i=Function.prototype,a=Object.prototype,s=i.toString,u=a.hasOwnProperty,c=RegExp("^"+s.call(u).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");return z=function(i){return!(!r(i)||e(i))&&(t(i)?c:o).test(n(i))}}function $e(){if(Y)return J;return Y=1,J=function(t,e){return null==t?void 0:t[e]}}function Ne(){if(Q)return K;Q=1;var t=Ce(),e=$e();return K=function(r,n){var o=e(r,n);return t(o)?o:void 0}}function Oe(){if(Z)return X;Z=1;var t=Ne()(de(),"Map");return X=t}function Ee(){if(et)return tt;et=1;var t=Ne()(Object,"create");return tt=t}function Be(){if(nt)return rt;nt=1;var t=Ee();return rt=function(){this.__data__=t?t(null):{},this.size=0}}function Te(){if(it)return ot;return it=1,ot=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}}function Se(){if(st)return at;st=1;var t=Ee(),e=Object.prototype.hasOwnProperty;return at=function(r){var n=this.__data__;if(t){var o=n[r];return"__lodash_hash_undefined__"===o?void 0:o}return e.call(n,r)?n[r]:void 0}}function Ae(){if(ct)return ut;ct=1;var t=Ee(),e=Object.prototype.hasOwnProperty;return ut=function(r){var n=this.__data__;return t?void 0!==n[r]:e.call(n,r)}}function Le(){if(ft)return ht;ft=1;var t=Ee();return ht=function(e,r){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=t&&void 0===r?"__lodash_hash_undefined__":r,this}}function We(){if(gt)return lt;gt=1;var t=Be(),e=Te(),r=Se(),n=Ae(),o=Le();function i(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}return i.prototype.clear=t,i.prototype.delete=e,i.prototype.get=r,i.prototype.has=n,i.prototype.set=o,lt=i}function Ue(){if(mt)return pt;mt=1;var t=We(),e=fe(),r=Oe();return pt=function(){this.size=0,this.__data__={hash:new t,map:new(r||e),string:new t}}}function Ge(){if(dt)return vt;return dt=1,vt=function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}}function Me(){if(yt)return bt;yt=1;var t=Ge();return bt=function(e,r){var n=e.__data__;return t(r)?n["string"==typeof r?"string":"hash"]:n.map}}function Fe(){if(kt)return wt;kt=1;var t=Me();return wt=function(e){var r=t(this,e).delete(e);return this.size-=r?1:0,r}}function De(){if(Rt)return _t;Rt=1;var t=Me();return _t=function(e){return t(this,e).get(e)}}function He(){if(Pt)return xt;Pt=1;var t=Me();return xt=function(e){return t(this,e).has(e)}}function qe(){if(Ct)return jt;Ct=1;var t=Me();return jt=function(e,r){var n=t(this,e),o=n.size;return n.set(e,r),this.size+=n.size==o?0:1,this}}function Ie(){if(Nt)return $t;Nt=1;var t=Ue(),e=Fe(),r=De(),n=He(),o=qe();function i(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}return i.prototype.clear=t,i.prototype.delete=e,i.prototype.get=r,i.prototype.has=n,i.prototype.set=o,$t=i}function ze(){if(Et)return Ot;Et=1;var t=fe(),e=Oe(),r=Ie();return Ot=function(n,o){var i=this.__data__;if(i instanceof t){var a=i.__data__;if(!e||a.length<199)return a.push([n,o]),this.size=++i.size,this;i=this.__data__=new r(a)}return i.set(n,o),this.size=i.size,this}}function Ve(){if(Tt)return Bt;Tt=1;var t=fe(),e=le(),r=ge(),n=pe(),o=me(),i=ze();function a(e){var r=this.__data__=new t(e);this.size=r.size}return a.prototype.clear=e,a.prototype.delete=r,a.prototype.get=n,a.prototype.has=o,a.prototype.set=i,Bt=a}function Je(){if(At)return St;At=1;var t=Ne(),e=function(){try{var e=t(Object,"defineProperty");return e({},"",{}),e}catch(t){}}();return St=e}function Ye(){if(Wt)return Lt;Wt=1;var t=Je();return Lt=function(e,r,n){"__proto__"==r&&t?t(e,r,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[r]=n}}function Ke(){if(Gt)return Ut;Gt=1;var t=Ye(),e=ie();return Ut=function(r,n,o){(void 0!==o&&!e(r[n],o)||void 0===o&&!(n in r))&&t(r,n,o)}}function Qe(){if(Ft)return Mt;return Ft=1,Mt=function(t){return function(e,r,n){for(var o=-1,i=Object(e),a=n(e),s=a.length;s--;){var u=a[t?s:++o];if(!1===r(i[u],u,i))break}return e}}}function Xe(){if(Ht)return Dt;Ht=1;var t=Qe()();return Dt=t}var Ze,tr,er,rr,nr,or,ir,ar,sr,ur,cr,hr,fr,lr,gr,pr,mr,vr,dr,br,yr,wr,kr,_r,Rr,xr,Pr,jr,Cr,$r,Nr,Or,Er,Br={exports:{}};function Tr(){return Ze||(Ze=1,function(t,e){var r=de(),n=e&&!e.nodeType&&e,o=n&&t&&!t.nodeType&&t,i=o&&o.exports===n?r.Buffer:void 0,a=i?i.allocUnsafe:void 0;t.exports=function(t,e){if(e)return t.slice();var r=t.length,n=a?a(r):new t.constructor(r);return t.copy(n),n}}(Br,Br.exports)),Br.exports}function Sr(){if(er)return tr;er=1;var t=de().Uint8Array;return tr=t}function Ar(){if(nr)return rr;nr=1;var t=Sr();return rr=function(e){var r=new e.constructor(e.byteLength);return new t(r).set(new t(e)),r}}function Lr(){if(ir)return or;ir=1;var t=Ar();return or=function(e,r){var n=r?t(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}}function Wr(){if(sr)return ar;return sr=1,ar=function(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r<n;)e[r]=t[r];return e}}function Ur(){if(cr)return ur;cr=1;var t=_e(),e=Object.create,r=function(){function r(){}return function(n){if(!t(n))return{};if(e)return e(n);r.prototype=n;var o=new r;return r.prototype=void 0,o}}();return ur=r}function Gr(){if(fr)return hr;return fr=1,hr=function(t,e){return function(r){return t(e(r))}}}function Mr(){if(gr)return lr;gr=1;var t=Gr()(Object.getPrototypeOf,Object);return lr=t}function Fr(){if(mr)return pr;mr=1;var t=Object.prototype;return pr=function(e){var r=e&&e.constructor;return e===("function"==typeof r&&r.prototype||t)}}function Dr(){if(dr)return vr;dr=1;var t=Ur(),e=Mr(),r=Fr();return vr=function(n){return"function"!=typeof n.constructor||r(n)?{}:t(e(n))}}function Hr(){if(yr)return br;return yr=1,br=function(t){return null!=t&&"object"==typeof t}}function qr(){if(kr)return wr;kr=1;var t=ke(),e=Hr();return wr=function(r){return e(r)&&"[object Arguments]"==t(r)}}function Ir(){if(Rr)return _r;Rr=1;var t=qr(),e=Hr(),r=Object.prototype,n=r.hasOwnProperty,o=r.propertyIsEnumerable,i=t(function(){return arguments}())?t:function(t){return e(t)&&n.call(t,"callee")&&!o.call(t,"callee")};return _r=i}function zr(){if(Pr)return xr;Pr=1;var t=Array.isArray;return xr=t}function Vr(){if(Cr)return jr;Cr=1;return jr=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}}function Jr(){if(Nr)return $r;Nr=1;var t=Re(),e=Vr();return $r=function(r){return null!=r&&e(r.length)&&!t(r)}}function Yr(){if(Er)return Or;Er=1;var t=Jr(),e=Hr();return Or=function(r){return e(r)&&t(r)}}var Kr,Qr,Xr,Zr,tn,en,rn,nn,on,an={exports:{}};function sn(){if(Qr)return Kr;return Qr=1,Kr=function(){return!1}}function un(){return Xr||(Xr=1,function(t,e){var r=de(),n=sn(),o=e&&!e.nodeType&&e,i=o&&t&&!t.nodeType&&t,a=i&&i.exports===o?r.Buffer:void 0,s=(a?a.isBuffer:void 0)||n;t.exports=s}(an,an.exports)),an.exports}function cn(){if(tn)return Zr;tn=1;var t=ke(),e=Mr(),r=Hr(),n=Function.prototype,o=Object.prototype,i=n.toString,a=o.hasOwnProperty,s=i.call(Object);return Zr=function(n){if(!r(n)||"[object Object]"!=t(n))return!1;var o=e(n);if(null===o)return!0;var u=a.call(o,"constructor")&&o.constructor;return"function"==typeof u&&u instanceof u&&i.call(u)==s}}function hn(){if(rn)return en;rn=1;var t=ke(),e=Vr(),r=Hr(),n={};return n["[object Float32Array]"]=n["[object Float64Array]"]=n["[object Int8Array]"]=n["[object Int16Array]"]=n["[object Int32Array]"]=n["[object Uint8Array]"]=n["[object Uint8ClampedArray]"]=n["[object Uint16Array]"]=n["[object Uint32Array]"]=!0,n["[object Arguments]"]=n["[object Array]"]=n["[object ArrayBuffer]"]=n["[object Boolean]"]=n["[object DataView]"]=n["[object Date]"]=n["[object Error]"]=n["[object Function]"]=n["[object Map]"]=n["[object Number]"]=n["[object Object]"]=n["[object RegExp]"]=n["[object Set]"]=n["[object String]"]=n["[object WeakMap]"]=!1,en=function(o){return r(o)&&e(o.length)&&!!n[t(o)]}}function fn(){if(on)return nn;return on=1,nn=function(t){return function(e){return t(e)}}}var ln,gn,pn,mn,vn,dn,bn,yn,wn,kn,_n,Rn,xn,Pn,jn,Cn,$n,Nn,On,En,Bn,Tn,Sn,An,Ln,Wn,Un,Gn,Mn,Fn,Dn,Hn,qn,In,zn,Vn,Jn,Yn,Kn,Qn,Xn,Zn,to,eo,ro,no,oo,io,ao,so={exports:{}};function uo(){return ln||(ln=1,function(t,e){var r=ve(),n=e&&!e.nodeType&&e,o=n&&t&&!t.nodeType&&t,i=o&&o.exports===n&&r.process,a=function(){try{var t=o&&o.require&&o.require("util").types;return t||i&&i.binding&&i.binding("util")}catch(t){}}();t.exports=a}(so,so.exports)),so.exports}function co(){if(pn)return gn;pn=1;var t=hn(),e=fn(),r=uo(),n=r&&r.isTypedArray,o=n?e(n):t;return gn=o}function ho(){if(vn)return mn;return vn=1,mn=function(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}}function fo(){if(bn)return dn;bn=1;var t=Ye(),e=ie(),r=Object.prototype.hasOwnProperty;return dn=function(n,o,i){var a=n[o];r.call(n,o)&&e(a,i)&&(void 0!==i||o in n)||t(n,o,i)}}function lo(){if(wn)return yn;wn=1;var t=fo(),e=Ye();return yn=function(r,n,o,i){var a=!o;o||(o={});for(var s=-1,u=n.length;++s<u;){var c=n[s],h=i?i(o[c],r[c],c,o,r):void 0;void 0===h&&(h=r[c]),a?e(o,c,h):t(o,c,h)}return o}}function go(){if(_n)return kn;return _n=1,kn=function(t,e){for(var r=-1,n=Array(t);++r<t;)n[r]=e(r);return n}}function po(){if(xn)return Rn;xn=1;var t=/^(?:0|[1-9]\d*)$/;return Rn=function(e,r){var n=typeof e;return!!(r=null==r?9007199254740991:r)&&("number"==n||"symbol"!=n&&t.test(e))&&e>-1&&e%1==0&&e<r}}function mo(){if(jn)return Pn;jn=1;var t=go(),e=Ir(),r=zr(),n=un(),o=po(),i=co(),a=Object.prototype.hasOwnProperty;return Pn=function(s,u){var c=r(s),h=!c&&e(s),f=!c&&!h&&n(s),l=!c&&!h&&!f&&i(s),g=c||h||f||l,p=g?t(s.length,String):[],m=p.length;for(var v in s)!u&&!a.call(s,v)||g&&("length"==v||f&&("offset"==v||"parent"==v)||l&&("buffer"==v||"byteLength"==v||"byteOffset"==v)||o(v,m))||p.push(v);return p}}function vo(){if($n)return Cn;return $n=1,Cn=function(t){var e=[];if(null!=t)for(var r in Object(t))e.push(r);return e}}function bo(){if(On)return Nn;On=1;var t=_e(),e=Fr(),r=vo(),n=Object.prototype.hasOwnProperty;return Nn=function(o){if(!t(o))return r(o);var i=e(o),a=[];for(var s in o)("constructor"!=s||!i&&n.call(o,s))&&a.push(s);return a}}function yo(){if(Bn)return En;Bn=1;var t=mo(),e=bo(),r=Jr();return En=function(n){return r(n)?t(n,!0):e(n)}}function wo(){if(Sn)return Tn;Sn=1;var t=lo(),e=yo();return Tn=function(r){return t(r,e(r))}}function ko(){if(Ln)return An;Ln=1;var t=Ke(),e=Tr(),r=Lr(),n=Wr(),o=Dr(),i=Ir(),a=zr(),s=Yr(),u=un(),c=Re(),h=_e(),f=cn(),l=co(),g=ho(),p=wo();return An=function(m,v,d,b,y,w,k){var _=g(m,d),R=g(v,d),x=k.get(R);if(x)t(m,d,x);else{var P=w?w(_,R,d+"",m,v,k):void 0,j=void 0===P;if(j){var C=a(R),$=!C&&u(R),N=!C&&!$&&l(R);P=R,C||$||N?a(_)?P=_:s(_)?P=n(_):$?(j=!1,P=e(R,!0)):N?(j=!1,P=r(R,!0)):P=[]:f(R)||i(R)?(P=_,i(_)?P=p(_):h(_)&&!c(_)||(P=o(R))):j=!1}j&&(k.set(R,P),y(P,R,b,w,k),k.delete(R)),t(m,d,P)}}}function _o(){if(Un)return Wn;Un=1;var t=Ve(),e=Ke(),r=Xe(),n=ko(),o=_e(),i=yo(),a=ho();return Wn=function s(u,c,h,f,l){u!==c&&r(c,(function(r,i){if(l||(l=new t),o(r))n(u,c,i,h,s,f,l);else{var g=f?f(a(u,i),r,i+"",u,c,l):void 0;void 0===g&&(g=r),e(u,i,g)}}),i)},Wn}function Ro(){if(Mn)return Gn;return Mn=1,Gn=function(t){return t}}function xo(){if(Dn)return Fn;return Dn=1,Fn=function(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}}function Po(){if(qn)return Hn;qn=1;var t=xo(),e=Math.max;return Hn=function(r,n,o){return n=e(void 0===n?r.length-1:n,0),function(){for(var i=arguments,a=-1,s=e(i.length-n,0),u=Array(s);++a<s;)u[a]=i[n+a];a=-1;for(var c=Array(n+1);++a<n;)c[a]=i[a];return c[n]=o(u),t(r,this,c)}},Hn}function jo(){if(zn)return In;return zn=1,In=function(t){return function(){return t}}}function Co(){if(Jn)return Vn;Jn=1;var t=jo(),e=Je();return Vn=e?function(r,n){return e(r,"toString",{configurable:!0,enumerable:!1,value:t(n),writable:!0})}:Ro()}function $o(){if(Kn)return Yn;Kn=1;var t=Date.now;return Yn=function(e){var r=0,n=0;return function(){var o=t(),i=16-(o-n);if(n=o,i>0){if(++r>=800)return arguments[0]}else r=0;return e.apply(void 0,arguments)}},Yn}function No(){if(Xn)return Qn;Xn=1;var t=Co(),e=$o()(t);return Qn=e}function Oo(){if(to)return Zn;to=1;var t=Ro(),e=Po(),r=No();return Zn=function(n,o){return r(e(n,o,t),n+"")}}function Eo(){if(ro)return eo;ro=1;var t=ie(),e=Jr(),r=po(),n=_e();return eo=function(o,i,a){if(!n(a))return!1;var s=typeof i;return!!("number"==s?e(a)&&r(i,a.length):"string"==s&&i in a)&&t(a[i],o)}}function Bo(){if(oo)return no;oo=1;var t=Oo(),e=Eo();return no=function(r){return t((function(t,n){var o=-1,i=n.length,a=i>1?n[i-1]:void 0,s=i>2?n[2]:void 0;for(a=r.length>3&&"function"==typeof a?(i--,a):void 0,s&&e(n[0],n[1],s)&&(a=i<3?void 0:a,i=1),t=Object(t);++o<i;){var u=n[o];u&&r(t,u,o,a)}return t}))}}function To(){if(ao)return io;ao=1;var t=_o(),e=Bo()((function(e,r,n){t(e,r,n)}));return io=e}var So,Ao,Lo,Wo,Uo,Go,Mo,Fo,Do,Ho,qo,Io,zo,Vo,Jo,Yo,Ko,Qo,Xo,Zo,ti,ei,ri,ni,oi=ne(To());function ii(){if(Ao)return So;Ao=1;var t=ke(),e=Hr();return So=function(r){return"symbol"==typeof r||e(r)&&"[object Symbol]"==t(r)}}function ai(){if(Wo)return Lo;Wo=1;var t=zr(),e=ii(),r=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,n=/^\w*$/;return Lo=function(o,i){if(t(o))return!1;var a=typeof o;return!("number"!=a&&"symbol"!=a&&"boolean"!=a&&null!=o&&!e(o))||(n.test(o)||!r.test(o)||null!=i&&o in Object(i))}}function si(){if(Go)return Uo;Go=1;var t=Ie();function e(r,n){if("function"!=typeof r||null!=n&&"function"!=typeof n)throw new TypeError("Expected a function");var o=function(){var t=arguments,e=n?n.apply(this,t):t[0],i=o.cache;if(i.has(e))return i.get(e);var a=r.apply(this,t);return o.cache=i.set(e,a)||i,a};return o.cache=new(e.Cache||t),o}return e.Cache=t,Uo=e}function ui(){if(Fo)return Mo;Fo=1;var t=si();return Mo=function(e){var r=t(e,(function(t){return 500===n.size&&n.clear(),t})),n=r.cache;return r}}function ci(){if(Ho)return Do;Ho=1;var t=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,e=/\\(\\)?/g,r=ui()((function(r){var n=[];return 46===r.charCodeAt(0)&&n.push(""),r.replace(t,(function(t,r,o,i){n.push(o?i.replace(e,"$1"):r||t)})),n}));return Do=r}function hi(){if(Io)return qo;return Io=1,qo=function(t,e){for(var r=-1,n=null==t?0:t.length,o=Array(n);++r<n;)o[r]=e(t[r],r,t);return o}}function fi(){if(Vo)return zo;Vo=1;var t=be(),e=hi(),r=zr(),n=ii(),o=t?t.prototype:void 0,i=o?o.toString:void 0;return zo=function t(o){if("string"==typeof o)return o;if(r(o))return e(o,t)+"";if(n(o))return i?i.call(o):"";var a=o+"";return"0"==a&&1/o==-1/0?"-0":a},zo}function li(){if(Yo)return Jo;Yo=1;var t=fi();return Jo=function(e){return null==e?"":t(e)}}function gi(){if(Qo)return Ko;Qo=1;var t=zr(),e=ai(),r=ci(),n=li();return Ko=function(o,i){return t(o)?o:e(o,i)?[o]:r(n(o))}}function pi(){if(Zo)return Xo;Zo=1;var t=ii();return Xo=function(e){if("string"==typeof e||t(e))return e;var r=e+"";return"0"==r&&1/e==-1/0?"-0":r}}function mi(){if(ei)return ti;ei=1;var t=gi(),e=pi();return ti=function(r,n){for(var o=0,i=(n=t(n,r)).length;null!=r&&o<i;)r=r[e(n[o++])];return o&&o==i?r:void 0},ti}function vi(){if(ni)return ri;ni=1;var t=mi();return ri=function(e,r,n){var o=null==e?void 0:t(e,r);return void 0===o?n:o},ri}var di=ne(vi());const bi="package.json",yi=[".env.local",".env"];class wi extends qt.FeScriptContext{_env;shared;constructor(t){super(t),this._env=It.Env.searchEnv({logger:this.logger,preloadList:this.feConfig.envOrder||yi}),this.shared=Object.assign({},this.feConfig.release,this.getDefaultShreadOptions(t.shared))}getDefaultShreadOptions(t){return{rootPath:process.cwd(),sourceBranch:this._env.get("FE_RELEASE_BRANCH")||this._env.get("FE_RELEASE_SOURCE_BRANCH")||"master",releaseEnv:this._env.get("FE_RELEASE_ENV")||this._env.get("NODE_ENV")||"development",...t}}get rootPath(){return this.shared.rootPath}get sourceBranch(){return this.shared.sourceBranch}get releaseEnv(){return this.shared.releaseEnv}get env(){return this._env}get workspaces(){return this.getConfig("workspaces.workspaces")}get workspace(){return this.getConfig("workspaces.workspace")}setWorkspaces(t){this.options.workspaces={...this.options.workspaces,workspaces:t}}setConfig(t){this.options=oi(this.options,t)}getConfig(t,e){return di(this.options,t,e)}setShared(t){this.shared=oi(this.shared,t)}getPkg(t,e){const r=this.workspace?.packageJson;if(!r)throw new Error("package.json is not found");return t?di(r,t,e):r}getTemplateContext(){return{...this.shared,...this.workspace,publishPath:this.workspace?.path||"",env:this.releaseEnv,branch:this.sourceBranch}}async runChangesetsCli(t,e){let r="pnpm";try{await this.shell.exec("pnpm -v",{dryRun:!1})}catch{r="npx"}return await this.shell.exec([r,"changeset",t,...e??[]])}}function ki(t,...e){return[t,...e]}const _i={maxWorkspace:3,multiWorkspaceSeparator:"_",workspaceVersionSeparator:"@",batchBranchName:"batch-${releaseName}-${length}-packages-${timestamp}",batchTagName:"batch-${length}-packages-${timestamp}"};class Ri{shell;logger;config;constructor(t,e,r={}){this.shell=t,this.logger=e,this.config={..._i,...r}}getReleaseBranchName(t,e,r){const n=r.branchName||"release-${tagName}";if("string"!=typeof n)throw new Error("Branch name template is not a string");return this.logger.debug("Release Branch template is:",n),this.shell.format(n,{pkgName:t,releaseName:t,tagName:e,...r})}getBatchReleaseBranchName(t,e,r,n){const o=this.config.batchBranchName;if("string"!=typeof o)throw new Error("Branch name template is not a string");return this.logger.debug("Release Batch Branch template is:",o),this.shell.format(o,{pkgName:t,releaseName:t,tagName:e,...r,length:n,timestamp:Date.now()})}getReleaseName(t){if(1===t.length)return t[0].name;const{maxWorkspace:e,multiWorkspaceSeparator:r,workspaceVersionSeparator:n}=this.config;return t.slice(0,e).map((({name:t,version:e})=>`${t}${n}${e}`)).join(r)}getReleaseTagName(t){if(1===t.length)return t[0].version;const{batchTagName:e}=this.config;return this.shell.format(e,{length:t.length,timestamp:Date.now()})}getReleaseBranchParams(t,e){const r=this.getReleaseTagName(t),n=this.getReleaseName(t);return{tagName:r,releaseBranch:t.length>1?this.getBatchReleaseBranchName(n,r,e,t.length):this.getReleaseBranchName(n,r,e)}}getPRTitle(t,e){const r=this.config.PRTitle||"Release ${env} ${pkgName} ${tagName}";return this.shell.format(r,{...e,tagName:t.tagName,pkgName:t.releaseBranch})}getPRBody(t,e,r){const n=this.config.PRBody,o=t.length>1?t.map((t=>this.shell.format("\n## ${name} ${version}\n${changelog}\n",t))).join("\n"):t[0].changelog,{workspaceVersionSeparator:i}=this.config,a=1===t.length?e.tagName:t.map((t=>`${t.name}${i}${t.version}`)).join(" ");return this.shell.format(n,{...r,tagName:a,changelog:o})}}class xi{context;_octokit=null;constructor(t){this.context=t}getGitHubUserInfo(){const{authorName:t,repoName:e}=this.context.shared;if(!t||!e)throw new Error("Author name or repo name is not set");return{owner:t,repo:e}}getToken(){const{tokenRef:t="GITHUB_TOKEN"}=this.context.getConfig("githubPR"),e=this.context.env.get(t);if(!e)throw new Error(`Token is not set. Please set ${t} environment variable.`);return e}get octokit(){if(this._octokit)return this._octokit;const{timeout:t}=this.context.getConfig("githubPR"),e={auth:this.getToken(),request:{timeout:t}};return this._octokit=new Vt.Octokit(e),this._octokit}get logger(){return this.context.logger}get shell(){return this.context.shell}get autoMergeType(){return this.context.shared.autoMergeType||"squash"}get dryRunPRNumber(){return this.context.getConfig("githubPR.dryRunPRNumber","999999")}get autoMergeReleasePR(){return this.context.shared.autoMergeReleasePR||false}async mergePR(t,e){if(!t)return void this.logger.error("Failed to create Pull Request.",t);const r=this.autoMergeType;if(this.context.dryRun){const{repoName:n,authorName:o}=this.context.shared;this.logger.info(`[DRY RUN] Would merge PR #${t} with method '${r}' in repo ${o}/${n}, branch ${e}`)}else await this.octokit.rest.pulls.merge({...this.getGitHubUserInfo(),pull_number:Number(t),merge_method:r})}async getPullRequestCommits(t){return(await this.octokit.rest.pulls.listCommits({...this.getGitHubUserInfo(),pull_number:t})).data}async getPullRequest(t){return(await this.octokit.rest.pulls.get({...this.getGitHubUserInfo(),pull_number:t})).data}async checkedPR(t,e){try{await this.getPullRequest(Number(t)),await this.octokit.rest.git.deleteRef({...this.getGitHubUserInfo(),ref:`heads/${e}`}),this.logger.info(`Branch ${e} has been deleted`)}catch(r){if(404===r.status)return void this.logger.warn(`PR #${t} or branch ${e} not found`);throw this.logger.error("Failed to check PR or delete branch",r),r}}async createReleasePRLabel(){const t=this.context.shared.label;if(!(t&&t.name&&t.description&&t.color))throw new Error("Label is not valid, skipping creation");if(this.context.dryRun)return this.logger.info("[DRY RUN] Would create PR label with:",t),t;try{const e=await this.octokit.rest.issues.createLabel({...this.getGitHubUserInfo(),name:t.name,description:t.description,color:t.color.replace("#","")});return this.logger.debug("Create PR label Success",e),t}catch(e){if(422===e.status)return this.logger.warn(`Label ${t.name} already exists, skipping!`),t;throw this.logger.error("Create PR label Failed",e),e}}async createReleasePR(t){if(this.context.getConfig("githubPR.dryRunCreatePR")||this.context.dryRun)return this.logger.info("[DRY RUN] Would create PR with:",{...t,labels:t.labels}),this.dryRunPRNumber;try{const e=await this.octokit.rest.pulls.create({...this.getGitHubUserInfo(),...t}),r=e.data.number;if(!r)throw new Error("CreateReleasePR Failed, prNumber is empty");if(this.logger.debug("Create PR Success",[e?.url]),t.labels&&t.labels.length){const e=await this.octokit.rest.issues.addLabels({...this.getGitHubUserInfo(),issue_number:r,labels:t.labels});this.logger.debug("Add PR label Success",[e.url])}return r.toString()}catch(t){if(422===t.status&&t.message.includes("already exists")){this.logger.warn("PR already exists");const e=t.message.match(/pull request #(\d+)/);return e?e[1]:""}throw this.logger.error("Failed to create PR",t),t}}truncateBody(t){return t&&t.length>=124e3?t.substring(0,124e3)+"...":t}getOctokitReleaseOptions(t){const{releaseName:e,draft:r=!1,preRelease:n=!1,autoGenerate:o=!1,makeLatest:i=!0,releaseNotes:a,discussionCategoryName:s}=this.context.getConfig("githubPR"),u=e,c=o?"":this.truncateBody(String(a));return{name:u,make_latest:i.toString(),body:c,draft:r,prerelease:n,generate_release_notes:o,discussion_category_name:s,tag_name:"",...t,...this.getGitHubUserInfo()}}async createRelease(t){const e=this.getOctokitReleaseOptions({tag_name:t.tagName,body:t.changelog});if(e.name=this.shell.format(e.name,t),this.logger.log(`[DRY RUN] octokit repos.createRelease "${e.name}" (${e.tag_name})`,{isDryRun:this.context.dryRun}),!e.tag_name)throw new Error("TagName is undefined");if(!this.context.dryRun)try{const t=await this.octokit.repos.createRelease(e);this.logger.debug(`[DONE] octokit repos.createRelease "${e.name}" (${e.tag_name}) (${t.headers.location})`)}catch(t){this.logger.error(`[FAILED] octokit repos.createRelease "${e.name}" (${e.tag_name})`,t)}}}var Pi,ji;function Ci(){if(ji)return Pi;ji=1;var t=ke(),e=zr(),r=Hr();return Pi=function(n){return"string"==typeof n||!e(n)&&r(n)&&"[object String]"==t(n)}}var $i=ne(Ci());class Ni{context;pluginName;props;onlyOne=!0;constructor(t,e,r={}){this.context=t,this.pluginName=e,this.props=r,this.setConfig(this.getInitialProps(r))}getInitialProps(t){const e=this.context.options[this.pluginName],r=di(this.context.shared,this.pluginName);return e||t?oi({},r,t,e):{}}get logger(){return this.context.logger}get shell(){return this.context.shell}get options(){return this.context.getConfig(this.pluginName,{})}getEnv(t,e){return this.context.env.get(t)??e}enabled(t,e){return!0}getConfig(t,e){return t?this.context.getConfig([this.pluginName,...Array.isArray(t)?t:[t]],e):this.context.getConfig(this.pluginName,e)}setConfig(t){this.context.setConfig({[this.pluginName]:t})}onBefore(t){}onExec(t){}onSuccess(t){}onError(t){}async step({label:t,task:e}){this.logger.log(),this.logger.info(t),this.logger.log();try{const r=await e();return this.logger.info(`${t} - success`),r}catch(t){throw this.logger.error(t),t}}}class Oi extends Ni{async onBefore(){const t=await this.getUserInfo();if(!t)throw new Error("Failed to get repoInfo");let e=this.context.shared.currentBranch;e||(e=await this.getCurrentBranch()),e&&await this.context.shell.exec(`git checkout ${e}`,{dryRun:!1}),this.context.setShared({repoName:t.repoName,authorName:t.authorName,currentBranch:e})}async getCurrentBranch(){return await new Promise((t=>setTimeout(t,100))),this.context.shell.exec("git rev-parse --abbrev-ref HEAD",{dryRun:!1})}async getRemoteUrl(){return(await this.context.shell.exec("git config --get remote.origin.url",{dryRun:!1})).trim()}async getUserInfo(){let t;try{t=await this.getRemoteUrl()}catch{throw new Error("Failed to get git remote url. Please ensure this is a git repository with a valid remote.")}if(!t)throw new Error("Git remote URL is empty. Please set a valid GitHub remote URL.");this.context.logger.debug("repoUrl: ",t);const e=t.match(/github\.com[:/]([^/]+)\/([^/.]+)(?:\.git)?$/);if(!e)throw new Error("Invalid GitHub repository URL format. Please ensure the remote URL is from GitHub.");const[,r,n]=e;if(!this.isValidString(r)||!this.isValidString(n))throw new Error("Failed to extract owner or repository name from GitHub URL");return{repoName:n,authorName:r}}isValidString(t){return!!t&&$i(t)}commit(t,e=[]){return this.context.shell.exec(["git","commit","--message",JSON.stringify(t),...e])}}const Ei=["hash","abbrevHash","treeHash","abbrevTreeHash","parentHashes","abbrevParentHashes","authorName","authorEmail","authorDate","authorDateRel","committerName","committerEmail","committerDate","committerDateRel","subject","body","rawBody","tag"];class Bi{options;constructor(t){this.options=t}async getGitLog(t={}){const{directory:e,noMerges:r=!0,fileds:n}=t,o=await this.resolveTag(t.from,"root"),i=await this.resolveTag(t.to,"HEAD"),a={repo:".",number:1e3,fields:n,branch:o===i?i:`${o}..${i}`,file:e,nameStatus:!1,includeMergeCommitFiles:!r},s=await Jt(a);return this.options.logger?.debug("GitChangelog",a),this.options.logger?.debug("GitChangelog commits",s),s}async getCommits(t){return(await this.getGitLog(t)).map((t=>{const{subject:e,rawBody:r}=t;return{base:t,commitlint:this.parseCommitlint(e||"",r),commits:[]}}))}createBaseCommit(t,e){return{subject:t,rawBody:t,body:t,...e}}tabify(t,e=2){return t.split("\n").map((t=>" ".repeat(e)+t.trim())).join("\n")}parseCommitlint(t,e=""){const[r]=t.trim().split("\n"),n=e.startsWith(r)?e.replace(r,""):e,o=r.replace(/\s*\(#\d+\)\s*$/,"").match(/^(?:([a-z]+)(?:\((.*?)\))?: )?(.+)$/i);return o?{type:o[1]?.toLowerCase(),scope:o[2]?.trim(),message:o[3].trim(),body:n?this.tabify(n):void 0}:{message:r,body:n?this.tabify(n):void 0}}toCommitValue(t,e){const[r]=e.trim().split("\n"),n=r.match(/\(#(\d+)\)/),o=this.parseCommitlint(r,e);return{base:this.createBaseCommit(r,{hash:t,abbrevHash:t.substring(0,7),rawBody:e}),commitlint:o,commits:[],prNumber:n?.[1]}}async resolveTag(t,e){if(t)try{if(await this.options.shell.exec(`git tag --list "${t}"`,{dryRun:!1}).then((t=>!!t.trim())))return t}catch{}return"root"===e?this.options.shell.exec("git rev-list --max-parents=0 HEAD",{dryRun:!1}).then((t=>t.trim())):"HEAD"}}var Ti,Si,Ai,Li,Wi,Ui,Gi,Mi,Fi,Di,Hi,qi,Ii,zi,Vi,Ji,Yi,Ki,Qi,Xi,Zi,ta,ea,ra,na,oa,ia,aa,sa,ua,ca,ha,fa,la,ga,pa,ma,va,da,ba,ya,wa,ka,_a,Ra,xa,Pa,ja,Ca,$a,Na,Oa,Ea,Ba,Ta,Sa,Aa,La,Wa,Ua,Ga,Ma,Fa,Da,Ha,qa,Ia,za,Va,Ja,Ya,Ka,Qa,Xa,Za,ts,es,rs,ns,os,is,as,ss,us,cs,hs,fs,ls,gs,ps,ms,vs;function ds(){if(Si)return Ti;return Si=1,Ti=function(t,e,r,n){for(var o=-1,i=null==t?0:t.length;++o<i;){var a=t[o];e(n,a,r(a),t)}return n}}function bs(){if(Li)return Ai;Li=1;var t=Gr()(Object.keys,Object);return Ai=t}function ys(){if(Ui)return Wi;Ui=1;var t=Fr(),e=bs(),r=Object.prototype.hasOwnProperty;return Wi=function(n){if(!t(n))return e(n);var o=[];for(var i in Object(n))r.call(n,i)&&"constructor"!=i&&o.push(i);return o}}function ws(){if(Mi)return Gi;Mi=1;var t=mo(),e=ys(),r=Jr();return Gi=function(n){return r(n)?t(n):e(n)}}function ks(){if(Di)return Fi;Di=1;var t=Xe(),e=ws();return Fi=function(r,n){return r&&t(r,n,e)}}function _s(){if(qi)return Hi;qi=1;var t=Jr();return Hi=function(e,r){return function(n,o){if(null==n)return n;if(!t(n))return e(n,o);for(var i=n.length,a=r?i:-1,s=Object(n);(r?a--:++a<i)&&!1!==o(s[a],a,s););return n}}}function Rs(){if(zi)return Ii;zi=1;var t=ks(),e=_s()(t);return Ii=e}function xs(){if(Ji)return Vi;Ji=1;var t=Rs();return Vi=function(e,r,n,o){return t(e,(function(t,e,i){r(o,t,n(t),i)})),o}}function Ps(){if(Ki)return Yi;Ki=1;return Yi=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this}}function js(){if(Xi)return Qi;return Xi=1,Qi=function(t){return this.__data__.has(t)}}function Cs(){if(ta)return Zi;ta=1;var t=Ie(),e=Ps(),r=js();function n(e){var r=-1,n=null==e?0:e.length;for(this.__data__=new t;++r<n;)this.add(e[r])}return n.prototype.add=n.prototype.push=e,n.prototype.has=r,Zi=n}function $s(){if(ra)return ea;return ra=1,ea=function(t,e){for(var r=-1,n=null==t?0:t.length;++r<n;)if(e(t[r],r,t))return!0;return!1}}function Ns(){if(oa)return na;return oa=1,na=function(t,e){return t.has(e)}}function Os(){if(aa)return ia;aa=1;var t=Cs(),e=$s(),r=Ns();return ia=function(n,o,i,a,s,u){var c=1&i,h=n.length,f=o.length;if(h!=f&&!(c&&f>h))return!1;var l=u.get(n),g=u.get(o);if(l&&g)return l==o&&g==n;var p=-1,m=!0,v=2&i?new t:void 0;for(u.set(n,o),u.set(o,n);++p<h;){var d=n[p],b=o[p];if(a)var y=c?a(b,d,p,o,n,u):a(d,b,p,n,o,u);if(void 0!==y){if(y)continue;m=!1;break}if(v){if(!e(o,(function(t,e){if(!r(v,e)&&(d===t||s(d,t,i,a,u)))return v.push(e)}))){m=!1;break}}else if(d!==b&&!s(d,b,i,a,u)){m=!1;break}}return u.delete(n),u.delete(o),m}}function Es(){if(ua)return sa;return ua=1,sa=function(t){var e=-1,r=Array(t.size);return t.forEach((function(t,n){r[++e]=[n,t]})),r}}function Bs(){if(ha)return ca;return ha=1,ca=function(t){var e=-1,r=Array(t.size);return t.forEach((function(t){r[++e]=t})),r},ca}function Ts(){if(la)return fa;la=1;var t=be(),e=Sr(),r=ie(),n=Os(),o=Es(),i=Bs(),a=t?t.prototype:void 0,s=a?a.valueOf:void 0;return fa=function(t,a,u,c,h,f,l){switch(u){case"[object DataView]":if(t.byteLength!=a.byteLength||t.byteOffset!=a.byteOffset)return!1;t=t.buffer,a=a.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=a.byteLength||!f(new e(t),new e(a)));case"[object Boolean]":case"[object Date]":case"[object Number]":return r(+t,+a);case"[object Error]":return t.name==a.name&&t.message==a.message;case"[object RegExp]":case"[object String]":return t==a+"";case"[object Map]":var g=o;case"[object Set]":var p=1&c;if(g||(g=i),t.size!=a.size&&!p)return!1;var m=l.get(t);if(m)return m==a;c|=2,l.set(t,a);var v=n(g(t),g(a),c,h,f,l);return l.delete(t),v;case"[object Symbol]":if(s)return s.call(t)==s.call(a)}return!1}}function Ss(){if(pa)return ga;return pa=1,ga=function(t,e){for(var r=-1,n=e.length,o=t.length;++r<n;)t[o+r]=e[r];return t}}function As(){if(va)return ma;va=1;var t=Ss(),e=zr();return ma=function(r,n,o){var i=n(r);return e(r)?i:t(i,o(r))}}function Ls(){if(ba)return da;return ba=1,da=function(t,e){for(var r=-1,n=null==t?0:t.length,o=0,i=[];++r<n;){var a=t[r];e(a,r,t)&&(i[o++]=a)}return i}}function Ws(){if(wa)return ya;return wa=1,ya=function(){return[]}}function Us(){if(_a)return ka;_a=1;var t=Ls(),e=Ws(),r=Object.prototype.propertyIsEnumerable,n=Object.getOwnPropertySymbols;return ka=n?function(e){return null==e?[]:(e=Object(e),t(n(e),(function(t){return r.call(e,t)})))}:e}function Gs(){if(xa)return Ra;xa=1;var t=As(),e=Us(),r=ws();return Ra=function(n){return t(n,r,e)}}function Ms(){if(ja)return Pa;ja=1;var t=Gs(),e=Object.prototype.hasOwnProperty;return Pa=function(r,n,o,i,a,s){var u=1&o,c=t(r),h=c.length;if(h!=t(n).length&&!u)return!1;for(var f=h;f--;){var l=c[f];if(!(u?l in n:e.call(n,l)))return!1}var g=s.get(r),p=s.get(n);if(g&&p)return g==n&&p==r;var m=!0;s.set(r,n),s.set(n,r);for(var v=u;++f<h;){var d=r[l=c[f]],b=n[l];if(i)var y=u?i(b,d,l,n,r,s):i(d,b,l,r,n,s);if(!(void 0===y?d===b||a(d,b,o,i,s):y)){m=!1;break}v||(v="constructor"==l)}if(m&&!v){var w=r.constructor,k=n.constructor;w==k||!("constructor"in r)||!("constructor"in n)||"function"==typeof w&&w instanceof w&&"function"==typeof k&&k instanceof k||(m=!1)}return s.delete(r),s.delete(n),m}}function Fs(){if($a)return Ca;$a=1;var t=Ne()(de(),"DataView");return Ca=t}function Ds(){if(Oa)return Na;Oa=1;var t=Ne()(de(),"Promise");return Na=t}function Hs(){if(Ba)return Ea;Ba=1;var t=Ne()(de(),"Set");return Ea=t}function qs(){if(Sa)return Ta;Sa=1;var t=Ne()(de(),"WeakMap");return Ta=t}function Is(){if(La)return Aa;La=1;var t=Fs(),e=Oe(),r=Ds(),n=Hs(),o=qs(),i=ke(),a=je(),s="[object Map]",u="[object Promise]",c="[object Set]",h="[object WeakMap]",f="[object DataView]",l=a(t),g=a(e),p=a(r),m=a(n),v=a(o),d=i;return(t&&d(new t(new ArrayBuffer(1)))!=f||e&&d(new e)!=s||r&&d(r.resolve())!=u||n&&d(new n)!=c||o&&d(new o)!=h)&&(d=function(t){var e=i(t),r="[object Object]"==e?t.constructor:void 0,n=r?a(r):"";if(n)switch(n){case l:return f;case g:return s;case p:return u;case m:return c;case v:return h}return e}),Aa=d}function zs(){if(Ua)return Wa;Ua=1;var t=Ve(),e=Os(),r=Ts(),n=Ms(),o=Is(),i=zr(),a=un(),s=co(),u="[object Arguments]",c="[object Array]",h="[object Object]",f=Object.prototype.hasOwnProperty;return Wa=function(l,g,p,m,v,d){var b=i(l),y=i(g),w=b?c:o(l),k=y?c:o(g),_=(w=w==u?h:w)==h,R=(k=k==u?h:k)==h,x=w==k;if(x&&a(l)){if(!a(g))return!1;b=!0,_=!1}if(x&&!_)return d||(d=new t),b||s(l)?e(l,g,p,m,v,d):r(l,g,w,p,m,v,d);if(!(1&p)){var P=_&&f.call(l,"__wrapped__"),j=R&&f.call(g,"__wrapped__");if(P||j){var C=P?l.value():l,$=j?g.value():g;return d||(d=new t),v(C,$,p,m,d)}}return!!x&&(d||(d=new t),n(l,g,p,m,v,d))}}function Vs(){if(Ma)return Ga;Ma=1;var t=zs(),e=Hr();return Ga=function r(n,o,i,a,s){return n===o||(null==n||null==o||!e(n)&&!e(o)?n!=n&&o!=o:t(n,o,i,a,r,s))},Ga}function Js(){if(Da)return Fa;Da=1;var t=Ve(),e=Vs();return Fa=function(r,n,o,i){var a=o.length,s=a,u=!i;if(null==r)return!s;for(r=Object(r);a--;){var c=o[a];if(u&&c[2]?c[1]!==r[c[0]]:!(c[0]in r))return!1}for(;++a<s;){var h=(c=o[a])[0],f=r[h],l=c[1];if(u&&c[2]){if(void 0===f&&!(h in r))return!1}else{var g=new t;if(i)var p=i(f,l,h,r,n,g);if(!(void 0===p?e(l,f,3,i,g):p))return!1}}return!0}}function Ys(){if(qa)return Ha;qa=1;var t=_e();return Ha=function(e){return e==e&&!t(e)}}function Ks(){if(za)return Ia;za=1;var t=Ys(),e=ws();return Ia=function(r){for(var n=e(r),o=n.length;o--;){var i=n[o],a=r[i];n[o]=[i,a,t(a)]}return n}}function Qs(){if(Ja)return Va;return Ja=1,Va=function(t,e){return function(r){return null!=r&&(r[t]===e&&(void 0!==e||t in Object(r)))}}}function Xs(){if(Ka)return Ya;Ka=1;var t=Js(),e=Ks(),r=Qs();return Ya=function(n){var o=e(n);return 1==o.length&&o[0][2]?r(o[0][0],o[0][1]):function(e){return e===n||t(e,n,o)}}}function Zs(){if(Xa)return Qa;return Xa=1,Qa=function(t,e){return null!=t&&e in Object(t)}}function tu(){if(ts)return Za;ts=1;var t=gi(),e=Ir(),r=zr(),n=po(),o=Vr(),i=pi();return Za=function(a,s,u){for(var c=-1,h=(s=t(s,a)).length,f=!1;++c<h;){var l=i(s[c]);if(!(f=null!=a&&u(a,l)))break;a=a[l]}return f||++c!=h?f:!!(h=null==a?0:a.length)&&o(h)&&n(l,h)&&(r(a)||e(a))},Za}function eu(){if(rs)return es;rs=1;var t=Zs(),e=tu();return es=function(r,n){return null!=r&&e(r,n,t)},es}function ru(){if(os)return ns;os=1;var t=Vs(),e=vi(),r=eu(),n=ai(),o=Ys(),i=Qs(),a=pi();return ns=function(s,u){return n(s)&&o(u)?i(a(s),u):function(n){var o=e(n,s);return void 0===o&&o===u?r(n,s):t(u,o,3)}},ns}function nu(){if(as)return is;return as=1,is=function(t){return function(e){return null==e?void 0:e[t]}}}function ou(){if(us)return ss;us=1;var t=mi();return ss=function(e){return function(r){return t(r,e)}},ss}function iu(){if(hs)return cs;hs=1;var t=nu(),e=ou(),r=ai(),n=pi();return cs=function(o){return r(o)?t(n(o)):e(o)},cs}function au(){if(ls)return fs;ls=1;var t=Xs(),e=ru(),r=Ro(),n=zr(),o=iu();return fs=function(i){return"function"==typeof i?i:null==i?r:"object"==typeof i?n(i)?e(i[0],i[1]):t(i):o(i)}}function su(){if(ps)return gs;ps=1;var t=ds(),e=xs(),r=au(),n=zr();return gs=function(o,i){return function(a,s){var u=n(a)?t:e,c=i?i():{};return u(a,o,r(s,2),c)}}}function uu(){if(vs)return ms;vs=1;var t=Ye(),e=su(),r=Object.prototype.hasOwnProperty,n=e((function(e,n,o){r.call(e,o)?e[o].push(n):t(e,o,[n])}));return ms=n}var cu=ne(uu());const hu="\n- ${scopeHeader} ${commitlint.message} ${commitLink} ${prLink}";class fu{options;constructor(t){this.options=t}format(t,e){const{types:r=[],commitBody:n=!1}={...this.options,...e},o=[],i=cu(t,(t=>t.commitlint.type?t.commitlint.type:t.commitlint.message));return r.forEach((t=>{const{type:r,section:a,hidden:s}=t;if(s)return;const u=i[r]||[];u.length>0&&(o.push(a||""),u.forEach((t=>{if(o.push(this.formatCommit(t,e)),n&&t.commitlint.body){const e=t.commitlint.body.split("\n").map((t=>` ${t}`));o.push(...e)}})))})),o}formatCommit(t,e){const{commitlint:r,base:{hash:n},prNumber:o}=t,{repoUrl:i,formatTemplate:a=hu}={...this.options,...e},s=r.scope?this.formatScope(r.scope):"",u=o?this.foramtLink("#"+o,i?`${i}/pull/${o}`:""):"",c=n?this.foramtLink(n.slice(0,7),i?`${i}/commit/${n}`:""):"";return this.options.shell.format(a,{...t,scopeHeader:s,commitLink:c,prLink:u})}foramtLink(t,e){return e?`([${t}](${e}))`:`(${t})`}formatCommitLink(t,e){return e?`([${t}](${e}))`:`(${t})`}formatScope(t){return`**${t}:**`}}const lu="https://github.com";class gu extends Bi{options;githubManager;constructor(t,e){super(t),this.options=t,this.githubManager=e}async getFullCommit(t){const e={...this.options,...t},r=await this.getCommits(e);return(await Promise.all(r.map((async t=>{let{prNumber:e}=t;if(!e&&t.base.subject){const r=t.base.subject.match(/\(#(\d+)\)/);r&&(e=r[1],t.prNumber=e)}if(!e)return t;return(await this.githubManager.getPullRequestCommits(+e)).map((({sha:t,commit:{message:r}})=>Object.assign(this.toCommitValue(t,r),{prNumber:e})))})))).flat()}async transformWorkspace(t,e){const r=[lu,e.shared.authorName,e.shared.repoName].join("/"),n={...e.getConfig("changelog"),githubRootPath:r,mergePRcommit:!0,shell:e.shell,logger:e.logger},o=new gu(n,this.githubManager),i=new fu(n);return await Promise.all(t.map((async t=>{const e=await o.getFullCommit({from:t.lastTag??"",directory:t.path,fileds:Ei});if("string"==typeof e)return{...t,changelog:e};const a=i.format(e,{...n,repoUrl:r});return{...t,changelog:a.join("\n")}})))}}class pu{options;constructor(t){this.options=t}compare(t,e){return"function"==typeof this.options.compare?this.options.compare(t,e):t.startsWith(e)}toChangeLabel(t,e=this.options.changePackagesLabel){return e.replace("${name}",t)}toChangeLabels(t,e=this.options.changePackagesLabel){return t.map((t=>this.toChangeLabel(t,e)))}pick(t,e=this.options.packagesDirectories){const r=[];for(const n of e)for(const e of t)if(this.compare(e,n)){r.push(n);break}return r}}class mu{static readJson(t){const e=Qt.readFileSync(t,"utf-8");return JSON.parse(e)}static toWorkspace(t,e){let{root:r,packageJson:n}=t;const o=t.path;if(!o)throw new Error("path is not required!");return r=r||Xt.join(e,o),n=n||mu.readJson(Xt.join(r,bi)),{name:n.name,version:n.version,path:o,root:r,packageJson:n}}}class vu extends Ni{releaseTask=null;workspacesList=[];_skip=!1;releaseLabel;constructor(t){super(t,"workspaces"),this.releaseLabel=new pu({changePackagesLabel:this.context.shared.changePackagesLabel||"change:${name}",packagesDirectories:this.context.shared.packagesDirectories||[],compare:(t,e)=>Yt.resolve(t).startsWith(Yt.resolve(e))})}enabled(){return!this._skip&&!this.getConfig("skip")}async onBefore(){const t=this.getConfig("workspace");if(t)return this.logger.debug("Use the specified workspace",t),void this.setCurrentWorkspace(t,[]);const e=await this.getWorkspaces();if(this.getConfig("skipCheckPackage")||0===e.length)throw new Error("No changes to publish packages");const{publishPath:r}=this.context.shared;if(r){const t=e.find((t=>Yt.resolve(t.root)===Yt.resolve(r)));if(this.nextSkip(),!t)throw new Error(`No workspace found for: ${r}`);return this.logger.debug(`Workspace of ${r} find!`,Yt.join(t.root,bi)),void this.setCurrentWorkspace(t,[t])}const[n,...o]=e;this.workspacesList=o,this.setCurrentWorkspace(n,e)}nextSkip(){this._skip=!0,this.logger.debug("skip next workspace")}setReleaseTask(t){this.releaseTask=t}setCurrentWorkspace(t,e){this.context.setShared({publishPath:t.path}),this.setConfig({workspace:t,workspaces:e})}async getGitWorkspaces(){const t=this.context.sourceBranch,e=await this.shell.exec(`git diff --name-only origin/${t}...HEAD`,{dryRun:!1});return"string"==typeof e?e.split("\n"):[]}async getChangedPackages(t,e){if(this.logger.debug("changeLabels",e),Array.isArray(e)&&e.length>0){const r=t.filter((t=>{const r=this.releaseLabel.toChangeLabel(t);return e.includes(r)}));return this.logger.debug("changed by labels",r),r}const r=await this.getGitWorkspaces();return this.logger.debug("changed by git",r),this.releaseLabel.pick(r,t)}getProjectWorkspaces(){const t=this.context.rootPath,e=this.context.shared.packagesDirectories;if(Array.isArray(e)&&e.length>0)return e.map((e=>mu.toWorkspace({path:e},t)));return(Kt.findWorkspaces(t)||[]).map((e=>({name:e.package.name,version:e.package.version,path:Yt.relative(t,e.location),root:Yt.resolve(t,e.location),packageJson:e.package})))}async getWorkspaces(){const t=this.getProjectWorkspaces(),e=t.map((({path:t})=>t));this.logger.debug("packages",e);const r=this.getConfig("changeLabels"),n=await this.getChangedPackages(e,r);return this.setConfig({packages:e,changedPaths:n,projectWorkspaces:t}),this.logger.debug("changedPaths",n),t.filter((t=>n.includes(t.path)))}}function du(t,...e){return"function"==typeof t&&t.prototype&&t.prototype.constructor===t?new t(...e):t(...e)}function bu(t){return t.startsWith(".")?Yt.parse(t).name:t}async function yu(t){let e=null;try{e=(await import(t)).default}catch{try{e=(await import(Yt.join(process.cwd(),t))).default}catch{const r=Zt.createRequire(process.cwd());e=(await import(te.pathToFileURL(r.resolve(t,{paths:[process.cwd()]})).href)).default}}return[bu(t),e]}async function wu(t,e,r=5){const n=ee(r),o=e.map((([e,...r])=>n((()=>(async(e,...r)=>{if("string"==typeof e){const[,n]=await yu(e);return du(n,t,...r)}return du(e,t,...r)})(e,...r)))));return Promise.all(o)}const ku=[ki(vu),ki(class extends Ni{constructor(t,e){super(t,"changelog",{increment:"patch",changesetRoot:".changeset",tagTemplate:"${name}@${version}",tagPrefix:"${name}",tagMatch:"${name}@*",...e})}get changesetRoot(){return Xt.join(this.context.rootPath,this.getConfig("changesetRoot"))}get changesetConfigPath(){return Xt.join(this.changesetRoot,"config.json")}enabled(){return!this.getConfig("skip")}async onBefore(){if(!Qt.existsSync(this.changesetRoot))throw new Error(`Changeset directory ${this.changesetRoot} does not exist`);this.logger.debug(`${this.changesetRoot} exists`)}mergeWorkspaces(t){return t.map((t=>{const e=mu.toWorkspace({path:t.path},this.context.rootPath),r={...t,version:e.version};return r.tagName=this.generateTagName(r),r}))}async onExec(t){const e=await this.step({label:"Generate Changelogs",task:()=>Promise.all(this.context.workspaces.map((t=>this.generateChangelog(t))))});this.context.setWorkspaces(e)}async onSuccess(){const t=this.context.workspaces;this.getConfig("skipChangeset")?this.logger.debug("Skip generate changeset files"):(await this.step({label:"Changeset Version",task:()=>Promise.all(t.map((t=>this.generateChangesetFile(t))))}),await this.context.runChangesetsCli("version",["--no-changelog","--update-dependencies"]),this.getConfig("ignoreNonUpdatedPackages")&&await this.restoreIgnorePackages());const e=this.mergeWorkspaces(t);this.logger.debug("new workspaces",e),this.context.setWorkspaces(e)}async restoreIgnorePackages(){const{changedPaths:t=[],packages:e=[]}=this.context.getConfig("workspaces"),r=e.filter((e=>!t.includes(e))).map((t=>mu.toWorkspace({path:t},this.context.rootPath).path));this.logger.debug("noChangedPackages",r),r.length>0&&await this.shell.exec(["git","restore",...r])}getTagPrefix(t){return this.shell.format(this.getConfig("tagPrefix"),t)}async generateChangelog(t){const e=await this.getTagName(t);this.logger.debug("tagName is:",e);const r={...this.getConfig(),from:e,directory:t.path,shell:this.shell,fileds:Ei,logger:this.logger},n=new Bi(r),o=await n.getCommits(r),i=new fu(r).format(o);return{...t,lastTag:e,changelog:i.join("\n")}}generateTagName(t){try{const e=this.getConfig("tagTemplate");return this.shell.format(e,t)}catch(e){return console.error(`Error generating tag name for ${t.name}:`,e),`${t.name}-v0.0.0`}}async getTagName(t){try{const e=this.generateTagName(t),r=this.shell.format(this.getConfig("tagMatch"),t),n=await this.shell.exec(`git for-each-ref --sort=-creatordate --format "%(refname:short)|%(creatordate:iso8601)" "refs/tags/${r}"`,{dryRun:!1});if(!n)return e;const o=n.split("\n").filter(Boolean);if(0===o.length)return e;return o[0].split("|")[0]}catch(e){console.error(`Error getting tag for ${t.name}:`,e);return this.generateTagName(t)}}getIncrement(){const t=this.context.getConfig("workspaces.changeLabels");if(Array.isArray(t)&&t.length>0){if(t.includes("increment:major"))return"major";if(t.includes("increment:minor"))return"minor"}return this.getConfig("increment","patch")}async generateChangesetFile(t){const{name:e,version:r}=t,n=`${e}-${r}`.replace(/[\/\\]/g,"_"),o=Xt.join(this.changesetRoot,`${n}.md`),i=this.getIncrement();this.logger.debug("increment is:",[i]);const a=this.shell.format("---\n'${name}': '${increment}'\n---\n\n${changelog}",{...t,increment:i});if(this.context.dryRun)return this.logger.info(`Changeset [${o}] will be created, content is:`),void this.logger.log(a);Qt.existsSync(o)?this.logger.info(`Changeset ${n} already exists`):Qt.writeFileSync(o,a,"utf-8")}},{}),ki(class extends Oi{context;releaseParams;githubManager;constructor(t,e){super(t,"githubPR",{releaseName:"Release ${name} v${version}",...e}),this.context=t,this.githubManager=new xi(this.context),this.releaseParams=new Ri(t.shell,t.logger,{PRTitle:this.getConfig("PRTitle",this.context.shared.PRTitle),PRBody:this.getConfig("PRBody",this.context.shared.PRBody),...this.props})}enabled(t){return!this.getConfig("skip")}get isPublish(){return!this.getConfig("releasePR")}async isGithubRepository(){try{return(await this.getRemoteUrl()).includes("github.com")}catch{return!1}}async onBefore(){this.logger.debug("GithubPR onBefore");if(!await this.isGithubRepository())throw new Error("Current repository is not a GitHub repository. GitHub PR workflow is only available for GitHub repositories.");if(await super.onBefore(),this.isPublish){const t=this.getEnv("NPM_TOKEN");if(!t)throw new Error("NPM_TOKEN is not set");await this.shell.exec(`npm config set //registry.npmjs.org/:_authToken=${t}`)}}async onExec(){const t=this.context.workspaces,e=new gu(this.context.getConfig("changelog"),this.githubManager),r=await this.step({label:"GithubPR Changelogs",task:()=>e.transformWorkspace(t,this.context)});this.context.setWorkspaces(r)}async onSuccess(){this.isPublish?await this.publishPR(this.context.workspaces):await this.releasePR(this.context.workspaces)}async releasePR(t){await this.step({label:"Release Commit",task:()=>this.relesaeCommit(t)});const e=await this.step({label:"Create Release Branch",task:()=>this.createReleaseBranch(t)});await this.releasePullRequest(t,e)}async publishPR(t){this.getConfig("dryRunCreatePR")||(await this.context.runChangesetsCli("publish"),await this.shell.exec("git push origin --tags")),await this.step({label:"Release Github",task:()=>Promise.all(t.map((t=>(this.logger.debug(t),this.githubManager.createRelease(t)))))})}async relesaeCommit(t){const e=this.getConfig("commitArgs",[]);if(1===t.length)return await this.shell.exec("git add ."),void await this.commitWorkspace(t[0],e);await this.shell.exec("git add .");const r=`chore(tag): ${t.map((t=>`${t.name} v${t.version}`)).join(",")}`;await this.commit(r,e)}async releasePullRequest(t,e){const r=await this.step({label:"Create Release PR",task:()=>this.createReleasePR(t,e)});if(this.githubManager.autoMergeReleasePR){const{releaseBranch:t}=e;return await this.step({label:`Merge Release PR(${r})`,task:()=>this.githubManager.mergePR(r,t)}),void await this.step({label:`Checked Release PR(${r})`,task:()=>this.githubManager.checkedPR(r,t)})}this.logger.info(`Please manually merge PR(#${r}) and complete the publishing process afterwards`)}async commitWorkspace(t,e=[]){const r=this.shell.format(this.getConfig("commitMessage","chore(tag): ${name} v${version}"),t);return await this.commit(r,e)}async createReleaseBranch(t){const e=this.releaseParams.getReleaseBranchParams(t,this.context.getTemplateContext()),{tagName:r,releaseBranch:n}=e;if("string"!=typeof r)throw new Error("Tag name is not a string");const{sourceBranch:o,currentBranch:i}=this.context.shared;this.context.logger.debug("PR TagName is:",r),this.context.logger.debug("PR CurrentBranch is:",i),this.context.logger.debug("PR SourceBranch is:",o),this.context.logger.debug("PR ReleaseBranch is:",n);try{await this.context.shell.exec(`git fetch origin ${o} ${i}`),await this.context.shell.exec(`git checkout -b ${n} ${i}`),await this.context.shell.exec(`git push origin ${n}`)}catch(t){throw t.message.includes("remote: Permission to ")&&this.context.logger.warn('Token maybe not allow Workflow permissions, can you try to open "Workflow permissions" -> "Read and write permissions" for this token?'),t}return{tagName:r,releaseBranch:n}}async createReleasePR(t,e){let r=[(await this.githubManager.createReleasePRLabel()).name];if(this.getConfig("pushChangeLabels")){const t=this.context.getConfig("workspaces.changeLabels");Array.isArray(t)&&t.length>0&&r.push(...t)}r=Array.from(new Set(r)),this.logger.debug("Release PR labels:",r);const n=this.context.getTemplateContext(),o=this.releaseParams.getPRTitle(e,n),i=this.releaseParams.getPRBody(t,e,n);return this.githubManager.createReleasePR({title:o,body:i,base:this.context.sourceBranch,head:e.releaseBranch,labels:r})}},{})];var _u,Ru,xu,Pu;function ju(){if(Ru)return _u;Ru=1;var t=fo(),e=gi(),r=po(),n=_e(),o=pi();return _u=function(i,a,s,u){if(!n(i))return i;for(var c=-1,h=(a=e(a,i)).length,f=h-1,l=i;null!=l&&++c<h;){var g=o(a[c]),p=s;if("__proto__"===g||"constructor"===g||"prototype"===g)return i;if(c!=f){var m=l[g];void 0===(p=u?u(m,g,l):void 0)&&(p=n(m)?m:r(a[c+1])?[]:{})}t(l,g,p),l=l[g]}return i},_u}function Cu(){if(Pu)return xu;Pu=1;var t=ju();return xu=function(e,r,n){return null==e?e:t(e,r,n)},xu}var $u=ne(Cu());exports.CHANGELOG_ALL_FIELDS=Ei,exports.GitChangelog=Bi,exports.GitChangelogFormatter=fu,exports.Plugin=Ni,exports.ReleaseContext=wi,exports.ReleaseLabel=pu,exports.ReleaseTask=class{executor;defaultTuples;context;constructor(t={},e=new zt.AsyncExecutor,r=ku){this.executor=e,this.defaultTuples=r,this.context=new wi(t)}getContext(){return this.context}async usePlugins(t){t=t||this.context.shared.plugins||[];const e=await wu(this.context,[...this.defaultTuples,...t]);return e.forEach((t=>{t instanceof vu&&t.setReleaseTask(this),this.executor.use(t)})),e}async run(){return this.executor.exec(this.context,(t=>Promise.resolve(t)))}async exec(t){if("false"===this.context.env.get("FE_RELEASE"))throw new Error("Skip Release");return await this.usePlugins(t),this.run()}},exports.factory=du,exports.load=yu,exports.loaderPluginsFromPluginTuples=wu,exports.reduceOptions=function(t,e){return Object.entries(t).reduce(((t,[r,n])=>(r.includes(".")?$u(t,r,n):$u(t,e?`${e}.${r}`:r,n),t)),{})},exports.tuple=ki;
1
+ "use strict";var t,e,r,n,o,i,a,s,u,c,h,f,l,g,p,m,d,v,b,y,w,k,_,R,x,P,j,C,$,N,O,E,B,T,S,L,A,W,U,G,M,D,F,H,I,q,z,V,J,Y,K,Q,X,Z,tt,et,rt,nt,ot,it,at,st,ut,ct,ht,ft,lt,gt,pt,mt,dt,vt,bt,yt,wt,kt,_t,Rt,xt,Pt,jt,Ct,$t,Nt,Ot,Et,Bt,Tt,St,Lt,At,Wt,Ut,Gt,Mt,Dt,Ft,Ht,It=require("@qlover/scripts-context"),qt=require("@qlover/env-loader"),zt=require("@qlover/fe-corekit"),Vt=require("@octokit/rest"),Jt=require("gitlog"),Yt=require("node:path"),Kt=require("find-workspaces"),Qt=require("fs"),Xt=require("path"),Zt=require("node:module"),te=require("node:url"),ee=require("p-limit"),re="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function ne(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function oe(){if(e)return t;return e=1,t=function(){this.__data__=[],this.size=0}}function ie(){if(n)return r;return n=1,r=function(t,e){return t===e||t!=t&&e!=e}}function ae(){if(i)return o;i=1;var t=ie();return o=function(e,r){for(var n=e.length;n--;)if(t(e[n][0],r))return n;return-1}}function se(){if(s)return a;s=1;var t=ae(),e=Array.prototype.splice;return a=function(r){var n=this.__data__,o=t(n,r);return!(o<0)&&(o==n.length-1?n.pop():e.call(n,o,1),--this.size,!0)}}function ue(){if(c)return u;c=1;var t=ae();return u=function(e){var r=this.__data__,n=t(r,e);return n<0?void 0:r[n][1]}}function ce(){if(f)return h;f=1;var t=ae();return h=function(e){return t(this.__data__,e)>-1}}function he(){if(g)return l;g=1;var t=ae();return l=function(e,r){var n=this.__data__,o=t(n,e);return o<0?(++this.size,n.push([e,r])):n[o][1]=r,this}}function fe(){if(m)return p;m=1;var t=oe(),e=se(),r=ue(),n=ce(),o=he();function i(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}return i.prototype.clear=t,i.prototype.delete=e,i.prototype.get=r,i.prototype.has=n,i.prototype.set=o,p=i}function le(){if(v)return d;v=1;var t=fe();return d=function(){this.__data__=new t,this.size=0}}function ge(){if(y)return b;return y=1,b=function(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}}function pe(){if(k)return w;return k=1,w=function(t){return this.__data__.get(t)}}function me(){if(R)return _;return R=1,_=function(t){return this.__data__.has(t)}}function de(){if(P)return x;P=1;var t="object"==typeof re&&re&&re.Object===Object&&re;return x=t}function ve(){if(C)return j;C=1;var t=de(),e="object"==typeof self&&self&&self.Object===Object&&self,r=t||e||Function("return this")();return j=r}function be(){if(N)return $;N=1;var t=ve().Symbol;return $=t}function ye(){if(E)return O;E=1;var t=be(),e=Object.prototype,r=e.hasOwnProperty,n=e.toString,o=t?t.toStringTag:void 0;return O=function(t){var e=r.call(t,o),i=t[o];try{t[o]=void 0;var a=!0}catch(t){}var s=n.call(t);return a&&(e?t[o]=i:delete t[o]),s}}function we(){if(T)return B;T=1;var t=Object.prototype.toString;return B=function(e){return t.call(e)}}function ke(){if(L)return S;L=1;var t=be(),e=ye(),r=we(),n=t?t.toStringTag:void 0;return S=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":n&&n in Object(t)?e(t):r(t)}}function _e(){if(W)return A;return W=1,A=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}}function Re(){if(G)return U;G=1;var t=ke(),e=_e();return U=function(r){if(!e(r))return!1;var n=t(r);return"[object Function]"==n||"[object GeneratorFunction]"==n||"[object AsyncFunction]"==n||"[object Proxy]"==n}}function xe(){if(D)return M;D=1;var t=ve()["__core-js_shared__"];return M=t}function Pe(){if(H)return F;H=1;var t,e=xe(),r=(t=/[^.]+$/.exec(e&&e.keys&&e.keys.IE_PROTO||""))?"Symbol(src)_1."+t:"";return F=function(t){return!!r&&r in t}}function je(){if(q)return I;q=1;var t=Function.prototype.toString;return I=function(e){if(null!=e){try{return t.call(e)}catch(t){}try{return e+""}catch(t){}}return""}}function Ce(){if(V)return z;V=1;var t=Re(),e=Pe(),r=_e(),n=je(),o=/^\[object .+?Constructor\]$/,i=Function.prototype,a=Object.prototype,s=i.toString,u=a.hasOwnProperty,c=RegExp("^"+s.call(u).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");return z=function(i){return!(!r(i)||e(i))&&(t(i)?c:o).test(n(i))}}function $e(){if(Y)return J;return Y=1,J=function(t,e){return null==t?void 0:t[e]}}function Ne(){if(Q)return K;Q=1;var t=Ce(),e=$e();return K=function(r,n){var o=e(r,n);return t(o)?o:void 0}}function Oe(){if(Z)return X;Z=1;var t=Ne()(ve(),"Map");return X=t}function Ee(){if(et)return tt;et=1;var t=Ne()(Object,"create");return tt=t}function Be(){if(nt)return rt;nt=1;var t=Ee();return rt=function(){this.__data__=t?t(null):{},this.size=0}}function Te(){if(it)return ot;return it=1,ot=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}}function Se(){if(st)return at;st=1;var t=Ee(),e=Object.prototype.hasOwnProperty;return at=function(r){var n=this.__data__;if(t){var o=n[r];return"__lodash_hash_undefined__"===o?void 0:o}return e.call(n,r)?n[r]:void 0}}function Le(){if(ct)return ut;ct=1;var t=Ee(),e=Object.prototype.hasOwnProperty;return ut=function(r){var n=this.__data__;return t?void 0!==n[r]:e.call(n,r)}}function Ae(){if(ft)return ht;ft=1;var t=Ee();return ht=function(e,r){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=t&&void 0===r?"__lodash_hash_undefined__":r,this}}function We(){if(gt)return lt;gt=1;var t=Be(),e=Te(),r=Se(),n=Le(),o=Ae();function i(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}return i.prototype.clear=t,i.prototype.delete=e,i.prototype.get=r,i.prototype.has=n,i.prototype.set=o,lt=i}function Ue(){if(mt)return pt;mt=1;var t=We(),e=fe(),r=Oe();return pt=function(){this.size=0,this.__data__={hash:new t,map:new(r||e),string:new t}}}function Ge(){if(vt)return dt;return vt=1,dt=function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}}function Me(){if(yt)return bt;yt=1;var t=Ge();return bt=function(e,r){var n=e.__data__;return t(r)?n["string"==typeof r?"string":"hash"]:n.map}}function De(){if(kt)return wt;kt=1;var t=Me();return wt=function(e){var r=t(this,e).delete(e);return this.size-=r?1:0,r}}function Fe(){if(Rt)return _t;Rt=1;var t=Me();return _t=function(e){return t(this,e).get(e)}}function He(){if(Pt)return xt;Pt=1;var t=Me();return xt=function(e){return t(this,e).has(e)}}function Ie(){if(Ct)return jt;Ct=1;var t=Me();return jt=function(e,r){var n=t(this,e),o=n.size;return n.set(e,r),this.size+=n.size==o?0:1,this}}function qe(){if(Nt)return $t;Nt=1;var t=Ue(),e=De(),r=Fe(),n=He(),o=Ie();function i(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}return i.prototype.clear=t,i.prototype.delete=e,i.prototype.get=r,i.prototype.has=n,i.prototype.set=o,$t=i}function ze(){if(Et)return Ot;Et=1;var t=fe(),e=Oe(),r=qe();return Ot=function(n,o){var i=this.__data__;if(i instanceof t){var a=i.__data__;if(!e||a.length<199)return a.push([n,o]),this.size=++i.size,this;i=this.__data__=new r(a)}return i.set(n,o),this.size=i.size,this}}function Ve(){if(Tt)return Bt;Tt=1;var t=fe(),e=le(),r=ge(),n=pe(),o=me(),i=ze();function a(e){var r=this.__data__=new t(e);this.size=r.size}return a.prototype.clear=e,a.prototype.delete=r,a.prototype.get=n,a.prototype.has=o,a.prototype.set=i,Bt=a}function Je(){if(Lt)return St;Lt=1;var t=Ne(),e=function(){try{var e=t(Object,"defineProperty");return e({},"",{}),e}catch(t){}}();return St=e}function Ye(){if(Wt)return At;Wt=1;var t=Je();return At=function(e,r,n){"__proto__"==r&&t?t(e,r,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[r]=n}}function Ke(){if(Gt)return Ut;Gt=1;var t=Ye(),e=ie();return Ut=function(r,n,o){(void 0!==o&&!e(r[n],o)||void 0===o&&!(n in r))&&t(r,n,o)}}function Qe(){if(Dt)return Mt;return Dt=1,Mt=function(t){return function(e,r,n){for(var o=-1,i=Object(e),a=n(e),s=a.length;s--;){var u=a[t?s:++o];if(!1===r(i[u],u,i))break}return e}}}function Xe(){if(Ht)return Ft;Ht=1;var t=Qe()();return Ft=t}var Ze,tr,er,rr,nr,or,ir,ar,sr,ur,cr,hr,fr,lr,gr,pr,mr,dr,vr,br,yr,wr,kr,_r,Rr,xr,Pr,jr,Cr,$r,Nr,Or,Er,Br={exports:{}};function Tr(){return Ze||(Ze=1,function(t,e){var r=ve(),n=e&&!e.nodeType&&e,o=n&&t&&!t.nodeType&&t,i=o&&o.exports===n?r.Buffer:void 0,a=i?i.allocUnsafe:void 0;t.exports=function(t,e){if(e)return t.slice();var r=t.length,n=a?a(r):new t.constructor(r);return t.copy(n),n}}(Br,Br.exports)),Br.exports}function Sr(){if(er)return tr;er=1;var t=ve().Uint8Array;return tr=t}function Lr(){if(nr)return rr;nr=1;var t=Sr();return rr=function(e){var r=new e.constructor(e.byteLength);return new t(r).set(new t(e)),r}}function Ar(){if(ir)return or;ir=1;var t=Lr();return or=function(e,r){var n=r?t(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}}function Wr(){if(sr)return ar;return sr=1,ar=function(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r<n;)e[r]=t[r];return e}}function Ur(){if(cr)return ur;cr=1;var t=_e(),e=Object.create,r=function(){function r(){}return function(n){if(!t(n))return{};if(e)return e(n);r.prototype=n;var o=new r;return r.prototype=void 0,o}}();return ur=r}function Gr(){if(fr)return hr;return fr=1,hr=function(t,e){return function(r){return t(e(r))}}}function Mr(){if(gr)return lr;gr=1;var t=Gr()(Object.getPrototypeOf,Object);return lr=t}function Dr(){if(mr)return pr;mr=1;var t=Object.prototype;return pr=function(e){var r=e&&e.constructor;return e===("function"==typeof r&&r.prototype||t)}}function Fr(){if(vr)return dr;vr=1;var t=Ur(),e=Mr(),r=Dr();return dr=function(n){return"function"!=typeof n.constructor||r(n)?{}:t(e(n))}}function Hr(){if(yr)return br;return yr=1,br=function(t){return null!=t&&"object"==typeof t}}function Ir(){if(kr)return wr;kr=1;var t=ke(),e=Hr();return wr=function(r){return e(r)&&"[object Arguments]"==t(r)}}function qr(){if(Rr)return _r;Rr=1;var t=Ir(),e=Hr(),r=Object.prototype,n=r.hasOwnProperty,o=r.propertyIsEnumerable,i=t(function(){return arguments}())?t:function(t){return e(t)&&n.call(t,"callee")&&!o.call(t,"callee")};return _r=i}function zr(){if(Pr)return xr;Pr=1;var t=Array.isArray;return xr=t}function Vr(){if(Cr)return jr;Cr=1;return jr=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}}function Jr(){if(Nr)return $r;Nr=1;var t=Re(),e=Vr();return $r=function(r){return null!=r&&e(r.length)&&!t(r)}}function Yr(){if(Er)return Or;Er=1;var t=Jr(),e=Hr();return Or=function(r){return e(r)&&t(r)}}var Kr,Qr,Xr,Zr,tn,en,rn,nn,on,an={exports:{}};function sn(){if(Qr)return Kr;return Qr=1,Kr=function(){return!1}}function un(){return Xr||(Xr=1,function(t,e){var r=ve(),n=sn(),o=e&&!e.nodeType&&e,i=o&&t&&!t.nodeType&&t,a=i&&i.exports===o?r.Buffer:void 0,s=(a?a.isBuffer:void 0)||n;t.exports=s}(an,an.exports)),an.exports}function cn(){if(tn)return Zr;tn=1;var t=ke(),e=Mr(),r=Hr(),n=Function.prototype,o=Object.prototype,i=n.toString,a=o.hasOwnProperty,s=i.call(Object);return Zr=function(n){if(!r(n)||"[object Object]"!=t(n))return!1;var o=e(n);if(null===o)return!0;var u=a.call(o,"constructor")&&o.constructor;return"function"==typeof u&&u instanceof u&&i.call(u)==s}}function hn(){if(rn)return en;rn=1;var t=ke(),e=Vr(),r=Hr(),n={};return n["[object Float32Array]"]=n["[object Float64Array]"]=n["[object Int8Array]"]=n["[object Int16Array]"]=n["[object Int32Array]"]=n["[object Uint8Array]"]=n["[object Uint8ClampedArray]"]=n["[object Uint16Array]"]=n["[object Uint32Array]"]=!0,n["[object Arguments]"]=n["[object Array]"]=n["[object ArrayBuffer]"]=n["[object Boolean]"]=n["[object DataView]"]=n["[object Date]"]=n["[object Error]"]=n["[object Function]"]=n["[object Map]"]=n["[object Number]"]=n["[object Object]"]=n["[object RegExp]"]=n["[object Set]"]=n["[object String]"]=n["[object WeakMap]"]=!1,en=function(o){return r(o)&&e(o.length)&&!!n[t(o)]}}function fn(){if(on)return nn;return on=1,nn=function(t){return function(e){return t(e)}}}var ln,gn,pn,mn,dn,vn,bn,yn,wn,kn,_n,Rn,xn,Pn,jn,Cn,$n,Nn,On,En,Bn,Tn,Sn,Ln,An,Wn,Un,Gn,Mn,Dn,Fn,Hn,In,qn,zn,Vn,Jn,Yn,Kn,Qn,Xn,Zn,to,eo,ro,no,oo,io,ao,so={exports:{}};function uo(){return ln||(ln=1,function(t,e){var r=de(),n=e&&!e.nodeType&&e,o=n&&t&&!t.nodeType&&t,i=o&&o.exports===n&&r.process,a=function(){try{var t=o&&o.require&&o.require("util").types;return t||i&&i.binding&&i.binding("util")}catch(t){}}();t.exports=a}(so,so.exports)),so.exports}function co(){if(pn)return gn;pn=1;var t=hn(),e=fn(),r=uo(),n=r&&r.isTypedArray,o=n?e(n):t;return gn=o}function ho(){if(dn)return mn;return dn=1,mn=function(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}}function fo(){if(bn)return vn;bn=1;var t=Ye(),e=ie(),r=Object.prototype.hasOwnProperty;return vn=function(n,o,i){var a=n[o];r.call(n,o)&&e(a,i)&&(void 0!==i||o in n)||t(n,o,i)}}function lo(){if(wn)return yn;wn=1;var t=fo(),e=Ye();return yn=function(r,n,o,i){var a=!o;o||(o={});for(var s=-1,u=n.length;++s<u;){var c=n[s],h=i?i(o[c],r[c],c,o,r):void 0;void 0===h&&(h=r[c]),a?e(o,c,h):t(o,c,h)}return o}}function go(){if(_n)return kn;return _n=1,kn=function(t,e){for(var r=-1,n=Array(t);++r<t;)n[r]=e(r);return n}}function po(){if(xn)return Rn;xn=1;var t=/^(?:0|[1-9]\d*)$/;return Rn=function(e,r){var n=typeof e;return!!(r=null==r?9007199254740991:r)&&("number"==n||"symbol"!=n&&t.test(e))&&e>-1&&e%1==0&&e<r}}function mo(){if(jn)return Pn;jn=1;var t=go(),e=qr(),r=zr(),n=un(),o=po(),i=co(),a=Object.prototype.hasOwnProperty;return Pn=function(s,u){var c=r(s),h=!c&&e(s),f=!c&&!h&&n(s),l=!c&&!h&&!f&&i(s),g=c||h||f||l,p=g?t(s.length,String):[],m=p.length;for(var d in s)!u&&!a.call(s,d)||g&&("length"==d||f&&("offset"==d||"parent"==d)||l&&("buffer"==d||"byteLength"==d||"byteOffset"==d)||o(d,m))||p.push(d);return p}}function vo(){if($n)return Cn;return $n=1,Cn=function(t){var e=[];if(null!=t)for(var r in Object(t))e.push(r);return e}}function bo(){if(On)return Nn;On=1;var t=_e(),e=Dr(),r=vo(),n=Object.prototype.hasOwnProperty;return Nn=function(o){if(!t(o))return r(o);var i=e(o),a=[];for(var s in o)("constructor"!=s||!i&&n.call(o,s))&&a.push(s);return a}}function yo(){if(Bn)return En;Bn=1;var t=mo(),e=bo(),r=Jr();return En=function(n){return r(n)?t(n,!0):e(n)}}function wo(){if(Sn)return Tn;Sn=1;var t=lo(),e=yo();return Tn=function(r){return t(r,e(r))}}function ko(){if(An)return Ln;An=1;var t=Ke(),e=Tr(),r=Ar(),n=Wr(),o=Fr(),i=qr(),a=zr(),s=Yr(),u=un(),c=Re(),h=_e(),f=cn(),l=co(),g=ho(),p=wo();return Ln=function(m,d,v,b,y,w,k){var _=g(m,v),R=g(d,v),x=k.get(R);if(x)t(m,v,x);else{var P=w?w(_,R,v+"",m,d,k):void 0,j=void 0===P;if(j){var C=a(R),$=!C&&u(R),N=!C&&!$&&l(R);P=R,C||$||N?a(_)?P=_:s(_)?P=n(_):$?(j=!1,P=e(R,!0)):N?(j=!1,P=r(R,!0)):P=[]:f(R)||i(R)?(P=_,i(_)?P=p(_):h(_)&&!c(_)||(P=o(R))):j=!1}j&&(k.set(R,P),y(P,R,b,w,k),k.delete(R)),t(m,v,P)}}}function _o(){if(Un)return Wn;Un=1;var t=Ve(),e=Ke(),r=Xe(),n=ko(),o=_e(),i=yo(),a=ho();return Wn=function s(u,c,h,f,l){u!==c&&r(c,(function(r,i){if(l||(l=new t),o(r))n(u,c,i,h,s,f,l);else{var g=f?f(a(u,i),r,i+"",u,c,l):void 0;void 0===g&&(g=r),e(u,i,g)}}),i)},Wn}function Ro(){if(Mn)return Gn;return Mn=1,Gn=function(t){return t}}function xo(){if(Fn)return Dn;return Fn=1,Dn=function(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}}function Po(){if(In)return Hn;In=1;var t=xo(),e=Math.max;return Hn=function(r,n,o){return n=e(void 0===n?r.length-1:n,0),function(){for(var i=arguments,a=-1,s=e(i.length-n,0),u=Array(s);++a<s;)u[a]=i[n+a];a=-1;for(var c=Array(n+1);++a<n;)c[a]=i[a];return c[n]=o(u),t(r,this,c)}},Hn}function jo(){if(zn)return qn;return zn=1,qn=function(t){return function(){return t}}}function Co(){if(Jn)return Vn;Jn=1;var t=jo(),e=Je();return Vn=e?function(r,n){return e(r,"toString",{configurable:!0,enumerable:!1,value:t(n),writable:!0})}:Ro()}function $o(){if(Kn)return Yn;Kn=1;var t=Date.now;return Yn=function(e){var r=0,n=0;return function(){var o=t(),i=16-(o-n);if(n=o,i>0){if(++r>=800)return arguments[0]}else r=0;return e.apply(void 0,arguments)}},Yn}function No(){if(Xn)return Qn;Xn=1;var t=Co(),e=$o()(t);return Qn=e}function Oo(){if(to)return Zn;to=1;var t=Ro(),e=Po(),r=No();return Zn=function(n,o){return r(e(n,o,t),n+"")}}function Eo(){if(ro)return eo;ro=1;var t=ie(),e=Jr(),r=po(),n=_e();return eo=function(o,i,a){if(!n(a))return!1;var s=typeof i;return!!("number"==s?e(a)&&r(i,a.length):"string"==s&&i in a)&&t(a[i],o)}}function Bo(){if(oo)return no;oo=1;var t=Oo(),e=Eo();return no=function(r){return t((function(t,n){var o=-1,i=n.length,a=i>1?n[i-1]:void 0,s=i>2?n[2]:void 0;for(a=r.length>3&&"function"==typeof a?(i--,a):void 0,s&&e(n[0],n[1],s)&&(a=i<3?void 0:a,i=1),t=Object(t);++o<i;){var u=n[o];u&&r(t,u,o,a)}return t}))}}function To(){if(ao)return io;ao=1;var t=_o(),e=Bo()((function(e,r,n){t(e,r,n)}));return io=e}var So,Lo,Ao,Wo,Uo,Go,Mo,Do,Fo,Ho,Io,qo,zo,Vo,Jo,Yo,Ko,Qo,Xo,Zo,ti,ei,ri,ni,oi=ne(To());function ii(){if(Lo)return So;Lo=1;var t=ke(),e=Hr();return So=function(r){return"symbol"==typeof r||e(r)&&"[object Symbol]"==t(r)}}function ai(){if(Wo)return Ao;Wo=1;var t=zr(),e=ii(),r=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,n=/^\w*$/;return Ao=function(o,i){if(t(o))return!1;var a=typeof o;return!("number"!=a&&"symbol"!=a&&"boolean"!=a&&null!=o&&!e(o))||(n.test(o)||!r.test(o)||null!=i&&o in Object(i))}}function si(){if(Go)return Uo;Go=1;var t=qe();function e(r,n){if("function"!=typeof r||null!=n&&"function"!=typeof n)throw new TypeError("Expected a function");var o=function(){var t=arguments,e=n?n.apply(this,t):t[0],i=o.cache;if(i.has(e))return i.get(e);var a=r.apply(this,t);return o.cache=i.set(e,a)||i,a};return o.cache=new(e.Cache||t),o}return e.Cache=t,Uo=e}function ui(){if(Do)return Mo;Do=1;var t=si();return Mo=function(e){var r=t(e,(function(t){return 500===n.size&&n.clear(),t})),n=r.cache;return r}}function ci(){if(Ho)return Fo;Ho=1;var t=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,e=/\\(\\)?/g,r=ui()((function(r){var n=[];return 46===r.charCodeAt(0)&&n.push(""),r.replace(t,(function(t,r,o,i){n.push(o?i.replace(e,"$1"):r||t)})),n}));return Fo=r}function hi(){if(qo)return Io;return qo=1,Io=function(t,e){for(var r=-1,n=null==t?0:t.length,o=Array(n);++r<n;)o[r]=e(t[r],r,t);return o}}function fi(){if(Vo)return zo;Vo=1;var t=be(),e=hi(),r=zr(),n=ii(),o=t?t.prototype:void 0,i=o?o.toString:void 0;return zo=function t(o){if("string"==typeof o)return o;if(r(o))return e(o,t)+"";if(n(o))return i?i.call(o):"";var a=o+"";return"0"==a&&1/o==-1/0?"-0":a},zo}function li(){if(Yo)return Jo;Yo=1;var t=fi();return Jo=function(e){return null==e?"":t(e)}}function gi(){if(Qo)return Ko;Qo=1;var t=zr(),e=ai(),r=ci(),n=li();return Ko=function(o,i){return t(o)?o:e(o,i)?[o]:r(n(o))}}function pi(){if(Zo)return Xo;Zo=1;var t=ii();return Xo=function(e){if("string"==typeof e||t(e))return e;var r=e+"";return"0"==r&&1/e==-1/0?"-0":r}}function mi(){if(ei)return ti;ei=1;var t=gi(),e=pi();return ti=function(r,n){for(var o=0,i=(n=t(n,r)).length;null!=r&&o<i;)r=r[e(n[o++])];return o&&o==i?r:void 0},ti}function di(){if(ni)return ri;ni=1;var t=mi();return ri=function(e,r,n){var o=null==e?void 0:t(e,r);return void 0===o?n:o},ri}var vi=ne(di());const bi="package.json",yi=[".env.local",".env"];class wi extends It.FeScriptContext{_env;shared;constructor(t){super(t),this._env=qt.Env.searchEnv({logger:this.logger,preloadList:this.feConfig.envOrder||yi}),this.shared=Object.assign({},this.feConfig.release,this.getDefaultShreadOptions(t.shared))}getDefaultShreadOptions(t){return{rootPath:process.cwd(),sourceBranch:this._env.get("FE_RELEASE_BRANCH")||this._env.get("FE_RELEASE_SOURCE_BRANCH")||"master",releaseEnv:this._env.get("FE_RELEASE_ENV")||this._env.get("NODE_ENV")||"development",...t}}get rootPath(){return this.shared.rootPath}get sourceBranch(){return this.shared.sourceBranch}get releaseEnv(){return this.shared.releaseEnv}get env(){return this._env}get workspaces(){return this.getConfig("workspaces.workspaces")}get workspace(){return this.getConfig("workspaces.workspace")}setWorkspaces(t){this.options.workspaces={...this.options.workspaces,workspaces:t}}setConfig(t){this.options=oi(this.options,t)}getConfig(t,e){return vi(this.options,t,e)}setShared(t){this.shared=oi(this.shared,t)}getPkg(t,e){const r=this.workspace?.packageJson;if(!r)throw new Error("package.json is not found");return t?vi(r,t,e):r}getTemplateContext(){return{...this.shared,...this.workspace,publishPath:this.workspace?.path||"",env:this.releaseEnv,branch:this.sourceBranch}}async runChangesetsCli(t,e){let r="pnpm";try{await this.shell.exec("pnpm -v",{dryRun:!1})}catch{r="npx"}return await this.shell.exec([r,"changeset",t,...e??[]])}}function ki(t,...e){return[t,...e]}const _i={maxWorkspace:3,multiWorkspaceSeparator:"_",workspaceVersionSeparator:"@",batchBranchName:"batch-${releaseName}-${length}-packages-${timestamp}",batchTagName:"batch-${length}-packages-${timestamp}"};class Ri{shell;logger;config;constructor(t,e,r={}){this.shell=t,this.logger=e,this.config={..._i,...r}}getReleaseBranchName(t,e,r){const n=r.branchName||"release-${tagName}";if("string"!=typeof n)throw new Error("Branch name template is not a string");return this.logger.debug("Release Branch template is:",n),this.shell.format(n,{pkgName:t,releaseName:t,tagName:e,...r})}getBatchReleaseBranchName(t,e,r,n){const o=this.config.batchBranchName;if("string"!=typeof o)throw new Error("Branch name template is not a string");return this.logger.debug("Release Batch Branch template is:",o),this.shell.format(o,{pkgName:t,releaseName:t,tagName:e,...r,length:n,timestamp:Date.now()})}getReleaseName(t){if(1===t.length)return t[0].name;const{maxWorkspace:e,multiWorkspaceSeparator:r,workspaceVersionSeparator:n}=this.config;return t.slice(0,e).map((({name:t,version:e})=>`${t}${n}${e}`)).join(r)}getReleaseTagName(t){if(1===t.length)return t[0].version;const{batchTagName:e}=this.config;return this.shell.format(e,{length:t.length,timestamp:Date.now()})}getReleaseBranchParams(t,e){const r=this.getReleaseTagName(t),n=this.getReleaseName(t);return{tagName:r,releaseBranch:t.length>1?this.getBatchReleaseBranchName(n,r,e,t.length):this.getReleaseBranchName(n,r,e)}}getPRTitle(t,e){const r=this.config.PRTitle||"Release ${env} ${pkgName} ${tagName}";return this.shell.format(r,{...e,tagName:t.tagName,pkgName:t.releaseBranch})}getPRBody(t,e,r){const n=this.config.PRBody,o=t.length>1?t.map((t=>this.shell.format("\n## ${name} ${version}\n${changelog}\n",t))).join("\n"):t[0].changelog,{workspaceVersionSeparator:i}=this.config,a=1===t.length?e.tagName:t.map((t=>`${t.name}${i}${t.version}`)).join(" ");return this.shell.format(n,{...r,tagName:a,changelog:o})}}class xi{context;_octokit=null;constructor(t){this.context=t}getGitHubUserInfo(){const{authorName:t,repoName:e}=this.context.shared;if(!t||!e)throw new Error("Author name or repo name is not set");return{owner:t,repo:e}}getToken(){const{tokenRef:t="GITHUB_TOKEN"}=this.context.getConfig("githubPR"),e=this.context.env.get(t);if(!e)throw new Error(`Token is not set. Please set ${t} environment variable.`);return e}get octokit(){if(this._octokit)return this._octokit;const{timeout:t}=this.context.getConfig("githubPR"),e={auth:this.getToken(),request:{timeout:t}};return this._octokit=new Vt.Octokit(e),this._octokit}get logger(){return this.context.logger}get shell(){return this.context.shell}get autoMergeType(){return this.context.shared.autoMergeType||"squash"}get dryRunPRNumber(){return this.context.getConfig("githubPR.dryRunPRNumber","999999")}get autoMergeReleasePR(){return this.context.shared.autoMergeReleasePR||false}async mergePR(t,e){if(!t)return void this.logger.error("Failed to create Pull Request.",t);const r=this.autoMergeType;if(this.context.dryRun){const{repoName:n,authorName:o}=this.context.shared;this.logger.info(`[DRY RUN] Would merge PR #${t} with method '${r}' in repo ${o}/${n}, branch ${e}`)}else await this.octokit.rest.pulls.merge({...this.getGitHubUserInfo(),pull_number:Number(t),merge_method:r})}async getPullRequestCommits(t){return(await this.octokit.rest.pulls.listCommits({...this.getGitHubUserInfo(),pull_number:t})).data}async getCommitInfo(t){return(await this.octokit.rest.repos.getCommit({...this.getGitHubUserInfo(),ref:t})).data}async getPullRequest(t){return(await this.octokit.rest.pulls.get({...this.getGitHubUserInfo(),pull_number:t})).data}async checkedPR(t,e){try{await this.getPullRequest(Number(t)),await this.octokit.rest.git.deleteRef({...this.getGitHubUserInfo(),ref:`heads/${e}`}),this.logger.info(`Branch ${e} has been deleted`)}catch(r){if(404===r.status)return void this.logger.warn(`PR #${t} or branch ${e} not found`);throw this.logger.error("Failed to check PR or delete branch",r),r}}async createReleasePRLabel(){const t=this.context.shared.label;if(!(t&&t.name&&t.description&&t.color))throw new Error("Label is not valid, skipping creation");if(this.context.dryRun)return this.logger.info("[DRY RUN] Would create PR label with:",t),t;try{const e=await this.octokit.rest.issues.createLabel({...this.getGitHubUserInfo(),name:t.name,description:t.description,color:t.color.replace("#","")});return this.logger.debug("Create PR label Success",e),t}catch(e){if(422===e.status)return this.logger.warn(`Label ${t.name} already exists, skipping!`),t;throw this.logger.error("Create PR label Failed",e),e}}async createReleasePR(t){if(this.context.getConfig("githubPR.dryRunCreatePR")||this.context.dryRun)return this.logger.info("[DRY RUN] Would create PR with:",{...t,labels:t.labels}),this.dryRunPRNumber;try{const e=await this.octokit.rest.pulls.create({...this.getGitHubUserInfo(),...t}),r=e.data.number;if(!r)throw new Error("CreateReleasePR Failed, prNumber is empty");if(this.logger.debug("Create PR Success",[e?.url]),t.labels&&t.labels.length){const e=await this.octokit.rest.issues.addLabels({...this.getGitHubUserInfo(),issue_number:r,labels:t.labels});this.logger.debug("Add PR label Success",[e.url])}return r.toString()}catch(t){if(422===t.status&&t.message.includes("already exists")){this.logger.warn("PR already exists");const e=t.message.match(/pull request #(\d+)/);return e?e[1]:""}throw this.logger.error("Failed to create PR",t),t}}truncateBody(t){return t&&t.length>=124e3?t.substring(0,124e3)+"...":t}getOctokitReleaseOptions(t){const{releaseName:e,draft:r=!1,preRelease:n=!1,autoGenerate:o=!1,makeLatest:i=!0,releaseNotes:a,discussionCategoryName:s}=this.context.getConfig("githubPR"),u=e,c=o?"":this.truncateBody(String(a));return{name:u,make_latest:i.toString(),body:c,draft:r,prerelease:n,generate_release_notes:o,discussion_category_name:s,tag_name:"",...t,...this.getGitHubUserInfo()}}async createRelease(t){const e=this.getOctokitReleaseOptions({tag_name:t.tagName,body:t.changelog});if(e.name=this.shell.format(e.name,t),this.logger.log(`[DRY RUN] octokit repos.createRelease "${e.name}" (${e.tag_name})`,{isDryRun:this.context.dryRun}),!e.tag_name)throw new Error("TagName is undefined");if(!this.context.dryRun)try{const t=await this.octokit.repos.createRelease(e);this.logger.debug(`[DONE] octokit repos.createRelease "${e.name}" (${e.tag_name}) (${t.headers.location})`)}catch(t){this.logger.error(`[FAILED] octokit repos.createRelease "${e.name}" (${e.tag_name})`,t)}}}var Pi,ji;function Ci(){if(ji)return Pi;ji=1;var t=ke(),e=zr(),r=Hr();return Pi=function(n){return"string"==typeof n||!e(n)&&r(n)&&"[object String]"==t(n)}}var $i=ne(Ci());class Ni{context;pluginName;props;onlyOne=!0;constructor(t,e,r={}){this.context=t,this.pluginName=e,this.props=r,this.setConfig(this.getInitialProps(r))}getInitialProps(t){const e=this.context.options[this.pluginName],r=vi(this.context.shared,this.pluginName);return e||t?oi({},r,t,e):{}}get logger(){return this.context.logger}get shell(){return this.context.shell}get options(){return this.context.getConfig(this.pluginName,{})}getEnv(t,e){return this.context.env.get(t)??e}enabled(t,e){return!0}getConfig(t,e){return t?this.context.getConfig([this.pluginName,...Array.isArray(t)?t:[t]],e):this.context.getConfig(this.pluginName,e)}setConfig(t){this.context.setConfig({[this.pluginName]:t})}onBefore(t){}onExec(t){}onSuccess(t){}onError(t){}async step({label:t,task:e}){this.logger.log(),this.logger.info(t),this.logger.log();try{const r=await e();return this.logger.info(`${t} - success`),r}catch(t){throw this.logger.error(t),t}}}class Oi extends Ni{async onBefore(){const t=await this.getUserInfo();if(!t)throw new Error("Failed to get repoInfo");let e=this.context.shared.currentBranch;e||(e=await this.getCurrentBranch()),e&&await this.context.shell.exec(`git checkout ${e}`,{dryRun:!1}),this.context.setShared({repoName:t.repoName,authorName:t.authorName,currentBranch:e})}async getCurrentBranch(){return await new Promise((t=>setTimeout(t,100))),this.context.shell.exec("git rev-parse --abbrev-ref HEAD",{dryRun:!1})}async getRemoteUrl(){return(await this.context.shell.exec("git config --get remote.origin.url",{dryRun:!1})).trim()}async getUserInfo(){let t;try{t=await this.getRemoteUrl()}catch{throw new Error("Failed to get git remote url. Please ensure this is a git repository with a valid remote.")}if(!t)throw new Error("Git remote URL is empty. Please set a valid GitHub remote URL.");this.context.logger.debug("repoUrl: ",t);const e=t.match(/github\.com[:/]([^/]+)\/([^/.]+)(?:\.git)?$/);if(!e)throw new Error("Invalid GitHub repository URL format. Please ensure the remote URL is from GitHub.");const[,r,n]=e;if(!this.isValidString(r)||!this.isValidString(n))throw new Error("Failed to extract owner or repository name from GitHub URL");return{repoName:n,authorName:r}}isValidString(t){return!!t&&$i(t)}commit(t,e=[]){return this.context.shell.exec(["git","commit","--message",JSON.stringify(t),...e])}}const Ei=["hash","abbrevHash","treeHash","abbrevTreeHash","parentHashes","abbrevParentHashes","authorName","authorEmail","authorDate","authorDateRel","committerName","committerEmail","committerDate","committerDateRel","subject","body","rawBody","tag"];class Bi{options;constructor(t){this.options=t}async getGitLog(t={}){const{directory:e,noMerges:r=!0,fileds:n}=t,o=await this.resolveTag(t.from,"root"),i=await this.resolveTag(t.to,"HEAD"),a={repo:".",number:1e3,fields:n,branch:o===i?i:`${o}..${i}`,file:e,nameStatus:!1,includeMergeCommitFiles:!r},s=await Jt(a);return this.options.logger?.debug("GitChangelog",a),this.options.logger?.debug("GitChangelog commits",s),s}async getCommits(t){return(await this.getGitLog(t)).map((t=>{const{subject:e,rawBody:r}=t;return{base:t,commitlint:this.parseCommitlint(e||"",r),commits:[]}}))}createBaseCommit(t,e){return{subject:t,rawBody:t,body:t,...e}}tabify(t,e=2){return t.split("\n").map((t=>" ".repeat(e)+t.trim())).join("\n")}parseCommitlint(t,e=""){const[r]=t.trim().split("\n"),n=e.startsWith(r)?e.replace(r,""):e,o=r.replace(/\s*\(#\d+\)\s*$/,"").match(/^(?:([a-z]+)(?:\((.*?)\))?: )?(.+)$/i);return o?{type:o[1]?.toLowerCase(),scope:o[2]?.trim(),message:o[3].trim(),body:n?this.tabify(n):void 0}:{message:r,body:n?this.tabify(n):void 0}}toCommitValue(t,e){const[r]=e.trim().split("\n"),n=r.match(/\(#(\d+)\)/),o=this.parseCommitlint(r,e);return{base:this.createBaseCommit(r,{hash:t,abbrevHash:t.substring(0,7),rawBody:e}),commitlint:o,commits:[],prNumber:n?.[1]}}async resolveTag(t,e){if(t)try{if(await this.options.shell.exec(`git tag --list "${t}"`,{dryRun:!1}).then((t=>!!t.trim())))return t}catch{}return"root"===e?this.options.shell.exec("git rev-list --max-parents=0 HEAD",{dryRun:!1}).then((t=>t.trim())):"HEAD"}}var Ti,Si,Li,Ai,Wi,Ui,Gi,Mi,Di,Fi,Hi,Ii,qi,zi,Vi,Ji,Yi,Ki,Qi,Xi,Zi,ta,ea,ra,na,oa,ia,aa,sa,ua,ca,ha,fa,la,ga,pa,ma,da,va,ba,ya,wa,ka,_a,Ra,xa,Pa,ja,Ca,$a,Na,Oa,Ea,Ba,Ta,Sa,La,Aa,Wa,Ua,Ga,Ma,Da,Fa,Ha,Ia,qa,za,Va,Ja,Ya,Ka,Qa,Xa,Za,ts,es,rs,ns,os,is,as,ss,us,cs,hs,fs,ls,gs,ps,ms,ds;function vs(){if(Si)return Ti;return Si=1,Ti=function(t,e,r,n){for(var o=-1,i=null==t?0:t.length;++o<i;){var a=t[o];e(n,a,r(a),t)}return n}}function bs(){if(Ai)return Li;Ai=1;var t=Gr()(Object.keys,Object);return Li=t}function ys(){if(Ui)return Wi;Ui=1;var t=Dr(),e=bs(),r=Object.prototype.hasOwnProperty;return Wi=function(n){if(!t(n))return e(n);var o=[];for(var i in Object(n))r.call(n,i)&&"constructor"!=i&&o.push(i);return o}}function ws(){if(Mi)return Gi;Mi=1;var t=mo(),e=ys(),r=Jr();return Gi=function(n){return r(n)?t(n):e(n)}}function ks(){if(Fi)return Di;Fi=1;var t=Xe(),e=ws();return Di=function(r,n){return r&&t(r,n,e)}}function _s(){if(Ii)return Hi;Ii=1;var t=Jr();return Hi=function(e,r){return function(n,o){if(null==n)return n;if(!t(n))return e(n,o);for(var i=n.length,a=r?i:-1,s=Object(n);(r?a--:++a<i)&&!1!==o(s[a],a,s););return n}}}function Rs(){if(zi)return qi;zi=1;var t=ks(),e=_s()(t);return qi=e}function xs(){if(Ji)return Vi;Ji=1;var t=Rs();return Vi=function(e,r,n,o){return t(e,(function(t,e,i){r(o,t,n(t),i)})),o}}function Ps(){if(Ki)return Yi;Ki=1;return Yi=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this}}function js(){if(Xi)return Qi;return Xi=1,Qi=function(t){return this.__data__.has(t)}}function Cs(){if(ta)return Zi;ta=1;var t=qe(),e=Ps(),r=js();function n(e){var r=-1,n=null==e?0:e.length;for(this.__data__=new t;++r<n;)this.add(e[r])}return n.prototype.add=n.prototype.push=e,n.prototype.has=r,Zi=n}function $s(){if(ra)return ea;return ra=1,ea=function(t,e){for(var r=-1,n=null==t?0:t.length;++r<n;)if(e(t[r],r,t))return!0;return!1}}function Ns(){if(oa)return na;return oa=1,na=function(t,e){return t.has(e)}}function Os(){if(aa)return ia;aa=1;var t=Cs(),e=$s(),r=Ns();return ia=function(n,o,i,a,s,u){var c=1&i,h=n.length,f=o.length;if(h!=f&&!(c&&f>h))return!1;var l=u.get(n),g=u.get(o);if(l&&g)return l==o&&g==n;var p=-1,m=!0,d=2&i?new t:void 0;for(u.set(n,o),u.set(o,n);++p<h;){var v=n[p],b=o[p];if(a)var y=c?a(b,v,p,o,n,u):a(v,b,p,n,o,u);if(void 0!==y){if(y)continue;m=!1;break}if(d){if(!e(o,(function(t,e){if(!r(d,e)&&(v===t||s(v,t,i,a,u)))return d.push(e)}))){m=!1;break}}else if(v!==b&&!s(v,b,i,a,u)){m=!1;break}}return u.delete(n),u.delete(o),m}}function Es(){if(ua)return sa;return ua=1,sa=function(t){var e=-1,r=Array(t.size);return t.forEach((function(t,n){r[++e]=[n,t]})),r}}function Bs(){if(ha)return ca;return ha=1,ca=function(t){var e=-1,r=Array(t.size);return t.forEach((function(t){r[++e]=t})),r},ca}function Ts(){if(la)return fa;la=1;var t=be(),e=Sr(),r=ie(),n=Os(),o=Es(),i=Bs(),a=t?t.prototype:void 0,s=a?a.valueOf:void 0;return fa=function(t,a,u,c,h,f,l){switch(u){case"[object DataView]":if(t.byteLength!=a.byteLength||t.byteOffset!=a.byteOffset)return!1;t=t.buffer,a=a.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=a.byteLength||!f(new e(t),new e(a)));case"[object Boolean]":case"[object Date]":case"[object Number]":return r(+t,+a);case"[object Error]":return t.name==a.name&&t.message==a.message;case"[object RegExp]":case"[object String]":return t==a+"";case"[object Map]":var g=o;case"[object Set]":var p=1&c;if(g||(g=i),t.size!=a.size&&!p)return!1;var m=l.get(t);if(m)return m==a;c|=2,l.set(t,a);var d=n(g(t),g(a),c,h,f,l);return l.delete(t),d;case"[object Symbol]":if(s)return s.call(t)==s.call(a)}return!1}}function Ss(){if(pa)return ga;return pa=1,ga=function(t,e){for(var r=-1,n=e.length,o=t.length;++r<n;)t[o+r]=e[r];return t}}function Ls(){if(da)return ma;da=1;var t=Ss(),e=zr();return ma=function(r,n,o){var i=n(r);return e(r)?i:t(i,o(r))}}function As(){if(ba)return va;return ba=1,va=function(t,e){for(var r=-1,n=null==t?0:t.length,o=0,i=[];++r<n;){var a=t[r];e(a,r,t)&&(i[o++]=a)}return i}}function Ws(){if(wa)return ya;return wa=1,ya=function(){return[]}}function Us(){if(_a)return ka;_a=1;var t=As(),e=Ws(),r=Object.prototype.propertyIsEnumerable,n=Object.getOwnPropertySymbols;return ka=n?function(e){return null==e?[]:(e=Object(e),t(n(e),(function(t){return r.call(e,t)})))}:e}function Gs(){if(xa)return Ra;xa=1;var t=Ls(),e=Us(),r=ws();return Ra=function(n){return t(n,r,e)}}function Ms(){if(ja)return Pa;ja=1;var t=Gs(),e=Object.prototype.hasOwnProperty;return Pa=function(r,n,o,i,a,s){var u=1&o,c=t(r),h=c.length;if(h!=t(n).length&&!u)return!1;for(var f=h;f--;){var l=c[f];if(!(u?l in n:e.call(n,l)))return!1}var g=s.get(r),p=s.get(n);if(g&&p)return g==n&&p==r;var m=!0;s.set(r,n),s.set(n,r);for(var d=u;++f<h;){var v=r[l=c[f]],b=n[l];if(i)var y=u?i(b,v,l,n,r,s):i(v,b,l,r,n,s);if(!(void 0===y?v===b||a(v,b,o,i,s):y)){m=!1;break}d||(d="constructor"==l)}if(m&&!d){var w=r.constructor,k=n.constructor;w==k||!("constructor"in r)||!("constructor"in n)||"function"==typeof w&&w instanceof w&&"function"==typeof k&&k instanceof k||(m=!1)}return s.delete(r),s.delete(n),m}}function Ds(){if($a)return Ca;$a=1;var t=Ne()(ve(),"DataView");return Ca=t}function Fs(){if(Oa)return Na;Oa=1;var t=Ne()(ve(),"Promise");return Na=t}function Hs(){if(Ba)return Ea;Ba=1;var t=Ne()(ve(),"Set");return Ea=t}function Is(){if(Sa)return Ta;Sa=1;var t=Ne()(ve(),"WeakMap");return Ta=t}function qs(){if(Aa)return La;Aa=1;var t=Ds(),e=Oe(),r=Fs(),n=Hs(),o=Is(),i=ke(),a=je(),s="[object Map]",u="[object Promise]",c="[object Set]",h="[object WeakMap]",f="[object DataView]",l=a(t),g=a(e),p=a(r),m=a(n),d=a(o),v=i;return(t&&v(new t(new ArrayBuffer(1)))!=f||e&&v(new e)!=s||r&&v(r.resolve())!=u||n&&v(new n)!=c||o&&v(new o)!=h)&&(v=function(t){var e=i(t),r="[object Object]"==e?t.constructor:void 0,n=r?a(r):"";if(n)switch(n){case l:return f;case g:return s;case p:return u;case m:return c;case d:return h}return e}),La=v}function zs(){if(Ua)return Wa;Ua=1;var t=Ve(),e=Os(),r=Ts(),n=Ms(),o=qs(),i=zr(),a=un(),s=co(),u="[object Arguments]",c="[object Array]",h="[object Object]",f=Object.prototype.hasOwnProperty;return Wa=function(l,g,p,m,d,v){var b=i(l),y=i(g),w=b?c:o(l),k=y?c:o(g),_=(w=w==u?h:w)==h,R=(k=k==u?h:k)==h,x=w==k;if(x&&a(l)){if(!a(g))return!1;b=!0,_=!1}if(x&&!_)return v||(v=new t),b||s(l)?e(l,g,p,m,d,v):r(l,g,w,p,m,d,v);if(!(1&p)){var P=_&&f.call(l,"__wrapped__"),j=R&&f.call(g,"__wrapped__");if(P||j){var C=P?l.value():l,$=j?g.value():g;return v||(v=new t),d(C,$,p,m,v)}}return!!x&&(v||(v=new t),n(l,g,p,m,d,v))}}function Vs(){if(Ma)return Ga;Ma=1;var t=zs(),e=Hr();return Ga=function r(n,o,i,a,s){return n===o||(null==n||null==o||!e(n)&&!e(o)?n!=n&&o!=o:t(n,o,i,a,r,s))},Ga}function Js(){if(Fa)return Da;Fa=1;var t=Ve(),e=Vs();return Da=function(r,n,o,i){var a=o.length,s=a,u=!i;if(null==r)return!s;for(r=Object(r);a--;){var c=o[a];if(u&&c[2]?c[1]!==r[c[0]]:!(c[0]in r))return!1}for(;++a<s;){var h=(c=o[a])[0],f=r[h],l=c[1];if(u&&c[2]){if(void 0===f&&!(h in r))return!1}else{var g=new t;if(i)var p=i(f,l,h,r,n,g);if(!(void 0===p?e(l,f,3,i,g):p))return!1}}return!0}}function Ys(){if(Ia)return Ha;Ia=1;var t=_e();return Ha=function(e){return e==e&&!t(e)}}function Ks(){if(za)return qa;za=1;var t=Ys(),e=ws();return qa=function(r){for(var n=e(r),o=n.length;o--;){var i=n[o],a=r[i];n[o]=[i,a,t(a)]}return n}}function Qs(){if(Ja)return Va;return Ja=1,Va=function(t,e){return function(r){return null!=r&&(r[t]===e&&(void 0!==e||t in Object(r)))}}}function Xs(){if(Ka)return Ya;Ka=1;var t=Js(),e=Ks(),r=Qs();return Ya=function(n){var o=e(n);return 1==o.length&&o[0][2]?r(o[0][0],o[0][1]):function(e){return e===n||t(e,n,o)}}}function Zs(){if(Xa)return Qa;return Xa=1,Qa=function(t,e){return null!=t&&e in Object(t)}}function tu(){if(ts)return Za;ts=1;var t=gi(),e=qr(),r=zr(),n=po(),o=Vr(),i=pi();return Za=function(a,s,u){for(var c=-1,h=(s=t(s,a)).length,f=!1;++c<h;){var l=i(s[c]);if(!(f=null!=a&&u(a,l)))break;a=a[l]}return f||++c!=h?f:!!(h=null==a?0:a.length)&&o(h)&&n(l,h)&&(r(a)||e(a))},Za}function eu(){if(rs)return es;rs=1;var t=Zs(),e=tu();return es=function(r,n){return null!=r&&e(r,n,t)},es}function ru(){if(os)return ns;os=1;var t=Vs(),e=di(),r=eu(),n=ai(),o=Ys(),i=Qs(),a=pi();return ns=function(s,u){return n(s)&&o(u)?i(a(s),u):function(n){var o=e(n,s);return void 0===o&&o===u?r(n,s):t(u,o,3)}},ns}function nu(){if(as)return is;return as=1,is=function(t){return function(e){return null==e?void 0:e[t]}}}function ou(){if(us)return ss;us=1;var t=mi();return ss=function(e){return function(r){return t(r,e)}},ss}function iu(){if(hs)return cs;hs=1;var t=nu(),e=ou(),r=ai(),n=pi();return cs=function(o){return r(o)?t(n(o)):e(o)},cs}function au(){if(ls)return fs;ls=1;var t=Xs(),e=ru(),r=Ro(),n=zr(),o=iu();return fs=function(i){return"function"==typeof i?i:null==i?r:"object"==typeof i?n(i)?e(i[0],i[1]):t(i):o(i)}}function su(){if(ps)return gs;ps=1;var t=vs(),e=xs(),r=au(),n=zr();return gs=function(o,i){return function(a,s){var u=n(a)?t:e,c=i?i():{};return u(a,o,r(s,2),c)}}}function uu(){if(ds)return ms;ds=1;var t=Ye(),e=su(),r=Object.prototype.hasOwnProperty,n=e((function(e,n,o){r.call(e,o)?e[o].push(n):t(e,o,[n])}));return ms=n}var cu=ne(uu());const hu="\n- ${scopeHeader} ${commitlint.message} ${commitLink} ${prLink}";class fu{options;constructor(t){this.options=t}format(t,e){const{types:r=[],commitBody:n=!1}={...this.options,...e},o=[],i=cu(t,(t=>t.commitlint.type?t.commitlint.type:t.commitlint.message));return r.forEach((t=>{const{type:r,section:a,hidden:s}=t;if(s)return;const u=i[r]||[];u.length>0&&(o.push(a||""),u.forEach((t=>{if(o.push(this.formatCommit(t,e)),n&&t.commitlint.body){const e=t.commitlint.body.split("\n").map((t=>` ${t}`));o.push(...e)}})))})),o}formatCommit(t,e){const{commitlint:r,base:{hash:n},prNumber:o}=t,{repoUrl:i,formatTemplate:a=hu}={...this.options,...e},s=r.scope?this.formatScope(r.scope):"",u=o?this.foramtLink("#"+o,i?`${i}/pull/${o}`:""):"",c=n?this.foramtLink(n.slice(0,7),i?`${i}/commit/${n}`:""):"";return this.options.shell.format(a,{...t,scopeHeader:s,commitLink:c,prLink:u})}foramtLink(t,e){return e?`([${t}](${e}))`:`(${t})`}formatCommitLink(t,e){return e?`([${t}](${e}))`:`(${t})`}formatScope(t){return`**${t}:**`}}class lu{toLocalPath(t){const e=t.replace(/[\\/]+/g,Yt.sep);return Yt.normalize(e).replace(/[\\/]+/g,Yt.sep)}isSubPath(t,e){let r=this.toLocalPath(t),n=this.toLocalPath(e);for(;r.endsWith(Yt.sep);)r=r.slice(0,-1);for(;n.endsWith(Yt.sep);)n=n.slice(0,-1);if(r===n)return!0;const o=n.length;return!!r.startsWith(n)&&r[o]===Yt.sep}startsWith(t,e){let r=this.toLocalPath(t),n=this.toLocalPath(e);for(;r.endsWith(Yt.sep);)r=r.slice(0,-1);for(;n.endsWith(Yt.sep);)n=n.slice(0,-1);return r.startsWith(n)}containsPath(t,e){let r=this.toLocalPath(t),n=this.toLocalPath(e);for(;r.endsWith(Yt.sep);)r=r.slice(0,-1);for(;n.endsWith(Yt.sep);)n=n.slice(0,-1);if(r===n)return!0;const o=r.indexOf(n);if(-1===o)return!1;const i=0===o?"":r[o-1],a=o+n.length,s=a>=r.length?"":r[a],u=""===i||i===Yt.sep,c=""===s||s===Yt.sep;return u&&c}}const gu="https://github.com";class pu extends Bi{options;githubManager;pather=new lu;constructor(t,e){super(t),this.options=t,this.githubManager=e}async filterCommitsByDirectory(t,e){const r=[];for(const n of t){const t=await this.githubManager.getCommitInfo(n.base.hash),o=t.files?.map((t=>t.filename))??[];for(const t of o)if(this.pather.isSubPath(t,e)){r.push(n);break}}return r}async getFullCommit(t){const e={...this.options,...t},r=await this.getCommits(e);return(await Promise.all(r.map((async t=>{let{prNumber:r}=t;if(!r&&t.base.subject){const e=t.base.subject.match(/\(#(\d+)\)/);e&&(r=e[1],t.prNumber=r)}if(!r)return t;const n=(await this.githubManager.getPullRequestCommits(+r)).map((({sha:t,commit:{message:e}})=>Object.assign(this.toCommitValue(t,e),{prNumber:r})));return this.filterCommitsByDirectory(n,e.directory)})))).flat()}async transformWorkspace(t,e){const r=[gu,e.shared.authorName,e.shared.repoName].join("/"),n={...e.getConfig("changelog"),githubRootPath:r,mergePRcommit:!0,shell:e.shell,logger:e.logger},o=new pu(n,this.githubManager),i=new fu(n);return await Promise.all(t.map((async t=>{const e=await o.getFullCommit({from:t.lastTag??"",directory:t.path,fileds:Ei});if("string"==typeof e)return{...t,changelog:e};const a=i.format(e,{...n,repoUrl:r});return{...t,changelog:a.join("\n")}})))}}class mu{options;constructor(t){this.options=t}compare(t,e){return"function"==typeof this.options.compare?this.options.compare(t,e):t.startsWith(e)}toChangeLabel(t,e=this.options.changePackagesLabel){return e.replace("${name}",t)}toChangeLabels(t,e=this.options.changePackagesLabel){return t.map((t=>this.toChangeLabel(t,e)))}pick(t,e=this.options.packagesDirectories){const r=[];for(const n of e)for(const e of t)if(this.compare(e,n)){r.push(n);break}return r}}class du{static readJson(t){const e=Qt.readFileSync(t,"utf-8");return JSON.parse(e)}static toWorkspace(t,e){let{root:r,packageJson:n}=t;const o=t.path;if(!o)throw new Error("path is not required!");return r=r||Xt.join(e,o),n=n||du.readJson(Xt.join(r,bi)),{name:n.name,version:n.version,path:o,root:r,packageJson:n}}}class vu extends Ni{releaseTask=null;workspacesList=[];_skip=!1;releaseLabel;constructor(t){super(t,"workspaces"),this.releaseLabel=new mu({changePackagesLabel:this.context.shared.changePackagesLabel||"change:${name}",packagesDirectories:this.context.shared.packagesDirectories||[],compare:(t,e)=>Yt.resolve(t).startsWith(Yt.resolve(e))})}enabled(){return!this._skip&&!this.getConfig("skip")}async onBefore(){const t=this.getConfig("workspace");if(t)return this.logger.debug("Use the specified workspace",t),void this.setCurrentWorkspace(t,[]);const e=await this.getWorkspaces();if(this.getConfig("skipCheckPackage")||0===e.length)throw new Error("No changes to publish packages");const{publishPath:r}=this.context.shared;if(r){const t=e.find((t=>Yt.resolve(t.root)===Yt.resolve(r)));if(this.nextSkip(),!t)throw new Error(`No workspace found for: ${r}`);return this.logger.debug(`Workspace of ${r} find!`,Yt.join(t.root,bi)),void this.setCurrentWorkspace(t,[t])}const[n,...o]=e;this.workspacesList=o,this.setCurrentWorkspace(n,e)}nextSkip(){this._skip=!0,this.logger.debug("skip next workspace")}setReleaseTask(t){this.releaseTask=t}setCurrentWorkspace(t,e){this.context.setShared({publishPath:t.path}),this.setConfig({workspace:t,workspaces:e})}async getGitWorkspaces(){const t=this.context.sourceBranch,e=await this.shell.exec(`git diff --name-only origin/${t}...HEAD`,{dryRun:!1});return"string"==typeof e?e.split("\n"):[]}async getChangedPackages(t,e){if(this.logger.debug("changeLabels",e),Array.isArray(e)&&e.length>0){const r=t.filter((t=>{const r=this.releaseLabel.toChangeLabel(t);return e.includes(r)}));return this.logger.debug("changed by labels",r),r}const r=await this.getGitWorkspaces();return this.logger.debug("changed by git",r),this.releaseLabel.pick(r,t)}getProjectWorkspaces(){const t=this.context.rootPath,e=this.context.shared.packagesDirectories;if(Array.isArray(e)&&e.length>0)return e.map((e=>du.toWorkspace({path:e},t)));return(Kt.findWorkspaces(t)||[]).map((e=>({name:e.package.name,version:e.package.version,path:Yt.relative(t,e.location),root:Yt.resolve(t,e.location),packageJson:e.package})))}async getWorkspaces(){const t=this.getProjectWorkspaces(),e=t.map((({path:t})=>t));this.logger.debug("packages",e);const r=this.getConfig("changeLabels"),n=await this.getChangedPackages(e,r);return this.setConfig({packages:e,changedPaths:n,projectWorkspaces:t}),this.logger.debug("changedPaths",n),t.filter((t=>n.includes(t.path)))}}function bu(t,...e){return"function"==typeof t&&t.prototype&&t.prototype.constructor===t?new t(...e):t(...e)}function yu(t){return t.startsWith(".")?Yt.parse(t).name:t}async function wu(t){let e=null;try{e=(await import(t)).default}catch{try{e=(await import(Yt.join(process.cwd(),t))).default}catch{const r=Zt.createRequire(process.cwd());e=(await import(te.pathToFileURL(r.resolve(t,{paths:[process.cwd()]})).href)).default}}return[yu(t),e]}async function ku(t,e,r=5){const n=ee(r),o=e.map((([e,...r])=>n((()=>(async(e,...r)=>{if("string"==typeof e){const[,n]=await wu(e);return bu(n,t,...r)}return bu(e,t,...r)})(e,...r)))));return Promise.all(o)}const _u=[ki(vu),ki(class extends Ni{constructor(t,e){super(t,"changelog",{increment:"patch",changesetRoot:".changeset",tagTemplate:"${name}@${version}",tagPrefix:"${name}",tagMatch:"${name}@*",...e})}get changesetRoot(){return Xt.join(this.context.rootPath,this.getConfig("changesetRoot"))}get changesetConfigPath(){return Xt.join(this.changesetRoot,"config.json")}enabled(){return!this.getConfig("skip")}async onBefore(){if(!Qt.existsSync(this.changesetRoot))throw new Error(`Changeset directory ${this.changesetRoot} does not exist`);this.logger.debug(`${this.changesetRoot} exists`)}mergeWorkspaces(t){return t.map((t=>{const e=du.toWorkspace({path:t.path},this.context.rootPath),r={...t,version:e.version};return r.tagName=this.generateTagName(r),r}))}async onExec(t){const e=await this.step({label:"Generate Changelogs",task:()=>Promise.all(this.context.workspaces.map((t=>this.generateChangelog(t))))});this.context.setWorkspaces(e)}async onSuccess(){const t=this.context.workspaces;this.getConfig("skipChangeset")?this.logger.debug("Skip generate changeset files"):(await this.step({label:"Changeset Version",task:()=>Promise.all(t.map((t=>this.generateChangesetFile(t))))}),await this.context.runChangesetsCli("version",["--no-changelog","--update-dependencies"]),this.getConfig("ignoreNonUpdatedPackages")&&await this.restoreIgnorePackages());const e=this.mergeWorkspaces(t);this.logger.debug("new workspaces",e),this.context.setWorkspaces(e)}async restoreIgnorePackages(){const{changedPaths:t=[],packages:e=[]}=this.context.getConfig("workspaces"),r=e.filter((e=>!t.includes(e))).map((t=>du.toWorkspace({path:t},this.context.rootPath).path));this.logger.debug("noChangedPackages",r),r.length>0&&await this.shell.exec(["git","restore",...r])}getTagPrefix(t){return this.shell.format(this.getConfig("tagPrefix"),t)}async generateChangelog(t){let e=await this.getTagName(t);t.lastTag&&(this.logger.warn(`${t.name} has lastTag: ${t.lastTag}`),e=t.lastTag),this.logger.debug("tagName is:",e);const r={...this.getConfig(),from:e,directory:t.path,shell:this.shell,fileds:Ei,logger:this.logger},n=new Bi(r),o=await n.getCommits(r),i=new fu(r).format(o);return{...t,lastTag:e,changelog:i.join("\n")}}generateTagName(t){try{const e=this.getConfig("tagTemplate");return this.shell.format(e,t)}catch(e){return console.error(`Error generating tag name for ${t.name}:`,e),`${t.name}-v0.0.0`}}async getTagName(t){try{const e=this.generateTagName(t),r=this.shell.format(this.getConfig("tagMatch"),t),n=await this.shell.exec(`git for-each-ref --sort=-creatordate --format "%(refname:short)|%(creatordate:iso8601)" "refs/tags/${r}"`,{dryRun:!1});if(!n)return e;const o=n.split("\n").filter(Boolean);if(0===o.length)return e;return o[0].split("|")[0]}catch(e){console.error(`Error getting tag for ${t.name}:`,e);return this.generateTagName(t)}}getIncrement(){const t=this.context.getConfig("workspaces.changeLabels");if(Array.isArray(t)&&t.length>0){if(t.includes("increment:major"))return"major";if(t.includes("increment:minor"))return"minor"}return this.getConfig("increment","patch")}async generateChangesetFile(t){const{name:e,version:r}=t,n=`${e}-${r}`.replace(/[\/\\]/g,"_"),o=Xt.join(this.changesetRoot,`${n}.md`),i=this.getIncrement();this.logger.debug("increment is:",[i]);const a=this.shell.format("---\n'${name}': '${increment}'\n---\n\n${changelog}",{...t,increment:i});if(this.context.dryRun)return this.logger.info(`Changeset [${o}] will be created, content is:`),void this.logger.log(a);Qt.existsSync(o)?this.logger.info(`Changeset ${n} already exists`):Qt.writeFileSync(o,a,"utf-8")}},{}),ki(class extends Oi{context;releaseParams;githubManager;constructor(t,e){super(t,"githubPR",{releaseName:"Release ${name} v${version}",...e}),this.context=t,this.githubManager=new xi(this.context),this.releaseParams=new Ri(t.shell,t.logger,{PRTitle:this.getConfig("PRTitle",this.context.shared.PRTitle),PRBody:this.getConfig("PRBody",this.context.shared.PRBody),...this.props})}enabled(t){return!this.getConfig("skip")}get isPublish(){return!this.getConfig("releasePR")}async isGithubRepository(){try{return(await this.getRemoteUrl()).includes("github.com")}catch{return!1}}async onBefore(){this.logger.debug("GithubPR onBefore");if(!await this.isGithubRepository())throw new Error("Current repository is not a GitHub repository. GitHub PR workflow is only available for GitHub repositories.");if(await super.onBefore(),this.isPublish){const t=this.getEnv("NPM_TOKEN");if(!t)throw new Error("NPM_TOKEN is not set");await this.shell.exec(`npm config set //registry.npmjs.org/:_authToken=${t}`)}}async onExec(){const t=this.context.workspaces,e=new pu(this.context.getConfig("changelog"),this.githubManager),r=await this.step({label:"GithubPR Changelogs",task:()=>e.transformWorkspace(t,this.context)});this.context.setWorkspaces(r)}async onSuccess(){this.isPublish?await this.publishPR(this.context.workspaces):await this.releasePR(this.context.workspaces)}async releasePR(t){await this.step({label:"Release Commit",task:()=>this.relesaeCommit(t)});const e=await this.step({label:"Create Release Branch",task:()=>this.createReleaseBranch(t)});await this.releasePullRequest(t,e)}async publishPR(t){this.getConfig("dryRunCreatePR")||(await this.context.runChangesetsCli("publish"),await this.shell.exec("git push origin --tags")),await this.step({label:"Release Github",task:()=>Promise.all(t.map((t=>(this.logger.debug(t),this.githubManager.createRelease(t)))))})}async relesaeCommit(t){const e=this.getConfig("commitArgs",[]);if(1===t.length)return await this.shell.exec("git add ."),void await this.commitWorkspace(t[0],e);await this.shell.exec("git add .");const r=`chore(tag): ${t.map((t=>`${t.name} v${t.version}`)).join(",")}`;await this.commit(r,e)}async releasePullRequest(t,e){const r=await this.step({label:"Create Release PR",task:()=>this.createReleasePR(t,e)});if(this.githubManager.autoMergeReleasePR){const{releaseBranch:t}=e;return await this.step({label:`Merge Release PR(${r})`,task:()=>this.githubManager.mergePR(r,t)}),void await this.step({label:`Checked Release PR(${r})`,task:()=>this.githubManager.checkedPR(r,t)})}this.logger.info(`Please manually merge PR(#${r}) and complete the publishing process afterwards`)}async commitWorkspace(t,e=[]){const r=this.shell.format(this.getConfig("commitMessage","chore(tag): ${name} v${version}"),t);return await this.commit(r,e)}async createReleaseBranch(t){const e=this.releaseParams.getReleaseBranchParams(t,this.context.getTemplateContext()),{tagName:r,releaseBranch:n}=e;if("string"!=typeof r)throw new Error("Tag name is not a string");const{sourceBranch:o,currentBranch:i}=this.context.shared;this.context.logger.debug("PR TagName is:",r),this.context.logger.debug("PR CurrentBranch is:",i),this.context.logger.debug("PR SourceBranch is:",o),this.context.logger.debug("PR ReleaseBranch is:",n);try{await this.context.shell.exec(`git fetch origin ${o} ${i}`),await this.context.shell.exec(`git checkout -b ${n} ${i}`),await this.context.shell.exec(`git push origin ${n}`)}catch(t){throw t.message.includes("remote: Permission to ")&&this.context.logger.warn('Token maybe not allow Workflow permissions, can you try to open "Workflow permissions" -> "Read and write permissions" for this token?'),t}return{tagName:r,releaseBranch:n}}async createReleasePR(t,e){let r=[(await this.githubManager.createReleasePRLabel()).name];if(this.getConfig("pushChangeLabels")){const t=this.context.getConfig("workspaces.changeLabels");Array.isArray(t)&&t.length>0&&r.push(...t)}r=Array.from(new Set(r)),this.logger.debug("Release PR labels:",r);const n=this.context.getTemplateContext(),o=this.releaseParams.getPRTitle(e,n),i=this.releaseParams.getPRBody(t,e,n);return this.githubManager.createReleasePR({title:o,body:i,base:this.context.sourceBranch,head:e.releaseBranch,labels:r})}},{})];var Ru,xu,Pu,ju;function Cu(){if(xu)return Ru;xu=1;var t=fo(),e=gi(),r=po(),n=_e(),o=pi();return Ru=function(i,a,s,u){if(!n(i))return i;for(var c=-1,h=(a=e(a,i)).length,f=h-1,l=i;null!=l&&++c<h;){var g=o(a[c]),p=s;if("__proto__"===g||"constructor"===g||"prototype"===g)return i;if(c!=f){var m=l[g];void 0===(p=u?u(m,g,l):void 0)&&(p=n(m)?m:r(a[c+1])?[]:{})}t(l,g,p),l=l[g]}return i},Ru}function $u(){if(ju)return Pu;ju=1;var t=Cu();return Pu=function(e,r,n){return null==e?e:t(e,r,n)},Pu}var Nu=ne($u());exports.CHANGELOG_ALL_FIELDS=Ei,exports.GitChangelog=Bi,exports.GitChangelogFormatter=fu,exports.Plugin=Ni,exports.ReleaseContext=wi,exports.ReleaseLabel=mu,exports.ReleaseTask=class{executor;defaultTuples;context;constructor(t={},e=new zt.AsyncExecutor,r=_u){this.executor=e,this.defaultTuples=r,this.context=new wi(t)}getContext(){return this.context}async usePlugins(t){t=t||this.context.shared.plugins||[];const e=await ku(this.context,[...this.defaultTuples,...t]);return e.forEach((t=>{t instanceof vu&&t.setReleaseTask(this),this.executor.use(t)})),e}async run(){return this.executor.exec(this.context,(t=>Promise.resolve(t)))}async exec(t){if("false"===this.context.env.get("FE_RELEASE"))throw new Error("Skip Release");return await this.usePlugins(t),this.run()}},exports.factory=bu,exports.load=wu,exports.loaderPluginsFromPluginTuples=ku,exports.reduceOptions=function(t,e){return Object.entries(t).reduce(((t,[r,n])=>(r.includes(".")?Nu(t,r,n):Nu(t,e?`${e}.${r}`:r,n),t)),{})},exports.tuple=ki;
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import{FeScriptContext as t}from"@qlover/scripts-context";import{Env as e}from"@qlover/env-loader";import{AsyncExecutor as r}from"@qlover/fe-corekit";import{Octokit as n}from"@octokit/rest";import o from"gitlog";import{resolve as i,join as a,relative as s,parse as u}from"node:path";import{findWorkspaces as c}from"find-workspaces";import{readFileSync as f,existsSync as h,writeFileSync as l}from"fs";import{join as g}from"path";import{createRequire as p}from"node:module";import{pathToFileURL as m}from"node:url";import v from"p-limit";var d,b,y,w,k,_,R,x,P,j,C,$,N,O,E,B,T,S,A,L,W,U,M,D,G,H,F,I,z,q,V,J,Y,K,Q,X,Z,tt,et,rt,nt,ot,it,at,st,ut,ct,ft,ht,lt,gt,pt,mt,vt,dt,bt,yt,wt,kt,_t,Rt,xt,Pt,jt,Ct,$t,Nt,Ot,Et,Bt,Tt,St,At,Lt,Wt,Ut,Mt,Dt,Gt,Ht,Ft,It,zt,qt,Vt,Jt,Yt,Kt,Qt,Xt,Zt,te,ee,re,ne,oe,ie,ae,se="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function ue(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function ce(){if(b)return d;return b=1,d=function(){this.__data__=[],this.size=0}}function fe(){if(w)return y;return w=1,y=function(t,e){return t===e||t!=t&&e!=e}}function he(){if(_)return k;_=1;var t=fe();return k=function(e,r){for(var n=e.length;n--;)if(t(e[n][0],r))return n;return-1}}function le(){if(x)return R;x=1;var t=he(),e=Array.prototype.splice;return R=function(r){var n=this.__data__,o=t(n,r);return!(o<0)&&(o==n.length-1?n.pop():e.call(n,o,1),--this.size,!0)}}function ge(){if(j)return P;j=1;var t=he();return P=function(e){var r=this.__data__,n=t(r,e);return n<0?void 0:r[n][1]}}function pe(){if($)return C;$=1;var t=he();return C=function(e){return t(this.__data__,e)>-1}}function me(){if(O)return N;O=1;var t=he();return N=function(e,r){var n=this.__data__,o=t(n,e);return o<0?(++this.size,n.push([e,r])):n[o][1]=r,this}}function ve(){if(B)return E;B=1;var t=ce(),e=le(),r=ge(),n=pe(),o=me();function i(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}return i.prototype.clear=t,i.prototype.delete=e,i.prototype.get=r,i.prototype.has=n,i.prototype.set=o,E=i}function de(){if(S)return T;S=1;var t=ve();return T=function(){this.__data__=new t,this.size=0}}function be(){if(L)return A;return L=1,A=function(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}}function ye(){if(U)return W;return U=1,W=function(t){return this.__data__.get(t)}}function we(){if(D)return M;return D=1,M=function(t){return this.__data__.has(t)}}function ke(){if(H)return G;H=1;var t="object"==typeof se&&se&&se.Object===Object&&se;return G=t}function _e(){if(I)return F;I=1;var t=ke(),e="object"==typeof self&&self&&self.Object===Object&&self,r=t||e||Function("return this")();return F=r}function Re(){if(q)return z;q=1;var t=_e().Symbol;return z=t}function xe(){if(J)return V;J=1;var t=Re(),e=Object.prototype,r=e.hasOwnProperty,n=e.toString,o=t?t.toStringTag:void 0;return V=function(t){var e=r.call(t,o),i=t[o];try{t[o]=void 0;var a=!0}catch(t){}var s=n.call(t);return a&&(e?t[o]=i:delete t[o]),s}}function Pe(){if(K)return Y;K=1;var t=Object.prototype.toString;return Y=function(e){return t.call(e)}}function je(){if(X)return Q;X=1;var t=Re(),e=xe(),r=Pe(),n=t?t.toStringTag:void 0;return Q=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":n&&n in Object(t)?e(t):r(t)}}function Ce(){if(tt)return Z;return tt=1,Z=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}}function $e(){if(rt)return et;rt=1;var t=je(),e=Ce();return et=function(r){if(!e(r))return!1;var n=t(r);return"[object Function]"==n||"[object GeneratorFunction]"==n||"[object AsyncFunction]"==n||"[object Proxy]"==n}}function Ne(){if(ot)return nt;ot=1;var t=_e()["__core-js_shared__"];return nt=t}function Oe(){if(at)return it;at=1;var t,e=Ne(),r=(t=/[^.]+$/.exec(e&&e.keys&&e.keys.IE_PROTO||""))?"Symbol(src)_1."+t:"";return it=function(t){return!!r&&r in t}}function Ee(){if(ut)return st;ut=1;var t=Function.prototype.toString;return st=function(e){if(null!=e){try{return t.call(e)}catch(t){}try{return e+""}catch(t){}}return""}}function Be(){if(ft)return ct;ft=1;var t=$e(),e=Oe(),r=Ce(),n=Ee(),o=/^\[object .+?Constructor\]$/,i=Function.prototype,a=Object.prototype,s=i.toString,u=a.hasOwnProperty,c=RegExp("^"+s.call(u).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");return ct=function(i){return!(!r(i)||e(i))&&(t(i)?c:o).test(n(i))}}function Te(){if(lt)return ht;return lt=1,ht=function(t,e){return null==t?void 0:t[e]}}function Se(){if(pt)return gt;pt=1;var t=Be(),e=Te();return gt=function(r,n){var o=e(r,n);return t(o)?o:void 0}}function Ae(){if(vt)return mt;vt=1;var t=Se()(_e(),"Map");return mt=t}function Le(){if(bt)return dt;bt=1;var t=Se()(Object,"create");return dt=t}function We(){if(wt)return yt;wt=1;var t=Le();return yt=function(){this.__data__=t?t(null):{},this.size=0}}function Ue(){if(_t)return kt;return _t=1,kt=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}}function Me(){if(xt)return Rt;xt=1;var t=Le(),e=Object.prototype.hasOwnProperty;return Rt=function(r){var n=this.__data__;if(t){var o=n[r];return"__lodash_hash_undefined__"===o?void 0:o}return e.call(n,r)?n[r]:void 0}}function De(){if(jt)return Pt;jt=1;var t=Le(),e=Object.prototype.hasOwnProperty;return Pt=function(r){var n=this.__data__;return t?void 0!==n[r]:e.call(n,r)}}function Ge(){if($t)return Ct;$t=1;var t=Le();return Ct=function(e,r){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=t&&void 0===r?"__lodash_hash_undefined__":r,this}}function He(){if(Ot)return Nt;Ot=1;var t=We(),e=Ue(),r=Me(),n=De(),o=Ge();function i(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}return i.prototype.clear=t,i.prototype.delete=e,i.prototype.get=r,i.prototype.has=n,i.prototype.set=o,Nt=i}function Fe(){if(Bt)return Et;Bt=1;var t=He(),e=ve(),r=Ae();return Et=function(){this.size=0,this.__data__={hash:new t,map:new(r||e),string:new t}}}function Ie(){if(St)return Tt;return St=1,Tt=function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}}function ze(){if(Lt)return At;Lt=1;var t=Ie();return At=function(e,r){var n=e.__data__;return t(r)?n["string"==typeof r?"string":"hash"]:n.map}}function qe(){if(Ut)return Wt;Ut=1;var t=ze();return Wt=function(e){var r=t(this,e).delete(e);return this.size-=r?1:0,r}}function Ve(){if(Dt)return Mt;Dt=1;var t=ze();return Mt=function(e){return t(this,e).get(e)}}function Je(){if(Ht)return Gt;Ht=1;var t=ze();return Gt=function(e){return t(this,e).has(e)}}function Ye(){if(It)return Ft;It=1;var t=ze();return Ft=function(e,r){var n=t(this,e),o=n.size;return n.set(e,r),this.size+=n.size==o?0:1,this}}function Ke(){if(qt)return zt;qt=1;var t=Fe(),e=qe(),r=Ve(),n=Je(),o=Ye();function i(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}return i.prototype.clear=t,i.prototype.delete=e,i.prototype.get=r,i.prototype.has=n,i.prototype.set=o,zt=i}function Qe(){if(Jt)return Vt;Jt=1;var t=ve(),e=Ae(),r=Ke();return Vt=function(n,o){var i=this.__data__;if(i instanceof t){var a=i.__data__;if(!e||a.length<199)return a.push([n,o]),this.size=++i.size,this;i=this.__data__=new r(a)}return i.set(n,o),this.size=i.size,this}}function Xe(){if(Kt)return Yt;Kt=1;var t=ve(),e=de(),r=be(),n=ye(),o=we(),i=Qe();function a(e){var r=this.__data__=new t(e);this.size=r.size}return a.prototype.clear=e,a.prototype.delete=r,a.prototype.get=n,a.prototype.has=o,a.prototype.set=i,Yt=a}function Ze(){if(Xt)return Qt;Xt=1;var t=Se(),e=function(){try{var e=t(Object,"defineProperty");return e({},"",{}),e}catch(t){}}();return Qt=e}function tr(){if(te)return Zt;te=1;var t=Ze();return Zt=function(e,r,n){"__proto__"==r&&t?t(e,r,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[r]=n}}function er(){if(re)return ee;re=1;var t=tr(),e=fe();return ee=function(r,n,o){(void 0!==o&&!e(r[n],o)||void 0===o&&!(n in r))&&t(r,n,o)}}function rr(){if(oe)return ne;return oe=1,ne=function(t){return function(e,r,n){for(var o=-1,i=Object(e),a=n(e),s=a.length;s--;){var u=a[t?s:++o];if(!1===r(i[u],u,i))break}return e}}}function nr(){if(ae)return ie;ae=1;var t=rr()();return ie=t}var or,ir,ar,sr,ur,cr,fr,hr,lr,gr,pr,mr,vr,dr,br,yr,wr,kr,_r,Rr,xr,Pr,jr,Cr,$r,Nr,Or,Er,Br,Tr,Sr,Ar,Lr,Wr={exports:{}};function Ur(){return or||(or=1,t=Wr,e=Wr.exports,r=_e(),n=e&&!e.nodeType&&e,o=n&&t&&!t.nodeType&&t,i=o&&o.exports===n?r.Buffer:void 0,a=i?i.allocUnsafe:void 0,t.exports=function(t,e){if(e)return t.slice();var r=t.length,n=a?a(r):new t.constructor(r);return t.copy(n),n}),Wr.exports;var t,e,r,n,o,i,a}function Mr(){if(ar)return ir;ar=1;var t=_e().Uint8Array;return ir=t}function Dr(){if(ur)return sr;ur=1;var t=Mr();return sr=function(e){var r=new e.constructor(e.byteLength);return new t(r).set(new t(e)),r}}function Gr(){if(fr)return cr;fr=1;var t=Dr();return cr=function(e,r){var n=r?t(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}}function Hr(){if(lr)return hr;return lr=1,hr=function(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r<n;)e[r]=t[r];return e}}function Fr(){if(pr)return gr;pr=1;var t=Ce(),e=Object.create,r=function(){function r(){}return function(n){if(!t(n))return{};if(e)return e(n);r.prototype=n;var o=new r;return r.prototype=void 0,o}}();return gr=r}function Ir(){if(vr)return mr;return vr=1,mr=function(t,e){return function(r){return t(e(r))}}}function zr(){if(br)return dr;br=1;var t=Ir()(Object.getPrototypeOf,Object);return dr=t}function qr(){if(wr)return yr;wr=1;var t=Object.prototype;return yr=function(e){var r=e&&e.constructor;return e===("function"==typeof r&&r.prototype||t)}}function Vr(){if(_r)return kr;_r=1;var t=Fr(),e=zr(),r=qr();return kr=function(n){return"function"!=typeof n.constructor||r(n)?{}:t(e(n))}}function Jr(){if(xr)return Rr;return xr=1,Rr=function(t){return null!=t&&"object"==typeof t}}function Yr(){if(jr)return Pr;jr=1;var t=je(),e=Jr();return Pr=function(r){return e(r)&&"[object Arguments]"==t(r)}}function Kr(){if($r)return Cr;$r=1;var t=Yr(),e=Jr(),r=Object.prototype,n=r.hasOwnProperty,o=r.propertyIsEnumerable,i=t(function(){return arguments}())?t:function(t){return e(t)&&n.call(t,"callee")&&!o.call(t,"callee")};return Cr=i}function Qr(){if(Or)return Nr;Or=1;var t=Array.isArray;return Nr=t}function Xr(){if(Br)return Er;Br=1;return Er=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}}function Zr(){if(Sr)return Tr;Sr=1;var t=$e(),e=Xr();return Tr=function(r){return null!=r&&e(r.length)&&!t(r)}}function tn(){if(Lr)return Ar;Lr=1;var t=Zr(),e=Jr();return Ar=function(r){return e(r)&&t(r)}}var en,rn,nn,on,an,sn,un,cn,fn,hn={exports:{}};function ln(){if(rn)return en;return rn=1,en=function(){return!1}}function gn(){return nn||(nn=1,function(t,e){var r=_e(),n=ln(),o=e&&!e.nodeType&&e,i=o&&t&&!t.nodeType&&t,a=i&&i.exports===o?r.Buffer:void 0,s=(a?a.isBuffer:void 0)||n;t.exports=s}(hn,hn.exports)),hn.exports}function pn(){if(an)return on;an=1;var t=je(),e=zr(),r=Jr(),n=Function.prototype,o=Object.prototype,i=n.toString,a=o.hasOwnProperty,s=i.call(Object);return on=function(n){if(!r(n)||"[object Object]"!=t(n))return!1;var o=e(n);if(null===o)return!0;var u=a.call(o,"constructor")&&o.constructor;return"function"==typeof u&&u instanceof u&&i.call(u)==s}}function mn(){if(un)return sn;un=1;var t=je(),e=Xr(),r=Jr(),n={};return n["[object Float32Array]"]=n["[object Float64Array]"]=n["[object Int8Array]"]=n["[object Int16Array]"]=n["[object Int32Array]"]=n["[object Uint8Array]"]=n["[object Uint8ClampedArray]"]=n["[object Uint16Array]"]=n["[object Uint32Array]"]=!0,n["[object Arguments]"]=n["[object Array]"]=n["[object ArrayBuffer]"]=n["[object Boolean]"]=n["[object DataView]"]=n["[object Date]"]=n["[object Error]"]=n["[object Function]"]=n["[object Map]"]=n["[object Number]"]=n["[object Object]"]=n["[object RegExp]"]=n["[object Set]"]=n["[object String]"]=n["[object WeakMap]"]=!1,sn=function(o){return r(o)&&e(o.length)&&!!n[t(o)]}}function vn(){if(fn)return cn;return fn=1,cn=function(t){return function(e){return t(e)}}}var dn,bn,yn,wn,kn,_n,Rn,xn,Pn,jn,Cn,$n,Nn,On,En,Bn,Tn,Sn,An,Ln,Wn,Un,Mn,Dn,Gn,Hn,Fn,In,zn,qn,Vn,Jn,Yn,Kn,Qn,Xn,Zn,to,eo,ro,no,oo,io,ao,so,uo,co,fo,ho,lo={exports:{}};function go(){return dn||(dn=1,t=lo,e=lo.exports,r=ke(),n=e&&!e.nodeType&&e,o=n&&t&&!t.nodeType&&t,i=o&&o.exports===n&&r.process,a=function(){try{var t=o&&o.require&&o.require("util").types;return t||i&&i.binding&&i.binding("util")}catch(t){}}(),t.exports=a),lo.exports;var t,e,r,n,o,i,a}function po(){if(yn)return bn;yn=1;var t=mn(),e=vn(),r=go(),n=r&&r.isTypedArray,o=n?e(n):t;return bn=o}function mo(){if(kn)return wn;return kn=1,wn=function(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}}function vo(){if(Rn)return _n;Rn=1;var t=tr(),e=fe(),r=Object.prototype.hasOwnProperty;return _n=function(n,o,i){var a=n[o];r.call(n,o)&&e(a,i)&&(void 0!==i||o in n)||t(n,o,i)}}function bo(){if(Pn)return xn;Pn=1;var t=vo(),e=tr();return xn=function(r,n,o,i){var a=!o;o||(o={});for(var s=-1,u=n.length;++s<u;){var c=n[s],f=i?i(o[c],r[c],c,o,r):void 0;void 0===f&&(f=r[c]),a?e(o,c,f):t(o,c,f)}return o}}function yo(){if(Cn)return jn;return Cn=1,jn=function(t,e){for(var r=-1,n=Array(t);++r<t;)n[r]=e(r);return n}}function wo(){if(Nn)return $n;Nn=1;var t=/^(?:0|[1-9]\d*)$/;return $n=function(e,r){var n=typeof e;return!!(r=null==r?9007199254740991:r)&&("number"==n||"symbol"!=n&&t.test(e))&&e>-1&&e%1==0&&e<r}}function ko(){if(En)return On;En=1;var t=yo(),e=Kr(),r=Qr(),n=gn(),o=wo(),i=po(),a=Object.prototype.hasOwnProperty;return On=function(s,u){var c=r(s),f=!c&&e(s),h=!c&&!f&&n(s),l=!c&&!f&&!h&&i(s),g=c||f||h||l,p=g?t(s.length,String):[],m=p.length;for(var v in s)!u&&!a.call(s,v)||g&&("length"==v||h&&("offset"==v||"parent"==v)||l&&("buffer"==v||"byteLength"==v||"byteOffset"==v)||o(v,m))||p.push(v);return p}}function _o(){if(Tn)return Bn;return Tn=1,Bn=function(t){var e=[];if(null!=t)for(var r in Object(t))e.push(r);return e}}function Ro(){if(An)return Sn;An=1;var t=Ce(),e=qr(),r=_o(),n=Object.prototype.hasOwnProperty;return Sn=function(o){if(!t(o))return r(o);var i=e(o),a=[];for(var s in o)("constructor"!=s||!i&&n.call(o,s))&&a.push(s);return a}}function xo(){if(Wn)return Ln;Wn=1;var t=ko(),e=Ro(),r=Zr();return Ln=function(n){return r(n)?t(n,!0):e(n)}}function Po(){if(Mn)return Un;Mn=1;var t=bo(),e=xo();return Un=function(r){return t(r,e(r))}}function jo(){if(Gn)return Dn;Gn=1;var t=er(),e=Ur(),r=Gr(),n=Hr(),o=Vr(),i=Kr(),a=Qr(),s=tn(),u=gn(),c=$e(),f=Ce(),h=pn(),l=po(),g=mo(),p=Po();return Dn=function(m,v,d,b,y,w,k){var _=g(m,d),R=g(v,d),x=k.get(R);if(x)t(m,d,x);else{var P=w?w(_,R,d+"",m,v,k):void 0,j=void 0===P;if(j){var C=a(R),$=!C&&u(R),N=!C&&!$&&l(R);P=R,C||$||N?a(_)?P=_:s(_)?P=n(_):$?(j=!1,P=e(R,!0)):N?(j=!1,P=r(R,!0)):P=[]:h(R)||i(R)?(P=_,i(_)?P=p(_):f(_)&&!c(_)||(P=o(R))):j=!1}j&&(k.set(R,P),y(P,R,b,w,k),k.delete(R)),t(m,d,P)}}}function Co(){if(Fn)return Hn;Fn=1;var t=Xe(),e=er(),r=nr(),n=jo(),o=Ce(),i=xo(),a=mo();return Hn=function s(u,c,f,h,l){u!==c&&r(c,(function(r,i){if(l||(l=new t),o(r))n(u,c,i,f,s,h,l);else{var g=h?h(a(u,i),r,i+"",u,c,l):void 0;void 0===g&&(g=r),e(u,i,g)}}),i)},Hn}function $o(){if(zn)return In;return zn=1,In=function(t){return t}}function No(){if(Vn)return qn;return Vn=1,qn=function(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}}function Oo(){if(Yn)return Jn;Yn=1;var t=No(),e=Math.max;return Jn=function(r,n,o){return n=e(void 0===n?r.length-1:n,0),function(){for(var i=arguments,a=-1,s=e(i.length-n,0),u=Array(s);++a<s;)u[a]=i[n+a];a=-1;for(var c=Array(n+1);++a<n;)c[a]=i[a];return c[n]=o(u),t(r,this,c)}},Jn}function Eo(){if(Qn)return Kn;return Qn=1,Kn=function(t){return function(){return t}}}function Bo(){if(Zn)return Xn;Zn=1;var t=Eo(),e=Ze();return Xn=e?function(r,n){return e(r,"toString",{configurable:!0,enumerable:!1,value:t(n),writable:!0})}:$o()}function To(){if(eo)return to;eo=1;var t=Date.now;return to=function(e){var r=0,n=0;return function(){var o=t(),i=16-(o-n);if(n=o,i>0){if(++r>=800)return arguments[0]}else r=0;return e.apply(void 0,arguments)}},to}function So(){if(no)return ro;no=1;var t=Bo(),e=To()(t);return ro=e}function Ao(){if(io)return oo;io=1;var t=$o(),e=Oo(),r=So();return oo=function(n,o){return r(e(n,o,t),n+"")}}function Lo(){if(so)return ao;so=1;var t=fe(),e=Zr(),r=wo(),n=Ce();return ao=function(o,i,a){if(!n(a))return!1;var s=typeof i;return!!("number"==s?e(a)&&r(i,a.length):"string"==s&&i in a)&&t(a[i],o)}}function Wo(){if(co)return uo;co=1;var t=Ao(),e=Lo();return uo=function(r){return t((function(t,n){var o=-1,i=n.length,a=i>1?n[i-1]:void 0,s=i>2?n[2]:void 0;for(a=r.length>3&&"function"==typeof a?(i--,a):void 0,s&&e(n[0],n[1],s)&&(a=i<3?void 0:a,i=1),t=Object(t);++o<i;){var u=n[o];u&&r(t,u,o,a)}return t}))}}function Uo(){if(ho)return fo;ho=1;var t=Co(),e=Wo()((function(e,r,n){t(e,r,n)}));return fo=e}var Mo,Do,Go,Ho,Fo,Io,zo,qo,Vo,Jo,Yo,Ko,Qo,Xo,Zo,ti,ei,ri,ni,oi,ii,ai,si,ui,ci=ue(Uo());function fi(){if(Do)return Mo;Do=1;var t=je(),e=Jr();return Mo=function(r){return"symbol"==typeof r||e(r)&&"[object Symbol]"==t(r)}}function hi(){if(Ho)return Go;Ho=1;var t=Qr(),e=fi(),r=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,n=/^\w*$/;return Go=function(o,i){if(t(o))return!1;var a=typeof o;return!("number"!=a&&"symbol"!=a&&"boolean"!=a&&null!=o&&!e(o))||(n.test(o)||!r.test(o)||null!=i&&o in Object(i))}}function li(){if(Io)return Fo;Io=1;var t=Ke();function e(r,n){if("function"!=typeof r||null!=n&&"function"!=typeof n)throw new TypeError("Expected a function");var o=function(){var t=arguments,e=n?n.apply(this,t):t[0],i=o.cache;if(i.has(e))return i.get(e);var a=r.apply(this,t);return o.cache=i.set(e,a)||i,a};return o.cache=new(e.Cache||t),o}return e.Cache=t,Fo=e}function gi(){if(qo)return zo;qo=1;var t=li();return zo=function(e){var r=t(e,(function(t){return 500===n.size&&n.clear(),t})),n=r.cache;return r}}function pi(){if(Jo)return Vo;Jo=1;var t=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,e=/\\(\\)?/g,r=gi()((function(r){var n=[];return 46===r.charCodeAt(0)&&n.push(""),r.replace(t,(function(t,r,o,i){n.push(o?i.replace(e,"$1"):r||t)})),n}));return Vo=r}function mi(){if(Ko)return Yo;return Ko=1,Yo=function(t,e){for(var r=-1,n=null==t?0:t.length,o=Array(n);++r<n;)o[r]=e(t[r],r,t);return o}}function vi(){if(Xo)return Qo;Xo=1;var t=Re(),e=mi(),r=Qr(),n=fi(),o=t?t.prototype:void 0,i=o?o.toString:void 0;return Qo=function t(o){if("string"==typeof o)return o;if(r(o))return e(o,t)+"";if(n(o))return i?i.call(o):"";var a=o+"";return"0"==a&&1/o==-1/0?"-0":a},Qo}function di(){if(ti)return Zo;ti=1;var t=vi();return Zo=function(e){return null==e?"":t(e)}}function bi(){if(ri)return ei;ri=1;var t=Qr(),e=hi(),r=pi(),n=di();return ei=function(o,i){return t(o)?o:e(o,i)?[o]:r(n(o))}}function yi(){if(oi)return ni;oi=1;var t=fi();return ni=function(e){if("string"==typeof e||t(e))return e;var r=e+"";return"0"==r&&1/e==-1/0?"-0":r}}function wi(){if(ai)return ii;ai=1;var t=bi(),e=yi();return ii=function(r,n){for(var o=0,i=(n=t(n,r)).length;null!=r&&o<i;)r=r[e(n[o++])];return o&&o==i?r:void 0}}function ki(){if(ui)return si;ui=1;var t=wi();return si=function(e,r,n){var o=null==e?void 0:t(e,r);return void 0===o?n:o}}var _i=ue(ki());const Ri="package.json",xi=[".env.local",".env"];class Pi extends t{_env;shared;constructor(t){super(t),this._env=e.searchEnv({logger:this.logger,preloadList:this.feConfig.envOrder||xi}),this.shared=Object.assign({},this.feConfig.release,this.getDefaultShreadOptions(t.shared))}getDefaultShreadOptions(t){return{rootPath:process.cwd(),sourceBranch:this._env.get("FE_RELEASE_BRANCH")||this._env.get("FE_RELEASE_SOURCE_BRANCH")||"master",releaseEnv:this._env.get("FE_RELEASE_ENV")||this._env.get("NODE_ENV")||"development",...t}}get rootPath(){return this.shared.rootPath}get sourceBranch(){return this.shared.sourceBranch}get releaseEnv(){return this.shared.releaseEnv}get env(){return this._env}get workspaces(){return this.getConfig("workspaces.workspaces")}get workspace(){return this.getConfig("workspaces.workspace")}setWorkspaces(t){this.options.workspaces={...this.options.workspaces,workspaces:t}}setConfig(t){this.options=ci(this.options,t)}getConfig(t,e){return _i(this.options,t,e)}setShared(t){this.shared=ci(this.shared,t)}getPkg(t,e){const r=this.workspace?.packageJson;if(!r)throw new Error("package.json is not found");return t?_i(r,t,e):r}getTemplateContext(){return{...this.shared,...this.workspace,publishPath:this.workspace?.path||"",env:this.releaseEnv,branch:this.sourceBranch}}async runChangesetsCli(t,e){let r="pnpm";try{await this.shell.exec("pnpm -v",{dryRun:!1})}catch{r="npx"}return await this.shell.exec([r,"changeset",t,...e??[]])}}function ji(t,...e){return[t,...e]}const Ci={maxWorkspace:3,multiWorkspaceSeparator:"_",workspaceVersionSeparator:"@",batchBranchName:"batch-${releaseName}-${length}-packages-${timestamp}",batchTagName:"batch-${length}-packages-${timestamp}"};class $i{shell;logger;config;constructor(t,e,r={}){this.shell=t,this.logger=e,this.config={...Ci,...r}}getReleaseBranchName(t,e,r){const n=r.branchName||"release-${tagName}";if("string"!=typeof n)throw new Error("Branch name template is not a string");return this.logger.debug("Release Branch template is:",n),this.shell.format(n,{pkgName:t,releaseName:t,tagName:e,...r})}getBatchReleaseBranchName(t,e,r,n){const o=this.config.batchBranchName;if("string"!=typeof o)throw new Error("Branch name template is not a string");return this.logger.debug("Release Batch Branch template is:",o),this.shell.format(o,{pkgName:t,releaseName:t,tagName:e,...r,length:n,timestamp:Date.now()})}getReleaseName(t){if(1===t.length)return t[0].name;const{maxWorkspace:e,multiWorkspaceSeparator:r,workspaceVersionSeparator:n}=this.config;return t.slice(0,e).map((({name:t,version:e})=>`${t}${n}${e}`)).join(r)}getReleaseTagName(t){if(1===t.length)return t[0].version;const{batchTagName:e}=this.config;return this.shell.format(e,{length:t.length,timestamp:Date.now()})}getReleaseBranchParams(t,e){const r=this.getReleaseTagName(t),n=this.getReleaseName(t);return{tagName:r,releaseBranch:t.length>1?this.getBatchReleaseBranchName(n,r,e,t.length):this.getReleaseBranchName(n,r,e)}}getPRTitle(t,e){const r=this.config.PRTitle||"Release ${env} ${pkgName} ${tagName}";return this.shell.format(r,{...e,tagName:t.tagName,pkgName:t.releaseBranch})}getPRBody(t,e,r){const n=this.config.PRBody,o=t.length>1?t.map((t=>this.shell.format("\n## ${name} ${version}\n${changelog}\n",t))).join("\n"):t[0].changelog,{workspaceVersionSeparator:i}=this.config,a=1===t.length?e.tagName:t.map((t=>`${t.name}${i}${t.version}`)).join(" ");return this.shell.format(n,{...r,tagName:a,changelog:o})}}class Ni{context;_octokit=null;constructor(t){this.context=t}getGitHubUserInfo(){const{authorName:t,repoName:e}=this.context.shared;if(!t||!e)throw new Error("Author name or repo name is not set");return{owner:t,repo:e}}getToken(){const{tokenRef:t="GITHUB_TOKEN"}=this.context.getConfig("githubPR"),e=this.context.env.get(t);if(!e)throw new Error(`Token is not set. Please set ${t} environment variable.`);return e}get octokit(){if(this._octokit)return this._octokit;const{timeout:t}=this.context.getConfig("githubPR"),e={auth:this.getToken(),request:{timeout:t}};return this._octokit=new n(e),this._octokit}get logger(){return this.context.logger}get shell(){return this.context.shell}get autoMergeType(){return this.context.shared.autoMergeType||"squash"}get dryRunPRNumber(){return this.context.getConfig("githubPR.dryRunPRNumber","999999")}get autoMergeReleasePR(){return this.context.shared.autoMergeReleasePR||false}async mergePR(t,e){if(!t)return void this.logger.error("Failed to create Pull Request.",t);const r=this.autoMergeType;if(this.context.dryRun){const{repoName:n,authorName:o}=this.context.shared;this.logger.info(`[DRY RUN] Would merge PR #${t} with method '${r}' in repo ${o}/${n}, branch ${e}`)}else await this.octokit.rest.pulls.merge({...this.getGitHubUserInfo(),pull_number:Number(t),merge_method:r})}async getPullRequestCommits(t){return(await this.octokit.rest.pulls.listCommits({...this.getGitHubUserInfo(),pull_number:t})).data}async getPullRequest(t){return(await this.octokit.rest.pulls.get({...this.getGitHubUserInfo(),pull_number:t})).data}async checkedPR(t,e){try{await this.getPullRequest(Number(t)),await this.octokit.rest.git.deleteRef({...this.getGitHubUserInfo(),ref:`heads/${e}`}),this.logger.info(`Branch ${e} has been deleted`)}catch(r){if(404===r.status)return void this.logger.warn(`PR #${t} or branch ${e} not found`);throw this.logger.error("Failed to check PR or delete branch",r),r}}async createReleasePRLabel(){const t=this.context.shared.label;if(!(t&&t.name&&t.description&&t.color))throw new Error("Label is not valid, skipping creation");if(this.context.dryRun)return this.logger.info("[DRY RUN] Would create PR label with:",t),t;try{const e=await this.octokit.rest.issues.createLabel({...this.getGitHubUserInfo(),name:t.name,description:t.description,color:t.color.replace("#","")});return this.logger.debug("Create PR label Success",e),t}catch(e){if(422===e.status)return this.logger.warn(`Label ${t.name} already exists, skipping!`),t;throw this.logger.error("Create PR label Failed",e),e}}async createReleasePR(t){if(this.context.getConfig("githubPR.dryRunCreatePR")||this.context.dryRun)return this.logger.info("[DRY RUN] Would create PR with:",{...t,labels:t.labels}),this.dryRunPRNumber;try{const e=await this.octokit.rest.pulls.create({...this.getGitHubUserInfo(),...t}),r=e.data.number;if(!r)throw new Error("CreateReleasePR Failed, prNumber is empty");if(this.logger.debug("Create PR Success",[e?.url]),t.labels&&t.labels.length){const e=await this.octokit.rest.issues.addLabels({...this.getGitHubUserInfo(),issue_number:r,labels:t.labels});this.logger.debug("Add PR label Success",[e.url])}return r.toString()}catch(t){if(422===t.status&&t.message.includes("already exists")){this.logger.warn("PR already exists");const e=t.message.match(/pull request #(\d+)/);return e?e[1]:""}throw this.logger.error("Failed to create PR",t),t}}truncateBody(t){return t&&t.length>=124e3?t.substring(0,124e3)+"...":t}getOctokitReleaseOptions(t){const{releaseName:e,draft:r=!1,preRelease:n=!1,autoGenerate:o=!1,makeLatest:i=!0,releaseNotes:a,discussionCategoryName:s}=this.context.getConfig("githubPR"),u=e,c=o?"":this.truncateBody(String(a));return{name:u,make_latest:i.toString(),body:c,draft:r,prerelease:n,generate_release_notes:o,discussion_category_name:s,tag_name:"",...t,...this.getGitHubUserInfo()}}async createRelease(t){const e=this.getOctokitReleaseOptions({tag_name:t.tagName,body:t.changelog});if(e.name=this.shell.format(e.name,t),this.logger.log(`[DRY RUN] octokit repos.createRelease "${e.name}" (${e.tag_name})`,{isDryRun:this.context.dryRun}),!e.tag_name)throw new Error("TagName is undefined");if(!this.context.dryRun)try{const t=await this.octokit.repos.createRelease(e);this.logger.debug(`[DONE] octokit repos.createRelease "${e.name}" (${e.tag_name}) (${t.headers.location})`)}catch(t){this.logger.error(`[FAILED] octokit repos.createRelease "${e.name}" (${e.tag_name})`,t)}}}var Oi,Ei;function Bi(){if(Ei)return Oi;Ei=1;var t=je(),e=Qr(),r=Jr();return Oi=function(n){return"string"==typeof n||!e(n)&&r(n)&&"[object String]"==t(n)}}var Ti=ue(Bi());class Si{context;pluginName;props;onlyOne=!0;constructor(t,e,r={}){this.context=t,this.pluginName=e,this.props=r,this.setConfig(this.getInitialProps(r))}getInitialProps(t){const e=this.context.options[this.pluginName],r=_i(this.context.shared,this.pluginName);return e||t?ci({},r,t,e):{}}get logger(){return this.context.logger}get shell(){return this.context.shell}get options(){return this.context.getConfig(this.pluginName,{})}getEnv(t,e){return this.context.env.get(t)??e}enabled(t,e){return!0}getConfig(t,e){return t?this.context.getConfig([this.pluginName,...Array.isArray(t)?t:[t]],e):this.context.getConfig(this.pluginName,e)}setConfig(t){this.context.setConfig({[this.pluginName]:t})}onBefore(t){}onExec(t){}onSuccess(t){}onError(t){}async step({label:t,task:e}){this.logger.log(),this.logger.info(t),this.logger.log();try{const r=await e();return this.logger.info(`${t} - success`),r}catch(t){throw this.logger.error(t),t}}}class Ai extends Si{async onBefore(){const t=await this.getUserInfo();if(!t)throw new Error("Failed to get repoInfo");let e=this.context.shared.currentBranch;e||(e=await this.getCurrentBranch()),e&&await this.context.shell.exec(`git checkout ${e}`,{dryRun:!1}),this.context.setShared({repoName:t.repoName,authorName:t.authorName,currentBranch:e})}async getCurrentBranch(){return await new Promise((t=>setTimeout(t,100))),this.context.shell.exec("git rev-parse --abbrev-ref HEAD",{dryRun:!1})}async getRemoteUrl(){return(await this.context.shell.exec("git config --get remote.origin.url",{dryRun:!1})).trim()}async getUserInfo(){let t;try{t=await this.getRemoteUrl()}catch{throw new Error("Failed to get git remote url. Please ensure this is a git repository with a valid remote.")}if(!t)throw new Error("Git remote URL is empty. Please set a valid GitHub remote URL.");this.context.logger.debug("repoUrl: ",t);const e=t.match(/github\.com[:/]([^/]+)\/([^/.]+)(?:\.git)?$/);if(!e)throw new Error("Invalid GitHub repository URL format. Please ensure the remote URL is from GitHub.");const[,r,n]=e;if(!this.isValidString(r)||!this.isValidString(n))throw new Error("Failed to extract owner or repository name from GitHub URL");return{repoName:n,authorName:r}}isValidString(t){return!!t&&Ti(t)}commit(t,e=[]){return this.context.shell.exec(["git","commit","--message",JSON.stringify(t),...e])}}const Li=["hash","abbrevHash","treeHash","abbrevTreeHash","parentHashes","abbrevParentHashes","authorName","authorEmail","authorDate","authorDateRel","committerName","committerEmail","committerDate","committerDateRel","subject","body","rawBody","tag"];class Wi{options;constructor(t){this.options=t}async getGitLog(t={}){const{directory:e,noMerges:r=!0,fileds:n}=t,i=await this.resolveTag(t.from,"root"),a=await this.resolveTag(t.to,"HEAD"),s={repo:".",number:1e3,fields:n,branch:i===a?a:`${i}..${a}`,file:e,nameStatus:!1,includeMergeCommitFiles:!r},u=await o(s);return this.options.logger?.debug("GitChangelog",s),this.options.logger?.debug("GitChangelog commits",u),u}async getCommits(t){return(await this.getGitLog(t)).map((t=>{const{subject:e,rawBody:r}=t;return{base:t,commitlint:this.parseCommitlint(e||"",r),commits:[]}}))}createBaseCommit(t,e){return{subject:t,rawBody:t,body:t,...e}}tabify(t,e=2){return t.split("\n").map((t=>" ".repeat(e)+t.trim())).join("\n")}parseCommitlint(t,e=""){const[r]=t.trim().split("\n"),n=e.startsWith(r)?e.replace(r,""):e,o=r.replace(/\s*\(#\d+\)\s*$/,"").match(/^(?:([a-z]+)(?:\((.*?)\))?: )?(.+)$/i);return o?{type:o[1]?.toLowerCase(),scope:o[2]?.trim(),message:o[3].trim(),body:n?this.tabify(n):void 0}:{message:r,body:n?this.tabify(n):void 0}}toCommitValue(t,e){const[r]=e.trim().split("\n"),n=r.match(/\(#(\d+)\)/),o=this.parseCommitlint(r,e);return{base:this.createBaseCommit(r,{hash:t,abbrevHash:t.substring(0,7),rawBody:e}),commitlint:o,commits:[],prNumber:n?.[1]}}async resolveTag(t,e){if(t)try{if(await this.options.shell.exec(`git tag --list "${t}"`,{dryRun:!1}).then((t=>!!t.trim())))return t}catch{}return"root"===e?this.options.shell.exec("git rev-list --max-parents=0 HEAD",{dryRun:!1}).then((t=>t.trim())):"HEAD"}}var Ui,Mi,Di,Gi,Hi,Fi,Ii,zi,qi,Vi,Ji,Yi,Ki,Qi,Xi,Zi,ta,ea,ra,na,oa,ia,aa,sa,ua,ca,fa,ha,la,ga,pa,ma,va,da,ba,ya,wa,ka,_a,Ra,xa,Pa,ja,Ca,$a,Na,Oa,Ea,Ba,Ta,Sa,Aa,La,Wa,Ua,Ma,Da,Ga,Ha,Fa,Ia,za,qa,Va,Ja,Ya,Ka,Qa,Xa,Za,ts,es,rs,ns,os,is,as,ss,us,cs,fs,hs,ls,gs,ps,ms,vs,ds,bs,ys,ws,ks;function _s(){if(Mi)return Ui;return Mi=1,Ui=function(t,e,r,n){for(var o=-1,i=null==t?0:t.length;++o<i;){var a=t[o];e(n,a,r(a),t)}return n}}function Rs(){if(Gi)return Di;Gi=1;var t=Ir()(Object.keys,Object);return Di=t}function xs(){if(Fi)return Hi;Fi=1;var t=qr(),e=Rs(),r=Object.prototype.hasOwnProperty;return Hi=function(n){if(!t(n))return e(n);var o=[];for(var i in Object(n))r.call(n,i)&&"constructor"!=i&&o.push(i);return o}}function Ps(){if(zi)return Ii;zi=1;var t=ko(),e=xs(),r=Zr();return Ii=function(n){return r(n)?t(n):e(n)}}function js(){if(Vi)return qi;Vi=1;var t=nr(),e=Ps();return qi=function(r,n){return r&&t(r,n,e)}}function Cs(){if(Yi)return Ji;Yi=1;var t=Zr();return Ji=function(e,r){return function(n,o){if(null==n)return n;if(!t(n))return e(n,o);for(var i=n.length,a=r?i:-1,s=Object(n);(r?a--:++a<i)&&!1!==o(s[a],a,s););return n}}}function $s(){if(Qi)return Ki;Qi=1;var t=js(),e=Cs()(t);return Ki=e}function Ns(){if(Zi)return Xi;Zi=1;var t=$s();return Xi=function(e,r,n,o){return t(e,(function(t,e,i){r(o,t,n(t),i)})),o}}function Os(){if(ea)return ta;ea=1;return ta=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this}}function Es(){if(na)return ra;return na=1,ra=function(t){return this.__data__.has(t)}}function Bs(){if(ia)return oa;ia=1;var t=Ke(),e=Os(),r=Es();function n(e){var r=-1,n=null==e?0:e.length;for(this.__data__=new t;++r<n;)this.add(e[r])}return n.prototype.add=n.prototype.push=e,n.prototype.has=r,oa=n}function Ts(){if(sa)return aa;return sa=1,aa=function(t,e){for(var r=-1,n=null==t?0:t.length;++r<n;)if(e(t[r],r,t))return!0;return!1}}function Ss(){if(ca)return ua;return ca=1,ua=function(t,e){return t.has(e)}}function As(){if(ha)return fa;ha=1;var t=Bs(),e=Ts(),r=Ss();return fa=function(n,o,i,a,s,u){var c=1&i,f=n.length,h=o.length;if(f!=h&&!(c&&h>f))return!1;var l=u.get(n),g=u.get(o);if(l&&g)return l==o&&g==n;var p=-1,m=!0,v=2&i?new t:void 0;for(u.set(n,o),u.set(o,n);++p<f;){var d=n[p],b=o[p];if(a)var y=c?a(b,d,p,o,n,u):a(d,b,p,n,o,u);if(void 0!==y){if(y)continue;m=!1;break}if(v){if(!e(o,(function(t,e){if(!r(v,e)&&(d===t||s(d,t,i,a,u)))return v.push(e)}))){m=!1;break}}else if(d!==b&&!s(d,b,i,a,u)){m=!1;break}}return u.delete(n),u.delete(o),m}}function Ls(){if(ga)return la;return ga=1,la=function(t){var e=-1,r=Array(t.size);return t.forEach((function(t,n){r[++e]=[n,t]})),r}}function Ws(){if(ma)return pa;return ma=1,pa=function(t){var e=-1,r=Array(t.size);return t.forEach((function(t){r[++e]=t})),r},pa}function Us(){if(da)return va;da=1;var t=Re(),e=Mr(),r=fe(),n=As(),o=Ls(),i=Ws(),a=t?t.prototype:void 0,s=a?a.valueOf:void 0;return va=function(t,a,u,c,f,h,l){switch(u){case"[object DataView]":if(t.byteLength!=a.byteLength||t.byteOffset!=a.byteOffset)return!1;t=t.buffer,a=a.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=a.byteLength||!h(new e(t),new e(a)));case"[object Boolean]":case"[object Date]":case"[object Number]":return r(+t,+a);case"[object Error]":return t.name==a.name&&t.message==a.message;case"[object RegExp]":case"[object String]":return t==a+"";case"[object Map]":var g=o;case"[object Set]":var p=1&c;if(g||(g=i),t.size!=a.size&&!p)return!1;var m=l.get(t);if(m)return m==a;c|=2,l.set(t,a);var v=n(g(t),g(a),c,f,h,l);return l.delete(t),v;case"[object Symbol]":if(s)return s.call(t)==s.call(a)}return!1}}function Ms(){if(ya)return ba;return ya=1,ba=function(t,e){for(var r=-1,n=e.length,o=t.length;++r<n;)t[o+r]=e[r];return t}}function Ds(){if(ka)return wa;ka=1;var t=Ms(),e=Qr();return wa=function(r,n,o){var i=n(r);return e(r)?i:t(i,o(r))}}function Gs(){if(Ra)return _a;return Ra=1,_a=function(t,e){for(var r=-1,n=null==t?0:t.length,o=0,i=[];++r<n;){var a=t[r];e(a,r,t)&&(i[o++]=a)}return i}}function Hs(){if(Pa)return xa;return Pa=1,xa=function(){return[]}}function Fs(){if(Ca)return ja;Ca=1;var t=Gs(),e=Hs(),r=Object.prototype.propertyIsEnumerable,n=Object.getOwnPropertySymbols;return ja=n?function(e){return null==e?[]:(e=Object(e),t(n(e),(function(t){return r.call(e,t)})))}:e}function Is(){if(Na)return $a;Na=1;var t=Ds(),e=Fs(),r=Ps();return $a=function(n){return t(n,r,e)}}function zs(){if(Ea)return Oa;Ea=1;var t=Is(),e=Object.prototype.hasOwnProperty;return Oa=function(r,n,o,i,a,s){var u=1&o,c=t(r),f=c.length;if(f!=t(n).length&&!u)return!1;for(var h=f;h--;){var l=c[h];if(!(u?l in n:e.call(n,l)))return!1}var g=s.get(r),p=s.get(n);if(g&&p)return g==n&&p==r;var m=!0;s.set(r,n),s.set(n,r);for(var v=u;++h<f;){var d=r[l=c[h]],b=n[l];if(i)var y=u?i(b,d,l,n,r,s):i(d,b,l,r,n,s);if(!(void 0===y?d===b||a(d,b,o,i,s):y)){m=!1;break}v||(v="constructor"==l)}if(m&&!v){var w=r.constructor,k=n.constructor;w==k||!("constructor"in r)||!("constructor"in n)||"function"==typeof w&&w instanceof w&&"function"==typeof k&&k instanceof k||(m=!1)}return s.delete(r),s.delete(n),m}}function qs(){if(Ta)return Ba;Ta=1;var t=Se()(_e(),"DataView");return Ba=t}function Vs(){if(Aa)return Sa;Aa=1;var t=Se()(_e(),"Promise");return Sa=t}function Js(){if(Wa)return La;Wa=1;var t=Se()(_e(),"Set");return La=t}function Ys(){if(Ma)return Ua;Ma=1;var t=Se()(_e(),"WeakMap");return Ua=t}function Ks(){if(Ga)return Da;Ga=1;var t=qs(),e=Ae(),r=Vs(),n=Js(),o=Ys(),i=je(),a=Ee(),s="[object Map]",u="[object Promise]",c="[object Set]",f="[object WeakMap]",h="[object DataView]",l=a(t),g=a(e),p=a(r),m=a(n),v=a(o),d=i;return(t&&d(new t(new ArrayBuffer(1)))!=h||e&&d(new e)!=s||r&&d(r.resolve())!=u||n&&d(new n)!=c||o&&d(new o)!=f)&&(d=function(t){var e=i(t),r="[object Object]"==e?t.constructor:void 0,n=r?a(r):"";if(n)switch(n){case l:return h;case g:return s;case p:return u;case m:return c;case v:return f}return e}),Da=d}function Qs(){if(Fa)return Ha;Fa=1;var t=Xe(),e=As(),r=Us(),n=zs(),o=Ks(),i=Qr(),a=gn(),s=po(),u="[object Arguments]",c="[object Array]",f="[object Object]",h=Object.prototype.hasOwnProperty;return Ha=function(l,g,p,m,v,d){var b=i(l),y=i(g),w=b?c:o(l),k=y?c:o(g),_=(w=w==u?f:w)==f,R=(k=k==u?f:k)==f,x=w==k;if(x&&a(l)){if(!a(g))return!1;b=!0,_=!1}if(x&&!_)return d||(d=new t),b||s(l)?e(l,g,p,m,v,d):r(l,g,w,p,m,v,d);if(!(1&p)){var P=_&&h.call(l,"__wrapped__"),j=R&&h.call(g,"__wrapped__");if(P||j){var C=P?l.value():l,$=j?g.value():g;return d||(d=new t),v(C,$,p,m,d)}}return!!x&&(d||(d=new t),n(l,g,p,m,v,d))}}function Xs(){if(za)return Ia;za=1;var t=Qs(),e=Jr();return Ia=function r(n,o,i,a,s){return n===o||(null==n||null==o||!e(n)&&!e(o)?n!=n&&o!=o:t(n,o,i,a,r,s))},Ia}function Zs(){if(Va)return qa;Va=1;var t=Xe(),e=Xs();return qa=function(r,n,o,i){var a=o.length,s=a,u=!i;if(null==r)return!s;for(r=Object(r);a--;){var c=o[a];if(u&&c[2]?c[1]!==r[c[0]]:!(c[0]in r))return!1}for(;++a<s;){var f=(c=o[a])[0],h=r[f],l=c[1];if(u&&c[2]){if(void 0===h&&!(f in r))return!1}else{var g=new t;if(i)var p=i(h,l,f,r,n,g);if(!(void 0===p?e(l,h,3,i,g):p))return!1}}return!0}}function tu(){if(Ya)return Ja;Ya=1;var t=Ce();return Ja=function(e){return e==e&&!t(e)}}function eu(){if(Qa)return Ka;Qa=1;var t=tu(),e=Ps();return Ka=function(r){for(var n=e(r),o=n.length;o--;){var i=n[o],a=r[i];n[o]=[i,a,t(a)]}return n}}function ru(){if(Za)return Xa;return Za=1,Xa=function(t,e){return function(r){return null!=r&&(r[t]===e&&(void 0!==e||t in Object(r)))}}}function nu(){if(es)return ts;es=1;var t=Zs(),e=eu(),r=ru();return ts=function(n){var o=e(n);return 1==o.length&&o[0][2]?r(o[0][0],o[0][1]):function(e){return e===n||t(e,n,o)}}}function ou(){if(ns)return rs;return ns=1,rs=function(t,e){return null!=t&&e in Object(t)}}function iu(){if(is)return os;is=1;var t=bi(),e=Kr(),r=Qr(),n=wo(),o=Xr(),i=yi();return os=function(a,s,u){for(var c=-1,f=(s=t(s,a)).length,h=!1;++c<f;){var l=i(s[c]);if(!(h=null!=a&&u(a,l)))break;a=a[l]}return h||++c!=f?h:!!(f=null==a?0:a.length)&&o(f)&&n(l,f)&&(r(a)||e(a))}}function au(){if(ss)return as;ss=1;var t=ou(),e=iu();return as=function(r,n){return null!=r&&e(r,n,t)}}function su(){if(cs)return us;cs=1;var t=Xs(),e=ki(),r=au(),n=hi(),o=tu(),i=ru(),a=yi();return us=function(s,u){return n(s)&&o(u)?i(a(s),u):function(n){var o=e(n,s);return void 0===o&&o===u?r(n,s):t(u,o,3)}}}function uu(){if(hs)return fs;return hs=1,fs=function(t){return function(e){return null==e?void 0:e[t]}}}function cu(){if(gs)return ls;gs=1;var t=wi();return ls=function(e){return function(r){return t(r,e)}}}function fu(){if(ms)return ps;ms=1;var t=uu(),e=cu(),r=hi(),n=yi();return ps=function(o){return r(o)?t(n(o)):e(o)}}function hu(){if(ds)return vs;ds=1;var t=nu(),e=su(),r=$o(),n=Qr(),o=fu();return vs=function(i){return"function"==typeof i?i:null==i?r:"object"==typeof i?n(i)?e(i[0],i[1]):t(i):o(i)}}function lu(){if(ys)return bs;ys=1;var t=_s(),e=Ns(),r=hu(),n=Qr();return bs=function(o,i){return function(a,s){var u=n(a)?t:e,c=i?i():{};return u(a,o,r(s,2),c)}}}function gu(){if(ks)return ws;ks=1;var t=tr(),e=lu(),r=Object.prototype.hasOwnProperty,n=e((function(e,n,o){r.call(e,o)?e[o].push(n):t(e,o,[n])}));return ws=n}var pu=ue(gu());const mu="\n- ${scopeHeader} ${commitlint.message} ${commitLink} ${prLink}";class vu{options;constructor(t){this.options=t}format(t,e){const{types:r=[],commitBody:n=!1}={...this.options,...e},o=[],i=pu(t,(t=>t.commitlint.type?t.commitlint.type:t.commitlint.message));return r.forEach((t=>{const{type:r,section:a,hidden:s}=t;if(s)return;const u=i[r]||[];u.length>0&&(o.push(a||""),u.forEach((t=>{if(o.push(this.formatCommit(t,e)),n&&t.commitlint.body){const e=t.commitlint.body.split("\n").map((t=>` ${t}`));o.push(...e)}})))})),o}formatCommit(t,e){const{commitlint:r,base:{hash:n},prNumber:o}=t,{repoUrl:i,formatTemplate:a=mu}={...this.options,...e},s=r.scope?this.formatScope(r.scope):"",u=o?this.foramtLink("#"+o,i?`${i}/pull/${o}`:""):"",c=n?this.foramtLink(n.slice(0,7),i?`${i}/commit/${n}`:""):"";return this.options.shell.format(a,{...t,scopeHeader:s,commitLink:c,prLink:u})}foramtLink(t,e){return e?`([${t}](${e}))`:`(${t})`}formatCommitLink(t,e){return e?`([${t}](${e}))`:`(${t})`}formatScope(t){return`**${t}:**`}}const du="https://github.com";class bu extends Wi{options;githubManager;constructor(t,e){super(t),this.options=t,this.githubManager=e}async getFullCommit(t){const e={...this.options,...t},r=await this.getCommits(e);return(await Promise.all(r.map((async t=>{let{prNumber:e}=t;if(!e&&t.base.subject){const r=t.base.subject.match(/\(#(\d+)\)/);r&&(e=r[1],t.prNumber=e)}if(!e)return t;return(await this.githubManager.getPullRequestCommits(+e)).map((({sha:t,commit:{message:r}})=>Object.assign(this.toCommitValue(t,r),{prNumber:e})))})))).flat()}async transformWorkspace(t,e){const r=[du,e.shared.authorName,e.shared.repoName].join("/"),n={...e.getConfig("changelog"),githubRootPath:r,mergePRcommit:!0,shell:e.shell,logger:e.logger},o=new bu(n,this.githubManager),i=new vu(n);return await Promise.all(t.map((async t=>{const e=await o.getFullCommit({from:t.lastTag??"",directory:t.path,fileds:Li});if("string"==typeof e)return{...t,changelog:e};const a=i.format(e,{...n,repoUrl:r});return{...t,changelog:a.join("\n")}})))}}class yu{options;constructor(t){this.options=t}compare(t,e){return"function"==typeof this.options.compare?this.options.compare(t,e):t.startsWith(e)}toChangeLabel(t,e=this.options.changePackagesLabel){return e.replace("${name}",t)}toChangeLabels(t,e=this.options.changePackagesLabel){return t.map((t=>this.toChangeLabel(t,e)))}pick(t,e=this.options.packagesDirectories){const r=[];for(const n of e)for(const e of t)if(this.compare(e,n)){r.push(n);break}return r}}class wu{static readJson(t){const e=f(t,"utf-8");return JSON.parse(e)}static toWorkspace(t,e){let{root:r,packageJson:n}=t;const o=t.path;if(!o)throw new Error("path is not required!");return r=r||g(e,o),n=n||wu.readJson(g(r,Ri)),{name:n.name,version:n.version,path:o,root:r,packageJson:n}}}class ku extends Si{releaseTask=null;workspacesList=[];_skip=!1;releaseLabel;constructor(t){super(t,"workspaces"),this.releaseLabel=new yu({changePackagesLabel:this.context.shared.changePackagesLabel||"change:${name}",packagesDirectories:this.context.shared.packagesDirectories||[],compare:(t,e)=>i(t).startsWith(i(e))})}enabled(){return!this._skip&&!this.getConfig("skip")}async onBefore(){const t=this.getConfig("workspace");if(t)return this.logger.debug("Use the specified workspace",t),void this.setCurrentWorkspace(t,[]);const e=await this.getWorkspaces();if(this.getConfig("skipCheckPackage")||0===e.length)throw new Error("No changes to publish packages");const{publishPath:r}=this.context.shared;if(r){const t=e.find((t=>i(t.root)===i(r)));if(this.nextSkip(),!t)throw new Error(`No workspace found for: ${r}`);return this.logger.debug(`Workspace of ${r} find!`,a(t.root,Ri)),void this.setCurrentWorkspace(t,[t])}const[n,...o]=e;this.workspacesList=o,this.setCurrentWorkspace(n,e)}nextSkip(){this._skip=!0,this.logger.debug("skip next workspace")}setReleaseTask(t){this.releaseTask=t}setCurrentWorkspace(t,e){this.context.setShared({publishPath:t.path}),this.setConfig({workspace:t,workspaces:e})}async getGitWorkspaces(){const t=this.context.sourceBranch,e=await this.shell.exec(`git diff --name-only origin/${t}...HEAD`,{dryRun:!1});return"string"==typeof e?e.split("\n"):[]}async getChangedPackages(t,e){if(this.logger.debug("changeLabels",e),Array.isArray(e)&&e.length>0){const r=t.filter((t=>{const r=this.releaseLabel.toChangeLabel(t);return e.includes(r)}));return this.logger.debug("changed by labels",r),r}const r=await this.getGitWorkspaces();return this.logger.debug("changed by git",r),this.releaseLabel.pick(r,t)}getProjectWorkspaces(){const t=this.context.rootPath,e=this.context.shared.packagesDirectories;if(Array.isArray(e)&&e.length>0)return e.map((e=>wu.toWorkspace({path:e},t)));return(c(t)||[]).map((e=>({name:e.package.name,version:e.package.version,path:s(t,e.location),root:i(t,e.location),packageJson:e.package})))}async getWorkspaces(){const t=this.getProjectWorkspaces(),e=t.map((({path:t})=>t));this.logger.debug("packages",e);const r=this.getConfig("changeLabels"),n=await this.getChangedPackages(e,r);return this.setConfig({packages:e,changedPaths:n,projectWorkspaces:t}),this.logger.debug("changedPaths",n),t.filter((t=>n.includes(t.path)))}}function _u(t,...e){return"function"==typeof t&&t.prototype&&t.prototype.constructor===t?new t(...e):t(...e)}function Ru(t){return t.startsWith(".")?u(t).name:t}async function xu(t){let e=null;try{e=(await import(t)).default}catch{try{e=(await import(a(process.cwd(),t))).default}catch{const r=p(process.cwd());e=(await import(m(r.resolve(t,{paths:[process.cwd()]})).href)).default}}return[Ru(t),e]}async function Pu(t,e,r=5){const n=v(r),o=e.map((([e,...r])=>n((()=>(async(e,...r)=>{if("string"==typeof e){const[,n]=await xu(e);return _u(n,t,...r)}return _u(e,t,...r)})(e,...r)))));return Promise.all(o)}const ju=[ji(ku),ji(class extends Si{constructor(t,e){super(t,"changelog",{increment:"patch",changesetRoot:".changeset",tagTemplate:"${name}@${version}",tagPrefix:"${name}",tagMatch:"${name}@*",...e})}get changesetRoot(){return g(this.context.rootPath,this.getConfig("changesetRoot"))}get changesetConfigPath(){return g(this.changesetRoot,"config.json")}enabled(){return!this.getConfig("skip")}async onBefore(){if(!h(this.changesetRoot))throw new Error(`Changeset directory ${this.changesetRoot} does not exist`);this.logger.debug(`${this.changesetRoot} exists`)}mergeWorkspaces(t){return t.map((t=>{const e=wu.toWorkspace({path:t.path},this.context.rootPath),r={...t,version:e.version};return r.tagName=this.generateTagName(r),r}))}async onExec(t){const e=await this.step({label:"Generate Changelogs",task:()=>Promise.all(this.context.workspaces.map((t=>this.generateChangelog(t))))});this.context.setWorkspaces(e)}async onSuccess(){const t=this.context.workspaces;this.getConfig("skipChangeset")?this.logger.debug("Skip generate changeset files"):(await this.step({label:"Changeset Version",task:()=>Promise.all(t.map((t=>this.generateChangesetFile(t))))}),await this.context.runChangesetsCli("version",["--no-changelog","--update-dependencies"]),this.getConfig("ignoreNonUpdatedPackages")&&await this.restoreIgnorePackages());const e=this.mergeWorkspaces(t);this.logger.debug("new workspaces",e),this.context.setWorkspaces(e)}async restoreIgnorePackages(){const{changedPaths:t=[],packages:e=[]}=this.context.getConfig("workspaces"),r=e.filter((e=>!t.includes(e))).map((t=>wu.toWorkspace({path:t},this.context.rootPath).path));this.logger.debug("noChangedPackages",r),r.length>0&&await this.shell.exec(["git","restore",...r])}getTagPrefix(t){return this.shell.format(this.getConfig("tagPrefix"),t)}async generateChangelog(t){const e=await this.getTagName(t);this.logger.debug("tagName is:",e);const r={...this.getConfig(),from:e,directory:t.path,shell:this.shell,fileds:Li,logger:this.logger},n=new Wi(r),o=await n.getCommits(r),i=new vu(r).format(o);return{...t,lastTag:e,changelog:i.join("\n")}}generateTagName(t){try{const e=this.getConfig("tagTemplate");return this.shell.format(e,t)}catch(e){return console.error(`Error generating tag name for ${t.name}:`,e),`${t.name}-v0.0.0`}}async getTagName(t){try{const e=this.generateTagName(t),r=this.shell.format(this.getConfig("tagMatch"),t),n=await this.shell.exec(`git for-each-ref --sort=-creatordate --format "%(refname:short)|%(creatordate:iso8601)" "refs/tags/${r}"`,{dryRun:!1});if(!n)return e;const o=n.split("\n").filter(Boolean);if(0===o.length)return e;return o[0].split("|")[0]}catch(e){console.error(`Error getting tag for ${t.name}:`,e);return this.generateTagName(t)}}getIncrement(){const t=this.context.getConfig("workspaces.changeLabels");if(Array.isArray(t)&&t.length>0){if(t.includes("increment:major"))return"major";if(t.includes("increment:minor"))return"minor"}return this.getConfig("increment","patch")}async generateChangesetFile(t){const{name:e,version:r}=t,n=`${e}-${r}`.replace(/[\/\\]/g,"_"),o=g(this.changesetRoot,`${n}.md`),i=this.getIncrement();this.logger.debug("increment is:",[i]);const a=this.shell.format("---\n'${name}': '${increment}'\n---\n\n${changelog}",{...t,increment:i});if(this.context.dryRun)return this.logger.info(`Changeset [${o}] will be created, content is:`),void this.logger.log(a);h(o)?this.logger.info(`Changeset ${n} already exists`):l(o,a,"utf-8")}},{}),ji(class extends Ai{context;releaseParams;githubManager;constructor(t,e){super(t,"githubPR",{releaseName:"Release ${name} v${version}",...e}),this.context=t,this.githubManager=new Ni(this.context),this.releaseParams=new $i(t.shell,t.logger,{PRTitle:this.getConfig("PRTitle",this.context.shared.PRTitle),PRBody:this.getConfig("PRBody",this.context.shared.PRBody),...this.props})}enabled(t){return!this.getConfig("skip")}get isPublish(){return!this.getConfig("releasePR")}async isGithubRepository(){try{return(await this.getRemoteUrl()).includes("github.com")}catch{return!1}}async onBefore(){this.logger.debug("GithubPR onBefore");if(!await this.isGithubRepository())throw new Error("Current repository is not a GitHub repository. GitHub PR workflow is only available for GitHub repositories.");if(await super.onBefore(),this.isPublish){const t=this.getEnv("NPM_TOKEN");if(!t)throw new Error("NPM_TOKEN is not set");await this.shell.exec(`npm config set //registry.npmjs.org/:_authToken=${t}`)}}async onExec(){const t=this.context.workspaces,e=new bu(this.context.getConfig("changelog"),this.githubManager),r=await this.step({label:"GithubPR Changelogs",task:()=>e.transformWorkspace(t,this.context)});this.context.setWorkspaces(r)}async onSuccess(){this.isPublish?await this.publishPR(this.context.workspaces):await this.releasePR(this.context.workspaces)}async releasePR(t){await this.step({label:"Release Commit",task:()=>this.relesaeCommit(t)});const e=await this.step({label:"Create Release Branch",task:()=>this.createReleaseBranch(t)});await this.releasePullRequest(t,e)}async publishPR(t){this.getConfig("dryRunCreatePR")||(await this.context.runChangesetsCli("publish"),await this.shell.exec("git push origin --tags")),await this.step({label:"Release Github",task:()=>Promise.all(t.map((t=>(this.logger.debug(t),this.githubManager.createRelease(t)))))})}async relesaeCommit(t){const e=this.getConfig("commitArgs",[]);if(1===t.length)return await this.shell.exec("git add ."),void await this.commitWorkspace(t[0],e);await this.shell.exec("git add .");const r=`chore(tag): ${t.map((t=>`${t.name} v${t.version}`)).join(",")}`;await this.commit(r,e)}async releasePullRequest(t,e){const r=await this.step({label:"Create Release PR",task:()=>this.createReleasePR(t,e)});if(this.githubManager.autoMergeReleasePR){const{releaseBranch:t}=e;return await this.step({label:`Merge Release PR(${r})`,task:()=>this.githubManager.mergePR(r,t)}),void await this.step({label:`Checked Release PR(${r})`,task:()=>this.githubManager.checkedPR(r,t)})}this.logger.info(`Please manually merge PR(#${r}) and complete the publishing process afterwards`)}async commitWorkspace(t,e=[]){const r=this.shell.format(this.getConfig("commitMessage","chore(tag): ${name} v${version}"),t);return await this.commit(r,e)}async createReleaseBranch(t){const e=this.releaseParams.getReleaseBranchParams(t,this.context.getTemplateContext()),{tagName:r,releaseBranch:n}=e;if("string"!=typeof r)throw new Error("Tag name is not a string");const{sourceBranch:o,currentBranch:i}=this.context.shared;this.context.logger.debug("PR TagName is:",r),this.context.logger.debug("PR CurrentBranch is:",i),this.context.logger.debug("PR SourceBranch is:",o),this.context.logger.debug("PR ReleaseBranch is:",n);try{await this.context.shell.exec(`git fetch origin ${o} ${i}`),await this.context.shell.exec(`git checkout -b ${n} ${i}`),await this.context.shell.exec(`git push origin ${n}`)}catch(t){throw t.message.includes("remote: Permission to ")&&this.context.logger.warn('Token maybe not allow Workflow permissions, can you try to open "Workflow permissions" -> "Read and write permissions" for this token?'),t}return{tagName:r,releaseBranch:n}}async createReleasePR(t,e){let r=[(await this.githubManager.createReleasePRLabel()).name];if(this.getConfig("pushChangeLabels")){const t=this.context.getConfig("workspaces.changeLabels");Array.isArray(t)&&t.length>0&&r.push(...t)}r=Array.from(new Set(r)),this.logger.debug("Release PR labels:",r);const n=this.context.getTemplateContext(),o=this.releaseParams.getPRTitle(e,n),i=this.releaseParams.getPRBody(t,e,n);return this.githubManager.createReleasePR({title:o,body:i,base:this.context.sourceBranch,head:e.releaseBranch,labels:r})}},{})];class Cu{executor;defaultTuples;context;constructor(t={},e=new r,n=ju){this.executor=e,this.defaultTuples=n,this.context=new Pi(t)}getContext(){return this.context}async usePlugins(t){t=t||this.context.shared.plugins||[];const e=await Pu(this.context,[...this.defaultTuples,...t]);return e.forEach((t=>{t instanceof ku&&t.setReleaseTask(this),this.executor.use(t)})),e}async run(){return this.executor.exec(this.context,(t=>Promise.resolve(t)))}async exec(t){if("false"===this.context.env.get("FE_RELEASE"))throw new Error("Skip Release");return await this.usePlugins(t),this.run()}}var $u,Nu,Ou,Eu;function Bu(){if(Nu)return $u;Nu=1;var t=vo(),e=bi(),r=wo(),n=Ce(),o=yi();return $u=function(i,a,s,u){if(!n(i))return i;for(var c=-1,f=(a=e(a,i)).length,h=f-1,l=i;null!=l&&++c<f;){var g=o(a[c]),p=s;if("__proto__"===g||"constructor"===g||"prototype"===g)return i;if(c!=h){var m=l[g];void 0===(p=u?u(m,g,l):void 0)&&(p=n(m)?m:r(a[c+1])?[]:{})}t(l,g,p),l=l[g]}return i}}function Tu(){if(Eu)return Ou;Eu=1;var t=Bu();return Ou=function(e,r,n){return null==e?e:t(e,r,n)}}var Su=ue(Tu());function Au(t,e){return Object.entries(t).reduce(((t,[r,n])=>(r.includes(".")?Su(t,r,n):Su(t,e?`${e}.${r}`:r,n),t)),{})}export{Li as CHANGELOG_ALL_FIELDS,Wi as GitChangelog,vu as GitChangelogFormatter,Si as Plugin,Pi as ReleaseContext,yu as ReleaseLabel,Cu as ReleaseTask,_u as factory,xu as load,Pu as loaderPluginsFromPluginTuples,Au as reduceOptions,ji as tuple};
1
+ import{FeScriptContext as t}from"@qlover/scripts-context";import{Env as e}from"@qlover/env-loader";import{AsyncExecutor as r}from"@qlover/fe-corekit";import{Octokit as n}from"@octokit/rest";import o from"gitlog";import{sep as i,normalize as a,resolve as s,join as u,relative as c,parse as h}from"node:path";import{findWorkspaces as f}from"find-workspaces";import{readFileSync as l,existsSync as g,writeFileSync as p}from"fs";import{join as m}from"path";import{createRequire as d}from"node:module";import{pathToFileURL as v}from"node:url";import b from"p-limit";var y,w,k,_,R,P,x,C,j,$,N,O,E,B,T,S,L,A,W,U,M,D,G,H,I,F,z,q,V,J,Y,K,Q,X,Z,tt,et,rt,nt,ot,it,at,st,ut,ct,ht,ft,lt,gt,pt,mt,dt,vt,bt,yt,wt,kt,_t,Rt,Pt,xt,Ct,jt,$t,Nt,Ot,Et,Bt,Tt,St,Lt,At,Wt,Ut,Mt,Dt,Gt,Ht,It,Ft,zt,qt,Vt,Jt,Yt,Kt,Qt,Xt,Zt,te,ee,re,ne,oe,ie,ae,se,ue,ce="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function he(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function fe(){if(w)return y;return w=1,y=function(){this.__data__=[],this.size=0}}function le(){if(_)return k;return _=1,k=function(t,e){return t===e||t!=t&&e!=e}}function ge(){if(P)return R;P=1;var t=le();return R=function(e,r){for(var n=e.length;n--;)if(t(e[n][0],r))return n;return-1}}function pe(){if(C)return x;C=1;var t=ge(),e=Array.prototype.splice;return x=function(r){var n=this.__data__,o=t(n,r);return!(o<0)&&(o==n.length-1?n.pop():e.call(n,o,1),--this.size,!0)}}function me(){if($)return j;$=1;var t=ge();return j=function(e){var r=this.__data__,n=t(r,e);return n<0?void 0:r[n][1]}}function de(){if(O)return N;O=1;var t=ge();return N=function(e){return t(this.__data__,e)>-1}}function ve(){if(B)return E;B=1;var t=ge();return E=function(e,r){var n=this.__data__,o=t(n,e);return o<0?(++this.size,n.push([e,r])):n[o][1]=r,this}}function be(){if(S)return T;S=1;var t=fe(),e=pe(),r=me(),n=de(),o=ve();function i(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}return i.prototype.clear=t,i.prototype.delete=e,i.prototype.get=r,i.prototype.has=n,i.prototype.set=o,T=i}function ye(){if(A)return L;A=1;var t=be();return L=function(){this.__data__=new t,this.size=0}}function we(){if(U)return W;return U=1,W=function(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}}function ke(){if(D)return M;return D=1,M=function(t){return this.__data__.get(t)}}function _e(){if(H)return G;return H=1,G=function(t){return this.__data__.has(t)}}function Re(){if(F)return I;F=1;var t="object"==typeof ce&&ce&&ce.Object===Object&&ce;return I=t}function Pe(){if(q)return z;q=1;var t=Re(),e="object"==typeof self&&self&&self.Object===Object&&self,r=t||e||Function("return this")();return z=r}function xe(){if(J)return V;J=1;var t=Pe().Symbol;return V=t}function Ce(){if(K)return Y;K=1;var t=xe(),e=Object.prototype,r=e.hasOwnProperty,n=e.toString,o=t?t.toStringTag:void 0;return Y=function(t){var e=r.call(t,o),i=t[o];try{t[o]=void 0;var a=!0}catch(t){}var s=n.call(t);return a&&(e?t[o]=i:delete t[o]),s}}function je(){if(X)return Q;X=1;var t=Object.prototype.toString;return Q=function(e){return t.call(e)}}function $e(){if(tt)return Z;tt=1;var t=xe(),e=Ce(),r=je(),n=t?t.toStringTag:void 0;return Z=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":n&&n in Object(t)?e(t):r(t)}}function Ne(){if(rt)return et;return rt=1,et=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}}function Oe(){if(ot)return nt;ot=1;var t=$e(),e=Ne();return nt=function(r){if(!e(r))return!1;var n=t(r);return"[object Function]"==n||"[object GeneratorFunction]"==n||"[object AsyncFunction]"==n||"[object Proxy]"==n}}function Ee(){if(at)return it;at=1;var t=Pe()["__core-js_shared__"];return it=t}function Be(){if(ut)return st;ut=1;var t,e=Ee(),r=(t=/[^.]+$/.exec(e&&e.keys&&e.keys.IE_PROTO||""))?"Symbol(src)_1."+t:"";return st=function(t){return!!r&&r in t}}function Te(){if(ht)return ct;ht=1;var t=Function.prototype.toString;return ct=function(e){if(null!=e){try{return t.call(e)}catch(t){}try{return e+""}catch(t){}}return""}}function Se(){if(lt)return ft;lt=1;var t=Oe(),e=Be(),r=Ne(),n=Te(),o=/^\[object .+?Constructor\]$/,i=Function.prototype,a=Object.prototype,s=i.toString,u=a.hasOwnProperty,c=RegExp("^"+s.call(u).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");return ft=function(i){return!(!r(i)||e(i))&&(t(i)?c:o).test(n(i))}}function Le(){if(pt)return gt;return pt=1,gt=function(t,e){return null==t?void 0:t[e]}}function Ae(){if(dt)return mt;dt=1;var t=Se(),e=Le();return mt=function(r,n){var o=e(r,n);return t(o)?o:void 0}}function We(){if(bt)return vt;bt=1;var t=Ae()(Pe(),"Map");return vt=t}function Ue(){if(wt)return yt;wt=1;var t=Ae()(Object,"create");return yt=t}function Me(){if(_t)return kt;_t=1;var t=Ue();return kt=function(){this.__data__=t?t(null):{},this.size=0}}function De(){if(Pt)return Rt;return Pt=1,Rt=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}}function Ge(){if(Ct)return xt;Ct=1;var t=Ue(),e=Object.prototype.hasOwnProperty;return xt=function(r){var n=this.__data__;if(t){var o=n[r];return"__lodash_hash_undefined__"===o?void 0:o}return e.call(n,r)?n[r]:void 0}}function He(){if($t)return jt;$t=1;var t=Ue(),e=Object.prototype.hasOwnProperty;return jt=function(r){var n=this.__data__;return t?void 0!==n[r]:e.call(n,r)}}function Ie(){if(Ot)return Nt;Ot=1;var t=Ue();return Nt=function(e,r){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=t&&void 0===r?"__lodash_hash_undefined__":r,this}}function Fe(){if(Bt)return Et;Bt=1;var t=Me(),e=De(),r=Ge(),n=He(),o=Ie();function i(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}return i.prototype.clear=t,i.prototype.delete=e,i.prototype.get=r,i.prototype.has=n,i.prototype.set=o,Et=i}function ze(){if(St)return Tt;St=1;var t=Fe(),e=be(),r=We();return Tt=function(){this.size=0,this.__data__={hash:new t,map:new(r||e),string:new t}}}function qe(){if(At)return Lt;return At=1,Lt=function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}}function Ve(){if(Ut)return Wt;Ut=1;var t=qe();return Wt=function(e,r){var n=e.__data__;return t(r)?n["string"==typeof r?"string":"hash"]:n.map}}function Je(){if(Dt)return Mt;Dt=1;var t=Ve();return Mt=function(e){var r=t(this,e).delete(e);return this.size-=r?1:0,r}}function Ye(){if(Ht)return Gt;Ht=1;var t=Ve();return Gt=function(e){return t(this,e).get(e)}}function Ke(){if(Ft)return It;Ft=1;var t=Ve();return It=function(e){return t(this,e).has(e)}}function Qe(){if(qt)return zt;qt=1;var t=Ve();return zt=function(e,r){var n=t(this,e),o=n.size;return n.set(e,r),this.size+=n.size==o?0:1,this}}function Xe(){if(Jt)return Vt;Jt=1;var t=ze(),e=Je(),r=Ye(),n=Ke(),o=Qe();function i(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}return i.prototype.clear=t,i.prototype.delete=e,i.prototype.get=r,i.prototype.has=n,i.prototype.set=o,Vt=i}function Ze(){if(Kt)return Yt;Kt=1;var t=be(),e=We(),r=Xe();return Yt=function(n,o){var i=this.__data__;if(i instanceof t){var a=i.__data__;if(!e||a.length<199)return a.push([n,o]),this.size=++i.size,this;i=this.__data__=new r(a)}return i.set(n,o),this.size=i.size,this}}function tr(){if(Xt)return Qt;Xt=1;var t=be(),e=ye(),r=we(),n=ke(),o=_e(),i=Ze();function a(e){var r=this.__data__=new t(e);this.size=r.size}return a.prototype.clear=e,a.prototype.delete=r,a.prototype.get=n,a.prototype.has=o,a.prototype.set=i,Qt=a}function er(){if(te)return Zt;te=1;var t=Ae(),e=function(){try{var e=t(Object,"defineProperty");return e({},"",{}),e}catch(t){}}();return Zt=e}function rr(){if(re)return ee;re=1;var t=er();return ee=function(e,r,n){"__proto__"==r&&t?t(e,r,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[r]=n}}function nr(){if(oe)return ne;oe=1;var t=rr(),e=le();return ne=function(r,n,o){(void 0!==o&&!e(r[n],o)||void 0===o&&!(n in r))&&t(r,n,o)}}function or(){if(ae)return ie;return ae=1,ie=function(t){return function(e,r,n){for(var o=-1,i=Object(e),a=n(e),s=a.length;s--;){var u=a[t?s:++o];if(!1===r(i[u],u,i))break}return e}}}function ir(){if(ue)return se;ue=1;var t=or()();return se=t}var ar,sr,ur,cr,hr,fr,lr,gr,pr,mr,dr,vr,br,yr,wr,kr,_r,Rr,Pr,xr,Cr,jr,$r,Nr,Or,Er,Br,Tr,Sr,Lr,Ar,Wr,Ur,Mr={exports:{}};function Dr(){return ar||(ar=1,t=Mr,e=Mr.exports,r=Pe(),n=e&&!e.nodeType&&e,o=n&&t&&!t.nodeType&&t,i=o&&o.exports===n?r.Buffer:void 0,a=i?i.allocUnsafe:void 0,t.exports=function(t,e){if(e)return t.slice();var r=t.length,n=a?a(r):new t.constructor(r);return t.copy(n),n}),Mr.exports;var t,e,r,n,o,i,a}function Gr(){if(ur)return sr;ur=1;var t=Pe().Uint8Array;return sr=t}function Hr(){if(hr)return cr;hr=1;var t=Gr();return cr=function(e){var r=new e.constructor(e.byteLength);return new t(r).set(new t(e)),r}}function Ir(){if(lr)return fr;lr=1;var t=Hr();return fr=function(e,r){var n=r?t(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}}function Fr(){if(pr)return gr;return pr=1,gr=function(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r<n;)e[r]=t[r];return e}}function zr(){if(dr)return mr;dr=1;var t=Ne(),e=Object.create,r=function(){function r(){}return function(n){if(!t(n))return{};if(e)return e(n);r.prototype=n;var o=new r;return r.prototype=void 0,o}}();return mr=r}function qr(){if(br)return vr;return br=1,vr=function(t,e){return function(r){return t(e(r))}}}function Vr(){if(wr)return yr;wr=1;var t=qr()(Object.getPrototypeOf,Object);return yr=t}function Jr(){if(_r)return kr;_r=1;var t=Object.prototype;return kr=function(e){var r=e&&e.constructor;return e===("function"==typeof r&&r.prototype||t)}}function Yr(){if(Pr)return Rr;Pr=1;var t=zr(),e=Vr(),r=Jr();return Rr=function(n){return"function"!=typeof n.constructor||r(n)?{}:t(e(n))}}function Kr(){if(Cr)return xr;return Cr=1,xr=function(t){return null!=t&&"object"==typeof t}}function Qr(){if($r)return jr;$r=1;var t=$e(),e=Kr();return jr=function(r){return e(r)&&"[object Arguments]"==t(r)}}function Xr(){if(Or)return Nr;Or=1;var t=Qr(),e=Kr(),r=Object.prototype,n=r.hasOwnProperty,o=r.propertyIsEnumerable,i=t(function(){return arguments}())?t:function(t){return e(t)&&n.call(t,"callee")&&!o.call(t,"callee")};return Nr=i}function Zr(){if(Br)return Er;Br=1;var t=Array.isArray;return Er=t}function tn(){if(Sr)return Tr;Sr=1;return Tr=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}}function en(){if(Ar)return Lr;Ar=1;var t=Oe(),e=tn();return Lr=function(r){return null!=r&&e(r.length)&&!t(r)}}function rn(){if(Ur)return Wr;Ur=1;var t=en(),e=Kr();return Wr=function(r){return e(r)&&t(r)}}var nn,on,an,sn,un,cn,hn,fn,ln,gn={exports:{}};function pn(){if(on)return nn;return on=1,nn=function(){return!1}}function mn(){return an||(an=1,function(t,e){var r=Pe(),n=pn(),o=e&&!e.nodeType&&e,i=o&&t&&!t.nodeType&&t,a=i&&i.exports===o?r.Buffer:void 0,s=(a?a.isBuffer:void 0)||n;t.exports=s}(gn,gn.exports)),gn.exports}function dn(){if(un)return sn;un=1;var t=$e(),e=Vr(),r=Kr(),n=Function.prototype,o=Object.prototype,i=n.toString,a=o.hasOwnProperty,s=i.call(Object);return sn=function(n){if(!r(n)||"[object Object]"!=t(n))return!1;var o=e(n);if(null===o)return!0;var u=a.call(o,"constructor")&&o.constructor;return"function"==typeof u&&u instanceof u&&i.call(u)==s}}function vn(){if(hn)return cn;hn=1;var t=$e(),e=tn(),r=Kr(),n={};return n["[object Float32Array]"]=n["[object Float64Array]"]=n["[object Int8Array]"]=n["[object Int16Array]"]=n["[object Int32Array]"]=n["[object Uint8Array]"]=n["[object Uint8ClampedArray]"]=n["[object Uint16Array]"]=n["[object Uint32Array]"]=!0,n["[object Arguments]"]=n["[object Array]"]=n["[object ArrayBuffer]"]=n["[object Boolean]"]=n["[object DataView]"]=n["[object Date]"]=n["[object Error]"]=n["[object Function]"]=n["[object Map]"]=n["[object Number]"]=n["[object Object]"]=n["[object RegExp]"]=n["[object Set]"]=n["[object String]"]=n["[object WeakMap]"]=!1,cn=function(o){return r(o)&&e(o.length)&&!!n[t(o)]}}function bn(){if(ln)return fn;return ln=1,fn=function(t){return function(e){return t(e)}}}var yn,wn,kn,_n,Rn,Pn,xn,Cn,jn,$n,Nn,On,En,Bn,Tn,Sn,Ln,An,Wn,Un,Mn,Dn,Gn,Hn,In,Fn,zn,qn,Vn,Jn,Yn,Kn,Qn,Xn,Zn,to,eo,ro,no,oo,io,ao,so,uo,co,ho,fo,lo,go,po={exports:{}};function mo(){return yn||(yn=1,t=po,e=po.exports,r=Re(),n=e&&!e.nodeType&&e,o=n&&t&&!t.nodeType&&t,i=o&&o.exports===n&&r.process,a=function(){try{var t=o&&o.require&&o.require("util").types;return t||i&&i.binding&&i.binding("util")}catch(t){}}(),t.exports=a),po.exports;var t,e,r,n,o,i,a}function vo(){if(kn)return wn;kn=1;var t=vn(),e=bn(),r=mo(),n=r&&r.isTypedArray,o=n?e(n):t;return wn=o}function bo(){if(Rn)return _n;return Rn=1,_n=function(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}}function yo(){if(xn)return Pn;xn=1;var t=rr(),e=le(),r=Object.prototype.hasOwnProperty;return Pn=function(n,o,i){var a=n[o];r.call(n,o)&&e(a,i)&&(void 0!==i||o in n)||t(n,o,i)}}function wo(){if(jn)return Cn;jn=1;var t=yo(),e=rr();return Cn=function(r,n,o,i){var a=!o;o||(o={});for(var s=-1,u=n.length;++s<u;){var c=n[s],h=i?i(o[c],r[c],c,o,r):void 0;void 0===h&&(h=r[c]),a?e(o,c,h):t(o,c,h)}return o}}function ko(){if(Nn)return $n;return Nn=1,$n=function(t,e){for(var r=-1,n=Array(t);++r<t;)n[r]=e(r);return n}}function _o(){if(En)return On;En=1;var t=/^(?:0|[1-9]\d*)$/;return On=function(e,r){var n=typeof e;return!!(r=null==r?9007199254740991:r)&&("number"==n||"symbol"!=n&&t.test(e))&&e>-1&&e%1==0&&e<r}}function Ro(){if(Tn)return Bn;Tn=1;var t=ko(),e=Xr(),r=Zr(),n=mn(),o=_o(),i=vo(),a=Object.prototype.hasOwnProperty;return Bn=function(s,u){var c=r(s),h=!c&&e(s),f=!c&&!h&&n(s),l=!c&&!h&&!f&&i(s),g=c||h||f||l,p=g?t(s.length,String):[],m=p.length;for(var d in s)!u&&!a.call(s,d)||g&&("length"==d||f&&("offset"==d||"parent"==d)||l&&("buffer"==d||"byteLength"==d||"byteOffset"==d)||o(d,m))||p.push(d);return p}}function Po(){if(Ln)return Sn;return Ln=1,Sn=function(t){var e=[];if(null!=t)for(var r in Object(t))e.push(r);return e}}function xo(){if(Wn)return An;Wn=1;var t=Ne(),e=Jr(),r=Po(),n=Object.prototype.hasOwnProperty;return An=function(o){if(!t(o))return r(o);var i=e(o),a=[];for(var s in o)("constructor"!=s||!i&&n.call(o,s))&&a.push(s);return a}}function Co(){if(Mn)return Un;Mn=1;var t=Ro(),e=xo(),r=en();return Un=function(n){return r(n)?t(n,!0):e(n)}}function jo(){if(Gn)return Dn;Gn=1;var t=wo(),e=Co();return Dn=function(r){return t(r,e(r))}}function $o(){if(In)return Hn;In=1;var t=nr(),e=Dr(),r=Ir(),n=Fr(),o=Yr(),i=Xr(),a=Zr(),s=rn(),u=mn(),c=Oe(),h=Ne(),f=dn(),l=vo(),g=bo(),p=jo();return Hn=function(m,d,v,b,y,w,k){var _=g(m,v),R=g(d,v),P=k.get(R);if(P)t(m,v,P);else{var x=w?w(_,R,v+"",m,d,k):void 0,C=void 0===x;if(C){var j=a(R),$=!j&&u(R),N=!j&&!$&&l(R);x=R,j||$||N?a(_)?x=_:s(_)?x=n(_):$?(C=!1,x=e(R,!0)):N?(C=!1,x=r(R,!0)):x=[]:f(R)||i(R)?(x=_,i(_)?x=p(_):h(_)&&!c(_)||(x=o(R))):C=!1}C&&(k.set(R,x),y(x,R,b,w,k),k.delete(R)),t(m,v,x)}}}function No(){if(zn)return Fn;zn=1;var t=tr(),e=nr(),r=ir(),n=$o(),o=Ne(),i=Co(),a=bo();return Fn=function s(u,c,h,f,l){u!==c&&r(c,(function(r,i){if(l||(l=new t),o(r))n(u,c,i,h,s,f,l);else{var g=f?f(a(u,i),r,i+"",u,c,l):void 0;void 0===g&&(g=r),e(u,i,g)}}),i)},Fn}function Oo(){if(Vn)return qn;return Vn=1,qn=function(t){return t}}function Eo(){if(Yn)return Jn;return Yn=1,Jn=function(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}}function Bo(){if(Qn)return Kn;Qn=1;var t=Eo(),e=Math.max;return Kn=function(r,n,o){return n=e(void 0===n?r.length-1:n,0),function(){for(var i=arguments,a=-1,s=e(i.length-n,0),u=Array(s);++a<s;)u[a]=i[n+a];a=-1;for(var c=Array(n+1);++a<n;)c[a]=i[a];return c[n]=o(u),t(r,this,c)}},Kn}function To(){if(Zn)return Xn;return Zn=1,Xn=function(t){return function(){return t}}}function So(){if(eo)return to;eo=1;var t=To(),e=er();return to=e?function(r,n){return e(r,"toString",{configurable:!0,enumerable:!1,value:t(n),writable:!0})}:Oo()}function Lo(){if(no)return ro;no=1;var t=Date.now;return ro=function(e){var r=0,n=0;return function(){var o=t(),i=16-(o-n);if(n=o,i>0){if(++r>=800)return arguments[0]}else r=0;return e.apply(void 0,arguments)}},ro}function Ao(){if(io)return oo;io=1;var t=So(),e=Lo()(t);return oo=e}function Wo(){if(so)return ao;so=1;var t=Oo(),e=Bo(),r=Ao();return ao=function(n,o){return r(e(n,o,t),n+"")}}function Uo(){if(co)return uo;co=1;var t=le(),e=en(),r=_o(),n=Ne();return uo=function(o,i,a){if(!n(a))return!1;var s=typeof i;return!!("number"==s?e(a)&&r(i,a.length):"string"==s&&i in a)&&t(a[i],o)}}function Mo(){if(fo)return ho;fo=1;var t=Wo(),e=Uo();return ho=function(r){return t((function(t,n){var o=-1,i=n.length,a=i>1?n[i-1]:void 0,s=i>2?n[2]:void 0;for(a=r.length>3&&"function"==typeof a?(i--,a):void 0,s&&e(n[0],n[1],s)&&(a=i<3?void 0:a,i=1),t=Object(t);++o<i;){var u=n[o];u&&r(t,u,o,a)}return t}))}}function Do(){if(go)return lo;go=1;var t=No(),e=Mo()((function(e,r,n){t(e,r,n)}));return lo=e}var Go,Ho,Io,Fo,zo,qo,Vo,Jo,Yo,Ko,Qo,Xo,Zo,ti,ei,ri,ni,oi,ii,ai,si,ui,ci,hi,fi=he(Do());function li(){if(Ho)return Go;Ho=1;var t=$e(),e=Kr();return Go=function(r){return"symbol"==typeof r||e(r)&&"[object Symbol]"==t(r)}}function gi(){if(Fo)return Io;Fo=1;var t=Zr(),e=li(),r=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,n=/^\w*$/;return Io=function(o,i){if(t(o))return!1;var a=typeof o;return!("number"!=a&&"symbol"!=a&&"boolean"!=a&&null!=o&&!e(o))||(n.test(o)||!r.test(o)||null!=i&&o in Object(i))}}function pi(){if(qo)return zo;qo=1;var t=Xe();function e(r,n){if("function"!=typeof r||null!=n&&"function"!=typeof n)throw new TypeError("Expected a function");var o=function(){var t=arguments,e=n?n.apply(this,t):t[0],i=o.cache;if(i.has(e))return i.get(e);var a=r.apply(this,t);return o.cache=i.set(e,a)||i,a};return o.cache=new(e.Cache||t),o}return e.Cache=t,zo=e}function mi(){if(Jo)return Vo;Jo=1;var t=pi();return Vo=function(e){var r=t(e,(function(t){return 500===n.size&&n.clear(),t})),n=r.cache;return r}}function di(){if(Ko)return Yo;Ko=1;var t=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,e=/\\(\\)?/g,r=mi()((function(r){var n=[];return 46===r.charCodeAt(0)&&n.push(""),r.replace(t,(function(t,r,o,i){n.push(o?i.replace(e,"$1"):r||t)})),n}));return Yo=r}function vi(){if(Xo)return Qo;return Xo=1,Qo=function(t,e){for(var r=-1,n=null==t?0:t.length,o=Array(n);++r<n;)o[r]=e(t[r],r,t);return o}}function bi(){if(ti)return Zo;ti=1;var t=xe(),e=vi(),r=Zr(),n=li(),o=t?t.prototype:void 0,i=o?o.toString:void 0;return Zo=function t(o){if("string"==typeof o)return o;if(r(o))return e(o,t)+"";if(n(o))return i?i.call(o):"";var a=o+"";return"0"==a&&1/o==-1/0?"-0":a},Zo}function yi(){if(ri)return ei;ri=1;var t=bi();return ei=function(e){return null==e?"":t(e)}}function wi(){if(oi)return ni;oi=1;var t=Zr(),e=gi(),r=di(),n=yi();return ni=function(o,i){return t(o)?o:e(o,i)?[o]:r(n(o))}}function ki(){if(ai)return ii;ai=1;var t=li();return ii=function(e){if("string"==typeof e||t(e))return e;var r=e+"";return"0"==r&&1/e==-1/0?"-0":r}}function _i(){if(ui)return si;ui=1;var t=wi(),e=ki();return si=function(r,n){for(var o=0,i=(n=t(n,r)).length;null!=r&&o<i;)r=r[e(n[o++])];return o&&o==i?r:void 0}}function Ri(){if(hi)return ci;hi=1;var t=_i();return ci=function(e,r,n){var o=null==e?void 0:t(e,r);return void 0===o?n:o}}var Pi=he(Ri());const xi="package.json",Ci=[".env.local",".env"];class ji extends t{_env;shared;constructor(t){super(t),this._env=e.searchEnv({logger:this.logger,preloadList:this.feConfig.envOrder||Ci}),this.shared=Object.assign({},this.feConfig.release,this.getDefaultShreadOptions(t.shared))}getDefaultShreadOptions(t){return{rootPath:process.cwd(),sourceBranch:this._env.get("FE_RELEASE_BRANCH")||this._env.get("FE_RELEASE_SOURCE_BRANCH")||"master",releaseEnv:this._env.get("FE_RELEASE_ENV")||this._env.get("NODE_ENV")||"development",...t}}get rootPath(){return this.shared.rootPath}get sourceBranch(){return this.shared.sourceBranch}get releaseEnv(){return this.shared.releaseEnv}get env(){return this._env}get workspaces(){return this.getConfig("workspaces.workspaces")}get workspace(){return this.getConfig("workspaces.workspace")}setWorkspaces(t){this.options.workspaces={...this.options.workspaces,workspaces:t}}setConfig(t){this.options=fi(this.options,t)}getConfig(t,e){return Pi(this.options,t,e)}setShared(t){this.shared=fi(this.shared,t)}getPkg(t,e){const r=this.workspace?.packageJson;if(!r)throw new Error("package.json is not found");return t?Pi(r,t,e):r}getTemplateContext(){return{...this.shared,...this.workspace,publishPath:this.workspace?.path||"",env:this.releaseEnv,branch:this.sourceBranch}}async runChangesetsCli(t,e){let r="pnpm";try{await this.shell.exec("pnpm -v",{dryRun:!1})}catch{r="npx"}return await this.shell.exec([r,"changeset",t,...e??[]])}}function $i(t,...e){return[t,...e]}const Ni={maxWorkspace:3,multiWorkspaceSeparator:"_",workspaceVersionSeparator:"@",batchBranchName:"batch-${releaseName}-${length}-packages-${timestamp}",batchTagName:"batch-${length}-packages-${timestamp}"};class Oi{shell;logger;config;constructor(t,e,r={}){this.shell=t,this.logger=e,this.config={...Ni,...r}}getReleaseBranchName(t,e,r){const n=r.branchName||"release-${tagName}";if("string"!=typeof n)throw new Error("Branch name template is not a string");return this.logger.debug("Release Branch template is:",n),this.shell.format(n,{pkgName:t,releaseName:t,tagName:e,...r})}getBatchReleaseBranchName(t,e,r,n){const o=this.config.batchBranchName;if("string"!=typeof o)throw new Error("Branch name template is not a string");return this.logger.debug("Release Batch Branch template is:",o),this.shell.format(o,{pkgName:t,releaseName:t,tagName:e,...r,length:n,timestamp:Date.now()})}getReleaseName(t){if(1===t.length)return t[0].name;const{maxWorkspace:e,multiWorkspaceSeparator:r,workspaceVersionSeparator:n}=this.config;return t.slice(0,e).map((({name:t,version:e})=>`${t}${n}${e}`)).join(r)}getReleaseTagName(t){if(1===t.length)return t[0].version;const{batchTagName:e}=this.config;return this.shell.format(e,{length:t.length,timestamp:Date.now()})}getReleaseBranchParams(t,e){const r=this.getReleaseTagName(t),n=this.getReleaseName(t);return{tagName:r,releaseBranch:t.length>1?this.getBatchReleaseBranchName(n,r,e,t.length):this.getReleaseBranchName(n,r,e)}}getPRTitle(t,e){const r=this.config.PRTitle||"Release ${env} ${pkgName} ${tagName}";return this.shell.format(r,{...e,tagName:t.tagName,pkgName:t.releaseBranch})}getPRBody(t,e,r){const n=this.config.PRBody,o=t.length>1?t.map((t=>this.shell.format("\n## ${name} ${version}\n${changelog}\n",t))).join("\n"):t[0].changelog,{workspaceVersionSeparator:i}=this.config,a=1===t.length?e.tagName:t.map((t=>`${t.name}${i}${t.version}`)).join(" ");return this.shell.format(n,{...r,tagName:a,changelog:o})}}class Ei{context;_octokit=null;constructor(t){this.context=t}getGitHubUserInfo(){const{authorName:t,repoName:e}=this.context.shared;if(!t||!e)throw new Error("Author name or repo name is not set");return{owner:t,repo:e}}getToken(){const{tokenRef:t="GITHUB_TOKEN"}=this.context.getConfig("githubPR"),e=this.context.env.get(t);if(!e)throw new Error(`Token is not set. Please set ${t} environment variable.`);return e}get octokit(){if(this._octokit)return this._octokit;const{timeout:t}=this.context.getConfig("githubPR"),e={auth:this.getToken(),request:{timeout:t}};return this._octokit=new n(e),this._octokit}get logger(){return this.context.logger}get shell(){return this.context.shell}get autoMergeType(){return this.context.shared.autoMergeType||"squash"}get dryRunPRNumber(){return this.context.getConfig("githubPR.dryRunPRNumber","999999")}get autoMergeReleasePR(){return this.context.shared.autoMergeReleasePR||false}async mergePR(t,e){if(!t)return void this.logger.error("Failed to create Pull Request.",t);const r=this.autoMergeType;if(this.context.dryRun){const{repoName:n,authorName:o}=this.context.shared;this.logger.info(`[DRY RUN] Would merge PR #${t} with method '${r}' in repo ${o}/${n}, branch ${e}`)}else await this.octokit.rest.pulls.merge({...this.getGitHubUserInfo(),pull_number:Number(t),merge_method:r})}async getPullRequestCommits(t){return(await this.octokit.rest.pulls.listCommits({...this.getGitHubUserInfo(),pull_number:t})).data}async getCommitInfo(t){return(await this.octokit.rest.repos.getCommit({...this.getGitHubUserInfo(),ref:t})).data}async getPullRequest(t){return(await this.octokit.rest.pulls.get({...this.getGitHubUserInfo(),pull_number:t})).data}async checkedPR(t,e){try{await this.getPullRequest(Number(t)),await this.octokit.rest.git.deleteRef({...this.getGitHubUserInfo(),ref:`heads/${e}`}),this.logger.info(`Branch ${e} has been deleted`)}catch(r){if(404===r.status)return void this.logger.warn(`PR #${t} or branch ${e} not found`);throw this.logger.error("Failed to check PR or delete branch",r),r}}async createReleasePRLabel(){const t=this.context.shared.label;if(!(t&&t.name&&t.description&&t.color))throw new Error("Label is not valid, skipping creation");if(this.context.dryRun)return this.logger.info("[DRY RUN] Would create PR label with:",t),t;try{const e=await this.octokit.rest.issues.createLabel({...this.getGitHubUserInfo(),name:t.name,description:t.description,color:t.color.replace("#","")});return this.logger.debug("Create PR label Success",e),t}catch(e){if(422===e.status)return this.logger.warn(`Label ${t.name} already exists, skipping!`),t;throw this.logger.error("Create PR label Failed",e),e}}async createReleasePR(t){if(this.context.getConfig("githubPR.dryRunCreatePR")||this.context.dryRun)return this.logger.info("[DRY RUN] Would create PR with:",{...t,labels:t.labels}),this.dryRunPRNumber;try{const e=await this.octokit.rest.pulls.create({...this.getGitHubUserInfo(),...t}),r=e.data.number;if(!r)throw new Error("CreateReleasePR Failed, prNumber is empty");if(this.logger.debug("Create PR Success",[e?.url]),t.labels&&t.labels.length){const e=await this.octokit.rest.issues.addLabels({...this.getGitHubUserInfo(),issue_number:r,labels:t.labels});this.logger.debug("Add PR label Success",[e.url])}return r.toString()}catch(t){if(422===t.status&&t.message.includes("already exists")){this.logger.warn("PR already exists");const e=t.message.match(/pull request #(\d+)/);return e?e[1]:""}throw this.logger.error("Failed to create PR",t),t}}truncateBody(t){return t&&t.length>=124e3?t.substring(0,124e3)+"...":t}getOctokitReleaseOptions(t){const{releaseName:e,draft:r=!1,preRelease:n=!1,autoGenerate:o=!1,makeLatest:i=!0,releaseNotes:a,discussionCategoryName:s}=this.context.getConfig("githubPR"),u=e,c=o?"":this.truncateBody(String(a));return{name:u,make_latest:i.toString(),body:c,draft:r,prerelease:n,generate_release_notes:o,discussion_category_name:s,tag_name:"",...t,...this.getGitHubUserInfo()}}async createRelease(t){const e=this.getOctokitReleaseOptions({tag_name:t.tagName,body:t.changelog});if(e.name=this.shell.format(e.name,t),this.logger.log(`[DRY RUN] octokit repos.createRelease "${e.name}" (${e.tag_name})`,{isDryRun:this.context.dryRun}),!e.tag_name)throw new Error("TagName is undefined");if(!this.context.dryRun)try{const t=await this.octokit.repos.createRelease(e);this.logger.debug(`[DONE] octokit repos.createRelease "${e.name}" (${e.tag_name}) (${t.headers.location})`)}catch(t){this.logger.error(`[FAILED] octokit repos.createRelease "${e.name}" (${e.tag_name})`,t)}}}var Bi,Ti;function Si(){if(Ti)return Bi;Ti=1;var t=$e(),e=Zr(),r=Kr();return Bi=function(n){return"string"==typeof n||!e(n)&&r(n)&&"[object String]"==t(n)}}var Li=he(Si());class Ai{context;pluginName;props;onlyOne=!0;constructor(t,e,r={}){this.context=t,this.pluginName=e,this.props=r,this.setConfig(this.getInitialProps(r))}getInitialProps(t){const e=this.context.options[this.pluginName],r=Pi(this.context.shared,this.pluginName);return e||t?fi({},r,t,e):{}}get logger(){return this.context.logger}get shell(){return this.context.shell}get options(){return this.context.getConfig(this.pluginName,{})}getEnv(t,e){return this.context.env.get(t)??e}enabled(t,e){return!0}getConfig(t,e){return t?this.context.getConfig([this.pluginName,...Array.isArray(t)?t:[t]],e):this.context.getConfig(this.pluginName,e)}setConfig(t){this.context.setConfig({[this.pluginName]:t})}onBefore(t){}onExec(t){}onSuccess(t){}onError(t){}async step({label:t,task:e}){this.logger.log(),this.logger.info(t),this.logger.log();try{const r=await e();return this.logger.info(`${t} - success`),r}catch(t){throw this.logger.error(t),t}}}class Wi extends Ai{async onBefore(){const t=await this.getUserInfo();if(!t)throw new Error("Failed to get repoInfo");let e=this.context.shared.currentBranch;e||(e=await this.getCurrentBranch()),e&&await this.context.shell.exec(`git checkout ${e}`,{dryRun:!1}),this.context.setShared({repoName:t.repoName,authorName:t.authorName,currentBranch:e})}async getCurrentBranch(){return await new Promise((t=>setTimeout(t,100))),this.context.shell.exec("git rev-parse --abbrev-ref HEAD",{dryRun:!1})}async getRemoteUrl(){return(await this.context.shell.exec("git config --get remote.origin.url",{dryRun:!1})).trim()}async getUserInfo(){let t;try{t=await this.getRemoteUrl()}catch{throw new Error("Failed to get git remote url. Please ensure this is a git repository with a valid remote.")}if(!t)throw new Error("Git remote URL is empty. Please set a valid GitHub remote URL.");this.context.logger.debug("repoUrl: ",t);const e=t.match(/github\.com[:/]([^/]+)\/([^/.]+)(?:\.git)?$/);if(!e)throw new Error("Invalid GitHub repository URL format. Please ensure the remote URL is from GitHub.");const[,r,n]=e;if(!this.isValidString(r)||!this.isValidString(n))throw new Error("Failed to extract owner or repository name from GitHub URL");return{repoName:n,authorName:r}}isValidString(t){return!!t&&Li(t)}commit(t,e=[]){return this.context.shell.exec(["git","commit","--message",JSON.stringify(t),...e])}}const Ui=["hash","abbrevHash","treeHash","abbrevTreeHash","parentHashes","abbrevParentHashes","authorName","authorEmail","authorDate","authorDateRel","committerName","committerEmail","committerDate","committerDateRel","subject","body","rawBody","tag"];class Mi{options;constructor(t){this.options=t}async getGitLog(t={}){const{directory:e,noMerges:r=!0,fileds:n}=t,i=await this.resolveTag(t.from,"root"),a=await this.resolveTag(t.to,"HEAD"),s={repo:".",number:1e3,fields:n,branch:i===a?a:`${i}..${a}`,file:e,nameStatus:!1,includeMergeCommitFiles:!r},u=await o(s);return this.options.logger?.debug("GitChangelog",s),this.options.logger?.debug("GitChangelog commits",u),u}async getCommits(t){return(await this.getGitLog(t)).map((t=>{const{subject:e,rawBody:r}=t;return{base:t,commitlint:this.parseCommitlint(e||"",r),commits:[]}}))}createBaseCommit(t,e){return{subject:t,rawBody:t,body:t,...e}}tabify(t,e=2){return t.split("\n").map((t=>" ".repeat(e)+t.trim())).join("\n")}parseCommitlint(t,e=""){const[r]=t.trim().split("\n"),n=e.startsWith(r)?e.replace(r,""):e,o=r.replace(/\s*\(#\d+\)\s*$/,"").match(/^(?:([a-z]+)(?:\((.*?)\))?: )?(.+)$/i);return o?{type:o[1]?.toLowerCase(),scope:o[2]?.trim(),message:o[3].trim(),body:n?this.tabify(n):void 0}:{message:r,body:n?this.tabify(n):void 0}}toCommitValue(t,e){const[r]=e.trim().split("\n"),n=r.match(/\(#(\d+)\)/),o=this.parseCommitlint(r,e);return{base:this.createBaseCommit(r,{hash:t,abbrevHash:t.substring(0,7),rawBody:e}),commitlint:o,commits:[],prNumber:n?.[1]}}async resolveTag(t,e){if(t)try{if(await this.options.shell.exec(`git tag --list "${t}"`,{dryRun:!1}).then((t=>!!t.trim())))return t}catch{}return"root"===e?this.options.shell.exec("git rev-list --max-parents=0 HEAD",{dryRun:!1}).then((t=>t.trim())):"HEAD"}}var Di,Gi,Hi,Ii,Fi,zi,qi,Vi,Ji,Yi,Ki,Qi,Xi,Zi,ta,ea,ra,na,oa,ia,aa,sa,ua,ca,ha,fa,la,ga,pa,ma,da,va,ba,ya,wa,ka,_a,Ra,Pa,xa,Ca,ja,$a,Na,Oa,Ea,Ba,Ta,Sa,La,Aa,Wa,Ua,Ma,Da,Ga,Ha,Ia,Fa,za,qa,Va,Ja,Ya,Ka,Qa,Xa,Za,ts,es,rs,ns,os,is,as,ss,us,cs,hs,fs,ls,gs,ps,ms,ds,vs,bs,ys,ws,ks,_s,Rs;function Ps(){if(Gi)return Di;return Gi=1,Di=function(t,e,r,n){for(var o=-1,i=null==t?0:t.length;++o<i;){var a=t[o];e(n,a,r(a),t)}return n}}function xs(){if(Ii)return Hi;Ii=1;var t=qr()(Object.keys,Object);return Hi=t}function Cs(){if(zi)return Fi;zi=1;var t=Jr(),e=xs(),r=Object.prototype.hasOwnProperty;return Fi=function(n){if(!t(n))return e(n);var o=[];for(var i in Object(n))r.call(n,i)&&"constructor"!=i&&o.push(i);return o}}function js(){if(Vi)return qi;Vi=1;var t=Ro(),e=Cs(),r=en();return qi=function(n){return r(n)?t(n):e(n)}}function $s(){if(Yi)return Ji;Yi=1;var t=ir(),e=js();return Ji=function(r,n){return r&&t(r,n,e)}}function Ns(){if(Qi)return Ki;Qi=1;var t=en();return Ki=function(e,r){return function(n,o){if(null==n)return n;if(!t(n))return e(n,o);for(var i=n.length,a=r?i:-1,s=Object(n);(r?a--:++a<i)&&!1!==o(s[a],a,s););return n}}}function Os(){if(Zi)return Xi;Zi=1;var t=$s(),e=Ns()(t);return Xi=e}function Es(){if(ea)return ta;ea=1;var t=Os();return ta=function(e,r,n,o){return t(e,(function(t,e,i){r(o,t,n(t),i)})),o}}function Bs(){if(na)return ra;na=1;return ra=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this}}function Ts(){if(ia)return oa;return ia=1,oa=function(t){return this.__data__.has(t)}}function Ss(){if(sa)return aa;sa=1;var t=Xe(),e=Bs(),r=Ts();function n(e){var r=-1,n=null==e?0:e.length;for(this.__data__=new t;++r<n;)this.add(e[r])}return n.prototype.add=n.prototype.push=e,n.prototype.has=r,aa=n}function Ls(){if(ca)return ua;return ca=1,ua=function(t,e){for(var r=-1,n=null==t?0:t.length;++r<n;)if(e(t[r],r,t))return!0;return!1}}function As(){if(fa)return ha;return fa=1,ha=function(t,e){return t.has(e)}}function Ws(){if(ga)return la;ga=1;var t=Ss(),e=Ls(),r=As();return la=function(n,o,i,a,s,u){var c=1&i,h=n.length,f=o.length;if(h!=f&&!(c&&f>h))return!1;var l=u.get(n),g=u.get(o);if(l&&g)return l==o&&g==n;var p=-1,m=!0,d=2&i?new t:void 0;for(u.set(n,o),u.set(o,n);++p<h;){var v=n[p],b=o[p];if(a)var y=c?a(b,v,p,o,n,u):a(v,b,p,n,o,u);if(void 0!==y){if(y)continue;m=!1;break}if(d){if(!e(o,(function(t,e){if(!r(d,e)&&(v===t||s(v,t,i,a,u)))return d.push(e)}))){m=!1;break}}else if(v!==b&&!s(v,b,i,a,u)){m=!1;break}}return u.delete(n),u.delete(o),m}}function Us(){if(ma)return pa;return ma=1,pa=function(t){var e=-1,r=Array(t.size);return t.forEach((function(t,n){r[++e]=[n,t]})),r}}function Ms(){if(va)return da;return va=1,da=function(t){var e=-1,r=Array(t.size);return t.forEach((function(t){r[++e]=t})),r},da}function Ds(){if(ya)return ba;ya=1;var t=xe(),e=Gr(),r=le(),n=Ws(),o=Us(),i=Ms(),a=t?t.prototype:void 0,s=a?a.valueOf:void 0;return ba=function(t,a,u,c,h,f,l){switch(u){case"[object DataView]":if(t.byteLength!=a.byteLength||t.byteOffset!=a.byteOffset)return!1;t=t.buffer,a=a.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=a.byteLength||!f(new e(t),new e(a)));case"[object Boolean]":case"[object Date]":case"[object Number]":return r(+t,+a);case"[object Error]":return t.name==a.name&&t.message==a.message;case"[object RegExp]":case"[object String]":return t==a+"";case"[object Map]":var g=o;case"[object Set]":var p=1&c;if(g||(g=i),t.size!=a.size&&!p)return!1;var m=l.get(t);if(m)return m==a;c|=2,l.set(t,a);var d=n(g(t),g(a),c,h,f,l);return l.delete(t),d;case"[object Symbol]":if(s)return s.call(t)==s.call(a)}return!1}}function Gs(){if(ka)return wa;return ka=1,wa=function(t,e){for(var r=-1,n=e.length,o=t.length;++r<n;)t[o+r]=e[r];return t}}function Hs(){if(Ra)return _a;Ra=1;var t=Gs(),e=Zr();return _a=function(r,n,o){var i=n(r);return e(r)?i:t(i,o(r))}}function Is(){if(xa)return Pa;return xa=1,Pa=function(t,e){for(var r=-1,n=null==t?0:t.length,o=0,i=[];++r<n;){var a=t[r];e(a,r,t)&&(i[o++]=a)}return i}}function Fs(){if(ja)return Ca;return ja=1,Ca=function(){return[]}}function zs(){if(Na)return $a;Na=1;var t=Is(),e=Fs(),r=Object.prototype.propertyIsEnumerable,n=Object.getOwnPropertySymbols;return $a=n?function(e){return null==e?[]:(e=Object(e),t(n(e),(function(t){return r.call(e,t)})))}:e}function qs(){if(Ea)return Oa;Ea=1;var t=Hs(),e=zs(),r=js();return Oa=function(n){return t(n,r,e)}}function Vs(){if(Ta)return Ba;Ta=1;var t=qs(),e=Object.prototype.hasOwnProperty;return Ba=function(r,n,o,i,a,s){var u=1&o,c=t(r),h=c.length;if(h!=t(n).length&&!u)return!1;for(var f=h;f--;){var l=c[f];if(!(u?l in n:e.call(n,l)))return!1}var g=s.get(r),p=s.get(n);if(g&&p)return g==n&&p==r;var m=!0;s.set(r,n),s.set(n,r);for(var d=u;++f<h;){var v=r[l=c[f]],b=n[l];if(i)var y=u?i(b,v,l,n,r,s):i(v,b,l,r,n,s);if(!(void 0===y?v===b||a(v,b,o,i,s):y)){m=!1;break}d||(d="constructor"==l)}if(m&&!d){var w=r.constructor,k=n.constructor;w==k||!("constructor"in r)||!("constructor"in n)||"function"==typeof w&&w instanceof w&&"function"==typeof k&&k instanceof k||(m=!1)}return s.delete(r),s.delete(n),m}}function Js(){if(La)return Sa;La=1;var t=Ae()(Pe(),"DataView");return Sa=t}function Ys(){if(Wa)return Aa;Wa=1;var t=Ae()(Pe(),"Promise");return Aa=t}function Ks(){if(Ma)return Ua;Ma=1;var t=Ae()(Pe(),"Set");return Ua=t}function Qs(){if(Ga)return Da;Ga=1;var t=Ae()(Pe(),"WeakMap");return Da=t}function Xs(){if(Ia)return Ha;Ia=1;var t=Js(),e=We(),r=Ys(),n=Ks(),o=Qs(),i=$e(),a=Te(),s="[object Map]",u="[object Promise]",c="[object Set]",h="[object WeakMap]",f="[object DataView]",l=a(t),g=a(e),p=a(r),m=a(n),d=a(o),v=i;return(t&&v(new t(new ArrayBuffer(1)))!=f||e&&v(new e)!=s||r&&v(r.resolve())!=u||n&&v(new n)!=c||o&&v(new o)!=h)&&(v=function(t){var e=i(t),r="[object Object]"==e?t.constructor:void 0,n=r?a(r):"";if(n)switch(n){case l:return f;case g:return s;case p:return u;case m:return c;case d:return h}return e}),Ha=v}function Zs(){if(za)return Fa;za=1;var t=tr(),e=Ws(),r=Ds(),n=Vs(),o=Xs(),i=Zr(),a=mn(),s=vo(),u="[object Arguments]",c="[object Array]",h="[object Object]",f=Object.prototype.hasOwnProperty;return Fa=function(l,g,p,m,d,v){var b=i(l),y=i(g),w=b?c:o(l),k=y?c:o(g),_=(w=w==u?h:w)==h,R=(k=k==u?h:k)==h,P=w==k;if(P&&a(l)){if(!a(g))return!1;b=!0,_=!1}if(P&&!_)return v||(v=new t),b||s(l)?e(l,g,p,m,d,v):r(l,g,w,p,m,d,v);if(!(1&p)){var x=_&&f.call(l,"__wrapped__"),C=R&&f.call(g,"__wrapped__");if(x||C){var j=x?l.value():l,$=C?g.value():g;return v||(v=new t),d(j,$,p,m,v)}}return!!P&&(v||(v=new t),n(l,g,p,m,d,v))}}function tu(){if(Va)return qa;Va=1;var t=Zs(),e=Kr();return qa=function r(n,o,i,a,s){return n===o||(null==n||null==o||!e(n)&&!e(o)?n!=n&&o!=o:t(n,o,i,a,r,s))},qa}function eu(){if(Ya)return Ja;Ya=1;var t=tr(),e=tu();return Ja=function(r,n,o,i){var a=o.length,s=a,u=!i;if(null==r)return!s;for(r=Object(r);a--;){var c=o[a];if(u&&c[2]?c[1]!==r[c[0]]:!(c[0]in r))return!1}for(;++a<s;){var h=(c=o[a])[0],f=r[h],l=c[1];if(u&&c[2]){if(void 0===f&&!(h in r))return!1}else{var g=new t;if(i)var p=i(f,l,h,r,n,g);if(!(void 0===p?e(l,f,3,i,g):p))return!1}}return!0}}function ru(){if(Qa)return Ka;Qa=1;var t=Ne();return Ka=function(e){return e==e&&!t(e)}}function nu(){if(Za)return Xa;Za=1;var t=ru(),e=js();return Xa=function(r){for(var n=e(r),o=n.length;o--;){var i=n[o],a=r[i];n[o]=[i,a,t(a)]}return n}}function ou(){if(es)return ts;return es=1,ts=function(t,e){return function(r){return null!=r&&(r[t]===e&&(void 0!==e||t in Object(r)))}}}function iu(){if(ns)return rs;ns=1;var t=eu(),e=nu(),r=ou();return rs=function(n){var o=e(n);return 1==o.length&&o[0][2]?r(o[0][0],o[0][1]):function(e){return e===n||t(e,n,o)}}}function au(){if(is)return os;return is=1,os=function(t,e){return null!=t&&e in Object(t)}}function su(){if(ss)return as;ss=1;var t=wi(),e=Xr(),r=Zr(),n=_o(),o=tn(),i=ki();return as=function(a,s,u){for(var c=-1,h=(s=t(s,a)).length,f=!1;++c<h;){var l=i(s[c]);if(!(f=null!=a&&u(a,l)))break;a=a[l]}return f||++c!=h?f:!!(h=null==a?0:a.length)&&o(h)&&n(l,h)&&(r(a)||e(a))}}function uu(){if(cs)return us;cs=1;var t=au(),e=su();return us=function(r,n){return null!=r&&e(r,n,t)}}function cu(){if(fs)return hs;fs=1;var t=tu(),e=Ri(),r=uu(),n=gi(),o=ru(),i=ou(),a=ki();return hs=function(s,u){return n(s)&&o(u)?i(a(s),u):function(n){var o=e(n,s);return void 0===o&&o===u?r(n,s):t(u,o,3)}}}function hu(){if(gs)return ls;return gs=1,ls=function(t){return function(e){return null==e?void 0:e[t]}}}function fu(){if(ms)return ps;ms=1;var t=_i();return ps=function(e){return function(r){return t(r,e)}}}function lu(){if(vs)return ds;vs=1;var t=hu(),e=fu(),r=gi(),n=ki();return ds=function(o){return r(o)?t(n(o)):e(o)}}function gu(){if(ys)return bs;ys=1;var t=iu(),e=cu(),r=Oo(),n=Zr(),o=lu();return bs=function(i){return"function"==typeof i?i:null==i?r:"object"==typeof i?n(i)?e(i[0],i[1]):t(i):o(i)}}function pu(){if(ks)return ws;ks=1;var t=Ps(),e=Es(),r=gu(),n=Zr();return ws=function(o,i){return function(a,s){var u=n(a)?t:e,c=i?i():{};return u(a,o,r(s,2),c)}}}function mu(){if(Rs)return _s;Rs=1;var t=rr(),e=pu(),r=Object.prototype.hasOwnProperty,n=e((function(e,n,o){r.call(e,o)?e[o].push(n):t(e,o,[n])}));return _s=n}var du=he(mu());const vu="\n- ${scopeHeader} ${commitlint.message} ${commitLink} ${prLink}";class bu{options;constructor(t){this.options=t}format(t,e){const{types:r=[],commitBody:n=!1}={...this.options,...e},o=[],i=du(t,(t=>t.commitlint.type?t.commitlint.type:t.commitlint.message));return r.forEach((t=>{const{type:r,section:a,hidden:s}=t;if(s)return;const u=i[r]||[];u.length>0&&(o.push(a||""),u.forEach((t=>{if(o.push(this.formatCommit(t,e)),n&&t.commitlint.body){const e=t.commitlint.body.split("\n").map((t=>` ${t}`));o.push(...e)}})))})),o}formatCommit(t,e){const{commitlint:r,base:{hash:n},prNumber:o}=t,{repoUrl:i,formatTemplate:a=vu}={...this.options,...e},s=r.scope?this.formatScope(r.scope):"",u=o?this.foramtLink("#"+o,i?`${i}/pull/${o}`:""):"",c=n?this.foramtLink(n.slice(0,7),i?`${i}/commit/${n}`:""):"";return this.options.shell.format(a,{...t,scopeHeader:s,commitLink:c,prLink:u})}foramtLink(t,e){return e?`([${t}](${e}))`:`(${t})`}formatCommitLink(t,e){return e?`([${t}](${e}))`:`(${t})`}formatScope(t){return`**${t}:**`}}class yu{toLocalPath(t){const e=t.replace(/[\\/]+/g,i);return a(e).replace(/[\\/]+/g,i)}isSubPath(t,e){let r=this.toLocalPath(t),n=this.toLocalPath(e);for(;r.endsWith(i);)r=r.slice(0,-1);for(;n.endsWith(i);)n=n.slice(0,-1);if(r===n)return!0;const o=n.length;return!!r.startsWith(n)&&r[o]===i}startsWith(t,e){let r=this.toLocalPath(t),n=this.toLocalPath(e);for(;r.endsWith(i);)r=r.slice(0,-1);for(;n.endsWith(i);)n=n.slice(0,-1);return r.startsWith(n)}containsPath(t,e){let r=this.toLocalPath(t),n=this.toLocalPath(e);for(;r.endsWith(i);)r=r.slice(0,-1);for(;n.endsWith(i);)n=n.slice(0,-1);if(r===n)return!0;const o=r.indexOf(n);if(-1===o)return!1;const a=0===o?"":r[o-1],s=o+n.length,u=s>=r.length?"":r[s];return(""===a||a===i)&&(""===u||u===i)}}const wu="https://github.com";class ku extends Mi{options;githubManager;pather=new yu;constructor(t,e){super(t),this.options=t,this.githubManager=e}async filterCommitsByDirectory(t,e){const r=[];for(const n of t){const t=await this.githubManager.getCommitInfo(n.base.hash),o=t.files?.map((t=>t.filename))??[];for(const t of o)if(this.pather.isSubPath(t,e)){r.push(n);break}}return r}async getFullCommit(t){const e={...this.options,...t},r=await this.getCommits(e);return(await Promise.all(r.map((async t=>{let{prNumber:r}=t;if(!r&&t.base.subject){const e=t.base.subject.match(/\(#(\d+)\)/);e&&(r=e[1],t.prNumber=r)}if(!r)return t;const n=(await this.githubManager.getPullRequestCommits(+r)).map((({sha:t,commit:{message:e}})=>Object.assign(this.toCommitValue(t,e),{prNumber:r})));return this.filterCommitsByDirectory(n,e.directory)})))).flat()}async transformWorkspace(t,e){const r=[wu,e.shared.authorName,e.shared.repoName].join("/"),n={...e.getConfig("changelog"),githubRootPath:r,mergePRcommit:!0,shell:e.shell,logger:e.logger},o=new ku(n,this.githubManager),i=new bu(n);return await Promise.all(t.map((async t=>{const e=await o.getFullCommit({from:t.lastTag??"",directory:t.path,fileds:Ui});if("string"==typeof e)return{...t,changelog:e};const a=i.format(e,{...n,repoUrl:r});return{...t,changelog:a.join("\n")}})))}}class _u{options;constructor(t){this.options=t}compare(t,e){return"function"==typeof this.options.compare?this.options.compare(t,e):t.startsWith(e)}toChangeLabel(t,e=this.options.changePackagesLabel){return e.replace("${name}",t)}toChangeLabels(t,e=this.options.changePackagesLabel){return t.map((t=>this.toChangeLabel(t,e)))}pick(t,e=this.options.packagesDirectories){const r=[];for(const n of e)for(const e of t)if(this.compare(e,n)){r.push(n);break}return r}}class Ru{static readJson(t){const e=l(t,"utf-8");return JSON.parse(e)}static toWorkspace(t,e){let{root:r,packageJson:n}=t;const o=t.path;if(!o)throw new Error("path is not required!");return r=r||m(e,o),n=n||Ru.readJson(m(r,xi)),{name:n.name,version:n.version,path:o,root:r,packageJson:n}}}class Pu extends Ai{releaseTask=null;workspacesList=[];_skip=!1;releaseLabel;constructor(t){super(t,"workspaces"),this.releaseLabel=new _u({changePackagesLabel:this.context.shared.changePackagesLabel||"change:${name}",packagesDirectories:this.context.shared.packagesDirectories||[],compare:(t,e)=>s(t).startsWith(s(e))})}enabled(){return!this._skip&&!this.getConfig("skip")}async onBefore(){const t=this.getConfig("workspace");if(t)return this.logger.debug("Use the specified workspace",t),void this.setCurrentWorkspace(t,[]);const e=await this.getWorkspaces();if(this.getConfig("skipCheckPackage")||0===e.length)throw new Error("No changes to publish packages");const{publishPath:r}=this.context.shared;if(r){const t=e.find((t=>s(t.root)===s(r)));if(this.nextSkip(),!t)throw new Error(`No workspace found for: ${r}`);return this.logger.debug(`Workspace of ${r} find!`,u(t.root,xi)),void this.setCurrentWorkspace(t,[t])}const[n,...o]=e;this.workspacesList=o,this.setCurrentWorkspace(n,e)}nextSkip(){this._skip=!0,this.logger.debug("skip next workspace")}setReleaseTask(t){this.releaseTask=t}setCurrentWorkspace(t,e){this.context.setShared({publishPath:t.path}),this.setConfig({workspace:t,workspaces:e})}async getGitWorkspaces(){const t=this.context.sourceBranch,e=await this.shell.exec(`git diff --name-only origin/${t}...HEAD`,{dryRun:!1});return"string"==typeof e?e.split("\n"):[]}async getChangedPackages(t,e){if(this.logger.debug("changeLabels",e),Array.isArray(e)&&e.length>0){const r=t.filter((t=>{const r=this.releaseLabel.toChangeLabel(t);return e.includes(r)}));return this.logger.debug("changed by labels",r),r}const r=await this.getGitWorkspaces();return this.logger.debug("changed by git",r),this.releaseLabel.pick(r,t)}getProjectWorkspaces(){const t=this.context.rootPath,e=this.context.shared.packagesDirectories;if(Array.isArray(e)&&e.length>0)return e.map((e=>Ru.toWorkspace({path:e},t)));return(f(t)||[]).map((e=>({name:e.package.name,version:e.package.version,path:c(t,e.location),root:s(t,e.location),packageJson:e.package})))}async getWorkspaces(){const t=this.getProjectWorkspaces(),e=t.map((({path:t})=>t));this.logger.debug("packages",e);const r=this.getConfig("changeLabels"),n=await this.getChangedPackages(e,r);return this.setConfig({packages:e,changedPaths:n,projectWorkspaces:t}),this.logger.debug("changedPaths",n),t.filter((t=>n.includes(t.path)))}}function xu(t,...e){return"function"==typeof t&&t.prototype&&t.prototype.constructor===t?new t(...e):t(...e)}function Cu(t){return t.startsWith(".")?h(t).name:t}async function ju(t){let e=null;try{e=(await import(t)).default}catch{try{e=(await import(u(process.cwd(),t))).default}catch{const r=d(process.cwd());e=(await import(v(r.resolve(t,{paths:[process.cwd()]})).href)).default}}return[Cu(t),e]}async function $u(t,e,r=5){const n=b(r),o=e.map((([e,...r])=>n((()=>(async(e,...r)=>{if("string"==typeof e){const[,n]=await ju(e);return xu(n,t,...r)}return xu(e,t,...r)})(e,...r)))));return Promise.all(o)}const Nu=[$i(Pu),$i(class extends Ai{constructor(t,e){super(t,"changelog",{increment:"patch",changesetRoot:".changeset",tagTemplate:"${name}@${version}",tagPrefix:"${name}",tagMatch:"${name}@*",...e})}get changesetRoot(){return m(this.context.rootPath,this.getConfig("changesetRoot"))}get changesetConfigPath(){return m(this.changesetRoot,"config.json")}enabled(){return!this.getConfig("skip")}async onBefore(){if(!g(this.changesetRoot))throw new Error(`Changeset directory ${this.changesetRoot} does not exist`);this.logger.debug(`${this.changesetRoot} exists`)}mergeWorkspaces(t){return t.map((t=>{const e=Ru.toWorkspace({path:t.path},this.context.rootPath),r={...t,version:e.version};return r.tagName=this.generateTagName(r),r}))}async onExec(t){const e=await this.step({label:"Generate Changelogs",task:()=>Promise.all(this.context.workspaces.map((t=>this.generateChangelog(t))))});this.context.setWorkspaces(e)}async onSuccess(){const t=this.context.workspaces;this.getConfig("skipChangeset")?this.logger.debug("Skip generate changeset files"):(await this.step({label:"Changeset Version",task:()=>Promise.all(t.map((t=>this.generateChangesetFile(t))))}),await this.context.runChangesetsCli("version",["--no-changelog","--update-dependencies"]),this.getConfig("ignoreNonUpdatedPackages")&&await this.restoreIgnorePackages());const e=this.mergeWorkspaces(t);this.logger.debug("new workspaces",e),this.context.setWorkspaces(e)}async restoreIgnorePackages(){const{changedPaths:t=[],packages:e=[]}=this.context.getConfig("workspaces"),r=e.filter((e=>!t.includes(e))).map((t=>Ru.toWorkspace({path:t},this.context.rootPath).path));this.logger.debug("noChangedPackages",r),r.length>0&&await this.shell.exec(["git","restore",...r])}getTagPrefix(t){return this.shell.format(this.getConfig("tagPrefix"),t)}async generateChangelog(t){let e=await this.getTagName(t);t.lastTag&&(this.logger.warn(`${t.name} has lastTag: ${t.lastTag}`),e=t.lastTag),this.logger.debug("tagName is:",e);const r={...this.getConfig(),from:e,directory:t.path,shell:this.shell,fileds:Ui,logger:this.logger},n=new Mi(r),o=await n.getCommits(r),i=new bu(r).format(o);return{...t,lastTag:e,changelog:i.join("\n")}}generateTagName(t){try{const e=this.getConfig("tagTemplate");return this.shell.format(e,t)}catch(e){return console.error(`Error generating tag name for ${t.name}:`,e),`${t.name}-v0.0.0`}}async getTagName(t){try{const e=this.generateTagName(t),r=this.shell.format(this.getConfig("tagMatch"),t),n=await this.shell.exec(`git for-each-ref --sort=-creatordate --format "%(refname:short)|%(creatordate:iso8601)" "refs/tags/${r}"`,{dryRun:!1});if(!n)return e;const o=n.split("\n").filter(Boolean);if(0===o.length)return e;return o[0].split("|")[0]}catch(e){console.error(`Error getting tag for ${t.name}:`,e);return this.generateTagName(t)}}getIncrement(){const t=this.context.getConfig("workspaces.changeLabels");if(Array.isArray(t)&&t.length>0){if(t.includes("increment:major"))return"major";if(t.includes("increment:minor"))return"minor"}return this.getConfig("increment","patch")}async generateChangesetFile(t){const{name:e,version:r}=t,n=`${e}-${r}`.replace(/[\/\\]/g,"_"),o=m(this.changesetRoot,`${n}.md`),i=this.getIncrement();this.logger.debug("increment is:",[i]);const a=this.shell.format("---\n'${name}': '${increment}'\n---\n\n${changelog}",{...t,increment:i});if(this.context.dryRun)return this.logger.info(`Changeset [${o}] will be created, content is:`),void this.logger.log(a);g(o)?this.logger.info(`Changeset ${n} already exists`):p(o,a,"utf-8")}},{}),$i(class extends Wi{context;releaseParams;githubManager;constructor(t,e){super(t,"githubPR",{releaseName:"Release ${name} v${version}",...e}),this.context=t,this.githubManager=new Ei(this.context),this.releaseParams=new Oi(t.shell,t.logger,{PRTitle:this.getConfig("PRTitle",this.context.shared.PRTitle),PRBody:this.getConfig("PRBody",this.context.shared.PRBody),...this.props})}enabled(t){return!this.getConfig("skip")}get isPublish(){return!this.getConfig("releasePR")}async isGithubRepository(){try{return(await this.getRemoteUrl()).includes("github.com")}catch{return!1}}async onBefore(){this.logger.debug("GithubPR onBefore");if(!await this.isGithubRepository())throw new Error("Current repository is not a GitHub repository. GitHub PR workflow is only available for GitHub repositories.");if(await super.onBefore(),this.isPublish){const t=this.getEnv("NPM_TOKEN");if(!t)throw new Error("NPM_TOKEN is not set");await this.shell.exec(`npm config set //registry.npmjs.org/:_authToken=${t}`)}}async onExec(){const t=this.context.workspaces,e=new ku(this.context.getConfig("changelog"),this.githubManager),r=await this.step({label:"GithubPR Changelogs",task:()=>e.transformWorkspace(t,this.context)});this.context.setWorkspaces(r)}async onSuccess(){this.isPublish?await this.publishPR(this.context.workspaces):await this.releasePR(this.context.workspaces)}async releasePR(t){await this.step({label:"Release Commit",task:()=>this.relesaeCommit(t)});const e=await this.step({label:"Create Release Branch",task:()=>this.createReleaseBranch(t)});await this.releasePullRequest(t,e)}async publishPR(t){this.getConfig("dryRunCreatePR")||(await this.context.runChangesetsCli("publish"),await this.shell.exec("git push origin --tags")),await this.step({label:"Release Github",task:()=>Promise.all(t.map((t=>(this.logger.debug(t),this.githubManager.createRelease(t)))))})}async relesaeCommit(t){const e=this.getConfig("commitArgs",[]);if(1===t.length)return await this.shell.exec("git add ."),void await this.commitWorkspace(t[0],e);await this.shell.exec("git add .");const r=`chore(tag): ${t.map((t=>`${t.name} v${t.version}`)).join(",")}`;await this.commit(r,e)}async releasePullRequest(t,e){const r=await this.step({label:"Create Release PR",task:()=>this.createReleasePR(t,e)});if(this.githubManager.autoMergeReleasePR){const{releaseBranch:t}=e;return await this.step({label:`Merge Release PR(${r})`,task:()=>this.githubManager.mergePR(r,t)}),void await this.step({label:`Checked Release PR(${r})`,task:()=>this.githubManager.checkedPR(r,t)})}this.logger.info(`Please manually merge PR(#${r}) and complete the publishing process afterwards`)}async commitWorkspace(t,e=[]){const r=this.shell.format(this.getConfig("commitMessage","chore(tag): ${name} v${version}"),t);return await this.commit(r,e)}async createReleaseBranch(t){const e=this.releaseParams.getReleaseBranchParams(t,this.context.getTemplateContext()),{tagName:r,releaseBranch:n}=e;if("string"!=typeof r)throw new Error("Tag name is not a string");const{sourceBranch:o,currentBranch:i}=this.context.shared;this.context.logger.debug("PR TagName is:",r),this.context.logger.debug("PR CurrentBranch is:",i),this.context.logger.debug("PR SourceBranch is:",o),this.context.logger.debug("PR ReleaseBranch is:",n);try{await this.context.shell.exec(`git fetch origin ${o} ${i}`),await this.context.shell.exec(`git checkout -b ${n} ${i}`),await this.context.shell.exec(`git push origin ${n}`)}catch(t){throw t.message.includes("remote: Permission to ")&&this.context.logger.warn('Token maybe not allow Workflow permissions, can you try to open "Workflow permissions" -> "Read and write permissions" for this token?'),t}return{tagName:r,releaseBranch:n}}async createReleasePR(t,e){let r=[(await this.githubManager.createReleasePRLabel()).name];if(this.getConfig("pushChangeLabels")){const t=this.context.getConfig("workspaces.changeLabels");Array.isArray(t)&&t.length>0&&r.push(...t)}r=Array.from(new Set(r)),this.logger.debug("Release PR labels:",r);const n=this.context.getTemplateContext(),o=this.releaseParams.getPRTitle(e,n),i=this.releaseParams.getPRBody(t,e,n);return this.githubManager.createReleasePR({title:o,body:i,base:this.context.sourceBranch,head:e.releaseBranch,labels:r})}},{})];class Ou{executor;defaultTuples;context;constructor(t={},e=new r,n=Nu){this.executor=e,this.defaultTuples=n,this.context=new ji(t)}getContext(){return this.context}async usePlugins(t){t=t||this.context.shared.plugins||[];const e=await $u(this.context,[...this.defaultTuples,...t]);return e.forEach((t=>{t instanceof Pu&&t.setReleaseTask(this),this.executor.use(t)})),e}async run(){return this.executor.exec(this.context,(t=>Promise.resolve(t)))}async exec(t){if("false"===this.context.env.get("FE_RELEASE"))throw new Error("Skip Release");return await this.usePlugins(t),this.run()}}var Eu,Bu,Tu,Su;function Lu(){if(Bu)return Eu;Bu=1;var t=yo(),e=wi(),r=_o(),n=Ne(),o=ki();return Eu=function(i,a,s,u){if(!n(i))return i;for(var c=-1,h=(a=e(a,i)).length,f=h-1,l=i;null!=l&&++c<h;){var g=o(a[c]),p=s;if("__proto__"===g||"constructor"===g||"prototype"===g)return i;if(c!=f){var m=l[g];void 0===(p=u?u(m,g,l):void 0)&&(p=n(m)?m:r(a[c+1])?[]:{})}t(l,g,p),l=l[g]}return i}}function Au(){if(Su)return Tu;Su=1;var t=Lu();return Tu=function(e,r,n){return null==e?e:t(e,r,n)}}var Wu=he(Au());function Uu(t,e){return Object.entries(t).reduce(((t,[r,n])=>(r.includes(".")?Wu(t,r,n):Wu(t,e?`${e}.${r}`:r,n),t)),{})}export{Ui as CHANGELOG_ALL_FIELDS,Mi as GitChangelog,bu as GitChangelogFormatter,Ai as Plugin,ji as ReleaseContext,_u as ReleaseLabel,Ou as ReleaseTask,xu as factory,ju as load,$u as loaderPluginsFromPluginTuples,Uu as reduceOptions,$i as tuple};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@qlover/fe-release",
3
3
  "description": "A tool for releasing front-end projects, supporting multiple release modes and configurations, simplifying the release process and improving efficiency.",
4
- "version": "2.3.3",
4
+ "version": "2.3.4",
5
5
  "type": "module",
6
6
  "private": false,
7
7
  "homepage": "https://github.com/qlover/fe-base/tree/master/packages/fe-release",
@@ -57,9 +57,9 @@
57
57
  "gitlog": "^5.1.0",
58
58
  "lodash": "^4.17.21",
59
59
  "@qlover/env-loader": "0.3.0",
60
+ "@qlover/scripts-context": "0.2.1",
60
61
  "@qlover/logger": "0.1.1",
61
- "@qlover/fe-corekit": "1.4.1",
62
- "@qlover/scripts-context": "0.2.1"
62
+ "@qlover/fe-corekit": "1.4.1"
63
63
  },
64
64
  "scripts": {
65
65
  "build": "rollup -c",