nvis-fe-cms-libs 1.1.28 → 1.1.30
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.
|
@@ -457,7 +457,7 @@ const CompanyValues = ({ companyData, t, isDarkMode }) => {
|
|
|
457
457
|
"div",
|
|
458
458
|
{
|
|
459
459
|
ref: (el) => refs.current[index2] = el,
|
|
460
|
-
className: `flex items-start space-x-4 rounded-
|
|
460
|
+
className: `flex items-start space-x-4 rounded-2xl p-6 transform transition-all duration-700 ease-out border backdrop-blur-sm ${isDarkMode ? "border-blue-800/40 bg-gradient-to-br from-blue-900/30 via-indigo-900/20 to-purple-900/30 hover:from-blue-800/40 hover:to-purple-800/40" : "border-gray-200 bg-transparent hover:border-gray-300"} ${visible[index2] ? "opacity-100 scale-100" : "opacity-0 scale-75"}`,
|
|
461
461
|
style: { transitionDelay: `${index2 * 200}ms` },
|
|
462
462
|
children: [
|
|
463
463
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
@@ -507,6 +507,76 @@ const CompanyValues = ({ companyData, t, isDarkMode }) => {
|
|
|
507
507
|
}
|
|
508
508
|
}) });
|
|
509
509
|
};
|
|
510
|
+
const SectionWrapper = ({
|
|
511
|
+
variant,
|
|
512
|
+
isDarkMode,
|
|
513
|
+
className = "",
|
|
514
|
+
children
|
|
515
|
+
}) => {
|
|
516
|
+
const defaultVariant = "neutral";
|
|
517
|
+
const currentVariant = variant || defaultVariant;
|
|
518
|
+
const variants = {
|
|
519
|
+
blue: {
|
|
520
|
+
light: "bg-gradient-to-b from-white via-blue-100 to-white",
|
|
521
|
+
dark: "bg-gradient-to-b from-gray-950 via-blue-900 to-gray-950",
|
|
522
|
+
lightDecor1: "bg-blue-200/30",
|
|
523
|
+
lightDecor2: "bg-blue-300/30",
|
|
524
|
+
darkDecor1: "bg-blue-500/10",
|
|
525
|
+
darkDecor2: "bg-blue-600/10"
|
|
526
|
+
},
|
|
527
|
+
purple: {
|
|
528
|
+
light: "bg-gradient-to-b from-white via-purple-100 to-white",
|
|
529
|
+
dark: "bg-gradient-to-b from-gray-950 via-purple-900 to-gray-950",
|
|
530
|
+
lightDecor1: "bg-purple-200/30",
|
|
531
|
+
lightDecor2: "bg-pink-200/30",
|
|
532
|
+
darkDecor1: "bg-purple-500/10",
|
|
533
|
+
darkDecor2: "bg-pink-500/10"
|
|
534
|
+
},
|
|
535
|
+
green: {
|
|
536
|
+
light: "bg-gradient-to-b from-white via-emerald-100 to-white",
|
|
537
|
+
dark: "bg-gradient-to-b from-gray-950 via-emerald-900 to-gray-950",
|
|
538
|
+
lightDecor1: "bg-emerald-200/30",
|
|
539
|
+
lightDecor2: "bg-teal-200/30",
|
|
540
|
+
darkDecor1: "bg-emerald-500/10",
|
|
541
|
+
darkDecor2: "bg-teal-500/10"
|
|
542
|
+
},
|
|
543
|
+
neutral: {
|
|
544
|
+
light: "bg-gradient-to-b from-white via-gray-100 to-white",
|
|
545
|
+
dark: "bg-gradient-to-b from-gray-950 via-gray-800 to-gray-950",
|
|
546
|
+
lightDecor1: "bg-gray-200/30",
|
|
547
|
+
lightDecor2: "bg-gray-300/30",
|
|
548
|
+
darkDecor1: "bg-gray-600/10",
|
|
549
|
+
darkDecor2: "bg-gray-700/10"
|
|
550
|
+
},
|
|
551
|
+
softLight: {
|
|
552
|
+
light: "bg-gradient-to-b from-white via-blue-50 to-white",
|
|
553
|
+
dark: "bg-gradient-to-b from-gray-950 via-blue-950 to-gray-950",
|
|
554
|
+
lightDecor1: "bg-blue-100/25",
|
|
555
|
+
lightDecor2: "bg-purple-100/25",
|
|
556
|
+
darkDecor1: "bg-blue-500/10",
|
|
557
|
+
darkDecor2: "bg-purple-500/10"
|
|
558
|
+
}
|
|
559
|
+
};
|
|
560
|
+
const current = variants[currentVariant] || variants[defaultVariant];
|
|
561
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("section", { className: `relative py-32 ${isDarkMode ? current.dark : current.light} ${className}`, children: [
|
|
562
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "absolute inset-0 overflow-hidden pointer-events-none", children: [
|
|
563
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
564
|
+
"div",
|
|
565
|
+
{
|
|
566
|
+
className: `absolute top-10 left-1/4 w-72 h-72 ${isDarkMode ? current.darkDecor1 : current.lightDecor1} rounded-full blur-3xl animate-pulse`
|
|
567
|
+
}
|
|
568
|
+
),
|
|
569
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
570
|
+
"div",
|
|
571
|
+
{
|
|
572
|
+
className: `absolute bottom-10 right-1/4 w-80 h-80 ${isDarkMode ? current.darkDecor2 : current.lightDecor2} rounded-full blur-3xl animate-pulse`,
|
|
573
|
+
style: { animationDelay: "2s" }
|
|
574
|
+
}
|
|
575
|
+
)
|
|
576
|
+
] }),
|
|
577
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "relative z-10", children })
|
|
578
|
+
] });
|
|
579
|
+
};
|
|
510
580
|
const AboutCompanySection = ({ data, t, isDarkMode }) => {
|
|
511
581
|
var _a, _b;
|
|
512
582
|
const safeT = typeof t === "function" ? t : (key, options) => {
|
|
@@ -573,7 +643,7 @@ const AboutCompanySection = ({ data, t, isDarkMode }) => {
|
|
|
573
643
|
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
574
644
|
"h1",
|
|
575
645
|
{
|
|
576
|
-
className: `text-
|
|
646
|
+
className: `text-5xl lg:text-6xl font-extrabold tracking-tight mb-4 ${isDarkMode ? "text-transparent bg-clip-text bg-gradient-to-r from-blue-400 via-indigo-300 to-purple-400 drop-shadow-[0_2px_8px_rgba(0,0,0,0.6)]" : "text-transparent bg-clip-text bg-gradient-to-r from-blue-100 via-indigo-50 to-purple-100 drop-shadow-[0_2px_6px_rgba(0,0,0,0.4)]"}`,
|
|
577
647
|
children: name
|
|
578
648
|
}
|
|
579
649
|
)
|
|
@@ -583,7 +653,7 @@ const AboutCompanySection = ({ data, t, isDarkMode }) => {
|
|
|
583
653
|
"div",
|
|
584
654
|
{
|
|
585
655
|
dangerouslySetInnerHTML: { __html: shortDescription },
|
|
586
|
-
className: `prose max-w-none transition-colors
|
|
656
|
+
className: `prose max-w-none mb-8 leading-relaxed transition-colors ${isDarkMode ? "prose-invert text-gray-200" : "text-gray-100"} text-lg sm:text-xl md:text-2xl font-light tracking-wide`
|
|
587
657
|
}
|
|
588
658
|
),
|
|
589
659
|
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
@@ -603,58 +673,52 @@ const AboutCompanySection = ({ data, t, isDarkMode }) => {
|
|
|
603
673
|
]
|
|
604
674
|
}
|
|
605
675
|
),
|
|
606
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
607
|
-
"
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
"
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
"
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
642
|
-
|
|
676
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "grid lg:grid-cols-2 gap-12 items-center", children: [
|
|
677
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { children: [
|
|
678
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
679
|
+
"div",
|
|
680
|
+
{
|
|
681
|
+
className: `inline-block px-4 py-2 rounded-full text-sm font-semibold mb-4 ${isDarkMode ? "bg-blue-900/40 text-blue-300 border border-blue-700" : "bg-blue-100 text-blue-800"}`,
|
|
682
|
+
children: [
|
|
683
|
+
"📖 ",
|
|
684
|
+
safeT("aboutCompany.story.badge")
|
|
685
|
+
]
|
|
686
|
+
}
|
|
687
|
+
),
|
|
688
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
689
|
+
"h2",
|
|
690
|
+
{
|
|
691
|
+
className: `text-3xl lg:text-4xl font-bold mb-6 ${isDarkMode ? "text-white" : "text-gray-800"}`,
|
|
692
|
+
children: [
|
|
693
|
+
safeT("aboutCompany.story.title"),
|
|
694
|
+
" ",
|
|
695
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "block bg-gradient-to-r from-blue-600 to-purple-600 bg-clip-text text-transparent", children: name })
|
|
696
|
+
]
|
|
697
|
+
}
|
|
698
|
+
),
|
|
699
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
700
|
+
"div",
|
|
701
|
+
{
|
|
702
|
+
dangerouslySetInnerHTML: { __html: description },
|
|
703
|
+
className: `prose max-w-none transition-colors ${isDarkMode ? "prose-invert text-gray-300" : "text-gray-600"}`
|
|
704
|
+
}
|
|
705
|
+
)
|
|
706
|
+
] }),
|
|
707
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
708
|
+
"div",
|
|
709
|
+
{
|
|
710
|
+
className: `transition-colors ${isDarkMode ? "text-gray-300" : "text-gray-700"}`,
|
|
711
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
712
|
+
CompanyValues,
|
|
643
713
|
{
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
{
|
|
648
|
-
companyData,
|
|
649
|
-
t: safeT,
|
|
650
|
-
isDarkMode
|
|
651
|
-
}
|
|
652
|
-
)
|
|
714
|
+
companyData,
|
|
715
|
+
t: safeT,
|
|
716
|
+
isDarkMode
|
|
653
717
|
}
|
|
654
718
|
)
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
)
|
|
719
|
+
}
|
|
720
|
+
)
|
|
721
|
+
] }) }) })
|
|
658
722
|
] });
|
|
659
723
|
};
|
|
660
724
|
const TimelineSection = ({ data, t, isDarkMode, section }) => {
|
|
@@ -696,7 +760,7 @@ const TimelineSection = ({ data, t, isDarkMode, section }) => {
|
|
|
696
760
|
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: `${isDarkMode ? "text-gray-300" : "text-gray-600"}`, children: t("timeline.noData.description") || "Hiện tại chưa có milestone nào được thiết lập." })
|
|
697
761
|
] }) });
|
|
698
762
|
}
|
|
699
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
763
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: [
|
|
700
764
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-center mb-12", children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
701
765
|
"div",
|
|
702
766
|
{
|
|
@@ -995,70 +1059,64 @@ const PartnersSection = ({ data, t, isDarkMode, imageBaseUrl = "" }) => {
|
|
|
995
1059
|
return () => partnersRef.current && observer.unobserve(partnersRef.current);
|
|
996
1060
|
}, []);
|
|
997
1061
|
if (!partnersData.length) return null;
|
|
998
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
999
|
-
"
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1062
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: [
|
|
1063
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "text-center mb-12", children: [
|
|
1064
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1065
|
+
"div",
|
|
1066
|
+
{
|
|
1067
|
+
className: `inline-block px-4 py-2 rounded-full text-sm font-semibold mb-4 border shadow-sm ${isDarkMode ? "bg-blue-900/30 text-blue-300 border-blue-800" : "bg-blue-100 text-blue-800 border-blue-200"}`,
|
|
1068
|
+
children: [
|
|
1069
|
+
"🤝 ",
|
|
1070
|
+
t("partners.header.badge")
|
|
1071
|
+
]
|
|
1072
|
+
}
|
|
1073
|
+
),
|
|
1074
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1075
|
+
"h2",
|
|
1076
|
+
{
|
|
1077
|
+
className: `text-3xl lg:text-5xl font-bold leading-tight ${isDarkMode ? "text-white" : "text-gray-800"}`,
|
|
1078
|
+
children: [
|
|
1079
|
+
t("partners.header.title"),
|
|
1080
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "block bg-gradient-to-r from-blue-500 to-purple-500 bg-clip-text text-transparent mt-2", children: t("partners.header.subtitle") })
|
|
1081
|
+
]
|
|
1082
|
+
}
|
|
1083
|
+
)
|
|
1084
|
+
] }),
|
|
1085
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { ref: partnersRef, className: "relative overflow-hidden", children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1086
|
+
"div",
|
|
1087
|
+
{
|
|
1088
|
+
className: `transition-all duration-1000 ease-out ${partnersVisible ? "opacity-100 scale-100" : "opacity-0 scale-95"}`,
|
|
1089
|
+
children: [
|
|
1090
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "relative h-56 md:h-64 lg:h-72 xl:h-80 mb-8", children: partners.map((group, slideIndex) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1005
1091
|
"div",
|
|
1006
1092
|
{
|
|
1007
|
-
className: `
|
|
1008
|
-
children:
|
|
1009
|
-
|
|
1010
|
-
t("partners.header.badge")
|
|
1011
|
-
]
|
|
1012
|
-
}
|
|
1013
|
-
),
|
|
1014
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1015
|
-
"h2",
|
|
1016
|
-
{
|
|
1017
|
-
className: `text-3xl lg:text-5xl font-bold leading-tight ${isDarkMode ? "text-white" : "text-gray-800"}`,
|
|
1018
|
-
children: [
|
|
1019
|
-
t("partners.header.title"),
|
|
1020
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "block bg-gradient-to-r from-blue-500 to-purple-500 bg-clip-text text-transparent mt-2", children: t("partners.header.subtitle") })
|
|
1021
|
-
]
|
|
1022
|
-
}
|
|
1023
|
-
)
|
|
1024
|
-
] }),
|
|
1025
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { ref: partnersRef, className: "relative overflow-hidden", children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1026
|
-
"div",
|
|
1027
|
-
{
|
|
1028
|
-
className: `transition-all duration-1000 ease-out ${partnersVisible ? "opacity-100 scale-100" : "opacity-0 scale-95"}`,
|
|
1029
|
-
children: [
|
|
1030
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "relative h-56 md:h-64 lg:h-72 xl:h-80 mb-8", children: partners.map((group, slideIndex) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1031
|
-
"div",
|
|
1093
|
+
className: `absolute inset-0 transition-all duration-1000 ease-in-out ${slideIndex === currentPartnerSlide ? "opacity-100 translate-x-0" : slideIndex < currentPartnerSlide ? "opacity-0 -translate-x-full" : "opacity-0 translate-x-full"}`,
|
|
1094
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-6 h-full px-2", children: group.map((partner, idx) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1095
|
+
PartnerCard,
|
|
1032
1096
|
{
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
idx,
|
|
1039
|
-
t,
|
|
1040
|
-
getLogoUrl,
|
|
1041
|
-
isDarkMode
|
|
1042
|
-
},
|
|
1043
|
-
partner.id || idx
|
|
1044
|
-
)) })
|
|
1045
|
-
},
|
|
1046
|
-
slideIndex
|
|
1047
|
-
)) }),
|
|
1048
|
-
partners.length > 1 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex justify-center space-x-2", children: partners.map((_, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1049
|
-
"button",
|
|
1050
|
-
{
|
|
1051
|
-
onClick: () => setCurrentPartnerSlide(index2),
|
|
1052
|
-
className: `w-3 h-3 rounded-full transition-all ${index2 === currentPartnerSlide ? "bg-blue-500 scale-125" : isDarkMode ? "bg-gray-600 hover:bg-blue-400" : "bg-gray-300 hover:bg-blue-500"}`
|
|
1097
|
+
partner,
|
|
1098
|
+
idx,
|
|
1099
|
+
t,
|
|
1100
|
+
getLogoUrl,
|
|
1101
|
+
isDarkMode
|
|
1053
1102
|
},
|
|
1054
|
-
|
|
1103
|
+
partner.id || idx
|
|
1055
1104
|
)) })
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1105
|
+
},
|
|
1106
|
+
slideIndex
|
|
1107
|
+
)) }),
|
|
1108
|
+
partners.length > 1 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex justify-center space-x-2", children: partners.map((_, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1109
|
+
"button",
|
|
1110
|
+
{
|
|
1111
|
+
onClick: () => setCurrentPartnerSlide(index2),
|
|
1112
|
+
className: `w-3 h-3 rounded-full transition-all ${index2 === currentPartnerSlide ? "bg-blue-500 scale-125" : isDarkMode ? "bg-gray-600 hover:bg-blue-400" : "bg-gray-300 hover:bg-blue-500"}`
|
|
1113
|
+
},
|
|
1114
|
+
index2
|
|
1115
|
+
)) })
|
|
1116
|
+
]
|
|
1117
|
+
}
|
|
1118
|
+
) })
|
|
1119
|
+
] }) });
|
|
1062
1120
|
};
|
|
1063
1121
|
const MilestoneSection = ({ data, t, isDarkMode, getMilestoneTimeline, section }) => {
|
|
1064
1122
|
const [milestones, setMilestones] = useState([]);
|
|
@@ -1147,68 +1205,62 @@ const MilestoneSection = ({ data, t, isDarkMode, getMilestoneTimeline, section }
|
|
|
1147
1205
|
}
|
|
1148
1206
|
);
|
|
1149
1207
|
}
|
|
1150
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1151
|
-
"
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
"
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
"div",
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
milestone.id
|
|
1207
|
-
)) })
|
|
1208
|
-
] })
|
|
1209
|
-
] })
|
|
1210
|
-
}
|
|
1211
|
-
);
|
|
1208
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: [
|
|
1209
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-center mb-12", children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1210
|
+
"div",
|
|
1211
|
+
{
|
|
1212
|
+
className: `relative inline-block px-4 py-2 rounded-full text-lg font-semibold mb-4 border transition-all duration-300 transform hover:scale-105 shadow-md hover:shadow-lg overflow-hidden ${isDarkMode ? "bg-gradient-to-br from-slate-900 via-blue-900 to-indigo-900 text-emerald-300 border-blue-800" : "bg-white text-emerald-800 border-gray-200"}`,
|
|
1213
|
+
children: [
|
|
1214
|
+
"📈 ",
|
|
1215
|
+
sectionTitle
|
|
1216
|
+
]
|
|
1217
|
+
}
|
|
1218
|
+
) }),
|
|
1219
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative", children: [
|
|
1220
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute left-1/2 transform -translate-x-1/2 w-1 h-full bg-gradient-to-b from-blue-500 to-purple-600 rounded-full" }),
|
|
1221
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "space-y-8", children: milestones.map((milestone, index2) => /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1222
|
+
"div",
|
|
1223
|
+
{
|
|
1224
|
+
ref: (el) => timelineRefs.current[index2] = el,
|
|
1225
|
+
className: `flex items-center transition-all duration-700 ease-out ${index2 % 2 === 0 ? "flex-row" : "flex-row-reverse"} ${timelineVisible[index2] ? "opacity-100 scale-100" : "opacity-0 scale-75"}`,
|
|
1226
|
+
style: { transitionDelay: `${index2 * 200}ms` },
|
|
1227
|
+
children: [
|
|
1228
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex-1 px-8", children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1229
|
+
"div",
|
|
1230
|
+
{
|
|
1231
|
+
className: `relative p-5 rounded-xl shadow-lg transition-all duration-300 hover:shadow-xl overflow-hidden ${isDarkMode ? "bg-gradient-to-br from-slate-900 via-blue-900 to-indigo-900 border border-blue-800 hover:border-blue-600" : "bg-gray-50 hover:shadow-2xl"}`,
|
|
1232
|
+
children: [
|
|
1233
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-blue-600 font-bold text-xl mb-2", children: milestone.time }),
|
|
1234
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1235
|
+
"h3",
|
|
1236
|
+
{
|
|
1237
|
+
className: `text-lg font-bold mb-2 ${isDarkMode ? "text-white" : "text-gray-900"}`,
|
|
1238
|
+
children: milestone.title
|
|
1239
|
+
}
|
|
1240
|
+
),
|
|
1241
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1242
|
+
"p",
|
|
1243
|
+
{
|
|
1244
|
+
className: `${isDarkMode ? "text-gray-300" : "text-gray-600"}`,
|
|
1245
|
+
children: milestone.description
|
|
1246
|
+
}
|
|
1247
|
+
)
|
|
1248
|
+
]
|
|
1249
|
+
}
|
|
1250
|
+
) }),
|
|
1251
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1252
|
+
"div",
|
|
1253
|
+
{
|
|
1254
|
+
className: `w-6 h-6 bg-gradient-to-r from-blue-500 to-purple-600 rounded-full border-4 ${isDarkMode ? "border-gray-800" : "border-white"} shadow-[0_0_10px_5px_rgba(59,130,246,0.5)] flex-shrink-0 z-10 animate-pulse`
|
|
1255
|
+
}
|
|
1256
|
+
),
|
|
1257
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex-1" })
|
|
1258
|
+
]
|
|
1259
|
+
},
|
|
1260
|
+
milestone.id
|
|
1261
|
+
)) })
|
|
1262
|
+
] })
|
|
1263
|
+
] }) });
|
|
1212
1264
|
};
|
|
1213
1265
|
const TestimonialsSection = ({ data, t, isDarkMode, section }) => {
|
|
1214
1266
|
var _a;
|
|
@@ -1252,74 +1304,68 @@ const TestimonialsSection = ({ data, t, isDarkMode, section }) => {
|
|
|
1252
1304
|
return () => clearInterval(interval);
|
|
1253
1305
|
}
|
|
1254
1306
|
}, [displayTestimonials.length]);
|
|
1255
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
"
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
|
|
1275
|
-
|
|
1276
|
-
|
|
1277
|
-
"
|
|
1307
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 text-center", children: [
|
|
1308
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1309
|
+
"div",
|
|
1310
|
+
{
|
|
1311
|
+
className: `inline-block px-4 py-2 rounded-full text-lg font-semibold mb-4 ${isDarkMode ? "bg-indigo-900/50 text-indigo-300 border border-indigo-800" : "bg-indigo-100 text-indigo-800"}`,
|
|
1312
|
+
children: [
|
|
1313
|
+
"💬 ",
|
|
1314
|
+
sectionTitle
|
|
1315
|
+
]
|
|
1316
|
+
}
|
|
1317
|
+
),
|
|
1318
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative", children: [
|
|
1319
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1320
|
+
"div",
|
|
1321
|
+
{
|
|
1322
|
+
className: `p-6 rounded-2xl transition-all duration-500 transform ${isDarkMode ? "bg-gray-800/80 backdrop-blur-sm border border-gray-700" : "bg-white"}`,
|
|
1323
|
+
children: [
|
|
1324
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1325
|
+
"blockquote",
|
|
1326
|
+
{
|
|
1327
|
+
className: `text-lg lg:text-xl italic mb-6 animate-fadeIn transition-colors duration-200 ${isDarkMode ? "text-gray-300" : "text-gray-700"}`,
|
|
1328
|
+
children: [
|
|
1329
|
+
'"',
|
|
1330
|
+
displayTestimonials[currentIndex].quote,
|
|
1331
|
+
'"'
|
|
1332
|
+
]
|
|
1333
|
+
}
|
|
1334
|
+
),
|
|
1335
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center justify-center space-x-4 animate-fadeIn", children: [
|
|
1336
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-3xl", children: "👤" }),
|
|
1337
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "text-left", children: [
|
|
1338
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1339
|
+
"div",
|
|
1278
1340
|
{
|
|
1279
|
-
className: `
|
|
1280
|
-
children: [
|
|
1281
|
-
'"',
|
|
1282
|
-
displayTestimonials[currentIndex].quote,
|
|
1283
|
-
'"'
|
|
1284
|
-
]
|
|
1341
|
+
className: `font-bold text-base transition-colors duration-200 ${isDarkMode ? "text-white" : "text-gray-900"}`,
|
|
1342
|
+
children: displayTestimonials[currentIndex].author
|
|
1285
1343
|
}
|
|
1286
1344
|
),
|
|
1287
|
-
/* @__PURE__ */ jsxRuntimeExports.
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
displayTestimonials.length > 1 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex justify-center space-x-2 mt-4", children: displayTestimonials.map((_, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1312
|
-
"button",
|
|
1313
|
-
{
|
|
1314
|
-
onClick: () => setCurrentIndex(index2),
|
|
1315
|
-
className: `w-2.5 h-2.5 rounded-full transition-all duration-300 ${index2 === currentIndex ? "bg-blue-600" : isDarkMode ? "bg-gray-600 hover:bg-gray-500" : "bg-gray-300 hover:bg-gray-400"}`
|
|
1316
|
-
},
|
|
1317
|
-
index2
|
|
1318
|
-
)) })
|
|
1319
|
-
] })
|
|
1320
|
-
] })
|
|
1321
|
-
}
|
|
1322
|
-
);
|
|
1345
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-blue-600 font-medium text-sm", children: displayTestimonials[currentIndex].position }),
|
|
1346
|
+
displayTestimonials[currentIndex].company && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1347
|
+
"div",
|
|
1348
|
+
{
|
|
1349
|
+
className: `text-xs transition-colors duration-200 ${isDarkMode ? "text-gray-400" : "text-gray-600"}`,
|
|
1350
|
+
children: displayTestimonials[currentIndex].company
|
|
1351
|
+
}
|
|
1352
|
+
)
|
|
1353
|
+
] })
|
|
1354
|
+
] })
|
|
1355
|
+
]
|
|
1356
|
+
},
|
|
1357
|
+
currentIndex
|
|
1358
|
+
),
|
|
1359
|
+
displayTestimonials.length > 1 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex justify-center space-x-2 mt-4", children: displayTestimonials.map((_, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1360
|
+
"button",
|
|
1361
|
+
{
|
|
1362
|
+
onClick: () => setCurrentIndex(index2),
|
|
1363
|
+
className: `w-2.5 h-2.5 rounded-full transition-all duration-300 ${index2 === currentIndex ? "bg-blue-600" : isDarkMode ? "bg-gray-600 hover:bg-gray-500" : "bg-gray-300 hover:bg-gray-400"}`
|
|
1364
|
+
},
|
|
1365
|
+
index2
|
|
1366
|
+
)) })
|
|
1367
|
+
] })
|
|
1368
|
+
] }) });
|
|
1323
1369
|
};
|
|
1324
1370
|
const PartnerListCard = ({ partner, idx = 0, t, isDarkMode, getLogoUrl }) => {
|
|
1325
1371
|
const itemRef = useRef(null);
|
|
@@ -1531,72 +1577,66 @@ const PartnerListSection = ({ t, isDarkMode, getPartnerList, imageBaseUrl = "" }
|
|
|
1531
1577
|
return /* @__PURE__ */ jsxRuntimeExports.jsx("section", { className: "py-20 text-center", children: /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-red-500", children: t("partners.error") || error }) });
|
|
1532
1578
|
}
|
|
1533
1579
|
if (!partnersData.length) return null;
|
|
1534
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1535
|
-
"
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
1539
|
-
|
|
1540
|
-
|
|
1580
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: [
|
|
1581
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "text-center mb-12", children: [
|
|
1582
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1583
|
+
"div",
|
|
1584
|
+
{
|
|
1585
|
+
className: `inline-block px-4 py-2 rounded-full text-sm font-semibold mb-4 border shadow-sm ${isDarkMode ? "bg-blue-900/30 text-blue-300 border-blue-800" : "bg-blue-100 text-blue-800 border-blue-200"}`,
|
|
1586
|
+
children: [
|
|
1587
|
+
"🤝 ",
|
|
1588
|
+
t("partners.badge") || "ĐỐI TÁC CHIẾN LƯỢC"
|
|
1589
|
+
]
|
|
1590
|
+
}
|
|
1591
|
+
),
|
|
1592
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1593
|
+
"h2",
|
|
1594
|
+
{
|
|
1595
|
+
className: `text-3xl lg:text-5xl font-bold leading-tight ${isDarkMode ? "text-white" : "text-gray-800"}`,
|
|
1596
|
+
children: [
|
|
1597
|
+
t("partners.title.part1") || "Đồng hành cùng",
|
|
1598
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "block bg-gradient-to-r from-blue-500 to-purple-500 bg-clip-text text-transparent mt-2", children: t("partners.title.part2") || "Những thương hiệu hàng đầu" })
|
|
1599
|
+
]
|
|
1600
|
+
}
|
|
1601
|
+
)
|
|
1602
|
+
] }),
|
|
1603
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { ref: partnersRef, className: "relative", children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1604
|
+
"div",
|
|
1605
|
+
{
|
|
1606
|
+
className: `transition-all duration-1000 ease-out ${partnersVisible ? "opacity-100 scale-100" : "opacity-0 scale-95"}`,
|
|
1607
|
+
children: [
|
|
1608
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "relative overflow-hidden mb-8", children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "min-h-[220px]", children: partners.map((group, slideIndex) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1541
1609
|
"div",
|
|
1542
1610
|
{
|
|
1543
|
-
className: `
|
|
1544
|
-
|
|
1545
|
-
|
|
1546
|
-
|
|
1547
|
-
]
|
|
1548
|
-
}
|
|
1549
|
-
),
|
|
1550
|
-
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1551
|
-
"h2",
|
|
1552
|
-
{
|
|
1553
|
-
className: `text-3xl lg:text-5xl font-bold leading-tight ${isDarkMode ? "text-white" : "text-gray-800"}`,
|
|
1554
|
-
children: [
|
|
1555
|
-
t("partners.title.part1") || "Đồng hành cùng",
|
|
1556
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "block bg-gradient-to-r from-blue-500 to-purple-500 bg-clip-text text-transparent mt-2", children: t("partners.title.part2") || "Những thương hiệu hàng đầu" })
|
|
1557
|
-
]
|
|
1558
|
-
}
|
|
1559
|
-
)
|
|
1560
|
-
] }),
|
|
1561
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { ref: partnersRef, className: "relative", children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1562
|
-
"div",
|
|
1563
|
-
{
|
|
1564
|
-
className: `transition-all duration-1000 ease-out ${partnersVisible ? "opacity-100 scale-100" : "opacity-0 scale-95"}`,
|
|
1565
|
-
children: [
|
|
1566
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "relative overflow-hidden mb-8", children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "min-h-[220px]", children: partners.map((group, slideIndex) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1567
|
-
"div",
|
|
1611
|
+
className: `absolute inset-0 w-full transition-all duration-1000 ease-in-out ${slideIndex === currentPartnerSlide ? "opacity-100 translate-x-0" : slideIndex < currentPartnerSlide ? "opacity-0 -translate-x-full" : "opacity-0 translate-x-full"}`,
|
|
1612
|
+
style: { zIndex: slideIndex === currentPartnerSlide ? 10 : 1 },
|
|
1613
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-6 px-2", children: group.map((partner, idx) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1614
|
+
PartnerListCard,
|
|
1568
1615
|
{
|
|
1569
|
-
|
|
1570
|
-
|
|
1571
|
-
|
|
1572
|
-
|
|
1573
|
-
|
|
1574
|
-
partner,
|
|
1575
|
-
idx,
|
|
1576
|
-
t,
|
|
1577
|
-
isDarkMode,
|
|
1578
|
-
getLogoUrl
|
|
1579
|
-
},
|
|
1580
|
-
partner.id || `${slideIndex}-${idx}`
|
|
1581
|
-
)) })
|
|
1616
|
+
partner,
|
|
1617
|
+
idx,
|
|
1618
|
+
t,
|
|
1619
|
+
isDarkMode,
|
|
1620
|
+
getLogoUrl
|
|
1582
1621
|
},
|
|
1583
|
-
slideIndex
|
|
1584
|
-
)) }) }),
|
|
1585
|
-
partners.length > 1 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex justify-center space-x-2", style: { zIndex: 50 }, children: partners.map((_, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1586
|
-
"button",
|
|
1587
|
-
{
|
|
1588
|
-
onClick: () => setCurrentPartnerSlide(index2),
|
|
1589
|
-
className: `w-3 h-3 rounded-full transition-all duration-300 ${index2 === currentPartnerSlide ? "bg-blue-500 scale-125 shadow-lg" : isDarkMode ? "bg-gray-600 hover:bg-blue-400" : "bg-gray-300 hover:bg-blue-500"}`,
|
|
1590
|
-
"aria-label": `Slide ${index2 + 1}`
|
|
1591
|
-
},
|
|
1592
|
-
index2
|
|
1622
|
+
partner.id || `${slideIndex}-${idx}`
|
|
1593
1623
|
)) })
|
|
1594
|
-
|
|
1595
|
-
|
|
1596
|
-
|
|
1597
|
-
|
|
1598
|
-
|
|
1599
|
-
|
|
1624
|
+
},
|
|
1625
|
+
slideIndex
|
|
1626
|
+
)) }) }),
|
|
1627
|
+
partners.length > 1 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex justify-center space-x-2", style: { zIndex: 50 }, children: partners.map((_, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1628
|
+
"button",
|
|
1629
|
+
{
|
|
1630
|
+
onClick: () => setCurrentPartnerSlide(index2),
|
|
1631
|
+
className: `w-3 h-3 rounded-full transition-all duration-300 ${index2 === currentPartnerSlide ? "bg-blue-500 scale-125 shadow-lg" : isDarkMode ? "bg-gray-600 hover:bg-blue-400" : "bg-gray-300 hover:bg-blue-500"}`,
|
|
1632
|
+
"aria-label": `Slide ${index2 + 1}`
|
|
1633
|
+
},
|
|
1634
|
+
index2
|
|
1635
|
+
)) })
|
|
1636
|
+
]
|
|
1637
|
+
}
|
|
1638
|
+
) })
|
|
1639
|
+
] }) });
|
|
1600
1640
|
};
|
|
1601
1641
|
/**
|
|
1602
1642
|
* @license lucide-react v0.536.0 - ISC
|
|
@@ -2379,7 +2419,7 @@ const ContactFormSection = ({ data, t, isDarkMode, consultationRequestService })
|
|
|
2379
2419
|
});
|
|
2380
2420
|
const inputBaseClasses = `w-full px-4 py-3 rounded-xl border transition-all duration-200 focus:ring-2 focus:ring-indigo-500/20 focus:outline-none ${isDarkMode ? "bg-gray-700 border-gray-600 text-white placeholder-gray-400 focus:border-indigo-500" : "bg-white border-slate-300 text-slate-900 placeholder-slate-500 focus:border-indigo-500"}`;
|
|
2381
2421
|
const labelClasses = `block text-sm font-semibold mb-2 ${isDarkMode ? "text-gray-300" : "text-slate-700"}`;
|
|
2382
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
2422
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "grid lg:grid-cols-3 gap-12", children: [
|
|
2383
2423
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "lg:col-span-2", children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: `rounded-2xl p-8 shadow-lg border transition-colors duration-200 ${isDarkMode ? "bg-gray-800 border-gray-700" : "bg-white border-slate-200"}`, children: [
|
|
2384
2424
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center mb-6", children: [
|
|
2385
2425
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-10 h-10 rounded-lg bg-gradient-to-r from-indigo-500 to-purple-600 flex items-center justify-center mr-4", children: /* @__PURE__ */ jsxRuntimeExports.jsx(Send, { size: 20, className: "text-white" }) }),
|
|
@@ -2695,7 +2735,7 @@ const ContactInfoSection = ({ data, t, isDarkMode, section }) => {
|
|
|
2695
2735
|
const contactData = ((_b = (_a = data == null ? void 0 : data.sectionDataBindingItems) == null ? void 0 : _a.filter((item) => item == null ? void 0 : item.data)) == null ? void 0 : _b.map((item) => item.data)) || [];
|
|
2696
2736
|
const sectionTitle = (section == null ? void 0 : section.title) || "...";
|
|
2697
2737
|
if (!contactData.length) return null;
|
|
2698
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
2738
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "max-w-7xl mx-auto px-4 sm:px-6 lg:px-8", children: [
|
|
2699
2739
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-center mb-12", children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: `inline-flex items-center px-4 py-2 rounded-full text-lg font-semibold mb-4 ${isDarkMode ? "bg-indigo-900/50 text-indigo-300" : "bg-indigo-50 text-indigo-700"}`, children: [
|
|
2700
2740
|
/* @__PURE__ */ jsxRuntimeExports.jsx(User, { size: 22, className: "mr-2" }),
|
|
2701
2741
|
sectionTitle
|
|
@@ -2803,7 +2843,7 @@ const ContactListAutoSection = ({ data, t, isDarkMode, getContactList, section }
|
|
|
2803
2843
|
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: `${isDarkMode ? "text-gray-500" : "text-gray-500"}`, children: t("contactList.status.noData.description") || "Danh sách liên hệ sẽ hiển thị tại đây" })
|
|
2804
2844
|
] });
|
|
2805
2845
|
}
|
|
2806
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
2846
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "max-w-6xl mx-auto px-5", children: [
|
|
2807
2847
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-center mb-16", children: /* @__PURE__ */ jsxRuntimeExports.jsx("h2", { className: `text-4xl font-bold ${isDarkMode ? "text-white" : "text-gray-900"} mb-4`, children: sectionTitle }) }),
|
|
2808
2848
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8 mt-10", children: contacts.map((contact, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx(ContactCard, { contact, t, isDarkMode }, contact.id || index2)) })
|
|
2809
2849
|
] }) });
|
|
@@ -2943,75 +2983,71 @@ const CustomerFeedbackAutoSection = ({ data, t, isDarkMode, loadCustomerFeedback
|
|
|
2943
2983
|
);
|
|
2944
2984
|
}
|
|
2945
2985
|
const currentFeedback = feedbacks[currentIndex];
|
|
2946
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
2947
|
-
"
|
|
2948
|
-
|
|
2949
|
-
|
|
2950
|
-
|
|
2951
|
-
|
|
2952
|
-
|
|
2953
|
-
"
|
|
2954
|
-
|
|
2955
|
-
|
|
2956
|
-
|
|
2957
|
-
|
|
2958
|
-
|
|
2959
|
-
|
|
2960
|
-
|
|
2961
|
-
|
|
2962
|
-
|
|
2963
|
-
|
|
2964
|
-
|
|
2965
|
-
|
|
2966
|
-
|
|
2967
|
-
|
|
2968
|
-
|
|
2969
|
-
"
|
|
2986
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(SectionWrapper, { isDarkMode, children: [
|
|
2987
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 text-center", children: [
|
|
2988
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
2989
|
+
"div",
|
|
2990
|
+
{
|
|
2991
|
+
className: `inline-block px-4 py-2 rounded-full text-lg font-semibold mb-4 ${isDarkMode ? "bg-indigo-900/50 text-indigo-300 border border-indigo-800" : "bg-indigo-100 text-indigo-800"}`,
|
|
2992
|
+
children: [
|
|
2993
|
+
"💬 ",
|
|
2994
|
+
sectionTitle
|
|
2995
|
+
]
|
|
2996
|
+
}
|
|
2997
|
+
),
|
|
2998
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative", children: [
|
|
2999
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
3000
|
+
"div",
|
|
3001
|
+
{
|
|
3002
|
+
className: `p-6 rounded-2xl transition-all duration-500 transform ${isDarkMode ? "bg-gray-800/80 backdrop-blur-sm border border-gray-700" : "bg-white shadow-lg"}`,
|
|
3003
|
+
children: [
|
|
3004
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
3005
|
+
"blockquote",
|
|
3006
|
+
{
|
|
3007
|
+
className: `text-lg lg:text-xl italic mb-6 animate-fadeIn transition-colors duration-200 leading-relaxed ${isDarkMode ? "text-gray-300" : "text-gray-700"}`,
|
|
3008
|
+
children: [
|
|
3009
|
+
'"',
|
|
3010
|
+
currentFeedback.content,
|
|
3011
|
+
'"'
|
|
3012
|
+
]
|
|
3013
|
+
}
|
|
3014
|
+
),
|
|
3015
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center justify-center space-x-4 animate-fadeIn", children: [
|
|
3016
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-3xl", children: "👤" }),
|
|
3017
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "text-left", children: [
|
|
3018
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
3019
|
+
"div",
|
|
2970
3020
|
{
|
|
2971
|
-
className: `
|
|
2972
|
-
children:
|
|
2973
|
-
'"',
|
|
2974
|
-
currentFeedback.content,
|
|
2975
|
-
'"'
|
|
2976
|
-
]
|
|
3021
|
+
className: `font-bold text-base transition-colors duration-200 ${isDarkMode ? "text-white" : "text-gray-900"}`,
|
|
3022
|
+
children: currentFeedback.customerName
|
|
2977
3023
|
}
|
|
2978
3024
|
),
|
|
2979
|
-
/* @__PURE__ */ jsxRuntimeExports.
|
|
2980
|
-
|
|
2981
|
-
|
|
2982
|
-
|
|
2983
|
-
|
|
2984
|
-
|
|
2985
|
-
|
|
2986
|
-
|
|
2987
|
-
|
|
2988
|
-
|
|
2989
|
-
|
|
2990
|
-
|
|
2991
|
-
|
|
2992
|
-
|
|
2993
|
-
|
|
2994
|
-
|
|
2995
|
-
|
|
2996
|
-
|
|
2997
|
-
|
|
2998
|
-
|
|
2999
|
-
|
|
3000
|
-
|
|
3001
|
-
|
|
3002
|
-
|
|
3003
|
-
|
|
3004
|
-
|
|
3005
|
-
{
|
|
3006
|
-
onClick: () => setCurrentIndex(index2),
|
|
3007
|
-
className: `w-2.5 h-2.5 rounded-full transition-all duration-300 ${index2 === currentIndex ? "bg-blue-600" : isDarkMode ? "bg-gray-600 hover:bg-gray-500" : "bg-gray-300 hover:bg-gray-400"}`,
|
|
3008
|
-
"aria-label": t("customerFeedback.switchToFeedback", { number: index2 + 1 }) || `Chuyển đến phản hồi ${index2 + 1}`
|
|
3009
|
-
},
|
|
3010
|
-
index2
|
|
3011
|
-
)) })
|
|
3012
|
-
] })
|
|
3013
|
-
] }),
|
|
3014
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("style", { jsx: true, children: `
|
|
3025
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-blue-600 font-medium text-sm", children: currentFeedback.customerTitle }),
|
|
3026
|
+
currentFeedback.customerCompany && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
3027
|
+
"div",
|
|
3028
|
+
{
|
|
3029
|
+
className: `text-xs transition-colors duration-200 ${isDarkMode ? "text-gray-400" : "text-gray-600"}`,
|
|
3030
|
+
children: currentFeedback.customerCompany
|
|
3031
|
+
}
|
|
3032
|
+
)
|
|
3033
|
+
] })
|
|
3034
|
+
] })
|
|
3035
|
+
]
|
|
3036
|
+
},
|
|
3037
|
+
currentIndex
|
|
3038
|
+
),
|
|
3039
|
+
feedbacks.length > 1 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex justify-center space-x-2 mt-4", children: feedbacks.map((_, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
3040
|
+
"button",
|
|
3041
|
+
{
|
|
3042
|
+
onClick: () => setCurrentIndex(index2),
|
|
3043
|
+
className: `w-2.5 h-2.5 rounded-full transition-all duration-300 ${index2 === currentIndex ? "bg-blue-600" : isDarkMode ? "bg-gray-600 hover:bg-gray-500" : "bg-gray-300 hover:bg-gray-400"}`,
|
|
3044
|
+
"aria-label": t("customerFeedback.switchToFeedback", { number: index2 + 1 }) || `Chuyển đến phản hồi ${index2 + 1}`
|
|
3045
|
+
},
|
|
3046
|
+
index2
|
|
3047
|
+
)) })
|
|
3048
|
+
] })
|
|
3049
|
+
] }),
|
|
3050
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("style", { jsx: true, children: `
|
|
3015
3051
|
.animate-fadeIn {
|
|
3016
3052
|
animation: fadeIn 0.5s ease-in-out;
|
|
3017
3053
|
}
|
|
@@ -3026,9 +3062,7 @@ const CustomerFeedbackAutoSection = ({ data, t, isDarkMode, loadCustomerFeedback
|
|
|
3026
3062
|
}
|
|
3027
3063
|
}
|
|
3028
3064
|
` })
|
|
3029
|
-
|
|
3030
|
-
}
|
|
3031
|
-
);
|
|
3065
|
+
] });
|
|
3032
3066
|
};
|
|
3033
3067
|
const ProductListSection = ({ data, t, isDarkMode, getProductList }) => {
|
|
3034
3068
|
const [products, setProducts] = useState([]);
|
|
@@ -3256,164 +3290,12 @@ const ProductCard = ({ product, t, isDarkMode }) => {
|
|
|
3256
3290
|
}
|
|
3257
3291
|
);
|
|
3258
3292
|
};
|
|
3259
|
-
const ImageItem = ({ item, index: index2, isDarkMode, t, getObjectUrl: getObjectUrl2 }) => {
|
|
3260
|
-
var _a;
|
|
3261
|
-
const media = (_a = item.medias) == null ? void 0 : _a[0];
|
|
3262
|
-
const getImageUrl = () => {
|
|
3263
|
-
if (!(media == null ? void 0 : media.url)) return null;
|
|
3264
|
-
if (media.url instanceof File) {
|
|
3265
|
-
return URL.createObjectURL(media.url);
|
|
3266
|
-
}
|
|
3267
|
-
if (typeof media.url === "string" && getObjectUrl2) {
|
|
3268
|
-
return getObjectUrl2(media.url);
|
|
3269
|
-
}
|
|
3270
|
-
return media.url;
|
|
3271
|
-
};
|
|
3272
|
-
const imageUrl = getImageUrl();
|
|
3273
|
-
require$$0.useEffect(() => {
|
|
3274
|
-
return () => {
|
|
3275
|
-
if (imageUrl && imageUrl.startsWith("blob:")) {
|
|
3276
|
-
URL.revokeObjectURL(imageUrl);
|
|
3277
|
-
}
|
|
3278
|
-
};
|
|
3279
|
-
}, [imageUrl]);
|
|
3280
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
3281
|
-
"div",
|
|
3282
|
-
{
|
|
3283
|
-
style: {
|
|
3284
|
-
borderRadius: "8px",
|
|
3285
|
-
overflow: "hidden",
|
|
3286
|
-
boxShadow: isDarkMode ? "0 4px 8px rgba(0,0,0,0.3)" : "0 4px 8px rgba(0,0,0,0.1)"
|
|
3287
|
-
},
|
|
3288
|
-
children: imageUrl ? /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
3289
|
-
"img",
|
|
3290
|
-
{
|
|
3291
|
-
src: imageUrl,
|
|
3292
|
-
alt: `Image ${index2 + 1}`,
|
|
3293
|
-
style: {
|
|
3294
|
-
width: "100%",
|
|
3295
|
-
height: "250px",
|
|
3296
|
-
objectFit: "cover"
|
|
3297
|
-
},
|
|
3298
|
-
onError: (e) => {
|
|
3299
|
-
e.currentTarget.parentElement.style.display = "none";
|
|
3300
|
-
}
|
|
3301
|
-
}
|
|
3302
|
-
) : /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
3303
|
-
"div",
|
|
3304
|
-
{
|
|
3305
|
-
style: {
|
|
3306
|
-
width: "100%",
|
|
3307
|
-
height: "250px",
|
|
3308
|
-
backgroundColor: isDarkMode ? "#374151" : "#f3f4f6",
|
|
3309
|
-
display: "flex",
|
|
3310
|
-
alignItems: "center",
|
|
3311
|
-
justifyContent: "center",
|
|
3312
|
-
color: isDarkMode ? "#9ca3af" : "#6b7280",
|
|
3313
|
-
fontSize: "14px"
|
|
3314
|
-
},
|
|
3315
|
-
children: t("imageSection.noImage") || "No image available"
|
|
3316
|
-
}
|
|
3317
|
-
)
|
|
3318
|
-
},
|
|
3319
|
-
item.id || index2
|
|
3320
|
-
);
|
|
3321
|
-
};
|
|
3322
|
-
const ImageSection = ({ data, t, isDarkMode, getObjectUrl: getObjectUrl2 }) => {
|
|
3323
|
-
const imageItems = useMemo(() => (data == null ? void 0 : data.sectionDataBindingItems) || [], [data]);
|
|
3324
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: {
|
|
3325
|
-
padding: "40px 20px",
|
|
3326
|
-
backgroundColor: isDarkMode ? "#111827" : "white"
|
|
3327
|
-
}, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { maxWidth: "1200px", margin: "0 auto" }, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
3328
|
-
"div",
|
|
3329
|
-
{
|
|
3330
|
-
style: {
|
|
3331
|
-
display: "grid",
|
|
3332
|
-
gridTemplateColumns: "repeat(auto-fit, minmax(300px, 1fr))",
|
|
3333
|
-
gap: "20px"
|
|
3334
|
-
},
|
|
3335
|
-
children: imageItems.map((item, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
3336
|
-
ImageItem,
|
|
3337
|
-
{
|
|
3338
|
-
item,
|
|
3339
|
-
index: index2,
|
|
3340
|
-
isDarkMode,
|
|
3341
|
-
t,
|
|
3342
|
-
getObjectUrl: getObjectUrl2
|
|
3343
|
-
},
|
|
3344
|
-
item.id || index2
|
|
3345
|
-
))
|
|
3346
|
-
}
|
|
3347
|
-
) }) });
|
|
3348
|
-
};
|
|
3349
|
-
const SingleImageItem = ({ item, index: index2, isDarkMode }) => {
|
|
3350
|
-
var _a;
|
|
3351
|
-
const media = (_a = item.medias) == null ? void 0 : _a[0];
|
|
3352
|
-
const getImageUrl = () => {
|
|
3353
|
-
if (!(media == null ? void 0 : media.url)) return null;
|
|
3354
|
-
if (media.url instanceof File) {
|
|
3355
|
-
return URL.createObjectURL(media.url);
|
|
3356
|
-
}
|
|
3357
|
-
if (getObjectUrl && typeof media.url === "string") {
|
|
3358
|
-
return getObjectUrl(media.url);
|
|
3359
|
-
}
|
|
3360
|
-
return media.url;
|
|
3361
|
-
};
|
|
3362
|
-
const imageUrl = getImageUrl();
|
|
3363
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
3364
|
-
"div",
|
|
3365
|
-
{
|
|
3366
|
-
style: {
|
|
3367
|
-
borderRadius: "12px",
|
|
3368
|
-
overflow: "hidden",
|
|
3369
|
-
boxShadow: isDarkMode ? "0 8px 24px rgba(0,0,0,0.4)" : "0 8px 24px rgba(0,0,0,0.15)",
|
|
3370
|
-
marginBottom: "30px"
|
|
3371
|
-
},
|
|
3372
|
-
children: imageUrl && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
3373
|
-
"img",
|
|
3374
|
-
{
|
|
3375
|
-
src: imageUrl,
|
|
3376
|
-
alt: `Single Image ${index2 + 1}`,
|
|
3377
|
-
style: {
|
|
3378
|
-
width: "100%",
|
|
3379
|
-
height: "400px",
|
|
3380
|
-
objectFit: "cover",
|
|
3381
|
-
display: "block"
|
|
3382
|
-
},
|
|
3383
|
-
onError: (e) => {
|
|
3384
|
-
e.currentTarget.style.display = "none";
|
|
3385
|
-
}
|
|
3386
|
-
}
|
|
3387
|
-
)
|
|
3388
|
-
},
|
|
3389
|
-
item.id || index2
|
|
3390
|
-
);
|
|
3391
|
-
};
|
|
3392
|
-
const ImageSingleSection = ({ data, t, isDarkMode, getObjectUrl: getObjectUrl2 }) => {
|
|
3393
|
-
const imageItems = useMemo(() => (data == null ? void 0 : data.sectionDataBindingItems) || [], [data]);
|
|
3394
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: {
|
|
3395
|
-
padding: "40px 20px",
|
|
3396
|
-
backgroundColor: isDarkMode ? "#111827" : "white"
|
|
3397
|
-
}, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { maxWidth: "800px", margin: "0 auto" }, children: imageItems.map((item, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
3398
|
-
SingleImageItem,
|
|
3399
|
-
{
|
|
3400
|
-
item,
|
|
3401
|
-
index: index2,
|
|
3402
|
-
isDarkMode,
|
|
3403
|
-
getObjectUrl: getObjectUrl2
|
|
3404
|
-
},
|
|
3405
|
-
item.id || index2
|
|
3406
|
-
)) }) });
|
|
3407
|
-
};
|
|
3408
3293
|
const TextWithTitleSection = ({ section, data, isDarkMode }) => {
|
|
3409
3294
|
var _a;
|
|
3410
3295
|
const textItems = (data == null ? void 0 : data.sectionDataBindingItems) || [];
|
|
3411
3296
|
const title = ((_a = textItems[0]) == null ? void 0 : _a.value) || "";
|
|
3412
3297
|
const descriptions = textItems.slice(1);
|
|
3413
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: {
|
|
3414
|
-
padding: "40px 20px",
|
|
3415
|
-
backgroundColor: isDarkMode ? "#111827" : "#ffffff"
|
|
3416
|
-
}, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: { maxWidth: "1200px", margin: "0 auto" }, children: [
|
|
3298
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: { maxWidth: "1200px", margin: "0 auto" }, children: [
|
|
3417
3299
|
title && /* @__PURE__ */ jsxRuntimeExports.jsx("h2", { style: {
|
|
3418
3300
|
fontSize: "36px",
|
|
3419
3301
|
fontWeight: "700",
|
|
@@ -3443,32 +3325,23 @@ const TextWithTitleSection = ({ section, data, isDarkMode }) => {
|
|
|
3443
3325
|
};
|
|
3444
3326
|
const TextSection = ({ data, isDarkMode }) => {
|
|
3445
3327
|
const textItems = (data == null ? void 0 : data.sectionDataBindingItems) || [];
|
|
3446
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
3328
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: { maxWidth: "800px", margin: "0 auto" }, children: textItems.map((item, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
3447
3329
|
"div",
|
|
3448
3330
|
{
|
|
3449
3331
|
style: {
|
|
3450
|
-
padding: "
|
|
3451
|
-
|
|
3332
|
+
padding: "0",
|
|
3333
|
+
marginBottom: "20px",
|
|
3334
|
+
fontSize: "28px",
|
|
3335
|
+
fontWeight: "700",
|
|
3336
|
+
lineHeight: "1.3",
|
|
3337
|
+
color: isDarkMode ? "#f9fafb" : "#111827",
|
|
3338
|
+
textAlign: "left",
|
|
3339
|
+
fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif'
|
|
3452
3340
|
},
|
|
3453
|
-
children:
|
|
3454
|
-
|
|
3455
|
-
|
|
3456
|
-
|
|
3457
|
-
padding: "0",
|
|
3458
|
-
marginBottom: "20px",
|
|
3459
|
-
fontSize: "28px",
|
|
3460
|
-
fontWeight: "700",
|
|
3461
|
-
lineHeight: "1.3",
|
|
3462
|
-
color: isDarkMode ? "#f9fafb" : "#111827",
|
|
3463
|
-
textAlign: "left",
|
|
3464
|
-
fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif'
|
|
3465
|
-
},
|
|
3466
|
-
children: item.value
|
|
3467
|
-
},
|
|
3468
|
-
item.id || index2
|
|
3469
|
-
)) })
|
|
3470
|
-
}
|
|
3471
|
-
);
|
|
3341
|
+
children: item.value
|
|
3342
|
+
},
|
|
3343
|
+
item.id || index2
|
|
3344
|
+
)) }) });
|
|
3472
3345
|
};
|
|
3473
3346
|
const DiagramSection = ({ data, t, isDarkMode }) => {
|
|
3474
3347
|
var _a, _b;
|
|
@@ -4424,7 +4297,7 @@ const FaqSection = ({ data, t, isDarkMode }) => {
|
|
|
4424
4297
|
const toggleFaq = (index2) => {
|
|
4425
4298
|
setActiveIndex(activeIndex === index2 ? -1 : index2);
|
|
4426
4299
|
};
|
|
4427
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
4300
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(SectionWrapper, { isDarkMode, children: [
|
|
4428
4301
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "max-w-4xl mx-auto", children: [
|
|
4429
4302
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex justify-center mb-6 animate-fade-in", children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: `
|
|
4430
4303
|
w-10 h-10 rounded-lg flex items-center justify-center
|
|
@@ -4620,15 +4493,7 @@ const PageHighlightSection = ({ data, t, isDarkMode, imageBaseUrl = "" }) => {
|
|
|
4620
4493
|
},
|
|
4621
4494
|
index2
|
|
4622
4495
|
);
|
|
4623
|
-
}) })
|
|
4624
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex justify-center gap-3 mt-8", children: highlightData.map((_, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
4625
|
-
"button",
|
|
4626
|
-
{
|
|
4627
|
-
onClick: () => setActiveTab(index2),
|
|
4628
|
-
className: `transition-all duration-300 rounded-full ${activeTab === index2 ? "w-12 h-3 bg-gradient-to-r from-blue-600 to-purple-600" : isDarkMode ? "w-3 h-3 bg-gray-600 hover:bg-gray-500" : "w-3 h-3 bg-gray-300 hover:bg-gray-400"}`
|
|
4629
|
-
},
|
|
4630
|
-
index2
|
|
4631
|
-
)) })
|
|
4496
|
+
}) })
|
|
4632
4497
|
] })
|
|
4633
4498
|
] });
|
|
4634
4499
|
};
|
|
@@ -4654,11 +4519,7 @@ const PageChildrenSelectSection = ({ data, isDarkMode, t, section, imageBaseUrl
|
|
|
4654
4519
|
if (url.startsWith("http://") || url.startsWith("https://")) return url;
|
|
4655
4520
|
return `${imageBaseUrl}${url}`;
|
|
4656
4521
|
};
|
|
4657
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx("
|
|
4658
|
-
padding: "80px 16px",
|
|
4659
|
-
backgroundColor: isDarkMode ? "#111827" : "#f5f5f5",
|
|
4660
|
-
transition: "background-color 0.3s"
|
|
4661
|
-
}, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: {
|
|
4522
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: {
|
|
4662
4523
|
maxWidth: "1400px",
|
|
4663
4524
|
margin: "0 auto"
|
|
4664
4525
|
}, children: [
|
|
@@ -4803,11 +4664,7 @@ const PageChildrenSelectSection1 = ({ data, isDarkMode, t, section, imageBaseUrl
|
|
|
4803
4664
|
if (url.startsWith("http://") || url.startsWith("https://")) return url;
|
|
4804
4665
|
return `${imageBaseUrl}${url}`;
|
|
4805
4666
|
};
|
|
4806
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx("
|
|
4807
|
-
padding: "60px 16px",
|
|
4808
|
-
backgroundColor: isDarkMode ? "#111827" : "#ffffff",
|
|
4809
|
-
transition: "background-color 0.3s"
|
|
4810
|
-
}, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: {
|
|
4667
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: {
|
|
4811
4668
|
maxWidth: "1280px",
|
|
4812
4669
|
margin: "0 auto"
|
|
4813
4670
|
}, children: [
|
|
@@ -4970,11 +4827,7 @@ const PageChildrenSelectSection2 = ({ data, isDarkMode, t, section, imageBaseUrl
|
|
|
4970
4827
|
};
|
|
4971
4828
|
const visiblePages = pages.slice(0, visibleCount);
|
|
4972
4829
|
const hasMore = visibleCount < pages.length;
|
|
4973
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx("
|
|
4974
|
-
padding: "80px 16px",
|
|
4975
|
-
backgroundColor: isDarkMode ? "#0f172a" : "#f8fafc",
|
|
4976
|
-
transition: "background-color 0.3s"
|
|
4977
|
-
}, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: {
|
|
4830
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: {
|
|
4978
4831
|
maxWidth: "1400px",
|
|
4979
4832
|
margin: "0 auto"
|
|
4980
4833
|
}, children: [
|
|
@@ -5121,8 +4974,6 @@ const index = {
|
|
|
5121
4974
|
ContactListAutoSection,
|
|
5122
4975
|
CustomerFeedbackAutoSection,
|
|
5123
4976
|
ProductListSection,
|
|
5124
|
-
ImageSection,
|
|
5125
|
-
ImageSingleSection,
|
|
5126
4977
|
TextWithTitleSection,
|
|
5127
4978
|
TextSection,
|
|
5128
4979
|
DiagramSection,
|
|
@@ -5143,8 +4994,6 @@ export {
|
|
|
5143
4994
|
DiagramSection,
|
|
5144
4995
|
DiagramSection2,
|
|
5145
4996
|
FaqSection,
|
|
5146
|
-
ImageSection,
|
|
5147
|
-
ImageSingleSection,
|
|
5148
4997
|
MilestoneSection,
|
|
5149
4998
|
PageChildrenSelectSection,
|
|
5150
4999
|
PageChildrenSelectSection1,
|