@w5s/conventional-changelog 2.1.6 โ 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +2 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/src/writer-opts.ts +1 -0
package/dist/index.cjs
CHANGED
|
@@ -327,7 +327,7 @@ var writerOpts = {
|
|
|
327
327
|
};
|
|
328
328
|
|
|
329
329
|
// src/index.ts
|
|
330
|
-
var
|
|
330
|
+
var index_default = {
|
|
331
331
|
Emoji,
|
|
332
332
|
GitmojiCode,
|
|
333
333
|
parserOpts,
|
|
@@ -336,6 +336,6 @@ var src_default = {
|
|
|
336
336
|
gitRawCommitOpts
|
|
337
337
|
};
|
|
338
338
|
|
|
339
|
-
module.exports =
|
|
339
|
+
module.exports = index_default;
|
|
340
340
|
//# sourceMappingURL=index.cjs.map
|
|
341
341
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/git-raw-commit-opts.ts","../src/parser-opts.ts","../src/data.ts","../src/gitmoji.ts","../src/recommended-bump-opts.ts","../src/transform.ts","../src/writer-opts.ts","../src/index.ts"],"names":["Emoji","emojiRegexp","GitmojiCode","gitmojis","toConventionalCommitType","nodePath","fileURLToPath","readFileSync"],"mappings":";;;;;;;;;;;;;;;AAAO,IAAM,gBAAmB,GAAA;AAAA,EAC9B,MAAQ,EAAA;AACV,CAAA;;;ACEO,IAAM,UAA4B,GAAA;AAAA,EACvC,eAAe,IAAI,MAAA;AAAA;AAAA,IAEjB,CAAA,yDAAA,CAAA;AAAA,IAKA;AAAA,GACF;AAAA,EACA,oBAAsB,EAAA,CAAC,MAAQ,EAAA,OAAA,EAAS,SAAS,CAAA;AAAA,EACjD,aAAe,EAAA,oEAAA;AAAA,EACf,YAAA,EAAc,CAAC,iBAAA,EAAmB,kBAAkB,CAAA;AAAA;AAAA,EAEpD,oBAAA,EAAsB,CAAC,CAAA,MAAA,CAAA,EAAU,CAAM,IAAA,CAAA;AACzC,CAAA;;;ACCO,IAAM,0BAA0B,MAAM;AAC3C,EAAM,MAAA,UAAA,GAAa,OAAO,MAAO,CAAA;AAAA,IAC/B,KAAO,EAAA,OAAA;AAAA,IACP,EAAI,EAAA,IAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,IAAM,EAAA,MAAA;AAAA,IACN,GAAK,EAAA,KAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,UAAA;AAAA,IACV,MAAQ,EAAA,QAAA;AAAA,IACR,KAAO,EAAA,OAAA;AAAA,IACP,IAAM,EAAA,MAAA;AAAA,IACN,GAAK,EAAA,KAAA;AAAA,IACL,KAAO,EAAA;AAAA,GACR,CAAA;AACD,EAAM,MAAA,UAAA,GAAgD,OAAO,MAAO,CAAA,MAAA,CAAO,OAAO,UAAU,CAAA,CAAE,MAAM,CAAA;AACpG,EAAM,MAAA,aAAA,GAAgB,IAAI,GAAA,CAAI,UAAU,CAAA;AAExC,EAAA,MAAM,QAAuE,GAAA;AAAA,IAC3E,IAAM,EAAA;AAAA,MACJ,KAAO,EAAA,QAAA;AAAA,MACP,OAAS,EAAA,UAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,GAAK,EAAA;AAAA,MACH,KAAO,EAAA,WAAA;AAAA,MACP,OAAS,EAAA,WAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,KAAO,EAAA;AAAA,MACL,KAAO,EAAA,WAAA;AAAA,MACP,OAAS,EAAA,cAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,KAAO,EAAA;AAAA,MACL,KAAO,EAAA,WAAA;AAAA,MACP,OAAS,EAAA,QAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,EAAI,EAAA;AAAA,MACF,KAAO,EAAA,WAAA;AAAA,MACP,OAAS,EAAA,wBAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,IAAM,EAAA;AAAA,MACJ,KAAO,EAAA,WAAA;AAAA,MACP,OAAS,EAAA,eAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,IAAM,EAAA;AAAA,MACJ,KAAO,EAAA,QAAA;AAAA,MACP,OAAS,EAAA,OAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,IAAM,EAAA;AAAA,MACJ,KAAO,EAAA,QAAA;AAAA,MACP,OAAS,EAAA,0BAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,QAAU,EAAA;AAAA,MACR,KAAO,EAAA,QAAA;AAAA,MACP,OAAS,EAAA,kBAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,MAAQ,EAAA;AAAA,MACN,KAAO,EAAA,QAAA;AAAA,MACP,OAAS,EAAA,SAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,KAAO,EAAA;AAAA,MACL,KAAO,EAAA,WAAA;AAAA,MACP,OAAS,EAAA,QAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,GAAK,EAAA;AAAA,MACH,KAAO,EAAA,WAAA;AAAA,MACP,OAAS,EAAA,kBAAA;AAAA,MACT,SAAW,EAAA;AAAA;AACb,GACF;AAEA,EAAA,SAAS,YAAY,QAAuD,EAAA;AAC1E,IAAA,OAAO,OAAO,QAAA,KAAa,QAAY,IAAA,aAAA,CAAc,IAAI,QAA6C,CAAA;AAAA;AAGxG,EAAA,SAAS,QAAQ,UAAgE,EAAA;AAC/E,IAAA,OAAO,SAAS,UAAU,CAAA;AAAA;AAG5B,EAAA,SAAS,MAAM,QAAsD,EAAA;AACnE,IAAO,OAAA,WAAA,CAAY,QAAQ,CAAA,GAAI,QAAW,GAAA,KAAA,CAAA;AAAA;AAG5C,EAAA,SAAS,MAAS,GAAA;AAChB,IAAO,OAAA,UAAA;AAAA;AAGT,EAAA,SAAS,UAAU,SAAoF,EAAA;AACrG,IAAO,OAAA,UAAA,CAAW,OAAO,CAAC,SAAA,KAAc,UAAU,OAAQ,CAAA,SAAS,CAAC,CAAC,CAAA;AAAA;AAGvE,EAAA,OAAO,EAAE,GAAG,UAAA,EAAY,aAAa,OAAS,EAAA,MAAA,EAAQ,OAAO,SAAU,EAAA;AACzE,CAAG,GAAA;ACrHI,IAAU,KAAA;AAAA,CAAV,CAAUA,MAAV,KAAA;AACE,EAAMA,MAAAA,CAAA,iBAAiBC,4BAAY,EAAA;AAEnC,EAAMD,OAAA,WAAc,GAAA,OAAA;AAE3B,EAAM,MAAA,WAAA,GAAc,CAAC,KAAkB,KAAA,IAAI,OAAO,CAAI,CAAA,EAAA,KAAA,CAAM,MAAM,CAAA,CAAA,CAAA,EAAK,EAAE,CAAA;AACzE,EAAM,MAAA,eAAA,GAAkB,WAAYA,CAAAA,MAAAA,CAAA,cAAc,CAAA;AAClD,EAAM,MAAA,YAAA,GAAe,WAAYA,CAAAA,MAAAA,CAAA,WAAW,CAAA;AAKrC,EAAA,SAAS,UAAU,QAAuC,EAAA;AAC/D,IAAO,OAAA,eAAA,CAAgB,KAAK,QAAQ,CAAA;AAAA;AAD/B,EAAAA,MAAS,CAAA,SAAA,GAAA,SAAA;AAIT,EAAA,SAAS,OAAO,QAAoC,EAAA;AACzD,IAAO,OAAA,YAAA,CAAa,KAAK,QAAQ,CAAA;AAAA;AAD5B,EAAAA,MAAS,CAAA,MAAA,GAAA,MAAA;AAIT,EAAA,SAAS,YAAY,QAAqC,EAAA;AAC/D,IAAA,OAAO,MAAO,CAAA,QAAQ,CAAK,IAAA,SAAA,CAAU,QAAQ,CAAA;AAAA;AADxC,EAAAA,MAAS,CAAA,WAAA,GAAA,WAAA;AAAA,CApBD,EAAA,KAAA,KAAA,KAAA,GAAA,EAAA,CAAA,CAAA;AA0BV,IAAU,WAAA;AAAA,CAAV,CAAUE,YAAV,KAAA;AAML,EAAA,MAAM,kBAAkB,IAAI,GAAA;AAAA,IAC1BC,iBACG,CAAA,GAAA,CAAI,CAAC,OAAA,KAAY,QAAQ,IAAmB,CAAA,CAC5C,MAAO,CAAAA,iBAAA,CAAS,GAAI,CAAA,CAAC,OAAY,KAAA,OAAA,CAAQ,KAAoB,CAAC;AAAA,GACnE;AACA,EAAA,MAAM,KAAQ,GAAA;AAAA;AAAA,IAEZ,KAAA,EAAO,WAAY,CAAAA,iBAAA,EAAU,OAAO;AAAA,GACtC;AAEA,EAAS,SAAA,WAAA,CAAqC,MAA0B,GAA0C,EAAA;AAChH,IAAA,OAAO,IAAI,GAAA,CAAI,IAAK,CAAA,GAAA,CAAI,CAAC,OAAA,KAAY,CAAC,OAAA,CAAQ,GAAG,CAAA,EAAG,OAAO,CAAC,CAAC,CAAA;AAAA;AAGxD,EAAA,SAAS,QAAQ,QAA2C,EAAA;AACjE,IAAO,OAAA,eAAA,CAAgB,IAAI,QAAuB,CAAA;AAAA;AAD7C,EAAAD,YAAS,CAAA,OAAA,GAAA,OAAA;AAIhB,EAAA,MAAM,WAAc,GAAA,OAAA;AACpB,EAAA,MAAM,iBAAmE,MAAM;AAC7E,IAAA,MAAM,IAA8D,GAAA;AAAA,MAClE,IAAM,EAAA,CAAC,QAAK,EAAA,cAAA,EAAM,WAAI,CAAA;AAAA,MACtB,GAAA,EAAK,CAAC,WAAI,CAAA;AAAA,MACV,IAAA,EAAM,CAAC,WAAI,CAAA;AAAA,MACX,KAAA,EAAO,CAAC,WAAA,EAAM,WAAI,CAAA;AAAA,MAClB,QAAA,EAAU,CAAC,cAAA,EAAM,iBAAK,CAAA;AAAA,MACtB,IAAA,EAAM,CAAC,QAAA,EAAK,WAAI,CAAA;AAAA,MAChB,IAAA,EAAM,CAAC,cAAI,CAAA;AAAA,MACX,MAAA,EAAQ,CAAC,cAAI,CAAA;AAAA,MACb,EAAA,EAAI,CAAC,WAAA,EAAM,WAAI,CAAA;AAAA,MACf,GAAA,EAAK,CAAC,WAAI,CAAA;AAAA,MACV,OAAO,EAAC;AAAA,MACR,KAAA,EAAO,CAAC,WAAI;AAAA,KACd;AAEA,IAAA,MAAM,UAAU,KAAM,CAAA,IAAA;AAAA;AAAA,MAEpB,MAAA,CAAO,QAAQ,IAAI;AAAA,KACrB;AACA,IAAA,OAAO,IAAI,GAAA;AAAA,MACT,OAAQ,CAAA,MAAA;AAAA,QACN,CAAC,GAAK,EAAA,CAAC,UAAY,EAAA,mBAAmB,MACpC,GACG,CAAA,MAAA,CAAO,mBAAoB,CAAA,GAAA,CAAI,CAAC,cAAmB,KAAA,CAAC,gBAAgB,UAAU,CAAC,CAAC,CAEhF,CAAA,MAAA;AAAA,UACC,mBAAA,CAAoB,GAAI,CAAA,CAAC,cAAmB,KAAA;AAAA;AAAA,YAE1C,KAAM,CAAA,KAAA,CAAM,GAAI,CAAA,cAAc,CAAG,EAAA,IAAA;AAAA,YACjC;AAAA,WACD;AAAA,SACH;AAAA,QACJ;AAAC;AACH,KACF;AAAA,GACC,GAAA;AAEI,EAAA,SAASE,0BAAyB,OAA8C,EAAA;AACrF,IAAO,OAAA,aAAA,CAAc,GAAI,CAAA,OAAO,CAAK,IAAA,WAAA;AAAA;AADhC,EAAAF,aAAS,wBAAAE,GAAAA,yBAAAA;AAAA,CA/DD,EAAA,WAAA,KAAA,WAAA,GAAA,EAAA,CAAA,CAAA;;;AC1BjB,SAAS,yBAAyB,IAAc,EAAA;AAC9C,EAAA,OAAO,WAAY,CAAA,OAAA,CAAQ,IAAI,CAAA,GAC3B,WAAY,CAAA,wBAAA,CAAyB,IAAI,CAAA,GACzC,sBAAuB,CAAA,WAAA,CAAY,IAAI,CAAA,GACrC,IACA,GAAA,KAAA,CAAA;AACR;AAIO,IAAM,mBAAsB,GAAA;AAAA,EACjC,UAAA;AAAA,EACA,QAAA,EAAU,CAAC,OAAmC,KAAA;AAC5C,IAAA,IAAI,KAAQ,GAAA,CAAA;AACZ,IAAA,IAAI,SAAY,GAAA,CAAA;AAChB,IAAA,IAAI,QAAW,GAAA,CAAA;AAEf,IAAA,KAAA,MAAW,EAAE,IAAA,EAAM,KAAM,EAAA,IAAK,OAAS,EAAA;AACrC,MAAA,MAAM,gBAAmB,GAAA,IAAA,IAAQ,IAAO,GAAA,IAAA,GAAO,yBAAyB,IAAI,CAAA;AAC5E,MAAI,IAAA,KAAA,CAAM,SAAS,CAAG,EAAA;AACpB,QAAA,SAAA,IAAa,KAAM,CAAA,MAAA;AACnB,QAAQ,KAAA,GAAA,CAAA;AAAA,OACV,MAAA,IAAW,gBAAqB,KAAA,sBAAA,CAAuB,IAAM,EAAA;AAC3D,QAAY,QAAA,IAAA,CAAA;AACZ,QAAA,IAAI,UAAU,CAAG,EAAA;AACf,UAAQ,KAAA,GAAA,CAAA;AAAA;AACV;AACF;AAGF,IAAO,OAAA;AAAA,MACL,KAAA;AAAA,MACA,MAAA,EACE,SAAc,KAAA,CAAA,GACV,CAAY,SAAA,EAAA,SAAS,CAAwB,qBAAA,EAAA,QAAQ,CACrD,SAAA,CAAA,GAAA,CAAA,UAAA,EAAa,SAAS,CAAA,sBAAA,EAAyB,QAAQ,CAAA,SAAA;AAAA,KAC/D;AAAA;AAEJ,CAAA;;;AC5BO,SAAS,YAAA,CAAa,OAAkC,mBAA6C,EAAA;AAC1G,EAAA,OAAO,KAAS,IAAA,IAAA,IAAQ,KAAM,CAAA,MAAA,KAAW,IACrC,mBAAoB,CAAA,GAAG,CACvB,GAAA,mBAAA,CAAoB,KAAK,CAAA,IAAK,IAC5B,GAAA,KAAA,GACA,oBAAoB,KAAK,CAAA;AACjC;AAEO,SAAS,WAAY,CAAA,IAAA,EAAc,OAA+B,GAAA,EAAY,EAAA;AACnF,EAAA,MAAM,EAAE,SAAA,GAAY,IAAM,EAAA,QAAA,GAAW,SAAY,GAAA,OAAA;AAEjD,EAAI,IAAA,sBAAA,CAAuB,WAAY,CAAA,IAAI,CAAG,EAAA;AAC5C,IAAM,MAAA,EAAE,OAAO,CAAC,QAAQ,GAAG,KAAM,EAAA,GAAI,sBAAuB,CAAA,OAAA,CAAQ,IAAI,CAAA;AACxE,IAAA,OAAO,GAAG,SAAY,GAAA,CAAA,EAAG,KAAK,CAAM,CAAA,CAAA,GAAA,EAAE,GAAG,KAAK,CAAA,CAAA;AAAA;AAGhD,EAAO,OAAA,IAAA;AACT;AAQO,SAAS,gBAAgB,MAA2D,EAAA;AACzF,EAAM,MAAA,YAAA,GAAe,IAAI,GAAA,CAAI,MAAO,CAAA,YAAA,IAAgB,OAAO,sBAAuB,CAAA,MAAA,EAAW,GAAA,MAAA,CAAO,YAAY,CAAA;AAChH,EAAM,MAAA,UAAA,GAAa,CAAC,IAA6B,KAAA,IAAA,IAAQ,QAAQ,CAAC,YAAA,CAAa,IAAI,IAA8B,CAAA;AACjH,EAAA,MAAM,WAAc,GAAA,CAAC,KACnB,KAAA,MAAA,CAAO,aAAiB,IAAA,IAAA,GAAO,KAAQ,GAAA,KAAA,IAAS,IAAQ,IAAA,CAAC,MAAO,CAAA,aAAA,CAAc,SAAS,KAAK,CAAA;AAE9F,EAAM,MAAA,SAAA,GAAY,CAAC,MAAgB,EAAA,EAAE,YAAY,IAAM,EAAA,KAAA,EAAO,SAAuC,KAAA;AACnG,IAAM,MAAA,OAAA,GAAU,MAAO,CAAA,KAAA,CAAM,MAAW,KAAA,CAAA;AACxC,IAAM,MAAA,MAAA,uBAAa,GAAY,EAAA;AAC/B,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAO,KAAM,CAAA,GAAA,CAAI,CAAC,IAAU,MAAA;AAAA,MACxC,GAAG,IAAA;AAAA,MACH,OAAO,CAAG,EAAA,MAAA,CAAO,SAAc,KAAA,KAAA,GAAQ,KAAK,YAAK,CAAA,gBAAA;AAAA,KACjD,CAAA,CAAA;AACF,IAAA,MAAM,mBACJ,MAAO,CAAA,IAAA,IAAQ,OACX,KACC,CAAA,GAAA,sBAAA,CAAuB,MAAM,MAAO,CAAA,IAAI,MACxC,WAAY,CAAA,OAAA,CAAQ,OAAO,IAAI,CAAA,GAAI,YAAY,wBAAyB,CAAA,MAAA,CAAO,IAAI,CAAI,GAAA,KAAA,CAAA,CAAA;AAE9F,IAAA,IAAI,UAAW,CAAA,gBAAgB,CAAK,IAAA,OAAA,EAAgB,OAAA,KAAA;AAEpD,IAAA,MAAM,IACJ,GAAA,gBAAA,IAAoB,IAChB,GAAA,gBAAA,GACA,YAAY,gBAAkB,EAAA;AAAA,MAC5B,WAAW,MAAO,CAAA;AAAA,KACnB,CAAA;AAEP,IAAA,IAAI,WAAY,CAAA,MAAA,CAAO,KAAK,CAAA,EAAU,OAAA,KAAA;AAEtC,IAAA,MAAM,iBAAoB,GAAA,MAAA,CAAO,KAAU,KAAA,GAAA,GAAM,KAAK,MAAO,CAAA,KAAA;AAC7D,IAAM,MAAA,KAAA,GACJ,OAAO,gBAAoB,IAAA,IAAA,GAAO,oBAAoB,YAAa,CAAA,iBAAA,EAAmB,OAAO,gBAAgB,CAAA;AAC/G,IAAM,MAAA,IAAA,GAAO,OAAO,MAAA,CAAO,IAAS,KAAA,QAAA,GAAW,MAAO,CAAA,IAAA,CAAK,KAAM,CAAA,CAAA,EAAG,CAAC,CAAA,GAAI,MAAO,CAAA,IAAA;AAEhF,IAAA,MAAM,OACJ,GAAA,OAAO,MAAO,CAAA,OAAA,KAAY,YACrB,MAAM;AACL,MAAA,IAAI,cAAc,MAAO,CAAA,OAAA;AACzB,MAAA,MAAM,GAAM,GAAA,UAAA,IAAc,IAAO,GAAA,OAAA,GAAU,CAAC,IAAA,EAAM,KAAO,EAAA,UAAU,CAAE,CAAA,MAAA,CAAO,OAAO,CAAA,CAAE,KAAK,GAAG,CAAA;AAC7F,MAAA,IAAI,OAAO,IAAM,EAAA;AACf,QAAM,MAAA,QAAA,GAAW,GAAG,GAAG,CAAA,QAAA,CAAA;AAGvB,QAAA,WAAA,GAAc,WAAY,CAAA,OAAA,CAAQ,SAAW,EAAA,CAAC,GAAG,KAAkB,KAAA;AACjE,UAAA,MAAA,CAAO,IAAI,KAAK,CAAA;AAEhB,UAAA,OAAO,CAAK,EAAA,EAAA,KAAK,CAAK,EAAA,EAAA,QAAQ,GAAG,KAAK,CAAA,CAAA,CAAA;AAAA,SACvC,CAAA;AAAA;AAEH,MAAA,IAAI,QAAQ,IAAM,EAAA;AAGhB,QAAA,WAAA,GAAc,WAAY,CAAA,OAAA;AAAA,UAAQ,mCAAA;AAAA,UAAqC,CAAC,CAAA,EAAG,QACzE,KAAA,QAAA,CAAS,SAAS,GAAG,CAAA,GAAI,CAAI,CAAA,EAAA,QAAQ,KAAK,CAAK,EAAA,EAAA,QAAQ,CAAK,EAAA,EAAA,IAAI,IAAI,QAAQ,CAAA,CAAA;AAAA,SAC9E;AAAA;AAEF,MAAO,OAAA,WAAA;AAAA,KACT,MACA,MAAO,CAAA,OAAA;AAGb,IAAM,MAAA,UAAA,GAAa,MAAO,CAAA,UAAA,CAAW,MAAO,CAAA,CAAC,SAAc,KAAA,CAAC,MAAO,CAAA,GAAA,CAAI,SAAU,CAAA,KAAK,CAAC,CAAA;AAEvF,IAAO,OAAA;AAAA,MACL,GAAG,MAAA;AAAA,MACH,IAAA;AAAA,MACA,IAAA;AAAA,MACA,KAAA;AAAA,MACA,OAAA;AAAA,MACA,UAAA;AAAA,MACA,QAAQ,MAAO,CAAA,MAAA;AAAA,MACf,MAAM,MAAO,CAAA,IAAA;AAAA,MACb,QAAQ,MAAO,CAAA,MAAA;AAAA,MACf,OAAO,MAAO,CAAA,KAAA;AAAA,MACd,QAAQ,MAAO,CAAA,MAAA;AAAA,MACf,KAAA;AAAA,MACA,UAAU,MAAO,CAAA;AAAA,KACnB;AAAA,GACF;AAEA,EAAO,OAAA,SAAA;AACT;;;ACjHA,IAAM,QAAA,GAAW,OAAO,SAAA,KAAc,WAAc,GAAAC,yBAAA,CAAS,QAAQC,iBAAc,CAAA,2PAAe,CAAC,CAAI,GAAA,SAAA;AACvG,IAAM,WAAWD,yBAAS,CAAA,OAAA,CAAQA,0BAAS,OAAQ,CAAA,QAAQ,GAAG,YAAY,CAAA;AAE1E,IAAM,YAAe,GAAAE,eAAA,CAAa,CAAG,EAAA,QAAQ,iBAAiB,MAAM,CAAA;AACpE,IAAM,aAAgB,GAAAA,eAAA,CAAa,CAAG,EAAA,QAAQ,eAAe,MAAM,CAAA;AACnE,IAAM,aAAgB,GAAAA,eAAA,CAAa,CAAG,EAAA,QAAQ,eAAe,MAAM,CAAA;AACnE,IAAM,aAAgB,GAAAA,eAAA,CAAa,CAAG,EAAA,QAAQ,eAAe,MAAM,CAAA;AACnE,IAAM,MAAS,GAAAA,eAAA,CAAa,CAAG,EAAA,QAAQ,eAAe,MAAM,CAAA;AAErD,IAAM,sBAAsB,sBAAuB,CAAA,SAAA,CAAU,CAAC,CAAA,KAAM,EAAE,SAAS,CAAA;AAE/E,IAAM,UAA4B,GAAA;AAAA,EACvC,WAAW,eAAgB,CAAA;AAAA,IACzB,YAAc,EAAA;AAAA,GACf,CAAA;AAAA,EACD,OAAS,EAAA,MAAA;AAAA,EACT,gBAAkB,EAAA,OAAA;AAAA,EAClB,WAAA,EAAa,CAAC,OAAA,EAAS,SAAS,CAAA;AAAA,EAChC,cAAgB,EAAA,OAAA;AAAA,EAChB,YAAA;AAAA,EACA,aAAA;AAAA;AAAA,EAEA,aAAe,EAAA,aAAA,CAAc,OAAQ,CAAA,kBAAA,EAAoB,MAAM,CAAA;AAAA,EAC/D;AACF,CAAA;;;AC1BA,IAAO,WAAQ,GAAA;AAAA,EACb,KAAA;AAAA,EACA,WAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA;AAAA,EACA,mBAAA;AAAA,EACA;AACF","file":"index.cjs","sourcesContent":["export const gitRawCommitOpts = {\n format: '%B%n-hash-%n%H%n-gitTags-%n%d%n-committerDate-%n%ci%n-authorName-%n%an%n-authorEmail-%n%ae',\n};\n","import type { Options } from 'conventional-commits-parser';\n\nexport interface ParserOptions extends Options {}\n\nexport const parserOpts: ParserOptions = {\n headerPattern: new RegExp(\n // Type\n `^(?<type>\\\\S*)? ` +\n // Scope\n `(?:\\\\((?<scope>.*)\\\\):? )?` +\n // Subject\n `(?<subject>.*)$`,\n 'u',\n ),\n headerCorrespondence: ['type', 'scope', 'subject'],\n revertPattern: /^(?:revert|revert:)\\s\"?([\\S\\s]+?)\"?\\s*this reverts commit (\\w*)\\./i,\n noteKeywords: ['BREAKING CHANGE', 'BREAKING CHANGES'],\n // revertPattern: /revert:\\s([\\S\\s]*?)\\s*this reverts commit (\\w*)\\./i,\n revertCorrespondence: [`header`, `hash`],\n};\n","import type { Commit as CommitDefault } from 'conventional-commits-parser';\n\nexport type Commit = CommitDefault<never> & {\n hash?: string;\n};\n\nexport type CommitConventionalType =\n | 'build'\n | 'ci'\n | 'docs'\n | 'feat'\n | 'fix'\n | 'perf'\n | 'refactor'\n | 'revert'\n | 'style'\n | 'test'\n | 'wip'\n | 'chore';\n\nexport const CommitConventionalType = (() => {\n const enumObject = Object.freeze({\n Build: 'build',\n CI: 'ci',\n Docs: 'docs',\n Feat: 'feat',\n Fix: 'fix',\n Perf: 'perf',\n Refactor: 'refactor',\n Revert: 'revert',\n Style: 'style',\n Test: 'test',\n WIP: 'wip',\n Chore: 'chore',\n });\n const enumValues: readonly CommitConventionalType[] = Object.freeze(Object.values(enumObject).sort());\n const enumValuesSet = new Set(enumValues);\n\n const typeData: Record<CommitConventionalType, CommitConventionalTypeData> = {\n feat: {\n emoji: 'โจ',\n 'en-US': 'Features',\n changelog: true,\n },\n fix: {\n emoji: '๐',\n 'en-US': 'Bug Fixes',\n changelog: true,\n },\n build: {\n emoji: '๐ท',\n 'en-US': 'Build System',\n changelog: false,\n },\n chore: {\n emoji: '๐ซ',\n 'en-US': 'Chores',\n changelog: false,\n },\n ci: {\n emoji: '๐ง',\n 'en-US': 'Continuous Integration',\n changelog: false,\n },\n docs: {\n emoji: '๐',\n 'en-US': 'Documentation',\n changelog: false,\n },\n test: {\n emoji: 'โ
',\n 'en-US': 'Tests',\n changelog: false,\n },\n perf: {\n emoji: 'โก',\n 'en-US': 'Performance Improvements',\n changelog: true,\n },\n refactor: {\n emoji: 'โป',\n 'en-US': 'Code Refactoring',\n changelog: false,\n },\n revert: {\n emoji: 'โช',\n 'en-US': 'Reverts',\n changelog: true,\n },\n style: {\n emoji: '๐',\n 'en-US': 'Styles',\n changelog: false,\n },\n wip: {\n emoji: '๐ง',\n 'en-US': 'Work in progress',\n changelog: false,\n },\n };\n\n function hasInstance(anyValue: unknown): anyValue is CommitConventionalType {\n return typeof anyValue === 'string' && enumValuesSet.has(anyValue as unknown as CommitConventionalType);\n }\n\n function getData(commitType: CommitConventionalType): CommitConventionalTypeData {\n return typeData[commitType];\n }\n\n function parse(anyValue: string): CommitConventionalType | undefined {\n return hasInstance(anyValue) ? anyValue : undefined;\n }\n\n function values() {\n return enumValues;\n }\n\n function findWhere(predicate: (data: CommitConventionalTypeData) => boolean): CommitConventionalType[] {\n return enumValues.filter((enumValue) => predicate(getData(enumValue)));\n }\n\n return { ...enumObject, hasInstance, getData, values, parse, findWhere };\n})();\n\nexport interface CommitConventionalTypeData {\n emoji: string;\n 'en-US': string;\n changelog: boolean;\n}\n","import emojiRegexp from 'emoji-regex';\nimport { type Gitmoji, gitmojis } from 'gitmojis';\nimport type { CommitConventionalType } from './data.js';\n\nexport type Emoji = Emoji.Unicode | Emoji.Text;\nexport namespace Emoji {\n export const reEmojiUnicode = emojiRegexp();\n\n export const reEmojiText = /:\\w*:/;\n\n const reMatchOnly = (input: RegExp) => new RegExp(`^${input.source}$`, '');\n const _reEmojiUnicode = reMatchOnly(reEmojiUnicode);\n const _reEmojiText = reMatchOnly(reEmojiText);\n\n export type Unicode = string & { '@@EmojiStyle': 'unicode' };\n export type Text = string & { '@@EmojiStyle': 'text' };\n\n export function isUnicode(anyValue: string): anyValue is Unicode {\n return _reEmojiUnicode.test(anyValue);\n }\n\n export function isText(anyValue: string): anyValue is Text {\n return _reEmojiText.test(anyValue);\n }\n\n export function hasInstance(anyValue: string): anyValue is Emoji {\n return isText(anyValue) || isUnicode(anyValue);\n }\n}\n\nexport type GitmojiCode = Emoji & { '@@Gitmoji': true };\nexport namespace GitmojiCode {\n export type Unicode = Emoji.Unicode & { '@@Gitmoji': true };\n export type Emoji = Emoji.Text & { '@@Gitmoji': true };\n\n // export const reEmoji = emojiRegexp();\n\n const allGitmojiCodes = new Set(\n gitmojis\n .map((gitmoji) => gitmoji.code as GitmojiCode)\n .concat(gitmojis.map((gitmoji) => gitmoji.emoji as GitmojiCode)),\n );\n const index = {\n // code: createIndex(gitmojis, 'code'),\n emoji: createIndex(gitmojis, 'emoji'),\n };\n\n function createIndex<K extends keyof Gitmoji>(list: readonly Gitmoji[], key: K): ReadonlyMap<Gitmoji[K], Gitmoji> {\n return new Map(list.map((gitmoji) => [gitmoji[key], gitmoji]));\n }\n\n export function isValid(anyValue: string): anyValue is GitmojiCode {\n return allGitmojiCodes.has(anyValue as GitmojiCode);\n }\n\n const defaultType = 'chore';\n const conversionMap: ReadonlyMap<GitmojiCode, CommitConventionalType> = (() => {\n const data: Record<CommitConventionalType, GitmojiCode.Unicode[]> = {\n feat: ['โจ', 'โฟ๏ธ', '๐ธ'] as GitmojiCode.Unicode[],\n fix: ['๐'] as GitmojiCode.Unicode[],\n docs: ['๐'] as GitmojiCode.Unicode[],\n style: ['๐จ', '๐จ'] as GitmojiCode.Unicode[],\n refactor: ['โป๏ธ', '๐๏ธ'] as GitmojiCode.Unicode[],\n test: ['โ
', '๐งช'] as GitmojiCode.Unicode[],\n perf: ['โก๏ธ'] as GitmojiCode.Unicode[],\n revert: ['โช๏ธ'] as GitmojiCode.Unicode[],\n ci: ['๐ท', '๐'] as GitmojiCode.Unicode[],\n wip: ['๐ง'] as GitmojiCode.Unicode[],\n build: [] as GitmojiCode.Unicode[],\n chore: ['๐ง'] as GitmojiCode.Unicode[],\n };\n\n const entries = Array.from<[CommitConventionalType, GitmojiCode.Unicode[]]>(\n // @ts-ignore entries are not well typed\n Object.entries(data),\n );\n return new Map(\n entries.reduce<Array<[GitmojiCode, CommitConventionalType]>>(\n (acc, [commitType, gitmojiUnicodeArray]) =>\n acc\n .concat(gitmojiUnicodeArray.map((gitmojiUnicode) => [gitmojiUnicode, commitType]))\n\n .concat(\n gitmojiUnicodeArray.map((gitmojiUnicode) => [\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion, @typescript-eslint/no-non-null-asserted-optional-chain\n index.emoji.get(gitmojiUnicode)?.code! as GitmojiCode,\n commitType,\n ]),\n ),\n [],\n ),\n );\n })();\n\n export function toConventionalCommitType(gitmoji: GitmojiCode): CommitConventionalType {\n return conversionMap.get(gitmoji) ?? defaultType;\n }\n}\n","import type { Commit as CommitBase } from 'conventional-commits-parser';\nimport { parserOpts } from './parser-opts.js';\nimport { CommitConventionalType } from './data.js';\nimport { GitmojiCode } from './gitmoji.js';\n\nfunction toConventionalCommitType(text: string) {\n return GitmojiCode.isValid(text)\n ? GitmojiCode.toConventionalCommitType(text)\n : CommitConventionalType.hasInstance(text)\n ? text\n : undefined;\n}\n\nexport type Commit = CommitBase;\n\nexport const recommendedBumpOpts = {\n parserOpts,\n whatBump: (commits: ReadonlyArray<Commit>) => {\n let level = 2;\n let breakings = 0;\n let features = 0;\n\n for (const { type, notes } of commits) {\n const conventionalType = type == null ? type : toConventionalCommitType(type);\n if (notes.length > 0) {\n breakings += notes.length;\n level = 0;\n } else if (conventionalType === CommitConventionalType.Feat) {\n features += 1;\n if (level === 2) {\n level = 1;\n }\n }\n }\n\n return {\n level,\n reason:\n breakings === 1\n ? `There is ${breakings} BREAKING CHANGE and ${features} features`\n : `There are ${breakings} BREAKING CHANGES and ${features} features`,\n };\n },\n};\n","import type { Context, Options as WriterOptions } from 'conventional-changelog-writer';\nimport { CommitConventionalType, Commit } from './data.js';\nimport { GitmojiCode } from './gitmoji.js';\n\nexport type Language = 'en-US';\n\nexport interface TransformConfig {\n scopeDisplayName?: Record<string, string>;\n displayTypes?: CommitConventionalType[];\n displayScopes?: string[];\n showAuthor?: boolean;\n withEmoji?: boolean;\n language?: Language;\n}\n\nexport function displayScope(scope: string | null | undefined, scopeDisplayNameMap: Record<string, string>) {\n return scope == null || scope.length === 0\n ? scopeDisplayNameMap['*']\n : scopeDisplayNameMap[scope] == null\n ? scope\n : scopeDisplayNameMap[scope];\n}\n\nexport function displayType(type: string, options: displayType.Options = {}): string {\n const { withEmoji = true, language = 'en-US' } = options;\n\n if (CommitConventionalType.hasInstance(type)) {\n const { emoji, [language]: title } = CommitConventionalType.getData(type);\n return `${withEmoji ? `${emoji} ` : ''}${title}`;\n }\n\n return type;\n}\nexport namespace displayType {\n export interface Options {\n readonly withEmoji?: boolean;\n readonly language?: Language;\n }\n}\n\nexport function createTransform(config: TransformConfig): WriterOptions.Transform.Function {\n const displayTypes = new Set(config.displayTypes == null ? CommitConventionalType.values() : config.displayTypes);\n const ignoreType = (type: string | undefined) => type == null || !displayTypes.has(type as CommitConventionalType);\n const ignoreScope = (scope: string | undefined | null) =>\n config.displayScopes == null ? false : scope != null && !config.displayScopes.includes(scope);\n\n const transform = (commit: Commit, { repository, host, owner, repoUrl }: Context): Commit | false => {\n const discard = commit.notes.length === 0;\n const issues = new Set<string>();\n const notes = commit.notes.map((note) => ({\n ...note,\n title: `${config.withEmoji === false ? '' : '๐ฅ '}BREAKING CHANGES`,\n }));\n const conventionalType =\n commit.type == null\n ? undefined\n : (CommitConventionalType.parse(commit.type) ??\n (GitmojiCode.isValid(commit.type) ? GitmojiCode.toConventionalCommitType(commit.type) : undefined));\n\n if (ignoreType(conventionalType) && discard) return false;\n\n const type =\n conventionalType == null\n ? conventionalType\n : displayType(conventionalType, {\n withEmoji: config.withEmoji,\n });\n\n if (ignoreScope(commit.scope)) return false;\n\n const scopeIntermediate = commit.scope === '*' ? '' : commit.scope;\n const scope =\n config.scopeDisplayName == null ? scopeIntermediate : displayScope(scopeIntermediate, config.scopeDisplayName);\n const hash = typeof commit.hash === 'string' ? commit.hash.slice(0, 7) : commit.hash;\n\n const subject =\n typeof commit.subject === 'string'\n ? (() => {\n let returnValue = commit.subject;\n const url = repository == null ? repoUrl : [host, owner, repository].filter(Boolean).join('/');\n if (url != null) {\n const issueURL = `${url}/issues/`;\n // Issue URLs.\n // eslint-disable-next-line unicorn/prefer-string-replace-all\n returnValue = returnValue.replace(/#(\\d+)/g, (_, issue: string) => {\n issues.add(issue);\n\n return `[#${issue}](${issueURL}${issue})`;\n });\n }\n if (host != null) {\n // User URLs.\n // eslint-disable-next-line unicorn/prefer-string-replace-all\n returnValue = returnValue.replace(/\\B@([\\da-z](?:-?[\\d/a-z]){0,38})/g, (_, username: string) =>\n username.includes('/') ? `@${username}` : `[@${username}](${host}/${username})`,\n );\n }\n return returnValue;\n })()\n : commit.subject;\n\n // Remove references that already appear in the subject\n const references = commit.references.filter((reference) => !issues.has(reference.issue));\n\n return {\n ...commit,\n type,\n hash,\n scope,\n subject,\n references,\n header: commit.header,\n body: commit.body,\n footer: commit.footer,\n merge: commit.merge,\n revert: commit.revert,\n notes,\n mentions: commit.mentions,\n };\n };\n\n return transform as unknown as WriterOptions.Transform.Function;\n}\n","import { readFileSync } from 'node:fs';\nimport nodePath from 'node:path';\nimport type { Options } from 'conventional-changelog-writer';\nimport { fileURLToPath } from 'node:url';\nimport { createTransform } from './transform.js';\nimport { CommitConventionalType } from './data.js';\n\nexport interface WriterOptions extends Options {}\n\nconst _dirname = typeof __dirname === 'undefined' ? nodePath.dirname(fileURLToPath(import.meta.url)) : __dirname;\nconst basePath = nodePath.resolve(nodePath.dirname(_dirname), './template');\n\nconst mainTemplate = readFileSync(`${basePath}/template.hbs`, 'utf8');\nconst headerPartial = readFileSync(`${basePath}/header.hbs`, 'utf8');\nconst commitPartial = readFileSync(`${basePath}/commit.hbs`, 'utf8');\nconst footerPartial = readFileSync(`${basePath}/footer.hbs`, 'utf8');\nconst author = readFileSync(`${basePath}/author.hbs`, 'utf8');\n\nexport const defaultDisplayTypes = CommitConventionalType.findWhere((_) => _.changelog);\n\nexport const writerOpts: WriterOptions = {\n transform: createTransform({\n displayTypes: defaultDisplayTypes,\n }),\n groupBy: 'type',\n commitGroupsSort: 'title',\n commitsSort: ['scope', 'subject'],\n noteGroupsSort: 'title',\n mainTemplate,\n headerPartial,\n // eslint-disable-next-line unicorn/prefer-string-replace-all\n commitPartial: commitPartial.replace(/{{gitUserInfo}}/g, author),\n footerPartial,\n};\n","import { gitRawCommitOpts } from './git-raw-commit-opts.js';\nimport { parserOpts } from './parser-opts.js';\nimport { recommendedBumpOpts } from './recommended-bump-opts.js';\nimport { writerOpts } from './writer-opts.js';\nimport { Emoji, GitmojiCode } from './gitmoji.js';\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n Emoji,\n GitmojiCode,\n parserOpts,\n writerOpts,\n recommendedBumpOpts,\n gitRawCommitOpts,\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/git-raw-commit-opts.ts","../src/parser-opts.ts","../src/data.ts","../src/gitmoji.ts","../src/recommended-bump-opts.ts","../src/transform.ts","../src/writer-opts.ts","../src/index.ts"],"names":["Emoji","emojiRegexp","GitmojiCode","gitmojis","toConventionalCommitType","nodePath","fileURLToPath","readFileSync"],"mappings":"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","file":"index.cjs","sourcesContent":["export const gitRawCommitOpts = {\n format: '%B%n-hash-%n%H%n-gitTags-%n%d%n-committerDate-%n%ci%n-authorName-%n%an%n-authorEmail-%n%ae',\n};\n","import type { Options } from 'conventional-commits-parser';\n\nexport interface ParserOptions extends Options {}\n\nexport const parserOpts: ParserOptions = {\n headerPattern: new RegExp(\n // Type\n `^(?<type>\\\\S*)? ` +\n // Scope\n `(?:\\\\((?<scope>.*)\\\\):? )?` +\n // Subject\n `(?<subject>.*)$`,\n 'u',\n ),\n headerCorrespondence: ['type', 'scope', 'subject'],\n revertPattern: /^(?:revert|revert:)\\s\"?([\\S\\s]+?)\"?\\s*this reverts commit (\\w*)\\./i,\n noteKeywords: ['BREAKING CHANGE', 'BREAKING CHANGES'],\n // revertPattern: /revert:\\s([\\S\\s]*?)\\s*this reverts commit (\\w*)\\./i,\n revertCorrespondence: [`header`, `hash`],\n};\n","import type { Commit as CommitDefault } from 'conventional-commits-parser';\n\nexport type Commit = CommitDefault<never> & {\n hash?: string;\n};\n\nexport type CommitConventionalType =\n | 'build'\n | 'ci'\n | 'docs'\n | 'feat'\n | 'fix'\n | 'perf'\n | 'refactor'\n | 'revert'\n | 'style'\n | 'test'\n | 'wip'\n | 'chore';\n\nexport const CommitConventionalType = (() => {\n const enumObject = Object.freeze({\n Build: 'build',\n CI: 'ci',\n Docs: 'docs',\n Feat: 'feat',\n Fix: 'fix',\n Perf: 'perf',\n Refactor: 'refactor',\n Revert: 'revert',\n Style: 'style',\n Test: 'test',\n WIP: 'wip',\n Chore: 'chore',\n });\n const enumValues: readonly CommitConventionalType[] = Object.freeze(Object.values(enumObject).sort());\n const enumValuesSet = new Set(enumValues);\n\n const typeData: Record<CommitConventionalType, CommitConventionalTypeData> = {\n feat: {\n emoji: 'โจ',\n 'en-US': 'Features',\n changelog: true,\n },\n fix: {\n emoji: '๐',\n 'en-US': 'Bug Fixes',\n changelog: true,\n },\n build: {\n emoji: '๐ท',\n 'en-US': 'Build System',\n changelog: false,\n },\n chore: {\n emoji: '๐ซ',\n 'en-US': 'Chores',\n changelog: false,\n },\n ci: {\n emoji: '๐ง',\n 'en-US': 'Continuous Integration',\n changelog: false,\n },\n docs: {\n emoji: '๐',\n 'en-US': 'Documentation',\n changelog: false,\n },\n test: {\n emoji: 'โ
',\n 'en-US': 'Tests',\n changelog: false,\n },\n perf: {\n emoji: 'โก',\n 'en-US': 'Performance Improvements',\n changelog: true,\n },\n refactor: {\n emoji: 'โป',\n 'en-US': 'Code Refactoring',\n changelog: false,\n },\n revert: {\n emoji: 'โช',\n 'en-US': 'Reverts',\n changelog: true,\n },\n style: {\n emoji: '๐',\n 'en-US': 'Styles',\n changelog: false,\n },\n wip: {\n emoji: '๐ง',\n 'en-US': 'Work in progress',\n changelog: false,\n },\n };\n\n function hasInstance(anyValue: unknown): anyValue is CommitConventionalType {\n return typeof anyValue === 'string' && enumValuesSet.has(anyValue as unknown as CommitConventionalType);\n }\n\n function getData(commitType: CommitConventionalType): CommitConventionalTypeData {\n return typeData[commitType];\n }\n\n function parse(anyValue: string): CommitConventionalType | undefined {\n return hasInstance(anyValue) ? anyValue : undefined;\n }\n\n function values() {\n return enumValues;\n }\n\n function findWhere(predicate: (data: CommitConventionalTypeData) => boolean): CommitConventionalType[] {\n return enumValues.filter((enumValue) => predicate(getData(enumValue)));\n }\n\n return { ...enumObject, hasInstance, getData, values, parse, findWhere };\n})();\n\nexport interface CommitConventionalTypeData {\n emoji: string;\n 'en-US': string;\n changelog: boolean;\n}\n","import emojiRegexp from 'emoji-regex';\nimport { type Gitmoji, gitmojis } from 'gitmojis';\nimport type { CommitConventionalType } from './data.js';\n\nexport type Emoji = Emoji.Unicode | Emoji.Text;\nexport namespace Emoji {\n export const reEmojiUnicode = emojiRegexp();\n\n export const reEmojiText = /:\\w*:/;\n\n const reMatchOnly = (input: RegExp) => new RegExp(`^${input.source}$`, '');\n const _reEmojiUnicode = reMatchOnly(reEmojiUnicode);\n const _reEmojiText = reMatchOnly(reEmojiText);\n\n export type Unicode = string & { '@@EmojiStyle': 'unicode' };\n export type Text = string & { '@@EmojiStyle': 'text' };\n\n export function isUnicode(anyValue: string): anyValue is Unicode {\n return _reEmojiUnicode.test(anyValue);\n }\n\n export function isText(anyValue: string): anyValue is Text {\n return _reEmojiText.test(anyValue);\n }\n\n export function hasInstance(anyValue: string): anyValue is Emoji {\n return isText(anyValue) || isUnicode(anyValue);\n }\n}\n\nexport type GitmojiCode = Emoji & { '@@Gitmoji': true };\nexport namespace GitmojiCode {\n export type Unicode = Emoji.Unicode & { '@@Gitmoji': true };\n export type Emoji = Emoji.Text & { '@@Gitmoji': true };\n\n // export const reEmoji = emojiRegexp();\n\n const allGitmojiCodes = new Set(\n gitmojis\n .map((gitmoji) => gitmoji.code as GitmojiCode)\n .concat(gitmojis.map((gitmoji) => gitmoji.emoji as GitmojiCode)),\n );\n const index = {\n // code: createIndex(gitmojis, 'code'),\n emoji: createIndex(gitmojis, 'emoji'),\n };\n\n function createIndex<K extends keyof Gitmoji>(list: readonly Gitmoji[], key: K): ReadonlyMap<Gitmoji[K], Gitmoji> {\n return new Map(list.map((gitmoji) => [gitmoji[key], gitmoji]));\n }\n\n export function isValid(anyValue: string): anyValue is GitmojiCode {\n return allGitmojiCodes.has(anyValue as GitmojiCode);\n }\n\n const defaultType = 'chore';\n const conversionMap: ReadonlyMap<GitmojiCode, CommitConventionalType> = (() => {\n const data: Record<CommitConventionalType, GitmojiCode.Unicode[]> = {\n feat: ['โจ', 'โฟ๏ธ', '๐ธ'] as GitmojiCode.Unicode[],\n fix: ['๐'] as GitmojiCode.Unicode[],\n docs: ['๐'] as GitmojiCode.Unicode[],\n style: ['๐จ', '๐จ'] as GitmojiCode.Unicode[],\n refactor: ['โป๏ธ', '๐๏ธ'] as GitmojiCode.Unicode[],\n test: ['โ
', '๐งช'] as GitmojiCode.Unicode[],\n perf: ['โก๏ธ'] as GitmojiCode.Unicode[],\n revert: ['โช๏ธ'] as GitmojiCode.Unicode[],\n ci: ['๐ท', '๐'] as GitmojiCode.Unicode[],\n wip: ['๐ง'] as GitmojiCode.Unicode[],\n build: [] as GitmojiCode.Unicode[],\n chore: ['๐ง'] as GitmojiCode.Unicode[],\n };\n\n const entries = Array.from<[CommitConventionalType, GitmojiCode.Unicode[]]>(\n // @ts-ignore entries are not well typed\n Object.entries(data),\n );\n return new Map(\n entries.reduce<Array<[GitmojiCode, CommitConventionalType]>>(\n (acc, [commitType, gitmojiUnicodeArray]) =>\n acc\n .concat(gitmojiUnicodeArray.map((gitmojiUnicode) => [gitmojiUnicode, commitType]))\n\n .concat(\n gitmojiUnicodeArray.map((gitmojiUnicode) => [\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion, @typescript-eslint/no-non-null-asserted-optional-chain\n index.emoji.get(gitmojiUnicode)?.code! as GitmojiCode,\n commitType,\n ]),\n ),\n [],\n ),\n );\n })();\n\n export function toConventionalCommitType(gitmoji: GitmojiCode): CommitConventionalType {\n return conversionMap.get(gitmoji) ?? defaultType;\n }\n}\n","import type { Commit as CommitBase } from 'conventional-commits-parser';\nimport { parserOpts } from './parser-opts.js';\nimport { CommitConventionalType } from './data.js';\nimport { GitmojiCode } from './gitmoji.js';\n\nfunction toConventionalCommitType(text: string) {\n return GitmojiCode.isValid(text)\n ? GitmojiCode.toConventionalCommitType(text)\n : CommitConventionalType.hasInstance(text)\n ? text\n : undefined;\n}\n\nexport type Commit = CommitBase;\n\nexport const recommendedBumpOpts = {\n parserOpts,\n whatBump: (commits: ReadonlyArray<Commit>) => {\n let level = 2;\n let breakings = 0;\n let features = 0;\n\n for (const { type, notes } of commits) {\n const conventionalType = type == null ? type : toConventionalCommitType(type);\n if (notes.length > 0) {\n breakings += notes.length;\n level = 0;\n } else if (conventionalType === CommitConventionalType.Feat) {\n features += 1;\n if (level === 2) {\n level = 1;\n }\n }\n }\n\n return {\n level,\n reason:\n breakings === 1\n ? `There is ${breakings} BREAKING CHANGE and ${features} features`\n : `There are ${breakings} BREAKING CHANGES and ${features} features`,\n };\n },\n};\n","import type { Context, Options as WriterOptions } from 'conventional-changelog-writer';\nimport { CommitConventionalType, Commit } from './data.js';\nimport { GitmojiCode } from './gitmoji.js';\n\nexport type Language = 'en-US';\n\nexport interface TransformConfig {\n scopeDisplayName?: Record<string, string>;\n displayTypes?: CommitConventionalType[];\n displayScopes?: string[];\n showAuthor?: boolean;\n withEmoji?: boolean;\n language?: Language;\n}\n\nexport function displayScope(scope: string | null | undefined, scopeDisplayNameMap: Record<string, string>) {\n return scope == null || scope.length === 0\n ? scopeDisplayNameMap['*']\n : scopeDisplayNameMap[scope] == null\n ? scope\n : scopeDisplayNameMap[scope];\n}\n\nexport function displayType(type: string, options: displayType.Options = {}): string {\n const { withEmoji = true, language = 'en-US' } = options;\n\n if (CommitConventionalType.hasInstance(type)) {\n const { emoji, [language]: title } = CommitConventionalType.getData(type);\n return `${withEmoji ? `${emoji} ` : ''}${title}`;\n }\n\n return type;\n}\nexport namespace displayType {\n export interface Options {\n readonly withEmoji?: boolean;\n readonly language?: Language;\n }\n}\n\nexport function createTransform(config: TransformConfig): WriterOptions.Transform.Function {\n const displayTypes = new Set(config.displayTypes == null ? CommitConventionalType.values() : config.displayTypes);\n const ignoreType = (type: string | undefined) => type == null || !displayTypes.has(type as CommitConventionalType);\n const ignoreScope = (scope: string | undefined | null) =>\n config.displayScopes == null ? false : scope != null && !config.displayScopes.includes(scope);\n\n const transform = (commit: Commit, { repository, host, owner, repoUrl }: Context): Commit | false => {\n const discard = commit.notes.length === 0;\n const issues = new Set<string>();\n const notes = commit.notes.map((note) => ({\n ...note,\n title: `${config.withEmoji === false ? '' : '๐ฅ '}BREAKING CHANGES`,\n }));\n const conventionalType =\n commit.type == null\n ? undefined\n : (CommitConventionalType.parse(commit.type) ??\n (GitmojiCode.isValid(commit.type) ? GitmojiCode.toConventionalCommitType(commit.type) : undefined));\n\n if (ignoreType(conventionalType) && discard) return false;\n\n const type =\n conventionalType == null\n ? conventionalType\n : displayType(conventionalType, {\n withEmoji: config.withEmoji,\n });\n\n if (ignoreScope(commit.scope)) return false;\n\n const scopeIntermediate = commit.scope === '*' ? '' : commit.scope;\n const scope =\n config.scopeDisplayName == null ? scopeIntermediate : displayScope(scopeIntermediate, config.scopeDisplayName);\n const hash = typeof commit.hash === 'string' ? commit.hash.slice(0, 7) : commit.hash;\n\n const subject =\n typeof commit.subject === 'string'\n ? (() => {\n let returnValue = commit.subject;\n const url = repository == null ? repoUrl : [host, owner, repository].filter(Boolean).join('/');\n if (url != null) {\n const issueURL = `${url}/issues/`;\n // Issue URLs.\n // eslint-disable-next-line unicorn/prefer-string-replace-all\n returnValue = returnValue.replace(/#(\\d+)/g, (_, issue: string) => {\n issues.add(issue);\n\n return `[#${issue}](${issueURL}${issue})`;\n });\n }\n if (host != null) {\n // User URLs.\n // eslint-disable-next-line unicorn/prefer-string-replace-all\n returnValue = returnValue.replace(/\\B@([\\da-z](?:-?[\\d/a-z]){0,38})/g, (_, username: string) =>\n username.includes('/') ? `@${username}` : `[@${username}](${host}/${username})`,\n );\n }\n return returnValue;\n })()\n : commit.subject;\n\n // Remove references that already appear in the subject\n const references = commit.references.filter((reference) => !issues.has(reference.issue));\n\n return {\n ...commit,\n type,\n hash,\n scope,\n subject,\n references,\n header: commit.header,\n body: commit.body,\n footer: commit.footer,\n merge: commit.merge,\n revert: commit.revert,\n notes,\n mentions: commit.mentions,\n };\n };\n\n return transform as unknown as WriterOptions.Transform.Function;\n}\n","/* eslint-disable n/no-sync */\nimport { readFileSync } from 'node:fs';\nimport nodePath from 'node:path';\nimport type { Options } from 'conventional-changelog-writer';\nimport { fileURLToPath } from 'node:url';\nimport { createTransform } from './transform.js';\nimport { CommitConventionalType } from './data.js';\n\nexport interface WriterOptions extends Options {}\n\nconst _dirname = typeof __dirname === 'undefined' ? nodePath.dirname(fileURLToPath(import.meta.url)) : __dirname;\nconst basePath = nodePath.resolve(nodePath.dirname(_dirname), './template');\n\nconst mainTemplate = readFileSync(`${basePath}/template.hbs`, 'utf8');\nconst headerPartial = readFileSync(`${basePath}/header.hbs`, 'utf8');\nconst commitPartial = readFileSync(`${basePath}/commit.hbs`, 'utf8');\nconst footerPartial = readFileSync(`${basePath}/footer.hbs`, 'utf8');\nconst author = readFileSync(`${basePath}/author.hbs`, 'utf8');\n\nexport const defaultDisplayTypes = CommitConventionalType.findWhere((_) => _.changelog);\n\nexport const writerOpts: WriterOptions = {\n transform: createTransform({\n displayTypes: defaultDisplayTypes,\n }),\n groupBy: 'type',\n commitGroupsSort: 'title',\n commitsSort: ['scope', 'subject'],\n noteGroupsSort: 'title',\n mainTemplate,\n headerPartial,\n // eslint-disable-next-line unicorn/prefer-string-replace-all\n commitPartial: commitPartial.replace(/{{gitUserInfo}}/g, author),\n footerPartial,\n};\n","import { gitRawCommitOpts } from './git-raw-commit-opts.js';\nimport { parserOpts } from './parser-opts.js';\nimport { recommendedBumpOpts } from './recommended-bump-opts.js';\nimport { writerOpts } from './writer-opts.js';\nimport { Emoji, GitmojiCode } from './gitmoji.js';\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n Emoji,\n GitmojiCode,\n parserOpts,\n writerOpts,\n recommendedBumpOpts,\n gitRawCommitOpts,\n};\n"]}
|
package/dist/index.js
CHANGED
|
@@ -319,7 +319,7 @@ var writerOpts = {
|
|
|
319
319
|
};
|
|
320
320
|
|
|
321
321
|
// src/index.ts
|
|
322
|
-
var
|
|
322
|
+
var index_default = {
|
|
323
323
|
Emoji,
|
|
324
324
|
GitmojiCode,
|
|
325
325
|
parserOpts,
|
|
@@ -328,6 +328,6 @@ var src_default = {
|
|
|
328
328
|
gitRawCommitOpts
|
|
329
329
|
};
|
|
330
330
|
|
|
331
|
-
export {
|
|
331
|
+
export { index_default as default };
|
|
332
332
|
//# sourceMappingURL=index.js.map
|
|
333
333
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/git-raw-commit-opts.ts","../src/parser-opts.ts","../src/data.ts","../src/gitmoji.ts","../src/recommended-bump-opts.ts","../src/transform.ts","../src/writer-opts.ts","../src/index.ts"],"names":["Emoji","GitmojiCode","toConventionalCommitType"],"mappings":";;;;;;;AAAO,IAAM,gBAAmB,GAAA;AAAA,EAC9B,MAAQ,EAAA;AACV,CAAA;;;ACEO,IAAM,UAA4B,GAAA;AAAA,EACvC,eAAe,IAAI,MAAA;AAAA;AAAA,IAEjB,CAAA,yDAAA,CAAA;AAAA,IAKA;AAAA,GACF;AAAA,EACA,oBAAsB,EAAA,CAAC,MAAQ,EAAA,OAAA,EAAS,SAAS,CAAA;AAAA,EACjD,aAAe,EAAA,oEAAA;AAAA,EACf,YAAA,EAAc,CAAC,iBAAA,EAAmB,kBAAkB,CAAA;AAAA;AAAA,EAEpD,oBAAA,EAAsB,CAAC,CAAA,MAAA,CAAA,EAAU,CAAM,IAAA,CAAA;AACzC,CAAA;;;ACCO,IAAM,0BAA0B,MAAM;AAC3C,EAAM,MAAA,UAAA,GAAa,OAAO,MAAO,CAAA;AAAA,IAC/B,KAAO,EAAA,OAAA;AAAA,IACP,EAAI,EAAA,IAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,IAAM,EAAA,MAAA;AAAA,IACN,GAAK,EAAA,KAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,UAAA;AAAA,IACV,MAAQ,EAAA,QAAA;AAAA,IACR,KAAO,EAAA,OAAA;AAAA,IACP,IAAM,EAAA,MAAA;AAAA,IACN,GAAK,EAAA,KAAA;AAAA,IACL,KAAO,EAAA;AAAA,GACR,CAAA;AACD,EAAM,MAAA,UAAA,GAAgD,OAAO,MAAO,CAAA,MAAA,CAAO,OAAO,UAAU,CAAA,CAAE,MAAM,CAAA;AACpG,EAAM,MAAA,aAAA,GAAgB,IAAI,GAAA,CAAI,UAAU,CAAA;AAExC,EAAA,MAAM,QAAuE,GAAA;AAAA,IAC3E,IAAM,EAAA;AAAA,MACJ,KAAO,EAAA,QAAA;AAAA,MACP,OAAS,EAAA,UAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,GAAK,EAAA;AAAA,MACH,KAAO,EAAA,WAAA;AAAA,MACP,OAAS,EAAA,WAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,KAAO,EAAA;AAAA,MACL,KAAO,EAAA,WAAA;AAAA,MACP,OAAS,EAAA,cAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,KAAO,EAAA;AAAA,MACL,KAAO,EAAA,WAAA;AAAA,MACP,OAAS,EAAA,QAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,EAAI,EAAA;AAAA,MACF,KAAO,EAAA,WAAA;AAAA,MACP,OAAS,EAAA,wBAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,IAAM,EAAA;AAAA,MACJ,KAAO,EAAA,WAAA;AAAA,MACP,OAAS,EAAA,eAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,IAAM,EAAA;AAAA,MACJ,KAAO,EAAA,QAAA;AAAA,MACP,OAAS,EAAA,OAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,IAAM,EAAA;AAAA,MACJ,KAAO,EAAA,QAAA;AAAA,MACP,OAAS,EAAA,0BAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,QAAU,EAAA;AAAA,MACR,KAAO,EAAA,QAAA;AAAA,MACP,OAAS,EAAA,kBAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,MAAQ,EAAA;AAAA,MACN,KAAO,EAAA,QAAA;AAAA,MACP,OAAS,EAAA,SAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,KAAO,EAAA;AAAA,MACL,KAAO,EAAA,WAAA;AAAA,MACP,OAAS,EAAA,QAAA;AAAA,MACT,SAAW,EAAA;AAAA,KACb;AAAA,IACA,GAAK,EAAA;AAAA,MACH,KAAO,EAAA,WAAA;AAAA,MACP,OAAS,EAAA,kBAAA;AAAA,MACT,SAAW,EAAA;AAAA;AACb,GACF;AAEA,EAAA,SAAS,YAAY,QAAuD,EAAA;AAC1E,IAAA,OAAO,OAAO,QAAA,KAAa,QAAY,IAAA,aAAA,CAAc,IAAI,QAA6C,CAAA;AAAA;AAGxG,EAAA,SAAS,QAAQ,UAAgE,EAAA;AAC/E,IAAA,OAAO,SAAS,UAAU,CAAA;AAAA;AAG5B,EAAA,SAAS,MAAM,QAAsD,EAAA;AACnE,IAAO,OAAA,WAAA,CAAY,QAAQ,CAAA,GAAI,QAAW,GAAA,KAAA,CAAA;AAAA;AAG5C,EAAA,SAAS,MAAS,GAAA;AAChB,IAAO,OAAA,UAAA;AAAA;AAGT,EAAA,SAAS,UAAU,SAAoF,EAAA;AACrG,IAAO,OAAA,UAAA,CAAW,OAAO,CAAC,SAAA,KAAc,UAAU,OAAQ,CAAA,SAAS,CAAC,CAAC,CAAA;AAAA;AAGvE,EAAA,OAAO,EAAE,GAAG,UAAA,EAAY,aAAa,OAAS,EAAA,MAAA,EAAQ,OAAO,SAAU,EAAA;AACzE,CAAG,GAAA;ACrHI,IAAU,KAAA;AAAA,CAAV,CAAUA,MAAV,KAAA;AACE,EAAMA,MAAAA,CAAA,iBAAiB,WAAY,EAAA;AAEnC,EAAMA,OAAA,WAAc,GAAA,OAAA;AAE3B,EAAM,MAAA,WAAA,GAAc,CAAC,KAAkB,KAAA,IAAI,OAAO,CAAI,CAAA,EAAA,KAAA,CAAM,MAAM,CAAA,CAAA,CAAA,EAAK,EAAE,CAAA;AACzE,EAAM,MAAA,eAAA,GAAkB,WAAYA,CAAAA,MAAAA,CAAA,cAAc,CAAA;AAClD,EAAM,MAAA,YAAA,GAAe,WAAYA,CAAAA,MAAAA,CAAA,WAAW,CAAA;AAKrC,EAAA,SAAS,UAAU,QAAuC,EAAA;AAC/D,IAAO,OAAA,eAAA,CAAgB,KAAK,QAAQ,CAAA;AAAA;AAD/B,EAAAA,MAAS,CAAA,SAAA,GAAA,SAAA;AAIT,EAAA,SAAS,OAAO,QAAoC,EAAA;AACzD,IAAO,OAAA,YAAA,CAAa,KAAK,QAAQ,CAAA;AAAA;AAD5B,EAAAA,MAAS,CAAA,MAAA,GAAA,MAAA;AAIT,EAAA,SAAS,YAAY,QAAqC,EAAA;AAC/D,IAAA,OAAO,MAAO,CAAA,QAAQ,CAAK,IAAA,SAAA,CAAU,QAAQ,CAAA;AAAA;AADxC,EAAAA,MAAS,CAAA,WAAA,GAAA,WAAA;AAAA,CApBD,EAAA,KAAA,KAAA,KAAA,GAAA,EAAA,CAAA,CAAA;AA0BV,IAAU,WAAA;AAAA,CAAV,CAAUC,YAAV,KAAA;AAML,EAAA,MAAM,kBAAkB,IAAI,GAAA;AAAA,IAC1B,QACG,CAAA,GAAA,CAAI,CAAC,OAAA,KAAY,QAAQ,IAAmB,CAAA,CAC5C,MAAO,CAAA,QAAA,CAAS,GAAI,CAAA,CAAC,OAAY,KAAA,OAAA,CAAQ,KAAoB,CAAC;AAAA,GACnE;AACA,EAAA,MAAM,KAAQ,GAAA;AAAA;AAAA,IAEZ,KAAA,EAAO,WAAY,CAAA,QAAA,EAAU,OAAO;AAAA,GACtC;AAEA,EAAS,SAAA,WAAA,CAAqC,MAA0B,GAA0C,EAAA;AAChH,IAAA,OAAO,IAAI,GAAA,CAAI,IAAK,CAAA,GAAA,CAAI,CAAC,OAAA,KAAY,CAAC,OAAA,CAAQ,GAAG,CAAA,EAAG,OAAO,CAAC,CAAC,CAAA;AAAA;AAGxD,EAAA,SAAS,QAAQ,QAA2C,EAAA;AACjE,IAAO,OAAA,eAAA,CAAgB,IAAI,QAAuB,CAAA;AAAA;AAD7C,EAAAA,YAAS,CAAA,OAAA,GAAA,OAAA;AAIhB,EAAA,MAAM,WAAc,GAAA,OAAA;AACpB,EAAA,MAAM,iBAAmE,MAAM;AAC7E,IAAA,MAAM,IAA8D,GAAA;AAAA,MAClE,IAAM,EAAA,CAAC,QAAK,EAAA,cAAA,EAAM,WAAI,CAAA;AAAA,MACtB,GAAA,EAAK,CAAC,WAAI,CAAA;AAAA,MACV,IAAA,EAAM,CAAC,WAAI,CAAA;AAAA,MACX,KAAA,EAAO,CAAC,WAAA,EAAM,WAAI,CAAA;AAAA,MAClB,QAAA,EAAU,CAAC,cAAA,EAAM,iBAAK,CAAA;AAAA,MACtB,IAAA,EAAM,CAAC,QAAA,EAAK,WAAI,CAAA;AAAA,MAChB,IAAA,EAAM,CAAC,cAAI,CAAA;AAAA,MACX,MAAA,EAAQ,CAAC,cAAI,CAAA;AAAA,MACb,EAAA,EAAI,CAAC,WAAA,EAAM,WAAI,CAAA;AAAA,MACf,GAAA,EAAK,CAAC,WAAI,CAAA;AAAA,MACV,OAAO,EAAC;AAAA,MACR,KAAA,EAAO,CAAC,WAAI;AAAA,KACd;AAEA,IAAA,MAAM,UAAU,KAAM,CAAA,IAAA;AAAA;AAAA,MAEpB,MAAA,CAAO,QAAQ,IAAI;AAAA,KACrB;AACA,IAAA,OAAO,IAAI,GAAA;AAAA,MACT,OAAQ,CAAA,MAAA;AAAA,QACN,CAAC,GAAK,EAAA,CAAC,UAAY,EAAA,mBAAmB,MACpC,GACG,CAAA,MAAA,CAAO,mBAAoB,CAAA,GAAA,CAAI,CAAC,cAAmB,KAAA,CAAC,gBAAgB,UAAU,CAAC,CAAC,CAEhF,CAAA,MAAA;AAAA,UACC,mBAAA,CAAoB,GAAI,CAAA,CAAC,cAAmB,KAAA;AAAA;AAAA,YAE1C,KAAM,CAAA,KAAA,CAAM,GAAI,CAAA,cAAc,CAAG,EAAA,IAAA;AAAA,YACjC;AAAA,WACD;AAAA,SACH;AAAA,QACJ;AAAC;AACH,KACF;AAAA,GACC,GAAA;AAEI,EAAA,SAASC,0BAAyB,OAA8C,EAAA;AACrF,IAAO,OAAA,aAAA,CAAc,GAAI,CAAA,OAAO,CAAK,IAAA,WAAA;AAAA;AADhC,EAAAD,aAAS,wBAAAC,GAAAA,yBAAAA;AAAA,CA/DD,EAAA,WAAA,KAAA,WAAA,GAAA,EAAA,CAAA,CAAA;;;AC1BjB,SAAS,yBAAyB,IAAc,EAAA;AAC9C,EAAA,OAAO,WAAY,CAAA,OAAA,CAAQ,IAAI,CAAA,GAC3B,WAAY,CAAA,wBAAA,CAAyB,IAAI,CAAA,GACzC,sBAAuB,CAAA,WAAA,CAAY,IAAI,CAAA,GACrC,IACA,GAAA,KAAA,CAAA;AACR;AAIO,IAAM,mBAAsB,GAAA;AAAA,EACjC,UAAA;AAAA,EACA,QAAA,EAAU,CAAC,OAAmC,KAAA;AAC5C,IAAA,IAAI,KAAQ,GAAA,CAAA;AACZ,IAAA,IAAI,SAAY,GAAA,CAAA;AAChB,IAAA,IAAI,QAAW,GAAA,CAAA;AAEf,IAAA,KAAA,MAAW,EAAE,IAAA,EAAM,KAAM,EAAA,IAAK,OAAS,EAAA;AACrC,MAAA,MAAM,gBAAmB,GAAA,IAAA,IAAQ,IAAO,GAAA,IAAA,GAAO,yBAAyB,IAAI,CAAA;AAC5E,MAAI,IAAA,KAAA,CAAM,SAAS,CAAG,EAAA;AACpB,QAAA,SAAA,IAAa,KAAM,CAAA,MAAA;AACnB,QAAQ,KAAA,GAAA,CAAA;AAAA,OACV,MAAA,IAAW,gBAAqB,KAAA,sBAAA,CAAuB,IAAM,EAAA;AAC3D,QAAY,QAAA,IAAA,CAAA;AACZ,QAAA,IAAI,UAAU,CAAG,EAAA;AACf,UAAQ,KAAA,GAAA,CAAA;AAAA;AACV;AACF;AAGF,IAAO,OAAA;AAAA,MACL,KAAA;AAAA,MACA,MAAA,EACE,SAAc,KAAA,CAAA,GACV,CAAY,SAAA,EAAA,SAAS,CAAwB,qBAAA,EAAA,QAAQ,CACrD,SAAA,CAAA,GAAA,CAAA,UAAA,EAAa,SAAS,CAAA,sBAAA,EAAyB,QAAQ,CAAA,SAAA;AAAA,KAC/D;AAAA;AAEJ,CAAA;;;AC5BO,SAAS,YAAA,CAAa,OAAkC,mBAA6C,EAAA;AAC1G,EAAA,OAAO,KAAS,IAAA,IAAA,IAAQ,KAAM,CAAA,MAAA,KAAW,IACrC,mBAAoB,CAAA,GAAG,CACvB,GAAA,mBAAA,CAAoB,KAAK,CAAA,IAAK,IAC5B,GAAA,KAAA,GACA,oBAAoB,KAAK,CAAA;AACjC;AAEO,SAAS,WAAY,CAAA,IAAA,EAAc,OAA+B,GAAA,EAAY,EAAA;AACnF,EAAA,MAAM,EAAE,SAAA,GAAY,IAAM,EAAA,QAAA,GAAW,SAAY,GAAA,OAAA;AAEjD,EAAI,IAAA,sBAAA,CAAuB,WAAY,CAAA,IAAI,CAAG,EAAA;AAC5C,IAAM,MAAA,EAAE,OAAO,CAAC,QAAQ,GAAG,KAAM,EAAA,GAAI,sBAAuB,CAAA,OAAA,CAAQ,IAAI,CAAA;AACxE,IAAA,OAAO,GAAG,SAAY,GAAA,CAAA,EAAG,KAAK,CAAM,CAAA,CAAA,GAAA,EAAE,GAAG,KAAK,CAAA,CAAA;AAAA;AAGhD,EAAO,OAAA,IAAA;AACT;AAQO,SAAS,gBAAgB,MAA2D,EAAA;AACzF,EAAM,MAAA,YAAA,GAAe,IAAI,GAAA,CAAI,MAAO,CAAA,YAAA,IAAgB,OAAO,sBAAuB,CAAA,MAAA,EAAW,GAAA,MAAA,CAAO,YAAY,CAAA;AAChH,EAAM,MAAA,UAAA,GAAa,CAAC,IAA6B,KAAA,IAAA,IAAQ,QAAQ,CAAC,YAAA,CAAa,IAAI,IAA8B,CAAA;AACjH,EAAA,MAAM,WAAc,GAAA,CAAC,KACnB,KAAA,MAAA,CAAO,aAAiB,IAAA,IAAA,GAAO,KAAQ,GAAA,KAAA,IAAS,IAAQ,IAAA,CAAC,MAAO,CAAA,aAAA,CAAc,SAAS,KAAK,CAAA;AAE9F,EAAM,MAAA,SAAA,GAAY,CAAC,MAAgB,EAAA,EAAE,YAAY,IAAM,EAAA,KAAA,EAAO,SAAuC,KAAA;AACnG,IAAM,MAAA,OAAA,GAAU,MAAO,CAAA,KAAA,CAAM,MAAW,KAAA,CAAA;AACxC,IAAM,MAAA,MAAA,uBAAa,GAAY,EAAA;AAC/B,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAO,KAAM,CAAA,GAAA,CAAI,CAAC,IAAU,MAAA;AAAA,MACxC,GAAG,IAAA;AAAA,MACH,OAAO,CAAG,EAAA,MAAA,CAAO,SAAc,KAAA,KAAA,GAAQ,KAAK,YAAK,CAAA,gBAAA;AAAA,KACjD,CAAA,CAAA;AACF,IAAA,MAAM,mBACJ,MAAO,CAAA,IAAA,IAAQ,OACX,KACC,CAAA,GAAA,sBAAA,CAAuB,MAAM,MAAO,CAAA,IAAI,MACxC,WAAY,CAAA,OAAA,CAAQ,OAAO,IAAI,CAAA,GAAI,YAAY,wBAAyB,CAAA,MAAA,CAAO,IAAI,CAAI,GAAA,KAAA,CAAA,CAAA;AAE9F,IAAA,IAAI,UAAW,CAAA,gBAAgB,CAAK,IAAA,OAAA,EAAgB,OAAA,KAAA;AAEpD,IAAA,MAAM,IACJ,GAAA,gBAAA,IAAoB,IAChB,GAAA,gBAAA,GACA,YAAY,gBAAkB,EAAA;AAAA,MAC5B,WAAW,MAAO,CAAA;AAAA,KACnB,CAAA;AAEP,IAAA,IAAI,WAAY,CAAA,MAAA,CAAO,KAAK,CAAA,EAAU,OAAA,KAAA;AAEtC,IAAA,MAAM,iBAAoB,GAAA,MAAA,CAAO,KAAU,KAAA,GAAA,GAAM,KAAK,MAAO,CAAA,KAAA;AAC7D,IAAM,MAAA,KAAA,GACJ,OAAO,gBAAoB,IAAA,IAAA,GAAO,oBAAoB,YAAa,CAAA,iBAAA,EAAmB,OAAO,gBAAgB,CAAA;AAC/G,IAAM,MAAA,IAAA,GAAO,OAAO,MAAA,CAAO,IAAS,KAAA,QAAA,GAAW,MAAO,CAAA,IAAA,CAAK,KAAM,CAAA,CAAA,EAAG,CAAC,CAAA,GAAI,MAAO,CAAA,IAAA;AAEhF,IAAA,MAAM,OACJ,GAAA,OAAO,MAAO,CAAA,OAAA,KAAY,YACrB,MAAM;AACL,MAAA,IAAI,cAAc,MAAO,CAAA,OAAA;AACzB,MAAA,MAAM,GAAM,GAAA,UAAA,IAAc,IAAO,GAAA,OAAA,GAAU,CAAC,IAAA,EAAM,KAAO,EAAA,UAAU,CAAE,CAAA,MAAA,CAAO,OAAO,CAAA,CAAE,KAAK,GAAG,CAAA;AAC7F,MAAA,IAAI,OAAO,IAAM,EAAA;AACf,QAAM,MAAA,QAAA,GAAW,GAAG,GAAG,CAAA,QAAA,CAAA;AAGvB,QAAA,WAAA,GAAc,WAAY,CAAA,OAAA,CAAQ,SAAW,EAAA,CAAC,GAAG,KAAkB,KAAA;AACjE,UAAA,MAAA,CAAO,IAAI,KAAK,CAAA;AAEhB,UAAA,OAAO,CAAK,EAAA,EAAA,KAAK,CAAK,EAAA,EAAA,QAAQ,GAAG,KAAK,CAAA,CAAA,CAAA;AAAA,SACvC,CAAA;AAAA;AAEH,MAAA,IAAI,QAAQ,IAAM,EAAA;AAGhB,QAAA,WAAA,GAAc,WAAY,CAAA,OAAA;AAAA,UAAQ,mCAAA;AAAA,UAAqC,CAAC,CAAA,EAAG,QACzE,KAAA,QAAA,CAAS,SAAS,GAAG,CAAA,GAAI,CAAI,CAAA,EAAA,QAAQ,KAAK,CAAK,EAAA,EAAA,QAAQ,CAAK,EAAA,EAAA,IAAI,IAAI,QAAQ,CAAA,CAAA;AAAA,SAC9E;AAAA;AAEF,MAAO,OAAA,WAAA;AAAA,KACT,MACA,MAAO,CAAA,OAAA;AAGb,IAAM,MAAA,UAAA,GAAa,MAAO,CAAA,UAAA,CAAW,MAAO,CAAA,CAAC,SAAc,KAAA,CAAC,MAAO,CAAA,GAAA,CAAI,SAAU,CAAA,KAAK,CAAC,CAAA;AAEvF,IAAO,OAAA;AAAA,MACL,GAAG,MAAA;AAAA,MACH,IAAA;AAAA,MACA,IAAA;AAAA,MACA,KAAA;AAAA,MACA,OAAA;AAAA,MACA,UAAA;AAAA,MACA,QAAQ,MAAO,CAAA,MAAA;AAAA,MACf,MAAM,MAAO,CAAA,IAAA;AAAA,MACb,QAAQ,MAAO,CAAA,MAAA;AAAA,MACf,OAAO,MAAO,CAAA,KAAA;AAAA,MACd,QAAQ,MAAO,CAAA,MAAA;AAAA,MACf,KAAA;AAAA,MACA,UAAU,MAAO,CAAA;AAAA,KACnB;AAAA,GACF;AAEA,EAAO,OAAA,SAAA;AACT;;;ACjHA,IAAM,QAAA,GAAW,OAAO,SAAA,KAAc,WAAc,GAAA,QAAA,CAAS,QAAQ,aAAc,CAAA,MAAA,CAAA,IAAA,CAAY,GAAG,CAAC,CAAI,GAAA,SAAA;AACvG,IAAM,WAAW,QAAS,CAAA,OAAA,CAAQ,SAAS,OAAQ,CAAA,QAAQ,GAAG,YAAY,CAAA;AAE1E,IAAM,YAAe,GAAA,YAAA,CAAa,CAAG,EAAA,QAAQ,iBAAiB,MAAM,CAAA;AACpE,IAAM,aAAgB,GAAA,YAAA,CAAa,CAAG,EAAA,QAAQ,eAAe,MAAM,CAAA;AACnE,IAAM,aAAgB,GAAA,YAAA,CAAa,CAAG,EAAA,QAAQ,eAAe,MAAM,CAAA;AACnE,IAAM,aAAgB,GAAA,YAAA,CAAa,CAAG,EAAA,QAAQ,eAAe,MAAM,CAAA;AACnE,IAAM,MAAS,GAAA,YAAA,CAAa,CAAG,EAAA,QAAQ,eAAe,MAAM,CAAA;AAErD,IAAM,sBAAsB,sBAAuB,CAAA,SAAA,CAAU,CAAC,CAAA,KAAM,EAAE,SAAS,CAAA;AAE/E,IAAM,UAA4B,GAAA;AAAA,EACvC,WAAW,eAAgB,CAAA;AAAA,IACzB,YAAc,EAAA;AAAA,GACf,CAAA;AAAA,EACD,OAAS,EAAA,MAAA;AAAA,EACT,gBAAkB,EAAA,OAAA;AAAA,EAClB,WAAA,EAAa,CAAC,OAAA,EAAS,SAAS,CAAA;AAAA,EAChC,cAAgB,EAAA,OAAA;AAAA,EAChB,YAAA;AAAA,EACA,aAAA;AAAA;AAAA,EAEA,aAAe,EAAA,aAAA,CAAc,OAAQ,CAAA,kBAAA,EAAoB,MAAM,CAAA;AAAA,EAC/D;AACF,CAAA;;;AC1BA,IAAO,WAAQ,GAAA;AAAA,EACb,KAAA;AAAA,EACA,WAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA;AAAA,EACA,mBAAA;AAAA,EACA;AACF","file":"index.js","sourcesContent":["export const gitRawCommitOpts = {\n format: '%B%n-hash-%n%H%n-gitTags-%n%d%n-committerDate-%n%ci%n-authorName-%n%an%n-authorEmail-%n%ae',\n};\n","import type { Options } from 'conventional-commits-parser';\n\nexport interface ParserOptions extends Options {}\n\nexport const parserOpts: ParserOptions = {\n headerPattern: new RegExp(\n // Type\n `^(?<type>\\\\S*)? ` +\n // Scope\n `(?:\\\\((?<scope>.*)\\\\):? )?` +\n // Subject\n `(?<subject>.*)$`,\n 'u',\n ),\n headerCorrespondence: ['type', 'scope', 'subject'],\n revertPattern: /^(?:revert|revert:)\\s\"?([\\S\\s]+?)\"?\\s*this reverts commit (\\w*)\\./i,\n noteKeywords: ['BREAKING CHANGE', 'BREAKING CHANGES'],\n // revertPattern: /revert:\\s([\\S\\s]*?)\\s*this reverts commit (\\w*)\\./i,\n revertCorrespondence: [`header`, `hash`],\n};\n","import type { Commit as CommitDefault } from 'conventional-commits-parser';\n\nexport type Commit = CommitDefault<never> & {\n hash?: string;\n};\n\nexport type CommitConventionalType =\n | 'build'\n | 'ci'\n | 'docs'\n | 'feat'\n | 'fix'\n | 'perf'\n | 'refactor'\n | 'revert'\n | 'style'\n | 'test'\n | 'wip'\n | 'chore';\n\nexport const CommitConventionalType = (() => {\n const enumObject = Object.freeze({\n Build: 'build',\n CI: 'ci',\n Docs: 'docs',\n Feat: 'feat',\n Fix: 'fix',\n Perf: 'perf',\n Refactor: 'refactor',\n Revert: 'revert',\n Style: 'style',\n Test: 'test',\n WIP: 'wip',\n Chore: 'chore',\n });\n const enumValues: readonly CommitConventionalType[] = Object.freeze(Object.values(enumObject).sort());\n const enumValuesSet = new Set(enumValues);\n\n const typeData: Record<CommitConventionalType, CommitConventionalTypeData> = {\n feat: {\n emoji: 'โจ',\n 'en-US': 'Features',\n changelog: true,\n },\n fix: {\n emoji: '๐',\n 'en-US': 'Bug Fixes',\n changelog: true,\n },\n build: {\n emoji: '๐ท',\n 'en-US': 'Build System',\n changelog: false,\n },\n chore: {\n emoji: '๐ซ',\n 'en-US': 'Chores',\n changelog: false,\n },\n ci: {\n emoji: '๐ง',\n 'en-US': 'Continuous Integration',\n changelog: false,\n },\n docs: {\n emoji: '๐',\n 'en-US': 'Documentation',\n changelog: false,\n },\n test: {\n emoji: 'โ
',\n 'en-US': 'Tests',\n changelog: false,\n },\n perf: {\n emoji: 'โก',\n 'en-US': 'Performance Improvements',\n changelog: true,\n },\n refactor: {\n emoji: 'โป',\n 'en-US': 'Code Refactoring',\n changelog: false,\n },\n revert: {\n emoji: 'โช',\n 'en-US': 'Reverts',\n changelog: true,\n },\n style: {\n emoji: '๐',\n 'en-US': 'Styles',\n changelog: false,\n },\n wip: {\n emoji: '๐ง',\n 'en-US': 'Work in progress',\n changelog: false,\n },\n };\n\n function hasInstance(anyValue: unknown): anyValue is CommitConventionalType {\n return typeof anyValue === 'string' && enumValuesSet.has(anyValue as unknown as CommitConventionalType);\n }\n\n function getData(commitType: CommitConventionalType): CommitConventionalTypeData {\n return typeData[commitType];\n }\n\n function parse(anyValue: string): CommitConventionalType | undefined {\n return hasInstance(anyValue) ? anyValue : undefined;\n }\n\n function values() {\n return enumValues;\n }\n\n function findWhere(predicate: (data: CommitConventionalTypeData) => boolean): CommitConventionalType[] {\n return enumValues.filter((enumValue) => predicate(getData(enumValue)));\n }\n\n return { ...enumObject, hasInstance, getData, values, parse, findWhere };\n})();\n\nexport interface CommitConventionalTypeData {\n emoji: string;\n 'en-US': string;\n changelog: boolean;\n}\n","import emojiRegexp from 'emoji-regex';\nimport { type Gitmoji, gitmojis } from 'gitmojis';\nimport type { CommitConventionalType } from './data.js';\n\nexport type Emoji = Emoji.Unicode | Emoji.Text;\nexport namespace Emoji {\n export const reEmojiUnicode = emojiRegexp();\n\n export const reEmojiText = /:\\w*:/;\n\n const reMatchOnly = (input: RegExp) => new RegExp(`^${input.source}$`, '');\n const _reEmojiUnicode = reMatchOnly(reEmojiUnicode);\n const _reEmojiText = reMatchOnly(reEmojiText);\n\n export type Unicode = string & { '@@EmojiStyle': 'unicode' };\n export type Text = string & { '@@EmojiStyle': 'text' };\n\n export function isUnicode(anyValue: string): anyValue is Unicode {\n return _reEmojiUnicode.test(anyValue);\n }\n\n export function isText(anyValue: string): anyValue is Text {\n return _reEmojiText.test(anyValue);\n }\n\n export function hasInstance(anyValue: string): anyValue is Emoji {\n return isText(anyValue) || isUnicode(anyValue);\n }\n}\n\nexport type GitmojiCode = Emoji & { '@@Gitmoji': true };\nexport namespace GitmojiCode {\n export type Unicode = Emoji.Unicode & { '@@Gitmoji': true };\n export type Emoji = Emoji.Text & { '@@Gitmoji': true };\n\n // export const reEmoji = emojiRegexp();\n\n const allGitmojiCodes = new Set(\n gitmojis\n .map((gitmoji) => gitmoji.code as GitmojiCode)\n .concat(gitmojis.map((gitmoji) => gitmoji.emoji as GitmojiCode)),\n );\n const index = {\n // code: createIndex(gitmojis, 'code'),\n emoji: createIndex(gitmojis, 'emoji'),\n };\n\n function createIndex<K extends keyof Gitmoji>(list: readonly Gitmoji[], key: K): ReadonlyMap<Gitmoji[K], Gitmoji> {\n return new Map(list.map((gitmoji) => [gitmoji[key], gitmoji]));\n }\n\n export function isValid(anyValue: string): anyValue is GitmojiCode {\n return allGitmojiCodes.has(anyValue as GitmojiCode);\n }\n\n const defaultType = 'chore';\n const conversionMap: ReadonlyMap<GitmojiCode, CommitConventionalType> = (() => {\n const data: Record<CommitConventionalType, GitmojiCode.Unicode[]> = {\n feat: ['โจ', 'โฟ๏ธ', '๐ธ'] as GitmojiCode.Unicode[],\n fix: ['๐'] as GitmojiCode.Unicode[],\n docs: ['๐'] as GitmojiCode.Unicode[],\n style: ['๐จ', '๐จ'] as GitmojiCode.Unicode[],\n refactor: ['โป๏ธ', '๐๏ธ'] as GitmojiCode.Unicode[],\n test: ['โ
', '๐งช'] as GitmojiCode.Unicode[],\n perf: ['โก๏ธ'] as GitmojiCode.Unicode[],\n revert: ['โช๏ธ'] as GitmojiCode.Unicode[],\n ci: ['๐ท', '๐'] as GitmojiCode.Unicode[],\n wip: ['๐ง'] as GitmojiCode.Unicode[],\n build: [] as GitmojiCode.Unicode[],\n chore: ['๐ง'] as GitmojiCode.Unicode[],\n };\n\n const entries = Array.from<[CommitConventionalType, GitmojiCode.Unicode[]]>(\n // @ts-ignore entries are not well typed\n Object.entries(data),\n );\n return new Map(\n entries.reduce<Array<[GitmojiCode, CommitConventionalType]>>(\n (acc, [commitType, gitmojiUnicodeArray]) =>\n acc\n .concat(gitmojiUnicodeArray.map((gitmojiUnicode) => [gitmojiUnicode, commitType]))\n\n .concat(\n gitmojiUnicodeArray.map((gitmojiUnicode) => [\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion, @typescript-eslint/no-non-null-asserted-optional-chain\n index.emoji.get(gitmojiUnicode)?.code! as GitmojiCode,\n commitType,\n ]),\n ),\n [],\n ),\n );\n })();\n\n export function toConventionalCommitType(gitmoji: GitmojiCode): CommitConventionalType {\n return conversionMap.get(gitmoji) ?? defaultType;\n }\n}\n","import type { Commit as CommitBase } from 'conventional-commits-parser';\nimport { parserOpts } from './parser-opts.js';\nimport { CommitConventionalType } from './data.js';\nimport { GitmojiCode } from './gitmoji.js';\n\nfunction toConventionalCommitType(text: string) {\n return GitmojiCode.isValid(text)\n ? GitmojiCode.toConventionalCommitType(text)\n : CommitConventionalType.hasInstance(text)\n ? text\n : undefined;\n}\n\nexport type Commit = CommitBase;\n\nexport const recommendedBumpOpts = {\n parserOpts,\n whatBump: (commits: ReadonlyArray<Commit>) => {\n let level = 2;\n let breakings = 0;\n let features = 0;\n\n for (const { type, notes } of commits) {\n const conventionalType = type == null ? type : toConventionalCommitType(type);\n if (notes.length > 0) {\n breakings += notes.length;\n level = 0;\n } else if (conventionalType === CommitConventionalType.Feat) {\n features += 1;\n if (level === 2) {\n level = 1;\n }\n }\n }\n\n return {\n level,\n reason:\n breakings === 1\n ? `There is ${breakings} BREAKING CHANGE and ${features} features`\n : `There are ${breakings} BREAKING CHANGES and ${features} features`,\n };\n },\n};\n","import type { Context, Options as WriterOptions } from 'conventional-changelog-writer';\nimport { CommitConventionalType, Commit } from './data.js';\nimport { GitmojiCode } from './gitmoji.js';\n\nexport type Language = 'en-US';\n\nexport interface TransformConfig {\n scopeDisplayName?: Record<string, string>;\n displayTypes?: CommitConventionalType[];\n displayScopes?: string[];\n showAuthor?: boolean;\n withEmoji?: boolean;\n language?: Language;\n}\n\nexport function displayScope(scope: string | null | undefined, scopeDisplayNameMap: Record<string, string>) {\n return scope == null || scope.length === 0\n ? scopeDisplayNameMap['*']\n : scopeDisplayNameMap[scope] == null\n ? scope\n : scopeDisplayNameMap[scope];\n}\n\nexport function displayType(type: string, options: displayType.Options = {}): string {\n const { withEmoji = true, language = 'en-US' } = options;\n\n if (CommitConventionalType.hasInstance(type)) {\n const { emoji, [language]: title } = CommitConventionalType.getData(type);\n return `${withEmoji ? `${emoji} ` : ''}${title}`;\n }\n\n return type;\n}\nexport namespace displayType {\n export interface Options {\n readonly withEmoji?: boolean;\n readonly language?: Language;\n }\n}\n\nexport function createTransform(config: TransformConfig): WriterOptions.Transform.Function {\n const displayTypes = new Set(config.displayTypes == null ? CommitConventionalType.values() : config.displayTypes);\n const ignoreType = (type: string | undefined) => type == null || !displayTypes.has(type as CommitConventionalType);\n const ignoreScope = (scope: string | undefined | null) =>\n config.displayScopes == null ? false : scope != null && !config.displayScopes.includes(scope);\n\n const transform = (commit: Commit, { repository, host, owner, repoUrl }: Context): Commit | false => {\n const discard = commit.notes.length === 0;\n const issues = new Set<string>();\n const notes = commit.notes.map((note) => ({\n ...note,\n title: `${config.withEmoji === false ? '' : '๐ฅ '}BREAKING CHANGES`,\n }));\n const conventionalType =\n commit.type == null\n ? undefined\n : (CommitConventionalType.parse(commit.type) ??\n (GitmojiCode.isValid(commit.type) ? GitmojiCode.toConventionalCommitType(commit.type) : undefined));\n\n if (ignoreType(conventionalType) && discard) return false;\n\n const type =\n conventionalType == null\n ? conventionalType\n : displayType(conventionalType, {\n withEmoji: config.withEmoji,\n });\n\n if (ignoreScope(commit.scope)) return false;\n\n const scopeIntermediate = commit.scope === '*' ? '' : commit.scope;\n const scope =\n config.scopeDisplayName == null ? scopeIntermediate : displayScope(scopeIntermediate, config.scopeDisplayName);\n const hash = typeof commit.hash === 'string' ? commit.hash.slice(0, 7) : commit.hash;\n\n const subject =\n typeof commit.subject === 'string'\n ? (() => {\n let returnValue = commit.subject;\n const url = repository == null ? repoUrl : [host, owner, repository].filter(Boolean).join('/');\n if (url != null) {\n const issueURL = `${url}/issues/`;\n // Issue URLs.\n // eslint-disable-next-line unicorn/prefer-string-replace-all\n returnValue = returnValue.replace(/#(\\d+)/g, (_, issue: string) => {\n issues.add(issue);\n\n return `[#${issue}](${issueURL}${issue})`;\n });\n }\n if (host != null) {\n // User URLs.\n // eslint-disable-next-line unicorn/prefer-string-replace-all\n returnValue = returnValue.replace(/\\B@([\\da-z](?:-?[\\d/a-z]){0,38})/g, (_, username: string) =>\n username.includes('/') ? `@${username}` : `[@${username}](${host}/${username})`,\n );\n }\n return returnValue;\n })()\n : commit.subject;\n\n // Remove references that already appear in the subject\n const references = commit.references.filter((reference) => !issues.has(reference.issue));\n\n return {\n ...commit,\n type,\n hash,\n scope,\n subject,\n references,\n header: commit.header,\n body: commit.body,\n footer: commit.footer,\n merge: commit.merge,\n revert: commit.revert,\n notes,\n mentions: commit.mentions,\n };\n };\n\n return transform as unknown as WriterOptions.Transform.Function;\n}\n","import { readFileSync } from 'node:fs';\nimport nodePath from 'node:path';\nimport type { Options } from 'conventional-changelog-writer';\nimport { fileURLToPath } from 'node:url';\nimport { createTransform } from './transform.js';\nimport { CommitConventionalType } from './data.js';\n\nexport interface WriterOptions extends Options {}\n\nconst _dirname = typeof __dirname === 'undefined' ? nodePath.dirname(fileURLToPath(import.meta.url)) : __dirname;\nconst basePath = nodePath.resolve(nodePath.dirname(_dirname), './template');\n\nconst mainTemplate = readFileSync(`${basePath}/template.hbs`, 'utf8');\nconst headerPartial = readFileSync(`${basePath}/header.hbs`, 'utf8');\nconst commitPartial = readFileSync(`${basePath}/commit.hbs`, 'utf8');\nconst footerPartial = readFileSync(`${basePath}/footer.hbs`, 'utf8');\nconst author = readFileSync(`${basePath}/author.hbs`, 'utf8');\n\nexport const defaultDisplayTypes = CommitConventionalType.findWhere((_) => _.changelog);\n\nexport const writerOpts: WriterOptions = {\n transform: createTransform({\n displayTypes: defaultDisplayTypes,\n }),\n groupBy: 'type',\n commitGroupsSort: 'title',\n commitsSort: ['scope', 'subject'],\n noteGroupsSort: 'title',\n mainTemplate,\n headerPartial,\n // eslint-disable-next-line unicorn/prefer-string-replace-all\n commitPartial: commitPartial.replace(/{{gitUserInfo}}/g, author),\n footerPartial,\n};\n","import { gitRawCommitOpts } from './git-raw-commit-opts.js';\nimport { parserOpts } from './parser-opts.js';\nimport { recommendedBumpOpts } from './recommended-bump-opts.js';\nimport { writerOpts } from './writer-opts.js';\nimport { Emoji, GitmojiCode } from './gitmoji.js';\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n Emoji,\n GitmojiCode,\n parserOpts,\n writerOpts,\n recommendedBumpOpts,\n gitRawCommitOpts,\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/git-raw-commit-opts.ts","../src/parser-opts.ts","../src/data.ts","../src/gitmoji.ts","../src/recommended-bump-opts.ts","../src/transform.ts","../src/writer-opts.ts","../src/index.ts"],"names":["Emoji","GitmojiCode","toConventionalCommitType"],"mappings":"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","file":"index.js","sourcesContent":["export const gitRawCommitOpts = {\n format: '%B%n-hash-%n%H%n-gitTags-%n%d%n-committerDate-%n%ci%n-authorName-%n%an%n-authorEmail-%n%ae',\n};\n","import type { Options } from 'conventional-commits-parser';\n\nexport interface ParserOptions extends Options {}\n\nexport const parserOpts: ParserOptions = {\n headerPattern: new RegExp(\n // Type\n `^(?<type>\\\\S*)? ` +\n // Scope\n `(?:\\\\((?<scope>.*)\\\\):? )?` +\n // Subject\n `(?<subject>.*)$`,\n 'u',\n ),\n headerCorrespondence: ['type', 'scope', 'subject'],\n revertPattern: /^(?:revert|revert:)\\s\"?([\\S\\s]+?)\"?\\s*this reverts commit (\\w*)\\./i,\n noteKeywords: ['BREAKING CHANGE', 'BREAKING CHANGES'],\n // revertPattern: /revert:\\s([\\S\\s]*?)\\s*this reverts commit (\\w*)\\./i,\n revertCorrespondence: [`header`, `hash`],\n};\n","import type { Commit as CommitDefault } from 'conventional-commits-parser';\n\nexport type Commit = CommitDefault<never> & {\n hash?: string;\n};\n\nexport type CommitConventionalType =\n | 'build'\n | 'ci'\n | 'docs'\n | 'feat'\n | 'fix'\n | 'perf'\n | 'refactor'\n | 'revert'\n | 'style'\n | 'test'\n | 'wip'\n | 'chore';\n\nexport const CommitConventionalType = (() => {\n const enumObject = Object.freeze({\n Build: 'build',\n CI: 'ci',\n Docs: 'docs',\n Feat: 'feat',\n Fix: 'fix',\n Perf: 'perf',\n Refactor: 'refactor',\n Revert: 'revert',\n Style: 'style',\n Test: 'test',\n WIP: 'wip',\n Chore: 'chore',\n });\n const enumValues: readonly CommitConventionalType[] = Object.freeze(Object.values(enumObject).sort());\n const enumValuesSet = new Set(enumValues);\n\n const typeData: Record<CommitConventionalType, CommitConventionalTypeData> = {\n feat: {\n emoji: 'โจ',\n 'en-US': 'Features',\n changelog: true,\n },\n fix: {\n emoji: '๐',\n 'en-US': 'Bug Fixes',\n changelog: true,\n },\n build: {\n emoji: '๐ท',\n 'en-US': 'Build System',\n changelog: false,\n },\n chore: {\n emoji: '๐ซ',\n 'en-US': 'Chores',\n changelog: false,\n },\n ci: {\n emoji: '๐ง',\n 'en-US': 'Continuous Integration',\n changelog: false,\n },\n docs: {\n emoji: '๐',\n 'en-US': 'Documentation',\n changelog: false,\n },\n test: {\n emoji: 'โ
',\n 'en-US': 'Tests',\n changelog: false,\n },\n perf: {\n emoji: 'โก',\n 'en-US': 'Performance Improvements',\n changelog: true,\n },\n refactor: {\n emoji: 'โป',\n 'en-US': 'Code Refactoring',\n changelog: false,\n },\n revert: {\n emoji: 'โช',\n 'en-US': 'Reverts',\n changelog: true,\n },\n style: {\n emoji: '๐',\n 'en-US': 'Styles',\n changelog: false,\n },\n wip: {\n emoji: '๐ง',\n 'en-US': 'Work in progress',\n changelog: false,\n },\n };\n\n function hasInstance(anyValue: unknown): anyValue is CommitConventionalType {\n return typeof anyValue === 'string' && enumValuesSet.has(anyValue as unknown as CommitConventionalType);\n }\n\n function getData(commitType: CommitConventionalType): CommitConventionalTypeData {\n return typeData[commitType];\n }\n\n function parse(anyValue: string): CommitConventionalType | undefined {\n return hasInstance(anyValue) ? anyValue : undefined;\n }\n\n function values() {\n return enumValues;\n }\n\n function findWhere(predicate: (data: CommitConventionalTypeData) => boolean): CommitConventionalType[] {\n return enumValues.filter((enumValue) => predicate(getData(enumValue)));\n }\n\n return { ...enumObject, hasInstance, getData, values, parse, findWhere };\n})();\n\nexport interface CommitConventionalTypeData {\n emoji: string;\n 'en-US': string;\n changelog: boolean;\n}\n","import emojiRegexp from 'emoji-regex';\nimport { type Gitmoji, gitmojis } from 'gitmojis';\nimport type { CommitConventionalType } from './data.js';\n\nexport type Emoji = Emoji.Unicode | Emoji.Text;\nexport namespace Emoji {\n export const reEmojiUnicode = emojiRegexp();\n\n export const reEmojiText = /:\\w*:/;\n\n const reMatchOnly = (input: RegExp) => new RegExp(`^${input.source}$`, '');\n const _reEmojiUnicode = reMatchOnly(reEmojiUnicode);\n const _reEmojiText = reMatchOnly(reEmojiText);\n\n export type Unicode = string & { '@@EmojiStyle': 'unicode' };\n export type Text = string & { '@@EmojiStyle': 'text' };\n\n export function isUnicode(anyValue: string): anyValue is Unicode {\n return _reEmojiUnicode.test(anyValue);\n }\n\n export function isText(anyValue: string): anyValue is Text {\n return _reEmojiText.test(anyValue);\n }\n\n export function hasInstance(anyValue: string): anyValue is Emoji {\n return isText(anyValue) || isUnicode(anyValue);\n }\n}\n\nexport type GitmojiCode = Emoji & { '@@Gitmoji': true };\nexport namespace GitmojiCode {\n export type Unicode = Emoji.Unicode & { '@@Gitmoji': true };\n export type Emoji = Emoji.Text & { '@@Gitmoji': true };\n\n // export const reEmoji = emojiRegexp();\n\n const allGitmojiCodes = new Set(\n gitmojis\n .map((gitmoji) => gitmoji.code as GitmojiCode)\n .concat(gitmojis.map((gitmoji) => gitmoji.emoji as GitmojiCode)),\n );\n const index = {\n // code: createIndex(gitmojis, 'code'),\n emoji: createIndex(gitmojis, 'emoji'),\n };\n\n function createIndex<K extends keyof Gitmoji>(list: readonly Gitmoji[], key: K): ReadonlyMap<Gitmoji[K], Gitmoji> {\n return new Map(list.map((gitmoji) => [gitmoji[key], gitmoji]));\n }\n\n export function isValid(anyValue: string): anyValue is GitmojiCode {\n return allGitmojiCodes.has(anyValue as GitmojiCode);\n }\n\n const defaultType = 'chore';\n const conversionMap: ReadonlyMap<GitmojiCode, CommitConventionalType> = (() => {\n const data: Record<CommitConventionalType, GitmojiCode.Unicode[]> = {\n feat: ['โจ', 'โฟ๏ธ', '๐ธ'] as GitmojiCode.Unicode[],\n fix: ['๐'] as GitmojiCode.Unicode[],\n docs: ['๐'] as GitmojiCode.Unicode[],\n style: ['๐จ', '๐จ'] as GitmojiCode.Unicode[],\n refactor: ['โป๏ธ', '๐๏ธ'] as GitmojiCode.Unicode[],\n test: ['โ
', '๐งช'] as GitmojiCode.Unicode[],\n perf: ['โก๏ธ'] as GitmojiCode.Unicode[],\n revert: ['โช๏ธ'] as GitmojiCode.Unicode[],\n ci: ['๐ท', '๐'] as GitmojiCode.Unicode[],\n wip: ['๐ง'] as GitmojiCode.Unicode[],\n build: [] as GitmojiCode.Unicode[],\n chore: ['๐ง'] as GitmojiCode.Unicode[],\n };\n\n const entries = Array.from<[CommitConventionalType, GitmojiCode.Unicode[]]>(\n // @ts-ignore entries are not well typed\n Object.entries(data),\n );\n return new Map(\n entries.reduce<Array<[GitmojiCode, CommitConventionalType]>>(\n (acc, [commitType, gitmojiUnicodeArray]) =>\n acc\n .concat(gitmojiUnicodeArray.map((gitmojiUnicode) => [gitmojiUnicode, commitType]))\n\n .concat(\n gitmojiUnicodeArray.map((gitmojiUnicode) => [\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion, @typescript-eslint/no-non-null-asserted-optional-chain\n index.emoji.get(gitmojiUnicode)?.code! as GitmojiCode,\n commitType,\n ]),\n ),\n [],\n ),\n );\n })();\n\n export function toConventionalCommitType(gitmoji: GitmojiCode): CommitConventionalType {\n return conversionMap.get(gitmoji) ?? defaultType;\n }\n}\n","import type { Commit as CommitBase } from 'conventional-commits-parser';\nimport { parserOpts } from './parser-opts.js';\nimport { CommitConventionalType } from './data.js';\nimport { GitmojiCode } from './gitmoji.js';\n\nfunction toConventionalCommitType(text: string) {\n return GitmojiCode.isValid(text)\n ? GitmojiCode.toConventionalCommitType(text)\n : CommitConventionalType.hasInstance(text)\n ? text\n : undefined;\n}\n\nexport type Commit = CommitBase;\n\nexport const recommendedBumpOpts = {\n parserOpts,\n whatBump: (commits: ReadonlyArray<Commit>) => {\n let level = 2;\n let breakings = 0;\n let features = 0;\n\n for (const { type, notes } of commits) {\n const conventionalType = type == null ? type : toConventionalCommitType(type);\n if (notes.length > 0) {\n breakings += notes.length;\n level = 0;\n } else if (conventionalType === CommitConventionalType.Feat) {\n features += 1;\n if (level === 2) {\n level = 1;\n }\n }\n }\n\n return {\n level,\n reason:\n breakings === 1\n ? `There is ${breakings} BREAKING CHANGE and ${features} features`\n : `There are ${breakings} BREAKING CHANGES and ${features} features`,\n };\n },\n};\n","import type { Context, Options as WriterOptions } from 'conventional-changelog-writer';\nimport { CommitConventionalType, Commit } from './data.js';\nimport { GitmojiCode } from './gitmoji.js';\n\nexport type Language = 'en-US';\n\nexport interface TransformConfig {\n scopeDisplayName?: Record<string, string>;\n displayTypes?: CommitConventionalType[];\n displayScopes?: string[];\n showAuthor?: boolean;\n withEmoji?: boolean;\n language?: Language;\n}\n\nexport function displayScope(scope: string | null | undefined, scopeDisplayNameMap: Record<string, string>) {\n return scope == null || scope.length === 0\n ? scopeDisplayNameMap['*']\n : scopeDisplayNameMap[scope] == null\n ? scope\n : scopeDisplayNameMap[scope];\n}\n\nexport function displayType(type: string, options: displayType.Options = {}): string {\n const { withEmoji = true, language = 'en-US' } = options;\n\n if (CommitConventionalType.hasInstance(type)) {\n const { emoji, [language]: title } = CommitConventionalType.getData(type);\n return `${withEmoji ? `${emoji} ` : ''}${title}`;\n }\n\n return type;\n}\nexport namespace displayType {\n export interface Options {\n readonly withEmoji?: boolean;\n readonly language?: Language;\n }\n}\n\nexport function createTransform(config: TransformConfig): WriterOptions.Transform.Function {\n const displayTypes = new Set(config.displayTypes == null ? CommitConventionalType.values() : config.displayTypes);\n const ignoreType = (type: string | undefined) => type == null || !displayTypes.has(type as CommitConventionalType);\n const ignoreScope = (scope: string | undefined | null) =>\n config.displayScopes == null ? false : scope != null && !config.displayScopes.includes(scope);\n\n const transform = (commit: Commit, { repository, host, owner, repoUrl }: Context): Commit | false => {\n const discard = commit.notes.length === 0;\n const issues = new Set<string>();\n const notes = commit.notes.map((note) => ({\n ...note,\n title: `${config.withEmoji === false ? '' : '๐ฅ '}BREAKING CHANGES`,\n }));\n const conventionalType =\n commit.type == null\n ? undefined\n : (CommitConventionalType.parse(commit.type) ??\n (GitmojiCode.isValid(commit.type) ? GitmojiCode.toConventionalCommitType(commit.type) : undefined));\n\n if (ignoreType(conventionalType) && discard) return false;\n\n const type =\n conventionalType == null\n ? conventionalType\n : displayType(conventionalType, {\n withEmoji: config.withEmoji,\n });\n\n if (ignoreScope(commit.scope)) return false;\n\n const scopeIntermediate = commit.scope === '*' ? '' : commit.scope;\n const scope =\n config.scopeDisplayName == null ? scopeIntermediate : displayScope(scopeIntermediate, config.scopeDisplayName);\n const hash = typeof commit.hash === 'string' ? commit.hash.slice(0, 7) : commit.hash;\n\n const subject =\n typeof commit.subject === 'string'\n ? (() => {\n let returnValue = commit.subject;\n const url = repository == null ? repoUrl : [host, owner, repository].filter(Boolean).join('/');\n if (url != null) {\n const issueURL = `${url}/issues/`;\n // Issue URLs.\n // eslint-disable-next-line unicorn/prefer-string-replace-all\n returnValue = returnValue.replace(/#(\\d+)/g, (_, issue: string) => {\n issues.add(issue);\n\n return `[#${issue}](${issueURL}${issue})`;\n });\n }\n if (host != null) {\n // User URLs.\n // eslint-disable-next-line unicorn/prefer-string-replace-all\n returnValue = returnValue.replace(/\\B@([\\da-z](?:-?[\\d/a-z]){0,38})/g, (_, username: string) =>\n username.includes('/') ? `@${username}` : `[@${username}](${host}/${username})`,\n );\n }\n return returnValue;\n })()\n : commit.subject;\n\n // Remove references that already appear in the subject\n const references = commit.references.filter((reference) => !issues.has(reference.issue));\n\n return {\n ...commit,\n type,\n hash,\n scope,\n subject,\n references,\n header: commit.header,\n body: commit.body,\n footer: commit.footer,\n merge: commit.merge,\n revert: commit.revert,\n notes,\n mentions: commit.mentions,\n };\n };\n\n return transform as unknown as WriterOptions.Transform.Function;\n}\n","/* eslint-disable n/no-sync */\nimport { readFileSync } from 'node:fs';\nimport nodePath from 'node:path';\nimport type { Options } from 'conventional-changelog-writer';\nimport { fileURLToPath } from 'node:url';\nimport { createTransform } from './transform.js';\nimport { CommitConventionalType } from './data.js';\n\nexport interface WriterOptions extends Options {}\n\nconst _dirname = typeof __dirname === 'undefined' ? nodePath.dirname(fileURLToPath(import.meta.url)) : __dirname;\nconst basePath = nodePath.resolve(nodePath.dirname(_dirname), './template');\n\nconst mainTemplate = readFileSync(`${basePath}/template.hbs`, 'utf8');\nconst headerPartial = readFileSync(`${basePath}/header.hbs`, 'utf8');\nconst commitPartial = readFileSync(`${basePath}/commit.hbs`, 'utf8');\nconst footerPartial = readFileSync(`${basePath}/footer.hbs`, 'utf8');\nconst author = readFileSync(`${basePath}/author.hbs`, 'utf8');\n\nexport const defaultDisplayTypes = CommitConventionalType.findWhere((_) => _.changelog);\n\nexport const writerOpts: WriterOptions = {\n transform: createTransform({\n displayTypes: defaultDisplayTypes,\n }),\n groupBy: 'type',\n commitGroupsSort: 'title',\n commitsSort: ['scope', 'subject'],\n noteGroupsSort: 'title',\n mainTemplate,\n headerPartial,\n // eslint-disable-next-line unicorn/prefer-string-replace-all\n commitPartial: commitPartial.replace(/{{gitUserInfo}}/g, author),\n footerPartial,\n};\n","import { gitRawCommitOpts } from './git-raw-commit-opts.js';\nimport { parserOpts } from './parser-opts.js';\nimport { recommendedBumpOpts } from './recommended-bump-opts.js';\nimport { writerOpts } from './writer-opts.js';\nimport { Emoji, GitmojiCode } from './gitmoji.js';\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n Emoji,\n GitmojiCode,\n parserOpts,\n writerOpts,\n recommendedBumpOpts,\n gitRawCommitOpts,\n};\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@w5s/conventional-changelog",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.2.0",
|
|
4
4
|
"description": "Conventional changelog plugin for @w5s",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"homepage": "https://github.com/w5s/project-config/blob/main/packages/conventional-changelog#readme",
|
|
@@ -53,5 +53,5 @@
|
|
|
53
53
|
"access": "public"
|
|
54
54
|
},
|
|
55
55
|
"sideEffect": false,
|
|
56
|
-
"gitHead": "
|
|
56
|
+
"gitHead": "2e302c874daea8739aee214365edff536ae5c263"
|
|
57
57
|
}
|
package/src/writer-opts.ts
CHANGED