@sachahjkl/backoffice 0.2.7 → 0.2.8

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 (289) hide show
  1. package/README.md +3 -1
  2. package/dist/demo-reset.cjs +14 -12
  3. package/dist/main.cjs +14 -12
  4. package/dist/migrate.cjs +8 -6
  5. package/dist/web/chunk-3MmwmyDh.js +1 -0
  6. package/dist/web/{chunk-DhkjPUn4.js → chunk-6-OG9zy0.js} +1 -1
  7. package/dist/web/chunk-6twPawwh.js +1 -0
  8. package/dist/web/{chunk-Bck0-DJt2.js → chunk-AE7J7wcH2.js} +1 -1
  9. package/dist/web/chunk-AZB0sMq_.js +1 -0
  10. package/dist/web/{chunk-CGfyD3XX2.js → chunk-B-2b7DJP.js} +1 -1
  11. package/dist/web/{chunk-BYjxXKZ4.js → chunk-B-XrDECw.js} +1 -1
  12. package/dist/web/chunk-B0Pr-tNT.js +1 -0
  13. package/dist/web/chunk-B1Kpw1um.js +1 -0
  14. package/dist/web/chunk-B2X87TB92.js +1 -0
  15. package/dist/web/chunk-B3fBH9Bt2.js +1 -0
  16. package/dist/web/chunk-B4KnJ14M2.js +1 -0
  17. package/dist/web/{chunk-DZgf7AIe.js → chunk-B4Vcwa9l.js} +1 -1
  18. package/dist/web/chunk-B4cAnuMM2.js +1 -0
  19. package/dist/web/chunk-B6mYbErA2.js +1 -0
  20. package/dist/web/chunk-B6trGhNK2.js +3 -0
  21. package/dist/web/chunk-B89j6ppg2.js +1 -0
  22. package/dist/web/chunk-B8tEtjeZ2.js +1 -0
  23. package/dist/web/chunk-BAYVC6mO2.js +1 -0
  24. package/dist/web/{chunk-MpUdRrak2.js → chunk-BCN3uL5S.js} +1 -1
  25. package/dist/web/chunk-BDmE_ZEe2.js +1 -0
  26. package/dist/web/{chunk-aW8Vltn22.js → chunk-BEYQDr-4.js} +1 -1
  27. package/dist/web/{chunk-CLHj5Ycx2.js → chunk-BEqSiNum.js} +1 -1
  28. package/dist/web/chunk-BHnrX0WJ.js +1 -0
  29. package/dist/web/chunk-BJ0yZa2G.js +1 -0
  30. package/dist/web/{chunk-Fc120Hsi2.js → chunk-BL3upDtA.js} +1 -1
  31. package/dist/web/{chunk-POMKwNf_.js → chunk-BMiFx1ci.js} +1 -1
  32. package/dist/web/{chunk--RuvStn6.js → chunk-BNS7t55s2.js} +1 -1
  33. package/dist/web/{chunk-D1wrPwB5.js → chunk-BO6tYuf8.js} +1 -1
  34. package/dist/web/{chunk-HmRGBt692.js → chunk-BPA6_4Vt.js} +1 -1
  35. package/dist/web/chunk-BRp_hGNk.js +1 -0
  36. package/dist/web/chunk-BSDpuA332.js +1 -0
  37. package/dist/web/chunk-BSKQUQGn.js +1 -0
  38. package/dist/web/{chunk-C0Ceu-vg.js → chunk-BTsDF4C6.js} +1 -1
  39. package/dist/web/{chunk-CDK48Khc.js → chunk-BVXF-FYe2.js} +1 -1
  40. package/dist/web/{chunk-BkvskoFt2.js → chunk-BWBbQ7HE2.js} +1 -1
  41. package/dist/web/{chunk-DTPC4JtI2.js → chunk-BYRTViky2.js} +1 -1
  42. package/dist/web/chunk-BZe5DpAa.js +1 -0
  43. package/dist/web/chunk-B_7K7EHr.js +1 -0
  44. package/dist/web/{chunk-D8xHm8jb2.js → chunk-B_pcpccF.js} +1 -1
  45. package/dist/web/{chunk-xTX16tt2.js → chunk-B_xlO55a2.js} +1 -1
  46. package/dist/web/{chunk-BKufCOYq.js → chunk-BfKP2Lf9.js} +1 -1
  47. package/dist/web/chunk-Bfm6z5eI2.js +1 -0
  48. package/dist/web/chunk-Bgl7kJgO2.js +1 -0
  49. package/dist/web/{chunk-enci06qG.js → chunk-Bh2Diab5.js} +1 -1
  50. package/dist/web/chunk-Bi9TDDm92.js +1 -0
  51. package/dist/web/chunk-Bit8ybhq.js +1 -0
  52. package/dist/web/chunk-BmfZmUis.js +1 -0
  53. package/dist/web/chunk-BpkPnQ2K.js +1 -0
  54. package/dist/web/chunk-Bq24rsxm2.js +1 -0
  55. package/dist/web/{chunk-C_QyIKvy.js → chunk-BqXhvdC0.js} +1 -1
  56. package/dist/web/{chunk-CCkaRRSy.js → chunk-Brog8aBK.js} +1 -1
  57. package/dist/web/{chunk-C-O6GrQC2.js → chunk-Bu0zsnWO.js} +1 -1
  58. package/dist/web/chunk-BurkPLm-2.js +1 -0
  59. package/dist/web/chunk-BuyEsqZU2.js +1 -0
  60. package/dist/web/{chunk-AJOoJgZJ.js → chunk-BwFjLr9D2.js} +1 -1
  61. package/dist/web/chunk-BwGtxWvC.js +1 -0
  62. package/dist/web/chunk-Bxrld4562.js +1 -0
  63. package/dist/web/{chunk-Bq2zV2_3.js → chunk-C01EdpX9.js} +1 -1
  64. package/dist/web/{chunk-Dl4EbYnM2.js → chunk-C0dwIYf0.js} +1 -1
  65. package/dist/web/{chunk-CfcCxe_k.js → chunk-C1BibNrz.js} +1 -1
  66. package/dist/web/{chunk-Dns8uMf32.js → chunk-C1gYDta1.js} +1 -1
  67. package/dist/web/{chunk-CubfQf-X2.js → chunk-C2i4N9dz.js} +1 -1
  68. package/dist/web/{chunk-DpLF2wJ62.js → chunk-C6M6lCrw2.js} +1 -1
  69. package/dist/web/{chunk-CK6Sjqig.js → chunk-C94w9Yq2.js} +1 -1
  70. package/dist/web/chunk-CA-xctoQ2.js +1 -0
  71. package/dist/web/chunk-CBcFgY8f2.js +1 -0
  72. package/dist/web/{chunk-DGbo0App2.js → chunk-CCItYukO.js} +1 -1
  73. package/dist/web/chunk-CGLHod2X2.js +1 -0
  74. package/dist/web/{chunk-Bfx7EEIR.js → chunk-CHUNlDss2.js} +1 -1
  75. package/dist/web/chunk-CJ10tvOm.js +1 -0
  76. package/dist/web/chunk-CJE3VBx5.js +1 -0
  77. package/dist/web/chunk-CL9McPWU.js +1 -0
  78. package/dist/web/chunk-CLzfpBlo2.js +1 -0
  79. package/dist/web/chunk-CM29tQ7z.js +1 -0
  80. package/dist/web/{chunk-Ck6cItVE2.js → chunk-CMC_2rEW.js} +1 -1
  81. package/dist/web/chunk-CMFGRRh02.js +1 -0
  82. package/dist/web/chunk-CO_ECkiv.js +1 -0
  83. package/dist/web/{chunk-D97UUzIx.js → chunk-CQvxhLmC2.js} +1 -1
  84. package/dist/web/chunk-CRDadWvH2.js +1 -0
  85. package/dist/web/chunk-CS69nNvh.js +1 -0
  86. package/dist/web/chunk-CXb1THnv2.js +1 -0
  87. package/dist/web/chunk-CZM1REvY.js +1 -0
  88. package/dist/web/chunk-C_4qOSvi2.js +1 -0
  89. package/dist/web/chunk-C_wLUbPJ2.js +1 -0
  90. package/dist/web/chunk-CdvoW0GI.js +1 -0
  91. package/dist/web/{chunk-CE9WzUCM.js → chunk-CecoTW2V.js} +1 -1
  92. package/dist/web/chunk-Cg6D1SkX2.js +1 -0
  93. package/dist/web/chunk-ChMWeKtk2.js +1 -0
  94. package/dist/web/chunk-CiQcqWHR.js +1 -0
  95. package/dist/web/chunk-Cjj8GJIb2.js +1 -0
  96. package/dist/web/{chunk-niXXbm7H.js → chunk-CkRw7h0_.js} +1 -1
  97. package/dist/web/{chunk-nC_XlFOG.js → chunk-Ckk2HUrT.js} +1 -1
  98. package/dist/web/chunk-Cl9ktebj.js +1 -0
  99. package/dist/web/chunk-ClviGHGr.js +1 -0
  100. package/dist/web/{chunk-BVszSMJC.js → chunk-Cm2UNqwE.js} +1 -1
  101. package/dist/web/chunk-CoUH4AfS2.js +1 -0
  102. package/dist/web/chunk-CpB8RIpf.js +1 -0
  103. package/dist/web/{chunk-BpZ7MSOP.js → chunk-CqreQVp_.js} +1 -1
  104. package/dist/web/{chunk-DEXzwHB0.js → chunk-CrwYH4R_2.js} +1 -1
  105. package/dist/web/{chunk-RIi7_iVg.js → chunk-CuVXI21d.js} +1 -1
  106. package/dist/web/{chunk-CvsVlcIU2.js → chunk-CwkgffnU.js} +1 -1
  107. package/dist/web/chunk-CxgCrZQl.js +1 -0
  108. package/dist/web/{chunk-DDCyjjcE.js → chunk-CyavDx9Z.js} +1 -1
  109. package/dist/web/{chunk-r6H-BfOd.js → chunk-D0MIkZdd2.js} +1 -1
  110. package/dist/web/{chunk-D5qmP2Wu.js → chunk-D8Ui_APT.js} +1 -1
  111. package/dist/web/{chunk-CPHUl7N2.js → chunk-D8VZRHVx.js} +1 -1
  112. package/dist/web/chunk-D9pT7T7E.js +1 -0
  113. package/dist/web/chunk-DD8ATIqT2.js +1 -0
  114. package/dist/web/chunk-DE4GLf5B.js +1 -0
  115. package/dist/web/{chunk-CkWd-yMn.js → chunk-DEYSMPA_2.js} +1 -1
  116. package/dist/web/chunk-DGXdMht2.js +1 -0
  117. package/dist/web/chunk-DJfwJBD6.js +1 -0
  118. package/dist/web/chunk-DJwuZjJg2.js +1 -0
  119. package/dist/web/chunk-DKDWoDXU.js +1 -0
  120. package/dist/web/chunk-DLH3RPM22.js +1 -0
  121. package/dist/web/{chunk-qKosqkwC.js → chunk-DQRDJtdh.js} +1 -1
  122. package/dist/web/chunk-DRY4w4Td.js +1 -0
  123. package/dist/web/chunk-DTRJLfq02.js +1 -0
  124. package/dist/web/{chunk-4ipZT9nT.js → chunk-DTj9NKPI.js} +1 -1
  125. package/dist/web/chunk-DVbkiKVh2.js +1 -0
  126. package/dist/web/chunk-DVu24rwt.js +1 -0
  127. package/dist/web/chunk-DWN606KF2.js +1 -0
  128. package/dist/web/chunk-DZvdrgcs2.js +1 -0
  129. package/dist/web/chunk-D_X9J-dz2.js +1 -0
  130. package/dist/web/{chunk-C0gTeWW62.js → chunk-DbL20WIB2.js} +1 -1
  131. package/dist/web/{chunk-Bb31fHqC2.js → chunk-DbcNGxba.js} +1 -1
  132. package/dist/web/chunk-Dc29tEgJ2.js +1 -0
  133. package/dist/web/{chunk-DboSVJMM.js → chunk-Dc8-8Og_.js} +1 -1
  134. package/dist/web/chunk-DdVUVFhX.js +1 -0
  135. package/dist/web/chunk-DeERUxjp.js +1 -0
  136. package/dist/web/chunk-Dfxr5EJU.js +1 -0
  137. package/dist/web/chunk-DgZvyF3s.js +1 -0
  138. package/dist/web/chunk-DgZxoBPB.js +1 -0
  139. package/dist/web/{chunk-DsaNNeZe.js → chunk-DhpMFMQw.js} +1 -1
  140. package/dist/web/{chunk-DOCau85G2.js → chunk-DlBNgzF8.js} +1 -1
  141. package/dist/web/{chunk-CVHqiS63.js → chunk-DlecOMbR.js} +1 -1
  142. package/dist/web/chunk-DnKyRGr_.js +1 -0
  143. package/dist/web/{chunk-DhLlQTD-2.js → chunk-DnYJfVdt.js} +1 -1
  144. package/dist/web/chunk-Dr_Uz6uR2.js +1 -0
  145. package/dist/web/{chunk-NDpjbcAr2.js → chunk-DvAE1Kdh2.js} +1 -1
  146. package/dist/web/chunk-DwSL7UNj.js +1 -0
  147. package/dist/web/{chunk-DZgMGE6C.js → chunk-Dyouu0xF.js} +1 -1
  148. package/dist/web/{chunk-CABvk97t2.js → chunk-DytjnC4n2.js} +1 -1
  149. package/dist/web/{chunk-CApvwK4D.js → chunk-Fo633neF.js} +1 -1
  150. package/dist/web/chunk-I2ekTEA32.js +1 -0
  151. package/dist/web/{chunk-D5MFwK9L.js → chunk-IrDYxRzS.js} +1 -1
  152. package/dist/web/chunk-JqPdfaO22.js +1 -0
  153. package/dist/web/chunk-LKcToPK62.js +1 -0
  154. package/dist/web/{chunk-CtmP6l7_2.js → chunk-Qweefwro2.js} +1 -1
  155. package/dist/web/chunk-U_cdbXaE2.js +1 -0
  156. package/dist/web/chunk-Ub2hjsmX.js +1 -0
  157. package/dist/web/chunk-WylMVh3d.js +1 -0
  158. package/dist/web/chunk-ZZuAWaLQ.js +1 -0
  159. package/dist/web/{chunk-C19Alcnx2.js → chunk-Zj43itle.js} +1 -1
  160. package/dist/web/chunk-ZoQD3eIP2.js +1 -0
  161. package/dist/web/chunk-ZxYSyP21.js +1 -0
  162. package/dist/web/{chunk-D_8jIApo.js → chunk-a58d-9ZM2.js} +1 -1
  163. package/dist/web/{chunk-pV57uiBu2.js → chunk-aGxrcUQJ2.js} +1 -1
  164. package/dist/web/chunk-bIBAi42v2.js +1 -0
  165. package/dist/web/{chunk-DIJSXeQC2.js → chunk-bQhJGrXj2.js} +1 -1
  166. package/dist/web/chunk-c57UHX0J.js +1 -0
  167. package/dist/web/chunk-eAm9Qkk4.js +1 -0
  168. package/dist/web/{chunk-WNYFaDlu2.js → chunk-f6C5Rz_B2.js} +1 -1
  169. package/dist/web/chunk-fLDt2Dc5.js +1 -0
  170. package/dist/web/{chunk-CmokTGIG.js → chunk-fY-2jgAh.js} +1 -1
  171. package/dist/web/{chunk-SZJG1lFa2.js → chunk-f_xeGTT7.js} +1 -1
  172. package/dist/web/chunk-fxkvCM0b.js +1 -0
  173. package/dist/web/{chunk-9X4vLcFh.js → chunk-k8jJDyGi.js} +1 -1
  174. package/dist/web/{chunk-DerJPaBw.js → chunk-mCmB-2Tr.js} +1 -1
  175. package/dist/web/{chunk-DXvlXoVT2.js → chunk-mqeSFXPY2.js} +1 -1
  176. package/dist/web/{chunk-D6k6pmdU.js → chunk-o83QpKCY.js} +1 -1
  177. package/dist/web/chunk-pffFf_PV2.js +1 -0
  178. package/dist/web/{chunk-XtjMOmku2.js → chunk-sAfSVia62.js} +1 -1
  179. package/dist/web/{chunk-CEJjSd8-2.js → chunk-xIoy5TmG2.js} +1 -1
  180. package/dist/web/{chunk-B8_dFe5w.js → chunk-xRsHYitB.js} +1 -1
  181. package/dist/web/index.csr.html +1 -1
  182. package/dist/web/{main-F7D3L737.js → main-LXYWXFW4.js} +2 -2
  183. package/package.json +1 -1
  184. package/dist/web/chunk-6jIo5mZ42.js +0 -1
  185. package/dist/web/chunk-9d_UD-MQ.js +0 -1
  186. package/dist/web/chunk-B0bNirg2.js +0 -1
  187. package/dist/web/chunk-B3OxeBLO2.js +0 -1
  188. package/dist/web/chunk-B5xzAYYx2.js +0 -1
  189. package/dist/web/chunk-B6Rml85x2.js +0 -1
  190. package/dist/web/chunk-B91VAo1J.js +0 -1
  191. package/dist/web/chunk-B9NV1rY62.js +0 -1
  192. package/dist/web/chunk-BAn0tBhX.js +0 -1
  193. package/dist/web/chunk-BGVaNZdj.js +0 -1
  194. package/dist/web/chunk-BHDXYrox.js +0 -1
  195. package/dist/web/chunk-BI9lIdFn.js +0 -1
  196. package/dist/web/chunk-BNksdK_D2.js +0 -1
  197. package/dist/web/chunk-BQ7WWH4L.js +0 -1
  198. package/dist/web/chunk-BQrmVphu2.js +0 -1
  199. package/dist/web/chunk-BR0demlX.js +0 -1
  200. package/dist/web/chunk-BT8KtCYG.js +0 -1
  201. package/dist/web/chunk-BZZJ287h.js +0 -1
  202. package/dist/web/chunk-BcUjdID-.js +0 -1
  203. package/dist/web/chunk-Bf3eV_su2.js +0 -1
  204. package/dist/web/chunk-BfSewUhY.js +0 -1
  205. package/dist/web/chunk-Bi4Jixry2.js +0 -1
  206. package/dist/web/chunk-BiECfDS7.js +0 -1
  207. package/dist/web/chunk-Bj7Oze2U2.js +0 -1
  208. package/dist/web/chunk-Bjo6eVnk.js +0 -1
  209. package/dist/web/chunk-Bn46cQyx.js +0 -1
  210. package/dist/web/chunk-Bn6RkvPA2.js +0 -1
  211. package/dist/web/chunk-Bsy3r41y2.js +0 -1
  212. package/dist/web/chunk-By2EFyNM.js +0 -1
  213. package/dist/web/chunk-CCqlW8pS2.js +0 -3
  214. package/dist/web/chunk-CCr_R2Cg.js +0 -1
  215. package/dist/web/chunk-CDS6LjBz2.js +0 -1
  216. package/dist/web/chunk-CG4Kbo1n2.js +0 -1
  217. package/dist/web/chunk-CKFB1V-p2.js +0 -1
  218. package/dist/web/chunk-CL02A9wI.js +0 -1
  219. package/dist/web/chunk-CLZ5xsSQ2.js +0 -1
  220. package/dist/web/chunk-CMvRZBpn.js +0 -1
  221. package/dist/web/chunk-CNfmNEak.js +0 -1
  222. package/dist/web/chunk-COTrF1xY2.js +0 -1
  223. package/dist/web/chunk-COXN76fu2.js +0 -1
  224. package/dist/web/chunk-CUqj_Bxs2.js +0 -1
  225. package/dist/web/chunk-CV_fLVFT.js +0 -1
  226. package/dist/web/chunk-CYGyIy7J.js +0 -1
  227. package/dist/web/chunk-CYRUKYKv2.js +0 -1
  228. package/dist/web/chunk-Ca3lwqEF.js +0 -1
  229. package/dist/web/chunk-CaJrmM9V.js +0 -1
  230. package/dist/web/chunk-CpXqQPuw.js +0 -1
  231. package/dist/web/chunk-CuepVIkm2.js +0 -1
  232. package/dist/web/chunk-CvMAjyvr2.js +0 -1
  233. package/dist/web/chunk-CwzCbuXH.js +0 -1
  234. package/dist/web/chunk-Cx07K71K.js +0 -1
  235. package/dist/web/chunk-D-VHaopx.js +0 -1
  236. package/dist/web/chunk-D1DvlGbP.js +0 -1
  237. package/dist/web/chunk-D3XjW5Cm.js +0 -1
  238. package/dist/web/chunk-D8kEdb5y2.js +0 -1
  239. package/dist/web/chunk-D8t0s8LD.js +0 -1
  240. package/dist/web/chunk-DB6sOjsn2.js +0 -1
  241. package/dist/web/chunk-DIBFSF2Z.js +0 -1
  242. package/dist/web/chunk-DKlxu0GP2.js +0 -1
  243. package/dist/web/chunk-DM4Wc9U7.js +0 -1
  244. package/dist/web/chunk-DM5aibnW.js +0 -1
  245. package/dist/web/chunk-DMXgU6Nc2.js +0 -1
  246. package/dist/web/chunk-DMskLhpk2.js +0 -1
  247. package/dist/web/chunk-DOinRyX_2.js +0 -1
  248. package/dist/web/chunk-DQp-2GVv.js +0 -1
  249. package/dist/web/chunk-DQr_9Q6T.js +0 -1
  250. package/dist/web/chunk-DSpA-ZPx.js +0 -1
  251. package/dist/web/chunk-DURq7J8U2.js +0 -1
  252. package/dist/web/chunk-DVJ4YZuU.js +0 -1
  253. package/dist/web/chunk-DVyDnsGh.js +0 -1
  254. package/dist/web/chunk-D_vyhgGx.js +0 -1
  255. package/dist/web/chunk-Db2zQ-8C.js +0 -1
  256. package/dist/web/chunk-DdOc1fs-.js +0 -1
  257. package/dist/web/chunk-DddDKWSn2.js +0 -1
  258. package/dist/web/chunk-Dh86w63y.js +0 -1
  259. package/dist/web/chunk-Di9FA_QV.js +0 -1
  260. package/dist/web/chunk-DjwvqY3z2.js +0 -1
  261. package/dist/web/chunk-Dl4V93zm2.js +0 -1
  262. package/dist/web/chunk-Dnzjseqf2.js +0 -1
  263. package/dist/web/chunk-DpI44v1z.js +0 -1
  264. package/dist/web/chunk-Dqhs2Pyw2.js +0 -1
  265. package/dist/web/chunk-DubWLqvO.js +0 -1
  266. package/dist/web/chunk-IlM3eTPp2.js +0 -1
  267. package/dist/web/chunk-IzGdqlW82.js +0 -1
  268. package/dist/web/chunk-P1du2kWg2.js +0 -1
  269. package/dist/web/chunk-PqGGk0JD.js +0 -1
  270. package/dist/web/chunk-XvyWOb2Q.js +0 -1
  271. package/dist/web/chunk-ZBDWcE362.js +0 -1
  272. package/dist/web/chunk-ZcJhJsoo.js +0 -1
  273. package/dist/web/chunk-a_Va_Nj7.js +0 -1
  274. package/dist/web/chunk-fYJ7OBkh.js +0 -1
  275. package/dist/web/chunk-k6TIcaIA.js +0 -1
  276. package/dist/web/chunk-owvOEsA9.js +0 -1
  277. package/dist/web/chunk-scbWWgLx2.js +0 -1
  278. package/dist/web/chunk-tDREPM-0.js +0 -1
  279. package/dist/web/chunk-y0Vyi0HZ.js +0 -1
  280. package/dist/web/chunk-yfBrkklv.js +0 -1
  281. /package/dist/web/{chunk-1ErswIDf.js → chunk-1ErswIDf2.js} +0 -0
  282. /package/dist/web/{chunk-CARNiCDb2.js → chunk-CARNiCDb.js} +0 -0
  283. /package/dist/web/{chunk-CGo7Fepz.js → chunk-CGo7Fepz2.js} +0 -0
  284. /package/dist/web/{chunk-CKxU-VJf.js → chunk-CKxU-VJf2.js} +0 -0
  285. /package/dist/web/{chunk-CP-AnFGa2.js → chunk-CP-AnFGa.js} +0 -0
  286. /package/dist/web/{chunk-CXHCUTDs.js → chunk-CXHCUTDs2.js} +0 -0
  287. /package/dist/web/{chunk-CczD0yXn.js → chunk-CczD0yXn2.js} +0 -0
  288. /package/dist/web/{chunk-CtcsJTAS2.js → chunk-CtcsJTAS.js} +0 -0
  289. /package/dist/web/{chunk-WJWN7A_V2.js → chunk-WJWN7A_V.js} +0 -0
@@ -0,0 +1 @@
1
+ import{n as m,t as l}from"./chunk-BwCtja5l.js";import{$t as ZC,A as Gy,D as Fy,Dn as g,E as Ft,Gn as k_,Gr as yd,Ir as wp,It as Us,J as Ky,Jr as zS,K as Ke,Nr as vd,Tn as fd,V as Iy,Vr as xH,Wn as kS,Wr as y_,Zn as md,dr as pe$1,ft as Ol,lt as OS,mr as qT,pr as qS,qn as ky,rn as Zw,rr as nv,tn as ZT,tt as Mn,vt as Py,w as Fb,xn as e_,z as Ip}from"./chunk-BAHiFuUo.js";import{h as Ne$1,m as Ie$1,o as U,r as N,s as a,v as Dt,y as G}from"./main-LXYWXFW4.js";import"./chunk-BAe_07VM.js";import"./chunk-Dv9sNWWK.js";import"./chunk-D8Ui_APT.js";import{t as g$1}from"./chunk-B56nz2lI.js";import{t as k}from"./chunk-IrDYxRzS.js";import"./chunk-BzUDWIzm.js";import{t as P}from"./chunk-CkRw7h0_.js";import{t as E}from"./chunk-DhpMFMQw.js";import{t as l$1}from"./chunk-Cm2UNqwE.js";import"./chunk-CReShp-B.js";import{d as nr,f as or,h as yn,n as an,t as P$1}from"./chunk-CSkyOfSg.js";import{t as M}from"./chunk-CQvxhLmC2.js";import{t as N$1}from"./chunk-BL3upDtA.js";import"./chunk-BEYQDr-4.js";import{n as x,t as a$1}from"./chunk-6-OG9zy0.js";import{t as y}from"./chunk-B4Vcwa9l.js";import{t as $}from"./chunk-aGxrcUQJ2.js";var me=t=>[`/quotes`,t];var _e=t=>[`/affairs`,t];var fe=t=>[`/clients`,t,`profile`];var ye=t=>({version:t});var pe=t=>({date:t});function ge(t,n){if(t&1&&(Us(0,`a`,3),y_(1),fd()),t&2){let e=qS();Fy(`routerLink`,k_(3,me,n))(`queryParams`,e.context()),ZC(),nv(e.i18n.t(`commercial.backQuote`))}}function he(t,n){if(t&1&&(Us(0,`a`,3),y_(1),fd()),t&2){let e=qS();Fy(`routerLink`,k_(3,_e,e.context().view??`attention`))(`queryParams`,e.context()),ZC(),nv(e.i18n.t(`backOffice.backToAffairs`))}}function xe(t,n){if(t&1&&(Us(0,`p`),y_(1),Us(2,`a`,6),y_(3),fd()()),t&2){let e=n;ZC(),vd(` `,e.reference,` · `),ZC(),Fy(`routerLink`,k_(3,fe,e.clientId)),ZC(),nv(e.currentRevision.clientDisplayName)}}function Ce(t,n){if(t&1&&(Us(0,`p`,5),y_(1),fd()),t&2){let e=qS();ZC(),nv(e.i18n.t(`backOffice.quotes.loading`))}}function ve(t,n){if(t&1&&(Us(0,`p`,9),y_(1),fd()),t&2){let e=qS(2);ZC(),nv(e.i18n.t(`commercial.publicationUncertain`))}}function be(t,n){if(t&1){let e=zS();Us(0,`p`,7),y_(1),fd(),Us(2,`button`,8),Gy(`click`,function(){Ip(e);return wp(qS().reload())}),y_(3),fd(),OS(4,ve,2,1,`p`,9)}if(t&2){let e=qS();ZC(),nv(e.i18n.t(e.error()??`quote.error`)),ZC(2),vd(` `,e.i18n.t(`backOffice.affair.retry`),` `),ZC(),kS(e.uncertain()?4:-1)}}function Pe(t,n){if(t&1){let e=zS();Us(0,`app-copy-field`,15),Gy(`copy`,function(){Ip(e);return wp(qS(4).copyLink())}),fd()}if(t&2){let e=qS(),i=qS(3);Fy(`label`,i.i18n.t(`backOffice.quote.link.title`))(`value`,e.link.url)(`href`,e.link.url)(`description`,i.i18n.tf(`backOffice.quote.link.expires`,k_(7,pe,i.date(e.link.expiresAt))))(`actionLabel`,i.i18n.t(`backOffice.quote.link.copy`))(`status`,i.copyStatus())(`external`,!0)}}function ke(t,n){if(t&1&&(Us(0,`p`,16),y_(1),fd()),t&2){let e=qS(4);ZC(),nv(e.i18n.t(`commercial.linkUnavailable`))}}function we(t,n){if(t&1&&(Us(0,`p`,12),y_(1),fd(),Iy(2,Pe,1,9,`app-copy-field`,13)(3,ke,2,1,`p`,14)),t&2){let e=qS(3);ZC(),nv(e.i18n.t(`commercial.linkCreated`)),ZC(),Fy(`appCan`,`quote.send`),ZC(),Fy(`appCan`,`quote.send`)}}function Se(t,n){if(t&1&&(Us(0,`p`),y_(1),fd()),t&2){let e=qS(5);ZC(),nv(e.i18n.tf(`backOffice.quote.link.expires`,k_(1,pe,e.date(n.expiresAt))))}}function qe(t,n){if(t&1&&(Us(0,`p`,7),y_(1),fd()),t&2){let e=qS(5);ZC(),nv(e.i18n.t(n))}}function Me(t,n){if(t&1){let e=zS();Us(0,`button`,19),Gy(`click`,function(){Ip(e);return wp(qS(5).reload())}),y_(1),fd()}if(t&2){let e=qS(5);Fy(`disabled`,e.pending()||e.confirming()),ZC(),vd(` `,e.i18n.t(`commercial.loadLatest`),` `)}}function Ie(t,n){if(t&1){let e=zS();md(0),Us(1,`p`,11),y_(2),fd(),OS(3,Se,2,3,`p`),OS(4,qe,2,1,`p`,7),Us(5,`div`,18)(6,`button`,19),Gy(`click`,function(){Ip(e);return wp(qS(4).replaceLink())}),y_(7),fd(),OS(8,Me,2,2,`button`,20),fd(),yd()}if(t&2){let e,i,o=qS(4);ZC(2),nv(o.i18n.t(`commercial.replaceLinkHint`)),ZC(),kS((e=o.linkState())?3:-1,e),ZC(),kS((i=o.error())?4:-1,i),ZC(2),Fy(`disabled`,o.pending()||o.confirming()||o.uncertain()),ZC(),vd(` `,o.i18n.t(`commercial.replaceLink`),` `),ZC(),kS(o.error()?8:-1)}}function Oe(t,n){t&1&&Iy(0,Ie,9,6,`ng-container`,17),t&2&&Fy(`appCan`,`quote.send`)}function Ne(t,n){if(t&1&&(Us(0,`p`,9),y_(1),fd()),t&2){let e=qS(3);ZC(),nv(e.i18n.t(`commercial.publicationUnavailable`))}}function Qe(t,n){if(t&1&&(Us(0,`p`,11),y_(1),fd()),t&2){let e=qS(5);ZC(),nv(e.i18n.t(`commercial.pdfRequired`))}}function Te(t,n){if(t&1&&(Us(0,`p`,26),y_(1),fd()),t&2){let e=qS(5);ZC(),nv(e.i18n.t(`commercial.confirmRequired`))}}function Ee(t,n){if(t&1&&Py(0,`app-document-issues`,27),t&2){let e=qS(3);Fy(`issues`,qS(2).issues())(`clientId`,e.clientId)}}function De(t,n){if(t&1){let e=zS();Us(0,`button`,19),Gy(`click`,function(){Ip(e);return wp(qS(6).reload())}),y_(1),fd()}if(t&2){let e=qS(6);Fy(`disabled`,e.pending()),ky(`aria-disabled`,e.confirming()),ZC(),vd(` `,e.i18n.t(`commercial.loadLatest`),` `)}}function Re(t,n){if(t&1&&(Us(0,`p`,7),y_(1),fd(),OS(2,De,2,3,`button`,20)),t&2){let e=n,i=qS(5);ZC(),nv(i.i18n.t(e)),ZC(),kS(e!==`commercial.pdfRequired`?2:-1)}}function Ve(t,n){if(t&1&&(Us(0,`p`,5),y_(1),fd()),t&2){let e=qS(5);ZC(),nv(e.i18n.t(`commercial.pending`))}}function Le(t,n){if(t&1){let e=zS();Us(0,`form`,23),Gy(`submit`,function(o){Ip(e);return wp(qS(4).publish(o))}),Us(1,`p`),y_(2),fd(),OS(3,Qe,2,1,`p`,11),Us(4,`label`,24),Py(5,`input`,25),qT(),y_(6),fd(),OS(7,Te,2,1,`p`,26),OS(8,Ee,1,2,`app-document-issues`,27),OS(9,Re,3,2),OS(10,Ve,2,1,`p`,5),Us(11,`button`,28),y_(12),fd()()}if(t&2){let e,i=qS(4);ZC(2),nv(i.i18n.t(`commercial.publicationEffect`)),ZC(),kS(i.pdfReady()?-1:3),ZC(2),Fy(`formField`,i.review.checked),ky(`aria-invalid`,i.review.checked().touched()&&i.review.checked().invalid()),ZT(),ZC(),nv(i.i18n.t(`commercial.confirmDocument`)),ZC(),kS(i.review.checked().invalid()&&i.review.checked().touched()?7:-1),ZC(),kS(i.issues().length?8:-1),ZC(),kS((e=i.error())?9:-1,e),ZC(),kS(i.pending()?10:-1),ZC(),Fy(`disabled`,i.pending()||i.uncertain()),ZC(),vd(` `,i.i18n.t(i.publishKey()),` `)}}function Ae(t,n){if(t&1){let e=zS();Us(0,`p`,16),y_(1),fd(),Us(2,`app-quote-document`,21),Gy(`prepared`,function(o){Ip(e);return wp(qS(3).prepared(o))}),fd(),Iy(3,Le,13,11,`form`,22)}if(t&2){let e=qS(),i=qS(2);ZC(),nv(i.i18n.t(`commercial.partiesHint`)),ZC(),Fy(`quoteId`,e.id)(`clientId`,e.clientId)(`revision`,e.currentRevision),ZC(),Fy(`appCan`,`quote.send`)}}function ze(t,n){if(t&1&&(Us(0,`dl`,10)(1,`div`)(2,`dt`),y_(3),fd(),Us(4,`dd`),y_(5),fd()(),Us(6,`div`)(7,`dt`),y_(8),fd(),Us(9,`dd`),y_(10),fd()(),Us(11,`div`)(12,`dt`),y_(13),fd(),Us(14,`dd`),y_(15),fd()()(),Us(16,`p`,11),y_(17),fd(),OS(18,we,4,3)(19,Oe,1,1,`ng-container`)(20,Ne,2,1,`p`,9)(21,Ae,4,5)),t&2){let e,i=n,o=qS(2);ZC(3),nv(o.i18n.t(`commercial.versions`)),ZC(2),nv(o.i18n.tf(`commercial.revision`,k_(8,ye,i.version))),ZC(3),nv(o.i18n.t(`backOffice.quote.title`)),ZC(2),nv(i.currentRevision.title),ZC(3),nv(o.i18n.t(`commercial.quoteAmount`)),ZC(2),nv(o.money(i.currentRevision.totalCents)),ZC(2),nv(o.i18n.t(`commercial.noEmail`)),ZC(),kS((e=o.completed())?18:i.status===`sent`?19:i.status!==`draft`?20:21,e)}}function Fe(t,n){if(t&1&&OS(0,ze,22,10),t&2){let e;kS((e=qS().quote())?0:-1,e)}}var ue=class t{authentication=g(E);documentPreview=xH($);i18n=g(Ie$1);api=g(y);route=g(G);context=Ke(x(this.route.snapshot.queryParamMap));quoteId=Ke(a$1(this.route.snapshot.paramMap.get(`quoteId`)));destroyRef=g(pe$1);pendingTasks=g(Mn);textCopy=g(a);confirmation=g(P);state=Ke(`loading`);quote=Ke(void 0);pending=Ke(!1);uncertain=Ke(!1);completed=Ke(void 0);linkState=Ke(void 0);artifact=Ke(void 0);pdfReady=Ft(()=>this.artifact()?.revisionId===this.quote()?.currentRevision.id&&this.artifact()!==void 0);error=Ke(void 0);issues=Ke([]);copied=Ke(!1);copyStatus=Ft(()=>this.copied()?this.i18n.t(`backOffice.quote.link.copied`):``);publishKey=Ft(()=>this.pending()?`backOffice.quote.sending`:`commercial.createLink`);confirming=Ke(!1);review=nr(Ke({checked:!1}),n=>{an(n,{when:()=>this.pending()||this.uncertain()||!!this.completed()}),P$1(n.checked,({value:e})=>e()?void 0:{kind:`required`})});hasReview=Ft(()=>this.review.checked().touched()||this.review.checked().dirty());generation=0;constructor(){Ol(()=>{this.route.queryParamMap.pipe(U(this.destroyRef)).subscribe(n=>this.context.set(x(n))),this.route.paramMap.pipe(U(this.destroyRef)).subscribe(()=>{this.load()})})}money(n){return Ne$1(n,this.i18n.language(),`EUR`)}date(n){return new Intl.DateTimeFormat(this.i18n.language(),{dateStyle:`medium`,timeStyle:`short`}).format(new Date(n))}prepared(n){n.revisionId===this.quote()?.currentRevision.id&&this.artifact.set(n)}async reload(){this.pending()||this.confirming()||await this.load()}async load(){let n=++this.generation,e=a$1(this.route.snapshot.paramMap.get(`quoteId`));if(this.quoteId.set(e),this.state.set(`loading`),this.pending.set(!1),this.quote.set(void 0),this.artifact.set(void 0),this.completed.set(void 0),this.linkState.set(void 0),this.error.set(void 0),this.issues.set([]),this.copied.set(!1),!e){this.state.set(`error`);return}let i=this.pendingTasks.add();try{let o=await this.api.get(e);if(this.destroyRef.destroyed||n!==this.generation)return;if(!o.success){this.error.set(o.code),this.state.set(`error`);return}if(this.quote.set(o.result),o.result.status===`sent`&&this.authentication.can(`quote.send`)){let f=await this.api.linkState(o.result.id);if(this.destroyRef.destroyed||n!==this.generation)return;if(!f.success){this.error.set(f.code),this.state.set(`error`);return}this.linkState.set(f.result)}this.uncertain.set(!1),this.review().reset({checked:!1}),this.state.set(`ready`)}catch{!this.destroyRef.destroyed&&n===this.generation&&this.state.set(`error`)}finally{i()}}publish(n){n.preventDefault();let e=this.quote();if(!(!e||e.status!==`draft`||!this.authentication.can(`quote.send`)||this.pending()||this.uncertain()||this.confirming()||this.completed())){if(this.error.set(void 0),!this.pdfReady()){this.error.set(`commercial.pdfRequired`),this.documentPreview()?.focusPreparation();return}if(this.review.checked().markAsTouched(),this.review.checked().invalid()){this.review.checked().focusBoundControl();return}or(this.review,async()=>{this.pending.set(!0),this.issues.set([]);let i=this.generation;try{let o=await this.api.send(e.id,{expectedVersion:e.version});if(this.destroyRef.destroyed||i!==this.generation)return;if(!o.success){o.failure?._tag===`DocumentIncomplete`?this.issues.set(o.failure.issues):o.code===`quote.error`?(this.uncertain.set(!0),this.error.set(`commercial.publicationUncertain`)):this.error.set(o.code);return}this.completed.set(o.result),this.quote.set(m(l({},e),{status:o.result.status})),this.review().reset({checked:!1})}catch{if(this.destroyRef.destroyed||i!==this.generation)return;this.uncertain.set(!0),this.error.set(`commercial.publicationUncertain`)}finally{i===this.generation&&this.pending.set(!1)}})}}async copyLink(){let n=this.completed();if(!n)return;let e=await this.textCopy.copy(n.link.url);this.completed()===n&&this.copied.set(e)}async replaceLink(){let n=this.authentication.account(),e=this.quote(),i=this.linkState();if(!e||e.status!==`sent`||!n||!this.authentication.can(`quote.send`)||i===void 0||this.pending()||this.confirming()||this.uncertain()||this.completed())return;let o=this.generation;if(await this.requestConfirmation(`commercial.confirmReplaceLink`)&&!(this.destroyRef.destroyed||o!==this.generation)){this.pending.set(!0),this.error.set(void 0);try{let f=await this.authentication.refreshAccount();if(this.destroyRef.destroyed||o!==this.generation||f?.userId!==n.userId||!this.authentication.can(`quote.send`))return;let h=await this.api.replaceLink(e.id,{expectedVersion:e.version,expectedLinkId:i?.id??null});if(this.destroyRef.destroyed||o!==this.generation)return;h.success?(this.completed.set(h.result),this.copied.set(!1)):h.code===`quote.error`?(this.uncertain.set(!0),this.error.set(`commercial.replacementUncertain`)):this.error.set(h.code)}catch{if(this.destroyRef.destroyed||o!==this.generation)return;this.uncertain.set(!0),this.error.set(`commercial.replacementUncertain`)}finally{o===this.generation&&this.pending.set(!1)}}}async canDeactivate(){return this.pending()||this.confirming()?!1:this.uncertain()?this.requestConfirmation(`commercial.leavePublicationUncertain`):this.completed()&&!this.copied()?this.requestConfirmation(`commercial.leaveLink`):!this.completed()&&this.hasReview()?this.requestConfirmation(`commercial.leaveReview`):!0}preventPendingUnload(n){(this.pending()||this.confirming()||this.uncertain()||this.completed()&&!this.copied()||!this.completed()&&this.hasReview())&&n.preventDefault()}async requestConfirmation(n){if(this.confirming()||this.destroyRef.destroyed)return!1;this.confirming.set(!0);try{return await this.confirmation.request(this.i18n.t(n))}finally{this.confirming.set(!1)}}static ɵfac=function(e){return new(e||t)};static ɵcmp=Fb({type:t,selectors:[[`app-quote-publication`]],viewQuery:function(e,i){e&1&&Ky(i.documentPreview,$,5),e&2&&e_()},hostAttrs:[1,`page-container`],hostBindings:function(e,i){e&1&&Gy(`beforeunload`,function(f){return i.preventPendingUnload(f)},Zw)},decls:11,vars:4,consts:[[`aria-labelledby`,`publication-title`,1,`detail-page`,`form-page`,`publication`],[`layout`,`stacked`],[`pageBack`,``],[1,`back-link`,3,`routerLink`,`queryParams`],[`id`,`publication-title`],[`role`,`status`],[3,`routerLink`],[`appNotice`,``,`variant`,`danger`,`role`,`alert`],[`appButton`,``,`type`,`button`,3,`click`],[`appNotice`,``,`variant`,`warning`],[1,`facts`],[`appNotice`,``],[`appNotice`,``,`variant`,`success`,`role`,`status`],[`class`,`sent-link`,`headingId`,`signature-link-title`,3,`label`,`value`,`href`,`description`,`actionLabel`,`status`,`external`,`copy`,4,`appCan`],[`class`,`hint`,4,`appCan`],[`headingId`,`signature-link-title`,1,`sent-link`,3,`copy`,`label`,`value`,`href`,`description`,`actionLabel`,`status`,`external`],[1,`hint`],[4,`appCan`],[1,`spacer-x-3`],[`appButton`,``,`type`,`button`,3,`click`,`disabled`],[`appButton`,``,`type`,`button`,3,`disabled`],[3,`prepared`,`quoteId`,`clientId`,`revision`],[`class`,`panel ds-panel`,`novalidate`,``,3,`submit`,4,`appCan`],[`novalidate`,``,1,`panel`,`ds-panel`,3,`submit`],[1,`review-check`],[`type`,`checkbox`,`aria-describedby`,`review-error`,3,`formField`],[`id`,`review-error`,1,`field-error`],[`kind`,`quote`,3,`issues`,`clientId`],[`appButton`,``,`variant`,`primary`,`type`,`submit`,1,`publish-quote`,3,`disabled`]],template:function(e,i){if(e&1&&(Us(0,`section`,0)(1,`app-page-header`,1)(2,`div`,2),OS(3,ge,2,5,`a`,3)(4,he,2,5,`a`,3),fd(),Us(5,`h1`,4),y_(6),fd(),OS(7,xe,4,5,`p`),fd(),OS(8,Ce,2,1,`p`,5)(9,be,5,3)(10,Fe,1,1),fd()),e&2){let o,f,h;ZC(3),kS((o=i.quoteId())?3:4,o),ZC(3),nv(i.i18n.t(`commercial.publicationTitle`)),ZC(),kS((f=i.quote())?7:-1,f),ZC(),kS((h=i.state())===`loading`?8:h===`error`?9:h===`ready`?10:-1)}},dependencies:[l$1,N,M,N$1,yn,k,g$1,Dt,$],styles:[`.detail-panel[_ngcontent-%COMP%]{min-inline-size:0}.actions[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--%NS%space-3)}h2[_ngcontent-%COMP%]{font-size:var(--%NS%text-lg)}.muted[_ngcontent-%COMP%], .hint[_ngcontent-%COMP%]{color:var(--%NS%color-muted)}.hint[_ngcontent-%COMP%]{max-width:70ch;font-size:var(--%NS%text-sm)}.facts[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-3);margin:0}.facts[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--%NS%space-3);border-bottom:1px solid var(--%NS%color-line);padding-block:var(--%NS%space-2)}dd[_ngcontent-%COMP%]{margin:0;overflow-wrap:anywhere}.amount[_ngcontent-%COMP%]{text-align:end;font-variant-numeric:tabular-nums;white-space:nowrap}.panel[_ngcontent-%COMP%]{padding:var(--%NS%space-5)}.panel[_ngcontent-%COMP%] > *[_ngcontent-%COMP%] + *[_ngcontent-%COMP%], .document-cancellation[_ngcontent-%COMP%] > *[_ngcontent-%COMP%] + *[_ngcontent-%COMP%]{margin-top:var(--%NS%space-4)}.document-cancellation[_ngcontent-%COMP%]{max-inline-size:40rem;padding:var(--%NS%space-5);border:1px solid var(--%NS%color-line);border-radius:var(--%NS%radius-md)}.document-cancellation[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{color:var(--%NS%color-danger)}.document-cancellation[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{resize:vertical}.document-cancellation[_ngcontent-%COMP%] .field[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-2);min-inline-size:0}th[scope=row][_ngcontent-%COMP%]{font-weight:400}.section-space[_ngcontent-%COMP%] > *[_ngcontent-%COMP%] + *[_ngcontent-%COMP%]{margin-top:var(--%NS%space-5)}[_nghost-%COMP%]{display:block}.detail-page[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-4);min-inline-size:0;inline-size:100%;max-inline-size:var(--%NS%page-width-detail);margin-inline:auto;padding:var(--%NS%page-header-y) var(--%NS%page-x)}.detail-page.form-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-form)}.detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-wide)}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-2xl);overflow-wrap:anywhere}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-base);color:var(--%NS%color-muted);overflow-wrap:anywhere}.detail-page[_ngcontent-%COMP%] > button[_ngcontent-%COMP%]{justify-self:start}@media print{.detail-page[_ngcontent-%COMP%], .detail-page.form-page[_ngcontent-%COMP%], .detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:none}}.review-check[_ngcontent-%COMP%]{display:flex;align-items:start;gap:var(--%NS%space-3)}.review-check[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{margin-top:.3em;flex:none}`]})};export{ue as QuotePublication};
@@ -0,0 +1 @@
1
+ import{n as m,r as n,t as l}from"./chunk-BwCtja5l.js";import{$t as ZC,A as Gy,D as Fy,Dn as g,Ir as wp,It as Us,Jr as zS,K as Ke,Nr as vd,Tn as fd,Wn as kS,Wr as y_,dr as pe$1,ft as Ol,lt as OS,mr as qT,pr as qS,rn as Zw,rr as nv,tn as ZT,vt as Py,w as Fb,z as Ip}from"./chunk-BAHiFuUo.js";import{T as ue$1,m as Ie,o as U,r as N,v as Dt,y as G}from"./main-LXYWXFW4.js";import{ct as Me,wi as wu}from"./chunk-BAe_07VM.js";import"./chunk-Dv9sNWWK.js";import{Ia as a}from"./chunk-D8Ui_APT.js";import{t as g$1}from"./chunk-B56nz2lI.js";import{t as k}from"./chunk-IrDYxRzS.js";import"./chunk-BzUDWIzm.js";import{t as P}from"./chunk-CkRw7h0_.js";import"./chunk-CReShp-B.js";import{d as nr,f as or,h as yn,l as ln,o as gn,r as cn,s as hn,u as mn}from"./chunk-CSkyOfSg.js";import"./chunk-CczD0yXn2.js";import{t as Ae}from"./chunk-C_4qOSvi2.js";import{t as c}from"./chunk-Ckk2HUrT.js";function re(l,i){if(l&1&&(Us(0,`p`,4),y_(1),fd()),l&2){let n=qS();ZC(),nv(n.i18n.t(`supplier.loadingDetail`))}}function ae(l,i){if(l&1){let n=zS();Us(0,`div`,5)(1,`p`,6),y_(2),fd(),Us(3,`button`,7),Gy(`click`,function(){Ip(n);return wp(qS().load())}),y_(4),fd()()}if(l&2){let n=qS();ZC(2),nv(n.i18n.t(n.error())),ZC(2),vd(` `,n.i18n.t(`backOffice.dashboard.retry`),` `)}}function oe(l,i){if(l&1&&(Us(0,`p`,6),y_(1),fd()),l&2){let n=qS(2);ZC(),nv(n.i18n.t(i))}}function le(l,i){if(l&1&&(Us(0,`p`,8),y_(1),fd()),l&2){let n=qS(2);ZC(),nv(n.i18n.t(`supplier.archivedEdit`))}}function pe(l,i){if(l&1&&(Us(0,`span`,14),y_(1),fd()),l&2){let n=qS(2);ZC(),nv(n.i18n.t(n.fieldError(`displayName`)))}}function de(l,i){if(l&1&&(Us(0,`span`,27),y_(1),fd()),l&2){let n=qS(2);ZC(),nv(n.i18n.t(n.fieldError(`email`)))}}function se(l,i){if(l&1&&(Us(0,`span`,27),y_(1),fd()),l&2){let n=qS(2);ZC(),nv(n.i18n.t(n.fieldError(`phone`)))}}function ue(l,i){if(l&1&&(Us(0,`span`,27),y_(1),fd()),l&2){let n=qS(2);ZC(),nv(n.i18n.t(n.fieldError(`defaultCurrency`)))}}function ce(l,i){if(l&1&&(Us(0,`span`,27),y_(1),fd()),l&2){let n=qS(2);ZC(),nv(n.i18n.t(n.fieldError(`paymentTermsDays`)))}}function me(l,i){if(l&1&&(Us(0,`span`,27),y_(1),fd()),l&2){let n=qS(2);ZC(),nv(n.i18n.t(n.fieldError(`iban`)))}}function fe(l,i){if(l&1&&(Us(0,`span`,27),y_(1),fd()),l&2){let n=qS(2);ZC(),nv(n.i18n.t(n.fieldError(`bic`)))}}function ye(l,i){if(l&1){let n=zS();OS(0,oe,2,1,`p`,6),OS(1,le,2,1,`p`,8),Us(2,`form`,9),Gy(`submit`,function(x){Ip(n);return wp(qS().save(x))}),Us(3,`div`,10)(4,`fieldset`)(5,`legend`),y_(6),fd(),Us(7,`div`,11)(8,`label`,12),y_(9),Py(10,`input`,13),qT(),OS(11,pe,2,1,`span`,14),fd(),Us(12,`label`,15),y_(13),Py(14,`input`,16),qT(),fd(),Us(15,`label`,17),y_(16),Py(17,`input`,18),qT(),fd(),Us(18,`label`,19),y_(19),Us(20,`select`,20)(21,`option`,21),y_(22),fd(),Us(23,`option`,22),y_(24),fd(),Us(25,`option`,23),y_(26),fd(),Us(27,`option`,24),y_(28),fd()(),qT(),fd(),Us(29,`label`,25),y_(30),Py(31,`input`,26),qT(),OS(32,de,2,1,`span`,27),fd(),Us(33,`label`,28),y_(34),Py(35,`input`,29),qT(),OS(36,se,2,1,`span`,27),fd()()()(),Us(37,`div`,10)(38,`fieldset`)(39,`legend`),y_(40),fd(),Us(41,`div`,11)(42,`label`,30),y_(43),Py(44,`input`,31),qT(),fd(),Us(45,`label`,32),y_(46),Py(47,`input`,33),qT(),fd(),Us(48,`label`,34),y_(49),Py(50,`input`,35),qT(),fd(),Us(51,`label`,36),y_(52),Py(53,`input`,37),qT(),fd(),Us(54,`label`,38),y_(55),Py(56,`input`,39),qT(),fd()()()(),Us(57,`div`,10)(58,`fieldset`)(59,`legend`),y_(60),fd(),Us(61,`div`,11)(62,`label`,40),y_(63),Py(64,`input`,41),qT(),OS(65,ue,2,1,`span`,27),fd(),Us(66,`label`,42),y_(67),Py(68,`input`,43),qT(),OS(69,ce,2,1,`span`,27),fd(),Us(70,`label`,44),y_(71),Py(72,`input`,45),qT(),OS(73,me,2,1,`span`,27),fd(),Us(74,`label`,46),y_(75),Py(76,`input`,47),qT(),OS(77,fe,2,1,`span`,27),fd()()()(),Us(78,`div`,48)(79,`button`,49),y_(80),fd(),Us(81,`a`,50),y_(82),fd()()()}if(l&2){let n,e=qS();kS((n=e.error())?0:-1,n),ZC(),kS(e.supplier()?.archived?1:-1),ZC(5),nv(e.i18n.t(`supplier.identity`)),ZC(3),nv(e.i18n.t(`supplier.name`)),ZC(),Fy(`formField`,e.supplierForm.displayName),ZT(),ZC(),kS(e.invalid(`displayName`)?11:-1),ZC(2),nv(e.i18n.t(`supplier.registrationNumber`)),ZC(),Fy(`formField`,e.supplierForm.registrationNumber),ZT(),ZC(2),nv(e.i18n.t(`supplier.vatNumber`)),ZC(),Fy(`formField`,e.supplierForm.vatNumber),ZT(),ZC(2),nv(e.i18n.t(`supplier.taxTreatment`)),ZC(),Fy(`formField`,e.supplierForm.taxTreatment),ZT(),ZC(2),nv(e.i18n.t(`supplier.taxTreatment.france`)),ZC(2),nv(e.i18n.t(`supplier.taxTreatment.eu`)),ZC(2),nv(e.i18n.t(`supplier.taxTreatment.import`)),ZC(2),nv(e.i18n.t(`supplier.taxTreatment.local`)),ZC(2),nv(e.i18n.t(`supplier.email`)),ZC(),Fy(`formField`,e.supplierForm.email),ZT(),ZC(),kS(e.invalid(`email`)?32:-1),ZC(2),nv(e.i18n.t(`supplier.phone`)),ZC(),Fy(`formField`,e.supplierForm.phone),ZT(),ZC(),kS(e.invalid(`phone`)?36:-1),ZC(4),nv(e.i18n.t(`supplier.address`)),ZC(3),nv(e.i18n.t(`supplier.addressLine1`)),ZC(),Fy(`formField`,e.supplierForm.addressLine1),ZT(),ZC(2),nv(e.i18n.t(`supplier.addressLine2`)),ZC(),Fy(`formField`,e.supplierForm.addressLine2),ZT(),ZC(2),nv(e.i18n.t(`supplier.postalCode`)),ZC(),Fy(`formField`,e.supplierForm.postalCode),ZT(),ZC(2),nv(e.i18n.t(`supplier.city`)),ZC(),Fy(`formField`,e.supplierForm.city),ZT(),ZC(2),nv(e.i18n.t(`supplier.country`)),ZC(),Fy(`formField`,e.supplierForm.country),ZT(),ZC(4),nv(e.i18n.t(`supplier.payment`)),ZC(3),nv(e.i18n.t(`supplier.currency`)),ZC(),Fy(`formField`,e.supplierForm.defaultCurrency),ZT(),ZC(),kS(e.invalid(`defaultCurrency`)?65:-1),ZC(2),nv(e.i18n.t(`supplier.paymentTerms`)),ZC(),Fy(`formField`,e.supplierForm.paymentTermsDays),ZT(),ZC(),kS(e.invalid(`paymentTermsDays`)?69:-1),ZC(2),nv(e.i18n.t(`supplier.iban`)),ZC(),Fy(`formField`,e.supplierForm.iban),ZT(),ZC(),kS(e.invalid(`iban`)?73:-1),ZC(2),nv(e.i18n.t(`supplier.bic`)),ZC(),Fy(`formField`,e.supplierForm.bic),ZT(),ZC(),kS(e.invalid(`bic`)?77:-1),ZC(2),Fy(`disabled`,e.saving()||e.supplier()?.archived),ZC(),vd(` `,e.submitLabel(),` `),ZC(),Fy(`routerLink`,e.backLink())(`queryParams`,e.listQuery()),ZC(),nv(e.i18n.t(`supplier.cancel`))}}var te=()=>({displayName:``,addressLine1:``,addressLine2:``,postalCode:``,city:``,country:``,email:``,phone:``,registrationNumber:``,vatNumber:``,taxTreatment:`france`,defaultCurrency:`EUR`,paymentTermsDays:30,iban:``,bic:``});var ie=class l$1{i18n=g(Ie);api=g(c);route=g(G);router=g(ue$1);confirmation=g(P);destroyRef=g(pe$1);requestId=crypto.randomUUID();state=Ke(`loading`);editing=Ke(!1);supplier=Ke(void 0);saving=Ke(!1);completed=Ke(!1);error=Ke(void 0);model=Ke(te());supplierForm=nr(this.model,i=>{gn(i.displayName),mn(i.displayName,/\S/),cn(i.displayName,160),cn(i.addressLine1,160),cn(i.addressLine2,160),cn(i.postalCode,32),cn(i.city,120),cn(i.country,120),cn(i.email,254),mn(i.email,/^$|^[^\s@]+@[^\s@]+\.[^\s@]+$/),cn(i.phone,64),mn(i.phone,/^$|^\+?[0-9][0-9 ()\-./]{5,62}$/),cn(i.registrationNumber,64),cn(i.vatNumber,64),gn(i.defaultCurrency),mn(i.defaultCurrency,/^[A-Z]{3}$/),hn(i.paymentTermsDays,0),ln(i.paymentTermsDays,365),cn(i.iban,42),mn(i.iban,/^$|^[A-Za-z]{2}[0-9A-Za-z ]{13,40}$/),cn(i.bic,11),mn(i.bic,/^$|^[A-Za-z0-9]{8}(?:[A-Za-z0-9]{3})?$/)});loadGeneration=0;constructor(){Ol(()=>this.route.paramMap.pipe(U(this.destroyRef)).subscribe(()=>{this.load()}))}async canDeactivate(){return this.saving()?!1:this.completed()||!this.supplierForm().dirty()?!0:this.confirmation.request(this.i18n.t(`supplier.unsavedChanges`))}preventUnsavedUnload(i){(this.saving()||this.supplierForm().dirty())&&i.preventDefault()}invalid(i){return this.supplierForm[i]().touched()&&this.supplierForm[i]().invalid()}fieldError(i){return i===`displayName`?`supplier.nameInvalid`:i===`email`?`supplier.emailInvalid`:i===`phone`?`supplier.phoneInvalid`:i===`defaultCurrency`?`supplier.currencyInvalid`:i===`paymentTermsDays`?`supplier.paymentTermsInvalid`:i===`iban`?`supplier.ibanInvalid`:i===`bic`?`supplier.bicInvalid`:`supplier.fieldInvalid`}backLink(){let i=this.supplier();return i?[`/suppliers`,i.id]:[`/suppliers`]}listQuery(){return{q:this.route.snapshot.queryParamMap.get(`q`)}}title(){return this.i18n.t(this.editing()?`supplier.editTitle`:`supplier.createTitle`)}intro(){return this.i18n.t(this.editing()?`supplier.editIntro`:`supplier.createIntro`)}submitLabel(){return this.saving()?this.i18n.t(`supplier.saving`):this.i18n.t(this.editing()?`supplier.save`:`supplier.create`)}async load(){let i=++this.loadGeneration,n$1=this.route.snapshot.paramMap.get(`supplierId`);if(this.editing.set(n$1!==null),this.error.set(void 0),this.completed.set(!1),n$1===null){this.supplier.set(void 0),this.supplierForm().reset(te()),this.state.set(`ready`);return}this.state.set(`loading`);let e=wu.decodeUnknownOption(a)(n$1);if(Me.isNone(e)){this.error.set(`supplier.not_found`),this.state.set(`error`);return}let x=await this.api.get(e.value);if(i!==this.loadGeneration||this.destroyRef.destroyed)return;if(!x.success){this.error.set(x.code),this.state.set(`error`);return}let k=x.result,{id:C,archived:ve,updatedAt:xe,viesValidatedAt:ge}=k,ne=n(k,[`id`,`archived`,`updatedAt`,`viesValidatedAt`]);this.supplier.set(x.result),this.supplierForm().reset(ne),this.state.set(`ready`)}save(i){if(i.preventDefault(),!(this.saving()||this.state()!==`ready`||this.supplier()?.archived)){if(this.supplierForm().markAsTouched(),this.supplierForm().invalid()){this.supplierForm().errorSummary()[0]?.fieldTree().focusBoundControl();return}or(this.supplierForm,async()=>{this.saving.set(!0),this.error.set(void 0);try{let n=this.supplier(),e=n?await this.api.update(n.id,m(l({},this.model()),{expectedUpdatedAt:n.updatedAt})):await this.api.create(m(l({},this.model()),{requestId:this.requestId}));if(!e.success){this.error.set(e.code);return}this.completed.set(!0),this.supplierForm().reset(),await this.router.navigate([`/suppliers`,e.result.id],{queryParams:this.listQuery()})}catch{this.error.set(`supplier.error`)}finally{this.saving.set(!1)}})}}static ɵfac=function(n){return new(n||l$1)};static ɵcmp=Fb({type:l$1,selectors:[[`app-supplier-editor`]],hostAttrs:[1,`page-container`],hostBindings:function(n,e){n&1&&Gy(`beforeunload`,function(C){return e.preventUnsavedUnload(C)},Zw)},decls:11,vars:6,consts:[[`aria-labelledby`,`supplier-editor-title`,1,`detail-page`,`form-page`],[`layout`,`stacked`],[`pageBack`,``,3,`routerLink`,`queryParams`],[`id`,`supplier-editor-title`],[`role`,`status`],[1,`notice-flow`],[`appNotice`,``,`variant`,`danger`,`role`,`alert`],[`appButton`,``,`type`,`button`,3,`click`],[`appNotice`,``,`role`,`status`],[`novalidate`,``,3,`submit`],[1,`ds-panel`,`form-panel`],[1,`field-grid`],[`for`,`supplier-name`,1,`field`,`wide`],[`id`,`supplier-name`,`type`,`text`,`autocomplete`,`organization`,1,`input`,3,`formField`],[`id`,`supplier-name-error`,1,`field-error`],[`for`,`supplier-registration`,1,`field`],[`id`,`supplier-registration`,`type`,`text`,1,`input`,3,`formField`],[`for`,`supplier-vat`,1,`field`],[`id`,`supplier-vat`,`type`,`text`,1,`input`,3,`formField`],[`for`,`supplier-tax-treatment`,1,`field`],[`appFilterSelect`,``,`id`,`supplier-tax-treatment`,3,`formField`],[`value`,`france`],[`value`,`eu-reverse-charge`],[`value`,`non-eu-import`],[`value`,`foreign-local-tax`],[`for`,`supplier-email`,1,`field`],[`id`,`supplier-email`,`type`,`email`,`autocomplete`,`email`,1,`input`,3,`formField`],[1,`field-error`],[`for`,`supplier-phone`,1,`field`],[`id`,`supplier-phone`,`type`,`tel`,`autocomplete`,`tel`,1,`input`,3,`formField`],[`for`,`supplier-address1`,1,`field`,`wide`],[`id`,`supplier-address1`,`type`,`text`,`autocomplete`,`address-line1`,1,`input`,3,`formField`],[`for`,`supplier-address2`,1,`field`,`wide`],[`id`,`supplier-address2`,`type`,`text`,`autocomplete`,`address-line2`,1,`input`,3,`formField`],[`for`,`supplier-postal`,1,`field`],[`id`,`supplier-postal`,`type`,`text`,`autocomplete`,`postal-code`,1,`input`,3,`formField`],[`for`,`supplier-city`,1,`field`],[`id`,`supplier-city`,`type`,`text`,`autocomplete`,`address-level2`,1,`input`,3,`formField`],[`for`,`supplier-country`,1,`field`,`wide`],[`id`,`supplier-country`,`type`,`text`,`autocomplete`,`country-name`,1,`input`,3,`formField`],[`for`,`supplier-currency`,1,`field`],[`id`,`supplier-currency`,`type`,`text`,`autocapitalize`,`characters`,1,`input`,3,`formField`],[`for`,`supplier-terms`,1,`field`],[`id`,`supplier-terms`,`type`,`number`,`step`,`1`,1,`input`,3,`formField`],[`for`,`supplier-iban`,1,`field`,`wide`],[`id`,`supplier-iban`,`type`,`text`,`autocomplete`,`off`,1,`input`,3,`formField`],[`for`,`supplier-bic`,1,`field`],[`id`,`supplier-bic`,`type`,`text`,`autocomplete`,`off`,1,`input`,3,`formField`],[1,`actions`,`spacer-x-2`],[`appButton`,``,`variant`,`primary`,`type`,`submit`,3,`disabled`],[`appLinkButton`,``,3,`routerLink`,`queryParams`]],template:function(n,e){n&1&&(Us(0,`section`,0)(1,`app-page-header`,1)(2,`a`,2),y_(3),fd(),Us(4,`h1`,3),y_(5),fd(),Us(6,`p`),y_(7),fd()(),OS(8,re,2,1,`p`,4)(9,ae,5,2,`div`,5)(10,ye,83,51),fd()),n&2&&(ZC(2),Fy(`routerLink`,e.backLink())(`queryParams`,e.listQuery()),ZC(),nv(e.i18n.t(`supplier.cancel`)),ZC(2),nv(e.title()),ZC(2),nv(e.intro()),ZC(),kS(e.state()===`loading`?8:e.state()===`error`?9:10))},dependencies:[Ae,N,yn,k,g$1,Dt],styles:[`[_nghost-%COMP%]{display:block}.detail-page[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-4);min-inline-size:0;inline-size:100%;max-inline-size:var(--%NS%page-width-detail);margin-inline:auto;padding:var(--%NS%page-header-y) var(--%NS%page-x)}.detail-page.form-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-form)}.detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-wide)}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-2xl);overflow-wrap:anywhere}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-base);color:var(--%NS%color-muted);overflow-wrap:anywhere}.detail-page[_ngcontent-%COMP%] > button[_ngcontent-%COMP%]{justify-self:start}@media print{.detail-page[_ngcontent-%COMP%], .detail-page.form-page[_ngcontent-%COMP%], .detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:none}}.form-panel[_ngcontent-%COMP%] + .form-panel[_ngcontent-%COMP%]{margin-block-start:var(--%NS%space-4)}.actions[_ngcontent-%COMP%]{margin-block-start:var(--%NS%space-5)}`]})};export{ie as SupplierEditor};
@@ -1 +1 @@
1
- import{$ as MH,$t as ZC,A as Gy,D as Fy,Dn as g,Dr as t_,Ir as wp,It as Us,Jr as zS,Jt as Xy,Nr as vd,P as Hn,Rn as jS,Tn as fd,Wn as kS,Wr as y_,X as LS,dr as pe,lt as OS,nt as NH,pr as qS,qn as ky,u as Ao,w as Fb,z as Ip}from"./chunk-BAHiFuUo.js";import{b as No,v as Dt}from"./main-F7D3L737.js";var L=(a,e)=>e.id;function I(a,e){if(a&1&&(Us(0,`a`,4,0),y_(2),fd()),a&2){let t=t_(1),r=qS().$implicit,n=qS();Xy(`active`,n.isActive(r,t.isActive)),Fy(`id`,r.id)(`routerLink`,e)(`queryParams`,r.queryParams)(`queryParamsHandling`,n.queryParamsHandling(r))(`preserveFragment`,n.preserveFragment())(`routerLinkActiveOptions`,n.activeOptions(r))(`ariaCurrentWhenActive`,n.currentPage(r)),ky(`aria-disabled`,n.disabled()),ZC(2),vd(` `,r.label,` `)}}function E(a,e){if(a&1){let t=zS();Us(0,`button`,5),Gy(`click`,function(){Ip(t);let n=qS().$implicit;return wp(qS().tabSelected.emit(n.id))}),y_(1),fd()}if(a&2){let t=qS().$implicit,r=qS();Xy(`active`,t.active),Fy(`disabled`,r.disabled()),ky(`aria-current`,t.active?`page`:null),ZC(),vd(` `,t.label,` `)}}function H(a,e){if(a&1&&OS(0,I,3,11,`a`,2)(1,E,2,5,`button`,3),a&2){let t,r=e.$implicit;kS((t=r.path)?0:1,t)}}var D=class a{label=NH.required();tabs=NH.required();disabled=NH(!1);preserveQuery=NH(!1);preserveFragment=NH(!1);tabSelected=MH();constructor(){let e=g(Hn),t=g(Ao),r=g(pe);for(let n of[`click`,`auxclick`]){let b=t.listen(e.nativeElement,n,y=>{this.disabled()&&(y.preventDefault(),y.stopPropagation())},{capture:!0});r.onDestroy(b)}}activeOptions(e){return{paths:e.exact===!1?`subset`:`exact`,queryParams:e.active===void 0&&e.queryParams?`subset`:`ignored`,fragment:`ignored`,matrixParams:`ignored`}}queryParamsHandling(e){return this.preserveQuery()?e.queryParams?`merge`:`preserve`:``}isActive(e,t){return e.active??t}currentPage(e){return e.active===!1?void 0:`page`}static ɵfac=function(t){return new(t||a)};static ɵcmp=Fb({type:a,selectors:[[`app-tabs`]],inputs:{label:[1,`label`],tabs:[1,`tabs`],disabled:[1,`disabled`],preserveQuery:[1,`preserveQuery`],preserveFragment:[1,`preserveFragment`]},outputs:{tabSelected:`tabSelected`},decls:3,vars:1,consts:[[`route`,`routerLinkActive`],[1,`tab-list`],[`routerLinkActive`,``,3,`id`,`routerLink`,`queryParams`,`queryParamsHandling`,`preserveFragment`,`routerLinkActiveOptions`,`active`,`ariaCurrentWhenActive`],[`type`,`button`,3,`active`,`disabled`],[`routerLinkActive`,``,3,`id`,`routerLink`,`queryParams`,`queryParamsHandling`,`preserveFragment`,`routerLinkActiveOptions`,`ariaCurrentWhenActive`],[`type`,`button`,3,`click`,`disabled`]],template:function(t,r){t&1&&(Us(0,`nav`,1),LS(1,H,2,1,null,null,L),fd()),t&2&&(ky(`aria-label`,r.label()),ZC(),jS(r.tabs()))},dependencies:[Dt,No],styles:[`[_nghost-%COMP%]{--%NS%scrollbar-size: var(--%NS%scrollbar-compact-size);--%NS%scrollbar-thumb-border: 1px;display:block;min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}.tab-list[_ngcontent-%COMP%]{display:flex;gap:var(--%NS%space-2);min-width:max-content;border-bottom:1px solid var(--%NS%color-line);padding-block-end:var(--%NS%space-3)}:is(a[_ngcontent-%COMP%], button[_ngcontent-%COMP%]){--%NS%icon-color: currentColor;border-color:transparent;border-radius:var(--%NS%radius-sm);background:transparent;color:var(--%NS%color-muted);text-decoration:none;text-shadow:none;box-shadow:none;cursor:pointer;display:inline-flex;align-items:center;min-height:var(--%NS%control-height);padding:var(--%NS%space-2) var(--%NS%space-3);border:0}[_ngcontent-%COMP%]:is(a,button):not([aria-disabled=true],[aria-current=page]):hover{background:color-mix(in oklab,var(--%NS%color-surface-sunken),transparent 35%);color:var(--%NS%color-ink)}[_ngcontent-%COMP%]:is(a,button)[aria-current=page]{background:var(--%NS%color-panel);color:var(--%NS%color-ink);box-shadow:var(--%NS%shadow-panel);font-weight:700}[_ngcontent-%COMP%]:is(a,button):focus-visible{outline:2px solid var(--%NS%color-focus);outline-offset:-2px}[_ngcontent-%COMP%]:is(a,button)[aria-disabled=true], button[_ngcontent-%COMP%]:disabled{cursor:not-allowed;opacity:.55}`]})};export{D as t};
1
+ import{$ as MH,$t as ZC,A as Gy,D as Fy,Dn as g,Dr as t_,Ir as wp,It as Us,Jr as zS,Jt as Xy,Nr as vd,P as Hn,Rn as jS,Tn as fd,Wn as kS,Wr as y_,X as LS,dr as pe,lt as OS,nt as NH,pr as qS,qn as ky,u as Ao,w as Fb,z as Ip}from"./chunk-BAHiFuUo.js";import{b as No,v as Dt}from"./main-LXYWXFW4.js";var L=(a,e)=>e.id;function I(a,e){if(a&1&&(Us(0,`a`,4,0),y_(2),fd()),a&2){let t=t_(1),r=qS().$implicit,n=qS();Xy(`active`,n.isActive(r,t.isActive)),Fy(`id`,r.id)(`routerLink`,e)(`queryParams`,r.queryParams)(`queryParamsHandling`,n.queryParamsHandling(r))(`preserveFragment`,n.preserveFragment())(`routerLinkActiveOptions`,n.activeOptions(r))(`ariaCurrentWhenActive`,n.currentPage(r)),ky(`aria-disabled`,n.disabled()),ZC(2),vd(` `,r.label,` `)}}function E(a,e){if(a&1){let t=zS();Us(0,`button`,5),Gy(`click`,function(){Ip(t);let n=qS().$implicit;return wp(qS().tabSelected.emit(n.id))}),y_(1),fd()}if(a&2){let t=qS().$implicit,r=qS();Xy(`active`,t.active),Fy(`disabled`,r.disabled()),ky(`aria-current`,t.active?`page`:null),ZC(),vd(` `,t.label,` `)}}function H(a,e){if(a&1&&OS(0,I,3,11,`a`,2)(1,E,2,5,`button`,3),a&2){let t,r=e.$implicit;kS((t=r.path)?0:1,t)}}var D=class a{label=NH.required();tabs=NH.required();disabled=NH(!1);preserveQuery=NH(!1);preserveFragment=NH(!1);tabSelected=MH();constructor(){let e=g(Hn),t=g(Ao),r=g(pe);for(let n of[`click`,`auxclick`]){let b=t.listen(e.nativeElement,n,y=>{this.disabled()&&(y.preventDefault(),y.stopPropagation())},{capture:!0});r.onDestroy(b)}}activeOptions(e){return{paths:e.exact===!1?`subset`:`exact`,queryParams:e.active===void 0&&e.queryParams?`subset`:`ignored`,fragment:`ignored`,matrixParams:`ignored`}}queryParamsHandling(e){return this.preserveQuery()?e.queryParams?`merge`:`preserve`:``}isActive(e,t){return e.active??t}currentPage(e){return e.active===!1?void 0:`page`}static ɵfac=function(t){return new(t||a)};static ɵcmp=Fb({type:a,selectors:[[`app-tabs`]],inputs:{label:[1,`label`],tabs:[1,`tabs`],disabled:[1,`disabled`],preserveQuery:[1,`preserveQuery`],preserveFragment:[1,`preserveFragment`]},outputs:{tabSelected:`tabSelected`},decls:3,vars:1,consts:[[`route`,`routerLinkActive`],[1,`tab-list`],[`routerLinkActive`,``,3,`id`,`routerLink`,`queryParams`,`queryParamsHandling`,`preserveFragment`,`routerLinkActiveOptions`,`active`,`ariaCurrentWhenActive`],[`type`,`button`,3,`active`,`disabled`],[`routerLinkActive`,``,3,`id`,`routerLink`,`queryParams`,`queryParamsHandling`,`preserveFragment`,`routerLinkActiveOptions`,`ariaCurrentWhenActive`],[`type`,`button`,3,`click`,`disabled`]],template:function(t,r){t&1&&(Us(0,`nav`,1),LS(1,H,2,1,null,null,L),fd()),t&2&&(ky(`aria-label`,r.label()),ZC(),jS(r.tabs()))},dependencies:[Dt,No],styles:[`[_nghost-%COMP%]{--%NS%scrollbar-size: var(--%NS%scrollbar-compact-size);--%NS%scrollbar-thumb-border: 1px;display:block;min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}.tab-list[_ngcontent-%COMP%]{display:flex;gap:var(--%NS%space-2);min-width:max-content;border-bottom:1px solid var(--%NS%color-line);padding-block-end:var(--%NS%space-3)}:is(a[_ngcontent-%COMP%], button[_ngcontent-%COMP%]){--%NS%icon-color: currentColor;border-color:transparent;border-radius:var(--%NS%radius-sm);background:transparent;color:var(--%NS%color-muted);text-decoration:none;text-shadow:none;box-shadow:none;cursor:pointer;display:inline-flex;align-items:center;min-height:var(--%NS%control-height);padding:var(--%NS%space-2) var(--%NS%space-3);border:0}[_ngcontent-%COMP%]:is(a,button):not([aria-disabled=true],[aria-current=page]):hover{background:color-mix(in oklab,var(--%NS%color-surface-sunken),transparent 35%);color:var(--%NS%color-ink)}[_ngcontent-%COMP%]:is(a,button)[aria-current=page]{background:var(--%NS%color-panel);color:var(--%NS%color-ink);box-shadow:var(--%NS%shadow-panel);font-weight:700}[_ngcontent-%COMP%]:is(a,button):focus-visible{outline:2px solid var(--%NS%color-focus);outline-offset:-2px}[_ngcontent-%COMP%]:is(a,button)[aria-disabled=true], button[_ngcontent-%COMP%]:disabled{cursor:not-allowed;opacity:.55}`]})};export{D as t};
@@ -0,0 +1 @@
1
+ import{n as m,r as n,t as l}from"./chunk-BwCtja5l.js";import{$t as ZC,A as Gy,D as Fy,Dn as g,E as Ft,Gn as k_,Ir as wp,It as Us,Jr as zS,K as Ke,Nr as vd,Rn as jS,Tn as fd,V as Iy,Wn as kS,Wr as y_,X as LS,dr as pe$1,ft as Ol,lt as OS,pr as qS,rr as nv,w as Fb,z as Ip}from"./chunk-BAHiFuUo.js";import{m as Ie,o as U,r as N,v as Dt,y as G}from"./main-LXYWXFW4.js";import{ct as Me,wi as wu}from"./chunk-BAe_07VM.js";import"./chunk-Dv9sNWWK.js";import{Ia as a,un as Jd}from"./chunk-D8Ui_APT.js";import{t as g$1}from"./chunk-B56nz2lI.js";import{t as k}from"./chunk-IrDYxRzS.js";import{t as d}from"./chunk-CfwFJLFh.js";import"./chunk-BzUDWIzm.js";import{t as P}from"./chunk-CkRw7h0_.js";import{t as E}from"./chunk-DhpMFMQw.js";import{t as l$1}from"./chunk-Cm2UNqwE.js";import"./chunk-CReShp-B.js";import"./chunk-CczD0yXn2.js";import"./chunk-CXHCUTDs2.js";import"./chunk-C_4qOSvi2.js";import{t as R}from"./chunk-CM29tQ7z.js";import{t as c}from"./chunk-Ckk2HUrT.js";import{n as h,r as v,t as C}from"./chunk-CARNiCDb.js";var de=a=>({count:a});var se=(a,r)=>r.name;function oe(a,r){a&1&&(Us(0,`h1`,3),y_(1),fd()),a&2&&(ZC(),nv(r.displayName))}function pe(a,r){if(a&1&&(Us(0,`p`),y_(1),fd()),a&2){let t=qS();ZC(),nv(t.i18n.t(`supplier.detailIntro`))}}function ue(a,r){if(a&1&&(Us(0,`span`,4),y_(1),fd()),a&2){let t=qS();Fy(`variant`,t.statusVariant()),ZC(),nv(t.statusLabel())}}function ce(a,r){if(a&1){let t=zS();Us(0,`button`,9),Gy(`click`,function(){Ip(t);return wp(qS(2).changeArchive())}),y_(1),fd()}if(a&2){let t=qS(2);Fy(`disabled`,t.changing()),ZC(),vd(` `,t.archiveLabel(),` `)}}function _e(a,r){a&1&&Iy(0,ce,2,2,`button`,8),a&2&&Fy(`appCan`,`supplier.archive`)}function me(a,r){if(a&1&&(Us(0,`p`,6),y_(1),fd()),a&2){let t=qS();ZC(),nv(t.i18n.t(`supplier.loadingDetail`))}}function ve(a,r){if(a&1){let t=zS();Us(0,`div`,7)(1,`p`,10),y_(2),fd(),Us(3,`button`,11),Gy(`click`,function(){Ip(t);return wp(qS().load())}),y_(4),fd()()}if(a&2){let t=qS();ZC(2),nv(t.i18n.t(t.error())),ZC(2),vd(` `,t.i18n.t(`backOffice.dashboard.retry`),` `)}}function ge(a,r){if(a&1&&(Us(0,`p`,10),y_(1),fd()),a&2){let t=qS(3);ZC(),nv(t.i18n.t(r))}}function ye(a,r){if(a&1&&(Us(0,`div`,18)(1,`dt`),y_(2),fd(),Us(3,`dd`),y_(4),fd()()),a&2){let t=qS(),i=qS(2);ZC(2),nv(i.i18n.t(`supplier.viesValidatedAt`)),ZC(2),nv(i.date(t.viesValidatedAt))}}function xe(a,r){if(a&1){let t=zS();Us(0,`div`,16),Gy(`editRequested`,function(){let e=Ip(t).$implicit;return wp(qS(3).editingField.set(e.name))})(`cancelRequested`,function(){Ip(t);return wp(qS(3).editingField.set(void 0))})(`saveRequested`,function(e){let o=Ip(t).$implicit;return wp(qS(3).saveField(o.name,e))}),fd()}if(a&2){let t=r.$implicit,i=qS(),e=qS(2);Fy(`label`,e.i18n.t(t.label))(`value`,i[t.name])(`emptyValue`,e.i18n.t(`supplier.notProvided`))(`editable`,e.canEditProfile())(`editing`,e.editingField()===t.name)(`saving`,e.savingField()===t.name)(`maximumLength`,t.maximumLength)}}function fe(a,r){if(a&1){let t=zS();OS(0,ge,2,1,`p`,10),Us(1,`div`,12)(2,`app-detail-panel`,13)(3,`dl`,14)(4,`div`,15),Gy(`editRequested`,function(){Ip(t);return wp(qS(2).editingField.set(`displayName`))})(`cancelRequested`,function(){Ip(t);return wp(qS(2).editingField.set(void 0))})(`saveRequested`,function(e){Ip(t);return wp(qS(2).saveField(`displayName`,e))}),fd(),Us(5,`div`,16),Gy(`editRequested`,function(){Ip(t);return wp(qS(2).editingField.set(`registrationNumber`))})(`cancelRequested`,function(){Ip(t);return wp(qS(2).editingField.set(void 0))})(`saveRequested`,function(e){Ip(t);return wp(qS(2).saveField(`registrationNumber`,e))}),fd(),Us(6,`div`,16),Gy(`editRequested`,function(){Ip(t);return wp(qS(2).editingField.set(`vatNumber`))})(`cancelRequested`,function(){Ip(t);return wp(qS(2).editingField.set(void 0))})(`saveRequested`,function(e){Ip(t);return wp(qS(2).saveField(`vatNumber`,e))}),fd(),Us(7,`div`,17),Gy(`editRequested`,function(){Ip(t);return wp(qS(2).editingField.set(`taxTreatment`))})(`cancelRequested`,function(){Ip(t);return wp(qS(2).editingField.set(void 0))})(`saveRequested`,function(e){Ip(t);return wp(qS(2).saveField(`taxTreatment`,e))}),fd(),OS(8,ye,5,2,`div`,18),Us(9,`div`,19),Gy(`editRequested`,function(){Ip(t);return wp(qS(2).editingField.set(`email`))})(`cancelRequested`,function(){Ip(t);return wp(qS(2).editingField.set(void 0))})(`saveRequested`,function(e){Ip(t);return wp(qS(2).saveField(`email`,e))}),fd(),Us(10,`div`,20),Gy(`editRequested`,function(){Ip(t);return wp(qS(2).editingField.set(`phone`))})(`cancelRequested`,function(){Ip(t);return wp(qS(2).editingField.set(void 0))})(`saveRequested`,function(e){Ip(t);return wp(qS(2).saveField(`phone`,e))}),fd()()(),Us(11,`app-detail-panel`,13)(12,`dl`,14),LS(13,xe,1,7,`div`,21,se),fd()(),Us(15,`app-detail-panel`,13)(16,`dl`,14)(17,`div`,15),Gy(`editRequested`,function(){Ip(t);return wp(qS(2).editingField.set(`defaultCurrency`))})(`cancelRequested`,function(){Ip(t);return wp(qS(2).editingField.set(void 0))})(`saveRequested`,function(e){Ip(t);return wp(qS(2).saveField(`defaultCurrency`,e))}),fd(),Us(18,`div`,22),Gy(`editRequested`,function(){Ip(t);return wp(qS(2).editingField.set(`paymentTermsDays`))})(`cancelRequested`,function(){Ip(t);return wp(qS(2).editingField.set(void 0))})(`saveRequested`,function(e){Ip(t);return wp(qS(2).saveField(`paymentTermsDays`,e))}),fd(),Us(19,`div`,16),Gy(`editRequested`,function(){Ip(t);return wp(qS(2).editingField.set(`iban`))})(`cancelRequested`,function(){Ip(t);return wp(qS(2).editingField.set(void 0))})(`saveRequested`,function(e){Ip(t);return wp(qS(2).saveField(`iban`,e))}),fd(),Us(20,`div`,16),Gy(`editRequested`,function(){Ip(t);return wp(qS(2).editingField.set(`bic`))})(`cancelRequested`,function(){Ip(t);return wp(qS(2).editingField.set(void 0))})(`saveRequested`,function(e){Ip(t);return wp(qS(2).saveField(`bic`,e))}),fd()()()()}if(a&2){let t,i=r,e=qS(2);kS((t=e.error())?0:-1,t),ZC(2),Fy(`heading`,e.i18n.t(`supplier.identity`)),ZC(2),Fy(`label`,e.i18n.t(`supplier.name`))(`value`,i.displayName)(`emptyValue`,e.i18n.t(`supplier.notProvided`))(`editable`,e.canEditProfile())(`editing`,e.editingField()===`displayName`)(`saving`,e.savingField()===`displayName`)(`required`,!0)(`maximumLength`,160),ZC(),Fy(`label`,e.i18n.t(`supplier.registrationNumber`))(`value`,i.registrationNumber)(`emptyValue`,e.i18n.t(`supplier.notProvided`))(`editable`,e.canEditProfile())(`editing`,e.editingField()===`registrationNumber`)(`saving`,e.savingField()===`registrationNumber`)(`maximumLength`,64),ZC(),Fy(`label`,e.i18n.t(`supplier.vatNumber`))(`value`,i.vatNumber)(`emptyValue`,e.i18n.t(`supplier.notProvided`))(`editable`,e.canEditProfile())(`editing`,e.editingField()===`vatNumber`)(`saving`,e.savingField()===`vatNumber`)(`maximumLength`,64),ZC(),Fy(`label`,e.i18n.t(`supplier.taxTreatment`))(`value`,i.taxTreatment)(`displayValue`,e.i18n.t(e.taxTreatmentLabel()))(`emptyValue`,e.i18n.t(`supplier.notProvided`))(`editable`,e.canEditProfile())(`editing`,e.editingField()===`taxTreatment`)(`saving`,e.savingField()===`taxTreatment`)(`options`,e.taxTreatmentOptions()),ZC(),kS(i.viesValidatedAt?8:-1),ZC(),Fy(`label`,e.i18n.t(`supplier.email`))(`value`,i.email)(`emptyValue`,e.i18n.t(`supplier.notProvided`))(`editable`,e.canEditProfile())(`editing`,e.editingField()===`email`)(`saving`,e.savingField()===`email`)(`maximumLength`,254),ZC(),Fy(`label`,e.i18n.t(`supplier.phone`))(`value`,i.phone)(`emptyValue`,e.i18n.t(`supplier.notProvided`))(`editable`,e.canEditProfile())(`editing`,e.editingField()===`phone`)(`saving`,e.savingField()===`phone`)(`maximumLength`,64),ZC(),Fy(`heading`,e.i18n.t(`supplier.address`)),ZC(2),jS(e.addressFields),ZC(2),Fy(`heading`,e.i18n.t(`supplier.payment`)),ZC(2),Fy(`label`,e.i18n.t(`supplier.currency`))(`value`,i.defaultCurrency)(`emptyValue`,e.i18n.t(`supplier.notProvided`))(`editable`,e.canEditProfile())(`editing`,e.editingField()===`defaultCurrency`)(`saving`,e.savingField()===`defaultCurrency`)(`required`,!0)(`maximumLength`,3),ZC(),Fy(`label`,e.i18n.t(`supplier.paymentTerms`))(`value`,i.paymentTermsDays.toString())(`displayValue`,e.i18n.tf(`supplier.paymentTermsDays`,k_(80,de,i.paymentTermsDays)))(`emptyValue`,e.i18n.t(`supplier.notProvided`))(`editable`,e.canEditProfile())(`editing`,e.editingField()===`paymentTermsDays`)(`saving`,e.savingField()===`paymentTermsDays`)(`required`,!0)(`maximumLength`,3),ZC(),Fy(`label`,e.i18n.t(`supplier.iban`))(`value`,i.iban)(`emptyValue`,e.i18n.t(`supplier.notProvided`))(`editable`,e.canEditProfile())(`editing`,e.editingField()===`iban`)(`saving`,e.savingField()===`iban`)(`maximumLength`,42),ZC(),Fy(`label`,e.i18n.t(`supplier.bic`))(`value`,i.bic)(`emptyValue`,e.i18n.t(`supplier.notProvided`))(`editable`,e.canEditProfile())(`editing`,e.editingField()===`bic`)(`saving`,e.savingField()===`bic`)(`maximumLength`,11)}}function Ce(a,r){if(a&1&&OS(0,fe,21,82),a&2){let t;kS((t=qS().supplier())?0:-1,t)}}var ne=class a$1{i18n=g(Ie);authentication=g(E);api=g(c);route=g(G);confirmation=g(P);destroyRef=g(pe$1);state=Ke(`loading`);supplier=Ke(void 0);error=Ke(void 0);changing=Ke(!1);editingField=Ke(void 0);savingField=Ke(void 0);canEditProfile=Ft(()=>this.authentication.can(`supplier.update`)&&this.supplier()?.archived===!1);taxTreatmentLabel=Ft(()=>{let r=this.supplier()?.taxTreatment;return r===`eu-reverse-charge`?`supplier.taxTreatment.eu`:r===`non-eu-import`?`supplier.taxTreatment.import`:r===`foreign-local-tax`?`supplier.taxTreatment.local`:`supplier.taxTreatment.france`});taxTreatmentOptions=Ft(()=>[{value:`france`,label:this.i18n.t(`supplier.taxTreatment.france`)},{value:`eu-reverse-charge`,label:this.i18n.t(`supplier.taxTreatment.eu`)},{value:`non-eu-import`,label:this.i18n.t(`supplier.taxTreatment.import`)},{value:`foreign-local-tax`,label:this.i18n.t(`supplier.taxTreatment.local`)}]);addressFields=[{name:`addressLine1`,label:`supplier.addressLine1`,maximumLength:160},{name:`addressLine2`,label:`supplier.addressLine2`,maximumLength:160},{name:`postalCode`,label:`supplier.postalCode`,maximumLength:32},{name:`city`,label:`supplier.city`,maximumLength:120},{name:`country`,label:`supplier.country`,maximumLength:120}];loadGeneration=0;constructor(){Ol(()=>this.route.paramMap.pipe(U(this.destroyRef)).subscribe(()=>{this.load()}))}listQuery(){return{q:this.route.snapshot.queryParamMap.get(`q`)}}statusLabel(){return this.i18n.t(this.supplier()?.archived?`supplier.archived`:`supplier.active`)}statusVariant(){return this.supplier()?.archived?`warning`:`success`}archiveLabel(){return this.i18n.t(this.supplier()?.archived?`supplier.reactivate`:`supplier.archive`)}date(r){return new Intl.DateTimeFormat(this.i18n.language(),{dateStyle:`medium`,timeStyle:`short`}).format(r)}async load(){let r=++this.loadGeneration;this.state.set(`loading`),this.error.set(void 0);let t=wu.decodeUnknownOption(a)(this.route.snapshot.paramMap.get(`supplierId`));if(Me.isNone(t)){this.error.set(`supplier.not_found`),this.state.set(`error`);return}let i=await this.api.get(t.value);if(!(r!==this.loadGeneration||this.destroyRef.destroyed)){if(!i.success){this.error.set(i.code),this.state.set(`error`);return}this.supplier.set(i.result),this.state.set(`ready`)}}async changeArchive(){let r=this.supplier();if(!r||this.changing())return;let t=r.archived?`supplier.confirmReactivate`:`supplier.confirmArchive`;if(await this.confirmation.request(this.i18n.t(t))){this.changing.set(!0),this.error.set(void 0);try{let i=r.archived?await this.api.reactivate(r.id):await this.api.archive(r.id);if(!i.success){this.error.set(i.code);return}this.supplier.set(i.result)}catch{this.error.set(`supplier.error`)}finally{this.changing.set(!1)}}}async saveField(r,t){let i=this.supplier();if(!i||!this.canEditProfile()||this.savingField()!==void 0)return;let T=i,{id:e,archived:o,viesValidatedAt:q,updatedAt:ae}=T,le=m(l({},n(T,[`id`,`archived`,`viesValidatedAt`,`updatedAt`])),{[r]:r===`paymentTermsDays`?Number(t):t,expectedUpdatedAt:ae}),R=wu.decodeUnknownOption(Jd)(le);if(Me.isNone(R)){this.error.set(`supplier.fieldInvalid`);return}this.savingField.set(r),this.error.set(void 0);try{let b=await this.api.update(i.id,R.value);if(!b.success){this.error.set(b.code);return}this.supplier.set(b.result),this.editingField.set(void 0)}catch{this.error.set(`supplier.error`)}finally{this.savingField.set(void 0)}}static ɵfac=function(t){return new(t||a$1)};static ɵcmp=Fb({type:a$1,selectors:[[`app-supplier-detail`]],hostAttrs:[1,`page-container`],decls:11,vars:7,consts:[[`aria-labelledby`,`supplier-title`,1,`detail-page`,`wide-page`],[`layout`,`stacked`],[`pageBack`,``,`routerLink`,`/suppliers`,3,`queryParams`],[`id`,`supplier-title`],[`pageBadges`,``,`appBadge`,``,3,`variant`],[`pageActions`,``,`appButton`,``,`icon`,`folder`,`type`,`button`,3,`disabled`],[`role`,`status`],[1,`notice-flow`],[`pageActions`,``,`appButton`,``,`icon`,`folder`,`type`,`button`,3,`disabled`,`click`,4,`appCan`],[`pageActions`,``,`appButton`,``,`icon`,`folder`,`type`,`button`,3,`click`,`disabled`],[`appNotice`,``,`variant`,`danger`,`role`,`alert`],[`appButton`,``,`type`,`button`,3,`click`],[`appDetailGrid`,``,1,`detail-grid`],[3,`heading`],[`appDetailList`,``],[`appInlineEdit`,``,3,`editRequested`,`cancelRequested`,`saveRequested`,`label`,`value`,`emptyValue`,`editable`,`editing`,`saving`,`required`,`maximumLength`],[`appInlineEdit`,``,3,`editRequested`,`cancelRequested`,`saveRequested`,`label`,`value`,`emptyValue`,`editable`,`editing`,`saving`,`maximumLength`],[`appInlineEdit`,``,3,`editRequested`,`cancelRequested`,`saveRequested`,`label`,`value`,`displayValue`,`emptyValue`,`editable`,`editing`,`saving`,`options`],[1,`readonly-detail`],[`appInlineEdit`,``,`inputType`,`email`,3,`editRequested`,`cancelRequested`,`saveRequested`,`label`,`value`,`emptyValue`,`editable`,`editing`,`saving`,`maximumLength`],[`appInlineEdit`,``,`inputType`,`tel`,3,`editRequested`,`cancelRequested`,`saveRequested`,`label`,`value`,`emptyValue`,`editable`,`editing`,`saving`,`maximumLength`],[`appInlineEdit`,``,3,`label`,`value`,`emptyValue`,`editable`,`editing`,`saving`,`maximumLength`],[`appInlineEdit`,``,3,`editRequested`,`cancelRequested`,`saveRequested`,`label`,`value`,`displayValue`,`emptyValue`,`editable`,`editing`,`saving`,`required`,`maximumLength`]],template:function(t,i){if(t&1&&(Us(0,`section`,0)(1,`app-page-header`,1)(2,`a`,2),y_(3),fd(),OS(4,oe,2,1,`h1`,3),OS(5,pe,2,1,`p`),OS(6,ue,2,2,`span`,4),OS(7,_e,1,1,`button`,5),fd(),OS(8,me,2,1,`p`,6)(9,ve,5,2,`div`,7)(10,Ce,1,1),fd()),t&2){let e,o;ZC(2),Fy(`queryParams`,i.listQuery()),ZC(),nv(i.i18n.t(`supplier.backToList`)),ZC(),kS((e=i.supplier())?4:-1,e),ZC(),kS(i.supplier()?5:-1),ZC(),kS(i.supplier()?6:-1),ZC(),kS(i.supplier()?7:-1),ZC(),kS((o=i.state())===`loading`?8:o===`error`?9:o===`ready`?10:-1)}},dependencies:[d,N,l$1,C,v,h,R,k,g$1,Dt],styles:[`[_nghost-%COMP%]{display:block}.detail-page[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-4);min-inline-size:0;inline-size:100%;max-inline-size:var(--%NS%page-width-detail);margin-inline:auto;padding:var(--%NS%page-header-y) var(--%NS%page-x)}.detail-page.form-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-form)}.detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-wide)}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-2xl);overflow-wrap:anywhere}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-base);color:var(--%NS%color-muted);overflow-wrap:anywhere}.detail-page[_ngcontent-%COMP%] > button[_ngcontent-%COMP%]{justify-self:start}@media print{.detail-page[_ngcontent-%COMP%], .detail-page.form-page[_ngcontent-%COMP%], .detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:none}}.detail-grid[_ngcontent-%COMP%]{margin-block-start:var(--%NS%space-2)}.readonly-detail[_ngcontent-%COMP%] dt[_ngcontent-%COMP%]{color:var(--%NS%color-muted);font-size:var(--%NS%text-sm)}.readonly-detail[_ngcontent-%COMP%] dd[_ngcontent-%COMP%]{min-block-size:var(--%NS%control-height);margin:var(--%NS%space-1) 0 0}`]})};export{ne as SupplierDetail};
@@ -0,0 +1 @@
1
+ import{n as m,t as l}from"./chunk-BwCtja5l.js";import{$t as ZC,A as Gy,D as Fy,Dn as g,E as Ft,Gn as k_,Ir as wp,It as Us,Jr as zS,K as Ke,Nr as vd,Rn as jS,Sr as rv,Tn as fd,V as Iy,Wn as kS,Wr as y_,X as LS,hr as q_,l as A_,lt as OS,mr as qT,or as ou,pr as qS,qn as ky,rn as Zw,rr as nv,tn as ZT,ut as O_,vt as Py,w as Fb,z as Ip}from"./chunk-BAHiFuUo.js";import{T as ue,r as N}from"./main-LXYWXFW4.js";import{wi as wu}from"./chunk-BAe_07VM.js";import"./chunk-Dv9sNWWK.js";import{Ia as a,q as Dg,xo as dt}from"./chunk-D8Ui_APT.js";import"./chunk-BMiFx1ci.js";import{t as c}from"./chunk-Bh2Diab5.js";import"./chunk-B56nz2lI.js";import{t as k}from"./chunk-IrDYxRzS.js";import"./chunk-CfwFJLFh.js";import"./chunk-BzUDWIzm.js";import"./chunk-CkRw7h0_.js";import"./chunk-DhpMFMQw.js";import{t as l$1}from"./chunk-Cm2UNqwE.js";import"./chunk-CReShp-B.js";import{d as nr,h as yn,o as gn,r as cn,u as mn}from"./chunk-CSkyOfSg.js";import"./chunk-CczD0yXn2.js";import"./chunk-BAYVC6mO2.js";import"./chunk-xIoy5TmG2.js";import"./chunk-DvAE1Kdh2.js";import{t as Ae}from"./chunk-C_4qOSvi2.js";import"./chunk-BL3upDtA.js";import{t as w}from"./chunk-DbcNGxba.js";import{t as v}from"./chunk-CpB8RIpf.js";import{a as u,i as m$1}from"./chunk-Dx1NwQCW.js";import{t as S}from"./chunk-CJE3VBx5.js";import{t as u$1}from"./chunk-BCN3uL5S.js";var pe=()=>({count:1e3});var me=i=>({version:i});var _e=i=>({description:i});var ve=i=>({quantity:i});var ye=(i,t)=>t.invoiceId+`:`+t.sourceLineId;var ce=(i,t)=>t.id;function fe(i,t){if(i&1&&(Us(0,`dl`,9)(1,`div`)(2,`dt`),y_(3),fd(),Us(4,`dd`),y_(5),fd()()()),i&2){let e=qS(4);ZC(3),nv(e.i18n.t(`credit.reason`)),ZC(2),nv(e.selectedRevision()?.reason)}}function ge(i,t){if(i&1&&y_(0),i&2)vd(` `,qS(5).i18n.t(`billingWorkspace.reasonInvalid`),` `)}function Ce(i,t){if(i&1&&(Us(0,`label`,10),y_(1),Py(2,`textarea`,19),qT(),Us(3,`small`,20),y_(4),fd(),Us(5,`span`,21),OS(6,ge,1,1),fd()()),i&2){let e=qS(4);ZC(),nv(e.i18n.t(`credit.reason`)),ZC(),Fy(`formField`,e.creditForm.reason),ky(`aria-invalid`,e.creditForm.reason().invalid()&&e.creditForm.reason().touched()),ZT(),ZC(2),nv(e.i18n.tf(`billingWorkspace.limit`,O_(5,pe))),ZC(2),kS(e.creditForm.reason().invalid()&&e.creditForm.reason().touched()?6:-1)}}function he(i,t){if(i&1&&(Us(0,`option`,23),y_(1),fd()),i&2){let e=t.$implicit,n=qS(5);Fy(`value`,e.version),ZC(),vd(` `,n.i18n.tf(`commercial.revision`,k_(2,me,e.version)),` `)}}function xe(i,t){if(i&1){let e=zS();Us(0,`label`,14),y_(1),Us(2,`select`,22),Gy(`change`,function(r){Ip(e);return wp(qS(4).selectedVersion.set(+r.target.value))}),LS(3,he,2,4,`option`,23,ce),fd()()}if(i&2){let e=qS(4);ZC(),vd(``,e.i18n.t(`commercial.versions`),` `),ZC(),Fy(`value`,e.selectedVersion()),ZC(),jS(e.revisions())}}function be(i,t){if(i&1){let e=zS();Us(0,`button`,27),Gy(`click`,function(){Ip(e);let r=qS().$implicit;return wp(qS(4).removeInvoice(r.invoiceId))}),y_(1),fd()}if(i&2){let e=qS(5);ZC(),vd(` `,e.i18n.t(`credit.removeInvoice`),` `)}}function Me(i,t){if(i&1){let e=zS();Us(0,`tr`)(1,`td`),y_(2),fd(),Us(3,`td`),y_(4),fd(),Us(5,`td`)(6,`label`,24),y_(7),fd(),Us(8,`input`,25),Gy(`input`,function(r){let u=Ip(e).$implicit;return wp(qS(4).updateQuantity(u.sourceLineId,r.target.value))}),fd(),Us(9,`small`),y_(10),fd()(),Us(11,`td`),OS(12,be,2,1,`button`,26),fd()()}if(i&2){let e=t.$implicit,n=qS(3),r=qS();ZC(2),nv(e.invoiceNumber),ZC(2),nv(e.description),ZC(2),Fy(`for`,`credit-quantity-`+e.sourceLineId),ZC(),nv(r.i18n.tf(`credit.quantityFor`,k_(10,_e,e.description))),ZC(),Fy(`id`,`credit-quantity-`+e.sourceLineId)(`value`,r.quantity(e))(`disabled`,r.readonlyVersion()),ky(`aria-invalid`,e.quantityMilli<0||e.quantityMilli>e.availableQuantityMilli),ZC(2),nv(r.i18n.tf(`credit.availableQuantity`,k_(12,ve,r.availableQuantity(e)))),ZC(2),kS(!r.readonlyVersion()&&e.invoiceId!==n.id?12:-1)}}function Ie(i,t){if(i&1&&(Us(0,`option`,23),y_(1),fd()),i&2){let e=t.$implicit;Fy(`value`,e.id),ZC(),rv(` `,e.invoiceNumber,` · `,e.title,` `)}}function ke(i,t){if(i&1){let e=zS();Us(0,`div`,17)(1,`label`,10),y_(2),Us(3,`select`,22),Gy(`change`,function(r){Ip(e);return wp(qS(4).selectedInvoiceId.set(r.target.value))}),Us(4,`option`,28),y_(5),fd(),LS(6,Ie,2,3,`option`,23,ce),fd()(),Us(8,`button`,29),Gy(`click`,function(){Ip(e);return wp(qS(4).addInvoice())}),y_(9),fd()()}if(i&2){let e=qS(4);ZC(2),vd(``,e.i18n.t(`credit.addInvoice`),` `),ZC(),Fy(`value`,e.selectedInvoiceId()),ZC(2),nv(e.i18n.t(`credit.selectInvoice`)),ZC(),jS(e.addableInvoices()),ZC(2),Fy(`disabled`,!e.selectedInvoiceId()||e.task.busy()),ZC(),vd(` `,e.i18n.t(`credit.add`),` `)}}function Ne(i,t){if(i&1){let e=zS();Us(0,`div`,18)(1,`button`,30),y_(2),fd(),Us(3,`button`,31),Gy(`click`,function(){Ip(e);return wp(qS(4).issue())}),y_(4),fd()()}if(i&2){let e=qS(4);ZC(),Fy(`disabled`,!e.eligible()),ZC(),vd(` `,e.i18n.t(`credit.saveDraft`),` `),ZC(),Fy(`disabled`,!e.eligible()),ZC(),vd(` `,e.i18n.t(`credit.issueDraft`),` `)}}function Se(i,t){if(i&1&&(Us(0,`p`,2),y_(1),fd()),i&2){let e=qS(4);ZC(),nv(e.i18n.t(`credit.readonlyVersion`))}}function Ee(i,t){if(i&1){let e=zS();Us(0,`form`,6),Gy(`submit`,function(r){Ip(e);let u=qS(3);return r.preventDefault(),wp(u.save())}),Us(1,`section`,7)(2,`h2`,8),y_(3),fd(),OS(4,fe,6,2,`dl`,9)(5,Ce,7,6,`label`,10),fd(),Us(6,`section`,11)(7,`h2`,12),y_(8),fd(),Us(9,`p`,13),y_(10),fd(),OS(11,xe,5,2,`label`,14),Us(12,`div`,15)(13,`table`)(14,`thead`)(15,`tr`)(16,`th`),y_(17),fd(),Us(18,`th`),y_(19),fd(),Us(20,`th`),y_(21),fd(),Us(22,`th`)(23,`span`,16),y_(24),fd()()()(),Us(25,`tbody`),LS(26,Me,13,14,`tr`,null,ye),fd()()(),OS(28,ke,10,5,`div`,17),fd(),OS(29,Ne,5,4,`div`,18)(30,Se,2,1,`p`,2),fd()}if(i&2){let e=qS(3);ZC(3),nv(e.i18n.t(`credit.details`)),ZC(),kS(e.readonlyVersion()?4:5),ZC(4),nv(e.i18n.t(`credit.lines`)),ZC(2),nv(e.i18n.t(`credit.linesHint`)),ZC(),kS(e.revisions().length>0?11:-1),ZC(6),nv(e.i18n.t(`backOffice.invoices.number`)),ZC(2),nv(e.i18n.t(`backOffice.quote.description`)),ZC(2),nv(e.i18n.t(`backOffice.quote.quantity`)),ZC(3),nv(e.i18n.t(`backOffice.invoices.actions`)),ZC(2),jS(e.displayLines()),ZC(2),kS(!e.readonlyVersion()&&e.addableInvoices().length>0?28:-1),ZC(),kS(e.readonlyVersion()?30:29)}}function Pe(i,t){i&1&&Iy(0,Ee,31,11,`form`,5),i&2&&Fy(`appCan`,`invoice.credit`)}function we(i,t){if(i&1&&(Us(0,`p`,2),y_(1),fd()),i&2){let e=qS(2);ZC(),nv(e.i18n.t(`credit.noAvailableLines`))}}function Oe(i,t){if(i&1&&OS(0,Pe,1,1,`form`,4)(1,we,2,1,`p`,2),i&2)kS(qS().lines().length>0?0:1)}function Ve(i,t){if(i&1&&(Us(0,`p`,3),y_(1),fd()),i&2){let e=qS();ZC(),nv(e.i18n.t(`credit.loadError`))}}var le=class i{task=g(w);i18n=this.task.i18n;api=g(u$1);router=g(ue);creditNoteId=this.task.route.snapshot.paramMap.get(`creditNoteId`);fullMode=this.task.route.snapshot.queryParamMap.get(`mode`)===`full`;reasonModel=Ke({reason:``});creditForm=nr(this.reasonModel,t=>{gn(t.reason),mn(t.reason,/\S/),cn(t.reason,1e3)});lines=Ke([]);saved=Ke(void 0);selectedVersion=Ke(void 0);revisions=Ft(()=>this.saved()?.revisions??[]);selectedRevision=Ft(()=>this.revisions().find(t=>t.version===this.selectedVersion()));readonlyVersion=Ft(()=>{let t=this.saved();return t!==void 0&&(t.status===`issued`||this.selectedVersion()!==t.version)});displayLines=Ft(()=>{let t=this.saved(),e=this.selectedVersion();return!t||e===t.version?this.lines():t.revisions.find(n=>n.version===e)?.lines.map(n=>({invoiceId:n.invoiceId,invoiceVersion:n.invoiceVersion,invoiceNumber:n.invoiceNumber,sourceLineId:n.sourceLineId,description:n.description,availableQuantityMilli:n.quantityMilli,quantityMilli:n.quantityMilli}))??[]});baseline=``;createRequestId;issueRequestId;initialized=!1;sourceInvoice=this.task.invoice;credits=q_({params:()=>this.task.invoice()?.id,loader:({params:t})=>this.api.get(t)});existingNote=q_({params:()=>this.creditNoteId??void 0,loader:({params:t})=>this.api.getNote(t)});invoices=q_({loader:()=>this.task.api.list()});selectedInvoiceId=Ke(``);addableInvoices=Ft(()=>{let t=this.sourceInvoice(),e=new Set(this.lines().map(n=>n.invoiceId));return!t||!this.invoices.hasValue()?[]:this.invoices.value().filter(n=>n.clientId===t.clientId&&n.currency===t.currentRevision.currency&&(n.status===`issued`||n.status===`paid`)&&n.creditedCents<n.totalCents&&!e.has(n.id))});totalQuantity=Ft(()=>this.lines().reduce((t,e)=>t+e.quantityMilli,0));eligible=Ft(()=>!this.task.locked()&&!this.readonlyVersion()&&this.totalQuantity()>0&&this.creditForm.reason().valid()&&this.lines().every(t=>t.quantityMilli>=0&&t.quantityMilli<=t.availableQuantityMilli));hasUnsavedChanges=Ft(()=>this.snapshot()!==this.baseline||this.creditForm().dirty());constructor(){ou(()=>{if(this.initialized)return;let t=this.task.invoice();if(t){if(this.creditNoteId!==null){if(!this.existingNote.hasValue())return;let e=this.existingNote.value();if(!e.success){this.task.error.set(e.code);return}let n=e.result;this.saved.set(n),this.selectedVersion.set(n.version),this.reasonModel.set({reason:n.reason}),this.lines.set(n.lines.map(r=>({invoiceId:r.invoiceId,invoiceVersion:r.invoiceVersion,invoiceNumber:r.invoiceNumber,sourceLineId:r.sourceLineId,description:r.description,availableQuantityMilli:r.quantityMilli,quantityMilli:r.quantityMilli})))}else{if(!this.credits.hasValue())return;let e=this.credits.value();if(!e.success){this.task.error.set(e.code);return}this.lines.set(this.linesForInvoice(t,e.result,this.fullMode))}this.initialized=!0,this.baseline=this.snapshot(),this.creditForm().reset(this.reasonModel())}})}linesForInvoice(t,e,n){return t.currentRevision.lines.flatMap(r=>{let u=e.creditNotes.filter(h=>h.status===`issued`).flatMap(h=>h.lines).filter(h=>h.sourceLineId===r.id).reduce((h,ue)=>h+ue.quantityMilli,0),M=r.quantityMilli-u;return M<=0||t.invoiceNumber===null?[]:[{invoiceId:t.id,invoiceVersion:t.version,invoiceNumber:t.invoiceNumber,sourceLineId:r.id,description:r.description,availableQuantityMilli:M,quantityMilli:n?M:0}]})}quantity(t){return m$1(t.quantityMilli,3,this.i18n.language()===`fr`?`,`:`.`)}availableQuantity(t){return m$1(t.availableQuantityMilli,3,this.i18n.language()===`fr`?`,`:`.`)}updateQuantity(t,e){let n=u(e,3)??-1;this.lines.update(r=>r.map(u=>u.sourceLineId===t?m(l({},u),{quantityMilli:n}):u))}removeInvoice(t){t!==this.sourceInvoice()?.id&&this.lines.update(e=>e.filter(n=>n.invoiceId!==t))}async addInvoice(){let t=this.selectedInvoiceId();if(!(!t||this.task.busy())){this.task.busy.set(!0),this.task.error.set(void 0);try{let[e,n]=await Promise.all([this.task.api.get(wu.decodeUnknownSync(a)(t)),this.api.get(t)]);if(!e.success){this.task.error.set(e.code);return}if(!n.success){this.task.error.set(n.code);return}this.lines.update(r=>[...r,...this.linesForInvoice(e.result,n.result,!0)]),this.selectedInvoiceId.set(``)}catch{this.task.error.set(`invoice.error`)}finally{this.task.busy.set(!1)}}}requestLines(){return this.lines().filter(t=>t.quantityMilli>0).map(t=>({invoiceId:t.invoiceId,invoiceVersion:t.invoiceVersion,sourceLineId:t.sourceLineId,quantityMilli:t.quantityMilli}))}snapshot(){return JSON.stringify({reason:this.reasonModel().reason.trim(),lines:this.requestLines()})}async saveDraft(){if(!this.eligible())return;let t=this.saved();this.task.busy.set(!0),this.task.error.set(void 0);try{let e=t?await this.api.update(t.id,Dg.make({expectedVersion:t.version,reason:this.reasonModel().reason.trim(),lines:this.requestLines()})):await this.api.create(dt.make({requestId:this.createRequestId??=crypto.randomUUID(),reason:this.reasonModel().reason.trim(),lines:this.requestLines()}));if(!e.success){this.createRequestId=void 0,this.task.error.set(e.code),e.code===`invoice.credit_conflict`&&this.task.stale.set(!0);return}return this.saved.set(e.result),this.createRequestId=void 0,this.selectedVersion.set(e.result.version),this.baseline=this.snapshot(),this.creditForm().reset(this.reasonModel()),e.result}catch{this.task.error.set(`invoice.error`);return}finally{this.task.busy.set(!1)}}async save(){let t=await this.saveDraft(),e=this.sourceInvoice();!t||!e||await this.router.navigate([`/invoices`,e.id,`credits`,t.id,`edit`],{queryParams:this.task.navigation.detailQuery(),replaceUrl:!0})}async issue(){if(!this.eligible()||!await this.task.confirmation.request(this.i18n.t(`credit.confirmIssue`)))return;let t=await this.saveDraft();if(t){this.task.busy.set(!0);try{let e=await this.api.issue(t.id,{requestId:this.issueRequestId??=crypto.randomUUID(),expectedVersion:t.version});if(!e.success){this.issueRequestId=void 0,this.task.error.set(e.code);return}this.task.completed.set(!0),this.issueRequestId=void 0,await this.router.navigate([`/billing/credit-notes`])}catch{this.task.error.set(`invoice.error`)}finally{this.task.busy.set(!1)}}}canDeactivate(){return this.task.canDeactivate(this.hasUnsavedChanges())}static ɵfac=function(e){return new(e||i)};static ɵcmp=Fb({type:i,selectors:[[`app-credit-editor`]],hostAttrs:[1,`page-container`],hostBindings:function(e,n){e&1&&Gy(`beforeunload`,function(u){return n.task.beforeUnload(u,n.hasUnsavedChanges())},Zw)},features:[A_([w])],decls:7,vars:3,consts:[[`aria-labelledby`,`credit-title`,1,`detail-page`,`form-page`],[`headingId`,`credit-title`,3,`heading`],[`appNotice`,``],[`appNotice`,``,`variant`,`danger`,`role`,`alert`],[1,`task-form`],[`class`,`task-form`,3,`submit`,4,`appCan`],[1,`task-form`,3,`submit`],[`aria-labelledby`,`credit-reason-title`,1,`ds-panel`,`form-panel`],[`id`,`credit-reason-title`],[1,`facts`],[1,`field`],[`aria-labelledby`,`credit-lines-title`,1,`ds-panel`,`form-panel`],[`id`,`credit-lines-title`],[1,`muted`],[1,`field`,`version-selector`],[`appDataTable`,``],[1,`visually-hidden`],[1,`add-invoice`],[1,`actions`],[`rows`,`4`,`aria-describedby`,`credit-reason-hint credit-reason-error`,1,`input`,3,`formField`],[`id`,`credit-reason-hint`],[`id`,`credit-reason-error`,1,`field-error`],[`appFilterSelect`,``,1,`input`,3,`change`,`value`],[3,`value`],[1,`visually-hidden`,3,`for`],[`inputmode`,`decimal`,1,`input`,`quantity-input`,3,`input`,`id`,`value`,`disabled`],[`appButton`,``,`type`,`button`,`variant`,`ghost`],[`appButton`,``,`type`,`button`,`variant`,`ghost`,3,`click`],[`value`,``],[`appButton`,``,`type`,`button`,3,`click`,`disabled`],[`appButton`,``,`type`,`submit`,3,`disabled`],[`appButton`,``,`type`,`button`,`variant`,`primary`,3,`click`,`disabled`]],template:function(e,n){if(e&1&&(Us(0,`section`,0),Py(1,`app-invoice-task-header`,1),Us(2,`p`,2),y_(3),fd(),Py(4,`app-invoice-task-feedback`),OS(5,Oe,2,1)(6,Ve,2,1,`p`,3),fd()),e&2){let r;ZC(),Fy(`heading`,n.i18n.t(`credit.create`)),ZC(2),nv(n.i18n.t(`credit.draftHint`)),ZC(2),kS((r=n.task.invoice())?5:n.task.loading()?-1:6,r)}},dependencies:[Ae,l$1,N,c,k,yn,v,S],styles:[`[appListWorkspace][_ngcontent-%COMP%] > p[_ngcontent-%COMP%]{margin-block:0}header[_ngcontent-%COMP%], .actions[_ngcontent-%COMP%], .filters[_ngcontent-%COMP%], .chips[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--%NS%space-3)}header[_ngcontent-%COMP%]{justify-content:space-between;align-items:start}.billing-page[_ngcontent-%COMP%] > h1[_ngcontent-%COMP%]{font-size:var(--%NS%text-2xl);margin-block:var(--%NS%space-2)}h2[_ngcontent-%COMP%]{font-size:var(--%NS%text-xl)}.field[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-2);min-inline-size:0}.filters[_ngcontent-%COMP%]{align-items:end}.filters[_ngcontent-%COMP%] .search[_ngcontent-%COMP%]{flex:1 1 22rem}.filters[_ngcontent-%COMP%] .field[_ngcontent-%COMP%]:not(.search){flex:1 1 10rem}.amount[_ngcontent-%COMP%]{text-align:end;font-variant-numeric:tabular-nums;white-space:nowrap}td[_ngcontent-%COMP%] small[_ngcontent-%COMP%]{display:block;color:var(--%NS%color-muted)}.muted[_ngcontent-%COMP%]{color:var(--%NS%color-muted)}.empty[_ngcontent-%COMP%], .bulk-actions[_ngcontent-%COMP%], .summary[_ngcontent-%COMP%]{padding:var(--%NS%space-4)}.task-form[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-5);inline-size:100%}.fields[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--%NS%space-4)}.field-error[_ngcontent-%COMP%]{color:var(--%NS%color-danger);font-size:var(--%NS%text-sm)}.field-error[_ngcontent-%COMP%]:empty{display:none}dl[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-3)}dl[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--%NS%space-2) var(--%NS%space-4)}dt[_ngcontent-%COMP%]{color:var(--%NS%color-muted)}dd[_ngcontent-%COMP%]{margin:0;overflow-wrap:anywhere}ol[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-4)}.history-entry[_ngcontent-%COMP%]{padding:var(--%NS%space-4);overflow-wrap:anywhere}@media(max-width:40rem){.fields[_ngcontent-%COMP%]{grid-template-columns:1fr}}[_nghost-%COMP%]{display:block}.detail-page[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-4);min-inline-size:0;inline-size:100%;max-inline-size:var(--%NS%page-width-detail);margin-inline:auto;padding:var(--%NS%page-header-y) var(--%NS%page-x)}.detail-page.form-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-form)}.detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-wide)}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-2xl);overflow-wrap:anywhere}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-base);color:var(--%NS%color-muted);overflow-wrap:anywhere}.detail-page[_ngcontent-%COMP%] > button[_ngcontent-%COMP%]{justify-self:start}@media print{.detail-page[_ngcontent-%COMP%], .detail-page.form-page[_ngcontent-%COMP%], .detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:none}}.task-form[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-5)}.quantity-input[_ngcontent-%COMP%]{inline-size:8rem}.add-invoice[_ngcontent-%COMP%]{display:flex;align-items:end;gap:var(--%NS%space-3);margin-block-start:var(--%NS%space-4)}.add-invoice[_ngcontent-%COMP%] .field[_ngcontent-%COMP%]{flex:1}`]})};export{le as CreditEditor};
@@ -1 +1 @@
1
- import{Dn as g,H as JD,o as A,ot as OD}from"./chunk-BAHiFuUo.js";import{wi as wu}from"./chunk-BAe_07VM.js";import{n as m}from"./chunk-Dv9sNWWK.js";import{A as Bu,Dr as Pu,Ln as Lu,Yt as Hu,at as Ee,eu as wa,fn as Ji,it as Ea,si as Tu,zi as Wi}from"./chunk-D5qmP2Wu.js";var w=class s{http=g(OD);payments(t){return m(this.http.get(`/api/banking/invoices/${t}/payments`),Tu,Ee,`bank.error`)}history(t){return m(this.http.get(`/api/banking/transactions/${t}/history`),Bu,Ee,`bank.error`)}async list(){return wu.decodeUnknownSync(Wi)(await JD(this.http.get(`/api/banking/transactions`)))}get(t){return m(this.http.get(`/api/banking/transactions/${t}`),Ea,Ee,`bank.error`)}suggestions(t){return m(this.http.get(`/api/banking/transactions/${t}/suggestions`),Lu,Ee,`bank.error`)}supplierPayments(t){return m(this.http.get(`/api/banking/transactions/${t}/supplier-payments`),Ji,Ee,`bank.error`)}supplierMatches(t){return m(this.http.get(`/api/banking/transactions/${t}/supplier-matches`),Hu,Ee,`bank.error`)}matchSupplier(t,a){return m(this.http.post(`/api/banking/transactions/${t}/supplier-match`,a),Ji,Ee,`bank.error`)}unmatchSupplier(t,a,p){return m(this.http.post(`/api/banking/transactions/${t}/supplier-unmatch`,{matchId:a,reason:p}),Ji,Ee,`bank.error`)}importStatement(t){return m(this.http.post(`/api/banking/import`,t),wa,Ee,`bank.error`)}previewStatement(t){return m(this.http.post(`/api/banking/import/preview`,t),Pu,Ee,`bank.error`)}match(t,a){return m(this.http.post(`/api/banking/transactions/${t}/match`,a),Wi,Ee,`bank.error`)}unmatch(t,a,p){return m(this.http.post(`/api/banking/transactions/${t}/unmatch`,{matchId:a,reason:p}),Wi,Ee,`bank.error`)}static ɵfac=function(a){return new(a||s)};static ɵprov=A({token:s,factory:s.ɵfac,providedIn:`root`})};export{w as t};
1
+ import{Dn as g,H as JD,o as A,ot as OD}from"./chunk-BAHiFuUo.js";import{wi as wu}from"./chunk-BAe_07VM.js";import{n as m}from"./chunk-Dv9sNWWK.js";import{A as Bu,Dr as Pu,Ln as Lu,Yt as Hu,at as Ee,eu as wa,fn as Ji,it as Ea,si as Tu,zi as Wi}from"./chunk-D8Ui_APT.js";var w=class s{http=g(OD);payments(t){return m(this.http.get(`/api/banking/invoices/${t}/payments`),Tu,Ee,`bank.error`)}history(t){return m(this.http.get(`/api/banking/transactions/${t}/history`),Bu,Ee,`bank.error`)}async list(){return wu.decodeUnknownSync(Wi)(await JD(this.http.get(`/api/banking/transactions`)))}get(t){return m(this.http.get(`/api/banking/transactions/${t}`),Ea,Ee,`bank.error`)}suggestions(t){return m(this.http.get(`/api/banking/transactions/${t}/suggestions`),Lu,Ee,`bank.error`)}supplierPayments(t){return m(this.http.get(`/api/banking/transactions/${t}/supplier-payments`),Ji,Ee,`bank.error`)}supplierMatches(t){return m(this.http.get(`/api/banking/transactions/${t}/supplier-matches`),Hu,Ee,`bank.error`)}matchSupplier(t,a){return m(this.http.post(`/api/banking/transactions/${t}/supplier-match`,a),Ji,Ee,`bank.error`)}unmatchSupplier(t,a,p){return m(this.http.post(`/api/banking/transactions/${t}/supplier-unmatch`,{matchId:a,reason:p}),Ji,Ee,`bank.error`)}importStatement(t){return m(this.http.post(`/api/banking/import`,t),wa,Ee,`bank.error`)}previewStatement(t){return m(this.http.post(`/api/banking/import/preview`,t),Pu,Ee,`bank.error`)}match(t,a){return m(this.http.post(`/api/banking/transactions/${t}/match`,a),Wi,Ee,`bank.error`)}unmatch(t,a,p){return m(this.http.post(`/api/banking/transactions/${t}/unmatch`,{matchId:a,reason:p}),Wi,Ee,`bank.error`)}static ɵfac=function(a){return new(a||s)};static ɵprov=A({token:s,factory:s.ɵfac,providedIn:`root`})};export{w as t};
@@ -1 +1 @@
1
- import{D as Fy,nt as NH,qn as ky,vt as Py,w as Fb}from"./chunk-BAHiFuUo.js";import{i as r}from"./main-F7D3L737.js";var l=class a{icon=NH.required();variant=NH(`default`);static ɵfac=function(n){return new(n||a)};static ɵcmp=Fb({type:a,selectors:[[`app-entity-icon`]],hostAttrs:[`aria-hidden`,`true`],hostVars:1,hostBindings:function(n,t){n&2&&ky(`data-entity-variant`,t.variant())},inputs:{icon:[1,`icon`],variant:[1,`variant`]},decls:1,vars:1,consts:[[3,`name`]],template:function(n,t){n&1&&Py(0,`app-icon`,0),n&2&&Fy(`name`,t.icon())},dependencies:[r],styles:[`[_nghost-%COMP%]{--%NS%icon-color: var(--%NS%color-muted);display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;inline-size:var(--%NS%space-7);block-size:var(--%NS%space-7);border-radius:var(--%NS%radius-sm);background:var(--%NS%color-surface-sunken)}app-icon[_ngcontent-%COMP%]{transform:scale(.8)}[data-entity-variant=info][_nghost-%COMP%]{--%NS%icon-color: var(--%NS%color-info);background:var(--%NS%color-info-soft)}[data-entity-variant=success][_nghost-%COMP%]{--%NS%icon-color: var(--%NS%color-success);background:var(--%NS%color-success-soft)}[data-entity-variant=warning][_nghost-%COMP%]{--%NS%icon-color: var(--%NS%color-warning);background:var(--%NS%color-warning-soft)}[data-entity-variant=danger][_nghost-%COMP%]{--%NS%icon-color: var(--%NS%color-danger);background:var(--%NS%color-danger-soft)}`]})};export{l as t};
1
+ import{D as Fy,nt as NH,qn as ky,vt as Py,w as Fb}from"./chunk-BAHiFuUo.js";import{i as r}from"./main-LXYWXFW4.js";var l=class a{icon=NH.required();variant=NH(`default`);static ɵfac=function(n){return new(n||a)};static ɵcmp=Fb({type:a,selectors:[[`app-entity-icon`]],hostAttrs:[`aria-hidden`,`true`],hostVars:1,hostBindings:function(n,t){n&2&&ky(`data-entity-variant`,t.variant())},inputs:{icon:[1,`icon`],variant:[1,`variant`]},decls:1,vars:1,consts:[[3,`name`]],template:function(n,t){n&1&&Py(0,`app-icon`,0),n&2&&Fy(`name`,t.icon())},dependencies:[r],styles:[`[_nghost-%COMP%]{--%NS%icon-color: var(--%NS%color-muted);display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;inline-size:var(--%NS%space-7);block-size:var(--%NS%space-7);border-radius:var(--%NS%radius-sm);background:var(--%NS%color-surface-sunken)}app-icon[_ngcontent-%COMP%]{transform:scale(.8)}[data-entity-variant=info][_nghost-%COMP%]{--%NS%icon-color: var(--%NS%color-info);background:var(--%NS%color-info-soft)}[data-entity-variant=success][_nghost-%COMP%]{--%NS%icon-color: var(--%NS%color-success);background:var(--%NS%color-success-soft)}[data-entity-variant=warning][_nghost-%COMP%]{--%NS%icon-color: var(--%NS%color-warning);background:var(--%NS%color-warning-soft)}[data-entity-variant=danger][_nghost-%COMP%]{--%NS%icon-color: var(--%NS%color-danger);background:var(--%NS%color-danger-soft)}`]})};export{l as t};
@@ -1 +1 @@
1
- import{n as m,t as l}from"./chunk-BwCtja5l.js";import{Dn as g,H as JD,o as A,ot as OD}from"./chunk-BAHiFuUo.js";import{ct as Me,wi as wu}from"./chunk-BAe_07VM.js";import{n as m$1}from"./chunk-Dv9sNWWK.js";import{dr as Oi,el as rk,nr as Ni,yu as xu}from"./chunk-D5qmP2Wu.js";var f=class t{http=g(OD);async list(){return wu.decodeUnknownSync(xu)(await JD(this.http.get(`/api/catalog`)))}async create(a){return m$1(this.http.post(`/api/catalog`,a),Oi,rk,`catalog.error`)}async update(a,r){return m$1(this.http.put(`/api/catalog/${a}`,r),Oi,rk,`catalog.error`)}static ɵfac=function(r){return new(r||t)};static ɵprov=A({token:t,factory:t.ɵfac,providedIn:`root`})};var C=wu.Literals([`none`,`description-asc`,`description-desc`,`quantity-asc`,`quantity-desc`,`price-asc`,`price-desc`,`tax-asc`,`tax-desc`,`status-asc`,`status-desc`]);var w=wu.String.check(wu.isPattern(/^\d+$/)).pipe(wu.decodeTo(wu.NumberFromString),wu.decodeTo(Ni.fields.vatRateBasisPoints));var x=wu.Literals([`active`,`archived`,`all`]);var V=t=>Me.getOrNull(wu.decodeUnknownOption(w)(t));var P=t=>({q:(t.get(`q`)??``).slice(0,120),sort:Me.getOrElse(wu.decodeUnknownOption(C)(t.get(`sort`)),()=>`none`),tax:V(t.get(`tax`))});var b=t=>m(l({},t),{sort:t.sort===`none`?void 0:t.sort});var h=t=>Me.getOrElse(wu.decodeUnknownOption(x)(t),()=>`active`);var j=t=>h(t.get(`view`));export{h as a,f as i,V as n,j as o,b as r,P as t};
1
+ import{n as m,t as l}from"./chunk-BwCtja5l.js";import{Dn as g,H as JD,o as A,ot as OD}from"./chunk-BAHiFuUo.js";import{ct as Me,wi as wu}from"./chunk-BAe_07VM.js";import{n as m$1}from"./chunk-Dv9sNWWK.js";import{dr as Oi,el as rk,nr as Ni,yu as xu}from"./chunk-D8Ui_APT.js";var f=class t{http=g(OD);async list(){return wu.decodeUnknownSync(xu)(await JD(this.http.get(`/api/catalog`)))}async create(a){return m$1(this.http.post(`/api/catalog`,a),Oi,rk,`catalog.error`)}async update(a,r){return m$1(this.http.put(`/api/catalog/${a}`,r),Oi,rk,`catalog.error`)}static ɵfac=function(r){return new(r||t)};static ɵprov=A({token:t,factory:t.ɵfac,providedIn:`root`})};var C=wu.Literals([`none`,`description-asc`,`description-desc`,`quantity-asc`,`quantity-desc`,`price-asc`,`price-desc`,`tax-asc`,`tax-desc`,`status-asc`,`status-desc`]);var w=wu.String.check(wu.isPattern(/^\d+$/)).pipe(wu.decodeTo(wu.NumberFromString),wu.decodeTo(Ni.fields.vatRateBasisPoints));var x=wu.Literals([`active`,`archived`,`all`]);var V=t=>Me.getOrNull(wu.decodeUnknownOption(w)(t));var P=t=>({q:(t.get(`q`)??``).slice(0,120),sort:Me.getOrElse(wu.decodeUnknownOption(C)(t.get(`sort`)),()=>`none`),tax:V(t.get(`tax`))});var b=t=>m(l({},t),{sort:t.sort===`none`?void 0:t.sort});var h=t=>Me.getOrElse(wu.decodeUnknownOption(x)(t),()=>`active`);var j=t=>h(t.get(`view`));export{h as a,f as i,V as n,j as o,b as r,P as t};
@@ -1 +1 @@
1
- import{n as m$1,t as l}from"./chunk-BwCtja5l.js";import{ct as Me,wi as wu}from"./chunk-BAe_07VM.js";import{$r as T$1}from"./chunk-D5qmP2Wu.js";var u=[`messages`,`drafts`,`reminders`,`templates`];var g=wu.Literals(u);var S=e=>Me.getOrElse(wu.decodeUnknownOption(g)(e),()=>`messages`);var x={all:`emailsWorkspace.allStates`,pending:`integrations.pending`,simulated:`emailsWorkspace.simulated`,submitted:`emailsWorkspace.submitted`,draft:`emailsWorkspace.draft`,reminder:`emailsWorkspace.reminderDraft`,scheduled:`reminder.scheduled`,cancelled:`reminder.cancelled`,skipped:`reminder.skipped`,queued:`reminder.queued`};var y=wu.Literals([`all`,`pending`,`simulated`,`submitted`,`draft`,`reminder`,`scheduled`,`cancelled`,`skipped`,`queued`]);var f=wu.Literals([`none`,`date-desc`,`date-asc`,`subject-asc`,`subject-desc`,`recipient-asc`,`recipient-desc`,`state-asc`,`state-desc`]);var k=e=>Me.getOrElse(wu.decodeUnknownOption(y)(e),()=>`all`);var m=e=>Me.getOrUndefined(wu.decodeUnknownOption(T$1)(e));var E=e=>({q:(e.get(`q`)??``).slice(0,120),state:k(e.get(`state`)??``),from:m(e.get(`from`)),to:m(e.get(`to`)),sort:Me.getOrElse(wu.decodeUnknownOption(f)(e.get(`sort`)),()=>`none`)});var R=e=>m$1(l({},e),{sort:e.sort===`none`?void 0:e.sort});var h=(e,t)=>{let i=new Date(e),s=`${i.getFullYear()}-${String(i.getMonth()+1).padStart(2,`0`)}-${String(i.getDate()).padStart(2,`0`)}`;return(t.from===void 0||s>=t.from)&&(t.to===void 0||s<=t.to)};var O=(e,t,i,s)=>{let a=i===`none`?`date-desc`:i,o=a.startsWith(`date-`)?`date`:a.startsWith(`recipient-`)?`recipient`:a.startsWith(`state-`)?`state`:`subject`,p=o===`date`?Date.parse(e.date)-Date.parse(t.date):new Intl.Collator(s,{sensitivity:`base`,numeric:!0}).compare(e[o]??``,t[o]??``);return(a.endsWith(`-asc`)?1:-1)*p||e.id.localeCompare(t.id)};var W=e=>e.receipt===null?`integrations.pending`:e.receipt.mode===`simulation`?`emailsWorkspace.simulated`:`emailsWorkspace.submitted`;var T={scheduled:`reminder.scheduled`,cancelled:`reminder.cancelled`,skipped:`reminder.skipped`,queued:`reminder.queued`};var D={"invoice-ineligible":`reminder.invoice-ineligible`,"recipient-invalid":`reminder.recipient-invalid`,"permission-revoked":`reminder.permission-revoked`,"mode-changed":`reminder.mode-changed`};export{S as a,h as c,u as d,x as f,R as i,k as l,E as n,T as o,O as r,W as s,D as t,m as u};
1
+ import{n as m$1,t as l}from"./chunk-BwCtja5l.js";import{ct as Me,wi as wu}from"./chunk-BAe_07VM.js";import{$r as T$1}from"./chunk-D8Ui_APT.js";var u=[`messages`,`drafts`,`reminders`,`templates`];var g=wu.Literals(u);var S=e=>Me.getOrElse(wu.decodeUnknownOption(g)(e),()=>`messages`);var x={all:`emailsWorkspace.allStates`,pending:`integrations.pending`,simulated:`emailsWorkspace.simulated`,submitted:`emailsWorkspace.submitted`,draft:`emailsWorkspace.draft`,reminder:`emailsWorkspace.reminderDraft`,scheduled:`reminder.scheduled`,cancelled:`reminder.cancelled`,skipped:`reminder.skipped`,queued:`reminder.queued`};var y=wu.Literals([`all`,`pending`,`simulated`,`submitted`,`draft`,`reminder`,`scheduled`,`cancelled`,`skipped`,`queued`]);var f=wu.Literals([`none`,`date-desc`,`date-asc`,`subject-asc`,`subject-desc`,`recipient-asc`,`recipient-desc`,`state-asc`,`state-desc`]);var k=e=>Me.getOrElse(wu.decodeUnknownOption(y)(e),()=>`all`);var m=e=>Me.getOrUndefined(wu.decodeUnknownOption(T$1)(e));var E=e=>({q:(e.get(`q`)??``).slice(0,120),state:k(e.get(`state`)??``),from:m(e.get(`from`)),to:m(e.get(`to`)),sort:Me.getOrElse(wu.decodeUnknownOption(f)(e.get(`sort`)),()=>`none`)});var R=e=>m$1(l({},e),{sort:e.sort===`none`?void 0:e.sort});var h=(e,t)=>{let i=new Date(e),s=`${i.getFullYear()}-${String(i.getMonth()+1).padStart(2,`0`)}-${String(i.getDate()).padStart(2,`0`)}`;return(t.from===void 0||s>=t.from)&&(t.to===void 0||s<=t.to)};var O=(e,t,i,s)=>{let a=i===`none`?`date-desc`:i,o=a.startsWith(`date-`)?`date`:a.startsWith(`recipient-`)?`recipient`:a.startsWith(`state-`)?`state`:`subject`,p=o===`date`?Date.parse(e.date)-Date.parse(t.date):new Intl.Collator(s,{sensitivity:`base`,numeric:!0}).compare(e[o]??``,t[o]??``);return(a.endsWith(`-asc`)?1:-1)*p||e.id.localeCompare(t.id)};var W=e=>e.receipt===null?`integrations.pending`:e.receipt.mode===`simulation`?`emailsWorkspace.simulated`:`emailsWorkspace.submitted`;var T={scheduled:`reminder.scheduled`,cancelled:`reminder.cancelled`,skipped:`reminder.skipped`,queued:`reminder.queued`};var D={"invoice-ineligible":`reminder.invoice-ineligible`,"recipient-invalid":`reminder.recipient-invalid`,"permission-revoked":`reminder.permission-revoked`,"mode-changed":`reminder.mode-changed`};export{S as a,h as c,u as d,x as f,R as i,k as l,E as n,T as o,O as r,W as s,D as t,m as u};
@@ -1 +1 @@
1
- import{$t as ZC,A as Gy,D as Fy,Dn as g,E as Ft,Gn as k_,Ir as wp,It as Us,Jr as zS,K as Ke,Nr as vd,Rn as jS,Tn as fd,Wn as kS,Wr as y_,X as LS,ft as Ol,lt as OS,pr as qS,qn as ky,rr as nv,vt as Py,w as Fb,xt as Qg,z as Ip}from"./chunk-BAHiFuUo.js";import{h as Ne,m as Ie,r as N,v as Dt}from"./main-F7D3L737.js";import"./chunk-BAe_07VM.js";import"./chunk-Dv9sNWWK.js";import"./chunk-D5qmP2Wu.js";import{t as c}from"./chunk-enci06qG.js";import{t as g$1}from"./chunk-B56nz2lI.js";import{t as k}from"./chunk-D5MFwK9L.js";import{t as S}from"./chunk-D6k6pmdU.js";import{t as f}from"./chunk-POMKwNf_.js";var $=o=>({reference:o});var j=o=>[`/purchases`,o];var A=(o,n)=>n.id;function q(o,n){if(o&1&&(Us(0,`p`,4),y_(1),fd()),o&2){let e=qS();ZC(),nv(e.i18n.t(n))}}function K(o,n){if(o&1&&(Us(0,`p`,5),y_(1),Us(2,`a`,7),y_(3),fd()()),o&2){let e=qS();ZC(),vd(` `,e.i18n.t(`supplierPaymentBatch.created`),` `),ZC(),Fy(`href`,`/api/supplier-payment-batches/`+n.id+`/download`,Qg),ZC(),nv(e.i18n.t(`supplierPaymentBatch.download`))}}function G(o,n){if(o&1&&(Us(0,`p`,6),y_(1),fd()),o&2){let e=qS();ZC(),nv(e.i18n.t(`supplierPaymentBatch.loading`))}}function J(o,n){if(o&1){let e=zS();Us(0,`tr`)(1,`td`)(2,`input`,17),Gy(`change`,function(d){let m=Ip(e).$implicit;return wp(qS(2).select(m.id,d))}),fd()(),Us(3,`th`,18)(4,`a`,19),y_(5),fd()(),Us(6,`td`),y_(7),fd(),Us(8,`td`),y_(9),fd(),Us(10,`td`),y_(11),fd()()}if(o&2){let e=n.$implicit,c=qS(2);ZC(2),Fy(`checked`,c.isSelected(e.id)),ky(`aria-label`,c.i18n.tf(`supplierPaymentBatch.selectInvoice`,k_(7,$,e.reference))),ZC(2),Fy(`routerLink`,k_(9,j,e.id)),ZC(),nv(e.reference),ZC(2),nv(e.supplierName),ZC(2),nv(e.dueDate),ZC(2),nv(c.money(e.totalCents))}}function Q(o,n){if(o&1&&(Us(0,`tr`)(1,`td`,20),y_(2),fd()()),o&2){let e=qS(2);ZC(2),nv(e.i18n.t(`supplierPaymentBatch.emptyEligible`))}}function W(o,n){if(o&1&&(Us(0,`tr`)(1,`th`,18),y_(2),fd(),Us(3,`td`),y_(4),fd(),Us(5,`td`),y_(6),fd(),Us(7,`td`),y_(8),fd(),Us(9,`td`)(10,`a`,7),y_(11),fd()()()),o&2){let e=n.$implicit,c=qS(2);ZC(2),nv(e.messageId),ZC(2),nv(e.executionDate),ZC(2),nv(e.transactionCount),ZC(2),nv(c.money(e.controlSumCents)),ZC(2),Fy(`href`,`/api/supplier-payment-batches/`+e.id+`/download`,Qg),ZC(),nv(c.i18n.t(`supplierPaymentBatch.download`))}}function X(o,n){if(o&1&&(Us(0,`tr`)(1,`td`,20),y_(2),fd()()),o&2){let e=qS(2);ZC(2),nv(e.i18n.t(`supplierPaymentBatch.emptyHistory`))}}function Y(o,n){if(o&1){let e=zS();Us(0,`section`,8)(1,`h2`,9),y_(2),fd(),Us(3,`label`,10),y_(4),Us(5,`input`,11),Gy(`input`,function(d){Ip(e);return wp(qS().setExecutionDate(d))}),fd()(),Us(6,`div`,12)(7,`table`)(8,`thead`)(9,`tr`)(10,`th`,13),y_(11),fd(),Us(12,`th`,13),y_(13),fd(),Us(14,`th`,13),y_(15),fd(),Us(16,`th`,13),y_(17),fd(),Us(18,`th`,13),y_(19),fd()()(),Us(20,`tbody`),LS(21,J,12,11,`tr`,null,A,!1,Q,3,1,`tr`),fd()()(),Us(24,`button`,14),Gy(`click`,function(){Ip(e);return wp(qS().create())}),y_(25),fd()(),Us(26,`section`,15)(27,`h2`,16),y_(28),fd(),Us(29,`div`,12)(30,`table`)(31,`thead`)(32,`tr`)(33,`th`,13),y_(34),fd(),Us(35,`th`,13),y_(36),fd(),Us(37,`th`,13),y_(38),fd(),Us(39,`th`,13),y_(40),fd(),Us(41,`th`,13),y_(42),fd()()(),Us(43,`tbody`),LS(44,W,12,6,`tr`,null,A,!1,X,3,1,`tr`),fd()()()()}if(o&2){let e=qS();ZC(2),nv(e.i18n.t(`supplierPaymentBatch.createTitle`)),ZC(2),vd(` `,e.i18n.t(`supplierPaymentBatch.executionDate`),` `),ZC(),Fy(`value`,e.executionDate()),ZC(6),nv(e.i18n.t(`supplierPaymentBatch.select`)),ZC(2),nv(e.i18n.t(`supplierInvoice.reference`)),ZC(2),nv(e.i18n.t(`supplierInvoice.supplier`)),ZC(2),nv(e.i18n.t(`supplierInvoice.dueDate`)),ZC(2),nv(e.i18n.t(`supplierInvoice.total`)),ZC(2),jS(e.eligibleInvoices()),ZC(3),Fy(`disabled`,!e.canCreate()),ZC(),vd(` `,e.i18n.t(`supplierPaymentBatch.create`),` `),ZC(3),nv(e.i18n.t(`supplierPaymentBatch.history`)),ZC(6),nv(e.i18n.t(`supplierPaymentBatch.messageId`)),ZC(2),nv(e.i18n.t(`supplierPaymentBatch.executionDate`)),ZC(2),nv(e.i18n.t(`supplierPaymentBatch.transactionCount`)),ZC(2),nv(e.i18n.t(`supplierPaymentBatch.controlSum`)),ZC(2),nv(e.i18n.t(`supplierPaymentBatch.file`)),ZC(2),jS(e.batches())}}var L=class o{i18n=g(Ie);api=g(S);invoices=Ke([]);batches=Ke([]);selectedIds=Ke([]);executionDate=Ke(``);loading=Ke(!0);busy=Ke(!1);error=Ke(void 0);created=Ke(void 0);eligibleInvoices=Ft(()=>this.invoices().filter(n=>n.status===`approved`&&n.currency===`EUR`));canCreate=Ft(()=>this.selectedIds().length>0&&this.executionDate()!==``&&!this.busy());breadcrumbs=Ft(()=>[{label:this.i18n.t(`supplierInvoice.title`),path:`/purchases`}]);constructor(){Ol(()=>{this.load()})}money(n){return Ne(n,this.i18n.language(),`EUR`)}isSelected(n){return this.selectedIds().includes(n)}select(n,e){let c=e.target instanceof HTMLInputElement&&e.target.checked;this.selectedIds.update(d=>c?[...d,n]:d.filter(m=>m!==n)),this.created.set(void 0)}setExecutionDate(n){n.target instanceof HTMLInputElement&&this.executionDate.set(n.target.value),this.created.set(void 0)}async create(){if(this.canCreate()){this.busy.set(!0),this.error.set(void 0),this.created.set(void 0);try{let n=await this.api.createPaymentBatch({requestId:crypto.randomUUID(),executionDate:this.executionDate(),invoiceIds:this.selectedIds()});if(!n.success){this.error.set(n.code);return}this.created.set(n.result),this.batches.update(e=>[n.result,...e]),this.selectedIds.set([])}catch{this.error.set(`supplierInvoice.error`)}finally{this.busy.set(!1)}}}async load(){this.loading.set(!0),this.error.set(void 0);try{let[n,e]=await Promise.all([this.api.list(),this.api.paymentBatches()]);n.success?e.success?(this.invoices.set(n.result),this.batches.set(e.result)):this.error.set(e.code):this.error.set(n.code)}catch{this.error.set(`supplierInvoice.error`)}finally{this.loading.set(!1)}}static ɵfac=function(e){return new(e||o)};static ɵcmp=Fb({type:o,selectors:[[`app-supplier-payment-batches`]],hostAttrs:[1,`page-container`],decls:11,vars:8,consts:[[`aria-labelledby`,`supplier-payment-batches-title`,1,`detail-page`,`wide-page`],[`layout`,`stacked`],[`pageBack`,``,3,`label`,`items`,`current`],[`id`,`supplier-payment-batches-title`],[`appNotice`,``,`variant`,`danger`,`role`,`alert`],[`appNotice`,``,`variant`,`success`,`role`,`status`],[`role`,`status`],[3,`href`],[`aria-labelledby`,`supplier-payment-create-title`,1,`ds-panel`,`form-panel`],[`id`,`supplier-payment-create-title`],[`for`,`supplier-payment-execution-date`,1,`field`],[`id`,`supplier-payment-execution-date`,`type`,`date`,`required`,``,1,`input`,3,`input`,`value`],[`appDataTable`,``],[`scope`,`col`],[`appButton`,``,`variant`,`primary`,`type`,`button`,3,`click`,`disabled`],[`aria-labelledby`,`supplier-payment-history-title`,1,`spacer-y-4`],[`id`,`supplier-payment-history-title`],[`type`,`checkbox`,3,`change`,`checked`],[`scope`,`row`],[3,`routerLink`],[`colspan`,`5`]],template:function(e,c){if(e&1&&(Us(0,`section`,0)(1,`app-page-header`,1),Py(2,`app-breadcrumbs`,2),Us(3,`h1`,3),y_(4),fd(),Us(5,`p`),y_(6),fd()(),OS(7,q,2,1,`p`,4),OS(8,K,4,3,`p`,5),OS(9,G,2,1,`p`,6)(10,Y,47,18),fd()),e&2){let d,m;ZC(2),Fy(`label`,c.i18n.t(`backOfficeShell.breadcrumb`))(`items`,c.breadcrumbs())(`current`,c.i18n.t(`supplierPaymentBatch.title`)),ZC(2),nv(c.i18n.t(`supplierPaymentBatch.title`)),ZC(2),nv(c.i18n.t(`supplierPaymentBatch.intro`)),ZC(),kS((d=c.error())?7:-1,d),ZC(),kS((m=c.created())?8:-1,m),ZC(),kS(c.loading()?9:10)}},dependencies:[f,N,c,k,g$1,Dt],styles:[`[_nghost-%COMP%]{display:block}.detail-page[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-4);min-inline-size:0;inline-size:100%;max-inline-size:var(--%NS%page-width-detail);margin-inline:auto;padding:var(--%NS%page-header-y) var(--%NS%page-x)}.detail-page.form-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-form)}.detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-wide)}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-2xl);overflow-wrap:anywhere}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-base);color:var(--%NS%color-muted);overflow-wrap:anywhere}.detail-page[_ngcontent-%COMP%] > button[_ngcontent-%COMP%]{justify-self:start}@media print{.detail-page[_ngcontent-%COMP%], .detail-page.form-page[_ngcontent-%COMP%], .detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:none}}`]})};export{L as SupplierPaymentBatchesPage};
1
+ import{$t as ZC,A as Gy,D as Fy,Dn as g,E as Ft,Gn as k_,Ir as wp,It as Us,Jr as zS,K as Ke,Nr as vd,Rn as jS,Tn as fd,Wn as kS,Wr as y_,X as LS,ft as Ol,lt as OS,pr as qS,qn as ky,rr as nv,vt as Py,w as Fb,xt as Qg,z as Ip}from"./chunk-BAHiFuUo.js";import{h as Ne,m as Ie,r as N,v as Dt}from"./main-LXYWXFW4.js";import"./chunk-BAe_07VM.js";import"./chunk-Dv9sNWWK.js";import"./chunk-D8Ui_APT.js";import{t as S}from"./chunk-o83QpKCY.js";import{t as f}from"./chunk-BMiFx1ci.js";import{t as c}from"./chunk-Bh2Diab5.js";import{t as g$1}from"./chunk-B56nz2lI.js";import{t as k}from"./chunk-IrDYxRzS.js";var $=o=>({reference:o});var j=o=>[`/purchases`,o];var A=(o,n)=>n.id;function q(o,n){if(o&1&&(Us(0,`p`,4),y_(1),fd()),o&2){let e=qS();ZC(),nv(e.i18n.t(n))}}function K(o,n){if(o&1&&(Us(0,`p`,5),y_(1),Us(2,`a`,7),y_(3),fd()()),o&2){let e=qS();ZC(),vd(` `,e.i18n.t(`supplierPaymentBatch.created`),` `),ZC(),Fy(`href`,`/api/supplier-payment-batches/`+n.id+`/download`,Qg),ZC(),nv(e.i18n.t(`supplierPaymentBatch.download`))}}function G(o,n){if(o&1&&(Us(0,`p`,6),y_(1),fd()),o&2){let e=qS();ZC(),nv(e.i18n.t(`supplierPaymentBatch.loading`))}}function J(o,n){if(o&1){let e=zS();Us(0,`tr`)(1,`td`)(2,`input`,17),Gy(`change`,function(d){let m=Ip(e).$implicit;return wp(qS(2).select(m.id,d))}),fd()(),Us(3,`th`,18)(4,`a`,19),y_(5),fd()(),Us(6,`td`),y_(7),fd(),Us(8,`td`),y_(9),fd(),Us(10,`td`),y_(11),fd()()}if(o&2){let e=n.$implicit,c=qS(2);ZC(2),Fy(`checked`,c.isSelected(e.id)),ky(`aria-label`,c.i18n.tf(`supplierPaymentBatch.selectInvoice`,k_(7,$,e.reference))),ZC(2),Fy(`routerLink`,k_(9,j,e.id)),ZC(),nv(e.reference),ZC(2),nv(e.supplierName),ZC(2),nv(e.dueDate),ZC(2),nv(c.money(e.totalCents))}}function Q(o,n){if(o&1&&(Us(0,`tr`)(1,`td`,20),y_(2),fd()()),o&2){let e=qS(2);ZC(2),nv(e.i18n.t(`supplierPaymentBatch.emptyEligible`))}}function W(o,n){if(o&1&&(Us(0,`tr`)(1,`th`,18),y_(2),fd(),Us(3,`td`),y_(4),fd(),Us(5,`td`),y_(6),fd(),Us(7,`td`),y_(8),fd(),Us(9,`td`)(10,`a`,7),y_(11),fd()()()),o&2){let e=n.$implicit,c=qS(2);ZC(2),nv(e.messageId),ZC(2),nv(e.executionDate),ZC(2),nv(e.transactionCount),ZC(2),nv(c.money(e.controlSumCents)),ZC(2),Fy(`href`,`/api/supplier-payment-batches/`+e.id+`/download`,Qg),ZC(),nv(c.i18n.t(`supplierPaymentBatch.download`))}}function X(o,n){if(o&1&&(Us(0,`tr`)(1,`td`,20),y_(2),fd()()),o&2){let e=qS(2);ZC(2),nv(e.i18n.t(`supplierPaymentBatch.emptyHistory`))}}function Y(o,n){if(o&1){let e=zS();Us(0,`section`,8)(1,`h2`,9),y_(2),fd(),Us(3,`label`,10),y_(4),Us(5,`input`,11),Gy(`input`,function(d){Ip(e);return wp(qS().setExecutionDate(d))}),fd()(),Us(6,`div`,12)(7,`table`)(8,`thead`)(9,`tr`)(10,`th`,13),y_(11),fd(),Us(12,`th`,13),y_(13),fd(),Us(14,`th`,13),y_(15),fd(),Us(16,`th`,13),y_(17),fd(),Us(18,`th`,13),y_(19),fd()()(),Us(20,`tbody`),LS(21,J,12,11,`tr`,null,A,!1,Q,3,1,`tr`),fd()()(),Us(24,`button`,14),Gy(`click`,function(){Ip(e);return wp(qS().create())}),y_(25),fd()(),Us(26,`section`,15)(27,`h2`,16),y_(28),fd(),Us(29,`div`,12)(30,`table`)(31,`thead`)(32,`tr`)(33,`th`,13),y_(34),fd(),Us(35,`th`,13),y_(36),fd(),Us(37,`th`,13),y_(38),fd(),Us(39,`th`,13),y_(40),fd(),Us(41,`th`,13),y_(42),fd()()(),Us(43,`tbody`),LS(44,W,12,6,`tr`,null,A,!1,X,3,1,`tr`),fd()()()()}if(o&2){let e=qS();ZC(2),nv(e.i18n.t(`supplierPaymentBatch.createTitle`)),ZC(2),vd(` `,e.i18n.t(`supplierPaymentBatch.executionDate`),` `),ZC(),Fy(`value`,e.executionDate()),ZC(6),nv(e.i18n.t(`supplierPaymentBatch.select`)),ZC(2),nv(e.i18n.t(`supplierInvoice.reference`)),ZC(2),nv(e.i18n.t(`supplierInvoice.supplier`)),ZC(2),nv(e.i18n.t(`supplierInvoice.dueDate`)),ZC(2),nv(e.i18n.t(`supplierInvoice.total`)),ZC(2),jS(e.eligibleInvoices()),ZC(3),Fy(`disabled`,!e.canCreate()),ZC(),vd(` `,e.i18n.t(`supplierPaymentBatch.create`),` `),ZC(3),nv(e.i18n.t(`supplierPaymentBatch.history`)),ZC(6),nv(e.i18n.t(`supplierPaymentBatch.messageId`)),ZC(2),nv(e.i18n.t(`supplierPaymentBatch.executionDate`)),ZC(2),nv(e.i18n.t(`supplierPaymentBatch.transactionCount`)),ZC(2),nv(e.i18n.t(`supplierPaymentBatch.controlSum`)),ZC(2),nv(e.i18n.t(`supplierPaymentBatch.file`)),ZC(2),jS(e.batches())}}var L=class o{i18n=g(Ie);api=g(S);invoices=Ke([]);batches=Ke([]);selectedIds=Ke([]);executionDate=Ke(``);loading=Ke(!0);busy=Ke(!1);error=Ke(void 0);created=Ke(void 0);eligibleInvoices=Ft(()=>this.invoices().filter(n=>n.status===`approved`&&n.currency===`EUR`));canCreate=Ft(()=>this.selectedIds().length>0&&this.executionDate()!==``&&!this.busy());breadcrumbs=Ft(()=>[{label:this.i18n.t(`supplierInvoice.title`),path:`/purchases`}]);constructor(){Ol(()=>{this.load()})}money(n){return Ne(n,this.i18n.language(),`EUR`)}isSelected(n){return this.selectedIds().includes(n)}select(n,e){let c=e.target instanceof HTMLInputElement&&e.target.checked;this.selectedIds.update(d=>c?[...d,n]:d.filter(m=>m!==n)),this.created.set(void 0)}setExecutionDate(n){n.target instanceof HTMLInputElement&&this.executionDate.set(n.target.value),this.created.set(void 0)}async create(){if(this.canCreate()){this.busy.set(!0),this.error.set(void 0),this.created.set(void 0);try{let n=await this.api.createPaymentBatch({requestId:crypto.randomUUID(),executionDate:this.executionDate(),invoiceIds:this.selectedIds()});if(!n.success){this.error.set(n.code);return}this.created.set(n.result),this.batches.update(e=>[n.result,...e]),this.selectedIds.set([])}catch{this.error.set(`supplierInvoice.error`)}finally{this.busy.set(!1)}}}async load(){this.loading.set(!0),this.error.set(void 0);try{let[n,e]=await Promise.all([this.api.list(),this.api.paymentBatches()]);n.success?e.success?(this.invoices.set(n.result),this.batches.set(e.result)):this.error.set(e.code):this.error.set(n.code)}catch{this.error.set(`supplierInvoice.error`)}finally{this.loading.set(!1)}}static ɵfac=function(e){return new(e||o)};static ɵcmp=Fb({type:o,selectors:[[`app-supplier-payment-batches`]],hostAttrs:[1,`page-container`],decls:11,vars:8,consts:[[`aria-labelledby`,`supplier-payment-batches-title`,1,`detail-page`,`wide-page`],[`layout`,`stacked`],[`pageBack`,``,3,`label`,`items`,`current`],[`id`,`supplier-payment-batches-title`],[`appNotice`,``,`variant`,`danger`,`role`,`alert`],[`appNotice`,``,`variant`,`success`,`role`,`status`],[`role`,`status`],[3,`href`],[`aria-labelledby`,`supplier-payment-create-title`,1,`ds-panel`,`form-panel`],[`id`,`supplier-payment-create-title`],[`for`,`supplier-payment-execution-date`,1,`field`],[`id`,`supplier-payment-execution-date`,`type`,`date`,`required`,``,1,`input`,3,`input`,`value`],[`appDataTable`,``],[`scope`,`col`],[`appButton`,``,`variant`,`primary`,`type`,`button`,3,`click`,`disabled`],[`aria-labelledby`,`supplier-payment-history-title`,1,`spacer-y-4`],[`id`,`supplier-payment-history-title`],[`type`,`checkbox`,3,`change`,`checked`],[`scope`,`row`],[3,`routerLink`],[`colspan`,`5`]],template:function(e,c){if(e&1&&(Us(0,`section`,0)(1,`app-page-header`,1),Py(2,`app-breadcrumbs`,2),Us(3,`h1`,3),y_(4),fd(),Us(5,`p`),y_(6),fd()(),OS(7,q,2,1,`p`,4),OS(8,K,4,3,`p`,5),OS(9,G,2,1,`p`,6)(10,Y,47,18),fd()),e&2){let d,m;ZC(2),Fy(`label`,c.i18n.t(`backOfficeShell.breadcrumb`))(`items`,c.breadcrumbs())(`current`,c.i18n.t(`supplierPaymentBatch.title`)),ZC(2),nv(c.i18n.t(`supplierPaymentBatch.title`)),ZC(2),nv(c.i18n.t(`supplierPaymentBatch.intro`)),ZC(),kS((d=c.error())?7:-1,d),ZC(),kS((m=c.created())?8:-1,m),ZC(),kS(c.loading()?9:10)}},dependencies:[f,N,c,k,g$1,Dt],styles:[`[_nghost-%COMP%]{display:block}.detail-page[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-4);min-inline-size:0;inline-size:100%;max-inline-size:var(--%NS%page-width-detail);margin-inline:auto;padding:var(--%NS%page-header-y) var(--%NS%page-x)}.detail-page.form-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-form)}.detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-wide)}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-2xl);overflow-wrap:anywhere}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-base);color:var(--%NS%color-muted);overflow-wrap:anywhere}.detail-page[_ngcontent-%COMP%] > button[_ngcontent-%COMP%]{justify-self:start}@media print{.detail-page[_ngcontent-%COMP%], .detail-page.form-page[_ngcontent-%COMP%], .detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:none}}`]})};export{L as SupplierPaymentBatchesPage};
@@ -1 +1 @@
1
- import{_ as o}from"./main-F7D3L737.js";var i=(e,t)=>e===`accountant`?o(t,`team.accountant`):e===`accounting-validator`?o(t,`team.accountingValidator`):e===`accounting-reader`?o(t,`team.accountingReader`):e===`collaborator`?o(t,`team.collaborator`):e;var r={columns:[{kind:`text`,key:`name`,value:e=>e.displayName},{kind:`text`,key:`email`,value:e=>e.email},{kind:`text`,key:`profile`,value:(e,t)=>i(e.profile,t)},{kind:`text`,key:`status`,value:(e,t)=>o(t,e.disabledAt===null?`team.active`:`team.disabled`)}],defaultSort:`nameAsc`,id:e=>e.id,searchKeys:[`displayName`,`email`],parameters:{q:`memberQ`,sort:`memberSort`,filter:`memberFilter`},filters:[{value:`active`,label:`team.active`},{value:`disabled`,label:`team.disabled`}],matchesFilter:(e,t)=>e.disabledAt===null==(t===`active`)};var n={columns:[{kind:`text`,key:`name`,value:e=>e.displayName},{kind:`text`,key:`email`,value:e=>e.email},{kind:`text`,key:`profile`,value:(e,t)=>i(e.profile,t)},{kind:`number`,key:`date`,value:e=>e.createdAt},{kind:`number`,key:`expires`,value:e=>e.expiresAt}],defaultSort:`dateDesc`,id:e=>e.id,searchKeys:[`displayName`,`email`],parameters:{q:`invitationQ`,sort:`invitationSort`,filter:`invitationFilter`},filters:[{value:`accountant`,label:`team.accountant`},{value:`accounting-validator`,label:`team.accountingValidator`},{value:`accounting-reader`,label:`team.accountingReader`},{value:`collaborator`,label:`team.collaborator`}],matchesFilter:(e,t)=>e.profile===t};var l={columns:[{kind:`text`,key:`name`,value:e=>e.name},{kind:`number`,key:`date`,value:e=>e.createdAt},{kind:`number`,key:`expires`,value:e=>e.expiresAt},{kind:`number`,key:`used`,value:e=>e.lastUsedAt}],defaultSort:`dateDesc`,id:e=>e.id,searchKeys:[`name`,`permissions`],filters:[{value:`revoked`,label:`configurationWorkspace.revokedTokens`},{value:`notRevoked`,label:`configurationWorkspace.notRevokedTokens`}],matchesFilter:(e,t)=>e.revokedAt!==null==(t===`revoked`)};var s={columns:[{kind:`text`,key:`name`,value:e=>e.name},{kind:`text`,key:`conditions`,value:e=>e.conditions}],defaultSort:`nameAsc`,id:e=>e.id,searchKeys:[`name`,`conditions`]};var u={columns:[{kind:`number`,key:`date`,value:e=>Date.parse(e.createdAt)},{kind:`text`,key:`subject`,value:e=>e.request.subject},{kind:`text`,key:`status`,value:(e,t)=>o(t,`emailTest.${e.status}`)}],defaultSort:`dateDesc`,id:e=>e.request.requestId,searchKeys:[`request.subject`],filters:[{value:`delivered`,label:`emailTest.delivered`},{value:`failed`,label:`emailTest.failed`}],matchesFilter:(e,t)=>e.status===t};var c={columns:[{kind:`number`,key:`date`,value:e=>Date.parse(e.createdAt)},{kind:`text`,key:`invoice`,value:e=>e.invoiceNumber},{kind:`number`,key:`amount`,value:e=>e.amountCents},{kind:`text`,key:`status`,value:(e,t)=>o(t,`checkout.${e.status}`)}],defaultSort:`dateDesc`,id:e=>e.request.requestId,searchKeys:[`invoiceNumber`],filters:[{value:`paid`,label:`checkout.paid`},{value:`open`,label:`checkout.open`}],matchesFilter:(e,t)=>e.status===t};var d={columns:[{kind:`number`,key:`date`,value:e=>Date.parse(e.occurredAt)},{kind:`text`,key:`action`,value:e=>e.action},{kind:`text`,key:`resource`,value:e=>`${e.resourceType} ${e.resourceId}`},{kind:`text`,key:`actor`,value:e=>e.actorUserId}],defaultSort:`dateDesc`,id:e=>e.id,searchKeys:[`action`,`resourceType`,`resourceId`,`actorUserId`],parameters:{q:`pageQ`,sort:`pageSort`,filter:`pageFilter`}};export{r as a,n as i,d as n,s as o,l as r,u as s,c as t};
1
+ import{_ as o}from"./main-LXYWXFW4.js";var i=(e,t)=>e===`accountant`?o(t,`team.accountant`):e===`accounting-validator`?o(t,`team.accountingValidator`):e===`accounting-reader`?o(t,`team.accountingReader`):e===`collaborator`?o(t,`team.collaborator`):e;var r={columns:[{kind:`text`,key:`name`,value:e=>e.displayName},{kind:`text`,key:`email`,value:e=>e.email},{kind:`text`,key:`profile`,value:(e,t)=>i(e.profile,t)},{kind:`text`,key:`status`,value:(e,t)=>o(t,e.disabledAt===null?`team.active`:`team.disabled`)}],defaultSort:`nameAsc`,id:e=>e.id,searchKeys:[`displayName`,`email`],parameters:{q:`memberQ`,sort:`memberSort`,filter:`memberFilter`},filters:[{value:`active`,label:`team.active`},{value:`disabled`,label:`team.disabled`}],matchesFilter:(e,t)=>e.disabledAt===null==(t===`active`)};var n={columns:[{kind:`text`,key:`name`,value:e=>e.displayName},{kind:`text`,key:`email`,value:e=>e.email},{kind:`text`,key:`profile`,value:(e,t)=>i(e.profile,t)},{kind:`number`,key:`date`,value:e=>e.createdAt},{kind:`number`,key:`expires`,value:e=>e.expiresAt}],defaultSort:`dateDesc`,id:e=>e.id,searchKeys:[`displayName`,`email`],parameters:{q:`invitationQ`,sort:`invitationSort`,filter:`invitationFilter`},filters:[{value:`accountant`,label:`team.accountant`},{value:`accounting-validator`,label:`team.accountingValidator`},{value:`accounting-reader`,label:`team.accountingReader`},{value:`collaborator`,label:`team.collaborator`}],matchesFilter:(e,t)=>e.profile===t};var l={columns:[{kind:`text`,key:`name`,value:e=>e.name},{kind:`number`,key:`date`,value:e=>e.createdAt},{kind:`number`,key:`expires`,value:e=>e.expiresAt},{kind:`number`,key:`used`,value:e=>e.lastUsedAt}],defaultSort:`dateDesc`,id:e=>e.id,searchKeys:[`name`,`permissions`],filters:[{value:`revoked`,label:`configurationWorkspace.revokedTokens`},{value:`notRevoked`,label:`configurationWorkspace.notRevokedTokens`}],matchesFilter:(e,t)=>e.revokedAt!==null==(t===`revoked`)};var s={columns:[{kind:`text`,key:`name`,value:e=>e.name},{kind:`text`,key:`conditions`,value:e=>e.conditions}],defaultSort:`nameAsc`,id:e=>e.id,searchKeys:[`name`,`conditions`]};var u={columns:[{kind:`number`,key:`date`,value:e=>Date.parse(e.createdAt)},{kind:`text`,key:`subject`,value:e=>e.request.subject},{kind:`text`,key:`status`,value:(e,t)=>o(t,`emailTest.${e.status}`)}],defaultSort:`dateDesc`,id:e=>e.request.requestId,searchKeys:[`request.subject`],filters:[{value:`delivered`,label:`emailTest.delivered`},{value:`failed`,label:`emailTest.failed`}],matchesFilter:(e,t)=>e.status===t};var c={columns:[{kind:`number`,key:`date`,value:e=>Date.parse(e.createdAt)},{kind:`text`,key:`invoice`,value:e=>e.invoiceNumber},{kind:`number`,key:`amount`,value:e=>e.amountCents},{kind:`text`,key:`status`,value:(e,t)=>o(t,`checkout.${e.status}`)}],defaultSort:`dateDesc`,id:e=>e.request.requestId,searchKeys:[`invoiceNumber`],filters:[{value:`paid`,label:`checkout.paid`},{value:`open`,label:`checkout.open`}],matchesFilter:(e,t)=>e.status===t};var d={columns:[{kind:`number`,key:`date`,value:e=>Date.parse(e.occurredAt)},{kind:`text`,key:`action`,value:e=>e.action},{kind:`text`,key:`resource`,value:e=>`${e.resourceType} ${e.resourceId}`},{kind:`text`,key:`actor`,value:e=>e.actorUserId}],defaultSort:`dateDesc`,id:e=>e.id,searchKeys:[`action`,`resourceType`,`resourceId`,`actorUserId`],parameters:{q:`pageQ`,sort:`pageSort`,filter:`pageFilter`}};export{r as a,n as i,d as n,s as o,l as r,u as s,c as t};
@@ -1 +1 @@
1
- import{$t as ZC,A as Gy,D as Fy,Dn as g,E as Ft,Gn as k_,Ir as wp,It as Us,Jr as zS,K as Ke,Nr as vd,Rn as jS,Sr as rv,Tn as fd,V as Iy,Wn as kS,Wr as y_,X as LS,ft as Ol,lt as OS,pr as qS,rr as nv,ut as O_,vt as Py,w as Fb,z as Ip}from"./chunk-BAHiFuUo.js";import{T as ue$1,h as Ne,m as Ie$1,r as N,v as Dt,y as G}from"./main-F7D3L737.js";import"./chunk-BAe_07VM.js";import"./chunk-Dv9sNWWK.js";import{Zt as I0}from"./chunk-D5qmP2Wu.js";import"./chunk-BzUDWIzm.js";import"./chunk-CczD0yXn.js";import"./chunk-DsaNNeZe.js";import{t as l}from"./chunk-BVszSMJC.js";import{t as c}from"./chunk-enci06qG.js";import{t as g$1}from"./chunk-B56nz2lI.js";import{t as k}from"./chunk-D5MFwK9L.js";import{t as P}from"./chunk-niXXbm7H.js";import{t as S}from"./chunk-D6k6pmdU.js";import{t as f}from"./chunk-POMKwNf_.js";import{n as h,r as v,t as C}from"./chunk-CARNiCDb2.js";var ie=()=>[`edit`];var ne=i=>[`/purchases`,i];var Z=(i,n)=>n.id;function ae(i,n){if(i&1&&(Us(0,`h1`,11),y_(1),fd(),Us(2,`p`),y_(3),fd()),i&2){let e=n,t=qS();ZC(),nv(e.reference),ZC(2),rv(``,e.supplierName,` · `,t.status())}}function oe(i,n){if(i&1){let e=zS();Us(0,`button`,13),Gy(`click`,function(){Ip(e);return wp(qS(2).createCredit())}),y_(1),fd()}if(i&2){let e=qS(2);Fy(`disabled`,e.busy()),ZC(),vd(` `,e.i18n.t(`supplierInvoice.creditAction`),` `)}}function re(i,n){i&1&&Iy(0,oe,2,2,`button`,12),i&2&&Fy(`appCan`,`supplier-invoice.create`)}function ce(i,n){if(i&1&&(Us(0,`a`,5),y_(1),fd()),i&2){let e=qS(2);Fy(`routerLink`,O_(2,ie)),ZC(),nv(e.i18n.t(`supplierInvoice.edit`))}}function le(i,n){i&1&&Iy(0,ce,2,3,`a`,14),i&2&&Fy(`appCan`,`supplier-invoice.update`)}function pe(i,n){if(i&1){let e=zS();Us(0,`button`,16),Gy(`click`,function(){Ip(e);return wp(qS(2).transition(`confirm`))}),y_(1),fd()}if(i&2){let e=qS(2);Fy(`disabled`,e.busy()),ZC(),vd(` `,e.i18n.t(`supplierInvoice.confirmAction`),` `)}}function de(i,n){i&1&&Iy(0,pe,2,2,`button`,15),i&2&&Fy(`appCan`,`supplier-invoice.update`)}function se(i,n){if(i&1){let e=zS();Us(0,`button`,18),Gy(`click`,function(){Ip(e);return wp(qS(2).transition(`approve`))}),y_(1),fd()}if(i&2){let e=qS(2);Fy(`disabled`,e.busy()),ZC(),vd(` `,e.i18n.t(`supplierInvoice.approveAction`),` `)}}function ue(i,n){i&1&&Iy(0,se,2,2,`button`,17),i&2&&Fy(`appCan`,`supplier-invoice.approve`)}function ve(i,n){if(i&1){let e=zS();Us(0,`button`,20),Gy(`click`,function(){Ip(e);return wp(qS(2).transition(`cancel`))}),y_(1),fd()}if(i&2){let e=qS(2);Fy(`disabled`,e.busy()),ZC(),vd(` `,e.i18n.t(`supplierInvoice.cancelAction`),` `)}}function me(i,n){i&1&&Iy(0,ve,2,2,`button`,19),i&2&&Fy(`appCan`,`supplier-invoice.update`)}function _e(i,n){if(i&1&&(Us(0,`p`,9),y_(1),fd()),i&2){let e=qS();ZC(),nv(e.i18n.t(n))}}function ye(i,n){if(i&1&&(Us(0,`p`,10),y_(1),fd()),i&2){let e=qS();ZC(),nv(e.i18n.t(`supplierInvoice.loadingDetail`))}}function xe(i,n){if(i&1&&(Us(0,`div`)(1,`dt`),y_(2),fd(),Us(3,`dd`)(4,`a`,31),y_(5),fd()()()),i&2){let e=qS(),t=qS();ZC(2),nv(t.i18n.t(`supplierInvoice.sourceInvoice`)),ZC(2),Fy(`routerLink`,k_(3,ne,e.sourceInvoiceId)),ZC(),nv(t.i18n.t(`supplierInvoice.openSourceInvoice`))}}function fe(i,n){if(i&1){let e=zS();Us(0,`label`,32),y_(1),Us(2,`input`,33),Gy(`change`,function(p){Ip(e);return wp(qS(2).addEvidence(p))}),fd()()}if(i&2){let e=qS(2);ZC(),nv(e.i18n.t(`supplierInvoice.evidenceAdd`)),ZC(),Fy(`disabled`,e.busy())}}function be(i,n){if(i&1&&(Us(0,`p`,27),y_(1),fd()),i&2){let e=qS(2);ZC(),nv(e.i18n.t(`supplierInvoice.evidenceEmpty`))}}function ge(i,n){if(i&1){let e=zS();Us(0,`li`,28)(1,`span`),y_(2),fd(),Us(3,`button`,34),Gy(`click`,function(){let p=Ip(e).$implicit;return wp(qS(2).downloadEvidence(p))}),y_(4),fd()()}if(i&2){let e=n.$implicit,t=qS(2);ZC(2),rv(``,e.fileName,` · `,e.mediaType),ZC(),Fy(`disabled`,t.busy()),ZC(),vd(` `,t.i18n.t(`supplierInvoice.evidenceDownload`),` `)}}function Ce(i,n){if(i&1&&(Us(0,`tr`)(1,`th`,35),y_(2),fd(),Us(3,`td`),y_(4),fd(),Us(5,`td`),y_(6),fd(),Us(7,`td`),y_(8),fd()()),i&2){let e=n.$implicit,t=qS(2);ZC(2),nv(e.description),ZC(2),nv(t.money(e.netTotalCents)),ZC(2),vd(``,t.vatRate(e.vatRateBasisPoints),`\xA0%`),ZC(2),nv(t.money(e.totalCents))}}function Ie(i,n){if(i&1&&(Us(0,`div`,21)(1,`app-detail-panel`,22)(2,`dl`,23)(3,`div`)(4,`dt`),y_(5),fd(),Us(6,`dd`),y_(7),fd()(),Us(8,`div`)(9,`dt`),y_(10),fd(),Us(11,`dd`),y_(12),fd()(),Us(13,`div`)(14,`dt`),y_(15),fd(),Us(16,`dd`),y_(17),fd()(),OS(18,xe,6,5,`div`),Us(19,`div`)(20,`dt`),y_(21),fd(),Us(22,`dd`),y_(23),fd()(),Us(24,`div`)(25,`dt`),y_(26),fd(),Us(27,`dd`),y_(28),fd()()()(),Us(29,`app-detail-panel`,22)(30,`dl`,23)(31,`div`)(32,`dt`),y_(33),fd(),Us(34,`dd`),y_(35),fd()(),Us(36,`div`)(37,`dt`),y_(38),fd(),Us(39,`dd`),y_(40),fd()(),Us(41,`div`)(42,`dt`),y_(43),fd(),Us(44,`dd`),y_(45),fd()()()()(),Us(46,`section`,24)(47,`h2`,25),y_(48),fd(),Iy(49,fe,3,2,`label`,26),OS(50,be,2,1,`p`,27),Us(51,`ul`),LS(52,ge,5,4,`li`,28,Z),fd()(),Us(54,`div`,29)(55,`table`)(56,`thead`)(57,`tr`)(58,`th`,30),y_(59),fd(),Us(60,`th`,30),y_(61),fd(),Us(62,`th`,30),y_(63),fd(),Us(64,`th`,30),y_(65),fd()()(),Us(66,`tbody`),LS(67,Ce,9,4,`tr`,null,Z),fd()()()),i&2){let e=n,t=qS();ZC(),Fy(`heading`,t.i18n.t(`supplierInvoice.details`)),ZC(4),nv(t.i18n.t(`supplierInvoice.kind`)),ZC(2),nv(t.i18n.t(t.documentKind())),ZC(3),nv(t.i18n.t(`supplier.taxTreatment`)),ZC(2),nv(t.i18n.t(t.taxTreatment())),ZC(3),nv(t.i18n.t(`supplierInvoice.invoiceDate`)),ZC(2),nv(e.invoiceDate),ZC(),kS(e.sourceInvoiceId?18:-1),ZC(3),nv(t.i18n.t(`supplierInvoice.dueDate`)),ZC(2),nv(e.dueDate),ZC(3),nv(t.i18n.t(`supplierInvoice.source`)),ZC(2),nv(t.source()),ZC(),Fy(`heading`,t.i18n.t(`supplierInvoice.totals`)),ZC(4),nv(t.i18n.t(`supplierInvoice.net`)),ZC(2),nv(t.money(e.netTotalCents)),ZC(3),nv(t.i18n.t(`supplierInvoice.vat`)),ZC(2),nv(t.money(e.vatTotalCents)),ZC(3),nv(t.i18n.t(`supplierInvoice.total`)),ZC(2),nv(t.money(e.totalCents)),ZC(3),nv(t.i18n.t(`supplierInvoice.evidence`)),ZC(),Fy(`appCan`,`supplier-invoice.update`),ZC(),kS(t.evidence().length?-1:50),ZC(2),jS(t.evidence()),ZC(7),nv(t.i18n.t(`supplierInvoice.description`)),ZC(2),nv(t.i18n.t(`supplierInvoice.net`)),ZC(2),nv(t.i18n.t(`supplierInvoice.vatRate`)),ZC(2),nv(t.i18n.t(`supplierInvoice.total`)),ZC(2),jS(e.lines)}}var ee=class i{i18n=g(Ie$1);api=g(S);route=g(G);router=g(ue$1);confirmation=g(P);invoice=Ke(void 0);loading=Ke(!0);busy=Ke(!1);error=Ke(void 0);evidence=Ke([]);editable=Ft(()=>this.invoice()?.status===`draft`);canConfirm=Ft(()=>this.invoice()?.status===`draft`);canApprove=Ft(()=>this.invoice()?.status===`confirmed`);canCancel=Ft(()=>[`draft`,`confirmed`].includes(this.invoice()?.status??``));canCreateCredit=Ft(()=>{let n=this.invoice();return n===void 0||n.documentKind!==`invoice`?!1:[`confirmed`,`approved`,`paid`].includes(n.status)});breadcrumbs=Ft(()=>[{label:this.i18n.t(`supplierInvoice.title`),path:`/purchases`}]);constructor(){Ol(()=>{this.load()})}async load(){let n=this.route.snapshot.paramMap.get(`invoiceId`);if(n)try{let[e,t]=await Promise.all([this.api.get(n),this.api.evidence(n)]);e.success?this.invoice.set(e.result):this.error.set(e.code),t.success&&this.evidence.set(t.result)}catch{this.error.set(`supplierInvoice.error`)}finally{this.loading.set(!1)}}money(n){return Ne(n,this.i18n.language(),this.invoice()?.currency??`EUR`)}status(){let n=this.invoice()?.status;return n?this.i18n.t(`supplierInvoice.status.${n}`):``}source(){let n=this.invoice()?.source;return n?this.i18n.t(`supplierInvoice.source.${n}`):``}documentKind(){return this.invoice()?.documentKind===`credit`?`supplierInvoice.kind.credit`:`supplierInvoice.kind.invoice`}taxTreatment(){let n=this.invoice()?.taxTreatment;return n===`eu-reverse-charge`?`supplier.taxTreatment.eu`:n===`non-eu-import`?`supplier.taxTreatment.import`:n===`foreign-local-tax`?`supplier.taxTreatment.local`:`supplier.taxTreatment.france`}vatRate(n){return n/100}async transition(n){let e=this.invoice();if(!(!e||this.busy())&&await this.confirmation.request(this.i18n.t(`supplierInvoice.confirm.${n}`))){this.busy.set(!0);try{let t=await this.api.transition(e.id,n,e.version);t.success?this.invoice.set(t.result):this.error.set(t.code)}catch{this.error.set(`supplierInvoice.error`)}finally{this.busy.set(!1)}}}async createCredit(){let n=this.invoice();if(!(n===void 0||this.busy())){this.busy.set(!0);try{let e=await this.api.createCredit({requestId:crypto.randomUUID(),sourceInvoiceId:n.id});if(!e.success){this.error.set(e.code);return}await this.router.navigate([`/purchases`,e.result.id,`edit`])}catch{this.error.set(`supplierInvoice.error`)}finally{this.busy.set(!1)}}}async addEvidence(n){let e=this.invoice();if(!(n.target instanceof HTMLInputElement))return;let t=n.target,p=t.files?.[0];if(!(e===void 0||p===void 0||this.busy())){this.busy.set(!0);try{let D=(await new Promise((w,te)=>{let S=new FileReader;S.onload=()=>w(String(S.result)),S.onerror=()=>te(S.error),S.readAsDataURL(p)})).split(`,`)[1]??``,E=await this.api.createEvidence({invoiceId:e.id,fileName:p.name,mediaType:p.type||`application/octet-stream`,contentBase64:D});E.success?this.evidence.update(w=>[E.result,...w]):this.error.set(E.code)}catch{this.error.set(`supplierInvoice.error`)}finally{t.value=``,this.busy.set(!1)}}}async downloadEvidence(n){if(!this.busy()){this.busy.set(!0);try{let e=await this.api.downloadEvidence(n.id),t=URL.createObjectURL(e),p=document.createElement(`a`);p.href=t,p.download=n.fileName,p.click(),URL.revokeObjectURL(t)}catch{this.error.set(`supplierInvoice.error`)}finally{this.busy.set(!1)}}}static ɵfac=function(e){return new(e||i)};static ɵcmp=Fb({type:i,selectors:[[`app-supplier-invoice-detail`]],hostAttrs:[1,`page-container`],decls:13,vars:12,consts:[[`aria-labelledby`,`supplier-invoice-title`,1,`detail-page`,`wide-page`],[`layout`,`stacked`],[`pageBack`,``,3,`label`,`items`,`current`],[`pageActions`,``,1,`spacer-x-2`],[`appButton`,``,`icon`,`invoice`,`type`,`button`,3,`disabled`],[`appLinkButton`,``,`icon`,`pencil`,3,`routerLink`],[`appButton`,``,`icon`,`check`,`type`,`button`,3,`disabled`],[`appButton`,``,`icon`,`check`,`variant`,`primary`,`type`,`button`,3,`disabled`],[`appButton`,``,`icon`,`close`,`type`,`button`,3,`disabled`],[`appNotice`,``,`variant`,`danger`,`role`,`alert`],[`role`,`status`],[`id`,`supplier-invoice-title`],[`appButton`,``,`icon`,`invoice`,`type`,`button`,3,`disabled`,`click`,4,`appCan`],[`appButton`,``,`icon`,`invoice`,`type`,`button`,3,`click`,`disabled`],[`appLinkButton`,``,`icon`,`pencil`,3,`routerLink`,4,`appCan`],[`appButton`,``,`icon`,`check`,`type`,`button`,3,`disabled`,`click`,4,`appCan`],[`appButton`,``,`icon`,`check`,`type`,`button`,3,`click`,`disabled`],[`appButton`,``,`icon`,`check`,`variant`,`primary`,`type`,`button`,3,`disabled`,`click`,4,`appCan`],[`appButton`,``,`icon`,`check`,`variant`,`primary`,`type`,`button`,3,`click`,`disabled`],[`appButton`,``,`icon`,`close`,`type`,`button`,3,`disabled`,`click`,4,`appCan`],[`appButton`,``,`icon`,`close`,`type`,`button`,3,`click`,`disabled`],[`appDetailGrid`,``,1,`detail-grid`],[1,`detail-panel`,3,`heading`],[`appDetailList`,``],[`aria-labelledby`,`supplier-evidence-title`,1,`ds-panel`,`evidence-panel`],[`id`,`supplier-evidence-title`],[`class`,`field`,`for`,`supplier-evidence-file`,4,`appCan`],[1,`muted`],[1,`spacer-x-2`],[`appDataTable`,``],[`scope`,`col`],[3,`routerLink`],[`for`,`supplier-evidence-file`,1,`field`],[`id`,`supplier-evidence-file`,`type`,`file`,3,`change`,`disabled`],[`appButton`,``,`type`,`button`,3,`click`,`disabled`],[`scope`,`row`]],template:function(e,t){if(e&1&&(Us(0,`section`,0)(1,`app-page-header`,1),Py(2,`app-breadcrumbs`,2),OS(3,ae,4,3),Us(4,`div`,3),OS(5,re,1,1,`button`,4),OS(6,le,1,1,`a`,5),OS(7,de,1,1,`button`,6),OS(8,ue,1,1,`button`,7),OS(9,me,1,1,`button`,8),fd()(),OS(10,_e,2,1,`p`,9),OS(11,ye,2,1,`p`,10),OS(12,Ie,69,26),fd()),e&2){let p,m,D;ZC(2),Fy(`label`,t.i18n.t(`backOfficeShell.breadcrumb`))(`items`,t.breadcrumbs())(`current`,t.invoice()?.reference??t.i18n.t(`supplierInvoice.loadingDetail`)),ZC(),kS((p=t.invoice())?3:-1,p),ZC(2),kS(t.canCreateCredit()?5:-1),ZC(),kS(t.editable()?6:-1),ZC(),kS(t.canConfirm()?7:-1),ZC(),kS(t.canApprove()?8:-1),ZC(),kS(t.canCancel()?9:-1),ZC(),kS((m=t.error())?10:-1,m),ZC(),kS(t.loading()?11:-1),ZC(),kS((D=t.invoice())?12:-1,D)}},dependencies:[f,N,l,c,C,v,h,k,g$1,Dt],styles:[`[_nghost-%COMP%]{display:block}.detail-page[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-4);min-inline-size:0;inline-size:100%;max-inline-size:var(--%NS%page-width-detail);margin-inline:auto;padding:var(--%NS%page-header-y) var(--%NS%page-x)}.detail-page.form-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-form)}.detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-wide)}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-2xl);overflow-wrap:anywhere}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-base);color:var(--%NS%color-muted);overflow-wrap:anywhere}.detail-page[_ngcontent-%COMP%] > button[_ngcontent-%COMP%]{justify-self:start}@media print{.detail-page[_ngcontent-%COMP%], .detail-page.form-page[_ngcontent-%COMP%], .detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:none}}.evidence-panel[_ngcontent-%COMP%]{padding:var(--%NS%panel-padding)}.evidence-panel[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-lg)}app-detail-panel[_ngcontent-%COMP%] dt[_ngcontent-%COMP%]{color:var(--%NS%color-muted);font-size:var(--%NS%text-sm);font-weight:700}app-detail-panel[_ngcontent-%COMP%] dd[_ngcontent-%COMP%]{margin:var(--%NS%space-1) 0 0;overflow-wrap:anywhere}.evidence-panel[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-4)}.evidence-panel[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-3);margin:0;padding:0;list-style:none}.evidence-panel[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{justify-content:space-between}`]})};export{ee as SupplierInvoiceDetail};
1
+ import{$t as ZC,A as Gy,D as Fy,Dn as g,E as Ft,Gn as k_,Ir as wp,It as Us,Jr as zS,K as Ke,Nr as vd,Rn as jS,Sr as rv,Tn as fd,V as Iy,Wn as kS,Wr as y_,X as LS,ft as Ol,lt as OS,pr as qS,rr as nv,ut as O_,vt as Py,w as Fb,z as Ip}from"./chunk-BAHiFuUo.js";import{T as ue$1,h as Ne,m as Ie$1,r as N,v as Dt,y as G}from"./main-LXYWXFW4.js";import"./chunk-BAe_07VM.js";import"./chunk-Dv9sNWWK.js";import{Zt as I0}from"./chunk-D8Ui_APT.js";import{t as S}from"./chunk-o83QpKCY.js";import{t as f}from"./chunk-BMiFx1ci.js";import{t as c}from"./chunk-Bh2Diab5.js";import{t as g$1}from"./chunk-B56nz2lI.js";import{t as k}from"./chunk-IrDYxRzS.js";import"./chunk-BzUDWIzm.js";import{t as P}from"./chunk-CkRw7h0_.js";import"./chunk-DhpMFMQw.js";import{t as l}from"./chunk-Cm2UNqwE.js";import"./chunk-CczD0yXn2.js";import{n as h,r as v,t as C}from"./chunk-CARNiCDb.js";var ie=()=>[`edit`];var ne=i=>[`/purchases`,i];var Z=(i,n)=>n.id;function ae(i,n){if(i&1&&(Us(0,`h1`,11),y_(1),fd(),Us(2,`p`),y_(3),fd()),i&2){let e=n,t=qS();ZC(),nv(e.reference),ZC(2),rv(``,e.supplierName,` · `,t.status())}}function oe(i,n){if(i&1){let e=zS();Us(0,`button`,13),Gy(`click`,function(){Ip(e);return wp(qS(2).createCredit())}),y_(1),fd()}if(i&2){let e=qS(2);Fy(`disabled`,e.busy()),ZC(),vd(` `,e.i18n.t(`supplierInvoice.creditAction`),` `)}}function re(i,n){i&1&&Iy(0,oe,2,2,`button`,12),i&2&&Fy(`appCan`,`supplier-invoice.create`)}function ce(i,n){if(i&1&&(Us(0,`a`,5),y_(1),fd()),i&2){let e=qS(2);Fy(`routerLink`,O_(2,ie)),ZC(),nv(e.i18n.t(`supplierInvoice.edit`))}}function le(i,n){i&1&&Iy(0,ce,2,3,`a`,14),i&2&&Fy(`appCan`,`supplier-invoice.update`)}function pe(i,n){if(i&1){let e=zS();Us(0,`button`,16),Gy(`click`,function(){Ip(e);return wp(qS(2).transition(`confirm`))}),y_(1),fd()}if(i&2){let e=qS(2);Fy(`disabled`,e.busy()),ZC(),vd(` `,e.i18n.t(`supplierInvoice.confirmAction`),` `)}}function de(i,n){i&1&&Iy(0,pe,2,2,`button`,15),i&2&&Fy(`appCan`,`supplier-invoice.update`)}function se(i,n){if(i&1){let e=zS();Us(0,`button`,18),Gy(`click`,function(){Ip(e);return wp(qS(2).transition(`approve`))}),y_(1),fd()}if(i&2){let e=qS(2);Fy(`disabled`,e.busy()),ZC(),vd(` `,e.i18n.t(`supplierInvoice.approveAction`),` `)}}function ue(i,n){i&1&&Iy(0,se,2,2,`button`,17),i&2&&Fy(`appCan`,`supplier-invoice.approve`)}function ve(i,n){if(i&1){let e=zS();Us(0,`button`,20),Gy(`click`,function(){Ip(e);return wp(qS(2).transition(`cancel`))}),y_(1),fd()}if(i&2){let e=qS(2);Fy(`disabled`,e.busy()),ZC(),vd(` `,e.i18n.t(`supplierInvoice.cancelAction`),` `)}}function me(i,n){i&1&&Iy(0,ve,2,2,`button`,19),i&2&&Fy(`appCan`,`supplier-invoice.update`)}function _e(i,n){if(i&1&&(Us(0,`p`,9),y_(1),fd()),i&2){let e=qS();ZC(),nv(e.i18n.t(n))}}function ye(i,n){if(i&1&&(Us(0,`p`,10),y_(1),fd()),i&2){let e=qS();ZC(),nv(e.i18n.t(`supplierInvoice.loadingDetail`))}}function xe(i,n){if(i&1&&(Us(0,`div`)(1,`dt`),y_(2),fd(),Us(3,`dd`)(4,`a`,31),y_(5),fd()()()),i&2){let e=qS(),t=qS();ZC(2),nv(t.i18n.t(`supplierInvoice.sourceInvoice`)),ZC(2),Fy(`routerLink`,k_(3,ne,e.sourceInvoiceId)),ZC(),nv(t.i18n.t(`supplierInvoice.openSourceInvoice`))}}function fe(i,n){if(i&1){let e=zS();Us(0,`label`,32),y_(1),Us(2,`input`,33),Gy(`change`,function(p){Ip(e);return wp(qS(2).addEvidence(p))}),fd()()}if(i&2){let e=qS(2);ZC(),nv(e.i18n.t(`supplierInvoice.evidenceAdd`)),ZC(),Fy(`disabled`,e.busy())}}function be(i,n){if(i&1&&(Us(0,`p`,27),y_(1),fd()),i&2){let e=qS(2);ZC(),nv(e.i18n.t(`supplierInvoice.evidenceEmpty`))}}function ge(i,n){if(i&1){let e=zS();Us(0,`li`,28)(1,`span`),y_(2),fd(),Us(3,`button`,34),Gy(`click`,function(){let p=Ip(e).$implicit;return wp(qS(2).downloadEvidence(p))}),y_(4),fd()()}if(i&2){let e=n.$implicit,t=qS(2);ZC(2),rv(``,e.fileName,` · `,e.mediaType),ZC(),Fy(`disabled`,t.busy()),ZC(),vd(` `,t.i18n.t(`supplierInvoice.evidenceDownload`),` `)}}function Ce(i,n){if(i&1&&(Us(0,`tr`)(1,`th`,35),y_(2),fd(),Us(3,`td`),y_(4),fd(),Us(5,`td`),y_(6),fd(),Us(7,`td`),y_(8),fd()()),i&2){let e=n.$implicit,t=qS(2);ZC(2),nv(e.description),ZC(2),nv(t.money(e.netTotalCents)),ZC(2),vd(``,t.vatRate(e.vatRateBasisPoints),`\xA0%`),ZC(2),nv(t.money(e.totalCents))}}function Ie(i,n){if(i&1&&(Us(0,`div`,21)(1,`app-detail-panel`,22)(2,`dl`,23)(3,`div`)(4,`dt`),y_(5),fd(),Us(6,`dd`),y_(7),fd()(),Us(8,`div`)(9,`dt`),y_(10),fd(),Us(11,`dd`),y_(12),fd()(),Us(13,`div`)(14,`dt`),y_(15),fd(),Us(16,`dd`),y_(17),fd()(),OS(18,xe,6,5,`div`),Us(19,`div`)(20,`dt`),y_(21),fd(),Us(22,`dd`),y_(23),fd()(),Us(24,`div`)(25,`dt`),y_(26),fd(),Us(27,`dd`),y_(28),fd()()()(),Us(29,`app-detail-panel`,22)(30,`dl`,23)(31,`div`)(32,`dt`),y_(33),fd(),Us(34,`dd`),y_(35),fd()(),Us(36,`div`)(37,`dt`),y_(38),fd(),Us(39,`dd`),y_(40),fd()(),Us(41,`div`)(42,`dt`),y_(43),fd(),Us(44,`dd`),y_(45),fd()()()()(),Us(46,`section`,24)(47,`h2`,25),y_(48),fd(),Iy(49,fe,3,2,`label`,26),OS(50,be,2,1,`p`,27),Us(51,`ul`),LS(52,ge,5,4,`li`,28,Z),fd()(),Us(54,`div`,29)(55,`table`)(56,`thead`)(57,`tr`)(58,`th`,30),y_(59),fd(),Us(60,`th`,30),y_(61),fd(),Us(62,`th`,30),y_(63),fd(),Us(64,`th`,30),y_(65),fd()()(),Us(66,`tbody`),LS(67,Ce,9,4,`tr`,null,Z),fd()()()),i&2){let e=n,t=qS();ZC(),Fy(`heading`,t.i18n.t(`supplierInvoice.details`)),ZC(4),nv(t.i18n.t(`supplierInvoice.kind`)),ZC(2),nv(t.i18n.t(t.documentKind())),ZC(3),nv(t.i18n.t(`supplier.taxTreatment`)),ZC(2),nv(t.i18n.t(t.taxTreatment())),ZC(3),nv(t.i18n.t(`supplierInvoice.invoiceDate`)),ZC(2),nv(e.invoiceDate),ZC(),kS(e.sourceInvoiceId?18:-1),ZC(3),nv(t.i18n.t(`supplierInvoice.dueDate`)),ZC(2),nv(e.dueDate),ZC(3),nv(t.i18n.t(`supplierInvoice.source`)),ZC(2),nv(t.source()),ZC(),Fy(`heading`,t.i18n.t(`supplierInvoice.totals`)),ZC(4),nv(t.i18n.t(`supplierInvoice.net`)),ZC(2),nv(t.money(e.netTotalCents)),ZC(3),nv(t.i18n.t(`supplierInvoice.vat`)),ZC(2),nv(t.money(e.vatTotalCents)),ZC(3),nv(t.i18n.t(`supplierInvoice.total`)),ZC(2),nv(t.money(e.totalCents)),ZC(3),nv(t.i18n.t(`supplierInvoice.evidence`)),ZC(),Fy(`appCan`,`supplier-invoice.update`),ZC(),kS(t.evidence().length?-1:50),ZC(2),jS(t.evidence()),ZC(7),nv(t.i18n.t(`supplierInvoice.description`)),ZC(2),nv(t.i18n.t(`supplierInvoice.net`)),ZC(2),nv(t.i18n.t(`supplierInvoice.vatRate`)),ZC(2),nv(t.i18n.t(`supplierInvoice.total`)),ZC(2),jS(e.lines)}}var ee=class i{i18n=g(Ie$1);api=g(S);route=g(G);router=g(ue$1);confirmation=g(P);invoice=Ke(void 0);loading=Ke(!0);busy=Ke(!1);error=Ke(void 0);evidence=Ke([]);editable=Ft(()=>this.invoice()?.status===`draft`);canConfirm=Ft(()=>this.invoice()?.status===`draft`);canApprove=Ft(()=>this.invoice()?.status===`confirmed`);canCancel=Ft(()=>[`draft`,`confirmed`].includes(this.invoice()?.status??``));canCreateCredit=Ft(()=>{let n=this.invoice();return n===void 0||n.documentKind!==`invoice`?!1:[`confirmed`,`approved`,`paid`].includes(n.status)});breadcrumbs=Ft(()=>[{label:this.i18n.t(`supplierInvoice.title`),path:`/purchases`}]);constructor(){Ol(()=>{this.load()})}async load(){let n=this.route.snapshot.paramMap.get(`invoiceId`);if(n)try{let[e,t]=await Promise.all([this.api.get(n),this.api.evidence(n)]);e.success?this.invoice.set(e.result):this.error.set(e.code),t.success&&this.evidence.set(t.result)}catch{this.error.set(`supplierInvoice.error`)}finally{this.loading.set(!1)}}money(n){return Ne(n,this.i18n.language(),this.invoice()?.currency??`EUR`)}status(){let n=this.invoice()?.status;return n?this.i18n.t(`supplierInvoice.status.${n}`):``}source(){let n=this.invoice()?.source;return n?this.i18n.t(`supplierInvoice.source.${n}`):``}documentKind(){return this.invoice()?.documentKind===`credit`?`supplierInvoice.kind.credit`:`supplierInvoice.kind.invoice`}taxTreatment(){let n=this.invoice()?.taxTreatment;return n===`eu-reverse-charge`?`supplier.taxTreatment.eu`:n===`non-eu-import`?`supplier.taxTreatment.import`:n===`foreign-local-tax`?`supplier.taxTreatment.local`:`supplier.taxTreatment.france`}vatRate(n){return n/100}async transition(n){let e=this.invoice();if(!(!e||this.busy())&&await this.confirmation.request(this.i18n.t(`supplierInvoice.confirm.${n}`))){this.busy.set(!0);try{let t=await this.api.transition(e.id,n,e.version);t.success?this.invoice.set(t.result):this.error.set(t.code)}catch{this.error.set(`supplierInvoice.error`)}finally{this.busy.set(!1)}}}async createCredit(){let n=this.invoice();if(!(n===void 0||this.busy())){this.busy.set(!0);try{let e=await this.api.createCredit({requestId:crypto.randomUUID(),sourceInvoiceId:n.id});if(!e.success){this.error.set(e.code);return}await this.router.navigate([`/purchases`,e.result.id,`edit`])}catch{this.error.set(`supplierInvoice.error`)}finally{this.busy.set(!1)}}}async addEvidence(n){let e=this.invoice();if(!(n.target instanceof HTMLInputElement))return;let t=n.target,p=t.files?.[0];if(!(e===void 0||p===void 0||this.busy())){this.busy.set(!0);try{let D=(await new Promise((w,te)=>{let S=new FileReader;S.onload=()=>w(String(S.result)),S.onerror=()=>te(S.error),S.readAsDataURL(p)})).split(`,`)[1]??``,E=await this.api.createEvidence({invoiceId:e.id,fileName:p.name,mediaType:p.type||`application/octet-stream`,contentBase64:D});E.success?this.evidence.update(w=>[E.result,...w]):this.error.set(E.code)}catch{this.error.set(`supplierInvoice.error`)}finally{t.value=``,this.busy.set(!1)}}}async downloadEvidence(n){if(!this.busy()){this.busy.set(!0);try{let e=await this.api.downloadEvidence(n.id),t=URL.createObjectURL(e),p=document.createElement(`a`);p.href=t,p.download=n.fileName,p.click(),URL.revokeObjectURL(t)}catch{this.error.set(`supplierInvoice.error`)}finally{this.busy.set(!1)}}}static ɵfac=function(e){return new(e||i)};static ɵcmp=Fb({type:i,selectors:[[`app-supplier-invoice-detail`]],hostAttrs:[1,`page-container`],decls:13,vars:12,consts:[[`aria-labelledby`,`supplier-invoice-title`,1,`detail-page`,`wide-page`],[`layout`,`stacked`],[`pageBack`,``,3,`label`,`items`,`current`],[`pageActions`,``,1,`spacer-x-2`],[`appButton`,``,`icon`,`invoice`,`type`,`button`,3,`disabled`],[`appLinkButton`,``,`icon`,`pencil`,3,`routerLink`],[`appButton`,``,`icon`,`check`,`type`,`button`,3,`disabled`],[`appButton`,``,`icon`,`check`,`variant`,`primary`,`type`,`button`,3,`disabled`],[`appButton`,``,`icon`,`close`,`type`,`button`,3,`disabled`],[`appNotice`,``,`variant`,`danger`,`role`,`alert`],[`role`,`status`],[`id`,`supplier-invoice-title`],[`appButton`,``,`icon`,`invoice`,`type`,`button`,3,`disabled`,`click`,4,`appCan`],[`appButton`,``,`icon`,`invoice`,`type`,`button`,3,`click`,`disabled`],[`appLinkButton`,``,`icon`,`pencil`,3,`routerLink`,4,`appCan`],[`appButton`,``,`icon`,`check`,`type`,`button`,3,`disabled`,`click`,4,`appCan`],[`appButton`,``,`icon`,`check`,`type`,`button`,3,`click`,`disabled`],[`appButton`,``,`icon`,`check`,`variant`,`primary`,`type`,`button`,3,`disabled`,`click`,4,`appCan`],[`appButton`,``,`icon`,`check`,`variant`,`primary`,`type`,`button`,3,`click`,`disabled`],[`appButton`,``,`icon`,`close`,`type`,`button`,3,`disabled`,`click`,4,`appCan`],[`appButton`,``,`icon`,`close`,`type`,`button`,3,`click`,`disabled`],[`appDetailGrid`,``,1,`detail-grid`],[1,`detail-panel`,3,`heading`],[`appDetailList`,``],[`aria-labelledby`,`supplier-evidence-title`,1,`ds-panel`,`evidence-panel`],[`id`,`supplier-evidence-title`],[`class`,`field`,`for`,`supplier-evidence-file`,4,`appCan`],[1,`muted`],[1,`spacer-x-2`],[`appDataTable`,``],[`scope`,`col`],[3,`routerLink`],[`for`,`supplier-evidence-file`,1,`field`],[`id`,`supplier-evidence-file`,`type`,`file`,3,`change`,`disabled`],[`appButton`,``,`type`,`button`,3,`click`,`disabled`],[`scope`,`row`]],template:function(e,t){if(e&1&&(Us(0,`section`,0)(1,`app-page-header`,1),Py(2,`app-breadcrumbs`,2),OS(3,ae,4,3),Us(4,`div`,3),OS(5,re,1,1,`button`,4),OS(6,le,1,1,`a`,5),OS(7,de,1,1,`button`,6),OS(8,ue,1,1,`button`,7),OS(9,me,1,1,`button`,8),fd()(),OS(10,_e,2,1,`p`,9),OS(11,ye,2,1,`p`,10),OS(12,Ie,69,26),fd()),e&2){let p,m,D;ZC(2),Fy(`label`,t.i18n.t(`backOfficeShell.breadcrumb`))(`items`,t.breadcrumbs())(`current`,t.invoice()?.reference??t.i18n.t(`supplierInvoice.loadingDetail`)),ZC(),kS((p=t.invoice())?3:-1,p),ZC(2),kS(t.canCreateCredit()?5:-1),ZC(),kS(t.editable()?6:-1),ZC(),kS(t.canConfirm()?7:-1),ZC(),kS(t.canApprove()?8:-1),ZC(),kS(t.canCancel()?9:-1),ZC(),kS((m=t.error())?10:-1,m),ZC(),kS(t.loading()?11:-1),ZC(),kS((D=t.invoice())?12:-1,D)}},dependencies:[f,N,l,c,C,v,h,k,g$1,Dt],styles:[`[_nghost-%COMP%]{display:block}.detail-page[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-4);min-inline-size:0;inline-size:100%;max-inline-size:var(--%NS%page-width-detail);margin-inline:auto;padding:var(--%NS%page-header-y) var(--%NS%page-x)}.detail-page.form-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-form)}.detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-wide)}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-2xl);overflow-wrap:anywhere}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-base);color:var(--%NS%color-muted);overflow-wrap:anywhere}.detail-page[_ngcontent-%COMP%] > button[_ngcontent-%COMP%]{justify-self:start}@media print{.detail-page[_ngcontent-%COMP%], .detail-page.form-page[_ngcontent-%COMP%], .detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:none}}.evidence-panel[_ngcontent-%COMP%]{padding:var(--%NS%panel-padding)}.evidence-panel[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-lg)}app-detail-panel[_ngcontent-%COMP%] dt[_ngcontent-%COMP%]{color:var(--%NS%color-muted);font-size:var(--%NS%text-sm);font-weight:700}app-detail-panel[_ngcontent-%COMP%] dd[_ngcontent-%COMP%]{margin:var(--%NS%space-1) 0 0;overflow-wrap:anywhere}.evidence-panel[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-4)}.evidence-panel[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-3);margin:0;padding:0;list-style:none}.evidence-panel[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{justify-content:space-between}`]})};export{ee as SupplierInvoiceDetail};
@@ -0,0 +1 @@
1
+ import{n as m,t as l}from"./chunk-BwCtja5l.js";import{$t as ZC,A as Gy,D as Fy,Dn as g,Gn as k_,Hr as xU,Ir as wp,It as Us,Jr as zS,K as Ke,Kr as yo,M as H_,Nr as vd,Rn as jS,Tn as fd,Wn as kS,Wr as y_,X as LS,l as A_,lt as OS,mr as qT,o as A,pr as qS,qn as ky,rn as Zw,rr as nv,tn as ZT,ut as O_,vt as Py,w as Fb,xt as Qg,z as Ip,zn as j_}from"./chunk-BAHiFuUo.js";import{_ as o,m as Ie,r as N,v as Dt}from"./main-LXYWXFW4.js";import{ct as Me,wi as wu}from"./chunk-BAe_07VM.js";import"./chunk-Dv9sNWWK.js";import"./chunk-D8Ui_APT.js";import{t as g$1}from"./chunk-B56nz2lI.js";import{t as k}from"./chunk-IrDYxRzS.js";import{n as u,t as p}from"./chunk-BHEFFEGN.js";import"./chunk-BzUDWIzm.js";import{t as P}from"./chunk-CkRw7h0_.js";import"./chunk-CReShp-B.js";import{d as nr,h as yn,m as un,o as gn}from"./chunk-CSkyOfSg.js";import{t as m$1}from"./chunk-k8jJDyGi.js";import{t as c$1}from"./chunk-Bgl7kJgO2.js";var le=wu.Struct({name:wu.String,role:wu.String,email:wu.String,website:wu.String,brandName:wu.String});var me=wu.Struct({id:wu.String,name:wu.String,createdAt:wu.String,content:le});var oe=`froment-software.business-card.versions`;var O=class o{isBrowser=xU(g(yo));storedVersions=Ke(this.read());versions=this.storedVersions.asReadonly();save(t){return this.write([t,...this.storedVersions()])}delete(t){return this.write(this.storedVersions().filter(r=>r.id!==t))}read(){if(!this.isBrowser)return[];try{let t=wu.decodeUnknownSync(wu.fromJsonString(wu.Unknown))(localStorage.getItem(oe)??`[]`);return Array.isArray(t)?t.flatMap(r=>Me.match(wu.decodeUnknownOption(me)(r),{onNone:()=>[],onSome:e=>[e]})):[]}catch{return[]}}write(t){if(!this.isBrowser)return!1;try{return localStorage.setItem(oe,JSON.stringify(t)),this.storedVersions.set(t),!0}catch{return!1}}static ɵfac=function(r){return new(r||o)};static ɵprov=A({token:o,factory:o.ɵfac})};var ce=()=>({dateStyle:`medium`,timeStyle:`short`});var pe=o=>({name:o});var ue=(o,t)=>t.id;function ge(o,t){o&1&&Py(0,`img`,11),o&2&&Fy(`src`,t.logoUrl,Qg)}function ve(o,t){if(o&1&&(Us(0,`p`,23),y_(1),fd()),o&2){let r=qS();ZC(),nv(r.i18n.t(`businessCard.contentInvalid`))}}function Ce(o,t){if(o&1&&(Us(0,`p`,23),y_(1),fd()),o&2){let r=qS();ZC(),nv(r.i18n.t(`businessCard.versionInvalid`))}}function fe(o,t){if(o&1&&(Us(0,`p`,24),y_(1),fd()),o&2){let r=qS();ZC(),nv(r.storageMessage())}}function be(o,t){if(o&1){let r=zS();Us(0,`li`)(1,`button`,29),Gy(`click`,function(){let m=Ip(r).$implicit;return wp(qS(2).restoreVersion(m))}),Us(2,`strong`),y_(3),fd(),Us(4,`span`),y_(5),j_(6,`localizedDate`),fd()(),Us(7,`button`,30),Gy(`click`,function(){let m=Ip(r).$implicit;return wp(qS(2).deleteVersion(m))}),y_(8),fd()()}if(o&2){let r=t.$implicit,e=qS(2);ZC(3),nv(r.name),ZC(2),nv(H_(6,4,r.createdAt,e.i18n.language(),O_(8,ce))),ZC(2),ky(`aria-label`,e.i18n.tf(`businessCard.deleteLabel`,k_(9,pe,r.name))),ZC(),vd(` `,e.i18n.t(`businessCard.delete`),` `)}}function _e(o,t){if(o&1&&(Us(0,`ul`,27),LS(1,be,9,11,`li`,null,ue),fd()),o&2){let r=qS();ZC(),jS(r.versions())}}function he(o,t){if(o&1&&(Us(0,`p`,28),y_(1),fd()),o&2){let r=qS();ZC(),nv(r.i18n.t(`businessCard.empty`))}}var c={name:o(`fr`,`businessCard.defaultName`),role:o(`fr`,`businessCard.defaultRole`),email:`contact@example.com`,website:`example.com`,brandName:o(`fr`,`backOffice.title`)};var se=class o{i18n=g(Ie);branding=g(m$1);issuer=g(c$1);isBrowser=xU(g(yo));versionStorage=g(O);confirmation=g(P);versionNameEdited=!1;content=Ke(l({},c));contentForm=nr(this.content,t=>{gn(t.name,{message:this.i18n.t(`businessCard.nameRequired`)}),gn(t.role,{message:this.i18n.t(`businessCard.roleRequired`)}),gn(t.email,{message:this.i18n.t(`businessCard.emailRequired`)}),un(t.email,{message:this.i18n.t(`businessCard.emailInvalid`)}),gn(t.website,{message:this.i18n.t(`businessCard.websiteRequired`)}),gn(t.brandName,{message:this.i18n.t(`businessCard.brandRequired`)})});versionModel=Ke({name:this.createVersionName()});versionForm=nr(this.versionModel,t=>{gn(t.name,{message:this.i18n.t(`businessCard.versionRequired`)})});versions=this.versionStorage.versions;storageMessage=Ke(``);constructor(){this.loadDefaults()}async loadDefaults(){let[t,r]=await Promise.all([this.branding.load().then(()=>this.branding.current()),this.issuer.get().catch(()=>null)]);if(!t)return;let e=this.content();e.name!==c.name||e.role!==c.role||e.email!==c.email||e.website!==c.website||e.brandName!==c.brandName||this.content.set(m(l({},c),{email:r?.email||c.email,website:this.isBrowser?window.location.hostname:c.website,brandName:t.name}))}print(){this.isBrowser&&window.print()}saveVersion(){if(this.contentForm().invalid()||this.versionForm().invalid()){this.contentForm().markAsTouched(),this.versionForm().markAsTouched(),(this.contentForm().errorSummary()[0]??this.versionForm().errorSummary()[0])?.fieldTree().focusBoundControl();return}let t={id:crypto.randomUUID(),name:this.versionModel().name.trim(),createdAt:new Date().toISOString(),content:l({},this.content())};this.versionStorage.save(t)?(this.contentForm().reset(),this.versionForm().reset(),this.versionNameEdited=!1,this.versionModel.set({name:this.createVersionName()}),this.storageMessage.set(this.i18n.tf(`businessCard.saved`,{name:t.name}))):this.storageMessage.set(this.i18n.t(`businessCard.storageError`))}restoreVersion(t){this.content.set(l({},t.content)),this.versionNameEdited=!0,this.versionModel.set({name:t.name}),this.storageMessage.set(this.i18n.tf(`businessCard.restored`,{name:t.name}))}deleteVersion(t){this.versionStorage.delete(t.id)?this.storageMessage.set(this.i18n.tf(`businessCard.deleted`,{name:t.name})):this.storageMessage.set(this.i18n.t(`businessCard.storageError`))}updateGeneratedVersionName(t){if(!this.versionNameEdited&&t.target instanceof HTMLInputElement){let r=t.target.value.trim()||c.name;this.versionModel.set({name:this.createVersionName(r)})}}markVersionNameEdited(){this.versionNameEdited=!0}createVersionName(t=this.content?.().name.trim()||c.name){return`${t} - ${u(new Date,`fr-FR`,{day:`2-digit`,month:`2-digit`,year:`numeric`,hour:`2-digit`,minute:`2-digit`})}`}canDeactivate(){return!this.contentForm().dirty()&&!this.versionForm().dirty()||this.confirmation.request(this.i18n.t(`configurationWorkspace.unsaved`))}beforeUnload(t){(this.contentForm().dirty()||this.versionForm().dirty())&&t.preventDefault()}static ɵfac=function(r){return new(r||o)};static ɵcmp=Fb({type:o,selectors:[[`app-business-card`]],hostBindings:function(r,e){r&1&&Gy(`beforeunload`,function(p){return e.beforeUnload(p)},Zw)},features:[A_([O])],decls:74,vars:34,consts:[[1,`business-card-page`,`detail-page`],[`layout`,`stacked`,1,`card-toolbar`],[`pageBack`,``,`routerLink`,`/configuration`],[`appButton`,``,`pageActions`,``,`variant`,`primary`,`type`,`button`,3,`click`],[`role`,`region`,`tabindex`,`0`,1,`card-sheet`],[1,`business-card`,`front`],[1,`front-content`],[1,`identity`],[1,`contact-details`],[1,`business-card`,`back`],[1,`brand-lockup`],[`width`,`48`,`height`,`48`,`alt`,``,3,`src`],[1,`card-editor`],[`novalidate`,``,1,`editor-form`,`ds-panel`,3,`submit`],[1,`form-grid`],[`autocomplete`,`name`,1,`input`,3,`input`,`formField`],[`autocomplete`,`organization-title`,1,`input`,3,`formField`],[`type`,`email`,`autocomplete`,`email`,1,`input`,3,`formField`],[`inputmode`,`url`,`autocomplete`,`url`,1,`input`,3,`formField`],[1,`input`,3,`formField`],[1,`version-save`],[1,`input`,3,`input`,`formField`],[`appButton`,``,`variant`,`primary`,`type`,`submit`],[`appNotice`,``,`variant`,`danger`,`role`,`alert`],[`appNotice`,``,`role`,`status`],[`aria-labelledby`,`version-list-title`,1,`version-panel`,`ds-panel`],[`id`,`version-list-title`],[1,`version-list`],[1,`empty-versions`],[`type`,`button`,1,`version-select`,3,`click`],[`appButton`,``,`variant`,`danger`,`type`,`button`,3,`click`]],template:function(r,e){if(r&1&&(Us(0,`article`,0)(1,`app-page-header`,1)(2,`a`,2),y_(3),fd(),Us(4,`h1`),y_(5),fd(),Us(6,`p`),y_(7),fd(),Us(8,`button`,3),Gy(`click`,function(){return e.print()}),y_(9),fd()(),Us(10,`div`,4)(11,`section`,5)(12,`div`,6)(13,`div`,7)(14,`h2`),y_(15),fd(),Us(16,`p`),y_(17),fd()(),Us(18,`div`,8)(19,`p`),y_(20),fd(),Us(21,`p`),y_(22),fd()()()(),Us(23,`section`,9)(24,`div`,10),OS(25,ge,1,1,`img`,11),Us(26,`p`),y_(27),fd()()()(),Us(28,`div`,12)(29,`form`,13),Gy(`submit`,function(p){return e.saveVersion(),p.preventDefault()}),Us(30,`header`)(31,`h2`),y_(32),fd(),Us(33,`p`),y_(34),fd()(),Us(35,`div`,14)(36,`label`)(37,`span`),y_(38),fd(),Us(39,`input`,15),Gy(`input`,function(p){return e.updateGeneratedVersionName(p)}),fd(),qT(),fd(),Us(40,`label`)(41,`span`),y_(42),fd(),Py(43,`input`,16),qT(),fd(),Us(44,`label`)(45,`span`),y_(46),fd(),Py(47,`input`,17),qT(),fd(),Us(48,`label`)(49,`span`),y_(50),fd(),Py(51,`input`,18),qT(),fd(),Us(52,`label`)(53,`span`),y_(54),fd(),Py(55,`input`,19),qT(),fd()(),Us(56,`div`,20)(57,`label`)(58,`span`),y_(59),fd(),Us(60,`input`,21),Gy(`input`,function(){return e.markVersionNameEdited()}),fd(),qT(),fd(),Us(61,`button`,22),y_(62),fd()(),OS(63,ve,2,1,`p`,23),OS(64,Ce,2,1,`p`,23),OS(65,fe,2,1,`p`,24),fd(),Us(66,`section`,25)(67,`header`)(68,`h2`,26),y_(69),fd(),Us(70,`p`),y_(71),fd()(),OS(72,_e,3,0,`ul`,27)(73,he,2,1,`p`,28),fd()()()),r&2){let m;ZC(3),nv(e.i18n.t(`configurationWorkspace.backConfiguration`)),ZC(2),nv(e.i18n.t(`configurationWorkspace.businessCard`)),ZC(2),nv(e.i18n.t(`settingsHeader.businessCardDescription`)),ZC(2),vd(` `,e.i18n.t(`businessCard.print`),` `),ZC(),ky(`aria-label`,e.i18n.t(`businessCard.preview`)),ZC(),ky(`aria-label`,e.i18n.t(`businessCard.front`)),ZC(4),nv(e.content().name),ZC(2),nv(e.content().role),ZC(3),nv(e.content().email),ZC(2),nv(e.content().website),ZC(),ky(`aria-label`,e.i18n.t(`businessCard.backSide`)),ZC(2),kS((m=e.branding.current())?25:-1,m),ZC(2),nv(e.content().brandName),ZC(5),nv(e.i18n.t(`businessCard.edit`)),ZC(2),nv(e.i18n.t(`businessCard.editIntro`)),ZC(4),nv(e.i18n.t(`businessCard.name`)),ZC(),Fy(`formField`,e.contentForm.name),ZT(),ZC(3),nv(e.i18n.t(`businessCard.role`)),ZC(),Fy(`formField`,e.contentForm.role),ZT(),ZC(3),nv(e.i18n.t(`businessCard.email`)),ZC(),Fy(`formField`,e.contentForm.email),ZT(),ZC(3),nv(e.i18n.t(`businessCard.website`)),ZC(),Fy(`formField`,e.contentForm.website),ZT(),ZC(3),nv(e.i18n.t(`businessCard.brand`)),ZC(),Fy(`formField`,e.contentForm.brandName),ZT(),ZC(4),nv(e.i18n.t(`businessCard.versionName`)),ZC(),Fy(`formField`,e.versionForm.name),ZT(),ZC(2),nv(e.i18n.t(`businessCard.save`)),ZC(),kS(e.contentForm().invalid()&&e.contentForm().touched()?63:-1),ZC(),kS(e.versionForm().invalid()&&e.versionForm().touched()?64:-1),ZC(),kS(e.storageMessage()?65:-1),ZC(4),nv(e.i18n.t(`businessCard.versions`)),ZC(2),nv(e.i18n.t(`businessCard.versionsIntro`)),ZC(),kS(e.versions().length?72:73)}},dependencies:[N,yn,k,g$1,Dt,p],styles:[`[_nghost-%COMP%]{display:block}.detail-page[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-4);min-inline-size:0;inline-size:100%;max-inline-size:var(--%NS%page-width-detail);margin-inline:auto;padding:var(--%NS%page-header-y) var(--%NS%page-x)}.detail-page.form-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-form)}.detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-wide)}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-2xl);overflow-wrap:anywhere}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-base);color:var(--%NS%color-muted);overflow-wrap:anywhere}.detail-page[_ngcontent-%COMP%] > button[_ngcontent-%COMP%]{justify-self:start}@media print{.detail-page[_ngcontent-%COMP%], .detail-page.form-page[_ngcontent-%COMP%], .detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:none}}.business-card-page[_ngcontent-%COMP%]{display:block}.card-sheet[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(2,85mm);gap:12mm;margin-top:var(--%NS%space-8);overflow-x:auto;padding:var(--%NS%space-4);border:1px dashed var(--%NS%color-line-strong);background:#d9d9d9}.business-card[_ngcontent-%COMP%]{position:relative;display:grid;width:85mm;height:55mm;overflow:hidden;place-items:center;padding:7mm;background:#fff;color:#111;font-family:var(--%NS%font-body);box-shadow:0 3px 12px #0000002e;text-align:center}.front-content[_ngcontent-%COMP%]{display:grid;justify-items:center;gap:4mm}.identity[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{color:#111;font-size:6mm;font-weight:700;letter-spacing:-.02em}.identity[_ngcontent-%COMP%] p[_ngcontent-%COMP%]:last-child{margin-top:1.5mm;font-size:2.8mm;letter-spacing:.04em}.contact-details[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{font-size:2.8mm;letter-spacing:.01em}.contact-details[_ngcontent-%COMP%] p[_ngcontent-%COMP%] + p[_ngcontent-%COMP%]{margin-top:1mm}.back[_ngcontent-%COMP%]{place-items:center}.brand-lockup[_ngcontent-%COMP%]{display:grid;justify-items:center;gap:3mm}.brand-lockup[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:11mm;height:11mm;filter:grayscale(1)}.brand-lockup[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{font-size:5mm;font-weight:700;letter-spacing:-.03em}.card-editor[_ngcontent-%COMP%]{display:grid;grid-template-columns:minmax(0,3fr) minmax(17rem,2fr);gap:var(--%NS%space-6);margin-top:var(--%NS%space-8)}.editor-form[_ngcontent-%COMP%], .version-panel[_ngcontent-%COMP%]{padding:var(--%NS%space-5)}.editor-form[_ngcontent-%COMP%] > header[_ngcontent-%COMP%] p[_ngcontent-%COMP%], .version-panel[_ngcontent-%COMP%] > header[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin-top:var(--%NS%space-1);color:var(--%NS%color-muted)}.form-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--%NS%space-4);margin-top:var(--%NS%space-5)}.form-grid[_ngcontent-%COMP%] label[_ngcontent-%COMP%], .version-save[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-1);color:var(--%NS%color-muted);font-size:var(--%NS%text-sm);font-weight:700}.form-grid[_ngcontent-%COMP%] .input[_ngcontent-%COMP%], .version-save[_ngcontent-%COMP%] .input[_ngcontent-%COMP%]{width:100%;color:var(--%NS%color-ink);font-weight:400}.version-save[_ngcontent-%COMP%]{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:var(--%NS%space-3);margin-top:var(--%NS%space-5);padding-top:var(--%NS%space-5);border-top:1px solid var(--%NS%color-line)}.editor-form[_ngcontent-%COMP%] > .notice[_ngcontent-%COMP%]{margin-top:var(--%NS%space-3)}.version-list[_ngcontent-%COMP%]{margin:var(--%NS%space-5) 0 0;padding:0;list-style:none}.version-list[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{display:flex;align-items:center;gap:var(--%NS%space-2);border-top:1px solid var(--%NS%color-line)}.version-list[_ngcontent-%COMP%] li[_ngcontent-%COMP%]:last-child{border-bottom:1px solid var(--%NS%color-line)}.version-select[_ngcontent-%COMP%]{flex:1;display:grid;gap:var(--%NS%space-0\\.5);min-width:0;padding:var(--%NS%space-3) 0;border:0;background:transparent;color:var(--%NS%color-ink);text-align:left;cursor:pointer}.version-select[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{overflow-wrap:anywhere}.version-select[_ngcontent-%COMP%] span[_ngcontent-%COMP%], .empty-versions[_ngcontent-%COMP%]{color:var(--%NS%color-muted);font-size:var(--%NS%text-sm)}.empty-versions[_ngcontent-%COMP%]{margin-top:var(--%NS%space-5)}@media(hover:hover)and (pointer:fine){.version-select[_ngcontent-%COMP%]:hover strong[_ngcontent-%COMP%]{color:var(--%NS%color-link);text-decoration:underline}}@media(max-width:56rem){.card-editor[_ngcontent-%COMP%]{grid-template-columns:1fr}}@media(max-width:48rem){.form-grid[_ngcontent-%COMP%], .version-save[_ngcontent-%COMP%]{grid-template-columns:1fr}}@media print{@page{size:85mm 55mm;margin:0}.business-card-page[_ngcontent-%COMP%]{padding:0}.card-toolbar[_ngcontent-%COMP%], .card-editor[_ngcontent-%COMP%]{display:none}.card-sheet[_ngcontent-%COMP%]{display:block;margin:0;padding:0;border:0;background:none;overflow:visible}.business-card[_ngcontent-%COMP%]{break-after:page;box-shadow:none}.business-card[_ngcontent-%COMP%]:last-child{break-after:auto}}`]})};export{se as BusinessCard};
@@ -0,0 +1 @@
1
+ import{n as m,t as l}from"./chunk-BwCtja5l.js";import{$t as ZC,A as Gy,D as Fy,Dn as g,Dr as t_,E as Ft,Ir as wp,It as Us,Jr as zS,K as Ke,Nr as vd,Rn as jS,Tn as fd,V as Iy,W as KS,Wn as kS,Wr as y_,X as LS,en as ZS,lt as OS,mr as qT,nt as NH,o as A,pr as qS,qn as ky,tn as ZT,w as Fb,z as Ip}from"./chunk-BAHiFuUo.js";import{T as ue,m as Ie,o as U,r as N,y as G}from"./main-LXYWXFW4.js";import{d as nr,h as yn}from"./chunk-CSkyOfSg.js";import{t as Fe}from"./chunk-CO_ECkiv.js";import{t as B}from"./chunk-DQRDJtdh.js";import{n as b,t as Z$1}from"./chunk-DytjnC4n2.js";import{i as U$1,r as Q}from"./chunk-B6trGhNK2.js";import{b as y}from"./chunk-BAYVC6mO2.js";var ee=[[[``,`listActions`,``]]];var te=[`[listActions]`];var ie=(n,t)=>t[0];function ne(n,t){if(n&1){let e=zS();Us(0,`app-filter-choice`,6),Gy(`committed`,function(){Ip(e);let r=qS(),a=t_(3);return r.state.update(),wp(a.close())}),fd(),qT()}if(n&2){let e=qS();Fy(`label`,e.i18n.t(`listWorkspace.searchChoices`))(`emptyLabel`,e.i18n.t(`listWorkspace.noChoices`))(`options`,e.clientOptions())(`formField`,e.state.fields.client),ZT()}}function re(n,t){if(n&1){let e=zS();Us(0,`app-filter-choice`,6),Gy(`committed`,function(){Ip(e);let r=qS(2),a=t_(3);return r.state.update(),wp(a.close())}),fd(),qT()}if(n&2){let e=qS(2);Fy(`label`,e.i18n.t(`listWorkspace.searchChoices`))(`emptyLabel`,e.i18n.t(`listWorkspace.noChoices`))(`options`,e.statusOptions())(`formField`,e.state.fields.status),ZT()}}function ae(n,t){if(n&1&&Iy(0,re,1,4,`ng-template`,3),n&2){let e=qS();Fy(`label`,e.i18n.t(`billingWorkspace.financialStatus`))(`summary`,e.label(`status`,e.state.fields.status().value()))}}function le(n,t){if(n&1){let e=zS();Us(0,`app-date-range-filter`,7),Gy(`rangeApplied`,function(r){Ip(e);let a=qS(),h=t_(3);return a.state.applyPeriod(r),wp(h.close())}),fd()}if(n&2){let e=qS();Fy(`from`,e.state.fields.from().value()||void 0)(`to`,e.state.fields.to().value()||void 0)}}function oe(n,t){if(n&1){let e=zS();Us(0,`button`,9),Gy(`click`,function(){let r=Ip(e).$implicit;return wp(qS(2).state.clear(r[0]))}),y_(1),fd()}if(n&2){let e=t.$implicit,i=qS(2);ky(`aria-label`,i.i18n.t(`billingWorkspace.removeFilter`)+` : `+i.label(e[0],e[1])),ZC(),vd(` `,i.label(e[0],e[1]),` × `)}}function se(n,t){if(n&1){let e=zS();Us(0,`div`,5),LS(1,oe,2,2,`button`,8,ie),Us(3,`button`,9),Gy(`click`,function(){Ip(e);return wp(qS().state.clear())}),y_(4),fd()()}if(n&2){let e=qS();ZC(),jS(e.state.active()),ZC(3),vd(` `,e.i18n.t(`billingWorkspace.clear`),` `)}}var Y=n=>l({q:(n.get(`q`)??``).slice(0,160),status:n.get(`status`)??``,client:n.get(`client`)??``},y(n));var P=class n{i18n=g(Ie);route=g(G);router=g(ue);params=Ke(this.route.snapshot.queryParamMap);fields=nr(Ke(Y(this.route.snapshot.queryParamMap)));periodSummary=Ft(()=>{let{from:t,to:e}=this.fields().value();return[t?`${this.i18n.t(`dateRangeFilter.from`)} : ${t}`:``,e?`${this.i18n.t(`dateRangeFilter.to`)} : ${e}`:``].filter(Boolean).join(` · `)||this.i18n.t(`billingWorkspace.all`)});active=Ft(()=>{let t=this.fields().value(),e=Object.entries(t).filter(([i,r])=>i!==`from`&&i!==`to`&&r!==``);return(t.from||t.to)&&e.push([`period`,this.periodSummary()]),e});filterCount=Ft(()=>this.active().filter(([t])=>t!==`q`).length);constructor(){this.route.queryParamMap.pipe(U()).subscribe(t=>{this.params.set(t),this.fields().reset(Y(t))})}update(){this.router.navigate([],{relativeTo:this.route,queryParams:this.fields().value(),queryParamsHandling:`merge`,replaceUrl:!0})}setSearch(t){this.fields.q().value.set(t.slice(0,160)),this.update()}applyPeriod(t){this.fields().reset(m(l({},this.fields().value()),{from:t.from??``,to:t.to??``})),this.update()}updateSort(t){this.router.navigate([],{relativeTo:this.route,queryParams:m(l({},this.fields().value()),{sort:t===`none`?null:t}),queryParamsHandling:`merge`,replaceUrl:!0})}clear(t){this.fields().reset(t===void 0?{q:``,status:``,client:``,from:``,to:``}:t===`period`?m(l({},this.fields().value()),{from:``,to:``}):m(l({},this.fields().value()),{[t]:``})),this.update()}passes(t,e){let{status:i,client:r,from:a,to:h}=this.fields().value();return(!r||t.clientId===r)&&(!a||e>=a)&&(!h||e<=h)&&(!i||!(`cancelledAt`in t)||(i===`cancelled`?t.cancelledAt!=null:t.cancelledAt===null))}static ɵfac=function(e){return new(e||n)};static ɵprov=A({token:n,factory:n.ɵfac})};var Z=class n{state=g(P);i18n=g(Ie);clients=NH.required();periodLabel=NH.required();showStatus=NH(!0);disabled=NH(!1);clientOptions=Ft(()=>[{value:``,label:this.i18n.t(`billingWorkspace.all`)},...this.clients().map(([t,e])=>({value:t,label:e}))]);statusOptions=Ft(()=>[``,`active`,`cancelled`].map(t=>({value:t,label:this.label(`status`,t)})));label(t,e){return e===``?this.i18n.t(`billingWorkspace.all`):t===`client`?this.clients().find(([i])=>i===e)?.[1]??e:t===`status`?this.i18n.t(e===`cancelled`?`billingWorkspace.cancelled`:`billingWorkspace.active`):e}static ɵfac=function(e){return new(e||n)};static ɵcmp=Fb({type:n,selectors:[[`app-billing-entry-filters`]],hostAttrs:[2,`display`,`contents`],inputs:{clients:[1,`clients`],periodLabel:[1,`periodLabel`],showStatus:[1,`showStatus`],disabled:[1,`disabled`]},ngContentSelectors:te,decls:10,vars:13,consts:[[`menu`,``],[`listSearch`,``,3,`valueChange`,`label`,`value`],[`listFilters`,``,3,`label`,`closeLabel`,`backLabel`,`activeCount`,`disabled`],[`appFilterPanel`,``,3,`label`,`summary`],[`listActions`,``],[1,`chips`],[3,`committed`,`label`,`emptyLabel`,`options`,`formField`],[3,`rangeApplied`,`from`,`to`],[`appButton`,``,`type`,`button`],[`appButton`,``,`type`,`button`,3,`click`]],template:function(e,i){e&1&&(ZS(ee),Us(0,`app-list-toolbar`)(1,`app-list-search`,1),Gy(`valueChange`,function(a){return i.state.setSearch(a)}),fd(),Us(2,`app-filter-menu`,2,0),Iy(4,ne,1,4,`ng-template`,3),OS(5,ae,1,2,null,3),Iy(6,le,1,2,`ng-template`,3),fd(),Us(7,`div`,4),KS(8),fd()(),OS(9,se,5,1,`div`,5)),e&2&&(ZC(),Fy(`label`,i.i18n.t(`billingWorkspace.search`))(`value`,i.state.fields.q().value()),ZC(),Fy(`label`,i.i18n.t(`listWorkspace.filters`))(`closeLabel`,i.i18n.t(`listWorkspace.closeFilters`))(`backLabel`,i.i18n.t(`listWorkspace.backFilters`))(`activeCount`,i.state.filterCount())(`disabled`,i.disabled()),ZC(2),Fy(`label`,i.i18n.t(`backOffice.invoices.client`))(`summary`,i.label(`client`,i.state.fields.client().value())),ZC(),kS(i.showStatus()?5:-1),ZC(),Fy(`label`,i.periodLabel())(`summary`,i.state.periodSummary()),ZC(3),kS(i.state.active().length?9:-1))},dependencies:[yn,N,U$1,Q,Z$1,b,Fe,B],styles:[`.chips[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;align-items:end;gap:var(--%NS%space-3)}`]})};export{Z as n,P as t};
@@ -1 +1 @@
1
- import{$t as ZC,Dn as g,Gn as k_,It as Us,Tn as fd,Wr as y_,nt as NH,qn as ky,rr as nv,vt as Py,w as Fb}from"./chunk-BAHiFuUo.js";import{i as r,m as Ie}from"./main-F7D3L737.js";var v=t=>({filter:t});var h=class t{i18n=g(Ie);label=NH.required();static ɵfac=function(e){return new(e||t)};static ɵcmp=Fb({type:t,selectors:[[`button`,`appFilterChip`,``]],hostAttrs:[`type`,`button`],hostVars:3,hostBindings:function(e,n){e&2&&ky(`aria-label`,n.i18n.tf(`listControls.removeFilter`,k_(1,v,n.label())))},inputs:{label:[1,`label`]},decls:3,vars:1,consts:[[`name`,`close`]],template:function(e,n){e&1&&(Us(0,`span`),y_(1),fd(),Py(2,`app-icon`,0)),e&2&&(ZC(),nv(n.label()))},dependencies:[r],styles:[`[_nghost-%COMP%]{display:inline-flex;align-items:center;gap:var(--%NS%space-2);min-block-size:var(--%NS%control-height);max-inline-size:100%;padding:var(--%NS%space-1) var(--%NS%space-2);border:1px solid var(--%NS%color-line-strong);border-radius:var(--%NS%radius-sm);background:var(--%NS%color-surface-raised);color:var(--%NS%color-ink);font:inherit;font-size:var(--%NS%text-sm);text-align:start;cursor:pointer}span[_ngcontent-%COMP%]{overflow-wrap:anywhere;min-inline-size:0}app-icon[_ngcontent-%COMP%]{flex:none}`]})};export{h as t};
1
+ import{$t as ZC,Dn as g,Gn as k_,It as Us,Tn as fd,Wr as y_,nt as NH,qn as ky,rr as nv,vt as Py,w as Fb}from"./chunk-BAHiFuUo.js";import{i as r,m as Ie}from"./main-LXYWXFW4.js";var v=t=>({filter:t});var h=class t{i18n=g(Ie);label=NH.required();static ɵfac=function(e){return new(e||t)};static ɵcmp=Fb({type:t,selectors:[[`button`,`appFilterChip`,``]],hostAttrs:[`type`,`button`],hostVars:3,hostBindings:function(e,n){e&2&&ky(`aria-label`,n.i18n.tf(`listControls.removeFilter`,k_(1,v,n.label())))},inputs:{label:[1,`label`]},decls:3,vars:1,consts:[[`name`,`close`]],template:function(e,n){e&1&&(Us(0,`span`),y_(1),fd(),Py(2,`app-icon`,0)),e&2&&(ZC(),nv(n.label()))},dependencies:[r],styles:[`[_nghost-%COMP%]{display:inline-flex;align-items:center;gap:var(--%NS%space-2);min-block-size:var(--%NS%control-height);max-inline-size:100%;padding:var(--%NS%space-1) var(--%NS%space-2);border:1px solid var(--%NS%color-line-strong);border-radius:var(--%NS%radius-sm);background:var(--%NS%color-surface-raised);color:var(--%NS%color-ink);font:inherit;font-size:var(--%NS%text-sm);text-align:start;cursor:pointer}span[_ngcontent-%COMP%]{overflow-wrap:anywhere;min-inline-size:0}app-icon[_ngcontent-%COMP%]{flex:none}`]})};export{h as t};
@@ -0,0 +1 @@
1
+ import{n as m,t as l}from"./chunk-BwCtja5l.js";import{$t as ZC,A as Gy,D as Fy,Dn as g,Dr as t_,E as Ft$1,Er as sv,Fn as iv,Gn as k_,Ir as wp,It as Us,J as Ky,Jr as zS,Jt as Xy,K as Ke,M as H_,Nr as vd,Rn as jS,Rt as V_,Sr as rv,Tn as fd,V as Iy,Vr as xH,Wn as kS,Wr as y_,X as LS,dr as pe,ft as Ol,gn as ce,j as H,lt as OS,mr as qT,mt as PH,pr as qS,qn as ky,rn as Zw,rr as nv,sr as ov,tn as ZT,tt as Mn,ut as O_,vt as Py,w as Fb,xn as e_,z as Ip,zn as j_}from"./chunk-BAHiFuUo.js";import{T as ue,a as T,h as Ne,m as Ie,o as U,r as N,v as Dt$1,y as G}from"./main-LXYWXFW4.js";import{wi as wu}from"./chunk-BAe_07VM.js";import"./chunk-Dv9sNWWK.js";import{Ia as a}from"./chunk-D8Ui_APT.js";import{t as c}from"./chunk-Bh2Diab5.js";import{t as g$1}from"./chunk-B56nz2lI.js";import{t as k}from"./chunk-IrDYxRzS.js";import{t as d}from"./chunk-CfwFJLFh.js";import{t as p}from"./chunk-BHEFFEGN.js";import"./chunk-BzUDWIzm.js";import{t as P}from"./chunk-CkRw7h0_.js";import{t as E}from"./chunk-DhpMFMQw.js";import{t as l$1}from"./chunk-Cm2UNqwE.js";import"./chunk-CReShp-B.js";import{d as nr,f as or,h as yn,n as an,o as gn,r as cn,t as P$1,u as mn}from"./chunk-CSkyOfSg.js";import"./chunk-CczD0yXn2.js";import{t as u}from"./chunk-CHUNlDss2.js";import{t as R}from"./chunk-DvAE1Kdh2.js";import{t as Ae}from"./chunk-C_4qOSvi2.js";import{a as u$1,i as m$1}from"./chunk-Dx1NwQCW.js";import{t as w}from"./chunk-C01EdpX9.js";import{S as x,a as I,b as q,i as H$1,n as D,p as T$1,s as L$1,u as O,v as j,y as k$1}from"./chunk-D9pT7T7E.js";var je=[`result`];var Je=[`cancelReason`];var Xe=n=>[`/purchases`,n];var ne=n=>[`/invoices`,n];var Ge=()=>({dateStyle:`medium`,timeStyle:`short`});var Ye=(n,t)=>t.batchId+t.invoiceId;var L=(n,t)=>t.id;var Ze=(n,t)=>t.paymentId;var Qe=(n,t)=>t.key;var et=(n,t)=>t.matchId;function tt(n,t){if(n&1&&(Us(0,`div`,7,0)(2,`p`,9),y_(3),fd()()),n&2){let e=qS();ZC(3),nv(e.i18n.t(`bank.saved`))}}function nt(n,t){if(n&1){let e=zS();Us(0,`div`)(1,`button`,11),Gy(`click`,function(){Ip(e);return wp(qS(2).refresh())}),y_(2),fd()()}if(n&2){let e=qS(2);ZC(),Fy(`disabled`,e.busy()),ZC(),vd(` `,e.i18n.t(`bank.reload`),` `)}}function it(n,t){if(n&1&&(Us(0,`p`,10),y_(1),fd(),OS(2,nt,3,2,`div`)),n&2){let e=qS();ZC(),nv(e.i18n.t(t)),ZC(),kS(e.state()===`ready`&&!e.pendingMatch()&&!e.pendingCancellation()?2:-1)}}function at(n,t){if(n&1&&(Us(0,`p`,8),y_(1),fd()),n&2){let e=qS();ZC(),nv(e.i18n.t(`bank.loading`))}}function ot(n,t){if(n&1){let e=zS();Us(0,`div`)(1,`button`,12),Gy(`click`,function(){Ip(e);return wp(qS().load())}),y_(2),fd()()}if(n&2){let e=qS();ZC(2),nv(e.i18n.t(`bank.reload`))}}function rt(n,t){if(n&1&&(Us(0,`div`)(1,`dt`),y_(2),fd(),Us(3,`dd`),y_(4),fd()(),Us(5,`div`)(6,`dt`),y_(7),fd(),Us(8,`dd`),y_(9),fd()()),n&2){let e=qS(),a=qS();ZC(2),nv(a.i18n.t(`bank.allocated`)),ZC(2),nv(a.money(e.matchedCents)),ZC(3),nv(a.i18n.t(`bank.remaining`)),ZC(2),nv(a.money(a.remaining()))}}function ct(n,t){if(n&1&&(Us(0,`p`),y_(1),fd()),n&2){let e=qS(4);ZC(),nv(e.i18n.t(`bankWorkspace.noSupplierPayments`))}}function lt(n,t){if(n&1){let e=zS();Us(0,`li`)(1,`button`,11),Gy(`click`,function(){let l=Ip(e).$implicit;return wp(qS(4).matchSupplier(l))}),y_(2),fd()()}if(n&2){let e=t.$implicit,a=qS(4);ZC(),Fy(`disabled`,a.busy()),ZC(),ov(` `,e.reference,` · `,e.supplierName,` · `,a.money(e.availableCents),` `)}}function st(n,t){if(n&1){let e=zS();Us(0,`button`,11),Gy(`click`,function(){Ip(e);let l=qS().$implicit;return wp(qS(5).unmatchSupplier(l))}),y_(1),fd()}if(n&2){let e=qS(6);Fy(`disabled`,e.busy()),ZC(),vd(` `,e.i18n.t(`bankWorkspace.unmatch`),` `)}}function dt(n,t){if(n&1&&(Us(0,`tr`)(1,`th`,34)(2,`a`,35),y_(3),fd()(),Us(4,`td`),y_(5),fd(),Us(6,`td`),y_(7),fd(),Us(8,`td`),OS(9,st,2,2,`button`,36),fd()()),n&2){let e=t.$implicit,a=qS(5);ZC(2),Fy(`routerLink`,k_(5,Xe,e.invoiceId)),ZC(),nv(e.invoiceId),ZC(2),nv(a.money(e.amountCents)),ZC(2),nv(e.cancelledAt),ZC(2),kS(e.cancelledAt?-1:9)}}function mt(n,t){if(n&1&&(Us(0,`h3`),y_(1),fd(),Us(2,`div`,32)(3,`table`)(4,`thead`)(5,`tr`)(6,`th`,33),y_(7),fd(),Us(8,`th`,33),y_(9),fd(),Us(10,`th`,33),y_(11),fd(),Us(12,`th`,33),y_(13),fd()()(),Us(14,`tbody`),LS(15,dt,10,7,`tr`,null,L),fd()()()),n&2){let e=qS(4);ZC(),nv(e.i18n.t(`bankWorkspace.supplierMatchHistory`)),ZC(6),nv(e.i18n.t(`bank.invoice`)),ZC(2),nv(e.i18n.t(`bankWorkspace.amount`)),ZC(2),nv(e.i18n.t(`bankWorkspace.status`)),ZC(2),nv(e.i18n.t(`bankWorkspace.actions`)),ZC(2),jS(e.supplierMatches())}}function pt(n,t){if(n&1&&(Us(0,`section`,21)(1,`h2`,30),y_(2),fd(),Us(3,`p`,18),y_(4),fd(),OS(5,ct,2,1,`p`),Us(6,`ul`,31),LS(7,lt,3,4,`li`,null,Ye),fd(),OS(9,mt,17,5),fd()),n&2){let e=qS(3);ZC(2),nv(e.i18n.t(`bankWorkspace.supplierPayments`)),ZC(2),nv(e.i18n.t(`bankWorkspace.supplierPaymentsHint`)),ZC(),kS(e.supplierPayments().length?-1:5),ZC(2),jS(e.supplierPayments()),ZC(2),kS(e.supplierMatches().length?9:-1)}}function ut(n,t){n&1&&Iy(0,pt,10,4,`section`,29),n&2&&Fy(`appCan`,`bank.reconcile`)}function _t(n,t){if(n&1&&(Us(0,`p`,8),y_(1),fd()),n&2){let e=qS(4);ZC(),nv(e.i18n.t(`bankWorkspace.suggestionsLoading`))}}function yt(n,t){if(n&1){let e=zS();Us(0,`li`)(1,`button`,57),Gy(`click`,function(){let l=Ip(e).$implicit;return wp(qS(5).applySuggestion(l))}),y_(2),fd()()}if(n&2){let e=t.$implicit,a=qS(5);ZC(2),iv(` `,e.invoiceNumber,` · `,e.clientDisplayName,` · `,a.money(e.amountCents),` · `,e.score,`% `)}}function ht(n,t){if(n&1&&(Us(0,`section`,39)(1,`h3`,56),y_(2),fd(),Us(3,`p`,18),y_(4),fd(),Us(5,`ul`),LS(6,yt,3,4,`li`,null,Ze),fd()()),n&2){let e=qS(4);ZC(2),nv(e.i18n.t(`bankWorkspace.suggestions`)),ZC(2),nv(e.i18n.t(`bankWorkspace.suggestionsHint`)),ZC(2),jS(e.suggestions())}}function ft(n,t){if(n&1){let e=zS();Us(0,`p`,10),y_(1),fd(),Us(2,`div`)(3,`button`,12),Gy(`click`,function(){Ip(e);return wp(qS(4).loadInvoices())}),y_(4),fd()()}if(n&2){let e=qS(4);ZC(),nv(e.i18n.t(`bank.error`)),ZC(3),vd(` `,e.i18n.t(`bank.reload`),` `)}}function xt(n,t){if(n&1&&(Us(0,`p`,8),y_(1),fd()),n&2){let e=qS(4);ZC(),nv(e.i18n.t(`bank.loading`))}}function vt(n,t){if(n&1&&(Us(0,`p`),y_(1),fd()),n&2){let e=qS(4);ZC(),nv(e.i18n.t(`bankWorkspace.noInvoices`))}}function bt(n,t){if(n&1&&(Us(0,`option`,44),y_(1),fd()),n&2){let e=t.$implicit;Fy(`value`,e.id),ZC(),rv(` `,e.invoiceNumber,` — `,e.title,` `)}}function Ct(n,t){if(n&1&&y_(0),n&2)vd(` `,qS(4).i18n.t(`bankWorkspace.invoiceInvalid`),` `)}function gt(n,t){if(n&1&&(Us(0,`a`,35),y_(1),fd()),n&2){let e=qS(4);Fy(`routerLink`,k_(2,ne,e.matchForm.invoiceId().value())),ZC(),nv(e.i18n.t(`bankWorkspace.viewInvoice`))}}function kt(n,t){if(n&1&&(Us(0,`p`,8),y_(1),fd()),n&2){let e=qS(4);ZC(),nv(e.i18n.t(`bank.loading`))}}function St(n,t){if(n&1){let e=zS();Us(0,`p`,10),y_(1),fd(),Us(2,`div`)(3,`button`,12),Gy(`click`,function(){Ip(e);let l=qS(4);return wp(l.selectInvoice(l.matchForm.invoiceId().value()))}),y_(4),fd()()}if(n&2){let e=qS(4);ZC(),nv(e.i18n.t(`bank.error`)),ZC(3),vd(` `,e.i18n.t(`bank.reload`),` `)}}function It(n,t){if(n&1&&(Us(0,`p`),y_(1),fd()),n&2){let e=qS(4);ZC(),nv(e.i18n.t(`bankWorkspace.noPayments`))}}function Bt(n,t){if(n&1&&(Us(0,`option`,44),y_(1),j_(2,`localizedDate`),fd()),n&2){let e=t.$implicit,a=qS(4);Fy(`value`,e.id),ZC(),ov(` `,e.reference,` — `,V_(2,4,e.paidOn,a.i18n.language()),` — `,a.money(e.availableCents),` `)}}function Et(n,t){if(n&1&&y_(0),n&2)vd(` `,qS(4).i18n.t(`bankWorkspace.paymentInvalid`),` `)}function Mt(n,t){if(n&1&&y_(0),n&2)vd(` `,qS(4).i18n.t(`bankWorkspace.amountInvalid`),` `)}function Rt(n,t){if(n&1&&y_(0),n&2)vd(` `,qS(4).i18n.t(`bankWorkspace.feeInvalid`),` `)}function wt(n,t){if(n&1&&(Us(0,`p`),y_(1),fd()),n&2){let e=qS(4);ZC(),rv(``,e.i18n.t(`bankWorkspace.net`),` : `,e.money(e.net()??0))}}function Tt(n,t){if(n&1&&y_(0),n&2)vd(` `,qS(4).i18n.t(`bankWorkspace.netInvalid`),` `)}function Pt(n,t){if(n&1&&(Us(0,`p`,54),y_(1),fd()),n&2){let e=qS(4);ZC(),nv(e.i18n.t(`bankWorkspace.retryHint`))}}function Ft(n,t){if(n&1){let e=zS();Us(0,`section`,22)(1,`h2`,38),y_(2),fd(),Us(3,`p`),y_(4),fd(),Us(5,`p`,18),y_(6),fd(),OS(7,_t,2,1,`p`,8)(8,ht,8,2,`section`,39),OS(9,ft,5,2)(10,xt,2,1,`p`,8)(11,vt,2,1,`p`),Us(12,`form`,40),Gy(`submit`,function(l){Ip(e);return wp(qS(3).reconcile(l))}),Us(13,`label`,41),y_(14),Us(15,`select`,42,1),Gy(`change`,function(){Ip(e);let l=t_(16);return wp(qS(3).selectInvoice(l.value))}),Us(17,`option`,43),y_(18),fd(),LS(19,bt,2,3,`option`,44,L),fd(),qT(),Us(21,`span`,45),OS(22,Ct,1,1),fd()(),OS(23,gt,2,4,`a`,35),OS(24,kt,2,1,`p`,8)(25,St,5,2)(26,It,2,1,`p`),Us(27,`label`,41),y_(28),Us(29,`select`,46)(30,`option`,43),y_(31),fd(),LS(32,Bt,3,7,`option`,44,L),fd(),qT(),Us(34,`span`,47),OS(35,Et,1,1),fd()(),Us(36,`label`,41),y_(37),Py(38,`input`,48),qT(),Us(39,`span`,49),OS(40,Mt,1,1),fd()(),Us(41,`label`,41),y_(42),Py(43,`input`,50),qT(),Us(44,`span`,51),OS(45,Rt,1,1),fd()(),Us(46,`p`,52),y_(47),fd(),OS(48,wt,2,2,`p`),Us(49,`p`,53),OS(50,Tt,1,1),fd(),OS(51,Pt,2,1,`p`,54),Us(52,`div`)(53,`button`,55),y_(54),fd()()()()}if(n&2){let e=qS(3);ZC(2),nv(e.i18n.t(`bankWorkspace.allocate`)),ZC(2),nv(e.i18n.t(`bankWorkspace.groupHint`)),ZC(2),nv(e.i18n.t(`bankWorkspace.paymentHint`)),ZC(),kS(e.suggestionState()===`loading`?7:e.suggestions().length>0?8:-1),ZC(2),kS(e.invoicesFailed()?9:e.invoicesLoading()?10:e.invoices().length?-1:11),ZC(5),nv(e.i18n.t(`bank.invoice`)),ZC(),Fy(`formField`,e.matchForm.invoiceId),ky(`aria-invalid`,e.invalid(`invoiceId`)),ZT(),ZC(3),nv(e.i18n.t(`bank.chooseInvoice`)),ZC(),jS(e.invoices()),ZC(3),kS(e.invalid(`invoiceId`)?22:-1),ZC(),kS(e.matchForm.invoiceId().value()?23:-1),ZC(),kS(e.paymentState()===`loading`?24:e.paymentState()===`error`?25:e.paymentState()===`ready`&&!e.payments().length?26:-1),ZC(4),nv(e.i18n.t(`bankWorkspace.payment`)),ZC(),Fy(`formField`,e.matchForm.paymentId),ky(`aria-invalid`,e.invalid(`paymentId`)),ZT(),ZC(2),nv(e.i18n.t(`bankWorkspace.choosePayment`)),ZC(),jS(e.payments()),ZC(3),kS(e.invalid(`paymentId`)?35:-1),ZC(2),nv(e.i18n.t(`bank.allocationAmount`)),ZC(),Fy(`formField`,e.matchForm.amount),ky(`aria-invalid`,e.invalid(`amount`)||e.netInvalid()),ZT(),ZC(2),kS(e.invalid(`amount`)?40:-1),ZC(2),nv(e.i18n.t(`bank.feeAmount`)),ZC(),Fy(`formField`,e.matchForm.fee),ky(`aria-invalid`,e.invalid(`fee`)),ZT(),ZC(2),kS(e.invalid(`fee`)?45:-1),ZC(2),nv(e.i18n.t(`bank.feeHint`)),ZC(),kS(e.net()!==void 0?48:-1),ZC(2),kS(e.netInvalid()?50:-1),ZC(),kS(e.pendingMatch()?51:-1),ZC(2),Fy(`disabled`,e.busy()||!!e.cancelling()||e.invoicesLoading()||e.paymentState()===`loading`),ZC(),vd(` `,e.i18n.t(e.pendingMatch()?`bankWorkspace.retry`:`bank.reconcile`),` `)}}function Nt(n,t){n&1&&Iy(0,Ft,55,31,`section`,37),n&2&&Fy(`appCan`,`bank.reconcile`)}function Dt(n,t){if(n&1&&(Us(0,`p`),y_(1),fd()),n&2){let e=qS(2);ZC(),nv(e.i18n.t(`bankWorkspace.noAllocations`))}}function Wt(n,t){if(n&1){let e=zS();Us(0,`th`,33)(1,`button`,59),Gy(`click`,function(){let l=Ip(e).$implicit;return wp(qS(3).sortBy(`allocation`,l.key))}),fd()()}if(n&2){let e=t.$implicit,a=qS(3);Xy(`amount`,e.kind===`number`),ky(`aria-sort`,a.sortDirection(`allocation`,e.key)),ZC(),Fy(`label`,a.i18n.t(e.label))(`direction`,a.sortDirection(`allocation`,e.key))}}function Vt(n,t){if(n&1&&(Us(0,`small`),y_(1),fd()),n&2){let e=qS(4);ZC(),nv(e.i18n.t(`bank.paymentCancelled`))}}function Ot(n,t){if(n&1){let e=zS();Us(0,`button`,62),Gy(`click`,function(){Ip(e);let l=qS().$implicit;return wp(qS(3).selectCancellation(l))}),y_(1),fd()}if(n&2){let e=qS(4);Fy(`disabled`,e.busy()||!!e.pendingMatch()||!!e.pendingCancellation()),ZC(),vd(` `,e.i18n.t(`bankWorkspace.cancelAllocation`),` `)}}function Lt(n,t){if(n&1&&(Us(0,`tr`)(1,`th`,34)(2,`a`,35),y_(3),fd(),OS(4,Vt,2,1,`small`),fd(),Us(5,`td`),y_(6),fd(),Us(7,`td`,60),y_(8),fd(),Us(9,`td`,60),y_(10),fd(),Us(11,`td`),Iy(12,Ot,2,2,`button`,61),fd()()),n&2){let e=t.$implicit,a=qS(3);ZC(2),Fy(`routerLink`,k_(7,ne,e.invoiceId)),ZC(),nv(e.invoiceNumber),ZC(),kS(e.paymentCancelled?4:-1),ZC(2),nv(e.paymentId),ZC(2),nv(a.money(e.amountCents)),ZC(2),nv(a.money(e.feeCents)),ZC(2),Fy(`appCan`,`bank.reconcile`)}}function At(n,t){if(n&1&&(Us(0,`div`,25)(1,`table`)(2,`thead`)(3,`tr`),LS(4,Wt,2,5,`th`,58,Qe),Us(6,`th`,33),y_(7),fd()()(),Us(8,`tbody`),LS(9,Lt,13,9,`tr`,null,et),fd()()()),n&2){let e=qS(2);ZC(4),jS(e.allocationColumns),ZC(3),nv(e.i18n.t(`bank.allocation`)),ZC(2),jS(e.sortedAllocations())}}function Ht(n,t){if(n&1&&y_(0),n&2)vd(` `,qS(4).i18n.t(`bankWorkspace.reasonInvalid`),` `)}function qt(n,t){if(n&1&&(Us(0,`p`,54),y_(1),fd()),n&2){let e=qS(4);ZC(),nv(e.i18n.t(`bankWorkspace.retryHint`))}}function zt(n,t){if(n&1){let e=zS();Us(0,`form`,64),Gy(`submit`,function(l){Ip(e);return wp(qS(3).cancelAllocation(l))}),Us(1,`h3`),y_(2),fd(),Us(3,`p`),y_(4),fd(),Us(5,`p`),y_(6),fd(),Us(7,`a`,19),y_(8),fd(),Us(9,`label`,41),y_(10),Py(11,`textarea`,65,2),qT(),Us(13,`span`,66),OS(14,Ht,1,1),fd()(),OS(15,qt,2,1,`p`,54),Us(16,`div`,67)(17,`button`,68),y_(18),fd(),Us(19,`button`,11),Gy(`click`,function(){Ip(e);return wp(qS(3).closeCancellation())}),y_(20),fd()()()}if(n&2){let e=qS(),a=qS(2);ZC(2),nv(a.i18n.t(`bankWorkspace.cancelContext`)),ZC(2),sv(` `,e.invoiceNumber,` · `,e.paymentId,` · `,a.money(e.amountCents),` · `,a.i18n.t(`bank.fees`),` `,a.money(e.feeCents),` `),ZC(2),nv(a.i18n.t(`bankWorkspace.feePosted`)),ZC(),Fy(`queryParams`,a.ledgerQuery()),ZC(),nv(a.i18n.t(`bankWorkspace.viewFees`)),ZC(2),nv(a.i18n.t(`bank.reason`)),ZC(),Fy(`formField`,a.cancelForm.reason),ky(`aria-invalid`,a.cancelForm.reason().touched()&&a.cancelForm.reason().invalid()),ZT(),ZC(3),kS(a.cancelForm.reason().touched()&&a.cancelForm.reason().invalid()?14:-1),ZC(),kS(a.pendingCancellation()?15:-1),ZC(2),Fy(`disabled`,a.busy()),ZC(),vd(` `,a.i18n.t(a.pendingCancellation()?`bankWorkspace.retry`:`bankWorkspace.cancelAllocation`)),ZC(),Fy(`disabled`,a.busy()||!!a.pendingCancellation()),ZC(),vd(` `,a.i18n.t(`bankWorkspace.cancelClose`),` `)}}function $t(n,t){n&1&&Iy(0,zt,21,18,`form`,63),n&2&&Fy(`appCan`,`bank.reconcile`)}function Ut(n,t){if(n&1&&(Us(0,`p`,8),y_(1),fd()),n&2){let e=qS(2);ZC(),nv(e.i18n.t(`bank.loading`))}}function Gt(n,t){if(n&1){let e=zS();Us(0,`p`,10),y_(1),fd(),Us(2,`div`)(3,`button`,12),Gy(`click`,function(){Ip(e);return wp(qS(2).loadHistory())}),y_(4),fd()()}if(n&2){let e=qS(2);ZC(),nv(e.i18n.t(`bank.error`)),ZC(3),nv(e.i18n.t(`bank.reload`))}}function Qt(n,t){if(n&1&&(Us(0,`p`),y_(1),fd()),n&2){let e=qS(2);ZC(),nv(e.i18n.t(`bank.historyEmpty`))}}function Kt(n,t){if(n&1){let e=zS();Us(0,`th`,33)(1,`button`,59),Gy(`click`,function(){let l=Ip(e).$implicit;return wp(qS(3).sortBy(`history`,l.key))}),fd()()}if(n&2){let e=t.$implicit,a=qS(3);Xy(`amount`,e.kind===`number`),ky(`aria-sort`,a.sortDirection(`history`,e.key)),ZC(),Fy(`label`,a.i18n.t(e.label))(`direction`,a.sortDirection(`history`,e.key))}}function jt(n,t){if(n&1&&(y_(0),j_(1,`localizedDate`),Us(2,`small`),y_(3),fd(),Us(4,`p`,16),y_(5),fd()),n&2){let e=qS().$implicit,a=qS(3);vd(` `,H_(1,3,e.cancelledAt,a.i18n.language(),O_(7,Ge))),ZC(3),nv(e.cancelledByUserId),ZC(2),nv(e.cancellationReason)}}function Jt(n,t){n&1&&y_(0,` — `)}function Xt(n,t){if(n&1&&(Us(0,`tr`)(1,`th`,34)(2,`a`,35),y_(3),fd(),Us(4,`small`),y_(5),fd()(),Us(6,`td`),y_(7),j_(8,`localizedDate`),Us(9,`small`),y_(10),fd()(),Us(11,`td`,60),y_(12),fd(),Us(13,`td`,60),y_(14),fd(),Us(15,`td`),OS(16,jt,6,8)(17,Jt,1,0),fd()()),n&2){let e=t.$implicit,a=qS(3);ZC(2),Fy(`routerLink`,k_(12,ne,e.invoiceId)),ZC(),nv(e.invoiceNumber),ZC(2),nv(e.paymentId),ZC(2),vd(` `,H_(8,8,e.matchedAt,a.i18n.language(),O_(14,Ge))),ZC(3),nv(e.matchedByUserId),ZC(2),nv(a.money(e.amountCents)),ZC(2),nv(a.money(e.feeCents)),ZC(2),kS(e.cancelledAt!==null?16:17)}}function Yt(n,t){if(n&1&&(Us(0,`div`,25)(1,`table`)(2,`thead`)(3,`tr`),LS(4,Kt,2,5,`th`,58,Qe),fd()(),Us(6,`tbody`),LS(7,Xt,18,15,`tr`,null,L),fd()()()),n&2){let e=qS(2);ZC(4),jS(e.historyColumns),ZC(3),jS(e.sortedHistory())}}function Zt(n,t){if(n&1&&(Us(0,`div`,13)(1,`aside`,14)(2,`h2`,15),y_(3),fd(),Us(4,`p`,16),y_(5),fd(),Us(6,`dl`)(7,`div`)(8,`dt`),y_(9),fd(),Us(10,`dd`),y_(11),fd()(),Us(12,`div`)(13,`dt`),y_(14),fd(),Us(15,`dd`),y_(16),j_(17,`localizedDate`),fd()(),Us(18,`div`)(19,`dt`),y_(20),fd(),Us(21,`dd`),y_(22),fd()(),Us(23,`div`)(24,`dt`),y_(25),fd(),Us(26,`dd`)(27,`span`,17),y_(28),fd()()(),OS(29,rt,10,4),fd(),Us(30,`p`,18),y_(31),fd(),Us(32,`a`,19),y_(33),fd()(),Us(34,`div`,20),OS(35,ut,1,1,`section`,21),OS(36,Nt,1,1,`section`,22),Us(37,`section`,23)(38,`h2`,24),y_(39),fd(),Us(40,`p`,18),y_(41),fd(),OS(42,Dt,2,1,`p`)(43,At,11,1,`div`,25),OS(44,$t,1,1,`form`,26),fd()()(),Us(45,`section`,27)(46,`h2`,28),y_(47),fd(),Us(48,`p`,18),y_(49),fd(),Us(50,`p`,18),y_(51),fd(),OS(52,Ut,2,1,`p`,8)(53,Gt,5,2)(54,Qt,2,1,`p`)(55,Yt,9,0,`div`,25),fd()),n&2){let e,a=t,l=qS();ZC(3),nv(a.reference),ZC(2),nv(a.description),ZC(4),nv(l.i18n.t(`bankWorkspace.account`)),ZC(2),nv(a.account),ZC(3),nv(l.i18n.t(`bankWorkspace.date`)),ZC(2),nv(V_(17,24,a.bookedOn,l.i18n.language())),ZC(4),nv(l.i18n.t(`bankWorkspace.amount`)),ZC(2),nv(l.money(a.amountCents)),ZC(3),nv(l.i18n.t(`bankWorkspace.status`)),ZC(3),nv(l.i18n.t(l.status())),ZC(),kS(a.amountCents>0?29:-1),ZC(2),nv(l.i18n.t(`bankWorkspace.accountHint`)),ZC(),Fy(`queryParams`,l.ledgerQuery()),ZC(),nv(l.i18n.t(`bankWorkspace.entries`)),ZC(2),kS(a.amountCents<0?35:-1),ZC(),kS(a.amountCents>0&&l.remaining()>0?36:-1),ZC(3),nv(l.i18n.t(`bankWorkspace.allocations`)),ZC(2),nv(l.i18n.t(`bankWorkspace.immutable`)),ZC(),kS(a.allocations.length?43:42),ZC(2),kS((e=l.cancelling())?44:-1,e),ZC(3),nv(l.i18n.t(`bank.history`)),ZC(2),nv(l.i18n.t(`bank.historyHint`)),ZC(2),nv(l.i18n.t(`bankWorkspace.historySortLoaded`)),ZC(),kS(l.historyState()===`loading`?52:l.historyState()===`error`?53:l.history().length?55:54)}}var te=()=>({invoiceId:``,paymentId:``,amount:``,fee:`0.00`});var Ue=class n{authentication=g(E);i18n=g(Ie);api=g(w);invoicesApi=g(R);route=g(G);router=g(ue);params=T(this.route.queryParamMap,{initialValue:this.route.snapshot.queryParamMap});confirmation=g(P);document=g(H);injector=g(ce);destroyRef=g(pe);pendingTasks=g(Mn);result=xH(`result`);cancelReason=xH(`cancelReason`);state=Ke(`loading`);busy=Ke(!1);error=Ke(void 0);saved=Ke(!1);transaction=Ke(void 0);titleLabel=Ft$1(()=>!this.authentication.can(`bank.reconcile`)||(this.transaction()?.amountCents??0)<0?`bankWorkspace.context`:`bankWorkspace.reconciliation`);invoices=Ke([]);invoicesFailed=Ke(!1);invoicesLoading=Ke(!1);payments=Ke([]);paymentState=Ke(`idle`);history=Ke([]);suggestions=Ke([]);supplierPayments=Ke([]);supplierMatches=Ke([]);suggestionState=Ke(`loading`);allocationColumns=O;historyColumns=j;allocationSort=Ft$1(()=>k$1(this.params().get(`allocationSort`),O));historySort=Ft$1(()=>k$1(this.params().get(`historySort`),j));sortedAllocations=Ft$1(()=>(this.transaction()?.allocations??[]).toSorted(I(this.allocationSort(),O,this.i18n.language(),t=>t.matchId,`invoice-asc`)));sortedHistory=Ft$1(()=>this.history().toSorted(I(this.historySort(),j,this.i18n.language(),t=>t.id)));historyState=Ke(`loading`);cancelling=Ke(void 0);pendingMatch=Ke(void 0);pendingCancellation=Ke(void 0);model=Ke(te());matchForm=nr(this.model,t=>{an(t,()=>this.busy()||this.state()!==`ready`||this.pendingMatch()!==void 0||this.cancelling()!==void 0),gn(t.invoiceId),P$1(t.invoiceId,({value:e})=>this.invoices().some(a=>a.id===e())?void 0:{kind:`invoice`}),gn(t.paymentId),P$1(t.paymentId,({value:e})=>this.payments().some(a=>a.id===e())?void 0:{kind:`payment`}),gn(t.amount),P$1(t.amount,({value:e,valueOf:a})=>{let l=u$1(e(),2),m=this.payments().find(Ke=>Ke.id===a(t.paymentId));return l!==void 0&&l>0&&m!==void 0&&l<=m.availableCents?void 0:{kind:`amount`}}),gn(t.fee),P$1(t.fee,({value:e,valueOf:a})=>{let l=u$1(e(),2),m=u$1(a(t.amount),2);return l!==void 0&&l>=0&&m!==void 0&&l<m?void 0:{kind:`fee`}})});cancelForm=nr(Ke({reason:``}),t=>{gn(t.reason),mn(t.reason,/\S/),cn(t.reason,500),an(t,()=>this.busy()||this.pendingCancellation()!==void 0)});net=Ft$1(()=>{let t=u$1(this.model().amount,2),e=u$1(this.model().fee,2);return t===void 0||e===void 0?void 0:t-e});remaining=Ft$1(()=>{let t=this.transaction();return t?t.amountCents-t.matchedCents:0});netInvalid=Ft$1(()=>{let t=this.net();return t!==void 0&&t>this.remaining()});status=Ft$1(()=>{let t=this.transaction();return D(t?T$1(t):`unmatched`)});backQuery=H$1(q(this.route.snapshot.queryParamMap));generation=0;paymentGeneration=0;historyGeneration=0;matchKey;constructor(){PH(()=>{this.saved()&&this.result()?.nativeElement.focus()}),PH(()=>{this.cancelling()&&this.cancelReason()?.nativeElement.focus()}),Ol(()=>this.route.paramMap.pipe(U(this.destroyRef)).subscribe(()=>{this.pendingTasks.run(()=>this.load())}))}async load(){if(this.busy())return;let t=++this.generation;++this.paymentGeneration,this.state.set(`loading`),this.error.set(void 0),this.saved.set(!1),this.transaction.set(void 0),this.suggestions.set([]),this.supplierPayments.set([]),this.supplierMatches.set([]),this.suggestionState.set(`loading`),this.payments.set([]),this.paymentState.set(`idle`),this.cancelling.set(void 0),this.pendingMatch.set(void 0),this.pendingCancellation.set(void 0),this.matchKey=void 0,this.matchForm().reset(te()),this.cancelForm().reset({reason:``});let e=this.route.snapshot.paramMap.get(`transactionId`);if(!wu.is(a)(e)){this.error.set(`bank.transaction_not_found`),this.state.set(`error`);return}try{let a=await this.api.get(e);if(t!==this.generation||this.destroyRef.destroyed)return;if(!a.success){this.error.set(a.code),this.state.set(`error`);return}this.transaction.set(a.result),this.resetMatch(),this.state.set(`ready`);let l=[this.loadHistory(),this.loadInvoices(),this.loadSuggestions(e)];a.result.amountCents<0&&l.push(this.loadSupplierPayments(e)),await Promise.all(l)}catch{t===this.generation&&!this.destroyRef.destroyed&&(this.error.set(`bank.error`),this.state.set(`error`))}}async loadSuggestions(t){try{let e=await this.api.suggestions(t);if(this.transaction()?.id!==t||this.destroyRef.destroyed)return;if(!e.success){this.suggestionState.set(`error`);return}this.suggestions.set(e.result),this.suggestionState.set(`ready`)}catch{this.transaction()?.id===t&&!this.destroyRef.destroyed&&this.suggestionState.set(`error`)}}async loadSupplierPayments(t){let[e,a]=await Promise.all([this.api.supplierPayments(t),this.api.supplierMatches(t)]);this.transaction()?.id!==t||this.destroyRef.destroyed||(e.success&&this.supplierPayments.set(e.result),a.success&&this.supplierMatches.set(a.result))}async matchSupplier(t){let e=this.transaction();if(e===void 0||this.busy()||!await this.confirmation.request(this.i18n.t(`bankWorkspace.supplierConfirm`)))return;this.busy.set(!0);let l=Math.min(t.availableCents,-e.amountCents);try{let m=await this.api.matchSupplier(e.id,{requestId:crypto.randomUUID(),batchId:t.batchId,invoiceId:t.invoiceId,amountCents:l});m.success?(this.supplierPayments.set(m.result),await this.loadSupplierPayments(e.id),this.saved.set(!0)):this.error.set(m.code)}catch{this.error.set(`bank.error`)}finally{this.busy.set(!1)}}async unmatchSupplier(t){let e=this.transaction();if(!(e===void 0||this.busy()||!await this.confirmation.request(this.i18n.t(`bankWorkspace.supplierUnmatchConfirm`)))){this.busy.set(!0);try{let l=await this.api.unmatchSupplier(e.id,t.id,this.i18n.t(`bankWorkspace.supplierUnmatchReason`));l.success?(this.supplierPayments.set(l.result),await this.loadSupplierPayments(e.id),this.saved.set(!0)):this.error.set(l.code)}catch{this.error.set(`bank.error`)}finally{this.busy.set(!1)}}}async applySuggestion(t){await this.selectInvoice(t.invoiceId),this.payments().some(e=>e.id===t.paymentId)&&this.model.update(e=>m(l({},e),{invoiceId:t.invoiceId,paymentId:t.paymentId,amount:m$1(t.amountCents,2),fee:`0.00`}))}async loadInvoices(){if(!this.authentication.can(`bank.reconcile`)||!this.authentication.can(`invoice.read`))return;let t=this.generation;this.invoicesFailed.set(!1),this.invoicesLoading.set(!0);try{let e=await this.invoicesApi.list();t===this.generation&&!this.destroyRef.destroyed&&this.invoices.set(e.filter(a=>a.status===`issued`||a.status===`paid`))}catch{t===this.generation&&!this.destroyRef.destroyed&&this.invoicesFailed.set(!0)}finally{t===this.generation&&!this.destroyRef.destroyed&&this.invoicesLoading.set(!1)}}async refresh(){this.pendingMatch()||this.pendingCancellation()||await this.canDeactivate()&&await this.load()}async selectInvoice(t){if(this.busy()||this.pendingMatch())return;let e=++this.paymentGeneration;if(this.model.update(a=>m(l({},a),{invoiceId:t,paymentId:``})),this.payments.set([]),this.paymentState.set(`idle`),!!this.invoices().some(a=>a.id===t)){this.paymentState.set(`loading`);try{let a=await this.api.payments(t);if(e!==this.paymentGeneration||this.destroyRef.destroyed)return;if(!a.success){this.paymentState.set(`error`);return}this.payments.set(a.result.filter(l=>l.availableCents>0)),this.paymentState.set(`ready`)}catch{e===this.paymentGeneration&&!this.destroyRef.destroyed&&this.paymentState.set(`error`)}}}invalid(t){return this.matchForm[t]().touched()&&this.matchForm[t]().invalid()}reconcile(t){if(t.preventDefault(),!(this.busy()||this.cancelling()||this.paymentState()===`loading`||this.state()!==`ready`)){if(this.pendingMatch()){this.sendMatch(!1);return}this.matchForm().markAsTouched();for(let e of[`invoiceId`,`paymentId`,`amount`,`fee`])if(this.matchForm[e]().invalid()){this.matchForm[e]().focusBoundControl();return}if(this.netInvalid()){this.matchForm.amount().focusBoundControl();return}or(this.matchForm,async()=>{let e=u$1(this.model().amount,2),a=u$1(this.model().fee,2);if(e===void 0||a===void 0)return;let l$2={paymentId:this.model().paymentId,amountCents:e,feeCents:a},m$2=JSON.stringify(l$2);this.matchKey?.fingerprint!==m$2&&(this.matchKey={fingerprint:m$2,id:crypto.randomUUID()}),this.pendingMatch.set(m(l({},l$2),{requestId:this.matchKey.id})),await this.sendMatch()})}}async sendMatch(t=!0){let e=this.transaction(),a=this.pendingMatch();if(!(!e||!a||this.busy())){this.busy.set(!0),this.error.set(void 0),this.saved.set(!1);try{if(t&&!await this.confirmation.request(this.i18n.t(`bankWorkspace.confirmMatch`))){this.pendingMatch.set(void 0);return}let l=await this.api.match(e.id,a);if(this.destroyRef.destroyed)return;if(!l.success){this.error.set(l.code),l.code!==`bank.error`&&this.pendingMatch.set(void 0);return}this.pendingMatch.set(void 0),this.matchKey=void 0,await this.complete(e.id,l.result)}catch{this.destroyRef.destroyed||this.error.set(`bank.error`)}finally{this.destroyRef.destroyed||this.busy.set(!1)}}}async selectCancellation(t){if(this.busy()||this.pendingMatch()||this.pendingCancellation())return;let e=this.cancelForm().dirty()||this.matchForm().dirty(),a=this.document.activeElement;this.busy.set(!0);try{if(e&&!await this.confirmation.request(this.i18n.t(`bankWorkspace.unsaved`))){this.destroyRef.destroyed||Ol(()=>{!this.busy()&&a instanceof HTMLElement&&a.isConnected&&a.focus()},{injector:this.injector});return}if(this.destroyRef.destroyed||!this.transaction()?.allocations.some(l=>l.matchId===t.matchId))return;this.resetMatch(),this.cancelling.set(t),this.cancelForm().reset({reason:``})}finally{this.destroyRef.destroyed||this.busy.set(!1)}}async closeCancellation(){this.busy()||this.pendingCancellation()||this.cancelForm().dirty()&&!await this.confirmation.request(this.i18n.t(`bankWorkspace.unsaved`))||(this.cancelling.set(void 0),this.cancelForm().reset({reason:``}))}cancelAllocation(t){if(t.preventDefault(),!this.busy()){if(this.pendingCancellation()){this.sendCancellation(!1);return}if(this.cancelForm().markAsTouched(),this.cancelForm.reason().invalid()){this.cancelForm.reason().focusBoundControl();return}or(this.cancelForm,async()=>{let e=this.transaction(),a=this.cancelling(),l=this.cancelForm().value().reason.trim();!e||!a||(this.pendingCancellation.set({matchId:a.matchId,reason:l}),await this.sendCancellation())})}}async sendCancellation(t=!0){let e=this.transaction(),a=this.pendingCancellation();if(!(!e||!a||this.busy())){this.busy.set(!0),this.saved.set(!1),this.error.set(void 0);try{if(t&&!await this.confirmation.request(this.i18n.t(`bankWorkspace.confirmUnmatch`))){this.pendingCancellation.set(void 0);return}let l=await this.api.unmatch(e.id,a.matchId,a.reason);if(this.destroyRef.destroyed)return;if(!l.success){this.error.set(l.code),l.code!==`bank.error`&&this.pendingCancellation.set(void 0);return}this.pendingCancellation.set(void 0),this.cancelling.set(void 0),this.cancelForm().reset({reason:``}),await this.complete(e.id,l.result)}catch{this.destroyRef.destroyed||this.error.set(`bank.error`)}finally{this.destroyRef.destroyed||this.busy.set(!1)}}}async complete(t,e){let a=e.find(l=>l.id===t);if(a)this.transaction.set(a);else{let l=await this.api.get(t);if(this.destroyRef.destroyed)return;if(!l.success){this.error.set(l.code),this.state.set(`error`);return}this.transaction.set(l.result)}this.resetMatch(),this.saved.set(!0),await this.loadHistory()}resetMatch(){++this.paymentGeneration,this.payments.set([]),this.paymentState.set(`idle`),this.matchForm().reset(m(l({},te()),{amount:m$1(Math.max(0,this.remaining()),2,`.`)}))}async loadHistory(){let t=this.transaction()?.id;if(!t)return;let e=++this.historyGeneration;this.history.set([]),this.historyState.set(`loading`);try{let a=await this.api.history(t);if(e!==this.historyGeneration||this.destroyRef.destroyed||this.transaction()?.id!==t)return;if(!a.success){this.historyState.set(`error`);return}this.history.set(a.result),this.historyState.set(`ready`)}catch{e===this.historyGeneration&&!this.destroyRef.destroyed&&this.historyState.set(`error`)}}ledgerQuery(){let t=this.transaction();return{from:t?.bookedOn,to:t?.bookedOn,q:t?.reference}}sortDirection(t,e){return x(t===`allocation`?this.allocationSort():this.historySort(),e)}sortBy(t,e){let l=L$1(t===`allocation`?this.allocationSort():this.historySort(),e);this.router.navigate([],{relativeTo:this.route,queryParams:{[t===`allocation`?`allocationSort`:`historySort`]:l===`none`?null:l},queryParamsHandling:`merge`,replaceUrl:!0})}money(t){let e=this.transaction()?.currency??`EUR`;return Ne(t,this.i18n.language(),e)}dirty(){return this.matchForm().dirty()||this.cancelForm().dirty()||this.pendingMatch()!==void 0||this.pendingCancellation()!==void 0}async canDeactivate(){return!this.busy()&&(!this.dirty()||await this.confirmation.request(this.i18n.t(`bankWorkspace.unsaved`)))}beforeUnload(t){(this.busy()||this.dirty())&&t.preventDefault()}static ɵfac=function(e){return new(e||n)};static ɵcmp=Fb({type:n,selectors:[[`app-bank-reconciliation`]],viewQuery:function(e,a){e&1&&Ky(a.result,je,5)(a.cancelReason,Je,5),e&2&&e_(2)},hostAttrs:[1,`page-container`],hostBindings:function(e,a){e&1&&Gy(`beforeunload`,function(m){return a.beforeUnload(m)},Zw)},decls:13,vars:7,consts:[[`result`,``],[`invoice`,``],[`cancelReason`,``],[`aria-labelledby`,`match-title`,1,`detail-page`,`wide-page`],[`layout`,`stacked`],[`pageBack`,``,`routerLink`,`/banking`,3,`queryParams`],[`id`,`match-title`],[`tabindex`,`-1`,`role`,`status`],[`role`,`status`],[`appNotice`,``,`variant`,`success`],[`appNotice`,``,`variant`,`danger`,`role`,`alert`],[`appButton`,``,`type`,`button`,3,`click`,`disabled`],[`appButton`,``,`type`,`button`,3,`click`],[1,`context`],[`aria-labelledby`,`transaction-title`,1,`ds-panel`,`task-panel`],[`id`,`transaction-title`],[1,`pre-wrap`],[`appBadge`,``],[1,`muted`],[`routerLink`,`/banking/ledger`,3,`queryParams`],[1,`bank-section`],[`aria-labelledby`,`supplier-match-title`,1,`bank-section`],[`aria-labelledby`,`allocation-title`,1,`bank-section`],[`aria-labelledby`,`allocations-title`,1,`bank-section`],[`id`,`allocations-title`],[`appDataTable`,``,`tableLayout`,`fluid`,1,`wide-table`],[`novalidate`,``,1,`ds-panel`,`task-panel`,`task-form`],[`aria-labelledby`,`history-title`,1,`bank-section`],[`id`,`history-title`],[`class`,`bank-section`,`aria-labelledby`,`supplier-match-title`,4,`appCan`],[`id`,`supplier-match-title`],[1,`suggestions`],[`appDataTable`,``,`tableLayout`,`fluid`],[`scope`,`col`],[`scope`,`row`],[3,`routerLink`],[`appButton`,``,`type`,`button`,3,`disabled`],[`class`,`bank-section`,`aria-labelledby`,`allocation-title`,4,`appCan`],[`id`,`allocation-title`],[`aria-labelledby`,`bank-suggestions-title`,1,`suggestions`],[`novalidate`,``,1,`task-form`,3,`submit`],[1,`field`],[`appFilterSelect`,``,`aria-describedby`,`invoice-error`,1,`select`,3,`change`,`formField`],[`value`,``],[3,`value`],[`id`,`invoice-error`,1,`field-error`],[`appFilterSelect`,``,`aria-describedby`,`payment-error`,1,`select`,3,`formField`],[`id`,`payment-error`,1,`field-error`],[`inputmode`,`decimal`,`aria-describedby`,`amount-error net-error`,1,`input`,3,`formField`],[`id`,`amount-error`,1,`field-error`],[`inputmode`,`decimal`,`aria-describedby`,`fee-error fee-hint`,1,`input`,3,`formField`],[`id`,`fee-error`,1,`field-error`],[`id`,`fee-hint`],[`id`,`net-error`,1,`field-error`],[`appNotice`,``,`variant`,`warning`],[`appButton`,``,`type`,`submit`,`variant`,`primary`,3,`disabled`],[`id`,`bank-suggestions-title`],[`appButton`,``,`type`,`button`,`variant`,`ghost`,3,`click`],[`scope`,`col`,3,`amount`],[`appTableSort`,``,3,`click`,`label`,`direction`],[1,`amount`],[`appButton`,``,`type`,`button`,`variant`,`warning`,3,`disabled`,`click`,4,`appCan`],[`appButton`,``,`type`,`button`,`variant`,`warning`,3,`click`,`disabled`],[`class`,`ds-panel task-panel task-form`,`novalidate`,``,3,`submit`,4,`appCan`],[`novalidate`,``,1,`ds-panel`,`task-panel`,`task-form`,3,`submit`],[`rows`,`3`,`aria-describedby`,`reason-error`,1,`input`,3,`formField`],[`id`,`reason-error`,1,`field-error`],[1,`actions`],[`appButton`,``,`type`,`submit`,`variant`,`warning`,3,`disabled`]],template:function(e,a){if(e&1&&(Us(0,`section`,3)(1,`app-page-header`,4)(2,`a`,5),y_(3),fd(),Us(4,`h1`,6),y_(5),fd(),Us(6,`p`),y_(7),fd()(),OS(8,tt,4,1,`div`,7),OS(9,it,3,2),OS(10,at,2,1,`p`,8)(11,ot,3,1,`div`)(12,Zt,56,27),fd()),e&2){let l,m;ZC(2),Fy(`queryParams`,a.backQuery),ZC(),nv(a.i18n.t(`bankWorkspace.back`)),ZC(2),nv(a.i18n.t(a.titleLabel())),ZC(2),nv(a.i18n.t(`bank.noTransfer`)),ZC(),kS(a.saved()?8:-1),ZC(),kS((l=a.error())?9:-1,l),ZC(),kS(a.state()===`loading`?10:a.state()===`error`?11:(m=a.transaction())?12:-1,m)}},dependencies:[Ae,l$1,d,N,c,yn,k,g$1,Dt$1,u,p],styles:[`.bank-page[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-4);padding:var(--%NS%page-header-y) var(--%NS%page-x);min-inline-size:0}.bank-section[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-4);min-inline-size:0}.actions[_ngcontent-%COMP%], .chips[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:var(--%NS%space-3);align-items:end}.field[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-2);min-inline-size:0}.muted[_ngcontent-%COMP%], small[_ngcontent-%COMP%]{color:var(--%NS%color-muted)}small[_ngcontent-%COMP%]{display:block;font-size:var(--%NS%text-sm);font-weight:400}.amount[_ngcontent-%COMP%]{text-align:end;white-space:nowrap;font-variant-numeric:tabular-nums}.field-error[_ngcontent-%COMP%]{color:var(--%NS%color-danger);font-size:var(--%NS%text-sm)}.task-form[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-4)}.task-panel[_ngcontent-%COMP%]{padding:var(--%NS%space-5);display:grid;gap:var(--%NS%space-4);min-inline-size:0}.context[_ngcontent-%COMP%]{display:grid;grid-template-columns:minmax(16rem,1fr) minmax(0,2fr);gap:var(--%NS%space-6);align-items:start}dl[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-3)}dt[_ngcontent-%COMP%]{color:var(--%NS%color-muted);font-size:var(--%NS%text-sm)}dd[_ngcontent-%COMP%]{margin:0;overflow-wrap:anywhere}input[_ngcontent-%COMP%], select[_ngcontent-%COMP%], textarea[_ngcontent-%COMP%]{min-inline-size:0;max-inline-size:100%}.pre-wrap[_ngcontent-%COMP%]{white-space:pre-wrap;overflow-wrap:anywhere}button[_ngcontent-%COMP%]{max-inline-size:100%;white-space:normal}[tabindex="-1"][_ngcontent-%COMP%]:focus{outline:2px solid var(--%NS%color-button-primary-highlight);outline-offset:var(--%NS%space-1)}@media(max-width:60rem){.context[_ngcontent-%COMP%]{grid-template-columns:minmax(0,1fr)}}[_nghost-%COMP%]{display:block}.detail-page[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-4);min-inline-size:0;inline-size:100%;max-inline-size:var(--%NS%page-width-detail);margin-inline:auto;padding:var(--%NS%page-header-y) var(--%NS%page-x)}.detail-page.form-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-form)}.detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-wide)}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-2xl);overflow-wrap:anywhere}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-base);color:var(--%NS%color-muted);overflow-wrap:anywhere}.detail-page[_ngcontent-%COMP%] > button[_ngcontent-%COMP%]{justify-self:start}@media print{.detail-page[_ngcontent-%COMP%], .detail-page.form-page[_ngcontent-%COMP%], .detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:none}}`]})};export{Ue as BankReconciliation};
@@ -1 +1 @@
1
- import{$t as ZC,Dn as g,E as Ft,Wr as y_,kn as hd,nt as NH,qn as ky,rr as nv,ur as pd,w as Fb}from"./chunk-BAHiFuUo.js";import{m as Ie}from"./main-F7D3L737.js";var u=class l{i18n=g(Ie);label=NH.required();direction=NH(`none`);indicator=Ft(()=>({none:`↕`,ascending:`↑`,descending:`↓`})[this.direction()]);actionLabel=Ft(()=>{return this.i18n.tf({none:`listControls.sortAscending`,ascending:`listControls.sortDescending`,descending:`listControls.resetSort`}[this.direction()],{column:this.label()})});static ɵfac=function(e){return new(e||l)};static ɵcmp=Fb({type:l,selectors:[[`button`,`appTableSort`,``]],hostAttrs:[`type`,`button`],hostVars:2,hostBindings:function(e,n){e&2&&ky(`aria-label`,n.actionLabel())(`title`,n.actionLabel())},inputs:{label:[1,`label`],direction:[1,`direction`]},decls:4,vars:2,consts:[[`aria-hidden`,`true`,1,`sort-indicator`]],template:function(e,n){e&1&&(pd(0,`span`),y_(1),hd(),pd(2,`span`,0),y_(3),hd()),e&2&&(ZC(),nv(n.label()),ZC(2),nv(n.indicator()))},styles:[`[_nghost-%COMP%]{display:inline-flex;align-items:center;justify-content:inherit;gap:var(--%NS%space-2);min-block-size:2rem;max-inline-size:100%;padding:0;border:0;border-radius:var(--%NS%radius-xs);background:transparent;color:inherit;font:inherit;text-align:inherit;text-transform:inherit;cursor:pointer}.sort-indicator[_ngcontent-%COMP%]{flex:none;font-size:var(--%NS%text-base)}@media(pointer:coarse){[_nghost-%COMP%]{min-block-size:2.75rem}}`]})};export{u as t};
1
+ import{$t as ZC,Dn as g,E as Ft,Wr as y_,kn as hd,nt as NH,qn as ky,rr as nv,ur as pd,w as Fb}from"./chunk-BAHiFuUo.js";import{m as Ie}from"./main-LXYWXFW4.js";var u=class l{i18n=g(Ie);label=NH.required();direction=NH(`none`);indicator=Ft(()=>({none:`↕`,ascending:`↑`,descending:`↓`})[this.direction()]);actionLabel=Ft(()=>{return this.i18n.tf({none:`listControls.sortAscending`,ascending:`listControls.sortDescending`,descending:`listControls.resetSort`}[this.direction()],{column:this.label()})});static ɵfac=function(e){return new(e||l)};static ɵcmp=Fb({type:l,selectors:[[`button`,`appTableSort`,``]],hostAttrs:[`type`,`button`],hostVars:2,hostBindings:function(e,n){e&2&&ky(`aria-label`,n.actionLabel())(`title`,n.actionLabel())},inputs:{label:[1,`label`],direction:[1,`direction`]},decls:4,vars:2,consts:[[`aria-hidden`,`true`,1,`sort-indicator`]],template:function(e,n){e&1&&(pd(0,`span`),y_(1),hd(),pd(2,`span`,0),y_(3),hd()),e&2&&(ZC(),nv(n.label()),ZC(2),nv(n.indicator()))},styles:[`[_nghost-%COMP%]{display:inline-flex;align-items:center;justify-content:inherit;gap:var(--%NS%space-2);min-block-size:2rem;max-inline-size:100%;padding:0;border:0;border-radius:var(--%NS%radius-xs);background:transparent;color:inherit;font:inherit;text-align:inherit;text-transform:inherit;cursor:pointer}.sort-indicator[_ngcontent-%COMP%]{flex:none;font-size:var(--%NS%text-base)}@media(pointer:coarse){[_nghost-%COMP%]{min-block-size:2.75rem}}`]})};export{u as t};
@@ -0,0 +1 @@
1
+ import{n as m,t as l}from"./chunk-BwCtja5l.js";import{$t as ZC,A as Gy,D as Fy,Dn as g,E as Ft,Ir as wp,It as Us,Jr as zS,Jt as Xy,K as Ke,Nr as vd,Tn as fd,Wn as kS,Wr as y_,dr as pe$1,ft as Ol,lt as OS,mr as qT,pr as qS,qn as ky,rn as Zw,rr as nv,tn as ZT,vt as Py,w as Fb,z as Ip}from"./chunk-BAHiFuUo.js";import{T as ue$1,m as Ie,o as U,r as N,v as Dt,y as G}from"./main-LXYWXFW4.js";import{Tt as Fp,Yc as qt}from"./chunk-D8Ui_APT.js";import{t as f}from"./chunk-BMiFx1ci.js";import{t as g$1}from"./chunk-B56nz2lI.js";import{t as k}from"./chunk-IrDYxRzS.js";import{_ as te}from"./chunk-BzUDWIzm.js";import{t as P}from"./chunk-CkRw7h0_.js";import{d as nr,f as or,h as yn,n as an,o as gn,r as cn,t as P$1,u as mn}from"./chunk-CSkyOfSg.js";import{o as s}from"./chunk-C6M6lCrw2.js";import{n as w,r as x}from"./chunk-DVbkiKVh2.js";import{t as g$2}from"./chunk-D8VZRHVx.js";import{t as Of}from"./chunk-B_pcpccF.js";import{t as m$1}from"./chunk-CqreQVp_.js";function le(t,i){if(t&1&&(Us(0,`h2`,5),y_(1),fd(),Us(2,`p`,6),y_(3),fd()),t&2){let e=qS();ZC(),nv(e.i18n.t(`configurationWorkspace.newCondition`)),ZC(2),nv(e.i18n.t(`referenceEditor.conditionsIntro`))}}function pe(t,i){if(t&1&&(Us(0,`app-page-header`,1),Py(1,`app-breadcrumbs`,7),Us(2,`h1`,5),y_(3),fd(),Us(4,`p`),y_(5),fd()()),t&2){let e=qS();ZC(),Fy(`label`,e.i18n.t(`backOfficeShell.breadcrumb`))(`items`,e.breadcrumbs())(`current`,e.i18n.t(e.title())),ZC(2),nv(e.i18n.t(e.title())),ZC(2),nv(e.i18n.t(`settingsHeader.conditionDescription`))}}function me(t,i){if(t&1){let e=zS();Us(0,`button`,10),Gy(`click`,function(){Ip(e);return wp(qS(2).load())}),y_(1),fd()}if(t&2){let e=qS(2);Fy(`disabled`,e.loading()),ZC(),vd(` `,e.i18n.t(`configurationWorkspace.reload`),` `)}}function ue(t,i){if(t&1&&(Us(0,`p`,8),y_(1),fd(),OS(2,me,2,2,`button`,9)),t&2){let e=qS();ZC(),nv(e.i18n.t(i)),ZC(),kS(e.ready()?-1:2)}}function fe(t,i){if(t&1&&(Us(0,`p`,2),y_(1),fd()),t&2){let e=qS();ZC(),nv(e.i18n.t(`backOffice.conditionPresets.loading`))}}function ge(t,i){if(t&1&&(Us(0,`p`,3),y_(1),fd()),t&2){let e=qS();ZC(),nv(e.i18n.t(`referenceEditor.conditionsSaved`))}}function he(t,i){if(t&1&&(Us(0,`p`,14),y_(1),fd()),t&2){let e=qS(2);ZC(),vd(` `,e.i18n.t(`backOffice.conditionPresets.nameInvalid`),` `)}}function ye(t,i){if(t&1&&(Us(0,`p`,16),y_(1),fd()),t&2){let e=qS(2);ZC(),vd(` `,e.i18n.t(`backOffice.conditionPresets.conditionsInvalid`),` `)}}function ve(t,i){if(t&1&&(Us(0,`h3`),y_(1),fd()),t&2){let e=qS(2);ZC(),nv(e.i18n.t(`configurationWorkspace.preview`))}}function _e(t,i){if(t&1&&(Us(0,`h2`),y_(1),fd()),t&2){let e=qS(2);ZC(),nv(e.i18n.t(`configurationWorkspace.preview`))}}function Ce(t,i){if(t&1&&Py(0,`app-document-text-view`,18),t&2){let e=qS(2);Fy(`source`,e.model().conditions)(`presentation`,e.model().conditionsPresentation)}}function be(t,i){if(t&1){let e=zS();Us(0,`button`,10),Gy(`click`,function(){Ip(e);return wp(qS(2).close())}),y_(1),fd()}if(t&2){let e=qS(2);Fy(`disabled`,e.saving()),ZC(),vd(` `,e.i18n.t(`backOffice.conditionPresets.cancel`),` `)}}function xe(t,i){if(t&1&&(Us(0,`a`,21),y_(1),fd()),t&2){let e=qS(2);Fy(`queryParams`,e.backQuery()),ZC(),nv(e.i18n.t(`backOffice.conditionPresets.cancel`))}}function Pe(t,i){if(t&1){let e=zS();Us(0,`form`,11),Gy(`submit`,function(a){Ip(e);return wp(qS().save(a))}),Us(1,`label`,12),y_(2),Py(3,`input`,13),qT(),fd(),OS(4,he,2,1,`p`,14),Us(5,`app-document-text-editor`,15),Gy(`presentationChange`,function(a){Ip(e);return wp(qS().setConditionsPresentation(a))}),fd(),qT(),OS(6,ye,2,1,`p`,16),Us(7,`section`,17),OS(8,ve,2,1,`h3`)(9,_e,2,1,`h2`),OS(10,Ce,1,2,`app-document-text-view`,18),fd(),Us(11,`div`,19)(12,`button`,20),y_(13),fd(),OS(14,be,2,2,`button`,9)(15,xe,2,2,`a`,21),fd()()}if(t&2){let e=qS();ZC(2),vd(``,e.i18n.t(`backOffice.conditionPresets.name`),` `),ZC(),Fy(`formField`,e.presetForm.name),ky(`aria-invalid`,e.invalid(`name`)),ZT(),ZC(),kS(e.invalid(`name`)?4:-1),ZC(),Fy(`label`,e.i18n.t(`backOffice.quote.conditions`))(`formField`,e.presetForm.conditions)(`presentation`,e.model().conditionsPresentation),ZT(),ZC(),kS(e.invalid(`conditions`)?6:-1),ZC(2),kS(e.dialog?8:9),ZC(2),kS(e.previewAvailable()?10:-1),ZC(2),Fy(`disabled`,e.saving()||e.uncertain()),ZC(),vd(` `,e.i18n.t(e.saving()?`catalogWorkspace.saving`:e.dialog?`referenceEditor.saveConditions`:e.editing()?`backOffice.conditionPresets.update`:`backOffice.conditionPresets.create`),` `),ZC(),kS(e.dialog?14:15)}}var ce=class t{dialog=g(te,{optional:!0});i18n=g(Ie);api=g(m$1);confirmation=g(P);route=g(G);router=g(ue$1);destroyRef=g(pe$1);model=Ke({name:``,conditions:``});loading=Ke(!0);ready=Ke(!1);saving=Ke(!1);completed=Ke(!1);uncertain=Ke(!1);confirming=Ke(!1);preset=Ke(void 0);editing=Ft(()=>this.preset()!==void 0);title=Ft(()=>this.editing()?`configurationWorkspace.editCondition`:`configurationWorkspace.newCondition`);breadcrumbs=Ft(()=>[{label:this.i18n.t(`backOffice.configuration.title`),path:`/configuration`},{label:this.i18n.t(`backOffice.configuration.conditions`),path:`/configuration/conditions`,queryParams:this.backQuery()}]);error=Ke(void 0);previewAvailable=Ft(()=>qt(this.model().conditions,this.model().conditionsPresentation?.format??`plain`));presetForm=nr(this.model,i=>{an(i,()=>!this.ready()||this.loading()||this.saving()||this.completed()||this.uncertain()),gn(i.name),cn(i.name,120),mn(i.name,/\S/),gn(i.conditions),cn(i.conditions,2e3),P$1(i.conditions,({value:e})=>qt(e(),this.model().conditionsPresentation?.format??`plain`)?void 0:{kind:`format`}),P$1(i.conditions,({value:e})=>{if(qt(e(),this.model().conditionsPresentation?.format??`plain`))return/\S/.test(Fp(e(),this.model().conditionsPresentation))?void 0:{kind:`required`}}),mn(i.conditions,/\S/)});loadGeneration=0;constructor(){if(this.dialog){this.loading.set(!1),this.ready.set(!0),this.dialog.backdropClick.pipe(U(this.destroyRef)).subscribe(()=>{this.close()}),this.dialog.keydownEvents.pipe(U(this.destroyRef)).subscribe(i=>{i.key===`Escape`&&(i.preventDefault(),this.close())});return}Ol(()=>this.route.paramMap.pipe(U(this.destroyRef)).subscribe(()=>{this.load()}))}backQuery(){return w(x(this.route.snapshot.queryParamMap,s),s)}async canDeactivate(){if(this.saving()||this.confirming())return!1;if(!this.uncertain()&&!this.presetForm().dirty())return!0;this.confirming.set(!0);try{return await this.confirmation.request(this.i18n.t(this.uncertain()?`referenceEditor.leaveUncertain`:`referenceEditor.unsavedConditions`))}finally{this.confirming.set(!1)}}async close(){this.dialog&&await this.canDeactivate()&&!this.destroyRef.destroyed&&this.dialog.close()}beforeUnload(i){(this.saving()||this.confirming()||this.uncertain()||this.presetForm().dirty())&&i.preventDefault()}invalid(i){return this.presetForm[i]().touched()&&this.presetForm[i]().invalid()}setConditionsPresentation(i){this.presetForm.conditions().disabled()||(this.model.update(e=>m(l({},e),{conditionsPresentation:i})),this.presetForm.conditions().markAsDirty())}async load(){if(this.saving()||this.confirming()||this.uncertain())return;let i=++this.loadGeneration;this.loading.set(!0),this.ready.set(!1),this.completed.set(!1),this.error.set(void 0),this.preset.set(void 0),this.model.set({name:``,conditions:``}),this.presetForm().reset();let e=this.route.snapshot.paramMap.get(`presetId`);if(e===null){this.ready.set(!0),this.loading.set(!1);return}try{let o=await this.api.list();if(this.destroyRef.destroyed||i!==this.loadGeneration)return;let a=o.find(p=>p.id===e);if(a===void 0){this.error.set(`configurationWorkspace.notFound`);return}this.preset.set(a),this.model.set({name:a.name,conditions:a.conditions,conditionsPresentation:a.conditionsPresentation}),this.presetForm().reset(),this.ready.set(!0)}catch{!this.destroyRef.destroyed&&i===this.loadGeneration&&this.error.set(`quote.error`)}finally{i===this.loadGeneration&&this.loading.set(!1)}}save(i){if(i.preventDefault(),!(this.loading()||this.saving()||this.confirming()||this.completed()||this.uncertain()||!this.ready())){if(this.presetForm().invalid()){this.presetForm().markAsTouched(),this.presetForm().errorSummary()[0]?.fieldTree().focusBoundControl();return}or(this.presetForm,async()=>{this.saving.set(!0),this.error.set(void 0);let e=this.loadGeneration,o=this.preset(),a=this.model(),p={name:a.name.trim(),conditions:a.conditions},q=a.conditionsPresentation===void 0?p:m(l({},p),{conditionsPresentation:a.conditionsPresentation});try{let x=o===void 0?await this.api.create(q):await this.api.update(o.id,q);if(this.destroyRef.destroyed||e!==this.loadGeneration)return;if(!x.success){!o&&x.code===`quote.error`?(this.uncertain.set(!0),this.error.set(`referenceEditor.conditionsUncertain`)):this.error.set(x.code);return}this.preset.set(x.result),this.presetForm().reset(),this.completed.set(!0)}catch{if(this.destroyRef.destroyed||e!==this.loadGeneration)return;this.uncertain.set(!o),this.error.set(o?`quote.error`:`referenceEditor.conditionsUncertain`)}finally{e===this.loadGeneration&&this.saving.set(!1)}this.completed()&&(this.dialog?this.dialog.close(this.preset()):await this.router.navigate([`/configuration/conditions`],{queryParams:this.backQuery()}))})}}static ɵfac=function(e){return new(e||t)};static ɵcmp=Fb({type:t,selectors:[[`app-condition-editor`]],hostVars:4,hostBindings:function(e,o){e&1&&Gy(`beforeunload`,function(p){return o.beforeUnload(p)},Zw),e&2&&Xy(`page-container`,!o.dialog)(`editor-dialog`,!!o.dialog)},decls:7,vars:7,consts:[[`aria-labelledby`,`condition-editor-title`,1,`presets-page`],[`layout`,`stacked`],[`role`,`status`],[`appNotice`,``,`variant`,`success`,`role`,`status`],[`novalidate`,``],[`id`,`condition-editor-title`],[1,`intro`],[`pageBack`,``,3,`label`,`items`,`current`],[`appNotice`,``,`variant`,`danger`,`role`,`alert`],[`appButton`,``,`type`,`button`,3,`disabled`],[`appButton`,``,`type`,`button`,3,`click`,`disabled`],[`novalidate`,``,3,`submit`],[`for`,`preset-name`,1,`field`],[`id`,`preset-name`,`aria-describedby`,`preset-name-error`,1,`input`,3,`formField`],[`id`,`preset-name-error`,1,`field-error`],[`controlId`,`preset-conditions`,`descriptionId`,`preset-conditions-error`,3,`presentationChange`,`label`,`formField`,`presentation`],[`id`,`preset-conditions-error`,1,`field-error`],[1,`preview-surface`,`ds-panel`,`preview`],[3,`source`,`presentation`],[1,`form-actions`],[`appButton`,``,`variant`,`primary`,`type`,`submit`,3,`disabled`],[`appLinkButton`,``,`routerLink`,`/configuration/conditions`,3,`queryParams`]],template:function(e,o){if(e&1&&(Us(0,`section`,0),OS(1,le,4,2)(2,pe,6,5,`app-page-header`,1),OS(3,ue,3,2),OS(4,fe,2,1,`p`,2)(5,ge,2,1,`p`,3)(6,Pe,16,13,`form`,4),fd()),e&2){let a;Xy(`detail-page`,!o.dialog)(`form-page`,!o.dialog),ZC(),kS(o.dialog?1:2),ZC(2),kS((a=o.error())?3:-1,a),ZC(),kS(o.loading()?4:o.completed()?5:o.ready()?6:-1)}},dependencies:[N,k,yn,Dt,g$1,f,Of,g$2],styles:[`[_nghost-%COMP%]{display:block}.detail-page[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-4);min-inline-size:0;inline-size:100%;max-inline-size:var(--%NS%page-width-detail);margin-inline:auto;padding:var(--%NS%page-header-y) var(--%NS%page-x)}.detail-page.form-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-form)}.detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:var(--%NS%page-width-wide)}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-2xl);overflow-wrap:anywhere}app-page-header[data-header-layout=stacked][_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:var(--%NS%text-base);color:var(--%NS%color-muted);overflow-wrap:anywhere}.detail-page[_ngcontent-%COMP%] > button[_ngcontent-%COMP%]{justify-self:start}@media print{.detail-page[_ngcontent-%COMP%], .detail-page.form-page[_ngcontent-%COMP%], .detail-page.wide-page[_ngcontent-%COMP%]{max-inline-size:none}}.intro[_ngcontent-%COMP%]{color:var(--%NS%color-muted)}.field[_ngcontent-%COMP%]{display:grid;min-inline-size:0;gap:var(--%NS%space-2)}.form-actions[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:var(--%NS%space-3)}form[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-4);inline-size:100%}.editor-dialog[_nghost-%COMP%]{max-block-size:calc(100dvh - 2rem);overflow:auto;overscroll-behavior:contain;border-radius:var(--%NS%radius-md);background:var(--%NS%color-surface);color:var(--%NS%color-ink);box-shadow:var(--%NS%shadow-page)}.editor-dialog[_nghost-%COMP%] .presets-page[_ngcontent-%COMP%]{display:grid;gap:var(--%NS%space-6);padding:var(--%NS%space-6)}h2[_ngcontent-%COMP%], h3[_ngcontent-%COMP%]{margin:0}h2[_ngcontent-%COMP%]{font-size:var(--%NS%text-xl)}h3[_ngcontent-%COMP%]{font-size:var(--%NS%text-lg)}form[_ngcontent-%COMP%] section[_ngcontent-%COMP%]{padding:var(--%NS%space-4)}.preview[_ngcontent-%COMP%]{display:block}.preview[_ngcontent-%COMP%] > :is(h2[_ngcontent-%COMP%], h3[_ngcontent-%COMP%]){margin-block-end:var(--%NS%space-4)}`]})};export{ce as t};