@ripwords/myinvois-client 0.1.6 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (413) hide show
  1. package/dist/api/documentManagement.d.ts +89 -0
  2. package/dist/api/documentManagement.js +3 -0
  3. package/dist/api/documentSubmission.d.ts +92 -0
  4. package/dist/api/documentSubmission.js +4 -0
  5. package/dist/api/documentTypeManagement.d.ts +70 -0
  6. package/dist/api/documentTypeManagement.js +3 -0
  7. package/dist/api/notificationManagement.d.ts +68 -0
  8. package/dist/api/notificationManagement.js +3 -0
  9. package/dist/api/platformLogin.d.ts +68 -0
  10. package/dist/api/platformLogin.js +3 -0
  11. package/dist/api/taxpayerValidation.d.ts +79 -0
  12. package/dist/api/taxpayerValidation.js +3 -0
  13. package/dist/{certificate-DFK-788s.cjs → certificate-CxsfE91s.cjs} +1 -1
  14. package/dist/{certificate-DFK-788s.cjs.map → certificate-CxsfE91s.cjs.map} +1 -1
  15. package/dist/{document-CARHiGdp.cjs → document-vDphtJTv.cjs} +1 -1
  16. package/dist/{document-CARHiGdp.cjs.map → document-vDphtJTv.cjs.map} +1 -1
  17. package/dist/documentManagement-CIQPkmyb.js +35 -0
  18. package/dist/documentManagement-DQ7JEcBq.cjs +54 -0
  19. package/dist/documentManagement-DQ7JEcBq.cjs.map +1 -0
  20. package/dist/documentSubmission-BdJxIB_I.js +119 -0
  21. package/dist/documentSubmission-D5TC0MPC.cjs +137 -0
  22. package/dist/documentSubmission-D5TC0MPC.cjs.map +1 -0
  23. package/dist/documentTypeManagement-DXRLfTsW.cjs +41 -0
  24. package/dist/documentTypeManagement-DXRLfTsW.cjs.map +1 -0
  25. package/dist/documentTypeManagement-tojgXfm9.js +22 -0
  26. package/dist/{documents-i5EV868Y.d.ts → documents-BgXt86Qp.d.ts} +44 -7
  27. package/dist/{documents-CQy_uB6C.d.cts → documents-BqM9qOnB.d.cts} +39 -2
  28. package/dist/{getBaseUrl-CO7Jp27d.cjs → getBaseUrl-D2iJdUGL.cjs} +1 -1
  29. package/dist/{getBaseUrl-CO7Jp27d.cjs.map → getBaseUrl-D2iJdUGL.cjs.map} +1 -1
  30. package/dist/{index-D2_HVwCz.d.cts → index-Yr1QAbIF.d.cts} +1 -1
  31. package/dist/index.cjs +234 -131
  32. package/dist/index.cjs.map +1 -1
  33. package/dist/index.d.ts +250 -60
  34. package/dist/index.js +234 -131
  35. package/dist/index10.cjs +196 -0
  36. package/dist/index10.cjs.map +1 -0
  37. package/dist/index11.cjs +0 -34
  38. package/dist/index12.cjs +16 -15
  39. package/dist/index12.cjs.map +1 -1
  40. package/dist/index14.cjs +0 -13
  41. package/dist/index15.cjs +28 -3
  42. package/dist/index15.cjs.map +1 -0
  43. package/dist/index16.cjs +24 -12
  44. package/dist/index16.cjs.map +1 -0
  45. package/dist/index17.cjs +0 -3
  46. package/dist/index18.cjs +28 -334
  47. package/dist/index18.cjs.map +1 -1
  48. package/dist/index19.cjs +18 -323
  49. package/dist/index19.cjs.map +1 -1
  50. package/dist/index2.cjs +4 -61
  51. package/dist/index20.cjs +0 -140
  52. package/dist/index21.cjs +0 -3
  53. package/dist/index22.cjs +0 -208
  54. package/dist/index23.cjs +9 -105
  55. package/dist/index23.cjs.map +1 -1
  56. package/dist/index24.cjs +3 -136
  57. package/dist/index25.cjs +12 -63
  58. package/dist/index26.cjs +2 -266
  59. package/dist/index27.cjs +325 -75
  60. package/dist/index27.cjs.map +1 -1
  61. package/dist/index28.cjs +136 -103
  62. package/dist/index28.cjs.map +1 -1
  63. package/dist/index29.cjs +203 -68
  64. package/dist/index29.cjs.map +1 -1
  65. package/dist/index3.cjs +5 -531
  66. package/dist/index30.cjs +104 -107
  67. package/dist/index30.cjs.map +1 -1
  68. package/dist/index31.cjs +132 -95
  69. package/dist/index31.cjs.map +1 -1
  70. package/dist/index32.cjs +59 -13
  71. package/dist/index32.cjs.map +1 -1
  72. package/dist/index33.cjs +262 -33
  73. package/dist/index33.cjs.map +1 -1
  74. package/dist/index34.cjs +74 -14
  75. package/dist/index34.cjs.map +1 -1
  76. package/dist/index35.cjs +102 -24
  77. package/dist/index35.cjs.map +1 -1
  78. package/dist/index36.cjs +68 -15
  79. package/dist/index36.cjs.map +1 -1
  80. package/dist/index37.cjs +107 -9
  81. package/dist/index37.cjs.map +1 -1
  82. package/dist/index38.cjs +95 -9
  83. package/dist/index38.cjs.map +1 -1
  84. package/dist/index39.cjs +11 -10
  85. package/dist/index39.cjs.map +1 -1
  86. package/dist/index4.cjs +4 -195
  87. package/dist/index40.cjs +31 -6
  88. package/dist/index40.cjs.map +1 -1
  89. package/dist/index41.cjs +12 -101
  90. package/dist/index41.cjs.map +1 -1
  91. package/dist/index42.cjs +22 -106
  92. package/dist/index42.cjs.map +1 -1
  93. package/dist/index43.cjs +13 -119
  94. package/dist/index43.cjs.map +1 -1
  95. package/dist/index44.cjs +7 -106
  96. package/dist/index44.cjs.map +1 -1
  97. package/dist/index45.cjs +7 -98
  98. package/dist/index45.cjs.map +1 -1
  99. package/dist/index46.cjs +10 -118
  100. package/dist/index46.cjs.map +1 -1
  101. package/dist/index47.cjs +6 -127
  102. package/dist/index47.cjs.map +1 -1
  103. package/dist/index48.cjs +101 -117
  104. package/dist/index48.cjs.map +1 -1
  105. package/dist/index49.cjs +106 -14
  106. package/dist/index49.cjs.map +1 -1
  107. package/dist/index5.cjs +3 -0
  108. package/dist/index50.cjs +119 -95
  109. package/dist/index50.cjs.map +1 -1
  110. package/dist/index51.cjs +106 -142
  111. package/dist/index51.cjs.map +1 -1
  112. package/dist/index52.cjs +98 -114
  113. package/dist/index52.cjs.map +1 -1
  114. package/dist/index53.cjs +118 -144
  115. package/dist/index53.cjs.map +1 -1
  116. package/dist/index54.cjs +127 -113
  117. package/dist/index54.cjs.map +1 -1
  118. package/dist/index55.cjs +117 -17
  119. package/dist/index55.cjs.map +1 -1
  120. package/dist/index56.cjs +14 -112
  121. package/dist/index56.cjs.map +1 -1
  122. package/dist/index57.cjs +95 -47
  123. package/dist/index57.cjs.map +1 -1
  124. package/dist/index58.cjs +142 -14
  125. package/dist/index58.cjs.map +1 -1
  126. package/dist/index59.cjs +114 -28
  127. package/dist/index59.cjs.map +1 -1
  128. package/dist/index6.cjs +2 -24
  129. package/dist/index60.cjs +144 -22
  130. package/dist/index60.cjs.map +1 -1
  131. package/dist/index61.cjs +113 -9
  132. package/dist/index61.cjs.map +1 -1
  133. package/dist/index61.cts.map +1 -1
  134. package/dist/index62.cjs +17 -8
  135. package/dist/index62.cjs.map +1 -1
  136. package/dist/index62.cts.map +1 -1
  137. package/dist/index63.cjs +112 -17
  138. package/dist/index63.cjs.map +1 -1
  139. package/dist/index63.cts.map +1 -1
  140. package/dist/index64.cjs +47 -412
  141. package/dist/index64.cjs.map +1 -1
  142. package/dist/index64.cts.map +1 -1
  143. package/dist/index65.cjs +14 -8
  144. package/dist/index65.cjs.map +1 -1
  145. package/dist/index65.cts.map +1 -1
  146. package/dist/index66.cjs +28 -9
  147. package/dist/index66.cjs.map +1 -1
  148. package/dist/index66.cts.map +1 -1
  149. package/dist/index67.cjs +29 -0
  150. package/dist/index67.cjs.map +1 -0
  151. package/dist/index67.cts.map +1 -0
  152. package/dist/index68.cjs +16 -0
  153. package/dist/index68.cjs.map +1 -0
  154. package/dist/{index60.cts.map → index68.cts.map} +1 -1
  155. package/dist/index69.cjs +15 -0
  156. package/dist/index69.cjs.map +1 -0
  157. package/dist/index69.cts.map +1 -0
  158. package/dist/index7.cjs +5 -0
  159. package/dist/index70.cjs +24 -0
  160. package/dist/index70.cjs.map +1 -0
  161. package/dist/index70.cts.map +1 -0
  162. package/dist/index71.cjs +419 -0
  163. package/dist/index71.cjs.map +1 -0
  164. package/dist/index71.cts.map +1 -0
  165. package/dist/index72.cjs +15 -0
  166. package/dist/index72.cjs.map +1 -0
  167. package/dist/index72.cts.map +1 -0
  168. package/dist/index73.cjs +16 -0
  169. package/dist/index73.cjs.map +1 -0
  170. package/dist/index73.cts.map +1 -0
  171. package/dist/index8.cjs +62 -0
  172. package/dist/{index2.cjs.map → index8.cjs.map} +1 -1
  173. package/dist/index9.cjs +523 -16
  174. package/dist/index9.cjs.map +1 -1
  175. package/dist/{msic-codes-C8PJVOaA.d.ts → msic-codes-CiPeemFK.d.ts} +10 -10
  176. package/dist/notificationManagement-CHDRVy8J.js +19 -0
  177. package/dist/notificationManagement-C_qrFwWL.cjs +26 -0
  178. package/dist/notificationManagement-C_qrFwWL.cjs.map +1 -0
  179. package/dist/notifications-B4l_qRj7.d.ts +62 -0
  180. package/dist/notifications-DdlEkprb.d.cts +63 -0
  181. package/dist/{platformLogin-PGzMhw1X.cjs → platformLogin-CPiPiVUh.cjs} +2 -2
  182. package/dist/platformLogin-CPiPiVUh.cjs.map +1 -0
  183. package/dist/{platformLogin-f0bNAoZI.js → platformLogin-Ck1Fge2n.js} +1 -1
  184. package/dist/taxpayer-D67d2zAC.d.ts +26 -0
  185. package/dist/taxpayer-sGkviG8J.d.cts +27 -0
  186. package/dist/taxpayerValidation-DI4B6kWx.js +54 -0
  187. package/dist/taxpayerValidation-DdeXCvPT.cjs +73 -0
  188. package/dist/taxpayerValidation-DdeXCvPT.cjs.map +1 -0
  189. package/dist/types/classification-codes.d.ts +1 -1
  190. package/dist/types/country-code.d.ts +1 -1
  191. package/dist/types/currencies.d.ts +1 -1
  192. package/dist/types/documents.d.ts +18 -18
  193. package/dist/types/e-invoice.d.ts +1 -1
  194. package/dist/types/index.d.ts +61 -58
  195. package/dist/types/msic/0X.d.ts +1 -1
  196. package/dist/types/msic/1X.d.ts +1 -1
  197. package/dist/types/msic/2X.d.ts +1 -1
  198. package/dist/types/msic/3X.d.ts +1 -1
  199. package/dist/types/msic/4X.d.ts +1 -1
  200. package/dist/types/msic/5X.d.ts +1 -1
  201. package/dist/types/msic/6X.d.ts +1 -1
  202. package/dist/types/msic/7X.d.ts +1 -1
  203. package/dist/types/msic/8X.d.ts +1 -1
  204. package/dist/types/msic/9X.d.ts +1 -1
  205. package/dist/types/msic-codes.d.ts +11 -11
  206. package/dist/types/notifications.d.ts +2 -0
  207. package/dist/types/payment-modes.d.ts +1 -1
  208. package/dist/types/signatures.d.ts +1 -1
  209. package/dist/types/state-codes.d.ts +1 -1
  210. package/dist/types/tax-types.d.ts +1 -1
  211. package/dist/types/taxpayer.d.ts +19 -0
  212. package/dist/types/unit/1X.d.ts +1 -1
  213. package/dist/types/unit/2X.d.ts +1 -1
  214. package/dist/types/unit/3X.d.ts +1 -1
  215. package/dist/types/unit/4X.d.ts +1 -1
  216. package/dist/types/unit/5X.d.ts +1 -1
  217. package/dist/types/unit/6X.d.ts +1 -1
  218. package/dist/types/unit/7X.d.ts +1 -1
  219. package/dist/types/unit/8X.d.ts +1 -1
  220. package/dist/types/unit/9X.d.ts +1 -1
  221. package/dist/types/unit/AX.d.ts +1 -1
  222. package/dist/types/unit/BX.d.ts +1 -1
  223. package/dist/types/unit/CX.d.ts +1 -1
  224. package/dist/types/unit/DX.d.ts +1 -1
  225. package/dist/types/unit/EX.d.ts +1 -1
  226. package/dist/types/unit/FX.d.ts +1 -1
  227. package/dist/types/unit/GX.d.ts +1 -1
  228. package/dist/types/unit/HX.d.ts +1 -1
  229. package/dist/types/unit/IX.d.ts +1 -1
  230. package/dist/types/unit/JX.d.ts +1 -1
  231. package/dist/types/unit/KX.d.ts +1 -1
  232. package/dist/types/unit/LX.d.ts +1 -1
  233. package/dist/types/unit/MX.d.ts +1 -1
  234. package/dist/types/unit/NX.d.ts +1 -1
  235. package/dist/types/unit/OX.d.ts +1 -1
  236. package/dist/types/unit/PX.d.ts +1 -1
  237. package/dist/types/unit/QX.d.ts +1 -1
  238. package/dist/types/unit/RX.d.ts +1 -1
  239. package/dist/types/unit/SX.d.ts +1 -1
  240. package/dist/types/unit/TX.d.ts +1 -1
  241. package/dist/types/unit/UX.d.ts +1 -1
  242. package/dist/types/unit/VX.d.ts +1 -1
  243. package/dist/types/unit/WX.d.ts +1 -1
  244. package/dist/types/unit/XX.d.ts +1 -1
  245. package/dist/types/unit/YX.d.ts +1 -1
  246. package/dist/types/unit/ZX.d.ts +1 -1
  247. package/dist/types/unit-types.d.ts +36 -36
  248. package/dist/types/utils.d.ts +2 -0
  249. package/dist/unit-types-VgYXIwTT.d.ts +55 -0
  250. package/dist/utils/certificate.js +1 -1
  251. package/dist/utils/document.d.ts +60 -57
  252. package/dist/utils/document.js +1 -1
  253. package/dist/utils/getBaseUrl.js +1 -1
  254. package/dist/utils/signature-diagnostics.d.ts +60 -57
  255. package/dist/utils/signature-diagnostics.js +1 -1
  256. package/dist/utils-B3mo51Zp.d.ts +4 -0
  257. package/dist/utils-Cdqbbzca.d.cts +5 -0
  258. package/package.json +5 -8
  259. package/.prettierrc +0 -8
  260. package/CHANGELOG.md +0 -152
  261. package/bun.lock +0 -460
  262. package/dist/api/platform/platformLogin.d.ts +0 -65
  263. package/dist/api/platform/platformLogin.js +0 -3
  264. package/dist/index11.cjs.map +0 -1
  265. package/dist/index14.cjs.map +0 -1
  266. package/dist/index20.cjs.map +0 -1
  267. package/dist/index22.cjs.map +0 -1
  268. package/dist/index24.cjs.map +0 -1
  269. package/dist/index25.cjs.map +0 -1
  270. package/dist/index26.cjs.map +0 -1
  271. package/dist/index3.cjs.map +0 -1
  272. package/dist/index4.cjs.map +0 -1
  273. package/dist/index58.cts.map +0 -1
  274. package/dist/index59.cts.map +0 -1
  275. package/dist/index6.cjs.map +0 -1
  276. package/dist/platformLogin-PGzMhw1X.cjs.map +0 -1
  277. package/dist/unit-types-B41YFOLT.d.ts +0 -55
  278. package/dist/utils/helpers.d.ts +0 -271
  279. package/dist/utils/helpers.js +0 -330
  280. package/myinvois-cert.conf.template +0 -23
  281. package/scripts/gen-cert.sh +0 -159
  282. package/src/api/platform/platformLogin.ts +0 -34
  283. package/src/index.ts +0 -530
  284. package/src/types/classification-codes.d.ts +0 -115
  285. package/src/types/country-code.d.ts +0 -790
  286. package/src/types/currencies.d.ts +0 -383
  287. package/src/types/documents.d.ts +0 -869
  288. package/src/types/e-invoice.d.ts +0 -41
  289. package/src/types/index.d.ts +0 -24
  290. package/src/types/msic/0X.d.ts +0 -408
  291. package/src/types/msic/1X.d.ts +0 -210
  292. package/src/types/msic/2X.d.ts +0 -266
  293. package/src/types/msic/3X.d.ts +0 -114
  294. package/src/types/msic/4X.d.ts +0 -520
  295. package/src/types/msic/5X.d.ts +0 -144
  296. package/src/types/msic/6X.d.ts +0 -200
  297. package/src/types/msic/7X.d.ts +0 -132
  298. package/src/types/msic/8X.d.ts +0 -210
  299. package/src/types/msic/9X.d.ts +0 -186
  300. package/src/types/msic-codes.d.ts +0 -31
  301. package/src/types/payment-modes.d.ts +0 -41
  302. package/src/types/signatures.d.ts +0 -169
  303. package/src/types/state-codes.d.ts +0 -59
  304. package/src/types/tax-types.d.ts +0 -39
  305. package/src/types/unit/1X.d.ts +0 -16
  306. package/src/types/unit/2X.d.ts +0 -62
  307. package/src/types/unit/3X.d.ts +0 -17
  308. package/src/types/unit/4X.d.ts +0 -44
  309. package/src/types/unit/5X.d.ts +0 -26
  310. package/src/types/unit/6X.d.ts +0 -12
  311. package/src/types/unit/7X.d.ts +0 -12
  312. package/src/types/unit/8X.d.ts +0 -15
  313. package/src/types/unit/9X.d.ts +0 -11
  314. package/src/types/unit/AX.d.ts +0 -202
  315. package/src/types/unit/BX.d.ts +0 -212
  316. package/src/types/unit/CX.d.ts +0 -238
  317. package/src/types/unit/DX.d.ts +0 -212
  318. package/src/types/unit/EX.d.ts +0 -196
  319. package/src/types/unit/FX.d.ts +0 -236
  320. package/src/types/unit/GX.d.ts +0 -254
  321. package/src/types/unit/HX.d.ts +0 -234
  322. package/src/types/unit/IX.d.ts +0 -28
  323. package/src/types/unit/JX.d.ts +0 -190
  324. package/src/types/unit/KX.d.ts +0 -284
  325. package/src/types/unit/LX.d.ts +0 -228
  326. package/src/types/unit/MX.d.ts +0 -288
  327. package/src/types/unit/NX.d.ts +0 -226
  328. package/src/types/unit/OX.d.ts +0 -34
  329. package/src/types/unit/PX.d.ts +0 -224
  330. package/src/types/unit/QX.d.ts +0 -94
  331. package/src/types/unit/RX.d.ts +0 -28
  332. package/src/types/unit/SX.d.ts +0 -56
  333. package/src/types/unit/TX.d.ts +0 -44
  334. package/src/types/unit/UX.d.ts +0 -14
  335. package/src/types/unit/VX.d.ts +0 -13
  336. package/src/types/unit/WX.d.ts +0 -34
  337. package/src/types/unit/XX.d.ts +0 -825
  338. package/src/types/unit/YX.d.ts +0 -17
  339. package/src/types/unit/ZX.d.ts +0 -19
  340. package/src/types/unit-types.d.ts +0 -86
  341. package/src/utils/base64.ts +0 -7
  342. package/src/utils/certificate.ts +0 -60
  343. package/src/utils/document.ts +0 -852
  344. package/src/utils/getBaseUrl.ts +0 -5
  345. package/src/utils/helpers.ts +0 -552
  346. package/src/utils/signature-diagnostics.ts +0 -583
  347. package/src/utils/validation.ts +0 -268
  348. package/test/MyInvoiClientWithRealData.test.ts +0 -40
  349. package/test/MyInvoisClient.test.ts +0 -204
  350. package/test/base64.test.ts +0 -43
  351. package/test/dynamicInvoiceFeatures.test.ts +0 -451
  352. package/test/signAndSubmitInvoice.test.ts +0 -452
  353. package/test/signature-diagnostics.test.ts +0 -130
  354. package/tsconfig.json +0 -39
  355. package/tsdown.config.ts +0 -31
  356. package/vitest.config.ts +0 -8
  357. /package/dist/{0X-CTIq3y3a.d.ts → 0X-DZnB0al0.d.ts} +0 -0
  358. /package/dist/{1X-BywXCqtn.d.ts → 1X-C72Wa4pk.d.ts} +0 -0
  359. /package/dist/{1X-Bu4oiv8D.d.ts → 1X-Dg5J6Bfg.d.ts} +0 -0
  360. /package/dist/{2X-3fSEGIuE.d.ts → 2X-CH89y3Af.d.ts} +0 -0
  361. /package/dist/{2X-DnG3FY1f.d.ts → 2X-D_qwTeDT.d.ts} +0 -0
  362. /package/dist/{3X-CLdmoel1.d.ts → 3X-BJHYxgxa.d.ts} +0 -0
  363. /package/dist/{3X-Ynjfgoll.d.ts → 3X-DryrwYRf.d.ts} +0 -0
  364. /package/dist/{4X-B5ePdMky.d.ts → 4X-BPMLRoDv.d.ts} +0 -0
  365. /package/dist/{4X-BTG6o1Gn.d.ts → 4X-BbZgoRHO.d.ts} +0 -0
  366. /package/dist/{5X-dhP6fyou.d.ts → 5X-Bv7M6KyG.d.ts} +0 -0
  367. /package/dist/{5X-CjSz1zxJ.d.ts → 5X-oQRBnO0f.d.ts} +0 -0
  368. /package/dist/{6X-B9KP_vEn.d.ts → 6X-B9I2XJa4.d.ts} +0 -0
  369. /package/dist/{6X-BHaY0TCf.d.ts → 6X-ZeZ8OB57.d.ts} +0 -0
  370. /package/dist/{7X-DtkQutx2.d.ts → 7X-Ckv9bbzG.d.ts} +0 -0
  371. /package/dist/{7X-C4eX_tAk.d.ts → 7X-Dvw2Z2VN.d.ts} +0 -0
  372. /package/dist/{8X-D6HTLShY.d.ts → 8X-BkgoX8dg.d.ts} +0 -0
  373. /package/dist/{8X-5n9seY3z.d.ts → 8X-C37BJTl6.d.ts} +0 -0
  374. /package/dist/{9X-CHZKsIdD.d.ts → 9X-Du0e44cq.d.ts} +0 -0
  375. /package/dist/{9X-Cpb6V4JC.d.ts → 9X-_XRgT2-_.d.ts} +0 -0
  376. /package/dist/{AX-C0w_r3PA.d.ts → AX-BSPLpkVT.d.ts} +0 -0
  377. /package/dist/{BX-RadlZ-6m.d.ts → BX-u4yMaIkz.d.ts} +0 -0
  378. /package/dist/{CX-CT1Zzb9D.d.ts → CX-BKZG0pVE.d.ts} +0 -0
  379. /package/dist/{DX-CtUeTKMM.d.ts → DX-CwA9WJAf.d.ts} +0 -0
  380. /package/dist/{EX-084Yu7Wt.d.ts → EX-BRNu1Ooi.d.ts} +0 -0
  381. /package/dist/{FX-BrbQM0CW.d.ts → FX-DBxjq6xY.d.ts} +0 -0
  382. /package/dist/{GX-gKj8iAAh.d.ts → GX-B3CvWNrP.d.ts} +0 -0
  383. /package/dist/{HX-9D-ZXTy5.d.ts → HX-D7FABgTv.d.ts} +0 -0
  384. /package/dist/{IX-DR4Fc92A.d.ts → IX-D3ZknsAB.d.ts} +0 -0
  385. /package/dist/{JX-DIKa9ma-.d.ts → JX-BRaZM3Gc.d.ts} +0 -0
  386. /package/dist/{KX-DpsJ_unT.d.ts → KX-B1K0OWoi.d.ts} +0 -0
  387. /package/dist/{LX-DeXPPWUX.d.ts → LX-CKRefinL.d.ts} +0 -0
  388. /package/dist/{MX-CKMjg_zK.d.ts → MX-DKmaeO9r.d.ts} +0 -0
  389. /package/dist/{NX-oYdb4NDo.d.ts → NX-CJL2Gn1U.d.ts} +0 -0
  390. /package/dist/{OX-Bid9es3D.d.ts → OX-Do2ap5v_.d.ts} +0 -0
  391. /package/dist/{PX-D7jy9CFk.d.ts → PX-_DOr_rm9.d.ts} +0 -0
  392. /package/dist/{QX-BFWOR4g3.d.ts → QX-HlXLkIki.d.ts} +0 -0
  393. /package/dist/{RX-XHgCyMV1.d.ts → RX-DVPGOVES.d.ts} +0 -0
  394. /package/dist/{SX-Cl8RN8oH.d.ts → SX-OGT3qwlS.d.ts} +0 -0
  395. /package/dist/{TX-ZymoIbtr.d.ts → TX-cPDINmZ5.d.ts} +0 -0
  396. /package/dist/{UX-D-Ndd1ov.d.ts → UX-Be3sqvPV.d.ts} +0 -0
  397. /package/dist/{VX-B-1b34r7.d.ts → VX-CoEuBNDK.d.ts} +0 -0
  398. /package/dist/{WX-0GuMjPNZ.d.ts → WX-DMvw__jH.d.ts} +0 -0
  399. /package/dist/{XX-CF2NANsy.d.ts → XX-DOA-10JW.d.ts} +0 -0
  400. /package/dist/{YX-B51BbNSg.d.ts → YX-F34sJ7Ik.d.ts} +0 -0
  401. /package/dist/{ZX-BMJS1iAv.d.ts → ZX-CDQOfsHh.d.ts} +0 -0
  402. /package/dist/{certificate-aooIRf9A.js → certificate-BDECQL9C.js} +0 -0
  403. /package/dist/{classification-codes-BKxV-rO9.d.ts → classification-codes-B1D5xbq5.d.ts} +0 -0
  404. /package/dist/{country-code-CQuaiQm2.d.ts → country-code-D42kAyNH.d.ts} +0 -0
  405. /package/dist/{currencies-BYJK-m6v.d.ts → currencies-CDveO_yz.d.ts} +0 -0
  406. /package/dist/{document-D6VKMAtx.js → document-BSuYbfXR.js} +0 -0
  407. /package/dist/{e-invoice-CmbLQkHw.d.ts → e-invoice-BxNC6V_j.d.ts} +0 -0
  408. /package/dist/{getBaseUrl-R3IdgCu3.js → getBaseUrl-BYkBwhQP.js} +0 -0
  409. /package/dist/{index-0-EvC6Nv.d.ts → index-FTgB2nM6.d.ts} +0 -0
  410. /package/dist/{payment-modes-BOTSRC_X.d.ts → payment-modes-NpE3OcCV.d.ts} +0 -0
  411. /package/dist/{signatures-W-_brwdb.d.ts → signatures-DOKNMiZI.d.ts} +0 -0
  412. /package/dist/{state-codes-oeFKlwXZ.d.ts → state-codes-VOFWhHA0.d.ts} +0 -0
  413. /package/dist/{tax-types-CsQ76JMf.d.ts → tax-types-ieqw5Ze7.d.ts} +0 -0
@@ -1,452 +0,0 @@
1
- import { describe, expect, it } from 'vitest'
2
- import { MyInvoisClient } from '../src/index'
3
- import type { InvoiceV1_1 } from '../src/types'
4
- import {
5
- generateCompleteDocument,
6
- extractCertificateInfo,
7
- } from '../src/utils/document'
8
-
9
- /**
10
- * ⚠️ SECURITY NOTICE: This file uses environment variables for sensitive data.
11
- * Never hardcode actual TIN, NRIC, certificates, or API credentials in test files.
12
- * Use .env file for your actual values (already gitignored).
13
- */
14
-
15
- /**
16
- * Creates minimal test invoice data that meets all mandatory requirements
17
- * Following MyInvois v1.1 specification exactly
18
- */
19
- const createMinimalTestInvoice = (): InvoiceV1_1 => {
20
- // Use current date/time to avoid validation errors
21
- const now = new Date()
22
- const currentDate = now.toISOString().split('T')[0] // YYYY-MM-DD
23
- const currentTime = now.toISOString().split('T')[1].split('.')[0] + 'Z' // HH:MM:SSZ
24
-
25
- return {
26
- // === CORE MANDATORY FIELDS ===
27
- eInvoiceVersion: '1.1',
28
- eInvoiceTypeCode: '01', // Standard invoice
29
- eInvoiceCodeOrNumber: `TEST-INV-${Date.now()}`, // Unique invoice number
30
- eInvoiceDate: currentDate,
31
- eInvoiceTime: currentTime,
32
- invoiceCurrencyCode: 'MYR',
33
-
34
- // === SUPPLIER (will be updated with certificate TIN) ===
35
- supplier: {
36
- name: 'Test Company Sdn Bhd',
37
- tin: process.env.TIN_VALUE!, // Will be replaced with certificate TIN
38
- registrationType: 'NRIC',
39
- registrationNumber: process.env.NRIC_VALUE!,
40
- contactNumber: '+60123456789',
41
- address: {
42
- addressLine0: '123 Test Street',
43
- cityName: 'Kuala Lumpur',
44
- state: '14', // Wilayah Persekutuan Kuala Lumpur
45
- country: 'MYS',
46
- },
47
- industryClassificationCode: '41001',
48
- industryClassificationDescription: 'Test Industry',
49
- },
50
-
51
- // === BUYER (using consolidated buyer for testing) ===
52
- buyer: {
53
- name: 'CONSOLIDATED E-INVOICE BUYER',
54
- tin: 'EI00000000010', // Standard consolidated buyer TIN
55
- registrationType: 'NRIC',
56
- registrationNumber: process.env.NRIC_VALUE!,
57
- sstRegistrationNumber: 'NA',
58
- contactNumber: '+60123456789', // Valid phone number (minimum 8 chars)
59
- address: {
60
- addressLine0: 'NA',
61
- cityName: 'KUALA LUMPUR',
62
- state: '14',
63
- country: 'MYS',
64
- },
65
- },
66
-
67
- // === SINGLE LINE ITEM (minimal) ===
68
- invoiceLineItems: [
69
- {
70
- itemClassificationCode: '001', // General goods
71
- itemDescription: 'Test Product',
72
- unitPrice: 100.0,
73
- taxType: '01', // SST
74
- taxRate: 6.0, // 6% SST
75
- taxAmount: 6.0, // 6% of 100
76
- totalTaxableAmountPerLine: 100.0,
77
- totalAmountPerLine: 106.0, // 100 + 6
78
- },
79
- ],
80
-
81
- // === MONETARY TOTALS ===
82
- legalMonetaryTotal: {
83
- taxExclusiveAmount: 100.0,
84
- taxInclusiveAmount: 106.0,
85
- payableAmount: 106.0,
86
- },
87
-
88
- // === TAX TOTAL ===
89
- taxTotal: {
90
- taxAmount: 6.0,
91
- },
92
-
93
- // === DIGITAL SIGNATURE (placeholder - will be populated by signing process) ===
94
- issuerDigitalSignature: {
95
- Id: 'signature',
96
- 'ds:SignedInfo': {
97
- 'ds:CanonicalizationMethod': {
98
- Algorithm: 'http://www.w3.org/2006/12/xml-c14n11',
99
- },
100
- 'ds:SignatureMethod': {
101
- Algorithm: 'http://www.w3.org/2001/04/xmldsig-more#rsa-sha256',
102
- },
103
- 'ds:Reference': [
104
- {
105
- Id: 'id-doc-signed-data',
106
- URI: '',
107
- 'ds:DigestMethod': {
108
- Algorithm: 'http://www.w3.org/2001/04/xmlenc#sha256',
109
- },
110
- 'ds:DigestValue': '',
111
- },
112
- {
113
- Id: 'id-xades-signed-props',
114
- URI: '#id-xades-signed-props',
115
- 'ds:DigestMethod': {
116
- Algorithm: 'http://www.w3.org/2001/04/xmlenc#sha256',
117
- },
118
- 'ds:DigestValue': '',
119
- },
120
- ],
121
- },
122
- 'ds:SignatureValue': '',
123
- 'ds:KeyInfo': {
124
- 'ds:X509Data': {
125
- 'ds:X509Certificate': '',
126
- },
127
- },
128
- 'ds:Object': {
129
- 'xades:QualifyingProperties': {
130
- Target: 'signature',
131
- 'xades:SignedProperties': {
132
- Target: 'signature',
133
- Id: 'id-xades-signed-props',
134
- 'xades:SignedSignatureProperties': {
135
- 'xades:SigningTime': '',
136
- 'xades:SigningCertificate': {
137
- 'xades:Cert': {
138
- 'xades:CertDigest': {
139
- 'ds:DigestMethod': {
140
- Algorithm: 'http://www.w3.org/2001/04/xmlenc#sha256',
141
- },
142
- 'ds:DigestValue': '',
143
- },
144
- 'xades:IssuerSerial': {
145
- 'ds:X509IssuerName': '',
146
- 'ds:X509SerialNumber': '',
147
- },
148
- },
149
- },
150
- },
151
- },
152
- },
153
- },
154
- },
155
- }
156
- }
157
-
158
- describe('MyInvois Document Generation and Submission', () => {
159
- const requiredEnvVars = [
160
- 'CLIENT_ID',
161
- 'CLIENT_SECRET',
162
- 'TEST_PRIVATE_KEY',
163
- 'TEST_CERTIFICATE',
164
- ]
165
-
166
- // Check environment variables
167
- const missingVars = requiredEnvVars.filter(varName => !process.env[varName])
168
-
169
- if (missingVars.length > 0) {
170
- it.skip(`Skipping tests - Missing environment variables: ${missingVars.join(', ')}`, () => {
171
- expect
172
- .soft(
173
- false,
174
- `Missing required environment variables: ${missingVars.join(', ')}`,
175
- )
176
- .toBe(true)
177
- })
178
- return
179
- }
180
-
181
- const CLIENT_ID = process.env.CLIENT_ID!
182
- const CLIENT_SECRET = process.env.CLIENT_SECRET!
183
- const PRIVATE_KEY = process.env.TEST_PRIVATE_KEY!
184
- const CERTIFICATE = process.env.TEST_CERTIFICATE!
185
-
186
- it('should extract certificate information correctly', () => {
187
- console.log('🔍 Extracting certificate information...')
188
-
189
- const certInfo = extractCertificateInfo(CERTIFICATE)
190
-
191
- console.log('Certificate Info:', {
192
- issuerName: certInfo.issuerName,
193
- serialNumber: certInfo.serialNumber,
194
- })
195
-
196
- expect(certInfo.issuerName).toBeDefined()
197
- expect(certInfo.serialNumber).toBeDefined()
198
- expect(typeof certInfo.issuerName).toBe('string')
199
- expect(typeof certInfo.serialNumber).toBe('string')
200
- })
201
-
202
- it('should find TIN that matches certificate', async () => {
203
- console.log('🔐 Finding TIN that matches certificate...')
204
-
205
- const client = new MyInvoisClient(
206
- CLIENT_ID,
207
- CLIENT_SECRET,
208
- 'sandbox',
209
- CERTIFICATE,
210
- PRIVATE_KEY,
211
- undefined,
212
- true, // debug mode
213
- )
214
-
215
- // Test TIN formats that might match the certificate
216
- // Note: These are example TIN formats - replace with your actual test TINs
217
- const testTINs = [
218
- process.env.TIN_VALUE, // Environment variable if set
219
- process.env.TEST_TIN_1, // Additional test TIN from environment
220
- process.env.TEST_TIN_2, // Additional test TIN from environment
221
- process.env.TEST_TIN_3, // Additional test TIN from environment
222
- 'EI00000000010', // Consolidated buyer (shouldn't work for supplier)
223
- ].filter(Boolean) // Remove undefined values
224
-
225
- let certificateMatchingTIN: string | null = null
226
- const validTINs: string[] = []
227
-
228
- // Step 1: Check which TINs are valid in the system
229
- console.log('📋 Step 1: Checking TIN validity...')
230
- for (const tin of testTINs) {
231
- try {
232
- console.log(`Testing TIN validity: ${tin}`)
233
- const isValid = await client.verifyTin(tin!, 'BRN', '123456789012')
234
- console.log(`TIN ${tin} validity: ${isValid}`)
235
-
236
- if (isValid) {
237
- validTINs.push(tin!)
238
- }
239
- } catch (error) {
240
- console.log(`❌ Error testing TIN ${tin}:`, error)
241
- }
242
- }
243
-
244
- console.log(`📊 Found ${validTINs.length} valid TINs:`, validTINs)
245
-
246
- // Step 2: Test each valid TIN with a minimal document submission to find certificate match
247
- console.log('📋 Step 2: Testing certificate matching...')
248
- for (const tin of validTINs) {
249
- try {
250
- console.log(`Testing TIN with certificate: ${tin}`)
251
-
252
- // Create a minimal test invoice with this TIN
253
- const testInvoice = createMinimalTestInvoice()
254
- testInvoice.supplier.tin = tin
255
- testInvoice.eInvoiceCodeOrNumber = `TEST-CERT-${Date.now()}`
256
-
257
- // Try to submit it
258
- const { status } = await client.submitDocument([testInvoice])
259
-
260
- if (status === 202) {
261
- console.log(`✅ SUCCESS! TIN ${tin} works with certificate`)
262
- certificateMatchingTIN = tin
263
- break
264
- } else {
265
- console.log(`❌ TIN ${tin} failed with status ${status}`)
266
- }
267
- } catch (error: any) {
268
- if (
269
- error.message?.includes(
270
- 'authenticated TIN and documents TIN is not matching',
271
- )
272
- ) {
273
- console.log(`❌ TIN ${tin} doesn't match certificate`)
274
- } else {
275
- console.log(`❌ TIN ${tin} failed with error:`, error.message)
276
- }
277
- }
278
- }
279
-
280
- // Store the certificate-matching TIN for next test
281
- if (certificateMatchingTIN) {
282
- process.env.VALID_SUPPLIER_TIN = certificateMatchingTIN
283
- console.log(
284
- `🎯 Certificate matching TIN found: ${certificateMatchingTIN}`,
285
- )
286
- } else if (validTINs.length > 0) {
287
- // Fallback to first valid TIN with a warning
288
- process.env.VALID_SUPPLIER_TIN = validTINs[0]
289
- console.log(
290
- `⚠️ No certificate match found, using first valid TIN: ${validTINs[0]}`,
291
- )
292
- console.log(
293
- `⚠️ This will likely cause TIN mismatch error in submission test`,
294
- )
295
- }
296
-
297
- // For now, pass the test if we found any valid TINs (the main goal is to test the implementation)
298
- expect.soft(validTINs.length, 'No valid TINs found').toBeGreaterThan(0)
299
- }, 60000) // Increased timeout for multiple submissions
300
-
301
- it('should generate valid document structure', () => {
302
- console.log('📄 Generating document structure...')
303
-
304
- const invoice = createMinimalTestInvoice()
305
-
306
- // Use the valid TIN from previous test or fallback
307
- const supplierTIN =
308
- process.env.VALID_SUPPLIER_TIN || process.env.TIN_VALUE || 'C00000000000' // Replace with your TIN
309
- invoice.supplier.tin = supplierTIN
310
-
311
- console.log(`Using supplier TIN: ${supplierTIN}`)
312
-
313
- const certInfo = extractCertificateInfo(CERTIFICATE)
314
-
315
- const document = generateCompleteDocument([invoice], {
316
- privateKeyPem: PRIVATE_KEY,
317
- certificatePem: CERTIFICATE,
318
- issuerName: certInfo.issuerName,
319
- serialNumber: certInfo.serialNumber,
320
- })
321
-
322
- console.log('Generated document structure:')
323
- console.log(
324
- '- Namespace declarations:',
325
- Object.keys(document).filter(k => k.startsWith('_')),
326
- )
327
- console.log('- Number of invoices:', document.Invoice.length)
328
- console.log('- First invoice keys:', Object.keys(document.Invoice[0]))
329
- console.log('- Has UBLExtensions:', !!document.Invoice[0].UBLExtensions)
330
- console.log('- Has Signature:', !!document.Invoice[0].Signature)
331
-
332
- // Basic structure validation
333
- expect(document._D).toBe(
334
- 'urn:oasis:names:specification:ubl:schema:xsd:Invoice-2',
335
- )
336
- expect(document._A).toBe(
337
- 'urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2',
338
- )
339
- expect(document._B).toBe(
340
- 'urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2',
341
- )
342
- expect(document.Invoice).toHaveLength(1)
343
- expect(document.Invoice[0].UBLExtensions).toBeDefined()
344
- expect(document.Invoice[0].Signature).toBeDefined()
345
-
346
- // Store document for next test
347
- ;(globalThis as any).testDocument = document
348
- ;(globalThis as any).testInvoice = invoice
349
- })
350
-
351
- it('should submit document to MyInvois successfully', async () => {
352
- console.log('🚀 Submitting document to MyInvois...')
353
-
354
- const document = (globalThis as any).testDocument
355
- const invoice = (globalThis as any).testInvoice
356
-
357
- if (!document || !invoice) {
358
- throw new Error('Document not generated in previous test')
359
- }
360
-
361
- const client = new MyInvoisClient(
362
- CLIENT_ID,
363
- CLIENT_SECRET,
364
- 'sandbox',
365
- CERTIFICATE,
366
- PRIVATE_KEY,
367
- undefined,
368
- true, // debug mode
369
- )
370
-
371
- try {
372
- console.log('📤 Submitting to MyInvois API...')
373
- console.log('Document size:', JSON.stringify(document).length, 'bytes')
374
-
375
- const { data: response, status } = await client.submitDocument([invoice])
376
-
377
- console.log('📥 Response received:')
378
- console.log('Status:', status)
379
- console.log('Response:', JSON.stringify(response, null, 2))
380
-
381
- // Validate response structure
382
- expect(status).toBe(202) // MyInvois returns 202 Accepted
383
- expect(response.submissionUid).toBeDefined()
384
- expect(typeof response.submissionUid).toBe('string')
385
-
386
- // Check for accepted/rejected documents
387
- if (response.acceptedDocuments?.length > 0) {
388
- console.log('✅ Documents accepted:', response.acceptedDocuments.length)
389
- response.acceptedDocuments.forEach((doc, index) => {
390
- console.log(` Document ${index + 1}:`, doc.invoiceCodeNumber)
391
- })
392
- }
393
-
394
- if (response.rejectedDocuments?.length > 0) {
395
- console.log('❌ Documents rejected:', response.rejectedDocuments.length)
396
- response.rejectedDocuments.forEach((doc, index) => {
397
- console.log(` Document ${index + 1}:`, doc.invoiceCodeNumber)
398
- if (doc.error) {
399
- console.log(` Error:`, doc.error.message)
400
- if (doc.error.details) {
401
- doc.error.details.forEach((detail, detailIndex) => {
402
- console.log(` Detail ${detailIndex + 1}:`, detail.message)
403
- })
404
- }
405
- }
406
- })
407
- }
408
-
409
- // Get submission status
410
- console.log('📊 Checking submission status...')
411
- const submission = await client.getSubmissionStatus(
412
- response.submissionUid,
413
- )
414
- console.log('Submission status:', submission?.status)
415
-
416
- expect(submission).toBeDefined()
417
- expect(['InProgress', 'Valid', 'PartiallyValid', 'Invalid']).toContain(
418
- submission?.status,
419
- )
420
- } catch (error: any) {
421
- console.error('💥 Submission failed:', error)
422
-
423
- // Analyze common error types
424
- if (
425
- error.message?.includes(
426
- 'authenticated TIN and documents TIN is not matching',
427
- )
428
- ) {
429
- console.log('\n🔍 TIN MISMATCH ERROR DETECTED!')
430
- console.log(
431
- 'This means the TIN in the certificate does not match the TIN in the invoice.',
432
- )
433
- console.log(
434
- 'The certificate is registered to a different TIN in MyInvois system.',
435
- )
436
- console.log(
437
- 'Solution: Get the correct TIN for your certificate or get a certificate for your TIN.',
438
- )
439
- } else if (error.message?.includes('Invalid structure')) {
440
- console.log('\n🔍 INVALID STRUCTURE ERROR DETECTED!')
441
- console.log('This could be due to:')
442
- console.log('1. Missing mandatory fields')
443
- console.log('2. Incorrect field values')
444
- console.log('3. Wrong data types')
445
- console.log('4. Business rule violations')
446
- }
447
-
448
- // Re-throw to fail the test
449
- throw error
450
- }
451
- }, 60000) // Extended timeout for API calls
452
- })
@@ -1,130 +0,0 @@
1
- import { describe, it } from 'vitest'
2
- import type { InvoiceV1_1 } from '../src/types'
3
- import {
4
- diagnoseSignatureIssues,
5
- printDiagnostics,
6
- } from '../src/utils/signature-diagnostics'
7
-
8
- /**
9
- * ⚠️ SECURITY NOTICE: This file uses environment variables for sensitive data.
10
- * Never hardcode actual TIN, NRIC, certificates, or API credentials in test files.
11
- * Use .env file for your actual values (already gitignored).
12
- */
13
-
14
- describe('Signature Diagnostics', () => {
15
- it('should analyze current certificate and signature implementation', () => {
16
- const CLIENT_ID = process.env.CLIENT_ID
17
- const CLIENT_SECRET = process.env.CLIENT_SECRET
18
- const PRIVATE_KEY = process.env.TEST_PRIVATE_KEY
19
- const CERTIFICATE = process.env.TEST_CERTIFICATE
20
-
21
- if (!CLIENT_ID || !CLIENT_SECRET || !PRIVATE_KEY || !CERTIFICATE) {
22
- console.log('⚠️ Skipping diagnostics - Missing environment variables')
23
- return
24
- }
25
-
26
- // Create test invoice
27
- const testInvoice: InvoiceV1_1 = {
28
- eInvoiceVersion: '1.1',
29
- eInvoiceTypeCode: '01',
30
- eInvoiceCodeOrNumber: `DIAG-${Date.now()}`,
31
- eInvoiceDate: new Date().toISOString().split('T')[0],
32
- eInvoiceTime: new Date().toISOString().split('T')[1].split('.')[0] + 'Z',
33
- invoiceCurrencyCode: 'MYR',
34
-
35
- supplier: {
36
- name: 'Test Company Sdn Bhd',
37
- tin: process.env.TIN_VALUE || 'IG00000000000', // Replace with your TIN
38
- registrationType: 'NRIC',
39
- registrationNumber: process.env.NRIC_VALUE || '123456789012',
40
- contactNumber: '+60123456789',
41
- address: {
42
- addressLine0: '123 Test Street',
43
- cityName: 'Kuala Lumpur',
44
- state: '14',
45
- country: 'MYS',
46
- },
47
- industryClassificationCode: '41001',
48
- industryClassificationDescription: 'Test Industry',
49
- },
50
-
51
- buyer: {
52
- name: 'CONSOLIDATED E-INVOICE BUYER',
53
- tin: 'EI00000000010',
54
- registrationType: 'NRIC',
55
- registrationNumber: process.env.BUYER_NRIC_VALUE || '000000000000', // Replace with test NRIC
56
- sstRegistrationNumber: 'NA',
57
- contactNumber: '+60123456789',
58
- address: {
59
- addressLine0: 'NA',
60
- cityName: 'KUALA LUMPUR',
61
- state: '14',
62
- country: 'MYS',
63
- },
64
- },
65
-
66
- invoiceLineItems: [
67
- {
68
- itemClassificationCode: '001',
69
- itemDescription: 'Test Product',
70
- unitPrice: 100.0,
71
- taxType: '01',
72
- taxRate: 6.0,
73
- taxAmount: 6.0,
74
- totalTaxableAmountPerLine: 100.0,
75
- totalAmountPerLine: 106.0,
76
- },
77
- ],
78
-
79
- legalMonetaryTotal: {
80
- taxExclusiveAmount: 100.0,
81
- taxInclusiveAmount: 106.0,
82
- payableAmount: 106.0,
83
- },
84
-
85
- taxTotal: {
86
- taxAmount: 6.0,
87
- },
88
-
89
- issuerDigitalSignature: {} as any,
90
- }
91
-
92
- console.log('🔍 Running MyInvois Signature Diagnostics...\n')
93
-
94
- try {
95
- const diagnosticResult = diagnoseSignatureIssues(
96
- [testInvoice],
97
- CERTIFICATE,
98
- )
99
-
100
- printDiagnostics(diagnosticResult)
101
-
102
- // Summary
103
- const certificateIssues =
104
- diagnosticResult.certificateAnalysis.issues.length
105
- const signatureIssues = diagnosticResult.signatureAnalysis.issues.length
106
-
107
- console.log('\n📊 SUMMARY:')
108
- console.log(` Certificate Issues: ${certificateIssues}`)
109
- console.log(` Signature Issues: ${signatureIssues}`)
110
- console.log(` Total Issues: ${certificateIssues + signatureIssues}`)
111
-
112
- if (certificateIssues > 0) {
113
- console.log('\n🚨 PRIMARY ACTION REQUIRED:')
114
- console.log(
115
- ' Obtain official business certificate from MyInvois-approved CA',
116
- )
117
- console.log(
118
- ' Self-generated certificates cannot pass MyInvois validation',
119
- )
120
- }
121
-
122
- if (signatureIssues > 0) {
123
- console.log('\n⚙️ SECONDARY ACTION:')
124
- console.log(' Review and optimize signature implementation')
125
- }
126
- } catch (error) {
127
- console.error('❌ Diagnostic failed:', error)
128
- }
129
- })
130
- })
package/tsconfig.json DELETED
@@ -1,39 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- /* Base Options: */
4
- "esModuleInterop": true,
5
- "skipLibCheck": false,
6
- "target": "ESNext",
7
- "allowJs": false,
8
- "resolveJsonModule": true,
9
- "moduleDetection": "force",
10
- "isolatedModules": true, // Often recommended for bundlers
11
- "composite": true,
12
- /* Strictness */
13
- "strict": true,
14
- "noUncheckedIndexedAccess": true,
15
- "noImplicitAny": true,
16
- /* Bundler Behavior */
17
- "moduleResolution": "Bundler", // Or "NodeNext"
18
- "module": "ESNext",
19
- "noEmit": true, // Rolldown handles emission
20
- /* Path Resolution */
21
- "baseUrl": ".", // Important for resolving paths relative to root
22
- /* Type Checking */
23
- "types": [
24
- "bun"
25
- ] // Include Bun types if using Bun runtime features
26
- },
27
- "include": [
28
- "src/**/*.ts",
29
- "src/**/*.d.ts",
30
- "rolldown.config.ts",
31
- "test/MyInvoisClient.test.ts",
32
- "test/base64.test.ts",
33
- "test/transform.test.ts"
34
- ],
35
- "exclude": [
36
- "node_modules",
37
- "dist"
38
- ]
39
- }
package/tsdown.config.ts DELETED
@@ -1,31 +0,0 @@
1
- import { defineConfig } from 'tsdown'
2
-
3
- const external = [
4
- 'xmldom-ts',
5
- 'xpath-ts',
6
- 'xml-c14n',
7
- 'xml-crypto',
8
- 'crypto',
9
- '@xmldom/xmldom',
10
- ]
11
-
12
- export default [
13
- defineConfig({
14
- entry: ['./src'],
15
- dts: {
16
- isolatedDeclarations: true,
17
- },
18
- external,
19
- }),
20
- defineConfig({
21
- entry: ['./src'],
22
- format: 'cjs',
23
- sourcemap: true,
24
- platform: 'node',
25
- outputOptions: {
26
- entryFileNames: 'index.cjs',
27
- chunkFileNames: '[name]-[hash].cjs',
28
- },
29
- external,
30
- }),
31
- ]
package/vitest.config.ts DELETED
@@ -1,8 +0,0 @@
1
- import { defineConfig } from 'vitest/config'
2
-
3
- export default defineConfig({
4
- root: '.',
5
- test: {
6
- setupFiles: ['dotenv/config'],
7
- },
8
- })
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes