almighty-tool 0.0.83 → 0.0.85

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.
@@ -111,5 +111,8 @@ declare const basicUtil: {
111
111
  getDifferences(obj1: any, obj2: any, options?: {
112
112
  noStrict?: boolean;
113
113
  }): string[];
114
+ getTextWidth(text: string): number;
115
+ /** 空值合并 */
116
+ nullCoalesce<T_4>(value: T_4, defaultValue: T_4): T_4;
114
117
  };
115
118
  export default basicUtil;
@@ -418,6 +418,20 @@ var basicUtil = {
418
418
  }
419
419
  return implGetDifferences(obj1, obj2, []);
420
420
  },
421
+ getTextWidth: function (text) {
422
+ if (!text) {
423
+ return 0;
424
+ }
425
+ // ES5 兼容的正则表达式(使用代理对匹配 Emoji 和全角字符)
426
+ var regex =
427
+ // eslint-disable-next-line no-control-regex, no-misleading-character-class
428
+ /[^\u0000-\u00FF]|[\uD83C-\uD83D][\uDC00-\uDFFF]|[\u20D0-\u20FF\uFE00-\uFE0F]|[\u2600-\u27BF]|[\uD83E\uD83C][\uDD00-\uDDFF]/g;
429
+ return text.replace(regex, 'aa').length;
430
+ },
431
+ /** 空值合并 */
432
+ nullCoalesce: function (value, defaultValue) {
433
+ return value !== null && value !== undefined ? value : defaultValue;
434
+ },
421
435
  };
422
436
  exports.default = basicUtil;
423
437
  //# sourceMappingURL=basic.util.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"basic.util.js","sourceRoot":"","sources":["../../src/utils/basic.util.ts"],"names":[],"mappings":";;;AAAA,uDAAuD;AACvD,sEAAsE;AACtE,qEAAiC;AACjC,mCAAwC;AACxC,+DAAuB;AACvB,uDAAoB;AAkCpB,IAAM,SAAS,GAAG;IAChB,SAAS,EAAT,UAAmB,GAAQ;QACzB,OAAO,CACL,GAAG,YAAY,OAAO,IAAI,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,UAAU,CAAC,CACzH,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,eAAe,EAAf,UAA6C,SAA+B,EAAE,YAA0B;;QAA1B,6BAAA,EAAA,iBAA0B;QACtG,IAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;QAE1E,KAAmB,UAAK,EAAL,eAAK,EAAL,mBAAK,EAAL,IAAK,EAAE;YAArB,IAAM,IAAI,cAAA;YACb,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE;gBACnB,OAAO,MAAA,IAAI,CAAC,QAAQ,mCAAI,EAAE,CAAC;aAC5B;YAED,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,IAAM,QAAQ,GAAG,SAAS,CAAC,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACrE,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,EAAE;oBAC/B,OAAO,QAAQ,CAAC;iBACjB;aACF;SACF;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;;;;OAKG;IACH,aAAa,EAAb,UAA2C,SAA+B,EAAE,SAAuB;QAAvB,0BAAA,EAAA,cAAuB;QACjG,IAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAEjE,KAAmB,UAAK,EAAL,eAAK,EAAL,mBAAK,EAAL,IAAK,EAAE;YAArB,IAAM,IAAI,cAAA;YACb,2BAA2B;YAC3B,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,KAAoB,UAAa,EAAb,KAAA,IAAI,CAAC,QAAQ,EAAb,cAAa,EAAb,IAAa,EAAE;oBAA9B,IAAM,KAAK,SAAA;oBACd,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE;wBACpB,gBAAgB;wBAChB,OAAO,IAAI,CAAC;qBACb;iBACF;gBAED,cAAc;gBACd,IAAM,QAAM,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC5D,IAAI,QAAM,EAAE;oBACV,qBAAqB;oBACrB,OAAO,QAAM,CAAC;iBACf;aACF;SACF;QAED,OAAO,IAAI,CAAC,CAAC,UAAU;IACzB,CAAC;IAED,UAAU;IACV,WAAW,EAAX,UACE,YAAqB,EACrB,MAAoE,EACpE,OAA4C;;QAA5C,wBAAA,EAAA,YAA4C;QAE5C,IAAM,KAAK,GAAG,MAAA,OAAO,CAAC,KAAK,mCAAI,CAAC,CAAC;QACjC,IAAM,SAAS,GAAG,MAAA,OAAO,CAAC,SAAS,mCAAI,EAAE,CAAC;QAE1C,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,UAAC,cAAc;;YACnF,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE;gBAChC,MAAM,CAAC,cAAc,EAAE,EAAE,KAAK,OAAA,EAAE,SAAS,WAAA,EAAE,CAAC,CAAC;aAC9C;YAED,IAAI,MAAA,cAAc,CAAC,QAAQ,0CAAE,MAAM,EAAE;gBACnC,SAAS,CAAC,WAAW,CAAC,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,SAAS,4DAAM,SAAS,UAAE,cAAc,SAAC,EAAE,CAAC,CAAC;aACzH;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,eAAe;IACf,UAAU,EAAV,UAAW,GAAW;QACpB,IAAM,WAAW,GAA2B;YAC1C,GAAG,EAAE,OAAO;YACZ,GAAG,EAAE,MAAM;YACX,GAAG,EAAE,MAAM;YACX,GAAG,EAAE,QAAQ;YACb,GAAG,EAAE,OAAO;SACb,CAAC;QAEF,OAAO,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,UAAC,IAAI,IAAK,OAAA,WAAW,CAAC,IAAI,CAAC,EAAjB,CAAiB,CAAC,CAAC;IAC9D,CAAC;IAED,oBAAoB;IACpB,iBAAiB,EAAjB,UAAkB,KAAuC;QACvD,IAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,gBAAC,CAAC,IAAI,CAAC,KAAK,EAAE,UAAC,KAAuB,EAAE,GAAW;YACjD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,KAAK,EAAE;gBACrC,MAAM,CAAC,IAAI,CAAC,UAAG,GAAG,eAAK,KAAK,CAAE,CAAC,CAAC;aACjC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,sBAAsB;IACtB,gBAAgB,EAAhB,UAAiB,OAAgC;QAC/C,IAAM,IAAI,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;QACxC,IAAI,IAAI,GAAG,KAAK,CAAC;QAEjB,IAAI,OAAO,QAAQ,KAAK,WAAW,IAAI,OAAO,QAAQ,CAAC,aAAa,KAAK,WAAW,EAAE;YACpF,IAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YAEpD,IAAI;gBACF,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC;gBACtB,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBACpC,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAClB,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;gBAC7B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAEpC,IAAI,OAAO,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,UAAU,EAAE;oBACpD,OAAO,CAAC,OAAO,CAAC;wBACd,IAAI,MAAA;wBACJ,MAAM,EAAE,qBAAqB;qBAC9B,CAAC,CAAC;oBAEH,IAAI,GAAG,IAAI,CAAC;iBACb;aACF;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,OAAO,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE;oBACjD,OAAO,CAAC,IAAI,CAAC;wBACX,IAAI,MAAA;wBACJ,MAAM,EAAE,uBAAuB;qBAChC,CAAC,CAAC;iBACJ;aACF;oBAAS;gBACR,IAAI,OAAO,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU,EAAE;oBACrD,IAAI,IAAI,EAAE;wBACR,OAAO,CAAC,QAAQ,CAAC;4BACf,IAAI,MAAA;4BACJ,MAAM,EAAE,qBAAqB;yBAC9B,CAAC,CAAC;qBACJ;yBAAM;wBACL,OAAO,CAAC,QAAQ,CAAC;4BACf,IAAI,MAAA;4BACJ,MAAM,EAAE,uBAAuB;yBAChC,CAAC,CAAC;qBACJ;iBACF;aACF;SACF;aAAM;YACL,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE;gBACxE,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,MAAA;oBACJ,MAAM,EAAE,uBAAuB;iBAChC,CAAC,CAAC;aACJ;YAED,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU,EAAE;gBAC5E,OAAO,CAAC,QAAQ,CAAC;oBACf,IAAI,MAAA;oBACJ,MAAM,EAAE,uBAAuB;iBAChC,CAAC,CAAC;aACJ;SACF;IACH,CAAC;IAED,qCAAqC;IACrC,QAAQ,EAAR,UAAS,GAAW,EAAE,KAA2B;QAA3B,sBAAA,EAAA,UAA2B;QAC/C,IAAM,WAAW,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAE5E,IAAI,WAAW,EAAE;YACf,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;gBACrB,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;oBACrB,OAAO,UAAG,GAAG,SAAG,WAAW,CAAE,CAAC;iBAC/B;qBAAM;oBACL,OAAO,UAAG,GAAG,cAAI,WAAW,CAAE,CAAC;iBAChC;aACF;iBAAM;gBACL,OAAO,UAAG,GAAG,cAAI,WAAW,CAAE,CAAC;aAChC;SACF;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAED,YAAY,EAAZ,UAAa,KAAa;QACxB,OAAO,mBAAQ,CAAC,aAAa,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,YAAY,EAAZ,UAAa,KAAa;QACxB,IAAM,YAAY,GAAG,mBAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACjD,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAChD,CAAC;IAED,kBAAkB;IAClB,WAAW,EAAX,UAAY,KAAa;QACvB,OAAO,kBAAkB,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,kBAAkB;IAClB,WAAW,EAAX,UAAY,GAAW;QACrB,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,aAAa;IACb,KAAK,EAAL,UAAM,OAAe;QACnB,OAAO,IAAI,OAAO,CAAO,UAAC,OAAiB;YACzC,UAAU,CAAC;gBACT,OAAO,EAAE,CAAC;YACZ,CAAC,EAAE,OAAO,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB;IACV,YAAY,EAAlB,UAAmB,GAAgB,EAAE,QAA6E;;;;;;wBAC1G,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;wBACpB,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;wBAC1B,CAAC,GAAG,CAAC,CAAC;;;6BAEH,CAAA,CAAC,GAAG,MAAM,CAAA;6BACX,CAAA,CAAC,IAAI,SAAS,CAAA,EAAd,wBAAc;wBAChB,qBAAM,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,EAAA;;wBAA1C,SAA0C,CAAC;;;wBAG7C,CAAC,EAAE,CAAC;;;;;;KAEP;IAED;;;;;;OAMG;IACH,kBAAkB,EAAlB,UAAmB,IAAiB,EAAE,GAAW;QAC/C,IAAM,OAAO,GAAgB,EAAE,CAAC;QAChC,IAAM,SAAS,GAAG,EAAE,CAAC;QAErB,IAAI,CAAC,OAAO,CAAC,UAAC,GAAc;YAC1B,IAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAEpC,IAAI,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,WAAW,EAAE;gBACxD,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAClB,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;aACpC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,iBAAiB,EAAjB,UAAkB,IAAiB,EAAE,GAAW;QAC9C,IAAM,OAAO,GAAG,EAAE,CAAC;QAEnB,IAAI,CAAC,OAAO,CAAC,UAAC,GAAc;YAC1B,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,gBAAgB,EAAhB,UAAiB,IAAiB,EAAE,EAA8B;QAChE,IAAM,OAAO,GAAc,EAAE,CAAC;QAE9B,IAAI,CAAC,OAAO,CAAC,UAAC,GAAc;YAC1B,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,iBAAiB,EAAjB,UAAkB,IAAiB,EAAE,GAAW;QAC9C,IAAM,OAAO,GAAG,EAAE,CAAC;QAEnB,IAAI,CAAC,OAAO,CAAC,UAAC,GAAc;YAC1B,IAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;YACvB,IAAI,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAE3C,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;gBACnC,QAAQ,GAAG,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;aACvC;YAED,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,gBAAgB,EAAhB,UAAiB,IAAiB,EAAE,EAA8B;QAChE,IAAM,OAAO,GAAG,EAAE,CAAC;QAEnB,IAAI,CAAC,OAAO,CAAC,UAAC,GAAQ;YACpB,IAAM,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;YACtB,IAAI,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAE3C,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;gBACnC,QAAQ,GAAG,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;aACvC;YAED,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,sBAAsB;IACtB,QAAQ,EAAR,UACE,GAAc,EACd,OAGM;QAHN,wBAAA,EAAA,YAGM;QAEN,IAAI,CAAC,IAAA,uBAAa,EAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YAC9C,MAAM,IAAI,SAAS,CAAC,kCAAkC,CAAC,CAAC;SACzD;QAEO,IAAA,IAAI,GAAc,OAAO,KAArB,EAAE,OAAO,GAAK,OAAO,QAAZ,CAAa;QAClC,IAAM,SAAS,GAAgB,EAAE,CAAC;QAClC,IAAM,UAAU,GAAgB,EAAE,CAAC;QAEnC,IAAM,aAAa,GAAG,UAAC,KAAkB;YACvC,IAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC3C,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE;gBACpB,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC;aAC9B;YAED,IAAM,MAAM,GAAgB,EAAE,CAAC;YAE/B,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACtB,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAExB,KAAK,CAAC,OAAO,CAAC,UAAC,IAAI;gBACjB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;oBACvB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;iBACjC;gBAED,IAAI,IAAA,uBAAa,EAAC,IAAI,CAAC,EAAE;oBACvB,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;iBAC7B;gBAED,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC,CAAC,CAAC;YAEH,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;QAEF,IAAM,SAAS,GAAG,UAAC,MAAiB;YAClC,IAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAE5C,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE;gBACpB,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC;aAC9B;YAED,IAAM,MAAM,GAAG,EAAE,CAAC;YAClB,IAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAE/C,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvB,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAExB,KAAkB,UAAI,EAAJ,aAAI,EAAJ,kBAAI,EAAJ,IAAI,EAAE;gBAAnB,IAAM,GAAG,aAAA;gBACZ,IAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC1B,IAAI,QAAQ,SAAA,CAAC;gBAEb,IAAI,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;oBAChC,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;iBACjC;qBAAM;oBACL,QAAQ,GAAG,IAAI,IAAI,IAAA,uBAAa,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;iBACpE;gBAED,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,kDAC5B,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,KAC/C,KAAK,EAAE,QAAQ,IACf,CAAC;aACJ;YAED,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;QAEF,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACtB,OAAO,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;SAChD;QAED,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,gBAAgB;IAChB,cAAc,EAAd,UAAe,IAAS,EAAE,IAAS,EAAE,OAAoC;QAApC,wBAAA,EAAA,YAAoC;QACvE,SAAS,QAAQ,CAAC,MAAW,EAAE,MAAW;YACxC,IAAI,OAAO,CAAC,QAAQ,EAAE;gBACpB,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;oBAC5D,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC;iBAC1C;gBAED,IAAI,OAAO,MAAM,KAAK,SAAS,IAAI,OAAO,MAAM,KAAK,SAAS,EAAE;oBAC9D,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC;iBAC1C;gBAED,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;oBAC5D,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC;iBAC1C;aACF;YAED,IAAI,OAAO,MAAM,KAAK,OAAO,MAAM,EAAE;gBACnC,OAAO,KAAK,CAAC;aACd;YAED,OAAO,MAAM,KAAK,MAAM,CAAC;QAC3B,CAAC;QAED,SAAS,kBAAkB,CAAC,IAAS,EAAE,IAAS,EAAE,IAAmB;YAAnB,qBAAA,EAAA,SAAmB;YACnE,IAAI,WAAW,GAAa,EAAE,CAAC;YAE/B,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBAC9C,IAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE;oBAClC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;wBACvE,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,4DAAM,IAAI,UAAE,CAAC,CAAC,QAAQ,EAAE,UAAE,CAAC,CAAC;qBACjG;iBACF;aACF;iBAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE;gBACjG,IAAM,IAAI,GAAG,IAAI,GAAG,2DAAK,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAK,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAE,CAAC;gBACnE,KAAkB,UAAgB,EAAhB,KAAA,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAhB,cAAgB,EAAhB,IAAgB,EAAE;oBAA/B,IAAM,GAAG,SAAA;oBACZ,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,4DAAM,IAAI,UAAE,GAAG,UAAE,CAAC,CAAC;iBAC5F;aACF;iBAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;gBAChC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;aAClC;YAED,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,OAAO,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IAC5C,CAAC;CACF,CAAC;AAEF,kBAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"basic.util.js","sourceRoot":"","sources":["../../src/utils/basic.util.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,16 @@
1
1
  import forge from 'node-forge';
2
+ declare type KeyEncryptionScheme = 'RSAES-PKCS1-V1_5' | 'RSA-OAEP' | 'RAW' | 'NONE' | null;
3
+ declare type CipherAlgorithm = forge.cipher.Algorithm;
4
+ interface AesEncryptDecryptOptions {
5
+ algorithm?: CipherAlgorithm;
6
+ }
7
+ interface EncryptDecryptOptions {
8
+ algorithm?: KeyEncryptionScheme;
9
+ }
10
+ interface LongEncryptDecryptOptions extends EncryptDecryptOptions {
11
+ aesAlgorithm?: CipherAlgorithm;
12
+ joinSeparator?: string;
13
+ }
2
14
  declare const cryptoUtil: {
3
15
  /** 获取 uuid */
4
16
  uuid(): string;
@@ -34,10 +46,26 @@ declare const cryptoUtil: {
34
46
  *
35
47
  * iv-length: 192/8
36
48
  */
37
- aesEncrypt(data: string, key: string, iv: string, algorithm?: forge.cipher.Algorithm): string;
49
+ aesEncrypt(data: string, key: string, iv: string, options?: AesEncryptDecryptOptions): string;
38
50
  /**
39
51
  * 解密
40
52
  */
41
- aesDecrypt(data: string, key: string, iv: string, algorithm?: forge.cipher.Algorithm): string;
53
+ aesDecrypt(data: string, key: string, iv: string, options?: AesEncryptDecryptOptions): string;
54
+ /** ========= RSA 实现部分 ========= */
55
+ generateRsaKeyPair(bits?: number): {
56
+ publicKey: string;
57
+ privateKey: string;
58
+ };
59
+ publicEncrypt(publicKey: string, data: string, options?: EncryptDecryptOptions): string;
60
+ privateDecrypt(privateKey: string, encrypted: string, options?: EncryptDecryptOptions): string;
61
+ /** 长文本混合加密 */
62
+ longPublicEncrypt(publicKey: string, data: string, options?: LongEncryptDecryptOptions): {
63
+ encryptedAesKey: string;
64
+ encryptedData: string;
65
+ };
66
+ longPrivateDecrypt(privateKey: string, encryptedAesKey: string, encryptedData: string, options?: LongEncryptDecryptOptions): string;
67
+ /** 辅助方法 */
68
+ joinStrings(txt1: string, txt2: string, separator: string): string;
69
+ splitJoinedStrings(str: string, separator: string): string[];
42
70
  };
43
71
  export default cryptoUtil;
@@ -4,6 +4,9 @@ var tslib_1 = require("tslib");
4
4
  var node_forge_1 = (0, tslib_1.__importDefault)(require("node-forge"));
5
5
  var uuid_1 = require("uuid");
6
6
  var random_util_1 = (0, tslib_1.__importDefault)(require("./random.util"));
7
+ var DEFAULT_KEY_ENCRYPTION_SCHEME = 'RSA-OAEP';
8
+ var DEFAULT_CIPHER_ALGORITHM = 'AES-CBC';
9
+ var DEFAULT_JOIN_SEPARATOR = '::';
7
10
  var cryptoUtil = {
8
11
  /** 获取 uuid */
9
12
  uuid: function () {
@@ -81,8 +84,10 @@ var cryptoUtil = {
81
84
  *
82
85
  * iv-length: 192/8
83
86
  */
84
- aesEncrypt: function (data, key, iv, algorithm) {
85
- if (algorithm === void 0) { algorithm = 'AES-CBC'; }
87
+ aesEncrypt: function (data, key, iv, options) {
88
+ var _a;
89
+ if (options === void 0) { options = {}; }
90
+ var algorithm = (_a = options.algorithm) !== null && _a !== void 0 ? _a : DEFAULT_CIPHER_ALGORITHM;
86
91
  var cipher = node_forge_1.default.cipher.createCipher(algorithm, key);
87
92
  cipher.start({ iv: iv });
88
93
  cipher.update(node_forge_1.default.util.createBuffer(node_forge_1.default.util.encodeUtf8(data)));
@@ -92,14 +97,73 @@ var cryptoUtil = {
92
97
  /**
93
98
  * 解密
94
99
  */
95
- aesDecrypt: function (data, key, iv, algorithm) {
96
- if (algorithm === void 0) { algorithm = 'AES-CBC'; }
100
+ aesDecrypt: function (data, key, iv, options) {
101
+ var _a;
102
+ if (options === void 0) { options = {}; }
103
+ var algorithm = (_a = options.algorithm) !== null && _a !== void 0 ? _a : DEFAULT_CIPHER_ALGORITHM;
97
104
  var decipher = node_forge_1.default.cipher.createDecipher(algorithm, key);
98
105
  decipher.start({ iv: iv });
99
106
  decipher.update(node_forge_1.default.util.createBuffer(node_forge_1.default.util.decode64(data)));
100
107
  decipher.finish();
101
108
  return node_forge_1.default.util.decodeUtf8(decipher.output.data);
102
109
  },
110
+ /** ========= RSA 实现部分 ========= */
111
+ // 生成RSA密钥对
112
+ generateRsaKeyPair: function (bits) {
113
+ if (bits === void 0) { bits = 2048; }
114
+ var keypair = node_forge_1.default.pki.rsa.generateKeyPair({ bits: bits });
115
+ return {
116
+ publicKey: node_forge_1.default.pki.publicKeyToPem(keypair.publicKey),
117
+ privateKey: node_forge_1.default.pki.privateKeyToPem(keypair.privateKey),
118
+ };
119
+ },
120
+ // 公钥加密
121
+ publicEncrypt: function (publicKey, data, options) {
122
+ var _a;
123
+ if (options === void 0) { options = {}; }
124
+ var algorithm = (_a = options.algorithm) !== null && _a !== void 0 ? _a : DEFAULT_KEY_ENCRYPTION_SCHEME;
125
+ var key = node_forge_1.default.pki.publicKeyFromPem(publicKey);
126
+ return this.base64Encode(key.encrypt(data, algorithm));
127
+ },
128
+ // 私钥解密
129
+ privateDecrypt: function (privateKey, encrypted, options) {
130
+ var _a;
131
+ if (options === void 0) { options = {}; }
132
+ var algorithm = (_a = options.algorithm) !== null && _a !== void 0 ? _a : DEFAULT_KEY_ENCRYPTION_SCHEME;
133
+ var key = node_forge_1.default.pki.privateKeyFromPem(privateKey);
134
+ return key.decrypt(this.base64Decode(encrypted), algorithm);
135
+ },
136
+ /** 长文本混合加密 */
137
+ longPublicEncrypt: function (publicKey, data, options) {
138
+ var _a, _b, _c;
139
+ if (options === void 0) { options = {}; }
140
+ var algorithm = (_a = options.algorithm) !== null && _a !== void 0 ? _a : DEFAULT_KEY_ENCRYPTION_SCHEME;
141
+ var aesAlgorithm = (_b = options.aesAlgorithm) !== null && _b !== void 0 ? _b : DEFAULT_CIPHER_ALGORITHM;
142
+ var joinSeparator = (_c = options.joinSeparator) !== null && _c !== void 0 ? _c : DEFAULT_JOIN_SEPARATOR;
143
+ var _d = this.generateAesKeyAndIV(), aesKey = _d.key, iv = _d.iv;
144
+ return {
145
+ encryptedAesKey: this.publicEncrypt(publicKey, aesKey, { algorithm: algorithm }),
146
+ encryptedData: this.joinStrings(cryptoUtil.base64Encode(iv), this.aesEncrypt(data, aesKey, iv, { algorithm: aesAlgorithm }), joinSeparator),
147
+ };
148
+ },
149
+ longPrivateDecrypt: function (privateKey, encryptedAesKey, encryptedData, options) {
150
+ var _a, _b, _c;
151
+ if (options === void 0) { options = {}; }
152
+ var algorithm = (_a = options.algorithm) !== null && _a !== void 0 ? _a : DEFAULT_KEY_ENCRYPTION_SCHEME;
153
+ var aesAlgorithm = (_b = options.aesAlgorithm) !== null && _b !== void 0 ? _b : DEFAULT_CIPHER_ALGORITHM;
154
+ var joinSeparator = (_c = options.joinSeparator) !== null && _c !== void 0 ? _c : DEFAULT_JOIN_SEPARATOR;
155
+ var aesKey = this.privateDecrypt(privateKey, encryptedAesKey, { algorithm: algorithm });
156
+ var _d = this.splitJoinedStrings(encryptedData, joinSeparator), iv = _d[0], data = _d[1];
157
+ return this.aesDecrypt(data, aesKey, cryptoUtil.base64Decode(iv), { algorithm: aesAlgorithm });
158
+ },
159
+ /** 辅助方法 */
160
+ joinStrings: function (txt1, txt2, separator) {
161
+ return [txt1, txt2].join(separator);
162
+ },
163
+ splitJoinedStrings: function (str, separator) {
164
+ var index = str.indexOf(separator);
165
+ return index !== -1 ? [str.slice(0, index), str.slice(index + separator.length)] : [str];
166
+ },
103
167
  };
104
168
  exports.default = cryptoUtil;
105
169
  //# sourceMappingURL=crypto.util.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"crypto.util.js","sourceRoot":"","sources":["../../src/utils/crypto.util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crypto.util.js","sourceRoot":"","sources":["../../src/utils/crypto.util.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "almighty-tool",
3
- "version": "0.0.83",
3
+ "version": "0.0.85",
4
4
  "description": "almighty-tool",
5
5
  "author": "happy",
6
6
  "private": false,
@@ -46,7 +46,6 @@
46
46
  "mustache": "^4.2.0",
47
47
  "nock": "^13.3.0",
48
48
  "node-forge": "^1.3.1",
49
- "node-rsa": "^1.1.1",
50
49
  "qs": "^6.11.0",
51
50
  "tslib": "^2.4.0",
52
51
  "tsx": "^4.19.2",
package/bun.lockb DELETED
Binary file
@@ -1,66 +0,0 @@
1
- /// <reference types="node" />
2
- import crypto from 'crypto';
3
- /**
4
- * 这个heavyCryptoUtil与cryptoUtil的区别是: heavyCryptoUtil 用到了node 里的crypto, 并且heavyCryptoUtil 有 rsa 非对称加密算法。
5
- * 两个 util 不要同时引入,heavyCryptoUtil 的体积要比cryptoUtil 大很多。如果不需要 rsa 加密,就用cryptoUtil 就好了。
6
- */
7
- declare const heavyCryptoUtil: {
8
- /** 获取 uuid */
9
- uuid(): string;
10
- /** 获取md5摘要 */
11
- md5(value: crypto.BinaryLike, encoding?: crypto.BinaryToTextEncoding): string;
12
- /** 获取hmac摘要 */
13
- hmac(key: crypto.BinaryLike, bytes: string, algorithm?: string): string;
14
- /** 获取sha1摘要 */
15
- sha1(value: crypto.BinaryLike, encoding?: crypto.BinaryToTextEncoding): string;
16
- /** 获取sha384摘要 */
17
- sha384(value: crypto.BinaryLike, encoding?: crypto.BinaryToTextEncoding): string;
18
- /** 获取sha256摘要 */
19
- sha256(value: crypto.BinaryLike, encoding?: crypto.BinaryToTextEncoding): string;
20
- /** 获取sha512摘要 */
21
- sha512(value: crypto.BinaryLike, encoding?: crypto.BinaryToTextEncoding): string;
22
- /** 生成密钥对 */
23
- generateAesKeyAndIV(algorithm?: string): {
24
- key: string;
25
- iv: string;
26
- };
27
- /** 生成随机的字符串 */
28
- generateRandomString(length: number): string;
29
- /**
30
- * 加密
31
- *
32
- * iv-length: 192/8
33
- */
34
- aesEncrypt(data: string, key: string, iv: string, algorithm?: string): string;
35
- /**
36
- * 解密
37
- */
38
- aesDecrypt(data: string, key: string, iv: string, algorithm?: string): string;
39
- base64Encode(value: string): string;
40
- base64Decode(value: string): string;
41
- privateEncrypt(privateKey: string | Buffer, buffer: string | Buffer): string;
42
- publicDecrypt(publicKey: string | Buffer, buffer: string | Buffer): string;
43
- publicEncrypt(publicKey: string | Buffer, buffer: string | Buffer): string;
44
- privateDecrypt(privateKey: string | Buffer, buffer: string | Buffer): string;
45
- generateRsaKeyPair(bits?: number): {
46
- publicKey: string;
47
- privateKey: string;
48
- };
49
- /** 私钥加密: 对长文字进行 */
50
- longPrivateEncrypt(privateKey: string | Buffer, buffer: string | Buffer): {
51
- encryptedAesKey: string;
52
- encryptedData: string;
53
- };
54
- /** 公钥解密: 对长文字进行 */
55
- longPublicDecrypt(publicKey: string | Buffer, encryptedAesKey: string, encryptedData: string): string;
56
- /** 公钥加密: 对长文字进行 */
57
- longPublicEncrypt(publicKey: string | Buffer, buffer: string | Buffer): {
58
- encryptedAesKey: string;
59
- encryptedData: string;
60
- };
61
- /** 私钥解密: 对长文字进行 */
62
- longPrivatgeDecrypt(privateKey: string | Buffer, encryptedAesKey: string, encryptedData: string): string;
63
- joinStrings(txt1: string, txt2: string): string;
64
- splitJoinedStrings(joinedString: string): string[];
65
- };
66
- export default heavyCryptoUtil;
@@ -1,171 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
4
- var crypto_1 = (0, tslib_1.__importDefault)(require("crypto"));
5
- var node_rsa_1 = (0, tslib_1.__importDefault)(require("node-rsa"));
6
- var uuid_1 = require("uuid");
7
- /**
8
- * 这个heavyCryptoUtil与cryptoUtil的区别是: heavyCryptoUtil 用到了node 里的crypto, 并且heavyCryptoUtil 有 rsa 非对称加密算法。
9
- * 两个 util 不要同时引入,heavyCryptoUtil 的体积要比cryptoUtil 大很多。如果不需要 rsa 加密,就用cryptoUtil 就好了。
10
- */
11
- var heavyCryptoUtil = {
12
- /** 获取 uuid */
13
- uuid: function () {
14
- return (0, uuid_1.v4)();
15
- },
16
- /** 获取md5摘要 */
17
- md5: function (value, encoding) {
18
- if (encoding === void 0) { encoding = 'hex'; }
19
- return crypto_1.default.createHash('md5').update(value).digest(encoding);
20
- },
21
- /** 获取hmac摘要 */
22
- hmac: function (key, bytes, algorithm) {
23
- if (algorithm === void 0) { algorithm = 'sha256'; }
24
- var hmac = crypto_1.default.createHmac(algorithm, key);
25
- hmac.update(bytes);
26
- return hmac.digest('hex');
27
- },
28
- /** 获取sha1摘要 */
29
- sha1: function (value, encoding) {
30
- if (encoding === void 0) { encoding = 'hex'; }
31
- return crypto_1.default.createHash('sha1').update(value).digest(encoding);
32
- },
33
- /** 获取sha384摘要 */
34
- sha384: function (value, encoding) {
35
- if (encoding === void 0) { encoding = 'hex'; }
36
- return crypto_1.default.createHash('sha384').update(value).digest(encoding);
37
- },
38
- /** 获取sha256摘要 */
39
- sha256: function (value, encoding) {
40
- if (encoding === void 0) { encoding = 'hex'; }
41
- return crypto_1.default.createHash('sha256').update(value).digest(encoding);
42
- },
43
- /** 获取sha512摘要 */
44
- sha512: function (value, encoding) {
45
- if (encoding === void 0) { encoding = 'hex'; }
46
- return crypto_1.default.createHash('sha512').update(value).digest(encoding);
47
- },
48
- /** 生成密钥对 */
49
- generateAesKeyAndIV: function (algorithm) {
50
- if (algorithm === void 0) { algorithm = 'aes-128-cbc'; }
51
- return {
52
- key: heavyCryptoUtil.generateRandomString(Number(algorithm.split('-')[1]) / 8),
53
- iv: heavyCryptoUtil.generateRandomString(Number(algorithm.split('-')[1]) / 8),
54
- };
55
- },
56
- /** 生成随机的字符串 */
57
- generateRandomString: function (length) {
58
- var characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
59
- var randomString = '';
60
- for (var i = 0; i < length; i++) {
61
- var randomIndex = Math.floor(Math.random() * characters.length);
62
- randomString += characters[randomIndex];
63
- }
64
- return randomString;
65
- },
66
- /**
67
- * 加密
68
- *
69
- * iv-length: 192/8
70
- */
71
- aesEncrypt: function (data, key, iv, algorithm) {
72
- if (algorithm === void 0) { algorithm = 'aes-128-cbc'; }
73
- var cipherChunks = [];
74
- var cipher = crypto_1.default.createCipheriv(algorithm, key, iv);
75
- cipher.setAutoPadding(true);
76
- cipherChunks.push(cipher.update(data, 'utf8', 'base64'));
77
- cipherChunks.push(cipher.final('base64'));
78
- return cipherChunks.join('');
79
- },
80
- /**
81
- * 解密
82
- */
83
- aesDecrypt: function (data, key, iv, algorithm) {
84
- if (algorithm === void 0) { algorithm = 'aes-128-cbc'; }
85
- var cipherChunks = [];
86
- var decipher = crypto_1.default.createDecipheriv(algorithm, key, iv);
87
- decipher.setAutoPadding(true);
88
- cipherChunks.push(decipher.update(data, 'base64', 'utf8'));
89
- cipherChunks.push(decipher.final('utf8'));
90
- return cipherChunks.join('');
91
- },
92
- // Base64 编码
93
- base64Encode: function (value) {
94
- return Buffer.from(value).toString('base64');
95
- },
96
- // Base64 解码
97
- base64Decode: function (value) {
98
- return Buffer.from(value, 'base64').toString();
99
- },
100
- // 以下是rsa相关的方法
101
- // 私钥加密
102
- privateEncrypt: function (privateKey, buffer) {
103
- var key = new node_rsa_1.default(privateKey);
104
- return key.encryptPrivate(buffer, 'base64');
105
- },
106
- // 公钥解密
107
- publicDecrypt: function (publicKey, buffer) {
108
- var key = new node_rsa_1.default(publicKey);
109
- return key.decryptPublic(buffer, 'utf8');
110
- },
111
- // 公钥加密
112
- publicEncrypt: function (publicKey, buffer) {
113
- var key = new node_rsa_1.default(publicKey);
114
- return key.encrypt(buffer, 'base64');
115
- },
116
- // 私钥解密
117
- privateDecrypt: function (privateKey, buffer) {
118
- var key = new node_rsa_1.default(privateKey);
119
- return key.decrypt(buffer, 'utf8');
120
- },
121
- // 生成 RSA 密钥对
122
- generateRsaKeyPair: function (bits) {
123
- if (bits === void 0) { bits = 2048; }
124
- var key = new node_rsa_1.default({ b: bits });
125
- return { publicKey: key.exportKey('public'), privateKey: key.exportKey('private') };
126
- },
127
- /** 私钥加密: 对长文字进行 */
128
- longPrivateEncrypt: function (privateKey, buffer) {
129
- var _a = heavyCryptoUtil.generateAesKeyAndIV(), aesKey = _a.key, aesIv = _a.iv;
130
- var encryptedAesKey = heavyCryptoUtil.privateEncrypt(privateKey, aesKey);
131
- var encryptedData = heavyCryptoUtil.joinStrings(aesIv, heavyCryptoUtil.aesEncrypt(buffer.toString(), aesKey, aesIv));
132
- return {
133
- encryptedAesKey: encryptedAesKey,
134
- encryptedData: encryptedData,
135
- };
136
- },
137
- /** 公钥解密: 对长文字进行 */
138
- longPublicDecrypt: function (publicKey, encryptedAesKey, encryptedData) {
139
- var key = heavyCryptoUtil.publicDecrypt(publicKey, encryptedAesKey).toString();
140
- var _a = heavyCryptoUtil.splitJoinedStrings(encryptedData), iv = _a[0], encrypted = _a[1];
141
- return heavyCryptoUtil.aesDecrypt(encrypted, key, iv);
142
- },
143
- /** 公钥加密: 对长文字进行 */
144
- longPublicEncrypt: function (publicKey, buffer) {
145
- var _a = heavyCryptoUtil.generateAesKeyAndIV(), aesKey = _a.key, aesIv = _a.iv;
146
- var encryptedAesKey = heavyCryptoUtil.publicEncrypt(publicKey, aesKey);
147
- var encryptedData = heavyCryptoUtil.joinStrings(aesIv, heavyCryptoUtil.aesEncrypt(buffer.toString(), aesKey, aesIv));
148
- return {
149
- encryptedAesKey: encryptedAesKey,
150
- encryptedData: encryptedData,
151
- };
152
- },
153
- /** 私钥解密: 对长文字进行 */
154
- longPrivatgeDecrypt: function (privateKey, encryptedAesKey, encryptedData) {
155
- var key = heavyCryptoUtil.privateDecrypt(privateKey, encryptedAesKey).toString();
156
- var _a = heavyCryptoUtil.splitJoinedStrings(encryptedData), iv = _a[0], encrypted = _a[1];
157
- return heavyCryptoUtil.aesDecrypt(encrypted, key, iv);
158
- },
159
- joinStrings: function (txt1, txt2) {
160
- return [txt1, txt2].join('##');
161
- },
162
- splitJoinedStrings: function (joinedString) {
163
- var index = joinedString.indexOf('##');
164
- if (index !== -1) {
165
- return [joinedString.slice(0, index), joinedString.slice(index + 2)];
166
- }
167
- return [joinedString];
168
- },
169
- };
170
- exports.default = heavyCryptoUtil;
171
- //# sourceMappingURL=heavy-crypto.util.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"heavy-crypto.util.js","sourceRoot":"","sources":["../../src/utils/heavy-crypto.util.ts"],"names":[],"mappings":";;;AAAA,+DAA4B;AAC5B,mEAA+B;AAC/B,6BAAoC;AAEpC;;;GAGG;AAEH,IAAM,eAAe,GAAG;IACtB,cAAc;IACd,IAAI,EAAJ;QACE,OAAO,IAAA,SAAM,GAAE,CAAC;IAClB,CAAC;IAED,cAAc;IACd,GAAG,EAAH,UAAI,KAAwB,EAAE,QAA6C;QAA7C,yBAAA,EAAA,gBAA6C;QACzE,OAAO,gBAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACjE,CAAC;IAED,eAAe;IACf,IAAI,EAAJ,UAAK,GAAsB,EAAE,KAAa,EAAE,SAAoB;QAApB,0BAAA,EAAA,oBAAoB;QAC9D,IAAM,IAAI,GAAG,gBAAM,CAAC,UAAU,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,eAAe;IACf,IAAI,EAAJ,UAAK,KAAwB,EAAE,QAA6C;QAA7C,yBAAA,EAAA,gBAA6C;QAC1E,OAAO,gBAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAClE,CAAC;IAED,iBAAiB;IACjB,MAAM,EAAN,UAAO,KAAwB,EAAE,QAA6C;QAA7C,yBAAA,EAAA,gBAA6C;QAC5E,OAAO,gBAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACpE,CAAC;IAED,iBAAiB;IACjB,MAAM,EAAN,UAAO,KAAwB,EAAE,QAA6C;QAA7C,yBAAA,EAAA,gBAA6C;QAC5E,OAAO,gBAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACpE,CAAC;IAED,iBAAiB;IACjB,MAAM,EAAN,UAAO,KAAwB,EAAE,QAA6C;QAA7C,yBAAA,EAAA,gBAA6C;QAC5E,OAAO,gBAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACpE,CAAC;IAED,YAAY;IACZ,mBAAmB,EAAnB,UAAoB,SAAyB;QAAzB,0BAAA,EAAA,yBAAyB;QAC3C,OAAO;YACL,GAAG,EAAE,eAAe,CAAC,oBAAoB,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YAC9E,EAAE,EAAE,eAAe,CAAC,oBAAoB,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;SAC9E,CAAC;IACJ,CAAC;IAED,eAAe;IACf,oBAAoB,EAApB,UAAqB,MAAc;QACjC,IAAM,UAAU,GAAG,gEAAgE,CAAC;QACpF,IAAI,YAAY,GAAG,EAAE,CAAC;QAEtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;YAC/B,IAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;YAClE,YAAY,IAAI,UAAU,CAAC,WAAW,CAAC,CAAC;SACzC;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,UAAU,EAAV,UAAW,IAAY,EAAE,GAAW,EAAE,EAAU,EAAE,SAAyB;QAAzB,0BAAA,EAAA,yBAAyB;QACzE,IAAM,YAAY,GAAG,EAAE,CAAC;QACxB,IAAM,MAAM,GAAG,gBAAM,CAAC,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACzD,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC5B,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QACzD,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC1C,OAAO,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,UAAU,EAAV,UAAW,IAAY,EAAE,GAAW,EAAE,EAAU,EAAE,SAAyB;QAAzB,0BAAA,EAAA,yBAAyB;QACzE,IAAM,YAAY,GAAG,EAAE,CAAC;QACxB,IAAM,QAAQ,GAAG,gBAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QAC7D,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC9B,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;QAC3D,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QAC1C,OAAO,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,YAAY;IACZ,YAAY,EAAZ,UAAa,KAAa;QACxB,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAED,YAAY;IACZ,YAAY,EAAZ,UAAa,KAAa;QACxB,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC;IACjD,CAAC;IAED,cAAc;IAEd,OAAO;IACP,cAAc,EAAd,UAAe,UAA2B,EAAE,MAAuB;QACjE,IAAM,GAAG,GAAG,IAAI,kBAAO,CAAC,UAAU,CAAC,CAAC;QACpC,OAAO,GAAG,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO;IACP,aAAa,EAAb,UAAc,SAA0B,EAAE,MAAuB;QAC/D,IAAM,GAAG,GAAG,IAAI,kBAAO,CAAC,SAAS,CAAC,CAAC;QACnC,OAAO,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO;IACP,aAAa,EAAb,UAAc,SAA0B,EAAE,MAAuB;QAC/D,IAAM,GAAG,GAAG,IAAI,kBAAO,CAAC,SAAS,CAAC,CAAC;QACnC,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACvC,CAAC;IAED,OAAO;IACP,cAAc,EAAd,UAAe,UAA2B,EAAE,MAAuB;QACjE,IAAM,GAAG,GAAG,IAAI,kBAAO,CAAC,UAAU,CAAC,CAAC;QACpC,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC;IAED,aAAa;IACb,kBAAkB,YAAC,IAAW;QAAX,qBAAA,EAAA,WAAW;QAC5B,IAAM,GAAG,GAAG,IAAI,kBAAO,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QACrC,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;IACtF,CAAC;IAED,mBAAmB;IACnB,kBAAkB,EAAlB,UAAmB,UAA2B,EAAE,MAAuB;QAC/D,IAAA,KAA6B,eAAe,CAAC,mBAAmB,EAAE,EAA3D,MAAM,SAAA,EAAM,KAAK,QAA0C,CAAC;QACzE,IAAM,eAAe,GAAG,eAAe,CAAC,cAAc,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAC3E,IAAM,aAAa,GAAG,eAAe,CAAC,WAAW,CAAC,KAAK,EAAE,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;QAEvH,OAAO;YACL,eAAe,iBAAA;YACf,aAAa,eAAA;SACd,CAAC;IACJ,CAAC;IACD,mBAAmB;IACnB,iBAAiB,EAAjB,UAAkB,SAA0B,EAAE,eAAuB,EAAE,aAAqB;QAC1F,IAAM,GAAG,GAAG,eAAe,CAAC,aAAa,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC3E,IAAA,KAAkB,eAAe,CAAC,kBAAkB,CAAC,aAAa,CAAC,EAAlE,EAAE,QAAA,EAAE,SAAS,QAAqD,CAAC;QAC1E,OAAO,eAAe,CAAC,UAAU,CAAC,SAAS,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,mBAAmB;IACnB,iBAAiB,EAAjB,UAAkB,SAA0B,EAAE,MAAuB;QAC7D,IAAA,KAA6B,eAAe,CAAC,mBAAmB,EAAE,EAA3D,MAAM,SAAA,EAAM,KAAK,QAA0C,CAAC;QACzE,IAAM,eAAe,GAAG,eAAe,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACzE,IAAM,aAAa,GAAG,eAAe,CAAC,WAAW,CAAC,KAAK,EAAE,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;QACvH,OAAO;YACL,eAAe,iBAAA;YACf,aAAa,eAAA;SACd,CAAC;IACJ,CAAC;IACD,mBAAmB;IACnB,mBAAmB,EAAnB,UAAoB,UAA2B,EAAE,eAAuB,EAAE,aAAqB;QAC7F,IAAM,GAAG,GAAG,eAAe,CAAC,cAAc,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC7E,IAAA,KAAkB,eAAe,CAAC,kBAAkB,CAAC,aAAa,CAAC,EAAlE,EAAE,QAAA,EAAE,SAAS,QAAqD,CAAC;QAC1E,OAAO,eAAe,CAAC,UAAU,CAAC,SAAS,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,WAAW,EAAX,UAAY,IAAY,EAAE,IAAY;QACpC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,kBAAkB,EAAlB,UAAmB,YAAoB;QACrC,IAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YAChB,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;SACtE;QACD,OAAO,CAAC,YAAY,CAAC,CAAC;IACxB,CAAC;CACF,CAAC;AAEF,kBAAe,eAAe,CAAC"}