seller-base-service 0.0.1-security → 0.1.12

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.

Potentially problematic release.


This version of seller-base-service might be problematic. Click here for more details.

Files changed (58) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +59 -3
  3. package/dist/babel-config-for-main-project.js +74 -0
  4. package/dist/collection/index.js +189 -0
  5. package/dist/collection/index.js.map +1 -0
  6. package/dist/common/index.js +206 -0
  7. package/dist/common/index.js.map +1 -0
  8. package/dist/feedback/index.js +249 -0
  9. package/dist/feedback/index.js.map +1 -0
  10. package/dist/index.d.ts +1117 -0
  11. package/dist/index.js +3223 -0
  12. package/dist/index.js.map +1 -0
  13. package/dist/notification/index.js +2373 -0
  14. package/dist/notification/index.js.map +1 -0
  15. package/dist/otp/index.js +197 -0
  16. package/dist/otp/index.js.map +1 -0
  17. package/dist/redteam.js +64 -0
  18. package/dist/report/index.js +330 -0
  19. package/dist/report/index.js.map +1 -0
  20. package/dist/sip/index.js +191 -0
  21. package/dist/sip/index.js.map +1 -0
  22. package/dist/upload/index.js +235 -0
  23. package/dist/upload/index.js.map +1 -0
  24. package/package.json +40 -3
  25. package/src/development/index.ts +38 -0
  26. package/src/index.ts +6 -0
  27. package/src/modules/collection/constants.ts +11 -0
  28. package/src/modules/collection/index.ts +9 -0
  29. package/src/modules/collection/service.ts +53 -0
  30. package/src/modules/collection/types.ts +31 -0
  31. package/src/modules/common/index.ts +7 -0
  32. package/src/modules/common/interceptors.ts +16 -0
  33. package/src/modules/common/service.ts +60 -0
  34. package/src/modules/common/types.ts +36 -0
  35. package/src/modules/feedback/index.ts +6 -0
  36. package/src/modules/feedback/service.ts +73 -0
  37. package/src/modules/feedback/types.ts +68 -0
  38. package/src/modules/index.ts +77 -0
  39. package/src/modules/notification/action.ts +215 -0
  40. package/src/modules/notification/constants.ts +420 -0
  41. package/src/modules/notification/index.ts +23 -0
  42. package/src/modules/notification/service.ts +90 -0
  43. package/src/modules/notification/types.ts +155 -0
  44. package/src/modules/otp/constants.ts +39 -0
  45. package/src/modules/otp/index.ts +11 -0
  46. package/src/modules/otp/service.ts +28 -0
  47. package/src/modules/otp/types.ts +13 -0
  48. package/src/modules/report/constants.ts +20 -0
  49. package/src/modules/report/index.ts +19 -0
  50. package/src/modules/report/service.ts +100 -0
  51. package/src/modules/report/types.ts +31 -0
  52. package/src/modules/report/utils.ts +74 -0
  53. package/src/modules/sip/index.ts +2 -0
  54. package/src/modules/sip/service.ts +59 -0
  55. package/src/modules/sip/types.ts +33 -0
  56. package/src/modules/upload/index.ts +8 -0
  57. package/src/modules/upload/service.ts +94 -0
  58. package/src/modules/upload/types.ts +34 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["webpack://SellerBaseService/webpack/universalModuleDefinition","webpack://SellerBaseService/webpack/bootstrap","webpack://SellerBaseService/./src/modules/common/interceptors.ts","webpack://SellerBaseService/./src/modules/common/service.ts","webpack://SellerBaseService/./src/modules/common/index.ts","webpack://SellerBaseService/./src/modules/sip/service.ts","webpack://SellerBaseService/./src/modules/sip/index.ts","webpack://SellerBaseService/./src/modules/otp/constants.ts","webpack://SellerBaseService/./src/modules/otp/service.ts","webpack://SellerBaseService/./src/modules/otp/index.ts","webpack://SellerBaseService/./src/modules/upload/service.ts","webpack://SellerBaseService/./src/modules/upload/index.ts","webpack://SellerBaseService/./src/modules/report/constants.ts","webpack://SellerBaseService/./src/modules/report/utils.ts","webpack://SellerBaseService/./src/modules/report/service.ts","webpack://SellerBaseService/./src/modules/report/index.ts","webpack://SellerBaseService/./src/modules/collection/constants.ts","webpack://SellerBaseService/./src/modules/collection/service.ts","webpack://SellerBaseService/./src/modules/collection/index.ts","webpack://SellerBaseService/./src/modules/feedback/service.ts","webpack://SellerBaseService/./src/modules/feedback/index.ts","webpack://SellerBaseService/./src/modules/notification/service.ts","webpack://SellerBaseService/./src/modules/notification/types.ts","webpack://SellerBaseService/./src/modules/notification/constants.ts","webpack://SellerBaseService/./src/modules/notification/action.ts","webpack://SellerBaseService/./src/modules/notification/index.ts","webpack://SellerBaseService/./src/modules/index.ts","webpack://SellerBaseService/./src/index.ts","webpack://SellerBaseService/external \"seller-base\"","webpack://SellerBaseService/./node_modules/big-integer/BigInteger.js","webpack://SellerBaseService/(webpack)/buildin/module.js"],"names":[],"mappings":"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A;;;AAGA;;;;;;;;;;;;;;;ACHA,mD;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;;AAEA,gCAAgC;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,SAAS;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,iCAAiC;AACjC;AACA;AACA;AACA;AACA,mBAAmB,OAAO;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,SAAS;AAC5B;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,SAAS;AACvB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wCAAwC;AACxC;AACA;AACA;AACA;AACA;AACA,mBAAmB,OAAO;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,SAAS;AAC5B;AACA,2BAA2B,SAAS;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA,mBAAmB,OAAO;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,gDAAgD;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,OAAO;AAC1B;AACA;AACA,2BAA2B,OAAO;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,YAAY;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,OAAO;AAClC;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,QAAQ;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,kCAAkC,QAAQ;AAC1C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,cAAc;AACvC;AACA;AACA;AACA,2BAA2B,QAAQ;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,OAAO;AACtC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,+BAA+B,OAAO;AACtC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;;AAEA;AACA;AACA;AACA,oDAAoD;AACpD;;AAEA;AACA;AACA;AACA;AACA;AACA,uCAAuC,QAAQ;AAC/C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,iDAAiD,cAAc,EAAE;AACjE;AACA;;AAEA;AACA,iDAAiD,cAAc,EAAE;AACjE;AACA;;AAEA;AACA,iDAAiD,cAAc,EAAE;AACjE;AACA;;AAEA;AACA,0BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,qBAAqB,IAAI;AACvE;AACA,gBAAgB;AAChB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,OAAO;AAC7B;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,mBAAmB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,qBAAqB;AACxC;AACA;AACA,mBAAmB,YAAY;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,iBAAiB;AACrD;AACA;AACA;AACA;AACA,oBAAoB,KAAK,EAAE;AAC3B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,mCAAmC,QAAQ;AAC3C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;;AAEpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,+GAA+G,wBAAwB;;AAEvI;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,UAAU;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,0FAA0F;AACjI;;AAEA;AACA;AACA;;AAEA;AACA,CAAC;;AAED;AACA,IAAI,KAA6B;AACjC;AACA;;AAEA;AACA,IAAI,IAA0C;AAC9C,IAAI,mCAAQ;AACZ;AACA,KAAK;AAAA,oGAAC;AACN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC56CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA","file":"index.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"seller-base\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"seller-base\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"SellerBaseService\"] = factory(require(\"seller-base\"));\n\telse\n\t\troot[\"SellerBaseService\"] = factory(root[\"seller-base\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE__6Xvj__) {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"/7QA\");\n","import { APIRequestConfig, Service } from 'seller-base';\n\n/**\n * 根据 URL 参数设置 Sip 请求参数\n */\nexport function addSipParams(config: APIRequestConfig): APIRequestConfig {\n if ((config.extra && config.extra.ignoreSip) || (config.params && config.params.sip_region)) {\n return config;\n }\n const { sipRegion, sipShopid } = Service.Utility.camelCaseKeys(Service.Utility.parseQueryString(window.location.search.substr(1)));\n if (sipRegion && sipShopid) {\n const sipParams = Service.Utility.snakeCaseKeys({ sipRegion, sipShopid });\n config.params = config.params ? Object.assign({}, sipParams, config.params) : sipParams;\n }\n return config;\n}\n","import { Service, ServiceModule } from 'seller-base';\nimport { addSipParams } from './interceptors';\nimport { CommonWithSipRequestContainer } from './types';\n\n/**\n * CommonServiceWithSip 类不应该直接被实例化,应该被继承,用法和 ServiceModule 一致\n */\nexport default class CommonServiceWithSip extends ServiceModule {\n public static $instance: CommonServiceWithSip;\n public api: CommonWithSipRequestContainer;\n\n public static Constants = {\n APISipNamespace: 'sipRequest'\n };\n\n constructor(service: Service) {\n super(service);\n\n this.api = {} as CommonWithSipRequestContainer;\n\n this.api.v1Request = this.request.create(Object.assign({\n path: 'api/v1',\n useUnpackData: false\n }, Service.Constants.APICommonCreatorConfig, {\n config: Object.assign({\n namespace: Service.Constants.APICommonNamespace.v2Request\n }, Service.Constants.APICommonRequestConfig)\n }));\n this.api.v1Request.interceptors.request.use(addSipParams);\n\n this.api.v2Request = this.request.create(Object.assign({\n path: 'api/v2',\n useUnpackData: false\n }, Service.Constants.APICommonCreatorConfig, {\n config: Object.assign({\n namespace: Service.Constants.APICommonNamespace.v2Request\n }, Service.Constants.APICommonRequestConfig)\n }));\n this.api.v2Request.interceptors.request.use(addSipParams);\n\n this.api.v3Request = this.request.create(Object.assign({\n path: 'api/v3',\n useUnpackData: true\n }, Service.Constants.APICommonCreatorConfig, {\n config: {\n namespace: Service.Constants.APICommonNamespace.v3Request\n }\n }));\n this.api.v3Request.interceptors.request.use(addSipParams);\n\n this.api.sipRequest = this.request.create(Object.assign({\n path: 'api/sip',\n useUnpackData: false\n }, Service.Constants.APICommonCreatorConfig, {\n config: {\n namespace: CommonServiceWithSip.Constants.APISipNamespace\n }\n }));\n }\n}\n","export { default as CommonServiceWithSip } from './service';\nexport {\n CommonWithSipRequestContainer,\n CommonListResponse,\n ErrorResponse,\n BatchI\n} from './types';\n","import { SipOrderResponse } from './types';\nimport { Service, ServiceModule, APIPromise, APIExternalPromise, APICreatorConfig } from 'seller-base';\nexport default class SipGlobalService extends ServiceModule {\n public static $instance: SipGlobalService;\n public static GlobalServiceModule = true; // 公用service\n\n constructor(service: Service) {\n super(service);\n this.name = 'sipGlobal';\n SipGlobalService.$instance = this;\n }\n\n protected getRequestConfig(): { [key: string]: Partial<APICreatorConfig> } {\n return {\n sipRequestV1: {\n path: 'api/sip/',\n useUnpackData: true\n },\n sipRequest: {\n path: 'api/sip/v2/',\n useUnpackData: true\n }\n };\n }\n\n /**\n * getSipOrderDetail 调用SIP接口获取a-shop的订单详情\n */\n public getSipOrderDetail(orderidList: number[], aShopId?: number): APIPromise<SipOrderResponse> {\n const { sipShopid } = Service.Utility.camelCaseKeys(Service.Utility.parseQueryString(window.location.search.substr(1)));\n\n return this.api.sipRequest.get('orders/detail/', {\n params: {\n orderid_list: JSON.stringify(orderidList),\n affi_shopid: aShopId || sipShopid\n }\n }) as APIExternalPromise<SipOrderResponse>;\n }\n\n /**\n * getSuggestedPrice 获取a-shop的sku推荐的价格\n */\n public getSuggestedPrice(params: object) {\n return this.api.sipRequestV1.get('items/price/', { params }).then((response: any) => {\n const res = response.error ? {} : response.data;\n return (res as any);\n });\n }\n\n /**\n * setAskuPrice 设置a-shop的sku的价格\n */\n public setAskuPrice(params: object) {\n return this.api.sipRequestV1.put('items/price/', params).then((response: any) => {\n const res = response.error ? {} : response.data;\n return (res as any);\n });\n }\n}\n","export { default as SipGlobalService } from './service';\nexport { SipOrderResponse, SipOrder, SipOrderItem } from './types';\n","/**\n * OtpSeed 是所有 Otp 验证参数的类型配置\n */\nexport enum OtpSeed {\n /**\n * 下载报告\n */\n Report = 'report',\n\n /**\n * 添加银行账号\n */\n AddBankAccount = 'add-bank-account',\n\n /**\n * 编辑银行账号,删除银行账号\n */\n EditBankAccount = 'edit-bank-account',\n\n /**\n * 修改密码返回400,需要二次验证带上此类型\n */\n ResetPassword = 'reset-password',\n\n /**\n * 绑定手机,修改手机\n */\n PhoneNumber = 'phone-number',\n\n /**\n * 钱包身份认证\n */\n KycVerify = 'kyc-verify',\n\n /**\n * 添加验证支付密码\n */\n PaymentPasscode = 'payment-passcode',\n}\n","import { Service, ServiceModule, APIPromise, APIExternalPromise, APIRequestConfig } from 'seller-base';\nimport { OtpVerifyData } from './types';\n\nexport default class OtpService extends ServiceModule {\n public static $instance: OtpService;\n\n constructor(service: Service) {\n super(service);\n this.name = 'otp';\n OtpService.$instance = this;\n }\n\n /**\n * 获取短信验证码\n * @see https://api.seller.shopee.io/project/50/interface/api/7950\n */\n public sendSmsOtp(data: OtpVerifyData, config?: APIRequestConfig): APIPromise<{}> {\n return this.api.v3Request.post('/general/send_sms_otp/', data, config) as APIExternalPromise<{}>;\n }\n\n /**\n * 发送语音验证码\n * @see https://api.seller.shopee.io/project/50/interface/api/9270\n */\n public sendVoiceOtp(data: OtpVerifyData, config?: APIRequestConfig): APIPromise<{}> {\n return this.api.v3Request.post('/general/send_voice_otp/', data, config) as APIExternalPromise<{}>;\n }\n}\n","export {\n OtpSeed\n} from './constants';\n\nexport {\n default as OtpService\n} from './service';\n\nexport {\n OtpVerifyData\n} from './types';\n","import { Service, ServiceModule, APIPromise, APIExternalPromise, APIRequestConfig } from 'seller-base';\nimport { UploadOptions, UploadVideoData } from './types';\n\nexport default class UploadService extends ServiceModule {\n public static $instance: UploadService;\n\n constructor(service: Service) {\n super(service);\n this.name = 'upload';\n UploadService.$instance = this;\n }\n\n /**\n * 转化 Base64 为 Blob\n */\n public dataUrlToBlob(dataURI: string): Blob {\n let byteString;\n if (dataURI.split(',')[0].indexOf('base64') >= 0) {\n byteString = window.atob(dataURI.split(',')[1]);\n } else {\n byteString = decodeURIComponent(dataURI.split(',')[1]);\n }\n\n /**\n * 获取 mimeType\n */\n const mimeType = dataURI.split(',')[0].split(':')[1].split(';')[0];\n\n const ia = new Uint8Array(byteString.length);\n for (let i = 0; i < byteString.length; i++) {\n ia[i] = byteString.charCodeAt(i);\n }\n\n return new Blob([ia], { type: mimeType });\n }\n\n /**\n * 转化传入的对象为 FromData 数据\n */\n public createFormData(data: { [name: string]: string | Blob }) {\n const formData = new FormData();\n Object.keys(data).forEach(name => {\n if (data.hasOwnProperty(name)) {\n const value = data[name];\n if (value) {\n const isBase64 = typeof value === 'string' && value.indexOf('data:') === 0;\n formData.append(name, isBase64 ? this.dataUrlToBlob(value as string) : value);\n }\n }\n });\n return formData;\n }\n\n /**\n * 一个上传的通用方法 Post 数据,类型是 FormData\n */\n public postData(config: UploadOptions): APIPromise<any> {\n const formData = this.createFormData(config.data);\n return config.request.post(config.path, formData, Object.assign({}, config.config || {}, { params: config.params || {} })) as APIExternalPromise<any>;\n }\n\n /**\n * 上传图片 V1\n */\n public uploadImageV1(file: string | Blob, params?: any, config?: APIRequestConfig): APIPromise<any> {\n return this.postData({\n path: '/images/',\n data: { file },\n request: this.api.v1Request,\n params,\n config\n });\n }\n\n /**\n * 上传图片 V3,一般应该使用这个接口\n */\n public uploadImage(file: string | Blob, params?: any, config?: APIRequestConfig): APIPromise<any> {\n return this.postData({\n path: '/general/upload_image/',\n data: { file },\n request: this.api.v3Request,\n params,\n config\n });\n }\n\n /**\n * 上传 Video\n */\n public uploadVideo(data: UploadVideoData): APIPromise<{}> {\n return this.api.v3Request.post('/general/upload_video/', data) as APIExternalPromise<{}>;\n }\n}\n","export {\n default as UploadService\n} from './service';\n\nexport {\n UploadOptions,\n UploadVideoData\n} from './types';\n","/**\n * 文件类型配置\n */\nexport const FileTypeConfig: { [key: string]: string } = {\n xls: 'application/vnd.ms-excel',\n xlsx: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\n csv: 'text/plain;charset=utf-8',\n zip: 'application/zip',\n};\n\n/**\n * 报表状态\n */\nexport enum ReportStatus {\n PROCESSING = 1,\n DOWNLOADABLE = 2,\n DOWNLOADED = 3,\n FAILED = 4,\n DELETED = 5\n}\n","import { AxiosResponse } from 'axios';\nimport { Service, APIError, APIPromise } from 'seller-base';\n\n/**\n * 创建一个标准 error 的结构,仅仅 ReportService 内部使用\n */\nexport function normalizeError(code: number | string, message: string, error: Error): APIError {\n return {\n code: code || Service.Constants.APIPredfinedErrors.Default.CODE,\n message: message || Service.Constants.APIPredfinedErrors.Default.MESSAGE,\n stack: error.stack || error,\n data: null,\n status: 200,\n } as APIError;\n}\n\n/**\n * 解析Blob JSON Response,用于把 Blob Data 转化为 JSON Data\n */\nexport function parseBlobJsonResponse(res: AxiosResponse<Blob>): APIPromise<any> {\n return new Promise((resolve) => {\n const fileReader = new FileReader();\n fileReader.onload = (e) => {\n let data = {};\n if ((window as any).TextDecoder) {\n const decoder = new TextDecoder('utf-8');\n data = JSON.parse(decoder.decode(new Uint8Array(e.target.result as any)));\n } else {\n data = JSON.parse(String.fromCharCode.apply(null, new Uint8Array(e.target.result as any)));\n }\n resolve({\n data,\n error: false,\n headers: res.headers,\n config: res.config\n });\n };\n fileReader.onerror = () => {\n resolve({\n data: null,\n error: normalizeError(null, null, new Error('ParseBlobError: Default Error.')),\n headers: res.headers,\n config: res.config\n });\n fileReader.abort();\n };\n fileReader.readAsArrayBuffer(res.data);\n }) as APIPromise<any>;\n}\n\n/**\n * 下载 Blob Data\n */\nexport function downloadBlobData(content: any, filename: string, url: string, fileTypes: { [key: string]: string }) {\n const downLink = document.createElement('a');\n\n const matches = filename.match(/.+\\.([a-z]+)$/);\n const type = matches ? fileTypes[matches[1]] : undefined;\n\n if (!('download' in downLink) || !type) {\n return window.open(url);\n }\n\n downLink.download = filename;\n downLink.style.display = 'none';\n\n const blobURL = new Blob([content], { type });\n\n downLink.href = URL.createObjectURL(blobURL);\n\n document.body.appendChild(downLink);\n downLink.click();\n document.body.removeChild(downLink);\n}\n","import { AxiosResponse } from 'axios';\nimport { Service, ServiceModule, APIPromise, APIExternalPromise, APIRequestConfig, APIExternalResponse } from 'seller-base';\nimport { FileTypeConfig } from './constants';\nimport { parseBlobJsonResponse, normalizeError, downloadBlobData } from './utils';\nimport { Report, ReportListParams, ReportListResponse } from './types';\n\n/**\n * 这整个report不应该将具体的实现放在这里,后续需要去掉\n */\ninterface ServiceAPICreatorConfig extends APIRequestConfig {\n responseInterceptor: any;\n}\n\nexport default class ReportService extends ServiceModule {\n public static $instance: ReportService;\n\n constructor(service: Service) {\n super(service);\n this.name = 'report';\n ReportService.$instance = this;\n }\n\n protected getRequestConfig() {\n return {\n downloadRequest: {\n path: 'api/v3',\n useTransform: false,\n useCamelCaseKeys: false,\n config: {\n skipError: true,\n responseType: 'blob',\n headers: {\n Accept: 'application/json, application/force-download, text/plain, */*'\n },\n namespace: Service.Constants.APICommonNamespace.v3Request,\n },\n requestInterceptors: [(config: any) => {\n Object.assign(config, {\n skipErorr: config.skipErorr || true,\n });\n return config;\n }],\n\n responseInterceptor: [\n [(res: AxiosResponse) => {\n if (res.data) {\n if (res.headers['content-disposition']) {\n const matches = res.headers['content-disposition'].match(/.*filename=\"([a-zA-Z0-9._]+)\"/i);\n downloadBlobData(new Blob([res.data]), matches ? matches[1] : '', res.config.url, FileTypeConfig);\n (res as any).error = false;\n return res;\n } else {\n return parseBlobJsonResponse(res).then(res => {\n res.error = res.data ? normalizeError(res.data.code, res.data.message, new Error('ParseBlobError: Server response error.')) : normalizeError(null, null, new Error('ParseBlobError: Default Error.')),\n res.data = null;\n return res;\n });\n }\n }\n }, (error: Error) => {\n return {\n data: null,\n error: normalizeError(null, null, error),\n headers: null,\n config: null\n } as APIExternalResponse;\n }]\n ]\n } as ServiceAPICreatorConfig\n };\n }\n\n /**\n * 下载 Report 的基础方法\n */\n public downloadReport(url: string, params: any = {}, config: APIRequestConfig = {}): APIPromise<any> {\n return this.api.downloadRequest.get(url, Object.assign({}, config, {\n params: Service.Utility.snakeCaseKeys(params)\n })) as APIExternalPromise<any>;\n }\n\n /**\n * 获取 Report 详情的基础方法\n */\n public getReport(url: string, reportId: number, config: APIRequestConfig = {}): APIPromise<Report> {\n return this.api.v3Request.get(url, Object.assign({}, config, {\n params: Service.Utility.snakeCaseKeys({ reportId })\n })) as APIExternalPromise<Report>;\n }\n\n /**\n * 获取 Report List 的基础方法\n */\n public getReportList(url: string, params: ReportListParams, config: APIRequestConfig = {}): APIPromise<ReportListResponse> {\n const status = params.status ? params.status.join(',') : undefined;\n return this.api.v3Request.get(url, Object.assign({}, config, {\n params: Service.Utility.snakeCaseKeys(Object.assign({}, params, { status }))\n })) as APIExternalPromise<ReportListResponse>;\n }\n}\n","export {\n FileTypeConfig,\n ReportStatus\n} from './constants';\n\nexport {\n default as ReportService\n} from './service';\n\nexport {\n downloadBlobData,\n parseBlobJsonResponse\n} from './utils';\n\nexport {\n Report,\n ReportListParams,\n ReportListResponse\n} from './types';\n","export const CollectionType = {\n CUSTOMIZED: 'customized',\n CATEGORY: 'category',\n AUTOMATIC: 'automatic'\n};\n\nexport const CollectionStatus = {\n DELETE: 'deleted',\n ACTIVE: 'active',\n INACTIVE: 'inactive'\n};\n","import { Service, ServiceModule, APIPromise, APIExternalPromise, APIRequestConfig } from 'seller-base';\nimport {\n PageActiveCollectionsParams,\n PageActiveCollectionsResponse,\n CollectionListResponse,\n CollectionUpdateData\n} from './types';\nimport {\n CollectionStatus,\n CollectionType\n} from './constants';\nimport {\n BatchI\n} from '../common';\n\nexport default class CollectionService extends ServiceModule {\n public static $instance: CollectionService;\n\n public static Constants = {\n CollectionStatus,\n CollectionType\n };\n\n constructor(service: Service) {\n super(service);\n this.name = 'collection';\n CollectionService.$instance = this;\n }\n\n public getPageActiveCollections(params: PageActiveCollectionsParams): APIPromise<PageActiveCollectionsResponse> {\n return this.api.v3Request.get('/category/page_active_collection_list/', { params: Service.Utility.snakeCaseKeys(params) }) as APIExternalPromise<PageActiveCollectionsResponse>;\n }\n\n public getCollectionList(keyword?: string, config: APIRequestConfig = {}): APIPromise<CollectionListResponse> {\n return this.api.v3Request.get('/category/get_collection_list/', Object.assign({\n params: keyword ? { keyword } : {}\n }, config)) as APIExternalPromise<CollectionListResponse>;\n }\n\n public getCollectionByIdList(ids: number[], config: APIRequestConfig = {}): APIPromise<CollectionListResponse> {\n return this.api.v3Request.get('/category/get_collection/', Object.assign({\n params: Service.Utility.snakeCaseKeys({ collectionIds: ids.join(',') })\n }, config)) as APIExternalPromise<CollectionListResponse>;\n }\n\n public updateCollections(collections: CollectionUpdateData[], config: APIRequestConfig = {}): APIPromise<BatchI> {\n return this.api.v3Request.post('/category/update_collection/', collections, config) as APIExternalPromise<BatchI>;\n }\n\n public updateAllCollections(collections: CollectionUpdateData[], config: APIRequestConfig = {}): APIPromise<BatchI> {\n return this.api.v3Request.post('/category/update_all_collections/', collections, config) as APIExternalPromise<BatchI>;\n }\n}\n","export { default as CollectionService } from './service';\n\nexport {\n Collection,\n PageActiveCollectionsParams,\n PageActiveCollectionsResponse,\n CollectionListResponse,\n CollectionUpdateData\n} from './types';\n","import { Service, ServiceModule, APIPromise, APIExternalPromise } from 'seller-base';\nimport { Feedback, FeedbackClassification, FeedbackSubmitPage, FileObject, FeedbackNewClassification } from './types';\n\nexport class FeedbackService extends ServiceModule {\n public static $instance: FeedbackService;\n\n constructor(service: Service) {\n super(service);\n this.name = 'feedback';\n FeedbackService.$instance = this;\n }\n\n protected getRequestConfig() {\n return {\n miscRequest: {\n path: 'api/sellermisc',\n useUnpackData: true,\n }\n };\n }\n\n /**\n * 卖家反馈\n *\n * @see https://api.seller.shopee.io/project/378/interface/api/22224\n */\n public async addFeedback(data: Feedback): APIPromise {\n return this.api.miscRequest.post('/feedback/add/', data) as APIExternalPromise;\n }\n\n /**\n * 获取feedback产品列表\n *\n * @see https://api.seller.shopee.io/project/378/interface/api/22242\n */\n public async getFeedbackClassifications(): APIPromise<FeedbackClassification[]> {\n return this.api.miscRequest.get('/feedback/classification/list/') as APIExternalPromise<FeedbackClassification[]>;\n }\n\n public async getNewFeedbackClassifications(): APIPromise<FeedbackNewClassification[]> {\n return this.api.miscRequest.get('/feedback/classification_new/list/') as APIExternalPromise<FeedbackNewClassification[]>;\n }\n\n /**\n * 获取feedbackt提交页列表\n *\n * @see https://api.seller.shopee.io/project/378/interface/api/22446\n */\n public async getFeedbackSubmitPages(): APIPromise<FeedbackSubmitPage[]> {\n return this.api.miscRequest.get('/feedback/submit_page/list/', { skipError: true }) as APIExternalPromise<FeedbackSubmitPage[]>;\n }\n\n public async getFeedbackTypes(): APIPromise<string[]> {\n return this.api.miscRequest.get('/feedback/type/list/') as APIExternalPromise<string[]>;\n }\n\n public async uploadImage(file: File, callback: (percentage: number) => void): Promise<{ data: FileObject }> {\n const formData = new FormData();\n formData.append('file', file);\n return this.api.miscRequest.post('/feedback_file/upload/?is_temp_file=false', formData, {\n headers: {\n 'Content-Type': 'multipart/form-data',\n },\n onUploadProgress(e: any) {\n if (e.total > 0) {\n e.percent = Math.floor(e.loaded / e.total * 100);\n }\n callback(e.percent);\n }\n });\n }\n\n}\n","export { FeedbackService } from './service';\nexport {\n Feedback,\n FeedbackClassification,\n FeedbackSubmitPage,\n} from './types';\n","import { Service, ServiceModule, APIPromise, APIExternalPromise, APIRequestConfig } from 'seller-base';\nimport { Base } from 'seller-base';\nimport {\n NotificationResponse,\n NotificationRequest,\n NotificationCountsResponse,\n NotificationCountsRequest,\n PullStatusResponse,\n UpdateNotificationList,\n NotificationGroupResponse,\n NotificationGroupRequest,\n FolderResponse,\n MarkAllAsReadRequest\n} from './types';\n\nexport class NotificationService extends ServiceModule {\n public static $instance: NotificationService;\n\n constructor(service: Service) {\n super(service);\n this.name = 'notification';\n NotificationService.$instance = this;\n }\n\n /**\n * 获取notification 列表\n * @see https://api.seller.shopee.io/project/1288/interface/api/39488\n * @param params NotificationRequest\n */\n public async getNotificationList(params: NotificationRequest, config: APIRequestConfig ): APIPromise<NotificationResponse> {\n return this.api.v1Request.get(`/notification/list`, { params: Base.Utility.snakeCaseKeys(params), skipError: !!(config && config.skipError) }) as APIExternalPromise<NotificationResponse>;\n }\n\n /**\n * 标记所有为已读\n * @see https://api.seller.shopee.io/project/1288/interface/api/39984\n * @param data\n */\n public async markAllAsRead(data: MarkAllAsReadRequest): APIPromise<{}> {\n return this.api.v1Request.post(`/notification/mark_all_as_read`, data) as APIExternalPromise<{}>;\n }\n\n /**\n * 更新notification状态\n * @see https://api.seller.shopee.io/project/1288/interface/api/39504\n * @param data updateList: UpdateNotificationList[]\n */\n public async updateNotificationStatus(data: { updateList: UpdateNotificationList[] }): APIPromise<{}> {\n return this.api.v1Request.post(`/notification/status`, data) as APIExternalPromise<{}>;\n }\n\n /**\n * 获取notification未读消息,包括下面folder\n * @see https://api.seller.shopee.io/project/1288/interface/api/39496\n * @param params NotificationCountsRequest\n */\n public getNotificationCounts(params: NotificationCountsRequest, config: APIRequestConfig): APIPromise<NotificationCountsResponse> {\n return this.api.v1Request.get(`/notification/count`, {\n skipError: config.skipError,\n params,\n } as any) as APIExternalPromise<NotificationCountsResponse>;\n }\n\n /**\n * 拉取最新notification未读消息数量\n * @see https://api.seller.shopee.io/project/1288/interface/api/39992\n */\n public pullNotificationStatus(): APIPromise<PullStatusResponse> {\n return this.api.v1Request.get(`/notification/poll_status`, { skipError: true } as any) as APIExternalPromise<PullStatusResponse>;\n }\n\n /**\n * 获取group信息\n * @see https://api.seller.shopee.io/project/1288/interface/api/40000\n * @param params: NotificationGroupRequest\n */\n public getNotificationGroup(params: NotificationGroupRequest): APIPromise<NotificationGroupResponse> {\n return this.api.v1Request.get(`/notification/group`, { params: Base.Utility.snakeCaseKeys(params) }) as APIExternalPromise<NotificationGroupResponse>;\n }\n\n /**\n * 获取有权限的folder信息\n * @see https://api.seller.shopee.io/project/1288/interface/api/42018\n */\n public getFolders(config: APIRequestConfig): APIPromise<FolderResponse> {\n return this.api.v1Request.get(`/notification/folder`, {\n skipError: config.skipError,\n } as any) as APIExternalPromise<FolderResponse>;\n }\n}\n","import { LanguageCode } from 'seller-base';\nexport interface Notification {\n content: string;\n actionId: string;\n shopid: number;\n status: number;\n type: number;\n timestamp: number;\n groupId: string;\n groupCount: number;\n actionCate: number;\n actionRedirectType: number;\n actionRedirectUrl: string;\n actionTypeRedirectUrl: string;\n appPathRedirectUrl: string;\n redirectActionTypeRedirectUrl: string;\n actionType: number;\n apprl: string;\n actionAppPath: string;\n idInfo: {\n userid?: number;\n shopid?: number;\n orderId?: number;\n buyerId?: number;\n returnId?: number;\n refundId?: number;\n itemId?: number;\n checkoutId?: number;\n taskId?: number;\n };\n images: string[];\n itemCount: number;\n pcRedirectUrl: string;\n title: string;\n traceId: string;\n}\n\nexport interface NotificationResponse {\n notifications: Notification[];\n hasMore: string;\n status: number;\n msg: string;\n}\n\nexport interface NotificationGroupResponse {\n notifications: Notification[];\n status: number;\n msg: string;\n}\n\nexport interface NotificationRequest {\n page: number;\n pageSize: number;\n status?: number;\n type?: number;\n lang?: LanguageCode;\n}\n\nexport interface NotificationGroupRequest {\n groupId: string;\n shopid: number;\n lang?: LanguageCode;\n}\n\nexport interface UpdateNotificationList {\n actionId: string;\n status: number;\n}\n\nexport interface CompiledNotification {\n id: string;\n type?: number;\n title: string;\n groupId: string;\n groupCount: number;\n status: Status;\n clickable: boolean;\n timestamp: number;\n actionRedirectType: number;\n actionRedirectUrl: string;\n actionTypeRedirectUrl: string;\n appPathRedirectUrl: string;\n redirectActionTypeRedirectUrl: string;\n pcRedirectUrl: string;\n actionAppPath: string;\n idInfo?: {\n userid?: number;\n shopid?: number;\n orderId?: number;\n buyerId?: number;\n returnId?: number;\n refundId?: number;\n itemId?: number;\n checkoutId?: number;\n taskId?: number;\n };\n actionCate: number;\n traceId: string;\n actionType: number;\n // tslint:disable-next-line\n action: Function;\n content?: string;\n images?: string[];\n}\n\nexport interface NotificationCountsRequest {\n status: number;\n}\n\nexport interface NotificationCountsResponse {\n status: number;\n msg: string;\n counts: Counts[];\n}\n\nexport interface Counts {\n type: number;\n count: number;\n}\n\nexport interface PullStatusResponse {\n newCountList: Counts[];\n msg: string;\n status: number;\n}\n\nexport interface FolderResponse {\n notiPerm: boolean;\n folders: number[];\n}\n\nexport interface MarkAllAsReadRequest {\n msgType?: number;\n latestMsgId: string;\n}\n\nexport enum Status {\n UNREAD = 1,\n READ = 2,\n DELETE = 3\n}\n\nexport interface TrackData {\n actionCategory: number;\n actionId: number;\n noticode: number;\n taskId: number;\n hasParent: boolean;\n hasChild: boolean;\n orderid: number;\n withdrawalId: number;\n traceId: number;\n notiFolder: string;\n isRead: boolean;\n}\n","import { CountryCode, Base } from 'seller-base';\nexport const FoldersConfig = [\n {\n to: '/portal/notification/',\n folderKey: undefined,\n type: null,\n category: null,\n transifyKey: 'sp_pc_notification_label_all_notification',\n trackKey: 'all_notifications',\n trackImpressionKey: 'all_notifications'\n },\n {\n to: '/portal/notification/order-updates/',\n folderKey: 'order-updates',\n type: 1,\n category: [ 17, 26 ],\n transifyKey: 'sp_pc_notification_label_order_updates',\n trackKey: 'order_updates',\n trackImpressionKey: 'order_updates'\n },\n {\n to: '/portal/notification/rating-updates/',\n folderKey: 'rating-updates',\n type: 2,\n category: 18,\n transifyKey: 'sp_pc_notification_label_rating_updates',\n trackKey: 'rating',\n trackImpressionKey: 'rating'\n },\n {\n to: '/portal/notification/return-refund/',\n folderKey: 'return-refund',\n type: 3,\n category: 19,\n transifyKey: 'sp_pc_notification_label_return_and_refund_updates',\n trackKey: 'return_refund',\n trackImpressionKey: 'return_refund'\n },\n {\n to: '/portal/notification/listing-updates/',\n folderKey: 'listing-updates',\n type: 4,\n category: [ 20, 27 ],\n transifyKey: 'sp_pc_notification_label_listing_updates',\n trackKey: 'listing',\n trackImpressionKey: 'listing'\n },\n {\n to: '/portal/notification/sbs-updates/',\n folderKey: 'sbs-updates',\n type: 9,\n category: [ 15, 16 ],\n transifyKey: 'sp_pc_notification_label_sbs_updates',\n trackKey: 'sbs_updates',\n trackImpressionKey: 'sbs_updates'\n },\n {\n to: '/portal/notification/wallet-updates/',\n folderKey: 'wallet-updates',\n type: 5,\n category: [ 21, 28 ],\n transifyKey: 'sp_pc_notification_label_wallet_updates',\n trackKey: 'seller_wallet',\n trackImpressionKey: 'seller_wallet'\n },\n {\n to: '/portal/notification/marketing-center/',\n folderKey: 'marketing-center',\n type: 6,\n category: [ 9, 14, 22 ],\n transifyKey: 'sp_pc_notification_label_marketing_centre_updates',\n trackKey: 'marketing_center',\n trackImpressionKey: 'marketing_center'\n },\n {\n to: '/portal/notification/performance/',\n folderKey: 'performance',\n type: 7,\n category: [ 23, 29 ],\n transifyKey: 'sp_pc_notification_label_performance_updates',\n trackKey: 'perfomrance',\n trackImpressionKey: 'perfomrance'\n },\n {\n to: '/portal/notification/shopee-updates/',\n folderKey: 'shopee-updates',\n type: 8,\n category: [ 6, 24, 30, 31 ],\n transifyKey: 'sp_pc_notification_label_shopee_updates',\n trackKey: 'shopee_updates',\n trackImpressionKey: 'shopee_updates'\n }\n];\n\nexport const ActionTypes = {\n NEW_ORDER: 1, // unpaid in before logistics version, topay in new version\n OUT_STOCK: 2,\n DUP_LOGIN: 3,\n INVALID_ITEM: 4,\n ORDER_PAID: 5, // for before logistics version only\n ORDER_COMPLETE: 7, // both before logistics and logistics version\n CHAT_MSG: 8,\n NEW_ACTIVITY: 11,\n OFFER_STATUS: 12,\n NEW_ITEM: 14,\n ORDER_CANCEL: 15,\n BAN_ITEM: 16,\n ACCOUNT_BAN: 17,\n CHECKOUT_PAID: 18, // for before logistics version only\n RETURN_UPDATE: 19,\n CHECKOUT_CANCEL: 20,\n CHECKOUT_UPDATE: 21, // ReceiptRejected\n ORDER_UPDATE: 22, // PaymentMethod->Offline, Order->CreditCard\n EMAIL_VERIFIED: 23,\n ORDER_TOSHIP: 24, // noticode for logistics version\n ORDER_TORECEIVE: 25, // noticode for logistics version\n CHECKOUT_TOSHIP: 26, // noticode for logistics version\n USERINFO_UPDATEED: 27, // to inform client userinfo has been updated\n NEW_FEED: 28, // to inform client user has new feed\n SHOPINFO_UPDATED: 29, // to inform client shopinfo has been updated\n OUT_STOCK_VARIATION: 30,\n ACCOUNT_FROZEN: 31, // https://www.pivotaltracker.com/n/projects/1248076/stories/112198713\n ACCOUNT_UNFROZEN: 32,\n CHAT_UPDATE: 33, // for update last_read msgid\n CART_UPDATE: 34, // for update cart_item_count\n CHAT_CLEARED: 35, // for chat msg cleared\n ACTION_REQUIRE_REMOVED: 36, // for AR or Activity removed\n CHAT_UNREAD: 37, // for unread a chat\n\n // System Message notifications\n ACTION_SYSTEM_MESSAGE: 99, // client use this to identify sysmessage\n SELLER_PAY_CONFIRM: 100,\n BUYER_UNDERPAY: 101,\n BUYER_PAYER_VERI_FAIL: 102,\n BUYER_CHECKOUT_CANCEL_UNDERPAY: 103,\n SELLER_ORDER_CANCEL_NOPAY: 104,\n BUYER_CHECKOUT_CANCEL_PAY_VERI_FAIL: 105,\n BUYER_ORDER_CANCEL_NOPAY: 106,\n BUYER_BEFORE_ESCROW_RELEASE: 107,\n SELLER_ESCROW_EXTEND: 108,\n BUYER_ORDER_CONFIRM_REMINDER: 109,\n BUYER_ORDER_CANCEL_BANK: 110,\n BUYER_ORDER_CANCEL_CARD: 111,\n BUYER_REFUND_BANK: 112,\n BUYER_REFUND_CARD: 113,\n SELLER_RETURN_REQUEST: 114,\n SELLER_BEFORE_RELEASE_REFUND: 115,\n BUYER_DISPUTE: 116,\n NEED_PROOF: 117,\n SELLER_MEDIATION_RESULT: 118,\n BUYER_OVERPAID_BANK: 119,\n BUYER_NONRECEIPT_DISPUTE: 120,\n SELLER_BANK_INFO: 121,\n BUYER_REFUND_CREATED_BANK: 122,\n SELLER_ORDER_CANCEL_BY_BUYER: 123,\n BUYER_ORDER_SHIPPED: 124,\n BUYER_REFUND_CREATED_CARD: 125,\n SELLER_BANK_INFO_REMINDER: 126,\n BUYER_BANK_INFO_REMINDER: 127,\n BUYER_RETURN_APPROVED: 128,\n BUYER_PAY_CONFIRM: 129,\n BUYER_UNDERPAY_REMINDER: 130,\n BUYER_NOPAY_REMINDER: 131,\n SELLER_NEW_ORDER_ESCROW: 132,\n SELLER_NEW_ORDER_OFFLINE: 133,\n BUYER_BANNED_ITEM: 134,\n BUYER_BEFORE_ESCROW_RELEASE_EXTEND: 135,\n ORDER_COMPLETE_BANK: 136, // escrow\n ORDER_COMPLETE_NO_BANK: 137, // escrow\n SELLER_BANKINFO_REJECTED: 138,\n BUYER_BANKINFO_REJECTED: 139,\n SELLER_NONRECEIPT_RETURN_REQUEST: 140,\n BUYER_NONRECEIPT_RETURN_REQUEST: 141,\n BUYER_MEDIATION_RESULT: 142,\n BUYER_NOTRECEIVE_RETUERN_DISPUTE: 143,\n SELLER_NOTRECEIVE_RETUERN_DISPUTE: 144,\n BUYER_REFUND_CREATED_BT: 145,\n SELLER_ORDER_COMPLETE_OFFLINE: 146,\n PROMO_CODE_GENERATED: 147,\n CUSTOMIZED_ACTION: 148,\n USER_BANKINFO_REJECTED: 149,\n ORDER_CHANGE_OFFLINE_TO_ESCROW: 150,\n CUSTOMIZED_ACTION_PURE: 151,\n CUSTOMIZED_PUSHNOTI_PURE: 152,\n\n // add for logistics\n SELLER_NEW_ORDER_COD: 153,\n ORDER_CHANGE_OFFLINE_TO_COD: 154,\n BUYER_ORDER_COD_APPROVE: 155,\n SELLER_ORDER_COD_APPROVE: 156,\n BUYER_ORDER_COD_REJECT: 157,\n SELLER_ORDER_COD_REJECT: 158,\n BUYER_REJECT_COD_DELIVERY: 159,\n BUYER_ORDER_CANCEL_COD: 160,\n LOGISTICS_CONFIRMED_DELIVERY_BUYER: 161,\n LOGISTICS_CONFIRMED_DELIVERY_SELLER: 162,\n PICKUP_DEADLINE: 163,\n SELLER_ORDER_CANCEL_PICKUP_FAILED: 164,\n SELLER_REJECT_COD_DELIVERY: 165,\n BUYER_REJECT_NOCOD_DELIVERY: 166,\n SELLER_REJECT_NOCOD_DELIVERY: 167,\n PICKUP_REMINDER: 168,\n PICKUP_24HOURS: 169,\n PICKUP_THEDAY: 170,\n PICKUP_RETRY_BEFOREDEADLINE: 171,\n SHIPOUT_24HOUR: 172,\n SHIPOUT_DEADLINE: 173,\n BUYER_SHIPPINGFEE_REVISED: 174,\n BUYER_PICKUP_SUCCEED: 175,\n BUYER_ORDER_COD_CANCEL_PICKUP_FAILED: 176,\n BUYER_ORDER_NOCOD_CANCEL_PICKUP_FAILED: 177,\n PICKUP_ARRANGED: 178,\n SELLER_ORDER_CANCEL_ARRANGEPICKUP_FAIL: 179,\n BUYER_ORDER_CANCEL_ARRANGEPICKUP_FAIL: 180,\n SELLER_ARRANGEPICKUP_EXT_REMINDER: 181,\n SELLER_ARRANGEPICKUP_DEADLINE_REMINDER: 182,\n SHOP_DESCRIPTION_BANNED: 183,\n SHOP_COVERS_BANNED: 184,\n SELLER_INACTIVE_FIRST: 185,\n SELLER_INACTIVE_SECOND: 186,\n SELLER_PICKUP_COUNTER_CLOSE: 187,\n BUYER_TW711_DELIVERED_COUNTER: 188,\n SELLER_PAY_NOBANK_CONFIRM: 189,\n BUYER_TW711_DELIVERED_REMINDER: 190,\n SELLER_TW_COLLECT_NOBUYER: 191,\n BUYER_FM_DELIVERED_COUNTER: 192,\n SELLER_ORDER_CANCEL_AFTER_ESCROW: 193,\n BUYER_ORDER_CANCEL_AFTER_ESCROW: 194,\n BUYER_INDO_JOBRESUBMIT_WAYBILL: 195,\n SELLER_RESELECT_COUNTER_COMPLETED: 196,\n SELLER_DELIVERY_CODE_EXPIRED: 197,\n BUYER_DELIVERY_DELAYED_VOUCHER: 198,\n BUYER_RETURN_APPROVED_CARD: 199,\n CRM_SELLER_INACTIVE_SEVEN: 401,\n CRM_SELLER_INACTIVE_ELEVEN: 402,\n CRM_SELLER_INACTIVE_FORTEEN: 403,\n CRM_CHAT_REMINDER: 404,\n CRM_OFFER_REMINDER: 405,\n CRM_ORDER_REMINDER: 406,\n CRM_ORDER_COD_REMINDER: 407,\n BUYER_ORDER_CANCEL_NO_BANK: 408,\n BUYER_RETURN_APPROVED_NO_BA: 409,\n BUYER_COD_BANNED: 410,\n BUYER_COD_RELEASED: 411,\n SELLER_TW_TO_SHIP: 412,\n SELLER_TW_TO_DROP: 413,\n BUYER_ORDER_CANCEL_BY_BUYER: 414,\n SMART_GROUP_MESSAGE: 415,\n SELLER_ORDER_COMPLETE_RATING: 416,\n BUYER_ORDER_COMPLETE_RATING: 417,\n SELLER_RATING_3DAY: 418,\n BUYER_RATING_3DAY: 419,\n SELLER_RATING_BUYER_RATED: 420,\n BUYER_RATING_SELLER_RATED: 421,\n SELLER_VIEW_BOTH_RATED: 422,\n SELLER_VIEW_BUYER_RATED: 432,\n SELLER_VIEW_BUYER_CHANGED: 433,\n SELLER_CONFIRM_AUTO_REFUND: 434,\n SELLER_BE_CANCELORDER_REMINDER: 435,\n BUYER_REFUND_PAYOUT_CARD: 436,\n LOGISTICS_DELIVERY_FAILED_BUYER: 437,\n SELLER_RETURN_PICKUPCOUNTER_CLOSE: 438,\n SELLER_BE_AUTO_CANCEL: 439,\n DISPUTE_RATING_SUCC: 440,\n RATING_DISPUTED: 441,\n CRM_BUYER_CART: 442,\n CRM_BUYER_CART_STOCK: 443,\n CRM_BUYER_CART_DISCOUNT: 444,\n SELLER_FIRST_LISTING_TW: 445,\n HM_SELLER_ARRANGE_PICKUP: 446,\n HM_ORDER_AUTO_CANCEL: 447,\n HM_SELLER_REMINDER_TO_SHIP: 448,\n SELLER_ESCROW_RELEASED_ID_DAYS: 449,\n BUYER_PUSH_SELLER_SO_COD: 450,\n BUYER_PUSH_SELLER_SO_NONCOD: 451,\n BUYER_CAN_CANCEL_REMINDER_NONCOD: 452,\n BUYER_CAN_CANCEL_REMINDER_COD: 453,\n SELLER_RETURN_RESELECT_TW_711: 741,\n\n // trigger email & sms\n BUYER_OFFER_DECLINE: 200,\n BUYER_OFFER_ACCEPT: 201,\n SELLER_OFFER_NEW: 202,\n BUYER_PAY_CONFIRM_CARD: 203,\n BUYER_RETURN_REQUEST: 204,\n BUYER_PAY_CONFIRM_BANK: 206,\n ACCOUNT_DELETE: 207,\n PASSWORD_CHANGED: 208,\n BUYER_PAY_CHOOSE_BANK: 209,\n SELLER_ESCROW_RELEASED: 210,\n SELLER_OFFER_CANCEL: 211,\n SELLER_DISPUTE: 212,\n SELLER_NONRECEIPT_DISPUTE: 213,\n SELLER_ORDER_CANCEL: 214,\n SELLER_CONFIRM_RETURN: 215,\n SELLER_CANCEL_RETURN: 216,\n BUYER_PAY_CONFIRM_OFFLINE: 217,\n SELLER_FIRST_LISTING: 218,\n SELLER_PAY_CONFIRM_OFFLINE: 219,\n WEB_REGISTRATION: 220,\n SELLER_CONTACT_LOGISTICS_TW: 221,\n SELLER_ESCROW_RELEASED_ID: 222,\n\n ACTIVITY_FOLLOW_YOU: 300,\n ACTIVITY_AT_YOU_IN_COMMENT: 301,\n ACTIVITY_COMMENT_YOUR_ITEM: 302,\n ACTIVITY_CONTACT_REGISTERED: 303,\n ACTIVITY_ITEM_RATED: 304,\n ACTIVITY_CUSTOMIZED_ACTIVITY: 305,\n ACTIVITY_AT_YOU_IN_FEED_CMT: 306,\n ACTIVITY_COMMENT_YOUR_FEED: 307,\n // ACTIVITY_S_VIEW_BOTH_RATED: 308,\n ACTIVITY_B_VIEW_BOTH_RATED: 309,\n // ACTIVITY_S_VIEW_BUYER_RATED: 310,\n ACTIVITY_B_VIEW_SELLER_RATED: 311,\n // ACTIVITY_S_VIEW_BUYER_CHANGED: 312,\n ACTIVITY_B_VIEW_SELLER_CHANGED: 313,\n\n SELLER_PENALTY_POINT: 551,\n SELLER_PENALTY_TIER: 552,\n SELLER_PENALTY_POINT_REMOVE: 554,\n SELLER_BUYERCANCEL_REQUESTED: 520,\n SELLER_BUYERCANCEL_WITHDRAW: 521,\n SELLER_BUYERCANCEL_ACCEPT: 522,\n SHOP_FLASHSALE_CANCELLED: 1027,\n SHOP_FLASHSALE_PRODUCT_PROMOTED: 1028,\n SHOP_FLASHSALE_PRODUCT_REJECTED: 1029,\n SHOP_FLASHSALE_SHOP_REJECTED: 1030,\n SHOP_FLASHSALE_CANCELLED_SG: 1037,\n SHOP_FLASHSALE_PRODUCT_PROMOTED_SG: 1038,\n SHOP_FLASHSALE_PRODUCT_REJECTED_SG: 1039,\n SHOP_FLASHSALE_SHOP_REJECTED_SG: 1040,\n SHOP_FLASHSALE_CANCELLED_MY: 1041,\n SHOP_FLASHSALE_PRODUCT_PROMOTED_MY: 1042,\n SHOP_FLASHSALE_PRODUCT_REJECTED_MY: 1043,\n SHOP_FLASHSALE_SHOP_REJECTED_MY: 1044,\n\n BUYER_MEDIATION_RESULT_DRC: 1118,\n SELLER_MEDIATION_RESULT_DRC: 1119,\n};\n\nexport const ActionRedirectTypes = {\n REDIRECT_NONE: 0, // NA\n REDIRECT_ORDERS_DETAIL: 1,\n REDIRECT_MY_PRODUCTS: 2,\n REDIRECT_MY_INCOME: 3,\n REDIRECT_ORDERS_RETURNREFUND: 4,\n REDIRECT_ORDERS_CANCEL: 5,\n REDIRECT_OUTOF_STOCK: 6,\n // REDIRECT_REFUND_SELLERCANCEL: 7,\n REDIRECT_PURE_REFUND: 8,\n REDIRECT_NEW_WEB_PAGE: 10, // go to the action_redirect_url\n REDIRECT_UPLOAD_RECEIPT_PAGE: 11, // Upload receipt page of that checkout\n REDIRECT_SHOPING_CART: 12,\n REDIRECT_BUNCH_ORDERS_DETAIL: 13,\n // REDIRECT_BUY_PAGE: 14,\n // REDIRECT_CHAT_PAGE: 15,\n REDIRECT_ORDER_CHAT_PAGE: 16,\n // REDIRECT_PRODUCT_OFFER_CHAT_PAGE: 17,\n REDIRECT_RELATED_PRODUCT_PAGE: 18,\n REDIRECT_CREDIT_CARD_PAYMENT_PAGE: 19,\n REDIRECT_MY_WALLET: 20,\n REDIRECT_EDIT_SHOP_PROFILE: 21,\n REDIRECT_APP_PATH: 22, // use ActionContent.action_app_path\n REDIRECT_MY_ACCOUNT: 23\n};\n\nexport const AppPath = {\n CHAT_LIST: 'chatList',\n MY_ACCOUNT: 'myAccount',\n EDIT_PROFILE: 'editProfile',\n SOCIAL_ACCOUNT: 'socialAccount',\n SETTINGS: 'settings',\n HOME_FEEDS: 'homeFeed',\n HOME: 'home',\n CHAT: 'chat',\n INCOME: 'income',\n SELLER_ASSISTANT: 'sellerAssistant',\n NOTIFICATION: 'notification',\n PENALTY: 'penalty'\n};\n\nexport const RedirectTypePreferred = [\n ActionRedirectTypes.REDIRECT_APP_PATH,\n ActionRedirectTypes.REDIRECT_BUNCH_ORDERS_DETAIL,\n ActionRedirectTypes.REDIRECT_PURE_REFUND,\n];\n\nexport const ActionCategory = {\n ORDER_UPDATES: [ 17, 26 ],\n RATING: 18,\n RETURN_AND_REFUND: 19,\n LISTING_UPDATES: [ 20, 27 ], // SELLER_UPDATES--SELLER_INFO\n SBS_UPDATES: [ 15, 16 ],\n SELLER_WALLET: [ 21, 28 ],\n MARKETING_CENTER: [ 9, 14, 22 ], // marketing_center\n PERFORMANCE: [ 23, 29 ], // my_performance\n SHOPEE_UPDATES: [ 6, 24, 30, 31 ], // shopee_updates\n};\n\nexport const FoldersType = {\n ORDER_UPDATES: 1,\n\tRATING: 2,\n\tRETURN_AND_REFUND: 3,\n\tLISTING_UPDATES: 4,\n\tSELLER_WALLET: 5,\n\tMARKETING_CENTER: 6,\n\tPERFORMANCE: 7,\n SHOPEE_UPDATES: 8,\n\tSBS_UPDATES: 9\n};\n\nexport enum NotiEventNames {\n MarkAllHeaderNotiAsRead = 'HeaderMarkAllAsRead',\n MarkAllNotiAsRead = 'NotiMarkAllAsRead',\n MarkNotiAsRead = 'MarkNotiAsRead',\n MarkHeaderNotiAsRead = 'MarkHeaderNotiAsRead',\n NotiCountsChange = 'NotiCountsChange',\n HeaderNotiCountsChange = 'HeaderNotiCountsChange'\n}\n","import { CompiledNotification } from './types';\nimport { Base } from 'seller-base';\nimport { ActionRedirectTypes, ActionTypes, AppPath, RedirectTypePreferred, ActionCategory } from './constants';\nimport bigInt, { BigInteger } from 'big-integer';\n\nexport function replaceUrl(url: string, action: CompiledNotification) {\n return url.replace('${PC_MALL_ORIGIN}', Base.$instance.environment.pcMallOrigin)\n .replace('${SELLER_ORIGIN}', Base.$instance.environment.sellerOrigin)\n .replace('${MALL_ORIGIN}', Base.$instance.environment.mallOrigin)\n .replace('${CHECKOUT_ID}', `${action.idInfo.checkoutId}`)\n .replace('${ITEM_ID}', `${action.idInfo.itemId}`)\n .replace('${BUYER_USER_ID}', `${action.idInfo.userid}`)\n .replace('${ORDER_ID}', `${action.idInfo.orderId}`)\n .replace('${SHOP_ID}', `${action.idInfo.shopid}`)\n .replace('${RETURN_ID || REFUND_ID}', `${action.idInfo.returnId || action.idInfo.refundId}`);\n}\n\nexport function clickable(action: CompiledNotification): any {\n if (!!action.pcRedirectUrl) {\n return true;\n }\n const redirectType = action.actionRedirectType;\n if (redirectType === ActionRedirectTypes.REDIRECT_NEW_WEB_PAGE) {\n // special case: penalty redirection\n if (\n [\n ActionTypes.SELLER_PENALTY_POINT,\n ActionTypes.SELLER_PENALTY_TIER,\n ActionTypes.SELLER_PENALTY_POINT_REMOVE\n ].includes(action.actionType)\n ) {\n return clickableByActionType(action);\n }\n\n // special case: bridge_cmd redirection\n if (action.actionRedirectUrl && !action.actionRedirectUrl.includes('bridge_cmd')) {\n return true;\n }\n return clickableByActionType(action);\n }\n\n if (RedirectTypePreferred.includes(redirectType)) {\n return clickableByRedirectType(action);\n }\n\n let ret = clickableByActionType(action);\n if (ret === false) {\n ret = clickableByRedirectType(action);\n }\n return ret;\n}\n\nexport function clickableByActionType(action: CompiledNotification): boolean {\n if (action.actionTypeRedirectUrl) {\n return true;\n }\n if (Object.values(ActionTypes).includes(action.actionType)) {\n return;\n }\n return false;\n}\nexport function clickableByRedirectType(action: CompiledNotification): boolean {\n if (action.actionRedirectType === ActionRedirectTypes.REDIRECT_ORDER_CHAT_PAGE || action.redirectActionTypeRedirectUrl) {\n return true;\n } else if (action.actionRedirectType === ActionRedirectTypes.REDIRECT_APP_PATH) {\n return clickableByAppPath(action);\n }\n}\n\nexport function clickableByAppPath(action: CompiledNotification): boolean {\n if (action.actionAppPath === AppPath.CHAT || action.appPathRedirectUrl) {\n return true;\n }\n return false;\n}\n\nconst getRedirectURL = (url: string) => {\n const isCB = Base.$instance.environment.isCBSC || Base.$instance.environment.isMainland;\n if (!isCB) {\n return url;\n }\n try {\n const urlObject = new URL(url);\n const env = '(test|uat|staging|live-test|test-stable)?\\\\.?';\n if (new RegExp(`^mall\\\\.${env}shopee\\\\.`).test(urlObject.hostname)) {\n urlObject.hostname = new URL(Base.$instance.environment.mallOrigin).hostname;\n } else if (new RegExp(`^${env}shopee\\\\.`).test(urlObject.hostname)) {\n urlObject.hostname = new URL(Base.$instance.environment.sellerOrigin).hostname;\n } else if (new RegExp(`^(seller|banhang)\\\\.${env}shopee\\\\.`).test(urlObject.hostname)) {\n urlObject.hostname = new URL(Base.$instance.environment.pcMallOrigin).hostname;\n }\n return urlObject.toString()\n } catch (e) {\n console.error('getRedirectURL', e);\n return url;\n }\n}\n\nexport function redirect(action: CompiledNotification, chatProxyService: any): any {\n if (!!action.pcRedirectUrl) {\n const url = getRedirectURL(action.pcRedirectUrl)\n window.open(url);\n return;\n }\n\n const redirectType = action.actionRedirectType;\n if (redirectType === ActionRedirectTypes.REDIRECT_NEW_WEB_PAGE) {\n // special case: penalty redirection\n if (\n [\n ActionTypes.SELLER_PENALTY_POINT,\n ActionTypes.SELLER_PENALTY_TIER,\n ActionTypes.SELLER_PENALTY_POINT_REMOVE\n ].includes(action.actionType)\n ) {\n redirectByActionType(action);\n return;\n }\n\n // special case: bridge_cmd redirection\n if (action.actionRedirectUrl && !action.actionRedirectUrl.includes('bridge_cmd')) {\n const url = getRedirectURL(action.actionRedirectUrl)\n window.open(url);\n return;\n } else {\n if (action.actionTypeRedirectUrl) {\n window.open(replaceUrl(action.actionTypeRedirectUrl, action));\n }\n }\n return;\n }\n\n if (RedirectTypePreferred.includes(action.actionRedirectType)) {\n return redirectByRedirectType(action, chatProxyService);\n }\n\n const ret = redirectByActionType(action);\n if (ret === false) {\n redirectByRedirectType(action, chatProxyService);\n }\n}\n\nfunction redirectByActionType(action: CompiledNotification) {\n if (action.actionTypeRedirectUrl) {\n return window.open(replaceUrl(action.actionTypeRedirectUrl, action));\n }\n if (Object.values(ActionTypes).includes(action.actionType)) {\n return;\n }\n return false;\n}\n\nfunction redirectByRedirectType(action: CompiledNotification, chatProxyService: any) {\n const { orderId, shopid, buyerId } = action.idInfo;\n if (action.actionRedirectType === ActionRedirectTypes.REDIRECT_ORDER_CHAT_PAGE) {\n chatProxyService.startChatWithOrder(shopid, buyerId, orderId);\n } else if (action.actionRedirectType === ActionRedirectTypes.REDIRECT_APP_PATH) {\n redirectByAppPath(action, chatProxyService);\n } else if (action.redirectActionTypeRedirectUrl) {\n window.open(replaceUrl(action.redirectActionTypeRedirectUrl, action));\n }\n}\n\nfunction redirectByAppPath(action: CompiledNotification, chatProxyService: any) {\n if (action.actionAppPath === AppPath.CHAT) {\n const { shopid, userid, buyerId, orderId } = action.idInfo;\n chatProxyService.startChatWithOrder(\n shopid,\n userid || buyerId,\n orderId\n );\n } else if (action.appPathRedirectUrl) {\n window.open(replaceUrl(action.appPathRedirectUrl, action));\n }\n}\nexport function compileAction(action: any): CompiledNotification {\n return {\n id: action.actionId,\n title: action.title,\n content: action.content,\n images: action.images,\n groupId: action.groupId,\n groupCount: action.groupCount,\n status: action.status,\n type: action.type,\n clickable: !!clickable(action),\n idInfo: action.idInfo,\n actionCate: action.actionCate,\n actionType: action.actionType,\n traceId: action.traceId,\n timestamp: action.timestamp,\n actionRedirectType: action.actionRedirectType,\n actionRedirectUrl: action.actionRedirectUrl,\n actionTypeRedirectUrl: action.actionTypeRedirectUrl,\n appPathRedirectUrl: action.appPathRedirectUrl,\n redirectActionTypeRedirectUrl: action.redirectActionTypeRedirectUrl,\n pcRedirectUrl: action.pcRedirectUrl,\n actionAppPath: action.actionAppPath,\n action(action: CompiledNotification, chatProxyService: any) {\n if (!ActionCategory.MARKETING_CENTER.includes(action.actionCate) || action.actionRedirectUrl) {\n return redirect(action, chatProxyService);\n }\n }\n };\n}\n\nexport function getMaxActionId(notificationList: CompiledNotification[]) {\n const actionIds = notificationList.map((item: CompiledNotification) => bigInt(item.id));\n return actionIds.reduce((prev: BigInteger, next: BigInteger) => {\n if (prev.compareTo(next) < 0) {\n return next;\n }\n return prev;\n });\n}\n","export { NotificationService } from './service';\nexport {\n CompiledNotification,\n Notification,\n Counts,\n Status,\n NotificationGroupRequest,\n UpdateNotificationList,\n NotificationRequest,\n TrackData\n} from './types';\n\nexport {\n FoldersConfig,\n ActionCategory,\n FoldersType,\n NotiEventNames\n} from './constants';\n\nexport {\n compileAction,\n getMaxActionId\n} from './action';\n","export {\n CommonServiceWithSip,\n CommonListResponse,\n BatchI\n} from './common';\n\nexport {\n SipGlobalService,\n\n SipOrder,\n SipOrderItem,\n SipOrderResponse\n} from './sip';\n\nexport {\n OtpService,\n\n OtpSeed,\n OtpVerifyData\n} from './otp';\n\nexport {\n UploadService,\n\n UploadOptions,\n UploadVideoData\n} from './upload';\n\nexport {\n ReportService,\n FileTypeConfig,\n ReportStatus,\n\n downloadBlobData,\n parseBlobJsonResponse,\n\n Report,\n ReportListParams,\n ReportListResponse\n} from './report';\n\nexport {\n CollectionService,\n\n Collection,\n PageActiveCollectionsParams,\n PageActiveCollectionsResponse,\n CollectionListResponse,\n CollectionUpdateData\n} from './collection';\n\nexport {\n FeedbackService,\n\n Feedback,\n FeedbackClassification,\n FeedbackSubmitPage,\n} from './feedback';\n\nexport {\n NotificationService,\n\n CompiledNotification,\n Notification,\n Counts,\n Status,\n NotificationGroupRequest,\n UpdateNotificationList,\n NotificationRequest,\n TrackData,\n FoldersConfig,\n ActionCategory,\n FoldersType,\n compileAction,\n getMaxActionId,\n NotiEventNames\n} from './notification';\n","/**\n * 仅仅用于类型检查\n */\nimport 'seller-base';\n\nexport * from './modules';\n","module.exports = __WEBPACK_EXTERNAL_MODULE__6Xvj__;","var bigInt = (function (undefined) {\r\n \"use strict\";\r\n\r\n var BASE = 1e7,\r\n LOG_BASE = 7,\r\n MAX_INT = 9007199254740992,\r\n MAX_INT_ARR = smallToArray(MAX_INT),\r\n DEFAULT_ALPHABET = \"0123456789abcdefghijklmnopqrstuvwxyz\";\r\n\r\n var supportsNativeBigInt = typeof BigInt === \"function\";\r\n\r\n function Integer(v, radix, alphabet, caseSensitive) {\r\n if (typeof v === \"undefined\") return Integer[0];\r\n if (typeof radix !== \"undefined\") return +radix === 10 && !alphabet ? parseValue(v) : parseBase(v, radix, alphabet, caseSensitive);\r\n return parseValue(v);\r\n }\r\n\r\n function BigInteger(value, sign) {\r\n this.value = value;\r\n this.sign = sign;\r\n this.isSmall = false;\r\n }\r\n BigInteger.prototype = Object.create(Integer.prototype);\r\n\r\n function SmallInteger(value) {\r\n this.value = value;\r\n this.sign = value < 0;\r\n this.isSmall = true;\r\n }\r\n SmallInteger.prototype = Object.create(Integer.prototype);\r\n\r\n function NativeBigInt(value) {\r\n this.value = value;\r\n }\r\n NativeBigInt.prototype = Object.create(Integer.prototype);\r\n\r\n function isPrecise(n) {\r\n return -MAX_INT < n && n < MAX_INT;\r\n }\r\n\r\n function smallToArray(n) { // For performance reasons doesn't reference BASE, need to change this function if BASE changes\r\n if (n < 1e7)\r\n return [n];\r\n if (n < 1e14)\r\n return [n % 1e7, Math.floor(n / 1e7)];\r\n return [n % 1e7, Math.floor(n / 1e7) % 1e7, Math.floor(n / 1e14)];\r\n }\r\n\r\n function arrayToSmall(arr) { // If BASE changes this function may need to change\r\n trim(arr);\r\n var length = arr.length;\r\n if (length < 4 && compareAbs(arr, MAX_INT_ARR) < 0) {\r\n switch (length) {\r\n case 0: return 0;\r\n case 1: return arr[0];\r\n case 2: return arr[0] + arr[1] * BASE;\r\n default: return arr[0] + (arr[1] + arr[2] * BASE) * BASE;\r\n }\r\n }\r\n return arr;\r\n }\r\n\r\n function trim(v) {\r\n var i = v.length;\r\n while (v[--i] === 0);\r\n v.length = i + 1;\r\n }\r\n\r\n function createArray(length) { // function shamelessly stolen from Yaffle's library https://github.com/Yaffle/BigInteger\r\n var x = new Array(length);\r\n var i = -1;\r\n while (++i < length) {\r\n x[i] = 0;\r\n }\r\n return x;\r\n }\r\n\r\n function truncate(n) {\r\n if (n > 0) return Math.floor(n);\r\n return Math.ceil(n);\r\n }\r\n\r\n function add(a, b) { // assumes a and b are arrays with a.length >= b.length\r\n var l_a = a.length,\r\n l_b = b.length,\r\n r = new Array(l_a),\r\n carry = 0,\r\n base = BASE,\r\n sum, i;\r\n for (i = 0; i < l_b; i++) {\r\n sum = a[i] + b[i] + carry;\r\n carry = sum >= base ? 1 : 0;\r\n r[i] = sum - carry * base;\r\n }\r\n while (i < l_a) {\r\n sum = a[i] + carry;\r\n carry = sum === base ? 1 : 0;\r\n r[i++] = sum - carry * base;\r\n }\r\n if (carry > 0) r.push(carry);\r\n return r;\r\n }\r\n\r\n function addAny(a, b) {\r\n if (a.length >= b.length) return add(a, b);\r\n return add(b, a);\r\n }\r\n\r\n function addSmall(a, carry) { // assumes a is array, carry is number with 0 <= carry < MAX_INT\r\n var l = a.length,\r\n r = new Array(l),\r\n base = BASE,\r\n sum, i;\r\n for (i = 0; i < l; i++) {\r\n sum = a[i] - base + carry;\r\n carry = Math.floor(sum / base);\r\n r[i] = sum - carry * base;\r\n carry += 1;\r\n }\r\n while (carry > 0) {\r\n r[i++] = carry % base;\r\n carry = Math.floor(carry / base);\r\n }\r\n return r;\r\n }\r\n\r\n BigInteger.prototype.add = function (v) {\r\n var n = parseValue(v);\r\n if (this.sign !== n.sign) {\r\n return this.subtract(n.negate());\r\n }\r\n var a = this.value, b = n.value;\r\n if (n.isSmall) {\r\n return new BigInteger(addSmall(a, Math.abs(b)), this.sign);\r\n }\r\n return new BigInteger(addAny(a, b), this.sign);\r\n };\r\n BigInteger.prototype.plus = BigInteger.prototype.add;\r\n\r\n SmallInteger.prototype.add = function (v) {\r\n var n = parseValue(v);\r\n var a = this.value;\r\n if (a < 0 !== n.sign) {\r\n return this.subtract(n.negate());\r\n }\r\n var b = n.value;\r\n if (n.isSmall) {\r\n if (isPrecise(a + b)) return new SmallInteger(a + b);\r\n b = smallToArray(Math.abs(b));\r\n }\r\n return new BigInteger(addSmall(b, Math.abs(a)), a < 0);\r\n };\r\n SmallInteger.prototype.plus = SmallInteger.prototype.add;\r\n\r\n NativeBigInt.prototype.add = function (v) {\r\n return new NativeBigInt(this.value + parseValue(v).value);\r\n }\r\n NativeBigInt.prototype.plus = NativeBigInt.prototype.add;\r\n\r\n function subtract(a, b) { // assumes a and b are arrays with a >= b\r\n var a_l = a.length,\r\n b_l = b.length,\r\n r = new Array(a_l),\r\n borrow = 0,\r\n base = BASE,\r\n i, difference;\r\n for (i = 0; i < b_l; i++) {\r\n difference = a[i] - borrow - b[i];\r\n if (difference < 0) {\r\n difference += base;\r\n borrow = 1;\r\n } else borrow = 0;\r\n r[i] = difference;\r\n }\r\n for (i = b_l; i < a_l; i++) {\r\n difference = a[i] - borrow;\r\n if (difference < 0) difference += base;\r\n else {\r\n r[i++] = difference;\r\n break;\r\n }\r\n r[i] = difference;\r\n }\r\n for (; i < a_l; i++) {\r\n r[i] = a[i];\r\n }\r\n trim(r);\r\n return r;\r\n }\r\n\r\n function subtractAny(a, b, sign) {\r\n var value;\r\n if (compareAbs(a, b) >= 0) {\r\n value = subtract(a, b);\r\n } else {\r\n value = subtract(b, a);\r\n sign = !sign;\r\n }\r\n value = arrayToSmall(value);\r\n if (typeof value === \"number\") {\r\n if (sign) value = -value;\r\n return new SmallInteger(value);\r\n }\r\n return new BigInteger(value, sign);\r\n }\r\n\r\n function subtractSmall(a, b, sign) { // assumes a is array, b is number with 0 <= b < MAX_INT\r\n var l = a.length,\r\n r = new Array(l),\r\n carry = -b,\r\n base = BASE,\r\n i, difference;\r\n for (i = 0; i < l; i++) {\r\n difference = a[i] + carry;\r\n carry = Math.floor(difference / base);\r\n difference %= base;\r\n r[i] = difference < 0 ? difference + base : difference;\r\n }\r\n r = arrayToSmall(r);\r\n if (typeof r === \"number\") {\r\n if (sign) r = -r;\r\n return new SmallInteger(r);\r\n } return new BigInteger(r, sign);\r\n }\r\n\r\n BigInteger.prototype.subtract = function (v) {\r\n var n = parseValue(v);\r\n if (this.sign !== n.sign) {\r\n return this.add(n.negate());\r\n }\r\n var a = this.value, b = n.value;\r\n if (n.isSmall)\r\n return subtractSmall(a, Math.abs(b), this.sign);\r\n return subtractAny(a, b, this.sign);\r\n };\r\n BigInteger.prototype.minus = BigInteger.prototype.subtract;\r\n\r\n SmallInteger.prototype.subtract = function (v) {\r\n var n = parseValue(v);\r\n var a = this.value;\r\n if (a < 0 !== n.sign) {\r\n return this.add(n.negate());\r\n }\r\n var b = n.value;\r\n if (n.isSmall) {\r\n return new SmallInteger(a - b);\r\n }\r\n return subtractSmall(b, Math.abs(a), a >= 0);\r\n };\r\n SmallInteger.prototype.minus = SmallInteger.prototype.subtract;\r\n\r\n NativeBigInt.prototype.subtract = function (v) {\r\n return new NativeBigInt(this.value - parseValue(v).value);\r\n }\r\n NativeBigInt.prototype.minus = NativeBigInt.prototype.subtract;\r\n\r\n BigInteger.prototype.negate = function () {\r\n return new BigInteger(this.value, !this.sign);\r\n };\r\n SmallInteger.prototype.negate = function () {\r\n var sign = this.sign;\r\n var small = new SmallInteger(-this.value);\r\n small.sign = !sign;\r\n return small;\r\n };\r\n NativeBigInt.prototype.negate = function () {\r\n return new NativeBigInt(-this.value);\r\n }\r\n\r\n BigInteger.prototype.abs = function () {\r\n return new BigInteger(this.value, false);\r\n };\r\n SmallInteger.prototype.abs = function () {\r\n return new SmallInteger(Math.abs(this.value));\r\n };\r\n NativeBigInt.prototype.abs = function () {\r\n return new NativeBigInt(this.value >= 0 ? this.value : -this.value);\r\n }\r\n\r\n\r\n function multiplyLong(a, b) {\r\n var a_l = a.length,\r\n b_l = b.length,\r\n l = a_l + b_l,\r\n r = createArray(l),\r\n base = BASE,\r\n product, carry, i, a_i, b_j;\r\n for (i = 0; i < a_l; ++i) {\r\n a_i = a[i];\r\n for (var j = 0; j < b_l; ++j) {\r\n b_j = b[j];\r\n product = a_i * b_j + r[i + j];\r\n carry = Math.floor(product / base);\r\n r[i + j] = product - carry * base;\r\n r[i + j + 1] += carry;\r\n }\r\n }\r\n trim(r);\r\n return r;\r\n }\r\n\r\n function multiplySmall(a, b) { // assumes a is array, b is number with |b| < BASE\r\n var l = a.length,\r\n r = new Array(l),\r\n base = BASE,\r\n carry = 0,\r\n product, i;\r\n for (i = 0; i < l; i++) {\r\n product = a[i] * b + carry;\r\n carry = Math.floor(product / base);\r\n r[i] = product - carry * base;\r\n }\r\n while (carry > 0) {\r\n r[i++] = carry % base;\r\n carry = Math.floor(carry / base);\r\n }\r\n return r;\r\n }\r\n\r\n function shiftLeft(x, n) {\r\n var r = [];\r\n while (n-- > 0) r.push(0);\r\n return r.concat(x);\r\n }\r\n\r\n function multiplyKaratsuba(x, y) {\r\n var n = Math.max(x.length, y.length);\r\n\r\n if (n <= 30) return multiplyLong(x, y);\r\n n = Math.ceil(n / 2);\r\n\r\n var b = x.slice(n),\r\n a = x.slice(0, n),\r\n d = y.slice(n),\r\n c = y.slice(0, n);\r\n\r\n var ac = multiplyKaratsuba(a, c),\r\n bd = multiplyKaratsuba(b, d),\r\n abcd = multiplyKaratsuba(addAny(a, b), addAny(c, d));\r\n\r\n var product = addAny(addAny(ac, shiftLeft(subtract(subtract(abcd, ac), bd), n)), shiftLeft(bd, 2 * n));\r\n trim(product);\r\n return product;\r\n }\r\n\r\n // The following function is derived from a surface fit of a graph plotting the performance difference\r\n // between long multiplication and karatsuba multiplication versus the lengths of the two arrays.\r\n function useKaratsuba(l1, l2) {\r\n return -0.012 * l1 - 0.012 * l2 + 0.000015 * l1 * l2 > 0;\r\n }\r\n\r\n BigInteger.prototype.multiply = function (v) {\r\n var n = parseValue(v),\r\n a = this.value, b = n.value,\r\n sign = this.sign !== n.sign,\r\n abs;\r\n if (n.isSmall) {\r\n if (b === 0) return Integer[0];\r\n if (b === 1) return this;\r\n if (b === -1) return this.negate();\r\n abs = Math.abs(b);\r\n if (abs < BASE) {\r\n return new BigInteger(multiplySmall(a, abs), sign);\r\n }\r\n b = smallToArray(abs);\r\n }\r\n if (useKaratsuba(a.length, b.length)) // Karatsuba is only faster for certain array sizes\r\n return new BigInteger(multiplyKaratsuba(a, b), sign);\r\n return new BigInteger(multiplyLong(a, b), sign);\r\n };\r\n\r\n BigInteger.prototype.times = BigInteger.prototype.multiply;\r\n\r\n function multiplySmallAndArray(a, b, sign) { // a >= 0\r\n if (a < BASE) {\r\n return new BigInteger(multiplySmall(b, a), sign);\r\n }\r\n return new BigInteger(multiplyLong(b, smallToArray(a)), sign);\r\n }\r\n SmallInteger.prototype._multiplyBySmall = function (a) {\r\n if (isPrecise(a.value * this.value)) {\r\n return new SmallInteger(a.value * this.value);\r\n }\r\n return multiplySmallAndArray(Math.abs(a.value), smallToArray(Math.abs(this.value)), this.sign !== a.sign);\r\n };\r\n BigInteger.prototype._multiplyBySmall = function (a) {\r\n if (a.value === 0) return Integer[0];\r\n if (a.value === 1) return this;\r\n if (a.value === -1) return this.negate();\r\n return multiplySmallAndArray(Math.abs(a.value), this.value, this.sign !== a.sign);\r\n };\r\n SmallInteger.prototype.multiply = function (v) {\r\n return parseValue(v)._multiplyBySmall(this);\r\n };\r\n SmallInteger.prototype.times = SmallInteger.prototype.multiply;\r\n\r\n NativeBigInt.prototype.multiply = function (v) {\r\n return new NativeBigInt(this.value * parseValue(v).value);\r\n }\r\n NativeBigInt.prototype.times = NativeBigInt.prototype.multiply;\r\n\r\n function square(a) {\r\n //console.assert(2 * BASE * BASE < MAX_INT);\r\n var l = a.length,\r\n r = createArray(l + l),\r\n base = BASE,\r\n product, carry, i, a_i, a_j;\r\n for (i = 0; i < l; i++) {\r\n a_i = a[i];\r\n carry = 0 - a_i * a_i;\r\n for (var j = i; j < l; j++) {\r\n a_j = a[j];\r\n product = 2 * (a_i * a_j) + r[i + j] + carry;\r\n carry = Math.floor(product / base);\r\n r[i + j] = product - carry * base;\r\n }\r\n r[i + l] = carry;\r\n }\r\n trim(r);\r\n return r;\r\n }\r\n\r\n BigInteger.prototype.square = function () {\r\n return new BigInteger(square(this.value), false);\r\n };\r\n\r\n SmallInteger.prototype.square = function () {\r\n var value = this.value * this.value;\r\n if (isPrecise(value)) return new SmallInteger(value);\r\n return new BigInteger(square(smallToArray(Math.abs(this.value))), false);\r\n };\r\n\r\n NativeBigInt.prototype.square = function (v) {\r\n return new NativeBigInt(this.value * this.value);\r\n }\r\n\r\n function divMod1(a, b) { // Left over from previous version. Performs faster than divMod2 on smaller input sizes.\r\n var a_l = a.length,\r\n b_l = b.length,\r\n base = BASE,\r\n result = createArray(b.length),\r\n divisorMostSignificantDigit = b[b_l - 1],\r\n // normalization\r\n lambda = Math.ceil(base / (2 * divisorMostSignificantDigit)),\r\n remainder = multiplySmall(a, lambda),\r\n divisor = multiplySmall(b, lambda),\r\n quotientDigit, shift, carry, borrow, i, l, q;\r\n if (remainder.length <= a_l) remainder.push(0);\r\n divisor.push(0);\r\n divisorMostSignificantDigit = divisor[b_l - 1];\r\n for (shift = a_l - b_l; shift >= 0; shift--) {\r\n quotientDigit = base - 1;\r\n if (remainder[shift + b_l] !== divisorMostSignificantDigit) {\r\n quotientDigit = Math.floor((remainder[shift + b_l] * base + remainder[shift + b_l - 1]) / divisorMostSignificantDigit);\r\n }\r\n // quotientDigit <= base - 1\r\n carry = 0;\r\n borrow = 0;\r\n l = divisor.length;\r\n for (i = 0; i < l; i++) {\r\n carry += quotientDigit * divisor[i];\r\n q = Math.floor(carry / base);\r\n borrow += remainder[shift + i] - (carry - q * base);\r\n carry = q;\r\n if (borrow < 0) {\r\n remainder[shift + i] = borrow + base;\r\n borrow = -1;\r\n } else {\r\n remainder[shift + i] = borrow;\r\n borrow = 0;\r\n }\r\n }\r\n while (borrow !== 0) {\r\n quotientDigit -= 1;\r\n carry = 0;\r\n for (i = 0; i < l; i++) {\r\n carry += remainder[shift + i] - base + divisor[i];\r\n if (carry < 0) {\r\n remainder[shift + i] = carry + base;\r\n carry = 0;\r\n } else {\r\n remainder[shift + i] = carry;\r\n carry = 1;\r\n }\r\n }\r\n borrow += carry;\r\n }\r\n result[shift] = quotientDigit;\r\n }\r\n // denormalization\r\n remainder = divModSmall(remainder, lambda)[0];\r\n return [arrayToSmall(result), arrayToSmall(remainder)];\r\n }\r\n\r\n function divMod2(a, b) { // Implementation idea shamelessly stolen from Silent Matt's library http://silentmatt.com/biginteger/\r\n // Performs faster than divMod1 on larger input sizes.\r\n var a_l = a.length,\r\n b_l = b.length,\r\n result = [],\r\n part = [],\r\n base = BASE,\r\n guess, xlen, highx, highy, check;\r\n while (a_l) {\r\n part.unshift(a[--a_l]);\r\n trim(part);\r\n if (compareAbs(part, b) < 0) {\r\n result.push(0);\r\n continue;\r\n }\r\n xlen = part.length;\r\n highx = part[xlen - 1] * base + part[xlen - 2];\r\n highy = b[b_l - 1] * base + b[b_l - 2];\r\n if (xlen > b_l) {\r\n highx = (highx + 1) * base;\r\n }\r\n guess = Math.ceil(highx / highy);\r\n do {\r\n check = multiplySmall(b, guess);\r\n if (compareAbs(check, part) <= 0) break;\r\n guess--;\r\n } while (guess);\r\n result.push(guess);\r\n part = subtract(part, check);\r\n }\r\n result.reverse();\r\n return [arrayToSmall(result), arrayToSmall(part)];\r\n }\r\n\r\n function divModSmall(value, lambda) {\r\n var length = value.length,\r\n quotient = createArray(length),\r\n base = BASE,\r\n i, q, remainder, divisor;\r\n remainder = 0;\r\n for (i = length - 1; i >= 0; --i) {\r\n divisor = remainder * base + value[i];\r\n q = truncate(divisor / lambda);\r\n remainder = divisor - q * lambda;\r\n quotient[i] = q | 0;\r\n }\r\n return [quotient, remainder | 0];\r\n }\r\n\r\n function divModAny(self, v) {\r\n var value, n = parseValue(v);\r\n if (supportsNativeBigInt) {\r\n return [new NativeBigInt(self.value / n.value), new NativeBigInt(self.value % n.value)];\r\n }\r\n var a = self.value, b = n.value;\r\n var quotient;\r\n if (b === 0) throw new Error(\"Cannot divide by zero\");\r\n if (self.isSmall) {\r\n if (n.isSmall) {\r\n return [new SmallInteger(truncate(a / b)), new SmallInteger(a % b)];\r\n }\r\n return [Integer[0], self];\r\n }\r\n if (n.isSmall) {\r\n if (b === 1) return [self, Integer[0]];\r\n if (b == -1) return [self.negate(), Integer[0]];\r\n var abs = Math.abs(b);\r\n if (abs < BASE) {\r\n value = divModSmall(a, abs);\r\n quotient = arrayToSmall(value[0]);\r\n var remainder = value[1];\r\n if (self.sign) remainder = -remainder;\r\n if (typeof quotient === \"number\") {\r\n if (self.sign !== n.sign) quotient = -quotient;\r\n return [new SmallInteger(quotient), new SmallInteger(remainder)];\r\n }\r\n return [new BigInteger(quotient, self.sign !== n.sign), new SmallInteger(remainder)];\r\n }\r\n b = smallToArray(abs);\r\n }\r\n var comparison = compareAbs(a, b);\r\n if (comparison === -1) return [Integer[0], self];\r\n if (comparison === 0) return [Integer[self.sign === n.sign ? 1 : -1], Integer[0]];\r\n\r\n // divMod1 is faster on smaller input sizes\r\n if (a.length + b.length <= 200)\r\n value = divMod1(a, b);\r\n else value = divMod2(a, b);\r\n\r\n quotient = value[0];\r\n var qSign = self.sign !== n.sign,\r\n mod = value[1],\r\n mSign = self.sign;\r\n if (typeof quotient === \"number\") {\r\n if (qSign) quotient = -quotient;\r\n quotient = new SmallInteger(quotient);\r\n } else quotient = new BigInteger(quotient, qSign);\r\n if (typeof mod === \"number\") {\r\n if (mSign) mod = -mod;\r\n mod = new SmallInteger(mod);\r\n } else mod = new BigInteger(mod, mSign);\r\n return [quotient, mod];\r\n }\r\n\r\n BigInteger.prototype.divmod = function (v) {\r\n var result = divModAny(this, v);\r\n return {\r\n quotient: result[0],\r\n remainder: result[1]\r\n };\r\n };\r\n NativeBigInt.prototype.divmod = SmallInteger.prototype.divmod = BigInteger.prototype.divmod;\r\n\r\n\r\n BigInteger.prototype.divide = function (v) {\r\n return divModAny(this, v)[0];\r\n };\r\n NativeBigInt.prototype.over = NativeBigInt.prototype.divide = function (v) {\r\n return new NativeBigInt(this.value / parseValue(v).value);\r\n };\r\n SmallInteger.prototype.over = SmallInteger.prototype.divide = BigInteger.prototype.over = BigInteger.prototype.divide;\r\n\r\n BigInteger.prototype.mod = function (v) {\r\n return divModAny(this, v)[1];\r\n };\r\n NativeBigInt.prototype.mod = NativeBigInt.prototype.remainder = function (v) {\r\n return new NativeBigInt(this.value % parseValue(v).value);\r\n };\r\n SmallInteger.prototype.remainder = SmallInteger.prototype.mod = BigInteger.prototype.remainder = BigInteger.prototype.mod;\r\n\r\n BigInteger.prototype.pow = function (v) {\r\n var n = parseValue(v),\r\n a = this.value,\r\n b = n.value,\r\n value, x, y;\r\n if (b === 0) return Integer[1];\r\n if (a === 0) return Integer[0];\r\n if (a === 1) return Integer[1];\r\n if (a === -1) return n.isEven() ? Integer[1] : Integer[-1];\r\n if (n.sign) {\r\n return Integer[0];\r\n }\r\n if (!n.isSmall) throw new Error(\"The exponent \" + n.toString() + \" is too large.\");\r\n if (this.isSmall) {\r\n if (isPrecise(value = Math.pow(a, b)))\r\n return new SmallInteger(truncate(value));\r\n }\r\n x = this;\r\n y = Integer[1];\r\n while (true) {\r\n if (b & 1 === 1) {\r\n y = y.times(x);\r\n --b;\r\n }\r\n if (b === 0) break;\r\n b /= 2;\r\n x = x.square();\r\n }\r\n return y;\r\n };\r\n SmallInteger.prototype.pow = BigInteger.prototype.pow;\r\n\r\n NativeBigInt.prototype.pow = function (v) {\r\n var n = parseValue(v);\r\n var a = this.value, b = n.value;\r\n var _0 = BigInt(0), _1 = BigInt(1), _2 = BigInt(2);\r\n if (b === _0) return Integer[1];\r\n if (a === _0) return Integer[0];\r\n if (a === _1) return Integer[1];\r\n if (a === BigInt(-1)) return n.isEven() ? Integer[1] : Integer[-1];\r\n if (n.isNegative()) return new NativeBigInt(_0);\r\n var x = this;\r\n var y = Integer[1];\r\n while (true) {\r\n if ((b & _1) === _1) {\r\n y = y.times(x);\r\n --b;\r\n }\r\n if (b === _0) break;\r\n b /= _2;\r\n x = x.square();\r\n }\r\n return y;\r\n }\r\n\r\n BigInteger.prototype.modPow = function (exp, mod) {\r\n exp = parseValue(exp);\r\n mod = parseValue(mod);\r\n if (mod.isZero()) throw new Error(\"Cannot take modPow with modulus 0\");\r\n var r = Integer[1],\r\n base = this.mod(mod);\r\n if (exp.isNegative()) {\r\n exp = exp.multiply(Integer[-1]);\r\n base = base.modInv(mod);\r\n }\r\n while (exp.isPositive()) {\r\n if (base.isZero()) return Integer[0];\r\n if (exp.isOdd()) r = r.multiply(base).mod(mod);\r\n exp = exp.divide(2);\r\n base = base.square().mod(mod);\r\n }\r\n return r;\r\n };\r\n NativeBigInt.prototype.modPow = SmallInteger.prototype.modPow = BigInteger.prototype.modPow;\r\n\r\n function compareAbs(a, b) {\r\n if (a.length !== b.length) {\r\n return a.length > b.length ? 1 : -1;\r\n }\r\n for (var i = a.length - 1; i >= 0; i--) {\r\n if (a[i] !== b[i]) return a[i] > b[i] ? 1 : -1;\r\n }\r\n return 0;\r\n }\r\n\r\n BigInteger.prototype.compareAbs = function (v) {\r\n var n = parseValue(v),\r\n a = this.value,\r\n b = n.value;\r\n if (n.isSmall) return 1;\r\n return compareAbs(a, b);\r\n };\r\n SmallInteger.prototype.compareAbs = function (v) {\r\n var n = parseValue(v),\r\n a = Math.abs(this.value),\r\n b = n.value;\r\n if (n.isSmall) {\r\n b = Math.abs(b);\r\n return a === b ? 0 : a > b ? 1 : -1;\r\n }\r\n return -1;\r\n };\r\n NativeBigInt.prototype.compareAbs = function (v) {\r\n var a = this.value;\r\n var b = parseValue(v).value;\r\n a = a >= 0 ? a : -a;\r\n b = b >= 0 ? b : -b;\r\n return a === b ? 0 : a > b ? 1 : -1;\r\n }\r\n\r\n BigInteger.prototype.compare = function (v) {\r\n // See discussion about comparison with Infinity:\r\n // https://github.com/peterolson/BigInteger.js/issues/61\r\n if (v === Infinity) {\r\n return -1;\r\n }\r\n if (v === -Infinity) {\r\n return 1;\r\n }\r\n\r\n var n = parseValue(v),\r\n a = this.value,\r\n b = n.value;\r\n if (this.sign !== n.sign) {\r\n return n.sign ? 1 : -1;\r\n }\r\n if (n.isSmall) {\r\n return this.sign ? -1 : 1;\r\n }\r\n return compareAbs(a, b) * (this.sign ? -1 : 1);\r\n };\r\n BigInteger.prototype.compareTo = BigInteger.prototype.compare;\r\n\r\n SmallInteger.prototype.compare = function (v) {\r\n if (v === Infinity) {\r\n return -1;\r\n }\r\n if (v === -Infinity) {\r\n return 1;\r\n }\r\n\r\n var n = parseValue(v),\r\n a = this.value,\r\n b = n.value;\r\n if (n.isSmall) {\r\n return a == b ? 0 : a > b ? 1 : -1;\r\n }\r\n if (a < 0 !== n.sign) {\r\n return a < 0 ? -1 : 1;\r\n }\r\n return a < 0 ? 1 : -1;\r\n };\r\n SmallInteger.prototype.compareTo = SmallInteger.prototype.compare;\r\n\r\n NativeBigInt.prototype.compare = function (v) {\r\n if (v === Infinity) {\r\n return -1;\r\n }\r\n if (v === -Infinity) {\r\n return 1;\r\n }\r\n var a = this.value;\r\n var b = parseValue(v).value;\r\n return a === b ? 0 : a > b ? 1 : -1;\r\n }\r\n NativeBigInt.prototype.compareTo = NativeBigInt.prototype.compare;\r\n\r\n BigInteger.prototype.equals = function (v) {\r\n return this.compare(v) === 0;\r\n };\r\n NativeBigInt.prototype.eq = NativeBigInt.prototype.equals = SmallInteger.prototype.eq = SmallInteger.prototype.equals = BigInteger.prototype.eq = BigInteger.prototype.equals;\r\n\r\n BigInteger.prototype.notEquals = function (v) {\r\n return this.compare(v) !== 0;\r\n };\r\n NativeBigInt.prototype.neq = NativeBigInt.prototype.notEquals = SmallInteger.prototype.neq = SmallInteger.prototype.notEquals = BigInteger.prototype.neq = BigInteger.prototype.notEquals;\r\n\r\n BigInteger.prototype.greater = function (v) {\r\n return this.compare(v) > 0;\r\n };\r\n NativeBigInt.prototype.gt = NativeBigInt.prototype.greater = SmallInteger.prototype.gt = SmallInteger.prototype.greater = BigInteger.prototype.gt = BigInteger.prototype.greater;\r\n\r\n BigInteger.prototype.lesser = function (v) {\r\n return this.compare(v) < 0;\r\n };\r\n NativeBigInt.prototype.lt = NativeBigInt.prototype.lesser = SmallInteger.prototype.lt = SmallInteger.prototype.lesser = BigInteger.prototype.lt = BigInteger.prototype.lesser;\r\n\r\n BigInteger.prototype.greaterOrEquals = function (v) {\r\n return this.compare(v) >= 0;\r\n };\r\n NativeBigInt.prototype.geq = NativeBigInt.prototype.greaterOrEquals = SmallInteger.prototype.geq = SmallInteger.prototype.greaterOrEquals = BigInteger.prototype.geq = BigInteger.prototype.greaterOrEquals;\r\n\r\n BigInteger.prototype.lesserOrEquals = function (v) {\r\n return this.compare(v) <= 0;\r\n };\r\n NativeBigInt.prototype.leq = NativeBigInt.prototype.lesserOrEquals = SmallInteger.prototype.leq = SmallInteger.prototype.lesserOrEquals = BigInteger.prototype.leq = BigInteger.prototype.lesserOrEquals;\r\n\r\n BigInteger.prototype.isEven = function () {\r\n return (this.value[0] & 1) === 0;\r\n };\r\n SmallInteger.prototype.isEven = function () {\r\n return (this.value & 1) === 0;\r\n };\r\n NativeBigInt.prototype.isEven = function () {\r\n return (this.value & BigInt(1)) === BigInt(0);\r\n }\r\n\r\n BigInteger.prototype.isOdd = function () {\r\n return (this.value[0] & 1) === 1;\r\n };\r\n SmallInteger.prototype.isOdd = function () {\r\n return (this.value & 1) === 1;\r\n };\r\n NativeBigInt.prototype.isOdd = function () {\r\n return (this.value & BigInt(1)) === BigInt(1);\r\n }\r\n\r\n BigInteger.prototype.isPositive = function () {\r\n return !this.sign;\r\n };\r\n SmallInteger.prototype.isPositive = function () {\r\n return this.value > 0;\r\n };\r\n NativeBigInt.prototype.isPositive = SmallInteger.prototype.isPositive;\r\n\r\n BigInteger.prototype.isNegative = function () {\r\n return this.sign;\r\n };\r\n SmallInteger.prototype.isNegative = function () {\r\n return this.value < 0;\r\n };\r\n NativeBigInt.prototype.isNegative = SmallInteger.prototype.isNegative;\r\n\r\n BigInteger.prototype.isUnit = function () {\r\n return false;\r\n };\r\n SmallInteger.prototype.isUnit = function () {\r\n return Math.abs(this.value) === 1;\r\n };\r\n NativeBigInt.prototype.isUnit = function () {\r\n return this.abs().value === BigInt(1);\r\n }\r\n\r\n BigInteger.prototype.isZero = function () {\r\n return false;\r\n };\r\n SmallInteger.prototype.isZero = function () {\r\n return this.value === 0;\r\n };\r\n NativeBigInt.prototype.isZero = function () {\r\n return this.value === BigInt(0);\r\n }\r\n\r\n BigInteger.prototype.isDivisibleBy = function (v) {\r\n var n = parseValue(v);\r\n if (n.isZero()) return false;\r\n if (n.isUnit()) return true;\r\n if (n.compareAbs(2) === 0) return this.isEven();\r\n return this.mod(n).isZero();\r\n };\r\n NativeBigInt.prototype.isDivisibleBy = SmallInteger.prototype.isDivisibleBy = BigInteger.prototype.isDivisibleBy;\r\n\r\n function isBasicPrime(v) {\r\n var n = v.abs();\r\n if (n.isUnit()) return false;\r\n if (n.equals(2) || n.equals(3) || n.equals(5)) return true;\r\n if (n.isEven() || n.isDivisibleBy(3) || n.isDivisibleBy(5)) return false;\r\n if (n.lesser(49)) return true;\r\n // we don't know if it's prime: let the other functions figure it out\r\n }\r\n\r\n function millerRabinTest(n, a) {\r\n var nPrev = n.prev(),\r\n b = nPrev,\r\n r = 0,\r\n d, t, i, x;\r\n while (b.isEven()) b = b.divide(2), r++;\r\n next: for (i = 0; i < a.length; i++) {\r\n if (n.lesser(a[i])) continue;\r\n x = bigInt(a[i]).modPow(b, n);\r\n if (x.isUnit() || x.equals(nPrev)) continue;\r\n for (d = r - 1; d != 0; d--) {\r\n x = x.square().mod(n);\r\n if (x.isUnit()) return false;\r\n if (x.equals(nPrev)) continue next;\r\n }\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n // Set \"strict\" to true to force GRH-supported lower bound of 2*log(N)^2\r\n BigInteger.prototype.isPrime = function (strict) {\r\n var isPrime = isBasicPrime(this);\r\n if (isPrime !== undefined) return isPrime;\r\n var n = this.abs();\r\n var bits = n.bitLength();\r\n if (bits <= 64)\r\n return millerRabinTest(n, [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37]);\r\n var logN = Math.log(2) * bits.toJSNumber();\r\n var t = Math.ceil((strict === true) ? (2 * Math.pow(logN, 2)) : logN);\r\n for (var a = [], i = 0; i < t; i++) {\r\n a.push(bigInt(i + 2));\r\n }\r\n return millerRabinTest(n, a);\r\n };\r\n NativeBigInt.prototype.isPrime = SmallInteger.prototype.isPrime = BigInteger.prototype.isPrime;\r\n\r\n BigInteger.prototype.isProbablePrime = function (iterations, rng) {\r\n var isPrime = isBasicPrime(this);\r\n if (isPrime !== undefined) return isPrime;\r\n var n = this.abs();\r\n var t = iterations === undefined ? 5 : iterations;\r\n for (var a = [], i = 0; i < t; i++) {\r\n a.push(bigInt.randBetween(2, n.minus(2), rng));\r\n }\r\n return millerRabinTest(n, a);\r\n };\r\n NativeBigInt.prototype.isProbablePrime = SmallInteger.prototype.isProbablePrime = BigInteger.prototype.isProbablePrime;\r\n\r\n BigInteger.prototype.modInv = function (n) {\r\n var t = bigInt.zero, newT = bigInt.one, r = parseValue(n), newR = this.abs(), q, lastT, lastR;\r\n while (!newR.isZero()) {\r\n q = r.divide(newR);\r\n lastT = t;\r\n lastR = r;\r\n t = newT;\r\n r = newR;\r\n newT = lastT.subtract(q.multiply(newT));\r\n newR = lastR.subtract(q.multiply(newR));\r\n }\r\n if (!r.isUnit()) throw new Error(this.toString() + \" and \" + n.toString() + \" are not co-prime\");\r\n if (t.compare(0) === -1) {\r\n t = t.add(n);\r\n }\r\n if (this.isNegative()) {\r\n return t.negate();\r\n }\r\n return t;\r\n };\r\n\r\n NativeBigInt.prototype.modInv = SmallInteger.prototype.modInv = BigInteger.prototype.modInv;\r\n\r\n BigInteger.prototype.next = function () {\r\n var value = this.value;\r\n if (this.sign) {\r\n return subtractSmall(value, 1, this.sign);\r\n }\r\n return new BigInteger(addSmall(value, 1), this.sign);\r\n };\r\n SmallInteger.prototype.next = function () {\r\n var value = this.value;\r\n if (value + 1 < MAX_INT) return new SmallInteger(value + 1);\r\n return new BigInteger(MAX_INT_ARR, false);\r\n };\r\n NativeBigInt.prototype.next = function () {\r\n return new NativeBigInt(this.value + BigInt(1));\r\n }\r\n\r\n BigInteger.prototype.prev = function () {\r\n var value = this.value;\r\n if (this.sign) {\r\n return new BigInteger(addSmall(value, 1), true);\r\n }\r\n return subtractSmall(value, 1, this.sign);\r\n };\r\n SmallInteger.prototype.prev = function () {\r\n var value = this.value;\r\n if (value - 1 > -MAX_INT) return new SmallInteger(value - 1);\r\n return new BigInteger(MAX_INT_ARR, true);\r\n };\r\n NativeBigInt.prototype.prev = function () {\r\n return new NativeBigInt(this.value - BigInt(1));\r\n }\r\n\r\n var powersOfTwo = [1];\r\n while (2 * powersOfTwo[powersOfTwo.length - 1] <= BASE) powersOfTwo.push(2 * powersOfTwo[powersOfTwo.length - 1]);\r\n var powers2Length = powersOfTwo.length, highestPower2 = powersOfTwo[powers2Length - 1];\r\n\r\n function shift_isSmall(n) {\r\n return Math.abs(n) <= BASE;\r\n }\r\n\r\n BigInteger.prototype.shiftLeft = function (v) {\r\n var n = parseValue(v).toJSNumber();\r\n if (!shift_isSmall(n)) {\r\n throw new Error(String(n) + \" is too large for shifting.\");\r\n }\r\n if (n < 0) return this.shiftRight(-n);\r\n var result = this;\r\n if (result.isZero()) return result;\r\n while (n >= powers2Length) {\r\n result = result.multiply(highestPower2);\r\n n -= powers2Length - 1;\r\n }\r\n return result.multiply(powersOfTwo[n]);\r\n };\r\n NativeBigInt.prototype.shiftLeft = SmallInteger.prototype.shiftLeft = BigInteger.prototype.shiftLeft;\r\n\r\n BigInteger.prototype.shiftRight = function (v) {\r\n var remQuo;\r\n var n = parseValue(v).toJSNumber();\r\n if (!shift_isSmall(n)) {\r\n throw new Error(String(n) + \" is too large for shifting.\");\r\n }\r\n if (n < 0) return this.shiftLeft(-n);\r\n var result = this;\r\n while (n >= powers2Length) {\r\n if (result.isZero() || (result.isNegative() && result.isUnit())) return result;\r\n remQuo = divModAny(result, highestPower2);\r\n result = remQuo[1].isNegative() ? remQuo[0].prev() : remQuo[0];\r\n n -= powers2Length - 1;\r\n }\r\n remQuo = divModAny(result, powersOfTwo[n]);\r\n return remQuo[1].isNegative() ? remQuo[0].prev() : remQuo[0];\r\n };\r\n NativeBigInt.prototype.shiftRight = SmallInteger.prototype.shiftRight = BigInteger.prototype.shiftRight;\r\n\r\n function bitwise(x, y, fn) {\r\n y = parseValue(y);\r\n var xSign = x.isNegative(), ySign = y.isNegative();\r\n var xRem = xSign ? x.not() : x,\r\n yRem = ySign ? y.not() : y;\r\n var xDigit = 0, yDigit = 0;\r\n var xDivMod = null, yDivMod = null;\r\n var result = [];\r\n while (!xRem.isZero() || !yRem.isZero()) {\r\n xDivMod = divModAny(xRem, highestPower2);\r\n xDigit = xDivMod[1].toJSNumber();\r\n if (xSign) {\r\n xDigit = highestPower2 - 1 - xDigit; // two's complement for negative numbers\r\n }\r\n\r\n yDivMod = divModAny(yRem, highestPower2);\r\n yDigit = yDivMod[1].toJSNumber();\r\n if (ySign) {\r\n yDigit = highestPower2 - 1 - yDigit; // two's complement for negative numbers\r\n }\r\n\r\n xRem = xDivMod[0];\r\n yRem = yDivMod[0];\r\n result.push(fn(xDigit, yDigit));\r\n }\r\n var sum = fn(xSign ? 1 : 0, ySign ? 1 : 0) !== 0 ? bigInt(-1) : bigInt(0);\r\n for (var i = result.length - 1; i >= 0; i -= 1) {\r\n sum = sum.multiply(highestPower2).add(bigInt(result[i]));\r\n }\r\n return sum;\r\n }\r\n\r\n BigInteger.prototype.not = function () {\r\n return this.negate().prev();\r\n };\r\n NativeBigInt.prototype.not = SmallInteger.prototype.not = BigInteger.prototype.not;\r\n\r\n BigInteger.prototype.and = function (n) {\r\n return bitwise(this, n, function (a, b) { return a & b; });\r\n };\r\n NativeBigInt.prototype.and = SmallInteger.prototype.and = BigInteger.prototype.and;\r\n\r\n BigInteger.prototype.or = function (n) {\r\n return bitwise(this, n, function (a, b) { return a | b; });\r\n };\r\n NativeBigInt.prototype.or = SmallInteger.prototype.or = BigInteger.prototype.or;\r\n\r\n BigInteger.prototype.xor = function (n) {\r\n return bitwise(this, n, function (a, b) { return a ^ b; });\r\n };\r\n NativeBigInt.prototype.xor = SmallInteger.prototype.xor = BigInteger.prototype.xor;\r\n\r\n var LOBMASK_I = 1 << 30, LOBMASK_BI = (BASE & -BASE) * (BASE & -BASE) | LOBMASK_I;\r\n function roughLOB(n) { // get lowestOneBit (rough)\r\n // SmallInteger: return Min(lowestOneBit(n), 1 << 30)\r\n // BigInteger: return Min(lowestOneBit(n), 1 << 14) [BASE=1e7]\r\n var v = n.value,\r\n x = typeof v === \"number\" ? v | LOBMASK_I :\r\n typeof v === \"bigint\" ? v | BigInt(LOBMASK_I) :\r\n v[0] + v[1] * BASE | LOBMASK_BI;\r\n return x & -x;\r\n }\r\n\r\n function integerLogarithm(value, base) {\r\n if (base.compareTo(value) <= 0) {\r\n var tmp = integerLogarithm(value, base.square(base));\r\n var p = tmp.p;\r\n var e = tmp.e;\r\n var t = p.multiply(base);\r\n return t.compareTo(value) <= 0 ? { p: t, e: e * 2 + 1 } : { p: p, e: e * 2 };\r\n }\r\n return { p: bigInt(1), e: 0 };\r\n }\r\n\r\n BigInteger.prototype.bitLength = function () {\r\n var n = this;\r\n if (n.compareTo(bigInt(0)) < 0) {\r\n n = n.negate().subtract(bigInt(1));\r\n }\r\n if (n.compareTo(bigInt(0)) === 0) {\r\n return bigInt(0);\r\n }\r\n return bigInt(integerLogarithm(n, bigInt(2)).e).add(bigInt(1));\r\n }\r\n NativeBigInt.prototype.bitLength = SmallInteger.prototype.bitLength = BigInteger.prototype.bitLength;\r\n\r\n function max(a, b) {\r\n a = parseValue(a);\r\n b = parseValue(b);\r\n return a.greater(b) ? a : b;\r\n }\r\n function min(a, b) {\r\n a = parseValue(a);\r\n b = parseValue(b);\r\n return a.lesser(b) ? a : b;\r\n }\r\n function gcd(a, b) {\r\n a = parseValue(a).abs();\r\n b = parseValue(b).abs();\r\n if (a.equals(b)) return a;\r\n if (a.isZero()) return b;\r\n if (b.isZero()) return a;\r\n var c = Integer[1], d, t;\r\n while (a.isEven() && b.isEven()) {\r\n d = min(roughLOB(a), roughLOB(b));\r\n a = a.divide(d);\r\n b = b.divide(d);\r\n c = c.multiply(d);\r\n }\r\n while (a.isEven()) {\r\n a = a.divide(roughLOB(a));\r\n }\r\n do {\r\n while (b.isEven()) {\r\n b = b.divide(roughLOB(b));\r\n }\r\n if (a.greater(b)) {\r\n t = b; b = a; a = t;\r\n }\r\n b = b.subtract(a);\r\n } while (!b.isZero());\r\n return c.isUnit() ? a : a.multiply(c);\r\n }\r\n function lcm(a, b) {\r\n a = parseValue(a).abs();\r\n b = parseValue(b).abs();\r\n return a.divide(gcd(a, b)).multiply(b);\r\n }\r\n function randBetween(a, b, rng) {\r\n a = parseValue(a);\r\n b = parseValue(b);\r\n var usedRNG = rng || Math.random;\r\n var low = min(a, b), high = max(a, b);\r\n var range = high.subtract(low).add(1);\r\n if (range.isSmall) return low.add(Math.floor(usedRNG() * range));\r\n var digits = toBase(range, BASE).value;\r\n var result = [], restricted = true;\r\n for (var i = 0; i < digits.length; i++) {\r\n var top = restricted ? digits[i] : BASE;\r\n var digit = truncate(usedRNG() * top);\r\n result.push(digit);\r\n if (digit < top) restricted = false;\r\n }\r\n return low.add(Integer.fromArray(result, BASE, false));\r\n }\r\n\r\n var parseBase = function (text, base, alphabet, caseSensitive) {\r\n alphabet = alphabet || DEFAULT_ALPHABET;\r\n text = String(text);\r\n if (!caseSensitive) {\r\n text = text.toLowerCase();\r\n alphabet = alphabet.toLowerCase();\r\n }\r\n var length = text.length;\r\n var i;\r\n var absBase = Math.abs(base);\r\n var alphabetValues = {};\r\n for (i = 0; i < alphabet.length; i++) {\r\n alphabetValues[alphabet[i]] = i;\r\n }\r\n for (i = 0; i < length; i++) {\r\n var c = text[i];\r\n if (c === \"-\") continue;\r\n if (c in alphabetValues) {\r\n if (alphabetValues[c] >= absBase) {\r\n if (c === \"1\" && absBase === 1) continue;\r\n throw new Error(c + \" is not a valid digit in base \" + base + \".\");\r\n }\r\n }\r\n }\r\n base = parseValue(base);\r\n var digits = [];\r\n var isNegative = text[0] === \"-\";\r\n for (i = isNegative ? 1 : 0; i < text.length; i++) {\r\n var c = text[i];\r\n if (c in alphabetValues) digits.push(parseValue(alphabetValues[c]));\r\n else if (c === \"<\") {\r\n var start = i;\r\n do { i++; } while (text[i] !== \">\" && i < text.length);\r\n digits.push(parseValue(text.slice(start + 1, i)));\r\n }\r\n else throw new Error(c + \" is not a valid character\");\r\n }\r\n return parseBaseFromArray(digits, base, isNegative);\r\n };\r\n\r\n function parseBaseFromArray(digits, base, isNegative) {\r\n var val = Integer[0], pow = Integer[1], i;\r\n for (i = digits.length - 1; i >= 0; i--) {\r\n val = val.add(digits[i].times(pow));\r\n pow = pow.times(base);\r\n }\r\n return isNegative ? val.negate() : val;\r\n }\r\n\r\n function stringify(digit, alphabet) {\r\n alphabet = alphabet || DEFAULT_ALPHABET;\r\n if (digit < alphabet.length) {\r\n return alphabet[digit];\r\n }\r\n return \"<\" + digit + \">\";\r\n }\r\n\r\n function toBase(n, base) {\r\n base = bigInt(base);\r\n if (base.isZero()) {\r\n if (n.isZero()) return { value: [0], isNegative: false };\r\n throw new Error(\"Cannot convert nonzero numbers to base 0.\");\r\n }\r\n if (base.equals(-1)) {\r\n if (n.isZero()) return { value: [0], isNegative: false };\r\n if (n.isNegative())\r\n return {\r\n value: [].concat.apply([], Array.apply(null, Array(-n.toJSNumber()))\r\n .map(Array.prototype.valueOf, [1, 0])\r\n ),\r\n isNegative: false\r\n };\r\n\r\n var arr = Array.apply(null, Array(n.toJSNumber() - 1))\r\n .map(Array.prototype.valueOf, [0, 1]);\r\n arr.unshift([1]);\r\n return {\r\n value: [].concat.apply([], arr),\r\n isNegative: false\r\n };\r\n }\r\n\r\n var neg = false;\r\n if (n.isNegative() && base.isPositive()) {\r\n neg = true;\r\n n = n.abs();\r\n }\r\n if (base.isUnit()) {\r\n if (n.isZero()) return { value: [0], isNegative: false };\r\n\r\n return {\r\n value: Array.apply(null, Array(n.toJSNumber()))\r\n .map(Number.prototype.valueOf, 1),\r\n isNegative: neg\r\n };\r\n }\r\n var out = [];\r\n var left = n, divmod;\r\n while (left.isNegative() || left.compareAbs(base) >= 0) {\r\n divmod = left.divmod(base);\r\n left = divmod.quotient;\r\n var digit = divmod.remainder;\r\n if (digit.isNegative()) {\r\n digit = base.minus(digit).abs();\r\n left = left.next();\r\n }\r\n out.push(digit.toJSNumber());\r\n }\r\n out.push(left.toJSNumber());\r\n return { value: out.reverse(), isNegative: neg };\r\n }\r\n\r\n function toBaseString(n, base, alphabet) {\r\n var arr = toBase(n, base);\r\n return (arr.isNegative ? \"-\" : \"\") + arr.value.map(function (x) {\r\n return stringify(x, alphabet);\r\n }).join('');\r\n }\r\n\r\n BigInteger.prototype.toArray = function (radix) {\r\n return toBase(this, radix);\r\n };\r\n\r\n SmallInteger.prototype.toArray = function (radix) {\r\n return toBase(this, radix);\r\n };\r\n\r\n NativeBigInt.prototype.toArray = function (radix) {\r\n return toBase(this, radix);\r\n };\r\n\r\n BigInteger.prototype.toString = function (radix, alphabet) {\r\n if (radix === undefined) radix = 10;\r\n if (radix !== 10) return toBaseString(this, radix, alphabet);\r\n var v = this.value, l = v.length, str = String(v[--l]), zeros = \"0000000\", digit;\r\n while (--l >= 0) {\r\n digit = String(v[l]);\r\n str += zeros.slice(digit.length) + digit;\r\n }\r\n var sign = this.sign ? \"-\" : \"\";\r\n return sign + str;\r\n };\r\n\r\n SmallInteger.prototype.toString = function (radix, alphabet) {\r\n if (radix === undefined) radix = 10;\r\n if (radix != 10) return toBaseString(this, radix, alphabet);\r\n return String(this.value);\r\n };\r\n\r\n NativeBigInt.prototype.toString = SmallInteger.prototype.toString;\r\n\r\n NativeBigInt.prototype.toJSON = BigInteger.prototype.toJSON = SmallInteger.prototype.toJSON = function () { return this.toString(); }\r\n\r\n BigInteger.prototype.valueOf = function () {\r\n return parseInt(this.toString(), 10);\r\n };\r\n BigInteger.prototype.toJSNumber = BigInteger.prototype.valueOf;\r\n\r\n SmallInteger.prototype.valueOf = function () {\r\n return this.value;\r\n };\r\n SmallInteger.prototype.toJSNumber = SmallInteger.prototype.valueOf;\r\n NativeBigInt.prototype.valueOf = NativeBigInt.prototype.toJSNumber = function () {\r\n return parseInt(this.toString(), 10);\r\n }\r\n\r\n function parseStringValue(v) {\r\n if (isPrecise(+v)) {\r\n var x = +v;\r\n if (x === truncate(x))\r\n return supportsNativeBigInt ? new NativeBigInt(BigInt(x)) : new SmallInteger(x);\r\n throw new Error(\"Invalid integer: \" + v);\r\n }\r\n var sign = v[0] === \"-\";\r\n if (sign) v = v.slice(1);\r\n var split = v.split(/e/i);\r\n if (split.length > 2) throw new Error(\"Invalid integer: \" + split.join(\"e\"));\r\n if (split.length === 2) {\r\n var exp = split[1];\r\n if (exp[0] === \"+\") exp = exp.slice(1);\r\n exp = +exp;\r\n if (exp !== truncate(exp) || !isPrecise(exp)) throw new Error(\"Invalid integer: \" + exp + \" is not a valid exponent.\");\r\n var text = split[0];\r\n var decimalPlace = text.indexOf(\".\");\r\n if (decimalPlace >= 0) {\r\n exp -= text.length - decimalPlace - 1;\r\n text = text.slice(0, decimalPlace) + text.slice(decimalPlace + 1);\r\n }\r\n if (exp < 0) throw new Error(\"Cannot include negative exponent part for integers\");\r\n text += (new Array(exp + 1)).join(\"0\");\r\n v = text;\r\n }\r\n var isValid = /^([0-9][0-9]*)$/.test(v);\r\n if (!isValid) throw new Error(\"Invalid integer: \" + v);\r\n if (supportsNativeBigInt) {\r\n return new NativeBigInt(BigInt(sign ? \"-\" + v : v));\r\n }\r\n var r = [], max = v.length, l = LOG_BASE, min = max - l;\r\n while (max > 0) {\r\n r.push(+v.slice(min, max));\r\n min -= l;\r\n if (min < 0) min = 0;\r\n max -= l;\r\n }\r\n trim(r);\r\n return new BigInteger(r, sign);\r\n }\r\n\r\n function parseNumberValue(v) {\r\n if (supportsNativeBigInt) {\r\n return new NativeBigInt(BigInt(v));\r\n }\r\n if (isPrecise(v)) {\r\n if (v !== truncate(v)) throw new Error(v + \" is not an integer.\");\r\n return new SmallInteger(v);\r\n }\r\n return parseStringValue(v.toString());\r\n }\r\n\r\n function parseValue(v) {\r\n if (typeof v === \"number\") {\r\n return parseNumberValue(v);\r\n }\r\n if (typeof v === \"string\") {\r\n return parseStringValue(v);\r\n }\r\n if (typeof v === \"bigint\") {\r\n return new NativeBigInt(v);\r\n }\r\n return v;\r\n }\r\n // Pre-define numbers in range [-999,999]\r\n for (var i = 0; i < 1000; i++) {\r\n Integer[i] = parseValue(i);\r\n if (i > 0) Integer[-i] = parseValue(-i);\r\n }\r\n // Backwards compatibility\r\n Integer.one = Integer[1];\r\n Integer.zero = Integer[0];\r\n Integer.minusOne = Integer[-1];\r\n Integer.max = max;\r\n Integer.min = min;\r\n Integer.gcd = gcd;\r\n Integer.lcm = lcm;\r\n Integer.isInstance = function (x) { return x instanceof BigInteger || x instanceof SmallInteger || x instanceof NativeBigInt; };\r\n Integer.randBetween = randBetween;\r\n\r\n Integer.fromArray = function (digits, base, isNegative) {\r\n return parseBaseFromArray(digits.map(parseValue), parseValue(base || 10), isNegative);\r\n };\r\n\r\n return Integer;\r\n})();\r\n\r\n// Node.js check\r\nif (typeof module !== \"undefined\" && module.hasOwnProperty(\"exports\")) {\r\n module.exports = bigInt;\r\n}\r\n\r\n//amd check\r\nif (typeof define === \"function\" && define.amd) {\r\n define( function () {\r\n return bigInt;\r\n });\r\n}\r\n","module.exports = function(module) {\n\tif (!module.webpackPolyfill) {\n\t\tmodule.deprecate = function() {};\n\t\tmodule.paths = [];\n\t\t// module.parent = undefined by default\n\t\tif (!module.children) module.children = [];\n\t\tObject.defineProperty(module, \"loaded\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.l;\n\t\t\t}\n\t\t});\n\t\tObject.defineProperty(module, \"id\", {\n\t\t\tenumerable: true,\n\t\t\tget: function() {\n\t\t\t\treturn module.i;\n\t\t\t}\n\t\t});\n\t\tmodule.webpackPolyfill = 1;\n\t}\n\treturn module;\n};\n"],"sourceRoot":""}