kupos-ui-components-lib 9.9.1 → 9.9.2
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.
- package/dist/KuposUIComponent.d.ts +3 -0
- package/dist/components/ServiceItem/PeruServiceItemDesktop.d.ts +1 -1
- package/dist/components/ServiceItem/PeruServiceItemDesktop.js +2 -2
- package/dist/components/ServiceItem/ServiceItemDesktop.d.ts +1 -1
- package/dist/components/ServiceItem/ServiceItemDesktop.js +30 -31
- package/dist/components/ServiceItem/ServiceItemMobile.d.ts +1 -1
- package/dist/components/ServiceItem/ServiceItemMobile.js +43 -17
- package/dist/components/ServiceItem/mobileTypes.d.ts +48 -1
- package/dist/components/ServiceItem/types.d.ts +27 -9
- package/dist/styles.css +215 -6
- package/dist/ui/ExpendedDropDown/ExpandedDropdown.d.ts +1 -2
- package/dist/ui/ExpendedDropDown/ExpandedDropdown.js +2 -4
- package/dist/ui/FeaturServiceUiMobile/FeatureServiceUiMobile.js +22 -41
- package/dist/ui/FeatureServiceUI/FeatureServiceUi.js +24 -44
- package/dist/ui/OfferBanner.d.ts +2 -0
- package/dist/ui/OfferBanner.js +19 -14
- package/dist/ui/SeatSection/SeatSection.d.ts +1 -7
- package/dist/ui/SeatSection/SeatSection.js +12 -44
- package/dist/utils/CommonService.d.ts +3 -0
- package/dist/utils/CommonService.js +18 -1
- package/package.json +1 -1
- package/src/KuposUIComponent.tsx +3 -0
- package/src/assets/images/anims/service_list/flame_anim.json +1 -0
- package/src/assets/images/anims/service_list/thunder_icon.json +1 -0
- package/src/assets/images/anims/service_list/users_anim.json +1 -0
- package/src/components/ServiceItem/PeruServiceItemDesktop.tsx +35 -24
- package/src/components/ServiceItem/ServiceItemDesktop.tsx +65 -53
- package/src/components/ServiceItem/ServiceItemMobile.tsx +387 -288
- package/src/components/ServiceItem/mobileTypes.ts +50 -7
- package/src/components/ServiceItem/types.ts +39 -25
- package/src/styles.css +15 -0
- package/src/ui/ExpendedDropDown/ExpandedDropdown.tsx +2 -4
- package/src/ui/FeaturServiceUiMobile/FeatureServiceUiMobile.tsx +575 -0
- package/src/ui/FeatureServiceUI/FeatureServiceUi.tsx +610 -0
- package/src/ui/OfferBanner.tsx +31 -10
- package/src/ui/SeatSection/SeatSection.tsx +21 -88
- package/src/utils/CommonService.ts +26 -1
package/dist/styles.css
CHANGED
|
@@ -33,6 +33,9 @@
|
|
|
33
33
|
.-top-\[11px\] {
|
|
34
34
|
top: calc(11px * -1);
|
|
35
35
|
}
|
|
36
|
+
.-top-\[13px\] {
|
|
37
|
+
top: calc(13px * -1);
|
|
38
|
+
}
|
|
36
39
|
.-top-\[18px\] {
|
|
37
40
|
top: calc(18px * -1);
|
|
38
41
|
}
|
|
@@ -60,9 +63,15 @@
|
|
|
60
63
|
.top-\[88\%\] {
|
|
61
64
|
top: 88%;
|
|
62
65
|
}
|
|
66
|
+
.top-\[calc\(100\%\+10px\)\] {
|
|
67
|
+
top: calc(100% + 10px);
|
|
68
|
+
}
|
|
63
69
|
.right-\[0px\] {
|
|
64
70
|
right: 0px;
|
|
65
71
|
}
|
|
72
|
+
.right-\[18px\] {
|
|
73
|
+
right: 18px;
|
|
74
|
+
}
|
|
66
75
|
.-bottom-\[9\%\] {
|
|
67
76
|
bottom: calc(9% * -1);
|
|
68
77
|
}
|
|
@@ -75,6 +84,12 @@
|
|
|
75
84
|
.-bottom-\[36px\] {
|
|
76
85
|
bottom: calc(36px * -1);
|
|
77
86
|
}
|
|
87
|
+
.-bottom-\[44px\] {
|
|
88
|
+
bottom: calc(44px * -1);
|
|
89
|
+
}
|
|
90
|
+
.bottom-\[11px\] {
|
|
91
|
+
bottom: 11px;
|
|
92
|
+
}
|
|
78
93
|
.bottom-\[35px\] {
|
|
79
94
|
bottom: 35px;
|
|
80
95
|
}
|
|
@@ -168,9 +183,15 @@
|
|
|
168
183
|
.m-\[auto\] {
|
|
169
184
|
margin: auto;
|
|
170
185
|
}
|
|
186
|
+
.mx-\[6px\] {
|
|
187
|
+
margin-inline: 6px;
|
|
188
|
+
}
|
|
171
189
|
.mx-auto {
|
|
172
190
|
margin-inline: auto;
|
|
173
191
|
}
|
|
192
|
+
.my-\[8px\] {
|
|
193
|
+
margin-block: 8px;
|
|
194
|
+
}
|
|
174
195
|
.-mt-\[15px\] {
|
|
175
196
|
margin-top: calc(15px * -1);
|
|
176
197
|
}
|
|
@@ -189,15 +210,27 @@
|
|
|
189
210
|
.mt-\[5px\] {
|
|
190
211
|
margin-top: 5px;
|
|
191
212
|
}
|
|
213
|
+
.mt-\[6px\] {
|
|
214
|
+
margin-top: 6px;
|
|
215
|
+
}
|
|
192
216
|
.mt-\[10px\] {
|
|
193
217
|
margin-top: 10px;
|
|
194
218
|
}
|
|
219
|
+
.mt-\[12px\] {
|
|
220
|
+
margin-top: 12px;
|
|
221
|
+
}
|
|
195
222
|
.mt-\[13px\] {
|
|
196
223
|
margin-top: 13px;
|
|
197
224
|
}
|
|
225
|
+
.mt-\[14px\] {
|
|
226
|
+
margin-top: 14px;
|
|
227
|
+
}
|
|
198
228
|
.mt-\[15px\] {
|
|
199
229
|
margin-top: 15px;
|
|
200
230
|
}
|
|
231
|
+
.mt-\[16px\] {
|
|
232
|
+
margin-top: 16px;
|
|
233
|
+
}
|
|
201
234
|
.mt-\[20px\] {
|
|
202
235
|
margin-top: 20px;
|
|
203
236
|
}
|
|
@@ -324,6 +357,9 @@
|
|
|
324
357
|
.h-\[12px\] {
|
|
325
358
|
height: 12px;
|
|
326
359
|
}
|
|
360
|
+
.h-\[13px\] {
|
|
361
|
+
height: 13px;
|
|
362
|
+
}
|
|
327
363
|
.h-\[14px\] {
|
|
328
364
|
height: 14px;
|
|
329
365
|
}
|
|
@@ -342,6 +378,9 @@
|
|
|
342
378
|
.h-\[24px\] {
|
|
343
379
|
height: 24px;
|
|
344
380
|
}
|
|
381
|
+
.h-\[26px\] {
|
|
382
|
+
height: 26px;
|
|
383
|
+
}
|
|
345
384
|
.h-\[30px\] {
|
|
346
385
|
height: 30px;
|
|
347
386
|
}
|
|
@@ -369,6 +408,9 @@
|
|
|
369
408
|
.w-\[12px\] {
|
|
370
409
|
width: 12px;
|
|
371
410
|
}
|
|
411
|
+
.w-\[13px\] {
|
|
412
|
+
width: 13px;
|
|
413
|
+
}
|
|
372
414
|
.w-\[14px\] {
|
|
373
415
|
width: 14px;
|
|
374
416
|
}
|
|
@@ -381,6 +423,9 @@
|
|
|
381
423
|
.w-\[20px\] {
|
|
382
424
|
width: 20px;
|
|
383
425
|
}
|
|
426
|
+
.w-\[26px\] {
|
|
427
|
+
width: 26px;
|
|
428
|
+
}
|
|
384
429
|
.w-\[50\%\] {
|
|
385
430
|
width: 50%;
|
|
386
431
|
}
|
|
@@ -396,9 +441,6 @@
|
|
|
396
441
|
.w-\[65\%\%\] {
|
|
397
442
|
width: 65%%;
|
|
398
443
|
}
|
|
399
|
-
.w-\[80\%\] {
|
|
400
|
-
width: 80%;
|
|
401
|
-
}
|
|
402
444
|
.w-\[100\%\] {
|
|
403
445
|
width: 100%;
|
|
404
446
|
}
|
|
@@ -452,6 +494,12 @@
|
|
|
452
494
|
.max-w-\[165px\] {
|
|
453
495
|
max-width: 165px;
|
|
454
496
|
}
|
|
497
|
+
.max-w-\[220px\] {
|
|
498
|
+
max-width: 220px;
|
|
499
|
+
}
|
|
500
|
+
.max-w-full {
|
|
501
|
+
max-width: 100%;
|
|
502
|
+
}
|
|
455
503
|
.min-w-\[75px\] {
|
|
456
504
|
min-width: 75px;
|
|
457
505
|
}
|
|
@@ -473,6 +521,9 @@
|
|
|
473
521
|
--tw-translate-y: -10px;
|
|
474
522
|
translate: var(--tw-translate-x) var(--tw-translate-y);
|
|
475
523
|
}
|
|
524
|
+
.rotate-0 {
|
|
525
|
+
rotate: 0deg;
|
|
526
|
+
}
|
|
476
527
|
.rotate-180 {
|
|
477
528
|
rotate: 180deg;
|
|
478
529
|
}
|
|
@@ -482,6 +533,9 @@
|
|
|
482
533
|
.cursor-default {
|
|
483
534
|
cursor: default;
|
|
484
535
|
}
|
|
536
|
+
.cursor-not-allowed {
|
|
537
|
+
cursor: not-allowed;
|
|
538
|
+
}
|
|
485
539
|
.cursor-pointer {
|
|
486
540
|
cursor: pointer;
|
|
487
541
|
}
|
|
@@ -494,12 +548,21 @@
|
|
|
494
548
|
.grid-cols-2 {
|
|
495
549
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
496
550
|
}
|
|
551
|
+
.grid-cols-3 {
|
|
552
|
+
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
553
|
+
}
|
|
554
|
+
.grid-cols-4 {
|
|
555
|
+
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
556
|
+
}
|
|
497
557
|
.grid-cols-\[0\.8fr_auto_26\%_1fr\] {
|
|
498
558
|
grid-template-columns: 0.8fr auto 26% 1fr;
|
|
499
559
|
}
|
|
500
560
|
.grid-cols-\[1\.5fr_1fr_auto\] {
|
|
501
561
|
grid-template-columns: 1.5fr 1fr auto;
|
|
502
562
|
}
|
|
563
|
+
.grid-cols-\[25\%_48\%_27\%\] {
|
|
564
|
+
grid-template-columns: 25% 48% 27%;
|
|
565
|
+
}
|
|
503
566
|
.grid-cols-\[26px_auto_26\%_1fr\] {
|
|
504
567
|
grid-template-columns: 26px auto 26% 1fr;
|
|
505
568
|
}
|
|
@@ -527,6 +590,9 @@
|
|
|
527
590
|
.items-start {
|
|
528
591
|
align-items: flex-start;
|
|
529
592
|
}
|
|
593
|
+
.items-stretch {
|
|
594
|
+
align-items: stretch;
|
|
595
|
+
}
|
|
530
596
|
.justify-between {
|
|
531
597
|
justify-content: space-between;
|
|
532
598
|
}
|
|
@@ -569,6 +635,12 @@
|
|
|
569
635
|
.gap-\[14px\] {
|
|
570
636
|
gap: 14px;
|
|
571
637
|
}
|
|
638
|
+
.gap-\[16px\] {
|
|
639
|
+
gap: 16px;
|
|
640
|
+
}
|
|
641
|
+
.gap-\[20px\] {
|
|
642
|
+
gap: 20px;
|
|
643
|
+
}
|
|
572
644
|
.gap-x-\[2\%\] {
|
|
573
645
|
-moz-column-gap: 2%;
|
|
574
646
|
column-gap: 2%;
|
|
@@ -577,12 +649,20 @@
|
|
|
577
649
|
-moz-column-gap: 8px;
|
|
578
650
|
column-gap: 8px;
|
|
579
651
|
}
|
|
652
|
+
.truncate {
|
|
653
|
+
overflow: hidden;
|
|
654
|
+
text-overflow: ellipsis;
|
|
655
|
+
white-space: nowrap;
|
|
656
|
+
}
|
|
580
657
|
.overflow-hidden {
|
|
581
658
|
overflow: hidden;
|
|
582
659
|
}
|
|
583
660
|
.overflow-y-hidden {
|
|
584
661
|
overflow-y: hidden;
|
|
585
662
|
}
|
|
663
|
+
.rounded-\[4px\] {
|
|
664
|
+
border-radius: 4px;
|
|
665
|
+
}
|
|
586
666
|
.rounded-\[8px\] {
|
|
587
667
|
border-radius: 8px;
|
|
588
668
|
}
|
|
@@ -595,6 +675,9 @@
|
|
|
595
675
|
.rounded-\[15px\] {
|
|
596
676
|
border-radius: 15px;
|
|
597
677
|
}
|
|
678
|
+
.rounded-\[16px\] {
|
|
679
|
+
border-radius: 16px;
|
|
680
|
+
}
|
|
598
681
|
.rounded-\[18px\] {
|
|
599
682
|
border-radius: 18px;
|
|
600
683
|
}
|
|
@@ -638,6 +721,10 @@
|
|
|
638
721
|
border-top-style: var(--tw-border-style);
|
|
639
722
|
border-top-width: 8px;
|
|
640
723
|
}
|
|
724
|
+
.border-r {
|
|
725
|
+
border-right-style: var(--tw-border-style);
|
|
726
|
+
border-right-width: 1px;
|
|
727
|
+
}
|
|
641
728
|
.border-r-8 {
|
|
642
729
|
border-right-style: var(--tw-border-style);
|
|
643
730
|
border-right-width: 8px;
|
|
@@ -666,6 +753,10 @@
|
|
|
666
753
|
border-bottom-style: var(--tw-border-style);
|
|
667
754
|
border-bottom-width: 8px;
|
|
668
755
|
}
|
|
756
|
+
.border-l {
|
|
757
|
+
border-left-style: var(--tw-border-style);
|
|
758
|
+
border-left-width: 1px;
|
|
759
|
+
}
|
|
669
760
|
.border-l-8 {
|
|
670
761
|
border-left-style: var(--tw-border-style);
|
|
671
762
|
border-left-width: 8px;
|
|
@@ -682,6 +773,9 @@
|
|
|
682
773
|
--tw-border-style: none;
|
|
683
774
|
border-style: none;
|
|
684
775
|
}
|
|
776
|
+
.border-\[\#363c48\] {
|
|
777
|
+
border-color: #363c48;
|
|
778
|
+
}
|
|
685
779
|
.border-\[\#ccc\] {
|
|
686
780
|
border-color: #ccc;
|
|
687
781
|
}
|
|
@@ -700,9 +794,24 @@
|
|
|
700
794
|
.border-l-transparent {
|
|
701
795
|
border-left-color: transparent;
|
|
702
796
|
}
|
|
797
|
+
.bg-\[\#0C1421\] {
|
|
798
|
+
background-color: #0C1421;
|
|
799
|
+
}
|
|
800
|
+
.bg-\[\#2d374d\] {
|
|
801
|
+
background-color: #2d374d;
|
|
802
|
+
}
|
|
803
|
+
.bg-\[\#222b3d\] {
|
|
804
|
+
background-color: #222b3d;
|
|
805
|
+
}
|
|
703
806
|
.bg-\[\#E6E6E6\] {
|
|
704
807
|
background-color: #E6E6E6;
|
|
705
808
|
}
|
|
809
|
+
.bg-\[\#FF5C60\] {
|
|
810
|
+
background-color: #FF5C60;
|
|
811
|
+
}
|
|
812
|
+
.bg-\[\#FF8F45\] {
|
|
813
|
+
background-color: #FF8F45;
|
|
814
|
+
}
|
|
706
815
|
.bg-\[\#FFF2F2\] {
|
|
707
816
|
background-color: #FFF2F2;
|
|
708
817
|
}
|
|
@@ -721,6 +830,9 @@
|
|
|
721
830
|
.bg-\[lightgray\] {
|
|
722
831
|
background-color: lightgray;
|
|
723
832
|
}
|
|
833
|
+
.bg-transparent {
|
|
834
|
+
background-color: transparent;
|
|
835
|
+
}
|
|
724
836
|
.bg-\[length\:200\%_200\%\] {
|
|
725
837
|
background-size: 200% 200%;
|
|
726
838
|
}
|
|
@@ -743,6 +855,9 @@
|
|
|
743
855
|
.p-\[10px_15px\] {
|
|
744
856
|
padding: 10px 15px;
|
|
745
857
|
}
|
|
858
|
+
.p-\[14px\] {
|
|
859
|
+
padding: 14px;
|
|
860
|
+
}
|
|
746
861
|
.p-\[15px\] {
|
|
747
862
|
padding: 15px;
|
|
748
863
|
}
|
|
@@ -776,9 +891,18 @@
|
|
|
776
891
|
.px-\[15px\] {
|
|
777
892
|
padding-inline: 15px;
|
|
778
893
|
}
|
|
894
|
+
.px-\[16px\] {
|
|
895
|
+
padding-inline: 16px;
|
|
896
|
+
}
|
|
779
897
|
.px-\[20px\] {
|
|
780
898
|
padding-inline: 20px;
|
|
781
899
|
}
|
|
900
|
+
.px-\[22px\] {
|
|
901
|
+
padding-inline: 22px;
|
|
902
|
+
}
|
|
903
|
+
.py-\[2px\] {
|
|
904
|
+
padding-block: 2px;
|
|
905
|
+
}
|
|
782
906
|
.py-\[4px\] {
|
|
783
907
|
padding-block: 4px;
|
|
784
908
|
}
|
|
@@ -791,6 +915,9 @@
|
|
|
791
915
|
.py-\[8px\] {
|
|
792
916
|
padding-block: 8px;
|
|
793
917
|
}
|
|
918
|
+
.py-\[9px\] {
|
|
919
|
+
padding-block: 9px;
|
|
920
|
+
}
|
|
794
921
|
.py-\[10px\] {
|
|
795
922
|
padding-block: 10px;
|
|
796
923
|
}
|
|
@@ -806,6 +933,9 @@
|
|
|
806
933
|
.pt-\[10px\] {
|
|
807
934
|
padding-top: 10px;
|
|
808
935
|
}
|
|
936
|
+
.pt-\[14px\] {
|
|
937
|
+
padding-top: 14px;
|
|
938
|
+
}
|
|
809
939
|
.pt-\[20px\] {
|
|
810
940
|
padding-top: 20px;
|
|
811
941
|
}
|
|
@@ -821,6 +951,9 @@
|
|
|
821
951
|
.pt-\[50px\] {
|
|
822
952
|
padding-top: 50px;
|
|
823
953
|
}
|
|
954
|
+
.pr-\[10px\] {
|
|
955
|
+
padding-right: 10px;
|
|
956
|
+
}
|
|
824
957
|
.pr-\[15px\] {
|
|
825
958
|
padding-right: 15px;
|
|
826
959
|
}
|
|
@@ -830,6 +963,9 @@
|
|
|
830
963
|
.pr-\[22px\] {
|
|
831
964
|
padding-right: 22px;
|
|
832
965
|
}
|
|
966
|
+
.pb-\[6px\] {
|
|
967
|
+
padding-bottom: 6px;
|
|
968
|
+
}
|
|
833
969
|
.pb-\[7px\] {
|
|
834
970
|
padding-bottom: 7px;
|
|
835
971
|
}
|
|
@@ -848,6 +984,9 @@
|
|
|
848
984
|
.pl-\[6px\] {
|
|
849
985
|
padding-left: 6px;
|
|
850
986
|
}
|
|
987
|
+
.pl-\[22px\] {
|
|
988
|
+
padding-left: 22px;
|
|
989
|
+
}
|
|
851
990
|
.text-center {
|
|
852
991
|
text-align: center;
|
|
853
992
|
}
|
|
@@ -863,9 +1002,6 @@
|
|
|
863
1002
|
.text-right {
|
|
864
1003
|
text-align: right;
|
|
865
1004
|
}
|
|
866
|
-
.text-\[9px\] {
|
|
867
|
-
font-size: 9px;
|
|
868
|
-
}
|
|
869
1005
|
.text-\[10px\] {
|
|
870
1006
|
font-size: 10px;
|
|
871
1007
|
}
|
|
@@ -887,6 +1023,9 @@
|
|
|
887
1023
|
.text-\[14px\] {
|
|
888
1024
|
font-size: 14px;
|
|
889
1025
|
}
|
|
1026
|
+
.text-\[16px\] {
|
|
1027
|
+
font-size: 16px;
|
|
1028
|
+
}
|
|
890
1029
|
.text-\[17\.33px\] {
|
|
891
1030
|
font-size: 17.33px;
|
|
892
1031
|
}
|
|
@@ -899,6 +1038,15 @@
|
|
|
899
1038
|
.text-\[22px\] {
|
|
900
1039
|
font-size: 22px;
|
|
901
1040
|
}
|
|
1041
|
+
.text-\[24px\] {
|
|
1042
|
+
font-size: 24px;
|
|
1043
|
+
}
|
|
1044
|
+
.text-\[26px\] {
|
|
1045
|
+
font-size: 26px;
|
|
1046
|
+
}
|
|
1047
|
+
.text-\[28px\] {
|
|
1048
|
+
font-size: 28px;
|
|
1049
|
+
}
|
|
902
1050
|
.text-\[42px\] {
|
|
903
1051
|
font-size: 42px;
|
|
904
1052
|
}
|
|
@@ -906,6 +1054,10 @@
|
|
|
906
1054
|
--tw-leading: 1.3;
|
|
907
1055
|
line-height: 1.3;
|
|
908
1056
|
}
|
|
1057
|
+
.leading-\[14px\] {
|
|
1058
|
+
--tw-leading: 14px;
|
|
1059
|
+
line-height: 14px;
|
|
1060
|
+
}
|
|
909
1061
|
.leading-\[20px\] {
|
|
910
1062
|
--tw-leading: 20px;
|
|
911
1063
|
line-height: 20px;
|
|
@@ -926,6 +1078,10 @@
|
|
|
926
1078
|
--tw-leading: 1;
|
|
927
1079
|
line-height: 1;
|
|
928
1080
|
}
|
|
1081
|
+
.font-\[9px\] {
|
|
1082
|
+
--tw-font-weight: 9px;
|
|
1083
|
+
font-weight: 9px;
|
|
1084
|
+
}
|
|
929
1085
|
.font-\[14px\] {
|
|
930
1086
|
--tw-font-weight: 14px;
|
|
931
1087
|
font-weight: 14px;
|
|
@@ -947,12 +1103,27 @@
|
|
|
947
1103
|
.whitespace-nowrap {
|
|
948
1104
|
white-space: nowrap;
|
|
949
1105
|
}
|
|
1106
|
+
.text-\[\#1a1a1a\] {
|
|
1107
|
+
color: #1a1a1a;
|
|
1108
|
+
}
|
|
1109
|
+
.text-\[\#4a4a4a\] {
|
|
1110
|
+
color: #4a4a4a;
|
|
1111
|
+
}
|
|
950
1112
|
.text-\[\#9f9f9f\] {
|
|
951
1113
|
color: #9f9f9f;
|
|
952
1114
|
}
|
|
1115
|
+
.text-\[\#666\] {
|
|
1116
|
+
color: #666;
|
|
1117
|
+
}
|
|
1118
|
+
.text-\[\#272727\] {
|
|
1119
|
+
color: #272727;
|
|
1120
|
+
}
|
|
953
1121
|
.text-\[\#464647\] {
|
|
954
1122
|
color: #464647;
|
|
955
1123
|
}
|
|
1124
|
+
.text-\[\#FF8F45\] {
|
|
1125
|
+
color: #FF8F45;
|
|
1126
|
+
}
|
|
956
1127
|
.text-\[\#c0c0c0\] {
|
|
957
1128
|
color: #c0c0c0;
|
|
958
1129
|
}
|
|
@@ -971,6 +1142,9 @@
|
|
|
971
1142
|
.text-\[red\] {
|
|
972
1143
|
color: red;
|
|
973
1144
|
}
|
|
1145
|
+
.text-\[white\] {
|
|
1146
|
+
color: white;
|
|
1147
|
+
}
|
|
974
1148
|
.capitalize {
|
|
975
1149
|
text-transform: capitalize;
|
|
976
1150
|
}
|
|
@@ -990,9 +1164,16 @@
|
|
|
990
1164
|
.opacity-0 {
|
|
991
1165
|
opacity: 0%;
|
|
992
1166
|
}
|
|
1167
|
+
.opacity-50 {
|
|
1168
|
+
opacity: 50%;
|
|
1169
|
+
}
|
|
993
1170
|
.opacity-100 {
|
|
994
1171
|
opacity: 100%;
|
|
995
1172
|
}
|
|
1173
|
+
.outline {
|
|
1174
|
+
outline-style: var(--tw-outline-style);
|
|
1175
|
+
outline-width: 1px;
|
|
1176
|
+
}
|
|
996
1177
|
.grayscale {
|
|
997
1178
|
--tw-grayscale: grayscale(100%);
|
|
998
1179
|
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,);
|
|
@@ -1020,6 +1201,10 @@
|
|
|
1020
1201
|
transition-timing-function: var(--tw-ease, ease);
|
|
1021
1202
|
transition-duration: var(--tw-duration, 0s);
|
|
1022
1203
|
}
|
|
1204
|
+
.duration-200 {
|
|
1205
|
+
--tw-duration: 200ms;
|
|
1206
|
+
transition-duration: 200ms;
|
|
1207
|
+
}
|
|
1023
1208
|
.duration-300 {
|
|
1024
1209
|
--tw-duration: 300ms;
|
|
1025
1210
|
transition-duration: 300ms;
|
|
@@ -1028,6 +1213,11 @@
|
|
|
1028
1213
|
--tw-outline-style: none;
|
|
1029
1214
|
outline-style: none;
|
|
1030
1215
|
}
|
|
1216
|
+
.select-none {
|
|
1217
|
+
-webkit-user-select: none;
|
|
1218
|
+
-moz-user-select: none;
|
|
1219
|
+
user-select: none;
|
|
1220
|
+
}
|
|
1031
1221
|
.group-hover\:block {
|
|
1032
1222
|
&:is(:where(.group):hover *) {
|
|
1033
1223
|
@media (hover: hover) {
|
|
@@ -1167,6 +1357,19 @@
|
|
|
1167
1357
|
.hide-scrollbar::-webkit-scrollbar {
|
|
1168
1358
|
display: none;
|
|
1169
1359
|
}
|
|
1360
|
+
.kupos-time-dd > summary {
|
|
1361
|
+
list-style: none;
|
|
1362
|
+
}
|
|
1363
|
+
.kupos-time-dd > summary::-webkit-details-marker {
|
|
1364
|
+
display: none;
|
|
1365
|
+
}
|
|
1366
|
+
.kupos-time-chevron {
|
|
1367
|
+
transition: transform 200ms ease;
|
|
1368
|
+
flex-shrink: 0;
|
|
1369
|
+
}
|
|
1370
|
+
.kupos-time-dd[open] .kupos-time-chevron {
|
|
1371
|
+
transform: rotate(180deg);
|
|
1372
|
+
}
|
|
1170
1373
|
.hide-scrollbar {
|
|
1171
1374
|
-ms-overflow-style: none;
|
|
1172
1375
|
scrollbar-width: none;
|
|
@@ -1239,6 +1442,11 @@
|
|
|
1239
1442
|
syntax: "*";
|
|
1240
1443
|
inherits: false;
|
|
1241
1444
|
}
|
|
1445
|
+
@property --tw-outline-style {
|
|
1446
|
+
syntax: "*";
|
|
1447
|
+
inherits: false;
|
|
1448
|
+
initial-value: solid;
|
|
1449
|
+
}
|
|
1242
1450
|
@property --tw-blur {
|
|
1243
1451
|
syntax: "*";
|
|
1244
1452
|
inherits: false;
|
|
@@ -1330,6 +1538,7 @@
|
|
|
1330
1538
|
--tw-numeric-figure: initial;
|
|
1331
1539
|
--tw-numeric-spacing: initial;
|
|
1332
1540
|
--tw-numeric-fraction: initial;
|
|
1541
|
+
--tw-outline-style: solid;
|
|
1333
1542
|
--tw-blur: initial;
|
|
1334
1543
|
--tw-brightness: initial;
|
|
1335
1544
|
--tw-contrast: initial;
|
|
@@ -14,7 +14,6 @@ interface ExpandedDropdownProps {
|
|
|
14
14
|
ladiesBookedSeats?: string;
|
|
15
15
|
isDpEnabled?: boolean;
|
|
16
16
|
renderIcon?: any;
|
|
17
|
-
operatorLabel?: string;
|
|
18
17
|
}
|
|
19
|
-
declare function ExpandedDropdown({ serviceItem, isPeru, translation, getAnimationIcon, isChangeTicket, isSoldOut, ladiesBookedSeats, isDpEnabled, renderIcon,
|
|
18
|
+
declare function ExpandedDropdown({ serviceItem, isPeru, translation, getAnimationIcon, isChangeTicket, isSoldOut, ladiesBookedSeats, isDpEnabled, renderIcon, }: ExpandedDropdownProps): React.ReactElement;
|
|
20
19
|
export default ExpandedDropdown;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
function ExpandedDropdown({ serviceItem, isPeru = false, translation = {}, getAnimationIcon, isChangeTicket = false, isSoldOut, ladiesBookedSeats, isDpEnabled, renderIcon,
|
|
2
|
+
function ExpandedDropdown({ serviceItem, isPeru = false, translation = {}, getAnimationIcon, isChangeTicket = false, isSoldOut, ladiesBookedSeats, isDpEnabled, renderIcon, }) {
|
|
3
3
|
const hasPetInfo = serviceItem.pet_seat_info &&
|
|
4
4
|
Object.keys(serviceItem.pet_seat_info).length > 0;
|
|
5
5
|
return (React.createElement("div", { className: "px-[15px] pt-[26px] pb-[14px] -mt-[16px] pt-[35px] relative -z-9", style: {
|
|
@@ -18,9 +18,7 @@ function ExpandedDropdown({ serviceItem, isPeru = false, translation = {}, getAn
|
|
|
18
18
|
(serviceItem === null || serviceItem === void 0 ? void 0 : serviceItem.change_ticket_hours) || 6,
|
|
19
19
|
" horas antes"),
|
|
20
20
|
" ",
|
|
21
|
-
"de la salida del bus. El monto ser\u00E1 reembolsado a tu billetera",
|
|
22
|
-
" ", operatorLabel !== null && operatorLabel !== void 0 ? operatorLabel : "kupospay",
|
|
23
|
-
"."))) : (React.createElement("div", { className: "flex gap-[8px] text-[13.33px]" },
|
|
21
|
+
"de la salida del bus. El monto ser\u00E1 reembolsado a tu billetera kupospay."))) : (React.createElement("div", { className: "flex gap-[8px] text-[13.33px]" },
|
|
24
22
|
React.createElement("span", null, renderIcon("changeTicketIcon", "16px")),
|
|
25
23
|
React.createElement("span", null,
|
|
26
24
|
React.createElement("span", null,
|
|
@@ -29,14 +29,14 @@ const HARDCODED_OPERATORS = [
|
|
|
29
29
|
},
|
|
30
30
|
];
|
|
31
31
|
const FeatureServiceUiMobile = ({ serviceItem, showTopLabel, colors, isSoldOut, cityOrigin, cityDestination, renderIcon, viewersConfig, isFeatureDropDownExpand, onToggleExpand, ticketQuantity = 1, onIncreaseTicketQuantity, onDecreaseTicketQuantity, onBookButtonPress, selectedTimeSlot = TIME_SLOTS[0], onTimeSlotChange, isTimeDropdownOpen, onTimeDropdownToggle, wowDealData = undefined, }) => {
|
|
32
|
-
var _a, _b, _c, _d, _e, _f;
|
|
32
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
33
33
|
// Use wow_deal data if available, otherwise fall back to serviceItem operators or hardcoded
|
|
34
|
-
const operators = ((_a = wowDealData === null || wowDealData === void 0 ? void 0 : wowDealData.
|
|
35
|
-
? wowDealData.
|
|
36
|
-
logo:
|
|
37
|
-
name:
|
|
38
|
-
time:
|
|
39
|
-
seatsAvailable: `${
|
|
34
|
+
const operators = ((_a = wowDealData === null || wowDealData === void 0 ? void 0 : wowDealData.services) === null || _a === void 0 ? void 0 : _a.length) > 0
|
|
35
|
+
? wowDealData.services.slice(0, 3).map((service) => ({
|
|
36
|
+
logo: service.operator_logo_url,
|
|
37
|
+
name: service.operator_name,
|
|
38
|
+
time: service.departure_time,
|
|
39
|
+
seatsAvailable: `${service.available_seats} disponibles`,
|
|
40
40
|
}))
|
|
41
41
|
: ((_b = serviceItem === null || serviceItem === void 0 ? void 0 : serviceItem.operators) === null || _b === void 0 ? void 0 : _b.length) > 0
|
|
42
42
|
? serviceItem.operators
|
|
@@ -68,6 +68,16 @@ const FeatureServiceUiMobile = ({ serviceItem, showTopLabel, colors, isSoldOut,
|
|
|
68
68
|
isFeatureDropDownExpand === true;
|
|
69
69
|
const isThisTimeDropdownOpen = isTimeDropdownOpen === serviceItem.id;
|
|
70
70
|
const canDecreaseTicketQuantity = ticketQuantity > 1;
|
|
71
|
+
const departures = (_d = (_c = wowDealData === null || wowDealData === void 0 ? void 0 : wowDealData.services) === null || _c === void 0 ? void 0 : _c.map((s) => s.departure_time)) === null || _d === void 0 ? void 0 : _d.filter(Boolean);
|
|
72
|
+
let departureRange = `Entre ${dealWindowFrom} y ${dealWindowTo}`;
|
|
73
|
+
if (departures === null || departures === void 0 ? void 0 : departures.length) {
|
|
74
|
+
const sorted = [...departures].sort((a, b) => {
|
|
75
|
+
const [ah, am] = a.split(":").map(Number);
|
|
76
|
+
const [bh, bm] = b.split(":").map(Number);
|
|
77
|
+
return ah * 60 + am - (bh * 60 + bm);
|
|
78
|
+
});
|
|
79
|
+
departureRange = `Entre ${sorted[0]} y ${sorted[sorted.length - 1]}`;
|
|
80
|
+
}
|
|
71
81
|
const HOW_IT_WORKS_STEPS = [
|
|
72
82
|
{
|
|
73
83
|
icon: "flexible",
|
|
@@ -142,41 +152,13 @@ const FeatureServiceUiMobile = ({ serviceItem, showTopLabel, colors, isSoldOut,
|
|
|
142
152
|
React.createElement("div", { className: " text-[white]" },
|
|
143
153
|
React.createElement("div", { className: "flex flex-col gap-[10px] relative" },
|
|
144
154
|
React.createElement("div", { className: "flex items-center gap-[6px]" },
|
|
145
|
-
React.createElement("img", { src: (
|
|
155
|
+
React.createElement("img", { src: (_e = serviceItem.icons) === null || _e === void 0 ? void 0 : _e.whiteOrigin, alt: "origin", className: `w-[13px] h-[13px] shrink-0 ${isSoldOut ? "grayscale" : ""}` }),
|
|
146
156
|
React.createElement("span", { className: "text-[14px] bold-text" }, cityOrigin === null || cityOrigin === void 0 ? void 0 : cityOrigin.label.split(",")[0]),
|
|
147
157
|
React.createElement("span", { className: "mx-[6px] text-[14px] bold-text" }, "\u2192"),
|
|
148
|
-
React.createElement("img", { src: (
|
|
158
|
+
React.createElement("img", { src: (_f = serviceItem.icons) === null || _f === void 0 ? void 0 : _f.whiteDestination, alt: "destination", className: `w-[13px] h-[13px] shrink-0 ${isSoldOut ? "grayscale" : ""}`, style: { opacity: isSoldOut ? 0.5 : 1 } }),
|
|
149
159
|
React.createElement("span", { className: "text-[14px] bold-text" }, cityDestination === null || cityDestination === void 0 ? void 0 : cityDestination.label.split(",")[0])),
|
|
150
160
|
React.createElement("div", { className: "flex items-center gap-[6px]" },
|
|
151
|
-
React.createElement("div", { className: "
|
|
152
|
-
if (!e.currentTarget.contains(e.relatedTarget)) {
|
|
153
|
-
onTimeDropdownToggle === null || onTimeDropdownToggle === void 0 ? void 0 : onTimeDropdownToggle(null);
|
|
154
|
-
}
|
|
155
|
-
}, style: { outline: "none" } },
|
|
156
|
-
React.createElement("button", { type: "button", onClick: () => onTimeDropdownToggle === null || onTimeDropdownToggle === void 0 ? void 0 : onTimeDropdownToggle(isThisTimeDropdownOpen ? null : serviceItem.id), className: "flex cursor-pointer select-none items-center gap-[6px] border-none bg-transparent p-0 bold-text text-[13px] text-[white]" },
|
|
157
|
-
React.createElement("span", null, displayTimeSlot),
|
|
158
|
-
React.createElement("img", { src: (_e = serviceItem === null || serviceItem === void 0 ? void 0 : serviceItem.icons) === null || _e === void 0 ? void 0 : _e.downArrow, alt: "down arrow", className: `kupos-time-chevron transition-transform duration-200 ${isThisTimeDropdownOpen ? "rotate-180" : "rotate-0"}`, style: {
|
|
159
|
-
width: "12px",
|
|
160
|
-
height: "8px",
|
|
161
|
-
filter: "brightness(0) invert(1)",
|
|
162
|
-
} })),
|
|
163
|
-
isThisTimeDropdownOpen && (React.createElement(React.Fragment, null,
|
|
164
|
-
React.createElement("div", { className: "absolute left-0 top-[calc(100%+10px)]", style: {
|
|
165
|
-
zIndex: 20,
|
|
166
|
-
backgroundColor: "#fff",
|
|
167
|
-
borderRadius: "14px",
|
|
168
|
-
minWidth: "190px",
|
|
169
|
-
boxShadow: "0 8px 32px rgba(0,0,0,0.28)",
|
|
170
|
-
overflow: "hidden",
|
|
171
|
-
padding: "6px 0",
|
|
172
|
-
} }, TIME_SLOTS.map((slot) => {
|
|
173
|
-
const isActive = slot === selectedTimeSlot;
|
|
174
|
-
return (React.createElement("button", { key: slot, type: "button", onClick: () => {
|
|
175
|
-
onTimeSlotChange === null || onTimeSlotChange === void 0 ? void 0 : onTimeSlotChange(slot);
|
|
176
|
-
onTimeDropdownToggle === null || onTimeDropdownToggle === void 0 ? void 0 : onTimeDropdownToggle(null);
|
|
177
|
-
}, className: `flex w-full cursor-pointer items-center gap-[10px] border-none px-[12px] py-[9px] text-left text-[13px] ${isActive ? "bg-[#FF5C60] font-bold text-[white]" : "bg-transparent font-normal text-[#1a1a1a]"}` },
|
|
178
|
-
React.createElement("span", null, slot)));
|
|
179
|
-
})))))))),
|
|
161
|
+
React.createElement("div", { className: "bold-text text-[12px] text-white" }, departureRange)))),
|
|
180
162
|
React.createElement("div", { className: "border-t border-[#363c48] my-[8px]" }),
|
|
181
163
|
React.createElement("div", null,
|
|
182
164
|
React.createElement("span", { className: "block w-full text-[14px] bold-text text-[white] mb-[10px]", style: { textAlign: "center" } },
|
|
@@ -238,8 +220,7 @@ const FeatureServiceUiMobile = ({ serviceItem, showTopLabel, colors, isSoldOut,
|
|
|
238
220
|
} },
|
|
239
221
|
React.createElement("div", { className: "flex flex-col" },
|
|
240
222
|
React.createElement("span", { className: "text-[18px] font-normal leading-[20px] text-[#9f9f9f] relative", style: { position: "relative" } },
|
|
241
|
-
|
|
242
|
-
originalPrice.toLocaleString(),
|
|
223
|
+
`$${((originalPrice * ticketQuantity)).toLocaleString()}`,
|
|
243
224
|
React.createElement("span", { style: {
|
|
244
225
|
position: "absolute",
|
|
245
226
|
left: "-2px",
|
|
@@ -265,7 +246,7 @@ const FeatureServiceUiMobile = ({ serviceItem, showTopLabel, colors, isSoldOut,
|
|
|
265
246
|
React.createElement(LottiePlayer, { animationData: serviceItem.icons.thunderAnim, width: "16px", height: "16px" }),
|
|
266
247
|
React.createElement("span", { className: "whitespace-nowrap" }, "\u00A1Lo quiero!")),
|
|
267
248
|
React.createElement("div", { className: "flex justify-end mt-[10px]", onClick: onToggleExpand },
|
|
268
|
-
React.createElement("img", { src: (
|
|
249
|
+
React.createElement("img", { src: (_g = serviceItem === null || serviceItem === void 0 ? void 0 : serviceItem.icons) === null || _g === void 0 ? void 0 : _g.downArrow, alt: "down arrow", className: `transition-transform duration-300 ease-in-out ${isItemExpanded ? "rotate-180" : ""}`, style: {
|
|
269
250
|
width: "14px",
|
|
270
251
|
height: "8px",
|
|
271
252
|
filter: "brightness(0) invert(1)",
|