nvis-fe-cms-libs 1.1.28 → 1.1.29
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,10 @@ 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 drop-shadow-[0_1px_3px_rgba(0,0,0,0.6)]" : "text-gray-100 drop-shadow-[0_1px_2px_rgba(0,0,0,0.3)]"} text-lg sm:text-xl md:text-2xl font-light tracking-wide`,
|
|
657
|
+
style: {
|
|
658
|
+
textShadow: isDarkMode ? "0 1px 3px rgba(0,0,0,0.8)" : "0 1px 3px rgba(0,0,0,0.5)"
|
|
659
|
+
}
|
|
587
660
|
}
|
|
588
661
|
),
|
|
589
662
|
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
@@ -603,58 +676,52 @@ const AboutCompanySection = ({ data, t, isDarkMode }) => {
|
|
|
603
676
|
]
|
|
604
677
|
}
|
|
605
678
|
),
|
|
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
|
-
|
|
679
|
+
/* @__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: [
|
|
680
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { children: [
|
|
681
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
682
|
+
"div",
|
|
683
|
+
{
|
|
684
|
+
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"}`,
|
|
685
|
+
children: [
|
|
686
|
+
"📖 ",
|
|
687
|
+
safeT("aboutCompany.story.badge")
|
|
688
|
+
]
|
|
689
|
+
}
|
|
690
|
+
),
|
|
691
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
692
|
+
"h2",
|
|
693
|
+
{
|
|
694
|
+
className: `text-3xl lg:text-4xl font-bold mb-6 ${isDarkMode ? "text-white" : "text-gray-800"}`,
|
|
695
|
+
children: [
|
|
696
|
+
safeT("aboutCompany.story.title"),
|
|
697
|
+
" ",
|
|
698
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "block bg-gradient-to-r from-blue-600 to-purple-600 bg-clip-text text-transparent", children: name })
|
|
699
|
+
]
|
|
700
|
+
}
|
|
701
|
+
),
|
|
702
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
703
|
+
"div",
|
|
704
|
+
{
|
|
705
|
+
dangerouslySetInnerHTML: { __html: description },
|
|
706
|
+
className: `prose max-w-none transition-colors ${isDarkMode ? "prose-invert text-gray-300" : "text-gray-600"}`
|
|
707
|
+
}
|
|
708
|
+
)
|
|
709
|
+
] }),
|
|
710
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
711
|
+
"div",
|
|
712
|
+
{
|
|
713
|
+
className: `transition-colors ${isDarkMode ? "text-gray-300" : "text-gray-700"}`,
|
|
714
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
715
|
+
CompanyValues,
|
|
643
716
|
{
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
{
|
|
648
|
-
companyData,
|
|
649
|
-
t: safeT,
|
|
650
|
-
isDarkMode
|
|
651
|
-
}
|
|
652
|
-
)
|
|
717
|
+
companyData,
|
|
718
|
+
t: safeT,
|
|
719
|
+
isDarkMode
|
|
653
720
|
}
|
|
654
721
|
)
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
)
|
|
722
|
+
}
|
|
723
|
+
)
|
|
724
|
+
] }) }) })
|
|
658
725
|
] });
|
|
659
726
|
};
|
|
660
727
|
const TimelineSection = ({ data, t, isDarkMode, section }) => {
|
|
@@ -696,7 +763,7 @@ const TimelineSection = ({ data, t, isDarkMode, section }) => {
|
|
|
696
763
|
/* @__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
764
|
] }) });
|
|
698
765
|
}
|
|
699
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
766
|
+
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
767
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-center mb-12", children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
701
768
|
"div",
|
|
702
769
|
{
|
|
@@ -995,70 +1062,64 @@ const PartnersSection = ({ data, t, isDarkMode, imageBaseUrl = "" }) => {
|
|
|
995
1062
|
return () => partnersRef.current && observer.unobserve(partnersRef.current);
|
|
996
1063
|
}, []);
|
|
997
1064
|
if (!partnersData.length) return null;
|
|
998
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
999
|
-
"
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1065
|
+
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: [
|
|
1066
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "text-center mb-12", children: [
|
|
1067
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1068
|
+
"div",
|
|
1069
|
+
{
|
|
1070
|
+
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"}`,
|
|
1071
|
+
children: [
|
|
1072
|
+
"🤝 ",
|
|
1073
|
+
t("partners.header.badge")
|
|
1074
|
+
]
|
|
1075
|
+
}
|
|
1076
|
+
),
|
|
1077
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1078
|
+
"h2",
|
|
1079
|
+
{
|
|
1080
|
+
className: `text-3xl lg:text-5xl font-bold leading-tight ${isDarkMode ? "text-white" : "text-gray-800"}`,
|
|
1081
|
+
children: [
|
|
1082
|
+
t("partners.header.title"),
|
|
1083
|
+
/* @__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") })
|
|
1084
|
+
]
|
|
1085
|
+
}
|
|
1086
|
+
)
|
|
1087
|
+
] }),
|
|
1088
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { ref: partnersRef, className: "relative overflow-hidden", children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1089
|
+
"div",
|
|
1090
|
+
{
|
|
1091
|
+
className: `transition-all duration-1000 ease-out ${partnersVisible ? "opacity-100 scale-100" : "opacity-0 scale-95"}`,
|
|
1092
|
+
children: [
|
|
1093
|
+
/* @__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
1094
|
"div",
|
|
1006
1095
|
{
|
|
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",
|
|
1032
|
-
{
|
|
1033
|
-
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"}`,
|
|
1034
|
-
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(
|
|
1035
|
-
PartnerCard,
|
|
1036
|
-
{
|
|
1037
|
-
partner,
|
|
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",
|
|
1096
|
+
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"}`,
|
|
1097
|
+
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(
|
|
1098
|
+
PartnerCard,
|
|
1050
1099
|
{
|
|
1051
|
-
|
|
1052
|
-
|
|
1100
|
+
partner,
|
|
1101
|
+
idx,
|
|
1102
|
+
t,
|
|
1103
|
+
getLogoUrl,
|
|
1104
|
+
isDarkMode
|
|
1053
1105
|
},
|
|
1054
|
-
|
|
1106
|
+
partner.id || idx
|
|
1055
1107
|
)) })
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1108
|
+
},
|
|
1109
|
+
slideIndex
|
|
1110
|
+
)) }),
|
|
1111
|
+
partners.length > 1 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex justify-center space-x-2", children: partners.map((_, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1112
|
+
"button",
|
|
1113
|
+
{
|
|
1114
|
+
onClick: () => setCurrentPartnerSlide(index2),
|
|
1115
|
+
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"}`
|
|
1116
|
+
},
|
|
1117
|
+
index2
|
|
1118
|
+
)) })
|
|
1119
|
+
]
|
|
1120
|
+
}
|
|
1121
|
+
) })
|
|
1122
|
+
] }) });
|
|
1062
1123
|
};
|
|
1063
1124
|
const MilestoneSection = ({ data, t, isDarkMode, getMilestoneTimeline, section }) => {
|
|
1064
1125
|
const [milestones, setMilestones] = useState([]);
|
|
@@ -1147,68 +1208,62 @@ const MilestoneSection = ({ data, t, isDarkMode, getMilestoneTimeline, section }
|
|
|
1147
1208
|
}
|
|
1148
1209
|
);
|
|
1149
1210
|
}
|
|
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
|
-
);
|
|
1211
|
+
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: [
|
|
1212
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-center mb-12", children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1213
|
+
"div",
|
|
1214
|
+
{
|
|
1215
|
+
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"}`,
|
|
1216
|
+
children: [
|
|
1217
|
+
"📈 ",
|
|
1218
|
+
sectionTitle
|
|
1219
|
+
]
|
|
1220
|
+
}
|
|
1221
|
+
) }),
|
|
1222
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative", children: [
|
|
1223
|
+
/* @__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" }),
|
|
1224
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "space-y-8", children: milestones.map((milestone, index2) => /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1225
|
+
"div",
|
|
1226
|
+
{
|
|
1227
|
+
ref: (el) => timelineRefs.current[index2] = el,
|
|
1228
|
+
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"}`,
|
|
1229
|
+
style: { transitionDelay: `${index2 * 200}ms` },
|
|
1230
|
+
children: [
|
|
1231
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex-1 px-8", children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1232
|
+
"div",
|
|
1233
|
+
{
|
|
1234
|
+
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"}`,
|
|
1235
|
+
children: [
|
|
1236
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-blue-600 font-bold text-xl mb-2", children: milestone.time }),
|
|
1237
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1238
|
+
"h3",
|
|
1239
|
+
{
|
|
1240
|
+
className: `text-lg font-bold mb-2 ${isDarkMode ? "text-white" : "text-gray-900"}`,
|
|
1241
|
+
children: milestone.title
|
|
1242
|
+
}
|
|
1243
|
+
),
|
|
1244
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1245
|
+
"p",
|
|
1246
|
+
{
|
|
1247
|
+
className: `${isDarkMode ? "text-gray-300" : "text-gray-600"}`,
|
|
1248
|
+
children: milestone.description
|
|
1249
|
+
}
|
|
1250
|
+
)
|
|
1251
|
+
]
|
|
1252
|
+
}
|
|
1253
|
+
) }),
|
|
1254
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1255
|
+
"div",
|
|
1256
|
+
{
|
|
1257
|
+
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`
|
|
1258
|
+
}
|
|
1259
|
+
),
|
|
1260
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex-1" })
|
|
1261
|
+
]
|
|
1262
|
+
},
|
|
1263
|
+
milestone.id
|
|
1264
|
+
)) })
|
|
1265
|
+
] })
|
|
1266
|
+
] }) });
|
|
1212
1267
|
};
|
|
1213
1268
|
const TestimonialsSection = ({ data, t, isDarkMode, section }) => {
|
|
1214
1269
|
var _a;
|
|
@@ -1252,74 +1307,68 @@ const TestimonialsSection = ({ data, t, isDarkMode, section }) => {
|
|
|
1252
1307
|
return () => clearInterval(interval);
|
|
1253
1308
|
}
|
|
1254
1309
|
}, [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
|
-
"
|
|
1310
|
+
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: [
|
|
1311
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1312
|
+
"div",
|
|
1313
|
+
{
|
|
1314
|
+
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"}`,
|
|
1315
|
+
children: [
|
|
1316
|
+
"💬 ",
|
|
1317
|
+
sectionTitle
|
|
1318
|
+
]
|
|
1319
|
+
}
|
|
1320
|
+
),
|
|
1321
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative", children: [
|
|
1322
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1323
|
+
"div",
|
|
1324
|
+
{
|
|
1325
|
+
className: `p-6 rounded-2xl transition-all duration-500 transform ${isDarkMode ? "bg-gray-800/80 backdrop-blur-sm border border-gray-700" : "bg-white"}`,
|
|
1326
|
+
children: [
|
|
1327
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1328
|
+
"blockquote",
|
|
1329
|
+
{
|
|
1330
|
+
className: `text-lg lg:text-xl italic mb-6 animate-fadeIn transition-colors duration-200 ${isDarkMode ? "text-gray-300" : "text-gray-700"}`,
|
|
1331
|
+
children: [
|
|
1332
|
+
'"',
|
|
1333
|
+
displayTestimonials[currentIndex].quote,
|
|
1334
|
+
'"'
|
|
1335
|
+
]
|
|
1336
|
+
}
|
|
1337
|
+
),
|
|
1338
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center justify-center space-x-4 animate-fadeIn", children: [
|
|
1339
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-3xl", children: "👤" }),
|
|
1340
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "text-left", children: [
|
|
1341
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1342
|
+
"div",
|
|
1278
1343
|
{
|
|
1279
|
-
className: `
|
|
1280
|
-
children: [
|
|
1281
|
-
'"',
|
|
1282
|
-
displayTestimonials[currentIndex].quote,
|
|
1283
|
-
'"'
|
|
1284
|
-
]
|
|
1344
|
+
className: `font-bold text-base transition-colors duration-200 ${isDarkMode ? "text-white" : "text-gray-900"}`,
|
|
1345
|
+
children: displayTestimonials[currentIndex].author
|
|
1285
1346
|
}
|
|
1286
1347
|
),
|
|
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
|
-
);
|
|
1348
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-blue-600 font-medium text-sm", children: displayTestimonials[currentIndex].position }),
|
|
1349
|
+
displayTestimonials[currentIndex].company && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1350
|
+
"div",
|
|
1351
|
+
{
|
|
1352
|
+
className: `text-xs transition-colors duration-200 ${isDarkMode ? "text-gray-400" : "text-gray-600"}`,
|
|
1353
|
+
children: displayTestimonials[currentIndex].company
|
|
1354
|
+
}
|
|
1355
|
+
)
|
|
1356
|
+
] })
|
|
1357
|
+
] })
|
|
1358
|
+
]
|
|
1359
|
+
},
|
|
1360
|
+
currentIndex
|
|
1361
|
+
),
|
|
1362
|
+
displayTestimonials.length > 1 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex justify-center space-x-2 mt-4", children: displayTestimonials.map((_, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1363
|
+
"button",
|
|
1364
|
+
{
|
|
1365
|
+
onClick: () => setCurrentIndex(index2),
|
|
1366
|
+
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"}`
|
|
1367
|
+
},
|
|
1368
|
+
index2
|
|
1369
|
+
)) })
|
|
1370
|
+
] })
|
|
1371
|
+
] }) });
|
|
1323
1372
|
};
|
|
1324
1373
|
const PartnerListCard = ({ partner, idx = 0, t, isDarkMode, getLogoUrl }) => {
|
|
1325
1374
|
const itemRef = useRef(null);
|
|
@@ -1531,72 +1580,66 @@ const PartnerListSection = ({ t, isDarkMode, getPartnerList, imageBaseUrl = "" }
|
|
|
1531
1580
|
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
1581
|
}
|
|
1533
1582
|
if (!partnersData.length) return null;
|
|
1534
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1535
|
-
"
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
1539
|
-
|
|
1540
|
-
|
|
1583
|
+
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: [
|
|
1584
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "text-center mb-12", children: [
|
|
1585
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1586
|
+
"div",
|
|
1587
|
+
{
|
|
1588
|
+
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"}`,
|
|
1589
|
+
children: [
|
|
1590
|
+
"🤝 ",
|
|
1591
|
+
t("partners.badge") || "ĐỐI TÁC CHIẾN LƯỢC"
|
|
1592
|
+
]
|
|
1593
|
+
}
|
|
1594
|
+
),
|
|
1595
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1596
|
+
"h2",
|
|
1597
|
+
{
|
|
1598
|
+
className: `text-3xl lg:text-5xl font-bold leading-tight ${isDarkMode ? "text-white" : "text-gray-800"}`,
|
|
1599
|
+
children: [
|
|
1600
|
+
t("partners.title.part1") || "Đồng hành cùng",
|
|
1601
|
+
/* @__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" })
|
|
1602
|
+
]
|
|
1603
|
+
}
|
|
1604
|
+
)
|
|
1605
|
+
] }),
|
|
1606
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { ref: partnersRef, className: "relative", children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1607
|
+
"div",
|
|
1608
|
+
{
|
|
1609
|
+
className: `transition-all duration-1000 ease-out ${partnersVisible ? "opacity-100 scale-100" : "opacity-0 scale-95"}`,
|
|
1610
|
+
children: [
|
|
1611
|
+
/* @__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
1612
|
"div",
|
|
1542
1613
|
{
|
|
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",
|
|
1614
|
+
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"}`,
|
|
1615
|
+
style: { zIndex: slideIndex === currentPartnerSlide ? 10 : 1 },
|
|
1616
|
+
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(
|
|
1617
|
+
PartnerListCard,
|
|
1568
1618
|
{
|
|
1569
|
-
|
|
1570
|
-
|
|
1571
|
-
|
|
1572
|
-
|
|
1573
|
-
|
|
1574
|
-
partner,
|
|
1575
|
-
idx,
|
|
1576
|
-
t,
|
|
1577
|
-
isDarkMode,
|
|
1578
|
-
getLogoUrl
|
|
1579
|
-
},
|
|
1580
|
-
partner.id || `${slideIndex}-${idx}`
|
|
1581
|
-
)) })
|
|
1619
|
+
partner,
|
|
1620
|
+
idx,
|
|
1621
|
+
t,
|
|
1622
|
+
isDarkMode,
|
|
1623
|
+
getLogoUrl
|
|
1582
1624
|
},
|
|
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
|
|
1625
|
+
partner.id || `${slideIndex}-${idx}`
|
|
1593
1626
|
)) })
|
|
1594
|
-
|
|
1595
|
-
|
|
1596
|
-
|
|
1597
|
-
|
|
1598
|
-
|
|
1599
|
-
|
|
1627
|
+
},
|
|
1628
|
+
slideIndex
|
|
1629
|
+
)) }) }),
|
|
1630
|
+
partners.length > 1 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex justify-center space-x-2", style: { zIndex: 50 }, children: partners.map((_, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1631
|
+
"button",
|
|
1632
|
+
{
|
|
1633
|
+
onClick: () => setCurrentPartnerSlide(index2),
|
|
1634
|
+
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"}`,
|
|
1635
|
+
"aria-label": `Slide ${index2 + 1}`
|
|
1636
|
+
},
|
|
1637
|
+
index2
|
|
1638
|
+
)) })
|
|
1639
|
+
]
|
|
1640
|
+
}
|
|
1641
|
+
) })
|
|
1642
|
+
] }) });
|
|
1600
1643
|
};
|
|
1601
1644
|
/**
|
|
1602
1645
|
* @license lucide-react v0.536.0 - ISC
|
|
@@ -2379,7 +2422,7 @@ const ContactFormSection = ({ data, t, isDarkMode, consultationRequestService })
|
|
|
2379
2422
|
});
|
|
2380
2423
|
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
2424
|
const labelClasses = `block text-sm font-semibold mb-2 ${isDarkMode ? "text-gray-300" : "text-slate-700"}`;
|
|
2382
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
2425
|
+
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
2426
|
/* @__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
2427
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center mb-6", children: [
|
|
2385
2428
|
/* @__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 +2738,7 @@ const ContactInfoSection = ({ data, t, isDarkMode, section }) => {
|
|
|
2695
2738
|
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
2739
|
const sectionTitle = (section == null ? void 0 : section.title) || "...";
|
|
2697
2740
|
if (!contactData.length) return null;
|
|
2698
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
2741
|
+
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
2742
|
/* @__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
2743
|
/* @__PURE__ */ jsxRuntimeExports.jsx(User, { size: 22, className: "mr-2" }),
|
|
2701
2744
|
sectionTitle
|
|
@@ -2803,7 +2846,7 @@ const ContactListAutoSection = ({ data, t, isDarkMode, getContactList, section }
|
|
|
2803
2846
|
/* @__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
2847
|
] });
|
|
2805
2848
|
}
|
|
2806
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
2849
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "max-w-6xl mx-auto px-5", children: [
|
|
2807
2850
|
/* @__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
2851
|
/* @__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
2852
|
] }) });
|
|
@@ -2943,75 +2986,71 @@ const CustomerFeedbackAutoSection = ({ data, t, isDarkMode, loadCustomerFeedback
|
|
|
2943
2986
|
);
|
|
2944
2987
|
}
|
|
2945
2988
|
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
|
-
"
|
|
2989
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(SectionWrapper, { isDarkMode, children: [
|
|
2990
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 text-center", children: [
|
|
2991
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
2992
|
+
"div",
|
|
2993
|
+
{
|
|
2994
|
+
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"}`,
|
|
2995
|
+
children: [
|
|
2996
|
+
"💬 ",
|
|
2997
|
+
sectionTitle
|
|
2998
|
+
]
|
|
2999
|
+
}
|
|
3000
|
+
),
|
|
3001
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative", children: [
|
|
3002
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
3003
|
+
"div",
|
|
3004
|
+
{
|
|
3005
|
+
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"}`,
|
|
3006
|
+
children: [
|
|
3007
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
3008
|
+
"blockquote",
|
|
3009
|
+
{
|
|
3010
|
+
className: `text-lg lg:text-xl italic mb-6 animate-fadeIn transition-colors duration-200 leading-relaxed ${isDarkMode ? "text-gray-300" : "text-gray-700"}`,
|
|
3011
|
+
children: [
|
|
3012
|
+
'"',
|
|
3013
|
+
currentFeedback.content,
|
|
3014
|
+
'"'
|
|
3015
|
+
]
|
|
3016
|
+
}
|
|
3017
|
+
),
|
|
3018
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center justify-center space-x-4 animate-fadeIn", children: [
|
|
3019
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-3xl", children: "👤" }),
|
|
3020
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "text-left", children: [
|
|
3021
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
3022
|
+
"div",
|
|
2970
3023
|
{
|
|
2971
|
-
className: `
|
|
2972
|
-
children:
|
|
2973
|
-
'"',
|
|
2974
|
-
currentFeedback.content,
|
|
2975
|
-
'"'
|
|
2976
|
-
]
|
|
3024
|
+
className: `font-bold text-base transition-colors duration-200 ${isDarkMode ? "text-white" : "text-gray-900"}`,
|
|
3025
|
+
children: currentFeedback.customerName
|
|
2977
3026
|
}
|
|
2978
3027
|
),
|
|
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: `
|
|
3028
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-blue-600 font-medium text-sm", children: currentFeedback.customerTitle }),
|
|
3029
|
+
currentFeedback.customerCompany && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
3030
|
+
"div",
|
|
3031
|
+
{
|
|
3032
|
+
className: `text-xs transition-colors duration-200 ${isDarkMode ? "text-gray-400" : "text-gray-600"}`,
|
|
3033
|
+
children: currentFeedback.customerCompany
|
|
3034
|
+
}
|
|
3035
|
+
)
|
|
3036
|
+
] })
|
|
3037
|
+
] })
|
|
3038
|
+
]
|
|
3039
|
+
},
|
|
3040
|
+
currentIndex
|
|
3041
|
+
),
|
|
3042
|
+
feedbacks.length > 1 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex justify-center space-x-2 mt-4", children: feedbacks.map((_, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
3043
|
+
"button",
|
|
3044
|
+
{
|
|
3045
|
+
onClick: () => setCurrentIndex(index2),
|
|
3046
|
+
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"}`,
|
|
3047
|
+
"aria-label": t("customerFeedback.switchToFeedback", { number: index2 + 1 }) || `Chuyển đến phản hồi ${index2 + 1}`
|
|
3048
|
+
},
|
|
3049
|
+
index2
|
|
3050
|
+
)) })
|
|
3051
|
+
] })
|
|
3052
|
+
] }),
|
|
3053
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("style", { jsx: true, children: `
|
|
3015
3054
|
.animate-fadeIn {
|
|
3016
3055
|
animation: fadeIn 0.5s ease-in-out;
|
|
3017
3056
|
}
|
|
@@ -3026,9 +3065,7 @@ const CustomerFeedbackAutoSection = ({ data, t, isDarkMode, loadCustomerFeedback
|
|
|
3026
3065
|
}
|
|
3027
3066
|
}
|
|
3028
3067
|
` })
|
|
3029
|
-
|
|
3030
|
-
}
|
|
3031
|
-
);
|
|
3068
|
+
] });
|
|
3032
3069
|
};
|
|
3033
3070
|
const ProductListSection = ({ data, t, isDarkMode, getProductList }) => {
|
|
3034
3071
|
const [products, setProducts] = useState([]);
|
|
@@ -3256,164 +3293,12 @@ const ProductCard = ({ product, t, isDarkMode }) => {
|
|
|
3256
3293
|
}
|
|
3257
3294
|
);
|
|
3258
3295
|
};
|
|
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
3296
|
const TextWithTitleSection = ({ section, data, isDarkMode }) => {
|
|
3409
3297
|
var _a;
|
|
3410
3298
|
const textItems = (data == null ? void 0 : data.sectionDataBindingItems) || [];
|
|
3411
3299
|
const title = ((_a = textItems[0]) == null ? void 0 : _a.value) || "";
|
|
3412
3300
|
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: [
|
|
3301
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: { maxWidth: "1200px", margin: "0 auto" }, children: [
|
|
3417
3302
|
title && /* @__PURE__ */ jsxRuntimeExports.jsx("h2", { style: {
|
|
3418
3303
|
fontSize: "36px",
|
|
3419
3304
|
fontWeight: "700",
|
|
@@ -3443,32 +3328,23 @@ const TextWithTitleSection = ({ section, data, isDarkMode }) => {
|
|
|
3443
3328
|
};
|
|
3444
3329
|
const TextSection = ({ data, isDarkMode }) => {
|
|
3445
3330
|
const textItems = (data == null ? void 0 : data.sectionDataBindingItems) || [];
|
|
3446
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
3331
|
+
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
3332
|
"div",
|
|
3448
3333
|
{
|
|
3449
3334
|
style: {
|
|
3450
|
-
padding: "
|
|
3451
|
-
|
|
3335
|
+
padding: "0",
|
|
3336
|
+
marginBottom: "20px",
|
|
3337
|
+
fontSize: "28px",
|
|
3338
|
+
fontWeight: "700",
|
|
3339
|
+
lineHeight: "1.3",
|
|
3340
|
+
color: isDarkMode ? "#f9fafb" : "#111827",
|
|
3341
|
+
textAlign: "left",
|
|
3342
|
+
fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif'
|
|
3452
3343
|
},
|
|
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
|
-
);
|
|
3344
|
+
children: item.value
|
|
3345
|
+
},
|
|
3346
|
+
item.id || index2
|
|
3347
|
+
)) }) });
|
|
3472
3348
|
};
|
|
3473
3349
|
const DiagramSection = ({ data, t, isDarkMode }) => {
|
|
3474
3350
|
var _a, _b;
|
|
@@ -4424,7 +4300,7 @@ const FaqSection = ({ data, t, isDarkMode }) => {
|
|
|
4424
4300
|
const toggleFaq = (index2) => {
|
|
4425
4301
|
setActiveIndex(activeIndex === index2 ? -1 : index2);
|
|
4426
4302
|
};
|
|
4427
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
4303
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(SectionWrapper, { isDarkMode, children: [
|
|
4428
4304
|
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "max-w-4xl mx-auto", children: [
|
|
4429
4305
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex justify-center mb-6 animate-fade-in", children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: `
|
|
4430
4306
|
w-10 h-10 rounded-lg flex items-center justify-center
|
|
@@ -4654,11 +4530,7 @@ const PageChildrenSelectSection = ({ data, isDarkMode, t, section, imageBaseUrl
|
|
|
4654
4530
|
if (url.startsWith("http://") || url.startsWith("https://")) return url;
|
|
4655
4531
|
return `${imageBaseUrl}${url}`;
|
|
4656
4532
|
};
|
|
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: {
|
|
4533
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: {
|
|
4662
4534
|
maxWidth: "1400px",
|
|
4663
4535
|
margin: "0 auto"
|
|
4664
4536
|
}, children: [
|
|
@@ -4803,11 +4675,7 @@ const PageChildrenSelectSection1 = ({ data, isDarkMode, t, section, imageBaseUrl
|
|
|
4803
4675
|
if (url.startsWith("http://") || url.startsWith("https://")) return url;
|
|
4804
4676
|
return `${imageBaseUrl}${url}`;
|
|
4805
4677
|
};
|
|
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: {
|
|
4678
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: {
|
|
4811
4679
|
maxWidth: "1280px",
|
|
4812
4680
|
margin: "0 auto"
|
|
4813
4681
|
}, children: [
|
|
@@ -4970,11 +4838,7 @@ const PageChildrenSelectSection2 = ({ data, isDarkMode, t, section, imageBaseUrl
|
|
|
4970
4838
|
};
|
|
4971
4839
|
const visiblePages = pages.slice(0, visibleCount);
|
|
4972
4840
|
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: {
|
|
4841
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: {
|
|
4978
4842
|
maxWidth: "1400px",
|
|
4979
4843
|
margin: "0 auto"
|
|
4980
4844
|
}, children: [
|
|
@@ -5121,8 +4985,6 @@ const index = {
|
|
|
5121
4985
|
ContactListAutoSection,
|
|
5122
4986
|
CustomerFeedbackAutoSection,
|
|
5123
4987
|
ProductListSection,
|
|
5124
|
-
ImageSection,
|
|
5125
|
-
ImageSingleSection,
|
|
5126
4988
|
TextWithTitleSection,
|
|
5127
4989
|
TextSection,
|
|
5128
4990
|
DiagramSection,
|
|
@@ -5143,8 +5005,6 @@ export {
|
|
|
5143
5005
|
DiagramSection,
|
|
5144
5006
|
DiagramSection2,
|
|
5145
5007
|
FaqSection,
|
|
5146
|
-
ImageSection,
|
|
5147
|
-
ImageSingleSection,
|
|
5148
5008
|
MilestoneSection,
|
|
5149
5009
|
PageChildrenSelectSection,
|
|
5150
5010
|
PageChildrenSelectSection1,
|