@accounter/server 0.0.8-alpha-20251102085833-d574838ec8d962ba6be12f1ca15d9bee3e2b860d → 0.0.8-alpha-20251102160658-6d41b0a7bb225382246645badf39a28bcd8102e1

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 (43) hide show
  1. package/CHANGELOG.md +5 -5
  2. package/dist/green-invoice-graphql/src/mesh-artifacts/index.d.ts +1455 -1202
  3. package/dist/green-invoice-graphql/src/mesh-artifacts/index.js +602 -415
  4. package/dist/green-invoice-graphql/src/mesh-artifacts/index.js.map +1 -1
  5. package/dist/green-invoice-graphql/src/mesh-artifacts/sources/GreenInvoice/schemaWithAnnotations.js +12447 -10635
  6. package/dist/green-invoice-graphql/src/mesh-artifacts/sources/GreenInvoice/schemaWithAnnotations.js.map +1 -1
  7. package/dist/green-invoice-graphql/src/mesh-artifacts/sources/GreenInvoice/types.d.ts +780 -643
  8. package/dist/green-invoice-graphql/src/mesh-artifacts/sources/GreenInvoiceNew/schemaWithAnnotations.js +8 -8
  9. package/dist/green-invoice-graphql/src/mesh-artifacts/sources/GreenInvoiceNew/schemaWithAnnotations.js.map +1 -1
  10. package/dist/green-invoice-graphql/src/mesh-artifacts/sources/GreenInvoiceNew/types.d.ts +8 -8
  11. package/dist/server/src/modules/app-providers/green-invoice-client.d.ts +28 -24
  12. package/dist/server/src/modules/app-providers/green-invoice-client.js +67 -1
  13. package/dist/server/src/modules/app-providers/green-invoice-client.js.map +1 -1
  14. package/dist/server/src/modules/countries/types.d.ts +251 -0
  15. package/dist/server/src/modules/countries/types.js +252 -0
  16. package/dist/server/src/modules/countries/types.js.map +1 -1
  17. package/dist/server/src/modules/financial-entities/resolvers/businesses.resolver.js +6 -2
  18. package/dist/server/src/modules/financial-entities/resolvers/businesses.resolver.js.map +1 -1
  19. package/dist/server/src/modules/financial-entities/resolvers/clients.resolvers.js +5 -0
  20. package/dist/server/src/modules/financial-entities/resolvers/clients.resolvers.js.map +1 -1
  21. package/dist/server/src/modules/green-invoice/helpers/contract-to-draft.helper.js +1 -1
  22. package/dist/server/src/modules/green-invoice/helpers/contract-to-draft.helper.js.map +1 -1
  23. package/dist/server/src/modules/green-invoice/helpers/green-invoice-clients.helper.d.ts +5 -0
  24. package/dist/server/src/modules/green-invoice/helpers/green-invoice-clients.helper.js +192 -0
  25. package/dist/server/src/modules/green-invoice/helpers/green-invoice-clients.helper.js.map +1 -0
  26. package/dist/server/src/modules/green-invoice/helpers/green-invoice.helper.d.ts +26 -23
  27. package/dist/server/src/modules/green-invoice/helpers/green-invoice.helper.js +1018 -4
  28. package/dist/server/src/modules/green-invoice/helpers/green-invoice.helper.js.map +1 -1
  29. package/dist/server/src/modules/green-invoice/helpers/issue-document.helper.d.ts +4 -5
  30. package/dist/server/src/modules/green-invoice/helpers/issue-document.helper.js +0 -29
  31. package/dist/server/src/modules/green-invoice/helpers/issue-document.helper.js.map +1 -1
  32. package/dist/server/src/modules/green-invoice/resolvers/green-invoice.resolvers.js +2 -1
  33. package/dist/server/src/modules/green-invoice/resolvers/green-invoice.resolvers.js.map +1 -1
  34. package/package.json +3 -3
  35. package/src/modules/app-providers/green-invoice-client.ts +82 -1
  36. package/src/modules/countries/types.ts +252 -0
  37. package/src/modules/financial-entities/resolvers/businesses.resolver.ts +10 -2
  38. package/src/modules/financial-entities/resolvers/clients.resolvers.ts +11 -0
  39. package/src/modules/green-invoice/helpers/contract-to-draft.helper.ts +1 -1
  40. package/src/modules/green-invoice/helpers/green-invoice-clients.helper.ts +239 -0
  41. package/src/modules/green-invoice/helpers/green-invoice.helper.ts +1066 -43
  42. package/src/modules/green-invoice/helpers/issue-document.helper.ts +3 -41
  43. package/src/modules/green-invoice/resolvers/green-invoice.resolvers.ts +6 -6
@@ -2,6 +2,7 @@ import { GraphQLError } from 'graphql';
2
2
  import { CloudinaryProvider } from '../../app-providers/cloudinary.js';
3
3
  import { GreenInvoiceClientProvider } from '../../app-providers/green-invoice-client.js';
4
4
  import { ChargesProvider } from '../../charges/providers/charges.provider.js';
5
+ import { CountryCode } from '../../countries/types';
5
6
  import { DocumentsProvider } from '../../documents/providers/documents.provider.js';
6
7
  import { IssuedDocumentsProvider } from '../../documents/providers/issued-documents.provider.js';
7
8
  import { ClientsProvider } from '../../financial-entities/providers/clients.provider.js';
@@ -387,6 +388,1016 @@ export function convertCurrencyToGreenInvoice(currency) {
387
388
  throw new Error(`Unsupported currency: ${currency}`);
388
389
  }
389
390
  }
391
+ export function greenInvoiceCountryToCountryCode(country) {
392
+ switch (country) {
393
+ case 'AD':
394
+ return CountryCode.AND;
395
+ case 'AE':
396
+ return CountryCode.ARE;
397
+ case 'AF':
398
+ return CountryCode.AFG;
399
+ case 'AG':
400
+ return CountryCode.ATG;
401
+ case 'AI':
402
+ return CountryCode.AIA;
403
+ case 'AL':
404
+ return CountryCode.ALB;
405
+ case 'AM':
406
+ return CountryCode.ARM;
407
+ case 'AO':
408
+ return CountryCode.AGO;
409
+ case 'AQ':
410
+ return CountryCode.ATA;
411
+ case 'AR':
412
+ return CountryCode.ARG;
413
+ case 'AS':
414
+ return CountryCode.ASM;
415
+ case 'AT':
416
+ return CountryCode.AUT;
417
+ case 'AU':
418
+ return CountryCode.AUS;
419
+ case 'AW':
420
+ return CountryCode.ABW;
421
+ case 'AX':
422
+ return CountryCode.ALA;
423
+ case 'AZ':
424
+ return CountryCode.AZE;
425
+ case 'BA':
426
+ return CountryCode.BIH;
427
+ case 'BB':
428
+ return CountryCode.BRB;
429
+ case 'BD':
430
+ return CountryCode.BGD;
431
+ case 'BE':
432
+ return CountryCode.BEL;
433
+ case 'BF':
434
+ return CountryCode.BFA;
435
+ case 'BG':
436
+ return CountryCode.BGR;
437
+ case 'BH':
438
+ return CountryCode.BHR;
439
+ case 'BI':
440
+ return CountryCode.BDI;
441
+ case 'BJ':
442
+ return CountryCode.BEN;
443
+ case 'BL':
444
+ return CountryCode.BLM;
445
+ case 'BM':
446
+ return CountryCode.BMU;
447
+ case 'BN':
448
+ return CountryCode.BRN;
449
+ case 'BO':
450
+ return CountryCode.BOL;
451
+ case 'BQ':
452
+ return CountryCode.BES;
453
+ case 'BR':
454
+ return CountryCode.BRA;
455
+ case 'BS':
456
+ return CountryCode.BHS;
457
+ case 'BT':
458
+ return CountryCode.BTN;
459
+ case 'BV':
460
+ return CountryCode.BVT;
461
+ case 'BW':
462
+ return CountryCode.BWA;
463
+ case 'BY':
464
+ return CountryCode.BLR;
465
+ case 'BZ':
466
+ return CountryCode.BLZ;
467
+ case 'CA':
468
+ return CountryCode.CAN;
469
+ case 'CC':
470
+ return CountryCode.CCK;
471
+ case 'CD':
472
+ return CountryCode.COD;
473
+ case 'CF':
474
+ return CountryCode.CAF;
475
+ case 'CG':
476
+ return CountryCode.COG;
477
+ case 'CH':
478
+ return CountryCode.CHE;
479
+ case 'CI':
480
+ return CountryCode.CIV;
481
+ case 'CK':
482
+ return CountryCode.COK;
483
+ case 'CL':
484
+ return CountryCode.CHL;
485
+ case 'CM':
486
+ return CountryCode.CMR;
487
+ case 'CN':
488
+ return CountryCode.CHN;
489
+ case 'CO':
490
+ return CountryCode.COL;
491
+ case 'CR':
492
+ return CountryCode.CRI;
493
+ case 'CU':
494
+ return CountryCode.CUB;
495
+ case 'CV':
496
+ return CountryCode.CPV;
497
+ case 'CW':
498
+ return CountryCode.CUW;
499
+ case 'CX':
500
+ return CountryCode.CXR;
501
+ case 'CY':
502
+ return CountryCode.CYP;
503
+ case 'CZ':
504
+ return CountryCode.CZE;
505
+ case 'DE':
506
+ return CountryCode.DEU;
507
+ case 'DJ':
508
+ return CountryCode.DJI;
509
+ case 'DK':
510
+ return CountryCode.DNK;
511
+ case 'DM':
512
+ return CountryCode.DMA;
513
+ case 'DO':
514
+ return CountryCode.DOM;
515
+ case 'DZ':
516
+ return CountryCode.DZA;
517
+ case 'EC':
518
+ return CountryCode.ECU;
519
+ case 'EE':
520
+ return CountryCode.EST;
521
+ case 'EG':
522
+ return CountryCode.EGY;
523
+ case 'EH':
524
+ return CountryCode.ESH;
525
+ case 'ER':
526
+ return CountryCode.ERI;
527
+ case 'ES':
528
+ return CountryCode.ESP;
529
+ case 'ET':
530
+ return CountryCode.ETH;
531
+ case 'FI':
532
+ return CountryCode.FIN;
533
+ case 'FJ':
534
+ return CountryCode.FJI;
535
+ case 'FK':
536
+ return CountryCode.FLK;
537
+ case 'FM':
538
+ return CountryCode.FSM;
539
+ case 'FO':
540
+ return CountryCode.FRO;
541
+ case 'FR':
542
+ return CountryCode.FRA;
543
+ case 'GA':
544
+ return CountryCode.GAB;
545
+ case 'GB':
546
+ return CountryCode.GBR;
547
+ case 'GD':
548
+ return CountryCode.GRD;
549
+ case 'GE':
550
+ return CountryCode.GEO;
551
+ case 'GF':
552
+ return CountryCode.GUF;
553
+ case 'GG':
554
+ return CountryCode.GGY;
555
+ case 'GH':
556
+ return CountryCode.GHA;
557
+ case 'GI':
558
+ return CountryCode.GIB;
559
+ case 'GL':
560
+ return CountryCode.GRL;
561
+ case 'GM':
562
+ return CountryCode.GMB;
563
+ case 'GN':
564
+ return CountryCode.GIN;
565
+ case 'GP':
566
+ return CountryCode.GLP;
567
+ case 'GQ':
568
+ return CountryCode.GNQ;
569
+ case 'GR':
570
+ return CountryCode.GRC;
571
+ case 'GS':
572
+ return CountryCode.SGS;
573
+ case 'GT':
574
+ return CountryCode.GTM;
575
+ case 'GU':
576
+ return CountryCode.GUM;
577
+ case 'GW':
578
+ return CountryCode.GNB;
579
+ case 'GY':
580
+ return CountryCode.GUY;
581
+ case 'HK':
582
+ return CountryCode.HKG;
583
+ case 'HM':
584
+ return CountryCode.HMD;
585
+ case 'HN':
586
+ return CountryCode.HND;
587
+ case 'HR':
588
+ return CountryCode.HRV;
589
+ case 'HT':
590
+ return CountryCode.HTI;
591
+ case 'HU':
592
+ return CountryCode.HUN;
593
+ case 'ID':
594
+ return CountryCode.IDN;
595
+ case 'IE':
596
+ return CountryCode.IRL;
597
+ case 'IL':
598
+ return CountryCode.ISR;
599
+ case 'IM':
600
+ return CountryCode.IMN;
601
+ case 'IN':
602
+ return CountryCode.IND;
603
+ case 'IO':
604
+ return CountryCode.IOT;
605
+ case 'IQ':
606
+ return CountryCode.IRQ;
607
+ case 'IR':
608
+ return CountryCode.IRN;
609
+ case 'IS':
610
+ return CountryCode.ISL;
611
+ case 'IT':
612
+ return CountryCode.ITA;
613
+ case 'JE':
614
+ return CountryCode.JEY;
615
+ case 'JM':
616
+ return CountryCode.JAM;
617
+ case 'JO':
618
+ return CountryCode.JOR;
619
+ case 'JP':
620
+ return CountryCode.JPN;
621
+ case 'KE':
622
+ return CountryCode.KEN;
623
+ case 'KG':
624
+ return CountryCode.KGZ;
625
+ case 'KH':
626
+ return CountryCode.KHM;
627
+ case 'KI':
628
+ return CountryCode.KIR;
629
+ case 'KM':
630
+ return CountryCode.COM;
631
+ case 'KN':
632
+ return CountryCode.KNA;
633
+ case 'KP':
634
+ return CountryCode.PRK;
635
+ case 'KR':
636
+ return CountryCode.KOR;
637
+ case 'KW':
638
+ return CountryCode.KWT;
639
+ case 'KY':
640
+ return CountryCode.CYM;
641
+ case 'KZ':
642
+ return CountryCode.KAZ;
643
+ case 'LA':
644
+ return CountryCode.LAO;
645
+ case 'LB':
646
+ return CountryCode.LBN;
647
+ case 'LC':
648
+ return CountryCode.LCA;
649
+ case 'LI':
650
+ return CountryCode.LIE;
651
+ case 'LK':
652
+ return CountryCode.LKA;
653
+ case 'LR':
654
+ return CountryCode.LBR;
655
+ case 'LS':
656
+ return CountryCode.LSO;
657
+ case 'LT':
658
+ return CountryCode.LTU;
659
+ case 'LU':
660
+ return CountryCode.LUX;
661
+ case 'LV':
662
+ return CountryCode.LVA;
663
+ case 'LY':
664
+ return CountryCode.LBY;
665
+ case 'MA':
666
+ return CountryCode.MAR;
667
+ case 'MC':
668
+ return CountryCode.MCO;
669
+ case 'MD':
670
+ return CountryCode.MDA;
671
+ case 'ME':
672
+ return CountryCode.MNE;
673
+ case 'MF':
674
+ return CountryCode.MAF;
675
+ case 'MG':
676
+ return CountryCode.MDG;
677
+ case 'MH':
678
+ return CountryCode.MHL;
679
+ case 'MK':
680
+ return CountryCode.MKD;
681
+ case 'ML':
682
+ return CountryCode.MLI;
683
+ case 'MM':
684
+ return CountryCode.MMR;
685
+ case 'MN':
686
+ return CountryCode.MNG;
687
+ case 'MO':
688
+ return CountryCode.MAC;
689
+ case 'MP':
690
+ return CountryCode.MNP;
691
+ case 'MQ':
692
+ return CountryCode.MTQ;
693
+ case 'MR':
694
+ return CountryCode.MRT;
695
+ case 'MS':
696
+ return CountryCode.MSR;
697
+ case 'MT':
698
+ return CountryCode.MLT;
699
+ case 'MU':
700
+ return CountryCode.MUS;
701
+ case 'MV':
702
+ return CountryCode.MDV;
703
+ case 'MW':
704
+ return CountryCode.MWI;
705
+ case 'MX':
706
+ return CountryCode.MEX;
707
+ case 'MY':
708
+ return CountryCode.MYS;
709
+ case 'MZ':
710
+ return CountryCode.MOZ;
711
+ case 'NA':
712
+ return CountryCode.NAM;
713
+ case 'NC':
714
+ return CountryCode.NCL;
715
+ case 'NE':
716
+ return CountryCode.NER;
717
+ case 'NF':
718
+ return CountryCode.NFK;
719
+ case 'NG':
720
+ return CountryCode.NGA;
721
+ case 'NI':
722
+ return CountryCode.NIC;
723
+ case 'NL':
724
+ return CountryCode.NLD;
725
+ case 'NO':
726
+ return CountryCode.NOR;
727
+ case 'NP':
728
+ return CountryCode.NPL;
729
+ case 'NR':
730
+ return CountryCode.NRU;
731
+ case 'NU':
732
+ return CountryCode.NIU;
733
+ case 'NZ':
734
+ return CountryCode.NZL;
735
+ case 'OM':
736
+ return CountryCode.OMN;
737
+ case 'PA':
738
+ return CountryCode.PAN;
739
+ case 'PE':
740
+ return CountryCode.PER;
741
+ case 'PF':
742
+ return CountryCode.PYF;
743
+ case 'PG':
744
+ return CountryCode.PNG;
745
+ case 'PH':
746
+ return CountryCode.PHL;
747
+ case 'PK':
748
+ return CountryCode.PAK;
749
+ case 'PL':
750
+ return CountryCode.POL;
751
+ case 'PM':
752
+ return CountryCode.SPM;
753
+ case 'PN':
754
+ return CountryCode.PCN;
755
+ case 'PR':
756
+ return CountryCode.PRI;
757
+ case 'PS':
758
+ return CountryCode.PSE;
759
+ case 'PT':
760
+ return CountryCode.PRT;
761
+ case 'PW':
762
+ return CountryCode.PLW;
763
+ case 'PY':
764
+ return CountryCode.PRY;
765
+ case 'QA':
766
+ return CountryCode.QAT;
767
+ case 'RE':
768
+ return CountryCode.REU;
769
+ case 'RO':
770
+ return CountryCode.ROU;
771
+ case 'RS':
772
+ return CountryCode.SRB;
773
+ case 'RU':
774
+ return CountryCode.RUS;
775
+ case 'RW':
776
+ return CountryCode.RWA;
777
+ case 'SA':
778
+ return CountryCode.SAU;
779
+ case 'SB':
780
+ return CountryCode.SLB;
781
+ case 'SC':
782
+ return CountryCode.SYC;
783
+ case 'SD':
784
+ return CountryCode.SDN;
785
+ case 'SE':
786
+ return CountryCode.SWE;
787
+ case 'SG':
788
+ return CountryCode.SGP;
789
+ case 'SH':
790
+ return CountryCode.SHN;
791
+ case 'SI':
792
+ return CountryCode.SVN;
793
+ case 'SJ':
794
+ return CountryCode.SJM;
795
+ case 'SK':
796
+ return CountryCode.SVK;
797
+ case 'SL':
798
+ return CountryCode.SLE;
799
+ case 'SM':
800
+ return CountryCode.SMR;
801
+ case 'SN':
802
+ return CountryCode.SEN;
803
+ case 'SO':
804
+ return CountryCode.SOM;
805
+ case 'SR':
806
+ return CountryCode.SUR;
807
+ case 'SS':
808
+ return CountryCode.SSD;
809
+ case 'ST':
810
+ return CountryCode.STP;
811
+ case 'SV':
812
+ return CountryCode.SLV;
813
+ case 'SX':
814
+ return CountryCode.SXM;
815
+ case 'SY':
816
+ return CountryCode.SYR;
817
+ case 'SZ':
818
+ return CountryCode.SWZ;
819
+ case 'TC':
820
+ return CountryCode.TCA;
821
+ case 'TD':
822
+ return CountryCode.TCD;
823
+ case 'TF':
824
+ return CountryCode.ATF;
825
+ case 'TG':
826
+ return CountryCode.TGO;
827
+ case 'TH':
828
+ return CountryCode.THA;
829
+ case 'TJ':
830
+ return CountryCode.TJK;
831
+ case 'TK':
832
+ return CountryCode.TKL;
833
+ case 'TL':
834
+ return CountryCode.TLS;
835
+ case 'TM':
836
+ return CountryCode.TKM;
837
+ case 'TN':
838
+ return CountryCode.TUN;
839
+ case 'TO':
840
+ return CountryCode.TON;
841
+ case 'TR':
842
+ return CountryCode.TUR;
843
+ case 'TT':
844
+ return CountryCode.TTO;
845
+ case 'TV':
846
+ return CountryCode.TUV;
847
+ case 'TW':
848
+ return CountryCode.TWN;
849
+ case 'TZ':
850
+ return CountryCode.TZA;
851
+ case 'UA':
852
+ return CountryCode.UKR;
853
+ case 'UG':
854
+ return CountryCode.UGA;
855
+ case 'UM':
856
+ return CountryCode.UMI;
857
+ case 'US':
858
+ return CountryCode.USA;
859
+ case 'UY':
860
+ return CountryCode.URY;
861
+ case 'UZ':
862
+ return CountryCode.UZB;
863
+ case 'VA':
864
+ return CountryCode.VAT;
865
+ case 'VC':
866
+ return CountryCode.VCT;
867
+ case 'VE':
868
+ return CountryCode.VEN;
869
+ case 'VG':
870
+ return CountryCode.VGB;
871
+ case 'VI':
872
+ return CountryCode.VIR;
873
+ case 'VN':
874
+ return CountryCode.VNM;
875
+ case 'VU':
876
+ return CountryCode.VUT;
877
+ case 'WF':
878
+ return CountryCode.WLF;
879
+ case 'WS':
880
+ return CountryCode.WSM;
881
+ case 'YE':
882
+ return CountryCode.YEM;
883
+ case 'YT':
884
+ return CountryCode.MYT;
885
+ case 'ZA':
886
+ return CountryCode.ZAF;
887
+ case 'ZM':
888
+ return CountryCode.ZMB;
889
+ case 'ZW':
890
+ return CountryCode.ZWE;
891
+ case 'XK':
892
+ throw new Error(`Country code XK (Kosovo) is not supported in CountryCode enum`);
893
+ default:
894
+ throw new Error(`Unsupported Green Invoice country: ${country}`);
895
+ }
896
+ }
897
+ export function countryCodeToGreenInvoiceCountry(countryCode) {
898
+ switch (countryCode) {
899
+ case CountryCode.AFG:
900
+ return 'AF';
901
+ case CountryCode.ALA:
902
+ return 'AX';
903
+ case CountryCode.ALB:
904
+ return 'AL';
905
+ case CountryCode.DZA:
906
+ return 'DZ';
907
+ case CountryCode.ASM:
908
+ return 'AS';
909
+ case CountryCode.AND:
910
+ return 'AD';
911
+ case CountryCode.AGO:
912
+ return 'AO';
913
+ case CountryCode.AIA:
914
+ return 'AI';
915
+ case CountryCode.ATA:
916
+ return 'AQ';
917
+ case CountryCode.ATG:
918
+ return 'AG';
919
+ case CountryCode.ARG:
920
+ return 'AR';
921
+ case CountryCode.ARM:
922
+ return 'AM';
923
+ case CountryCode.ABW:
924
+ return 'AW';
925
+ case CountryCode.AUS:
926
+ return 'AU';
927
+ case CountryCode.AUT:
928
+ return 'AT';
929
+ case CountryCode.AZE:
930
+ return 'AZ';
931
+ case CountryCode.BHS:
932
+ return 'BS';
933
+ case CountryCode.BHR:
934
+ return 'BH';
935
+ case CountryCode.BGD:
936
+ return 'BD';
937
+ case CountryCode.BRB:
938
+ return 'BB';
939
+ case CountryCode.BLR:
940
+ return 'BY';
941
+ case CountryCode.BEL:
942
+ return 'BE';
943
+ case CountryCode.BLZ:
944
+ return 'BZ';
945
+ case CountryCode.BEN:
946
+ return 'BJ';
947
+ case CountryCode.BMU:
948
+ return 'BM';
949
+ case CountryCode.BTN:
950
+ return 'BT';
951
+ case CountryCode.BOL:
952
+ return 'BO';
953
+ case CountryCode.BES:
954
+ return 'BQ';
955
+ case CountryCode.BIH:
956
+ return 'BA';
957
+ case CountryCode.BWA:
958
+ return 'BW';
959
+ case CountryCode.BVT:
960
+ return 'BV';
961
+ case CountryCode.BRA:
962
+ return 'BR';
963
+ case CountryCode.IOT:
964
+ return 'IO';
965
+ case CountryCode.BRN:
966
+ return 'BN';
967
+ case CountryCode.BGR:
968
+ return 'BG';
969
+ case CountryCode.BFA:
970
+ return 'BF';
971
+ case CountryCode.BDI:
972
+ return 'BI';
973
+ case CountryCode.CPV:
974
+ return 'CV';
975
+ case CountryCode.KHM:
976
+ return 'KH';
977
+ case CountryCode.CMR:
978
+ return 'CM';
979
+ case CountryCode.CAN:
980
+ return 'CA';
981
+ case CountryCode.CYM:
982
+ return 'KY';
983
+ case CountryCode.CAF:
984
+ return 'CF';
985
+ case CountryCode.TCD:
986
+ return 'TD';
987
+ case CountryCode.CHL:
988
+ return 'CL';
989
+ case CountryCode.CHN:
990
+ return 'CN';
991
+ case CountryCode.CXR:
992
+ return 'CX';
993
+ case CountryCode.CCK:
994
+ return 'CC';
995
+ case CountryCode.COL:
996
+ return 'CO';
997
+ case CountryCode.COM:
998
+ return 'KM';
999
+ case CountryCode.COD:
1000
+ return 'CD';
1001
+ case CountryCode.COG:
1002
+ return 'CG';
1003
+ case CountryCode.COK:
1004
+ return 'CK';
1005
+ case CountryCode.CRI:
1006
+ return 'CR';
1007
+ case CountryCode.HRV:
1008
+ return 'HR';
1009
+ case CountryCode.CUB:
1010
+ return 'CU';
1011
+ case CountryCode.CUW:
1012
+ return 'CW';
1013
+ case CountryCode.CYP:
1014
+ return 'CY';
1015
+ case CountryCode.CZE:
1016
+ return 'CZ';
1017
+ case CountryCode.CIV:
1018
+ return 'CI';
1019
+ case CountryCode.DNK:
1020
+ return 'DK';
1021
+ case CountryCode.DJI:
1022
+ return 'DJ';
1023
+ case CountryCode.DMA:
1024
+ return 'DM';
1025
+ case CountryCode.DOM:
1026
+ return 'DO';
1027
+ case CountryCode.ECU:
1028
+ return 'EC';
1029
+ case CountryCode.EGY:
1030
+ return 'EG';
1031
+ case CountryCode.SLV:
1032
+ return 'SV';
1033
+ case CountryCode.GNQ:
1034
+ return 'GQ';
1035
+ case CountryCode.ERI:
1036
+ return 'ER';
1037
+ case CountryCode.EST:
1038
+ return 'EE';
1039
+ case CountryCode.SWZ:
1040
+ throw new Error(`Country code SWZ (Eswatini) is not supported in GreenInvoiceCountry`);
1041
+ case CountryCode.ETH:
1042
+ return 'ET';
1043
+ case CountryCode.FLK:
1044
+ return 'FK';
1045
+ case CountryCode.FRO:
1046
+ return 'FO';
1047
+ case CountryCode.FJI:
1048
+ return 'FJ';
1049
+ case CountryCode.FIN:
1050
+ return 'FI';
1051
+ case CountryCode.FRA:
1052
+ return 'FR';
1053
+ case CountryCode.GUF:
1054
+ return 'GF';
1055
+ case CountryCode.PYF:
1056
+ return 'PF';
1057
+ case CountryCode.ATF:
1058
+ return 'TF';
1059
+ case CountryCode.GAB:
1060
+ return 'GA';
1061
+ case CountryCode.GMB:
1062
+ return 'GM';
1063
+ case CountryCode.GEO:
1064
+ return 'GE';
1065
+ case CountryCode.DEU:
1066
+ return 'DE';
1067
+ case CountryCode.GHA:
1068
+ return 'GH';
1069
+ case CountryCode.GIB:
1070
+ return 'GI';
1071
+ case CountryCode.GRC:
1072
+ return 'GR';
1073
+ case CountryCode.GRL:
1074
+ return 'GL';
1075
+ case CountryCode.GRD:
1076
+ return 'GD';
1077
+ case CountryCode.GLP:
1078
+ return 'GP';
1079
+ case CountryCode.GUM:
1080
+ return 'GU';
1081
+ case CountryCode.GTM:
1082
+ return 'GT';
1083
+ case CountryCode.GGY:
1084
+ return 'GG';
1085
+ case CountryCode.GIN:
1086
+ return 'GN';
1087
+ case CountryCode.GNB:
1088
+ return 'GW';
1089
+ case CountryCode.GUY:
1090
+ return 'GY';
1091
+ case CountryCode.HTI:
1092
+ return 'HT';
1093
+ case CountryCode.HMD:
1094
+ return 'HM';
1095
+ case CountryCode.VAT:
1096
+ return 'VA';
1097
+ case CountryCode.HND:
1098
+ return 'HN';
1099
+ case CountryCode.HKG:
1100
+ return 'HK';
1101
+ case CountryCode.HUN:
1102
+ return 'HU';
1103
+ case CountryCode.ISL:
1104
+ return 'IS';
1105
+ case CountryCode.IND:
1106
+ return 'IN';
1107
+ case CountryCode.IDN:
1108
+ return 'ID';
1109
+ case CountryCode.IRN:
1110
+ return 'IR';
1111
+ case CountryCode.IRQ:
1112
+ return 'IQ';
1113
+ case CountryCode.IRL:
1114
+ return 'IE';
1115
+ case CountryCode.IMN:
1116
+ return 'IM';
1117
+ case CountryCode.ISR:
1118
+ return 'IL';
1119
+ case CountryCode.ITA:
1120
+ return 'IT';
1121
+ case CountryCode.JAM:
1122
+ return 'JM';
1123
+ case CountryCode.JPN:
1124
+ return 'JP';
1125
+ case CountryCode.JEY:
1126
+ return 'JE';
1127
+ case CountryCode.JOR:
1128
+ return 'JO';
1129
+ case CountryCode.KAZ:
1130
+ return 'KZ';
1131
+ case CountryCode.KEN:
1132
+ return 'KE';
1133
+ case CountryCode.KIR:
1134
+ return 'KI';
1135
+ case CountryCode.PRK:
1136
+ return 'KP';
1137
+ case CountryCode.KOR:
1138
+ return 'KR';
1139
+ case CountryCode.KWT:
1140
+ return 'KW';
1141
+ case CountryCode.KGZ:
1142
+ return 'KG';
1143
+ case CountryCode.LAO:
1144
+ return 'LA';
1145
+ case CountryCode.LVA:
1146
+ return 'LV';
1147
+ case CountryCode.LBN:
1148
+ return 'LB';
1149
+ case CountryCode.LSO:
1150
+ return 'LS';
1151
+ case CountryCode.LBR:
1152
+ return 'LR';
1153
+ case CountryCode.LBY:
1154
+ return 'LY';
1155
+ case CountryCode.LIE:
1156
+ return 'LI';
1157
+ case CountryCode.LTU:
1158
+ return 'LT';
1159
+ case CountryCode.LUX:
1160
+ return 'LU';
1161
+ case CountryCode.MAC:
1162
+ return 'MO';
1163
+ case CountryCode.MDG:
1164
+ return 'MG';
1165
+ case CountryCode.MWI:
1166
+ return 'MW';
1167
+ case CountryCode.MYS:
1168
+ return 'MY';
1169
+ case CountryCode.MDV:
1170
+ return 'MV';
1171
+ case CountryCode.MLI:
1172
+ return 'ML';
1173
+ case CountryCode.MLT:
1174
+ return 'MT';
1175
+ case CountryCode.MHL:
1176
+ return 'MH';
1177
+ case CountryCode.MTQ:
1178
+ return 'MQ';
1179
+ case CountryCode.MRT:
1180
+ return 'MR';
1181
+ case CountryCode.MUS:
1182
+ return 'MU';
1183
+ case CountryCode.MYT:
1184
+ return 'YT';
1185
+ case CountryCode.MEX:
1186
+ return 'MX';
1187
+ case CountryCode.FSM:
1188
+ return 'FM';
1189
+ case CountryCode.MDA:
1190
+ return 'MD';
1191
+ case CountryCode.MCO:
1192
+ return 'MC';
1193
+ case CountryCode.MNG:
1194
+ return 'MN';
1195
+ case CountryCode.MNE:
1196
+ return 'ME';
1197
+ case CountryCode.MSR:
1198
+ return 'MS';
1199
+ case CountryCode.MAR:
1200
+ return 'MA';
1201
+ case CountryCode.MOZ:
1202
+ return 'MZ';
1203
+ case CountryCode.MMR:
1204
+ return 'MM';
1205
+ case CountryCode.NAM:
1206
+ return 'NA';
1207
+ case CountryCode.NRU:
1208
+ return 'NR';
1209
+ case CountryCode.NPL:
1210
+ return 'NP';
1211
+ case CountryCode.NLD:
1212
+ return 'NL';
1213
+ case CountryCode.NCL:
1214
+ return 'NC';
1215
+ case CountryCode.NZL:
1216
+ return 'NZ';
1217
+ case CountryCode.NIC:
1218
+ return 'NI';
1219
+ case CountryCode.NER:
1220
+ return 'NE';
1221
+ case CountryCode.NGA:
1222
+ return 'NG';
1223
+ case CountryCode.NIU:
1224
+ return 'NU';
1225
+ case CountryCode.NFK:
1226
+ return 'NF';
1227
+ case CountryCode.MNP:
1228
+ return 'MP';
1229
+ case CountryCode.NOR:
1230
+ return 'NO';
1231
+ case CountryCode.OMN:
1232
+ return 'OM';
1233
+ case CountryCode.PAK:
1234
+ return 'PK';
1235
+ case CountryCode.PLW:
1236
+ return 'PW';
1237
+ case CountryCode.PSE:
1238
+ return 'PS';
1239
+ case CountryCode.PAN:
1240
+ return 'PA';
1241
+ case CountryCode.PNG:
1242
+ return 'PG';
1243
+ case CountryCode.PRY:
1244
+ return 'PY';
1245
+ case CountryCode.PER:
1246
+ return 'PE';
1247
+ case CountryCode.PHL:
1248
+ return 'PH';
1249
+ case CountryCode.PCN:
1250
+ return 'PN';
1251
+ case CountryCode.POL:
1252
+ return 'PL';
1253
+ case CountryCode.PRT:
1254
+ return 'PT';
1255
+ case CountryCode.PRI:
1256
+ return 'PR';
1257
+ case CountryCode.QAT:
1258
+ return 'QA';
1259
+ case CountryCode.MKD:
1260
+ return 'MK';
1261
+ case CountryCode.ROU:
1262
+ return 'RO';
1263
+ case CountryCode.RUS:
1264
+ return 'RU';
1265
+ case CountryCode.RWA:
1266
+ return 'RW';
1267
+ case CountryCode.REU:
1268
+ return 'RE';
1269
+ case CountryCode.BLM:
1270
+ return 'BL';
1271
+ case CountryCode.SHN:
1272
+ return 'SH';
1273
+ case CountryCode.KNA:
1274
+ return 'KN';
1275
+ case CountryCode.LCA:
1276
+ return 'LC';
1277
+ case CountryCode.MAF:
1278
+ return 'MF';
1279
+ case CountryCode.SPM:
1280
+ return 'PM';
1281
+ case CountryCode.VCT:
1282
+ return 'VC';
1283
+ case CountryCode.WSM:
1284
+ return 'WS';
1285
+ case CountryCode.SMR:
1286
+ return 'SM';
1287
+ case CountryCode.STP:
1288
+ return 'ST';
1289
+ case CountryCode.SAU:
1290
+ return 'SA';
1291
+ case CountryCode.SEN:
1292
+ return 'SN';
1293
+ case CountryCode.SRB:
1294
+ return 'RS';
1295
+ case CountryCode.SYC:
1296
+ return 'SC';
1297
+ case CountryCode.SLE:
1298
+ return 'SL';
1299
+ case CountryCode.SGP:
1300
+ return 'SG';
1301
+ case CountryCode.SXM:
1302
+ return 'SX';
1303
+ case CountryCode.SVK:
1304
+ return 'SK';
1305
+ case CountryCode.SVN:
1306
+ return 'SI';
1307
+ case CountryCode.SLB:
1308
+ return 'SB';
1309
+ case CountryCode.SOM:
1310
+ return 'SO';
1311
+ case CountryCode.ZAF:
1312
+ return 'ZA';
1313
+ case CountryCode.SGS:
1314
+ return 'GS';
1315
+ case CountryCode.SSD:
1316
+ return 'SS';
1317
+ case CountryCode.ESP:
1318
+ return 'ES';
1319
+ case CountryCode.LKA:
1320
+ return 'LK';
1321
+ case CountryCode.SDN:
1322
+ return 'SD';
1323
+ case CountryCode.SUR:
1324
+ return 'SR';
1325
+ case CountryCode.SJM:
1326
+ return 'SJ';
1327
+ case CountryCode.SWE:
1328
+ return 'SE';
1329
+ case CountryCode.CHE:
1330
+ return 'CH';
1331
+ case CountryCode.SYR:
1332
+ return 'SY';
1333
+ case CountryCode.TWN:
1334
+ return 'TW';
1335
+ case CountryCode.TJK:
1336
+ return 'TJ';
1337
+ case CountryCode.TZA:
1338
+ return 'TZ';
1339
+ case CountryCode.THA:
1340
+ return 'TH';
1341
+ case CountryCode.TLS:
1342
+ return 'TL';
1343
+ case CountryCode.TGO:
1344
+ return 'TG';
1345
+ case CountryCode.TKL:
1346
+ return 'TK';
1347
+ case CountryCode.TON:
1348
+ return 'TO';
1349
+ case CountryCode.TTO:
1350
+ return 'TT';
1351
+ case CountryCode.TUN:
1352
+ return 'TN';
1353
+ case CountryCode.TUR:
1354
+ return 'TR';
1355
+ case CountryCode.TKM:
1356
+ return 'TM';
1357
+ case CountryCode.TCA:
1358
+ return 'TC';
1359
+ case CountryCode.TUV:
1360
+ return 'TV';
1361
+ case CountryCode.UGA:
1362
+ return 'UG';
1363
+ case CountryCode.UKR:
1364
+ return 'UA';
1365
+ case CountryCode.ARE:
1366
+ return 'AE';
1367
+ case CountryCode.GBR:
1368
+ return 'GB';
1369
+ case CountryCode.UMI:
1370
+ return 'UM';
1371
+ case CountryCode.USA:
1372
+ return 'US';
1373
+ case CountryCode.URY:
1374
+ return 'UY';
1375
+ case CountryCode.UZB:
1376
+ return 'UZ';
1377
+ case CountryCode.VUT:
1378
+ return 'VU';
1379
+ case CountryCode.VEN:
1380
+ return 'VE';
1381
+ case CountryCode.VNM:
1382
+ return 'VN';
1383
+ case CountryCode.VGB:
1384
+ return 'VG';
1385
+ case CountryCode.VIR:
1386
+ return 'VI';
1387
+ case CountryCode.WLF:
1388
+ return 'WF';
1389
+ case CountryCode.ESH:
1390
+ return 'EH';
1391
+ case CountryCode.YEM:
1392
+ return 'YE';
1393
+ case CountryCode.ZMB:
1394
+ return 'ZM';
1395
+ case CountryCode.ZWE:
1396
+ return 'ZW';
1397
+ default:
1398
+ throw new Error(`Unsupported country code: ${countryCode}`);
1399
+ }
1400
+ }
390
1401
  export function greenInvoiceToDocumentStatus(greenInvoiceStatus) {
391
1402
  switch (greenInvoiceStatus) {
392
1403
  case 0:
@@ -435,9 +1446,11 @@ export async function insertNewDocumentFromGreenInvoice(injector, greenInvoiceDo
435
1446
  .get(CloudinaryProvider)
436
1447
  .uploadInvoiceToCloudinary(greenInvoiceDoc.url.origin);
437
1448
  // Get matching business
438
- const clientPromise = injector
439
- .get(ClientsProvider)
440
- .getClientByGreenInvoiceIdLoader.load(greenInvoiceDoc.client.id);
1449
+ const clientPromise = greenInvoiceDoc.client.id
1450
+ ? injector
1451
+ .get(ClientsProvider)
1452
+ .getClientByGreenInvoiceIdLoader.load(greenInvoiceDoc.client.id)
1453
+ : Promise.resolve(null);
441
1454
  const linkedDocumentsPromise = getLinkedDocuments(injector, greenInvoiceDoc.id);
442
1455
  const fileHashPromise = async () => {
443
1456
  try {
@@ -648,9 +1661,10 @@ export async function convertDocumentInputIntoGreenInvoiceInput(initialInput, in
648
1661
  export function convertGreenInvoiceDocumentToLocalDocumentInfo(greenInvoiceDocument) {
649
1662
  return {
650
1663
  ...greenInvoiceDocument,
651
- client: greenInvoiceDocument.client
1664
+ client: greenInvoiceDocument.client?.id
652
1665
  ? {
653
1666
  ...greenInvoiceDocument.client,
1667
+ id: greenInvoiceDocument.client.id,
654
1668
  emails: greenInvoiceDocument.client.emails
655
1669
  ? greenInvoiceDocument.client.emails.filter(Boolean)
656
1670
  : [],