kupos-ui-components-lib 9.8.4 → 9.8.6

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 (28) hide show
  1. package/dist/KuposUIComponent.d.ts +0 -3
  2. package/dist/components/ServiceItem/PeruServiceItemDesktop.d.ts +1 -1
  3. package/dist/components/ServiceItem/PeruServiceItemDesktop.js +2 -2
  4. package/dist/components/ServiceItem/ServiceItemDesktop.d.ts +1 -1
  5. package/dist/components/ServiceItem/ServiceItemDesktop.js +21 -21
  6. package/dist/components/ServiceItem/ServiceItemMobile.d.ts +1 -1
  7. package/dist/components/ServiceItem/ServiceItemMobile.js +7 -16
  8. package/dist/components/ServiceItem/mobileTypes.d.ts +0 -33
  9. package/dist/components/ServiceItem/types.d.ts +8 -23
  10. package/dist/styles.css +6 -212
  11. package/dist/ui/SeatSection/SeatSection.d.ts +7 -1
  12. package/dist/ui/SeatSection/SeatSection.js +31 -6
  13. package/dist/utils/CommonService.js +1 -11
  14. package/package.json +1 -1
  15. package/src/KuposUIComponent.tsx +0 -3
  16. package/src/components/ServiceItem/PeruServiceItemDesktop.tsx +24 -34
  17. package/src/components/ServiceItem/ServiceItemDesktop.tsx +45 -57
  18. package/src/components/ServiceItem/ServiceItemMobile.tsx +286 -342
  19. package/src/components/ServiceItem/mobileTypes.ts +1 -30
  20. package/src/components/ServiceItem/types.ts +24 -35
  21. package/src/styles.css +0 -15
  22. package/src/ui/SeatSection/SeatSection.tsx +76 -15
  23. package/src/utils/CommonService.ts +1 -13
  24. package/src/assets/images/anims/service_list/flame_anim.json +0 -1
  25. package/src/assets/images/anims/service_list/thunder_icon.json +0 -1
  26. package/src/assets/images/anims/service_list/users_anim.json +0 -1
  27. package/src/ui/FeaturServiceUiMobile/FeatureServiceUiMobile.tsx +0 -556
  28. package/src/ui/FeatureServiceUI/FeatureServiceUi.tsx +0 -592
package/dist/styles.css CHANGED
@@ -33,9 +33,6 @@
33
33
  .-top-\[11px\] {
34
34
  top: calc(11px * -1);
35
35
  }
36
- .-top-\[13px\] {
37
- top: calc(13px * -1);
38
- }
39
36
  .-top-\[18px\] {
40
37
  top: calc(18px * -1);
41
38
  }
@@ -63,15 +60,9 @@
63
60
  .top-\[88\%\] {
64
61
  top: 88%;
65
62
  }
66
- .top-\[calc\(100\%\+10px\)\] {
67
- top: calc(100% + 10px);
68
- }
69
63
  .right-\[0px\] {
70
64
  right: 0px;
71
65
  }
72
- .right-\[18px\] {
73
- right: 18px;
74
- }
75
66
  .-bottom-\[9\%\] {
76
67
  bottom: calc(9% * -1);
77
68
  }
@@ -84,9 +75,6 @@
84
75
  .-bottom-\[36px\] {
85
76
  bottom: calc(36px * -1);
86
77
  }
87
- .bottom-\[11px\] {
88
- bottom: 11px;
89
- }
90
78
  .bottom-\[35px\] {
91
79
  bottom: 35px;
92
80
  }
@@ -180,15 +168,9 @@
180
168
  .m-\[auto\] {
181
169
  margin: auto;
182
170
  }
183
- .mx-\[6px\] {
184
- margin-inline: 6px;
185
- }
186
171
  .mx-auto {
187
172
  margin-inline: auto;
188
173
  }
189
- .my-\[8px\] {
190
- margin-block: 8px;
191
- }
192
174
  .-mt-\[15px\] {
193
175
  margin-top: calc(15px * -1);
194
176
  }
@@ -207,27 +189,15 @@
207
189
  .mt-\[5px\] {
208
190
  margin-top: 5px;
209
191
  }
210
- .mt-\[6px\] {
211
- margin-top: 6px;
212
- }
213
192
  .mt-\[10px\] {
214
193
  margin-top: 10px;
215
194
  }
216
- .mt-\[12px\] {
217
- margin-top: 12px;
218
- }
219
195
  .mt-\[13px\] {
220
196
  margin-top: 13px;
221
197
  }
222
- .mt-\[14px\] {
223
- margin-top: 14px;
224
- }
225
198
  .mt-\[15px\] {
226
199
  margin-top: 15px;
227
200
  }
228
- .mt-\[16px\] {
229
- margin-top: 16px;
230
- }
231
201
  .mt-\[20px\] {
232
202
  margin-top: 20px;
233
203
  }
@@ -354,9 +324,6 @@
354
324
  .h-\[12px\] {
355
325
  height: 12px;
356
326
  }
357
- .h-\[13px\] {
358
- height: 13px;
359
- }
360
327
  .h-\[14px\] {
361
328
  height: 14px;
362
329
  }
@@ -375,9 +342,6 @@
375
342
  .h-\[24px\] {
376
343
  height: 24px;
377
344
  }
378
- .h-\[26px\] {
379
- height: 26px;
380
- }
381
345
  .h-\[30px\] {
382
346
  height: 30px;
383
347
  }
@@ -405,9 +369,6 @@
405
369
  .w-\[12px\] {
406
370
  width: 12px;
407
371
  }
408
- .w-\[13px\] {
409
- width: 13px;
410
- }
411
372
  .w-\[14px\] {
412
373
  width: 14px;
413
374
  }
@@ -420,9 +381,6 @@
420
381
  .w-\[20px\] {
421
382
  width: 20px;
422
383
  }
423
- .w-\[26px\] {
424
- width: 26px;
425
- }
426
384
  .w-\[50\%\] {
427
385
  width: 50%;
428
386
  }
@@ -438,6 +396,9 @@
438
396
  .w-\[65\%\%\] {
439
397
  width: 65%%;
440
398
  }
399
+ .w-\[80\%\] {
400
+ width: 80%;
401
+ }
441
402
  .w-\[100\%\] {
442
403
  width: 100%;
443
404
  }
@@ -491,12 +452,6 @@
491
452
  .max-w-\[165px\] {
492
453
  max-width: 165px;
493
454
  }
494
- .max-w-\[220px\] {
495
- max-width: 220px;
496
- }
497
- .max-w-full {
498
- max-width: 100%;
499
- }
500
455
  .min-w-\[75px\] {
501
456
  min-width: 75px;
502
457
  }
@@ -518,9 +473,6 @@
518
473
  --tw-translate-y: -10px;
519
474
  translate: var(--tw-translate-x) var(--tw-translate-y);
520
475
  }
521
- .rotate-0 {
522
- rotate: 0deg;
523
- }
524
476
  .rotate-180 {
525
477
  rotate: 180deg;
526
478
  }
@@ -530,9 +482,6 @@
530
482
  .cursor-default {
531
483
  cursor: default;
532
484
  }
533
- .cursor-not-allowed {
534
- cursor: not-allowed;
535
- }
536
485
  .cursor-pointer {
537
486
  cursor: pointer;
538
487
  }
@@ -545,21 +494,12 @@
545
494
  .grid-cols-2 {
546
495
  grid-template-columns: repeat(2, minmax(0, 1fr));
547
496
  }
548
- .grid-cols-3 {
549
- grid-template-columns: repeat(3, minmax(0, 1fr));
550
- }
551
- .grid-cols-4 {
552
- grid-template-columns: repeat(4, minmax(0, 1fr));
553
- }
554
497
  .grid-cols-\[0\.8fr_auto_26\%_1fr\] {
555
498
  grid-template-columns: 0.8fr auto 26% 1fr;
556
499
  }
557
500
  .grid-cols-\[1\.5fr_1fr_auto\] {
558
501
  grid-template-columns: 1.5fr 1fr auto;
559
502
  }
560
- .grid-cols-\[25\%_48\%_27\%\] {
561
- grid-template-columns: 25% 48% 27%;
562
- }
563
503
  .grid-cols-\[26px_auto_26\%_1fr\] {
564
504
  grid-template-columns: 26px auto 26% 1fr;
565
505
  }
@@ -587,9 +527,6 @@
587
527
  .items-start {
588
528
  align-items: flex-start;
589
529
  }
590
- .items-stretch {
591
- align-items: stretch;
592
- }
593
530
  .justify-between {
594
531
  justify-content: space-between;
595
532
  }
@@ -632,12 +569,6 @@
632
569
  .gap-\[14px\] {
633
570
  gap: 14px;
634
571
  }
635
- .gap-\[16px\] {
636
- gap: 16px;
637
- }
638
- .gap-\[20px\] {
639
- gap: 20px;
640
- }
641
572
  .gap-x-\[2\%\] {
642
573
  -moz-column-gap: 2%;
643
574
  column-gap: 2%;
@@ -646,20 +577,12 @@
646
577
  -moz-column-gap: 8px;
647
578
  column-gap: 8px;
648
579
  }
649
- .truncate {
650
- overflow: hidden;
651
- text-overflow: ellipsis;
652
- white-space: nowrap;
653
- }
654
580
  .overflow-hidden {
655
581
  overflow: hidden;
656
582
  }
657
583
  .overflow-y-hidden {
658
584
  overflow-y: hidden;
659
585
  }
660
- .rounded-\[4px\] {
661
- border-radius: 4px;
662
- }
663
586
  .rounded-\[8px\] {
664
587
  border-radius: 8px;
665
588
  }
@@ -672,9 +595,6 @@
672
595
  .rounded-\[15px\] {
673
596
  border-radius: 15px;
674
597
  }
675
- .rounded-\[16px\] {
676
- border-radius: 16px;
677
- }
678
598
  .rounded-\[18px\] {
679
599
  border-radius: 18px;
680
600
  }
@@ -718,10 +638,6 @@
718
638
  border-top-style: var(--tw-border-style);
719
639
  border-top-width: 8px;
720
640
  }
721
- .border-r {
722
- border-right-style: var(--tw-border-style);
723
- border-right-width: 1px;
724
- }
725
641
  .border-r-8 {
726
642
  border-right-style: var(--tw-border-style);
727
643
  border-right-width: 8px;
@@ -750,10 +666,6 @@
750
666
  border-bottom-style: var(--tw-border-style);
751
667
  border-bottom-width: 8px;
752
668
  }
753
- .border-l {
754
- border-left-style: var(--tw-border-style);
755
- border-left-width: 1px;
756
- }
757
669
  .border-l-8 {
758
670
  border-left-style: var(--tw-border-style);
759
671
  border-left-width: 8px;
@@ -770,9 +682,6 @@
770
682
  --tw-border-style: none;
771
683
  border-style: none;
772
684
  }
773
- .border-\[\#363c48\] {
774
- border-color: #363c48;
775
- }
776
685
  .border-\[\#ccc\] {
777
686
  border-color: #ccc;
778
687
  }
@@ -791,24 +700,9 @@
791
700
  .border-l-transparent {
792
701
  border-left-color: transparent;
793
702
  }
794
- .bg-\[\#0C1421\] {
795
- background-color: #0C1421;
796
- }
797
- .bg-\[\#2d374d\] {
798
- background-color: #2d374d;
799
- }
800
- .bg-\[\#222b3d\] {
801
- background-color: #222b3d;
802
- }
803
703
  .bg-\[\#E6E6E6\] {
804
704
  background-color: #E6E6E6;
805
705
  }
806
- .bg-\[\#FF5C60\] {
807
- background-color: #FF5C60;
808
- }
809
- .bg-\[\#FF8F45\] {
810
- background-color: #FF8F45;
811
- }
812
706
  .bg-\[\#FFF2F2\] {
813
707
  background-color: #FFF2F2;
814
708
  }
@@ -827,9 +721,6 @@
827
721
  .bg-\[lightgray\] {
828
722
  background-color: lightgray;
829
723
  }
830
- .bg-transparent {
831
- background-color: transparent;
832
- }
833
724
  .bg-\[length\:200\%_200\%\] {
834
725
  background-size: 200% 200%;
835
726
  }
@@ -852,9 +743,6 @@
852
743
  .p-\[10px_15px\] {
853
744
  padding: 10px 15px;
854
745
  }
855
- .p-\[14px\] {
856
- padding: 14px;
857
- }
858
746
  .p-\[15px\] {
859
747
  padding: 15px;
860
748
  }
@@ -888,18 +776,9 @@
888
776
  .px-\[15px\] {
889
777
  padding-inline: 15px;
890
778
  }
891
- .px-\[16px\] {
892
- padding-inline: 16px;
893
- }
894
779
  .px-\[20px\] {
895
780
  padding-inline: 20px;
896
781
  }
897
- .px-\[22px\] {
898
- padding-inline: 22px;
899
- }
900
- .py-\[2px\] {
901
- padding-block: 2px;
902
- }
903
782
  .py-\[4px\] {
904
783
  padding-block: 4px;
905
784
  }
@@ -912,9 +791,6 @@
912
791
  .py-\[8px\] {
913
792
  padding-block: 8px;
914
793
  }
915
- .py-\[9px\] {
916
- padding-block: 9px;
917
- }
918
794
  .py-\[10px\] {
919
795
  padding-block: 10px;
920
796
  }
@@ -930,9 +806,6 @@
930
806
  .pt-\[10px\] {
931
807
  padding-top: 10px;
932
808
  }
933
- .pt-\[14px\] {
934
- padding-top: 14px;
935
- }
936
809
  .pt-\[20px\] {
937
810
  padding-top: 20px;
938
811
  }
@@ -948,9 +821,6 @@
948
821
  .pt-\[50px\] {
949
822
  padding-top: 50px;
950
823
  }
951
- .pr-\[10px\] {
952
- padding-right: 10px;
953
- }
954
824
  .pr-\[15px\] {
955
825
  padding-right: 15px;
956
826
  }
@@ -960,9 +830,6 @@
960
830
  .pr-\[22px\] {
961
831
  padding-right: 22px;
962
832
  }
963
- .pb-\[6px\] {
964
- padding-bottom: 6px;
965
- }
966
833
  .pb-\[7px\] {
967
834
  padding-bottom: 7px;
968
835
  }
@@ -981,9 +848,6 @@
981
848
  .pl-\[6px\] {
982
849
  padding-left: 6px;
983
850
  }
984
- .pl-\[22px\] {
985
- padding-left: 22px;
986
- }
987
851
  .text-center {
988
852
  text-align: center;
989
853
  }
@@ -999,6 +863,9 @@
999
863
  .text-right {
1000
864
  text-align: right;
1001
865
  }
866
+ .text-\[9px\] {
867
+ font-size: 9px;
868
+ }
1002
869
  .text-\[10px\] {
1003
870
  font-size: 10px;
1004
871
  }
@@ -1020,9 +887,6 @@
1020
887
  .text-\[14px\] {
1021
888
  font-size: 14px;
1022
889
  }
1023
- .text-\[16px\] {
1024
- font-size: 16px;
1025
- }
1026
890
  .text-\[17\.33px\] {
1027
891
  font-size: 17.33px;
1028
892
  }
@@ -1035,15 +899,6 @@
1035
899
  .text-\[22px\] {
1036
900
  font-size: 22px;
1037
901
  }
1038
- .text-\[24px\] {
1039
- font-size: 24px;
1040
- }
1041
- .text-\[26px\] {
1042
- font-size: 26px;
1043
- }
1044
- .text-\[28px\] {
1045
- font-size: 28px;
1046
- }
1047
902
  .text-\[42px\] {
1048
903
  font-size: 42px;
1049
904
  }
@@ -1051,10 +906,6 @@
1051
906
  --tw-leading: 1.3;
1052
907
  line-height: 1.3;
1053
908
  }
1054
- .leading-\[14px\] {
1055
- --tw-leading: 14px;
1056
- line-height: 14px;
1057
- }
1058
909
  .leading-\[20px\] {
1059
910
  --tw-leading: 20px;
1060
911
  line-height: 20px;
@@ -1075,10 +926,6 @@
1075
926
  --tw-leading: 1;
1076
927
  line-height: 1;
1077
928
  }
1078
- .font-\[9px\] {
1079
- --tw-font-weight: 9px;
1080
- font-weight: 9px;
1081
- }
1082
929
  .font-\[14px\] {
1083
930
  --tw-font-weight: 14px;
1084
931
  font-weight: 14px;
@@ -1100,27 +947,12 @@
1100
947
  .whitespace-nowrap {
1101
948
  white-space: nowrap;
1102
949
  }
1103
- .text-\[\#1a1a1a\] {
1104
- color: #1a1a1a;
1105
- }
1106
- .text-\[\#4a4a4a\] {
1107
- color: #4a4a4a;
1108
- }
1109
950
  .text-\[\#9f9f9f\] {
1110
951
  color: #9f9f9f;
1111
952
  }
1112
- .text-\[\#666\] {
1113
- color: #666;
1114
- }
1115
- .text-\[\#272727\] {
1116
- color: #272727;
1117
- }
1118
953
  .text-\[\#464647\] {
1119
954
  color: #464647;
1120
955
  }
1121
- .text-\[\#FF8F45\] {
1122
- color: #FF8F45;
1123
- }
1124
956
  .text-\[\#c0c0c0\] {
1125
957
  color: #c0c0c0;
1126
958
  }
@@ -1139,9 +971,6 @@
1139
971
  .text-\[red\] {
1140
972
  color: red;
1141
973
  }
1142
- .text-\[white\] {
1143
- color: white;
1144
- }
1145
974
  .capitalize {
1146
975
  text-transform: capitalize;
1147
976
  }
@@ -1161,16 +990,9 @@
1161
990
  .opacity-0 {
1162
991
  opacity: 0%;
1163
992
  }
1164
- .opacity-50 {
1165
- opacity: 50%;
1166
- }
1167
993
  .opacity-100 {
1168
994
  opacity: 100%;
1169
995
  }
1170
- .outline {
1171
- outline-style: var(--tw-outline-style);
1172
- outline-width: 1px;
1173
- }
1174
996
  .grayscale {
1175
997
  --tw-grayscale: grayscale(100%);
1176
998
  filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
@@ -1198,10 +1020,6 @@
1198
1020
  transition-timing-function: var(--tw-ease, ease);
1199
1021
  transition-duration: var(--tw-duration, 0s);
1200
1022
  }
1201
- .duration-200 {
1202
- --tw-duration: 200ms;
1203
- transition-duration: 200ms;
1204
- }
1205
1023
  .duration-300 {
1206
1024
  --tw-duration: 300ms;
1207
1025
  transition-duration: 300ms;
@@ -1210,11 +1028,6 @@
1210
1028
  --tw-outline-style: none;
1211
1029
  outline-style: none;
1212
1030
  }
1213
- .select-none {
1214
- -webkit-user-select: none;
1215
- -moz-user-select: none;
1216
- user-select: none;
1217
- }
1218
1031
  .group-hover\:block {
1219
1032
  &:is(:where(.group):hover *) {
1220
1033
  @media (hover: hover) {
@@ -1354,19 +1167,6 @@
1354
1167
  .hide-scrollbar::-webkit-scrollbar {
1355
1168
  display: none;
1356
1169
  }
1357
- .kupos-time-dd > summary {
1358
- list-style: none;
1359
- }
1360
- .kupos-time-dd > summary::-webkit-details-marker {
1361
- display: none;
1362
- }
1363
- .kupos-time-chevron {
1364
- transition: transform 200ms ease;
1365
- flex-shrink: 0;
1366
- }
1367
- .kupos-time-dd[open] .kupos-time-chevron {
1368
- transform: rotate(180deg);
1369
- }
1370
1170
  .hide-scrollbar {
1371
1171
  -ms-overflow-style: none;
1372
1172
  scrollbar-width: none;
@@ -1439,11 +1239,6 @@
1439
1239
  syntax: "*";
1440
1240
  inherits: false;
1441
1241
  }
1442
- @property --tw-outline-style {
1443
- syntax: "*";
1444
- inherits: false;
1445
- initial-value: solid;
1446
- }
1447
1242
  @property --tw-blur {
1448
1243
  syntax: "*";
1449
1244
  inherits: false;
@@ -1535,7 +1330,6 @@
1535
1330
  --tw-numeric-figure: initial;
1536
1331
  --tw-numeric-spacing: initial;
1537
1332
  --tw-numeric-fraction: initial;
1538
- --tw-outline-style: solid;
1539
1333
  --tw-blur: initial;
1540
1334
  --tw-brightness: initial;
1541
1335
  --tw-contrast: initial;
@@ -3,6 +3,8 @@ interface SeatType {
3
3
  label: string;
4
4
  fare: number;
5
5
  key: any;
6
+ apiSeatType?: string;
7
+ api_seat_type?: string;
6
8
  }
7
9
  interface SeatSectionProps {
8
10
  seatTypes: SeatType[];
@@ -16,6 +18,10 @@ interface SeatSectionProps {
16
18
  serviceItem?: any;
17
19
  renderIcon?: (iconKey: string, size?: string) => React.ReactNode;
18
20
  discountSeatPriceColor?: string;
21
+ isTrain?: boolean;
22
+ selectedSeatKey?: any;
23
+ onSeatSelect?: (key: any, price: number, seatKey: string, apiSeatType?: string) => void;
24
+ topLabelColor?: string;
19
25
  }
20
- declare function SeatSection({ seatTypes, availableSeats, isSoldOut, priceColor, currencySign, removeDuplicateSeats, isPeru, serviceItem, renderIcon, dpSeatColor, discountSeatPriceColor, }: SeatSectionProps): React.ReactElement;
26
+ declare function SeatSection({ seatTypes, availableSeats, isSoldOut, priceColor, currencySign, removeDuplicateSeats, selectedSeatKey, onSeatSelect, isPeru, serviceItem, renderIcon, dpSeatColor, discountSeatPriceColor, isTrain, topLabelColor, }: SeatSectionProps): React.ReactElement;
21
27
  export default SeatSection;
@@ -8,6 +8,8 @@ function getAllSeatTypes(seatTypes) {
8
8
  let seatTypesWithPrices = seatTypes.filter(Boolean).map((val) => ({
9
9
  label: val === null || val === void 0 ? void 0 : val.label,
10
10
  price: val === null || val === void 0 ? void 0 : val.fare,
11
+ key: val === null || val === void 0 ? void 0 : val.key,
12
+ apiSeatType: (val === null || val === void 0 ? void 0 : val.apiSeatType) || (val === null || val === void 0 ? void 0 : val.api_seat_type),
11
13
  }));
12
14
  seatTypesWithPrices.sort((a, b) => a.price - b.price);
13
15
  return seatTypesWithPrices;
@@ -54,7 +56,7 @@ function getUniqueSeats(seatTypes) {
54
56
  function getNumberOfSeats(seatTypes) {
55
57
  return seatTypes.filter((val) => !SEAT_EXCEPTIONS.includes(val.label)).length;
56
58
  }
57
- function SeatSection({ seatTypes, availableSeats, isSoldOut, priceColor, currencySign, removeDuplicateSeats, isPeru, serviceItem, renderIcon, dpSeatColor, discountSeatPriceColor, }) {
59
+ function SeatSection({ seatTypes, availableSeats, isSoldOut, priceColor, currencySign, removeDuplicateSeats, selectedSeatKey, onSeatSelect, isPeru, serviceItem, renderIcon, dpSeatColor, discountSeatPriceColor, isTrain, topLabelColor, }) {
58
60
  var _a;
59
61
  const uniqueSeats = getUniqueSeats(seatTypes);
60
62
  const sortedSeatTypes = getSortedSeatTypes(seatTypes);
@@ -65,11 +67,34 @@ function SeatSection({ seatTypes, availableSeats, isSoldOut, priceColor, currenc
65
67
  : CommonService.currency(price, currencySign);
66
68
  const renderSeatNames = () => {
67
69
  const seats = removeDuplicateSeats ? uniqueSeats : sortedSeatTypes;
68
- return seats.map((val, key) => SEAT_EXCEPTIONS.includes(val.label) ? null : (React.createElement("span", { key: key, className: `flex items-center justify-between text-[13.33px] ${isSoldOut ? "text-[#c0c0c0]" : ""}` }, typeof val.label === "string" || typeof val.label === "number"
69
- ? removeDuplicateSeats && isPeru
70
- ? CommonService.truncateSeatLabel(val.label)
71
- : val.label
72
- : null)));
70
+ return seats.map((val, key) => {
71
+ return SEAT_EXCEPTIONS.includes(val.label) ? null : (React.createElement("div", { className: "flex items-center", style: isTrain ? { cursor: "pointer" } : undefined, onClick: isTrain && !isSoldOut
72
+ ? () => val.label === selectedSeatKey
73
+ ? onSeatSelect === null || onSeatSelect === void 0 ? void 0 : onSeatSelect(null, 0, "", "")
74
+ : onSeatSelect === null || onSeatSelect === void 0 ? void 0 : onSeatSelect(val.label, val.price, val.key, val.apiSeatType)
75
+ : undefined },
76
+ isTrain && (React.createElement("div", { style: {
77
+ border: `1px solid ${val.label === selectedSeatKey ? topLabelColor : "#ccc"}`,
78
+ borderRadius: "50%",
79
+ width: "14px",
80
+ height: "14px",
81
+ minWidth: "14px",
82
+ marginRight: "10px",
83
+ display: "flex",
84
+ alignItems: "center",
85
+ justifyContent: "center",
86
+ } }, val.label === selectedSeatKey && (React.createElement("div", { style: {
87
+ backgroundColor: topLabelColor,
88
+ borderRadius: "50%",
89
+ width: "7px",
90
+ height: "7px",
91
+ } })))),
92
+ React.createElement("span", { key: key, className: `flex items-center justify-between text-[13.33px] ${isSoldOut ? "text-[#c0c0c0]" : ""}` }, typeof val.label === "string" || typeof val.label === "number"
93
+ ? removeDuplicateSeats && isPeru
94
+ ? CommonService.truncateSeatLabel(val.label)
95
+ : val.label
96
+ : null)));
97
+ });
73
98
  };
74
99
  const renderSeatPrices = () => {
75
100
  if (isPeru) {
@@ -296,14 +296,10 @@ const commonService = {
296
296
  startViewerCount: (node, viewersConfig) => {
297
297
  if (!node || !viewersConfig)
298
298
  return;
299
- const { min, max, interval = 5000 } = viewersConfig;
300
- const configKey = `${min}-${max}-${interval}`;
301
- if (node.dataset.viewerId && node.dataset.viewerConfig === configKey) {
302
- return;
303
- }
304
299
  const prevId = node.dataset.viewerId;
305
300
  if (prevId)
306
301
  clearInterval(Number(prevId));
302
+ const { min, max, interval = 5000 } = viewersConfig;
307
303
  const clamp = (v) => Math.min(max, Math.max(min, v));
308
304
  const initialValue = Math.floor(Math.random() * (max - min + 1)) + min;
309
305
  node.textContent = String(initialValue);
@@ -314,7 +310,6 @@ const commonService = {
314
310
  node.textContent = String(clamp(Math.round(next)));
315
311
  }, interval);
316
312
  node.dataset.viewerId = String(id);
317
- node.dataset.viewerConfig = configKey;
318
313
  },
319
314
  startCountdown: (node, countdownSeconds = 599) => {
320
315
  if (!node)
@@ -344,10 +339,6 @@ const commonService = {
344
339
  startComprandoCount: (node, min = 4, max = 16) => {
345
340
  if (!node)
346
341
  return;
347
- const configKey = `${min}-${max}`;
348
- if (node.dataset.comprandoId && node.dataset.comprandoConfig === configKey) {
349
- return;
350
- }
351
342
  const prevId = node.dataset.comprandoId;
352
343
  if (prevId)
353
344
  clearInterval(Number(prevId));
@@ -364,7 +355,6 @@ const commonService = {
364
355
  node.textContent = String(next);
365
356
  }, 5000); // Update every 5 seconds
366
357
  node.dataset.comprandoId = String(id);
367
- node.dataset.comprandoConfig = configKey;
368
358
  },
369
359
  };
370
360
  export default commonService;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kupos-ui-components-lib",
3
- "version": "9.8.4",
3
+ "version": "9.8.6",
4
4
  "description": "A reusable UI components package",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -32,9 +32,6 @@ interface KuposUIComponentProps {
32
32
  orignLabel?: string;
33
33
  destinationLabel?: string;
34
34
  t?: (key: string) => string;
35
- ticketQuantity?: number;
36
- onIncreaseTicketQuantity?: (serviceItem: any) => void;
37
- onDecreaseTicketQuantity?: (serviceItem: any) => void;
38
35
 
39
36
  // New ServiceItem props
40
37
  id?: string;