nvis-fe-cms-libs 2.1.14 → 2.1.16
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.
|
@@ -50,6 +50,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
50
50
|
});
|
|
51
51
|
};
|
|
52
52
|
import require$$0, { useRef, useState, useEffect, useMemo, forwardRef, createElement } from "react";
|
|
53
|
+
import { createPortal } from "react-dom";
|
|
53
54
|
var jsxRuntime = { exports: {} };
|
|
54
55
|
var reactJsxRuntime_production = {};
|
|
55
56
|
/**
|
|
@@ -645,6 +646,76 @@ const AboutCompanySection = ({ data, t, isDarkMode, imageBaseUrl = "" }) => {
|
|
|
645
646
|
] }) }) })
|
|
646
647
|
] });
|
|
647
648
|
};
|
|
649
|
+
const AboutCompanySection_2 = ({ data, t, isDarkMode, imageBaseUrl = "" }) => {
|
|
650
|
+
var _a, _b;
|
|
651
|
+
const safeT = typeof t === "function" ? t : (key, options) => {
|
|
652
|
+
console.warn(`Translation function not provided for key: ${key}`);
|
|
653
|
+
return key;
|
|
654
|
+
};
|
|
655
|
+
const companyData = (_b = (_a = data == null ? void 0 : data.sectionDataBindingItems) == null ? void 0 : _a[0]) == null ? void 0 : _b.data;
|
|
656
|
+
if (!companyData) {
|
|
657
|
+
return null;
|
|
658
|
+
}
|
|
659
|
+
const name = companyData.name || safeT("aboutCompany.defaults.companyName");
|
|
660
|
+
const shortName = companyData.shortName || safeT("aboutCompany.defaults.shortName");
|
|
661
|
+
const shortDescription = companyData.shortDescription || safeT("aboutCompany.defaults.shortDescription");
|
|
662
|
+
const establishedYear = companyData.establishedYear || "----";
|
|
663
|
+
const experienceYears = companyData.experienceYears || "0";
|
|
664
|
+
companyData.description || "";
|
|
665
|
+
const logo = companyData.logo || null;
|
|
666
|
+
const getLogoUrl = (logoUrl2) => {
|
|
667
|
+
if (!logoUrl2) return null;
|
|
668
|
+
if (logoUrl2.startsWith("http")) return logoUrl2;
|
|
669
|
+
return `${imageBaseUrl}${logoUrl2}`;
|
|
670
|
+
};
|
|
671
|
+
const logoUrl = getLogoUrl(logo);
|
|
672
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
673
|
+
"section",
|
|
674
|
+
{
|
|
675
|
+
className: "relative min-h-[80vh] flex items-center justify-center overflow-hidden pt-8 bg-cover bg-center bg-no-repeat",
|
|
676
|
+
style: {
|
|
677
|
+
backgroundImage: 'url("/image_intro_company.png")'
|
|
678
|
+
},
|
|
679
|
+
children: [
|
|
680
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute inset-0 bg-slate-950/70" }),
|
|
681
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "relative z-10 max-w-6xl mx-auto px-4 sm:px-6 lg:px-8 text-center", children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-6", children: [
|
|
682
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-2", children: [
|
|
683
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-40 h-40 mx-auto", children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-full h-full flex items-center justify-center", children: logoUrl ? /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
684
|
+
"img",
|
|
685
|
+
{
|
|
686
|
+
src: logoUrl,
|
|
687
|
+
alt: name || shortName,
|
|
688
|
+
className: "w-full h-full object-contain",
|
|
689
|
+
onError: (e) => {
|
|
690
|
+
e.target.style.display = "none";
|
|
691
|
+
const fallbackDiv = document.createElement("div");
|
|
692
|
+
fallbackDiv.className = "text-2xl font-bold text-gradient-accent";
|
|
693
|
+
fallbackDiv.textContent = shortName;
|
|
694
|
+
e.target.parentElement.appendChild(fallbackDiv);
|
|
695
|
+
}
|
|
696
|
+
}
|
|
697
|
+
) : /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-2xl font-bold text-gradient-accent", children: shortName }) }) }),
|
|
698
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("h1", { className: "text-5xl lg:text-6xl font-extrabold tracking-tight mb-4 text-white drop-shadow-[0_2px_6px_rgba(0,0,0,0.5)]", children: name })
|
|
699
|
+
] }),
|
|
700
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "max-w-4xl mx-auto", children: [
|
|
701
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
702
|
+
"div",
|
|
703
|
+
{
|
|
704
|
+
dangerouslySetInnerHTML: { __html: shortDescription },
|
|
705
|
+
className: "prose max-w-none mb-8 leading-relaxed text-lg sm:text-xl md:text-2xl font-light tracking-wide text-slate-200"
|
|
706
|
+
}
|
|
707
|
+
),
|
|
708
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "inline-flex items-center px-4 py-2 rounded-full border bg-white/10 border-white/20 text-white text-small font-medium", children: [
|
|
709
|
+
safeT("aboutCompany.hero.establishedYear", { year: establishedYear }),
|
|
710
|
+
" - ",
|
|
711
|
+
safeT("aboutCompany.hero.experience", { years: experienceYears })
|
|
712
|
+
] })
|
|
713
|
+
] })
|
|
714
|
+
] }) })
|
|
715
|
+
]
|
|
716
|
+
}
|
|
717
|
+
) });
|
|
718
|
+
};
|
|
648
719
|
const TimelineSection = ({ data, t, section }) => {
|
|
649
720
|
var _a, _b, _c;
|
|
650
721
|
const timelineData = ((_c = (_b = (_a = data == null ? void 0 : data.sectionDataBindingItems) == null ? void 0 : _a.filter((item) => item == null ? void 0 : item.data)) == null ? void 0 : _b.sort((a, b) => (a.sortOrder || 0) - (b.sortOrder || 0))) == null ? void 0 : _c.map((item) => item.data)) || [];
|
|
@@ -1770,6 +1841,221 @@ const PartnerListSection_2 = ({ t, getPartnerList, imageBaseUrl = "", section })
|
|
|
1770
1841
|
) })
|
|
1771
1842
|
] }) });
|
|
1772
1843
|
};
|
|
1844
|
+
const PartnerAutoSection_1 = ({ getPartnerList, t, isDarkMode, imageBaseUrl = "", section }) => {
|
|
1845
|
+
const [partners, setPartners] = useState([]);
|
|
1846
|
+
const [loading, setLoading] = useState(true);
|
|
1847
|
+
const [currentPage, setCurrentPage] = useState(0);
|
|
1848
|
+
useEffect(() => {
|
|
1849
|
+
const loadData = () => __async(null, null, function* () {
|
|
1850
|
+
if (!getPartnerList) return;
|
|
1851
|
+
setLoading(true);
|
|
1852
|
+
try {
|
|
1853
|
+
const result = yield getPartnerList();
|
|
1854
|
+
if (result && result.success && Array.isArray(result.data)) {
|
|
1855
|
+
const sorted = [...result.data].sort((a, b) => (a.order || 0) - (b.order || 0));
|
|
1856
|
+
setPartners(sorted);
|
|
1857
|
+
}
|
|
1858
|
+
} catch (error) {
|
|
1859
|
+
console.error("Error loading auto partners:", error);
|
|
1860
|
+
} finally {
|
|
1861
|
+
setLoading(false);
|
|
1862
|
+
}
|
|
1863
|
+
});
|
|
1864
|
+
loadData();
|
|
1865
|
+
}, [getPartnerList]);
|
|
1866
|
+
const getImageUrl = (imagePath) => {
|
|
1867
|
+
if (!imagePath) return "";
|
|
1868
|
+
if (imagePath.startsWith("http://") || imagePath.startsWith("https://")) {
|
|
1869
|
+
return imagePath;
|
|
1870
|
+
}
|
|
1871
|
+
return `${imageBaseUrl}${imagePath}`;
|
|
1872
|
+
};
|
|
1873
|
+
const itemsPerPage = 30;
|
|
1874
|
+
const totalPages = Math.ceil(partners.length / itemsPerPage);
|
|
1875
|
+
const currentPartners = partners.slice(
|
|
1876
|
+
currentPage * itemsPerPage,
|
|
1877
|
+
(currentPage + 1) * itemsPerPage
|
|
1878
|
+
);
|
|
1879
|
+
if (loading) {
|
|
1880
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative max-w-7xl mx-auto px-6 sm:px-8 lg:px-12 animate-pulse", children: [
|
|
1881
|
+
(section == null ? void 0 : section.title) && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "h-8 w-64 bg-gray-200 dark:bg-slate-700 mx-auto rounded-lg mb-12" }),
|
|
1882
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-6 gap-6 md:gap-8", children: Array.from({ length: 12 }).map((_, i) => /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "bg-gray-200 dark:bg-slate-700 rounded-xl h-28 border border-gray-150 dark:border-gray-850" }, i)) })
|
|
1883
|
+
] }) });
|
|
1884
|
+
}
|
|
1885
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative max-w-7xl mx-auto px-6 sm:px-8 lg:px-12", children: [
|
|
1886
|
+
(section == null ? void 0 : section.title) && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "text-center mb-12", children: [
|
|
1887
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1888
|
+
"div",
|
|
1889
|
+
{
|
|
1890
|
+
className: "text-3xl font-bold mb-4",
|
|
1891
|
+
style: { color: isDarkMode ? "#F8FAFC" : "#1E3888" },
|
|
1892
|
+
dangerouslySetInnerHTML: { __html: section.title }
|
|
1893
|
+
}
|
|
1894
|
+
),
|
|
1895
|
+
section.description && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1896
|
+
"div",
|
|
1897
|
+
{
|
|
1898
|
+
className: "text-lg",
|
|
1899
|
+
style: { color: isDarkMode ? "#CBD5E1" : "#475569" },
|
|
1900
|
+
dangerouslySetInnerHTML: { __html: section.description }
|
|
1901
|
+
}
|
|
1902
|
+
)
|
|
1903
|
+
] }),
|
|
1904
|
+
currentPartners.length > 0 ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-6 gap-6 md:gap-8", children: currentPartners.map((partner) => {
|
|
1905
|
+
const hasUrl = !!partner.websiteUrl;
|
|
1906
|
+
const CardElement = hasUrl ? "a" : "div";
|
|
1907
|
+
const cardProps = hasUrl ? {
|
|
1908
|
+
href: partner.websiteUrl,
|
|
1909
|
+
target: "_blank",
|
|
1910
|
+
rel: "noopener noreferrer"
|
|
1911
|
+
} : {};
|
|
1912
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
1913
|
+
CardElement,
|
|
1914
|
+
__spreadProps(__spreadValues({}, cardProps), {
|
|
1915
|
+
className: "relative group flex items-center justify-center p-5 bg-white dark:bg-slate-800 rounded-xl hover:shadow-lg transition-all duration-300 hover:-translate-y-1 h-28 border border-gray-100 dark:border-gray-700 shadow-sm",
|
|
1916
|
+
children: [
|
|
1917
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1918
|
+
"img",
|
|
1919
|
+
{
|
|
1920
|
+
src: getImageUrl(partner.logoUrl),
|
|
1921
|
+
alt: partner.name || "Partner logo",
|
|
1922
|
+
className: "max-w-full max-h-16 object-contain transition-all duration-300",
|
|
1923
|
+
onError: (e) => {
|
|
1924
|
+
e.target.src = "https://via.placeholder.com/150x80?text=Logo";
|
|
1925
|
+
}
|
|
1926
|
+
}
|
|
1927
|
+
),
|
|
1928
|
+
partner.name && /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "absolute bottom-full left-1/2 -translate-x-1/2 mb-2 px-3 py-1.5 text-xs text-white bg-slate-900/90 dark:bg-slate-700/90 backdrop-blur-sm rounded-lg shadow-lg opacity-0 group-hover:opacity-100 transition-all duration-300 pointer-events-none whitespace-normal text-center max-w-[200px] z-50 transform translate-y-1 group-hover:translate-y-0", children: [
|
|
1929
|
+
partner.name,
|
|
1930
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "absolute top-full left-1/2 -translate-x-1/2 border-4 border-transparent border-t-slate-900/90 dark:border-t-slate-700/90" })
|
|
1931
|
+
] })
|
|
1932
|
+
]
|
|
1933
|
+
}),
|
|
1934
|
+
partner.id
|
|
1935
|
+
);
|
|
1936
|
+
}) }) : /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-center py-10", children: /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-gray-500 dark:text-gray-400", children: (t == null ? void 0 : t("partners.noData")) || "Chưa có dữ liệu đối tác." }) }),
|
|
1937
|
+
totalPages > 1 && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex justify-center items-center gap-4 mt-12", children: [
|
|
1938
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1939
|
+
"button",
|
|
1940
|
+
{
|
|
1941
|
+
onClick: () => setCurrentPage((prev) => Math.max(0, prev - 1)),
|
|
1942
|
+
disabled: currentPage === 0,
|
|
1943
|
+
className: "w-12 h-12 rounded-full border border-blue-600 dark:border-blue-400 flex items-center justify-center text-blue-600 dark:text-blue-400 hover:bg-blue-50 dark:hover:bg-slate-800 transition-colors disabled:opacity-30 disabled:cursor-not-allowed",
|
|
1944
|
+
"aria-label": "Trang trước",
|
|
1945
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx("svg", { className: "w-5 h-5 stroke-current fill-none", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsxRuntimeExports.jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M15 19l-7-7 7-7" }) })
|
|
1946
|
+
}
|
|
1947
|
+
),
|
|
1948
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1949
|
+
"button",
|
|
1950
|
+
{
|
|
1951
|
+
onClick: () => setCurrentPage((prev) => Math.min(totalPages - 1, prev + 1)),
|
|
1952
|
+
disabled: currentPage === totalPages - 1,
|
|
1953
|
+
className: "w-12 h-12 rounded-full border border-blue-600 dark:border-blue-400 flex items-center justify-center text-blue-600 dark:text-blue-400 hover:bg-blue-50 dark:hover:bg-slate-800 transition-colors disabled:opacity-30 disabled:cursor-not-allowed",
|
|
1954
|
+
"aria-label": "Trang sau",
|
|
1955
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx("svg", { className: "w-5 h-5 stroke-current fill-none", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsxRuntimeExports.jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M9 5l7 7-7 7" }) })
|
|
1956
|
+
}
|
|
1957
|
+
)
|
|
1958
|
+
] })
|
|
1959
|
+
] }) });
|
|
1960
|
+
};
|
|
1961
|
+
const PartnersGridSection_3 = ({ data, t, isDarkMode, imageBaseUrl = "", section }) => {
|
|
1962
|
+
const [currentPage, setCurrentPage] = useState(0);
|
|
1963
|
+
const extractPartners = (data2) => {
|
|
1964
|
+
if (!(data2 == null ? void 0 : data2.sectionDataBindingItems) || data2.sectionDataBindingItems.length === 0) {
|
|
1965
|
+
return [];
|
|
1966
|
+
}
|
|
1967
|
+
return data2.sectionDataBindingItems.filter((item) => item && item.data).map((item) => item.data).sort((a, b) => (a.order || 0) - (b.order || 0));
|
|
1968
|
+
};
|
|
1969
|
+
const getImageUrl = (imagePath) => {
|
|
1970
|
+
if (!imagePath) return "";
|
|
1971
|
+
if (imagePath.startsWith("http://") || imagePath.startsWith("https://")) {
|
|
1972
|
+
return imagePath;
|
|
1973
|
+
}
|
|
1974
|
+
return `${imageBaseUrl}${imagePath}`;
|
|
1975
|
+
};
|
|
1976
|
+
const partners = extractPartners(data);
|
|
1977
|
+
const itemsPerPage = 30;
|
|
1978
|
+
const totalPages = Math.ceil(partners.length / itemsPerPage);
|
|
1979
|
+
const currentPartners = partners.slice(
|
|
1980
|
+
currentPage * itemsPerPage,
|
|
1981
|
+
(currentPage + 1) * itemsPerPage
|
|
1982
|
+
);
|
|
1983
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(SectionWrapper, { isDarkMode, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "relative max-w-7xl mx-auto px-6 sm:px-8 lg:px-12", children: [
|
|
1984
|
+
(section == null ? void 0 : section.title) && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "text-center mb-12", children: [
|
|
1985
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1986
|
+
"div",
|
|
1987
|
+
{
|
|
1988
|
+
className: "text-3xl font-bold mb-4",
|
|
1989
|
+
style: { color: isDarkMode ? "#F8FAFC" : "#1E3888" },
|
|
1990
|
+
dangerouslySetInnerHTML: { __html: section.title }
|
|
1991
|
+
}
|
|
1992
|
+
),
|
|
1993
|
+
section.description && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
1994
|
+
"div",
|
|
1995
|
+
{
|
|
1996
|
+
className: "text-lg",
|
|
1997
|
+
style: { color: isDarkMode ? "#CBD5E1" : "#475569" },
|
|
1998
|
+
dangerouslySetInnerHTML: { __html: section.description }
|
|
1999
|
+
}
|
|
2000
|
+
)
|
|
2001
|
+
] }),
|
|
2002
|
+
currentPartners.length > 0 ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-6 gap-6 md:gap-8", children: currentPartners.map((partner) => {
|
|
2003
|
+
const hasUrl = !!partner.websiteUrl;
|
|
2004
|
+
const CardElement = hasUrl ? "a" : "div";
|
|
2005
|
+
const cardProps = hasUrl ? {
|
|
2006
|
+
href: partner.websiteUrl,
|
|
2007
|
+
target: "_blank",
|
|
2008
|
+
rel: "noopener noreferrer"
|
|
2009
|
+
} : {};
|
|
2010
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
2011
|
+
CardElement,
|
|
2012
|
+
__spreadProps(__spreadValues({}, cardProps), {
|
|
2013
|
+
className: "relative group flex items-center justify-center p-5 bg-white dark:bg-slate-800 rounded-xl hover:shadow-lg transition-all duration-300 hover:-translate-y-1 h-28 border border-gray-100 dark:border-gray-700 shadow-sm",
|
|
2014
|
+
children: [
|
|
2015
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
2016
|
+
"img",
|
|
2017
|
+
{
|
|
2018
|
+
src: getImageUrl(partner.logoUrl),
|
|
2019
|
+
alt: partner.name || "Partner logo",
|
|
2020
|
+
className: "max-w-full max-h-16 object-contain transition-all duration-300",
|
|
2021
|
+
onError: (e) => {
|
|
2022
|
+
e.target.src = "https://via.placeholder.com/150x80?text=Logo";
|
|
2023
|
+
}
|
|
2024
|
+
}
|
|
2025
|
+
),
|
|
2026
|
+
partner.name && /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "absolute bottom-full left-1/2 -translate-x-1/2 mb-2 px-3 py-1.5 text-xs text-white bg-slate-900/90 dark:bg-slate-700/90 backdrop-blur-sm rounded-lg shadow-lg opacity-0 group-hover:opacity-100 transition-all duration-300 pointer-events-none whitespace-normal text-center max-w-[200px] z-50 transform translate-y-1 group-hover:translate-y-0", children: [
|
|
2027
|
+
partner.name,
|
|
2028
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "absolute top-full left-1/2 -translate-x-1/2 border-4 border-transparent border-t-slate-900/90 dark:border-t-slate-700/90" })
|
|
2029
|
+
] })
|
|
2030
|
+
]
|
|
2031
|
+
}),
|
|
2032
|
+
partner.id
|
|
2033
|
+
);
|
|
2034
|
+
}) }) : /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-center py-10", children: /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-gray-500 dark:text-gray-400", children: (t == null ? void 0 : t("partners.noData")) || "Chưa có dữ liệu đối tác." }) }),
|
|
2035
|
+
totalPages > 1 && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex justify-center items-center gap-4 mt-12", children: [
|
|
2036
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
2037
|
+
"button",
|
|
2038
|
+
{
|
|
2039
|
+
onClick: () => setCurrentPage((prev) => Math.max(0, prev - 1)),
|
|
2040
|
+
disabled: currentPage === 0,
|
|
2041
|
+
className: "w-12 h-12 rounded-full border border-blue-600 dark:border-blue-400 flex items-center justify-center text-blue-600 dark:text-blue-400 hover:bg-blue-50 dark:hover:bg-slate-800 transition-colors disabled:opacity-30 disabled:cursor-not-allowed",
|
|
2042
|
+
"aria-label": "Trang trước",
|
|
2043
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx("svg", { className: "w-5 h-5 stroke-current fill-none", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsxRuntimeExports.jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M15 19l-7-7 7-7" }) })
|
|
2044
|
+
}
|
|
2045
|
+
),
|
|
2046
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
2047
|
+
"button",
|
|
2048
|
+
{
|
|
2049
|
+
onClick: () => setCurrentPage((prev) => Math.min(totalPages - 1, prev + 1)),
|
|
2050
|
+
disabled: currentPage === totalPages - 1,
|
|
2051
|
+
className: "w-12 h-12 rounded-full border border-blue-600 dark:border-blue-400 flex items-center justify-center text-blue-600 dark:text-blue-400 hover:bg-blue-50 dark:hover:bg-slate-800 transition-colors disabled:opacity-30 disabled:cursor-not-allowed",
|
|
2052
|
+
"aria-label": "Trang sau",
|
|
2053
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx("svg", { className: "w-5 h-5 stroke-current fill-none", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsxRuntimeExports.jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M9 5l7 7-7 7" }) })
|
|
2054
|
+
}
|
|
2055
|
+
)
|
|
2056
|
+
] })
|
|
2057
|
+
] }) });
|
|
2058
|
+
};
|
|
1773
2059
|
const ContactFormSection = ({ data, t, isDarkMode, consultationRequestService }) => {
|
|
1774
2060
|
const [formData, setFormData] = useState({
|
|
1775
2061
|
fullName: "",
|
|
@@ -5343,8 +5629,357 @@ const HeroBannerSection = ({ data, t, isDarkMode, imageBaseUrl = "" }) => {
|
|
|
5343
5629
|
] }) })
|
|
5344
5630
|
] });
|
|
5345
5631
|
};
|
|
5632
|
+
const HeroBannerSection_2 = ({ data, t, isDarkMode, imageBaseUrl = "" }) => {
|
|
5633
|
+
var _a, _b;
|
|
5634
|
+
const [activeSlide, setActiveSlide] = useState(0);
|
|
5635
|
+
const [isLightboxOpen, setIsLightboxOpen] = useState(false);
|
|
5636
|
+
const extractBannerData = (data2) => {
|
|
5637
|
+
if (!(data2 == null ? void 0 : data2.sectionDataBindingItems) || data2.sectionDataBindingItems.length === 0) {
|
|
5638
|
+
return null;
|
|
5639
|
+
}
|
|
5640
|
+
const item = data2.sectionDataBindingItems[0];
|
|
5641
|
+
if (!item || !item.data) {
|
|
5642
|
+
return null;
|
|
5643
|
+
}
|
|
5644
|
+
const bannerData2 = item.data;
|
|
5645
|
+
if (!bannerData2.id && !bannerData2.name) {
|
|
5646
|
+
return null;
|
|
5647
|
+
}
|
|
5648
|
+
const extractedData = {
|
|
5649
|
+
id: bannerData2.id,
|
|
5650
|
+
name: bannerData2.name || "",
|
|
5651
|
+
description: bannerData2.description || "",
|
|
5652
|
+
images: Array.isArray(bannerData2.images) ? bannerData2.images : []
|
|
5653
|
+
};
|
|
5654
|
+
return extractedData;
|
|
5655
|
+
};
|
|
5656
|
+
const bannerData = extractBannerData(data);
|
|
5657
|
+
const getImageUrl = (imagePath) => {
|
|
5658
|
+
if (!imagePath) {
|
|
5659
|
+
return null;
|
|
5660
|
+
}
|
|
5661
|
+
if (imagePath.startsWith("http://") || imagePath.startsWith("https://")) {
|
|
5662
|
+
return imagePath;
|
|
5663
|
+
}
|
|
5664
|
+
return `${imageBaseUrl}${imagePath}`;
|
|
5665
|
+
};
|
|
5666
|
+
const slideImages = ((_a = bannerData == null ? void 0 : bannerData.images) == null ? void 0 : _a.map((img) => ({
|
|
5667
|
+
id: img.id || `img-${Math.random()}`,
|
|
5668
|
+
url: getImageUrl(img.url)
|
|
5669
|
+
}))) || [];
|
|
5670
|
+
const defaultImage = "https://images.unsplash.com/photo-1566073771259-6a8506099945?w=1920&h=1080&fit=crop&q=80";
|
|
5671
|
+
const displayImages = [...slideImages].slice(0, 3);
|
|
5672
|
+
if (!bannerData) {
|
|
5673
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("section", { className: "py-20 bg-body", children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "max-w-7xl mx-auto px-4 text-center", children: [
|
|
5674
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("h3", { className: "text-lg font-semibold mb-2 text-main", children: (t == null ? void 0 : t("banner.noData.title")) || "Chưa có dữ liệu" }),
|
|
5675
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-muted", children: (t == null ? void 0 : t("banner.noData.description")) || "Hiện tại chưa có banner nào được thiết lập." })
|
|
5676
|
+
] }) });
|
|
5677
|
+
}
|
|
5678
|
+
const renderImages = () => {
|
|
5679
|
+
if (displayImages.length === 0) {
|
|
5680
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex items-center justify-center border-2 border-dashed border-gray-300 dark:border-gray-700 rounded-lg aspect-[16/10] w-full max-w-md mx-auto", children: /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-gray-400 text-sm", children: "Chưa có hình ảnh" }) });
|
|
5681
|
+
}
|
|
5682
|
+
const configs = [
|
|
5683
|
+
{ className: "banner2-img-0 dsm-float-slow", originalIndex: 0 },
|
|
5684
|
+
{ className: "banner2-img-1 dsm-float-medium", originalIndex: 1 },
|
|
5685
|
+
{ className: "banner2-img-2 dsm-float-fast", originalIndex: 2 }
|
|
5686
|
+
];
|
|
5687
|
+
let mappedImages = [];
|
|
5688
|
+
if (displayImages.length === 1) {
|
|
5689
|
+
mappedImages = [{ img: displayImages[0], config: configs[1], originalIndex: 0 }];
|
|
5690
|
+
} else if (displayImages.length === 2) {
|
|
5691
|
+
mappedImages = [
|
|
5692
|
+
{ img: displayImages[0], config: configs[0], originalIndex: 0 },
|
|
5693
|
+
{ img: displayImages[1], config: configs[1], originalIndex: 1 }
|
|
5694
|
+
];
|
|
5695
|
+
} else {
|
|
5696
|
+
mappedImages = [
|
|
5697
|
+
{ img: displayImages[0], config: configs[0], originalIndex: 0 },
|
|
5698
|
+
{ img: displayImages[1], config: configs[1], originalIndex: 1 },
|
|
5699
|
+
{ img: displayImages[2], config: configs[2], originalIndex: 2 }
|
|
5700
|
+
];
|
|
5701
|
+
}
|
|
5702
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "relative w-full banner2-image-container", children: mappedImages.map((item, idx) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
5703
|
+
"div",
|
|
5704
|
+
{
|
|
5705
|
+
className: `absolute transition-all duration-300 hover:scale-[1.03] hover:!z-40 cursor-pointer ${item.config.className}`,
|
|
5706
|
+
onClick: () => {
|
|
5707
|
+
setActiveSlide(item.originalIndex);
|
|
5708
|
+
setIsLightboxOpen(true);
|
|
5709
|
+
},
|
|
5710
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
5711
|
+
"img",
|
|
5712
|
+
{
|
|
5713
|
+
src: item.img.url,
|
|
5714
|
+
alt: `${bannerData.name} - ${idx + 1}`,
|
|
5715
|
+
className: "w-full aspect-[16/10] object-cover rounded-lg shadow-[0_15px_30px_rgba(0,0,0,0.3)] border border-gray-200 dark:border-gray-800",
|
|
5716
|
+
onError: (e) => {
|
|
5717
|
+
e.target.src = defaultImage;
|
|
5718
|
+
}
|
|
5719
|
+
}
|
|
5720
|
+
)
|
|
5721
|
+
},
|
|
5722
|
+
item.img.id
|
|
5723
|
+
)) });
|
|
5724
|
+
};
|
|
5725
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(SectionWrapper, { isDarkMode, children: [
|
|
5726
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("style", { children: `
|
|
5727
|
+
@keyframes dsmFloatSlow {
|
|
5728
|
+
0%, 100% { transform: translateY(0px) rotate(0.2deg); }
|
|
5729
|
+
50% { transform: translateY(-12px) rotate(-0.2deg); }
|
|
5730
|
+
}
|
|
5731
|
+
@keyframes dsmFloatMedium {
|
|
5732
|
+
0%, 100% { transform: translateY(0px) rotate(-0.1deg); }
|
|
5733
|
+
50% { transform: translateY(-8px) rotate(0.1deg); }
|
|
5734
|
+
}
|
|
5735
|
+
@keyframes dsmFloatFast {
|
|
5736
|
+
0%, 100% { transform: translateY(0px) rotate(0deg); }
|
|
5737
|
+
50% { transform: translateY(-15px) rotate(0.3deg); }
|
|
5738
|
+
}
|
|
5739
|
+
.dsm-float-slow {
|
|
5740
|
+
animation: dsmFloatSlow 6s ease-in-out infinite;
|
|
5741
|
+
}
|
|
5742
|
+
.dsm-float-medium {
|
|
5743
|
+
animation: dsmFloatMedium 7s ease-in-out infinite;
|
|
5744
|
+
}
|
|
5745
|
+
.dsm-float-fast {
|
|
5746
|
+
animation: dsmFloatFast 5s ease-in-out infinite;
|
|
5747
|
+
}
|
|
5748
|
+
|
|
5749
|
+
/* Mobile layout (default) */
|
|
5750
|
+
.banner2-image-container {
|
|
5751
|
+
position: relative;
|
|
5752
|
+
width: 100%;
|
|
5753
|
+
min-height: 280px;
|
|
5754
|
+
margin-top: 1.5rem;
|
|
5755
|
+
}
|
|
5756
|
+
.banner2-img-0 {
|
|
5757
|
+
left: 0%;
|
|
5758
|
+
top: 25%;
|
|
5759
|
+
width: 50%;
|
|
5760
|
+
z-index: 10;
|
|
5761
|
+
}
|
|
5762
|
+
.banner2-img-1 {
|
|
5763
|
+
left: 15%;
|
|
5764
|
+
top: 5%;
|
|
5765
|
+
width: 60%;
|
|
5766
|
+
z-index: 20;
|
|
5767
|
+
}
|
|
5768
|
+
.banner2-img-2 {
|
|
5769
|
+
left: 40%;
|
|
5770
|
+
top: 40%;
|
|
5771
|
+
width: 50%;
|
|
5772
|
+
z-index: 30;
|
|
5773
|
+
}
|
|
5774
|
+
|
|
5775
|
+
/* Desktop layout (min-width: 1024px) */
|
|
5776
|
+
@media (min-width: 1024px) {
|
|
5777
|
+
.banner2-image-container {
|
|
5778
|
+
min-height: 480px;
|
|
5779
|
+
margin-top: 0;
|
|
5780
|
+
}
|
|
5781
|
+
.banner2-img-0 {
|
|
5782
|
+
left: 0%;
|
|
5783
|
+
top: 30%;
|
|
5784
|
+
width: 50%;
|
|
5785
|
+
}
|
|
5786
|
+
.banner2-img-1 {
|
|
5787
|
+
left: 15%;
|
|
5788
|
+
top: 10%;
|
|
5789
|
+
width: 65%;
|
|
5790
|
+
}
|
|
5791
|
+
.banner2-img-2 {
|
|
5792
|
+
left: 40%;
|
|
5793
|
+
top: 45%;
|
|
5794
|
+
width: 55%;
|
|
5795
|
+
}
|
|
5796
|
+
}
|
|
5797
|
+
` }),
|
|
5798
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "absolute inset-0 overflow-hidden pointer-events-none", children: [
|
|
5799
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
5800
|
+
"div",
|
|
5801
|
+
{
|
|
5802
|
+
className: "absolute top-0 right-0 w-96 h-96 rounded-full opacity-20 blur-3xl",
|
|
5803
|
+
style: {
|
|
5804
|
+
background: isDarkMode ? "#1086CD" : "#1E3888"
|
|
5805
|
+
}
|
|
5806
|
+
}
|
|
5807
|
+
),
|
|
5808
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
5809
|
+
"div",
|
|
5810
|
+
{
|
|
5811
|
+
className: "absolute bottom-0 left-0 w-96 h-96 rounded-full opacity-10 blur-3xl",
|
|
5812
|
+
style: {
|
|
5813
|
+
background: isDarkMode ? "#1E3888" : "#1086CD"
|
|
5814
|
+
}
|
|
5815
|
+
}
|
|
5816
|
+
)
|
|
5817
|
+
] }),
|
|
5818
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "relative max-w-7xl mx-auto px-6 sm:px-8 lg:px-12", children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-col lg:flex-row items-center justify-between gap-8 lg:gap-12", children: [
|
|
5819
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "w-full lg:w-1/2 lg:pr-8 lg:self-start lg:pt-8", children: [
|
|
5820
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
5821
|
+
"div",
|
|
5822
|
+
{
|
|
5823
|
+
className: "leading-tight mb-6",
|
|
5824
|
+
style: {
|
|
5825
|
+
color: isDarkMode ? "#F8FAFC" : "#1E3888"
|
|
5826
|
+
},
|
|
5827
|
+
dangerouslySetInnerHTML: { __html: bannerData.name }
|
|
5828
|
+
}
|
|
5829
|
+
),
|
|
5830
|
+
bannerData.description && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
5831
|
+
"div",
|
|
5832
|
+
{
|
|
5833
|
+
className: "text-lg sm:text-xl leading-relaxed mb-8",
|
|
5834
|
+
style: {
|
|
5835
|
+
color: isDarkMode ? "#CBD5E1" : "#475569"
|
|
5836
|
+
},
|
|
5837
|
+
dangerouslySetInnerHTML: { __html: bannerData.description }
|
|
5838
|
+
}
|
|
5839
|
+
)
|
|
5840
|
+
] }),
|
|
5841
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-full lg:w-1/2 py-4 md:py-4 lg:py-5", children: renderImages() })
|
|
5842
|
+
] }) }),
|
|
5843
|
+
isLightboxOpen && createPortal(
|
|
5844
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
5845
|
+
"div",
|
|
5846
|
+
{
|
|
5847
|
+
className: "fixed inset-0 flex items-center justify-center p-4",
|
|
5848
|
+
style: {
|
|
5849
|
+
background: "rgba(0, 0, 0, 0.95)",
|
|
5850
|
+
backdropFilter: "blur(10px)",
|
|
5851
|
+
zIndex: 99999
|
|
5852
|
+
},
|
|
5853
|
+
onClick: () => setIsLightboxOpen(false),
|
|
5854
|
+
children: [
|
|
5855
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
5856
|
+
"button",
|
|
5857
|
+
{
|
|
5858
|
+
onClick: () => setIsLightboxOpen(false),
|
|
5859
|
+
className: "absolute top-4 right-4 p-3 transition-all duration-300 hover:scale-110",
|
|
5860
|
+
style: {
|
|
5861
|
+
background: "transparent",
|
|
5862
|
+
border: "none",
|
|
5863
|
+
cursor: "pointer",
|
|
5864
|
+
zIndex: 1e5
|
|
5865
|
+
},
|
|
5866
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
5867
|
+
"svg",
|
|
5868
|
+
{
|
|
5869
|
+
className: "w-6 h-6",
|
|
5870
|
+
fill: "none",
|
|
5871
|
+
stroke: "white",
|
|
5872
|
+
viewBox: "0 0 24 24",
|
|
5873
|
+
style: { filter: "drop-shadow(0 2px 4px rgba(0, 0, 0, 0.5))" },
|
|
5874
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M6 18L18 6M6 6l12 12" })
|
|
5875
|
+
}
|
|
5876
|
+
)
|
|
5877
|
+
}
|
|
5878
|
+
),
|
|
5879
|
+
displayImages.length > 1 && /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
|
|
5880
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
5881
|
+
"button",
|
|
5882
|
+
{
|
|
5883
|
+
onClick: (e) => {
|
|
5884
|
+
e.stopPropagation();
|
|
5885
|
+
setActiveSlide((prev) => (prev - 1 + displayImages.length) % displayImages.length);
|
|
5886
|
+
},
|
|
5887
|
+
className: "absolute left-4 p-3 transition-all duration-300 hover:scale-110",
|
|
5888
|
+
style: {
|
|
5889
|
+
background: "transparent",
|
|
5890
|
+
border: "none",
|
|
5891
|
+
cursor: "pointer",
|
|
5892
|
+
zIndex: 1e5
|
|
5893
|
+
},
|
|
5894
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
5895
|
+
"svg",
|
|
5896
|
+
{
|
|
5897
|
+
className: "w-6 h-6",
|
|
5898
|
+
fill: "none",
|
|
5899
|
+
stroke: "white",
|
|
5900
|
+
viewBox: "0 0 24 24",
|
|
5901
|
+
style: { filter: "drop-shadow(0 2px 4px rgba(0, 0, 0, 0.5))" },
|
|
5902
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M15 19l-7-7 7-7" })
|
|
5903
|
+
}
|
|
5904
|
+
)
|
|
5905
|
+
}
|
|
5906
|
+
),
|
|
5907
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
5908
|
+
"button",
|
|
5909
|
+
{
|
|
5910
|
+
onClick: (e) => {
|
|
5911
|
+
e.stopPropagation();
|
|
5912
|
+
setActiveSlide((prev) => (prev + 1) % displayImages.length);
|
|
5913
|
+
},
|
|
5914
|
+
className: "absolute right-4 p-3 transition-all duration-300 hover:scale-110",
|
|
5915
|
+
style: {
|
|
5916
|
+
background: "transparent",
|
|
5917
|
+
border: "none",
|
|
5918
|
+
cursor: "pointer",
|
|
5919
|
+
zIndex: 1e5
|
|
5920
|
+
},
|
|
5921
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
5922
|
+
"svg",
|
|
5923
|
+
{
|
|
5924
|
+
className: "w-6 h-6",
|
|
5925
|
+
fill: "none",
|
|
5926
|
+
stroke: "white",
|
|
5927
|
+
viewBox: "0 0 24 24",
|
|
5928
|
+
style: { filter: "drop-shadow(0 2px 4px rgba(0, 0, 0, 0.5))" },
|
|
5929
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M9 5l7 7-7 7" })
|
|
5930
|
+
}
|
|
5931
|
+
)
|
|
5932
|
+
}
|
|
5933
|
+
)
|
|
5934
|
+
] }),
|
|
5935
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
5936
|
+
"div",
|
|
5937
|
+
{
|
|
5938
|
+
className: "relative max-w-7xl max-h-full",
|
|
5939
|
+
onClick: (e) => e.stopPropagation(),
|
|
5940
|
+
children: [
|
|
5941
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
5942
|
+
"img",
|
|
5943
|
+
{
|
|
5944
|
+
src: ((_b = displayImages[activeSlide]) == null ? void 0 : _b.url) || defaultImage,
|
|
5945
|
+
alt: bannerData.name,
|
|
5946
|
+
className: "max-w-full max-h-[90vh] object-contain rounded",
|
|
5947
|
+
onError: (e) => {
|
|
5948
|
+
e.target.src = defaultImage;
|
|
5949
|
+
}
|
|
5950
|
+
}
|
|
5951
|
+
),
|
|
5952
|
+
displayImages.length > 1 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute bottom-4 left-1/2 transform -translate-x-1/2 flex gap-2", children: displayImages.map((_, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
5953
|
+
"button",
|
|
5954
|
+
{
|
|
5955
|
+
onClick: (e) => {
|
|
5956
|
+
e.stopPropagation();
|
|
5957
|
+
setActiveSlide(index2);
|
|
5958
|
+
},
|
|
5959
|
+
className: "w-2 h-2 rounded-full transition-all duration-300",
|
|
5960
|
+
style: {
|
|
5961
|
+
background: activeSlide === index2 ? "white" : "rgba(255, 255, 255, 0.5)",
|
|
5962
|
+
width: activeSlide === index2 ? "24px" : "8px"
|
|
5963
|
+
}
|
|
5964
|
+
},
|
|
5965
|
+
index2
|
|
5966
|
+
)) })
|
|
5967
|
+
]
|
|
5968
|
+
}
|
|
5969
|
+
)
|
|
5970
|
+
]
|
|
5971
|
+
}
|
|
5972
|
+
),
|
|
5973
|
+
document.body
|
|
5974
|
+
)
|
|
5975
|
+
] });
|
|
5976
|
+
};
|
|
5346
5977
|
const index = {
|
|
5347
5978
|
AboutCompanySection,
|
|
5979
|
+
AboutCompanySection_2,
|
|
5980
|
+
HeroBannerSection_2,
|
|
5981
|
+
PartnerAutoSection_1,
|
|
5982
|
+
PartnersGridSection_3,
|
|
5348
5983
|
CompanyValues,
|
|
5349
5984
|
TimelineSection,
|
|
5350
5985
|
PartnerCard,
|
|
@@ -5373,6 +6008,7 @@ const index = {
|
|
|
5373
6008
|
};
|
|
5374
6009
|
export {
|
|
5375
6010
|
AboutCompanySection,
|
|
6011
|
+
AboutCompanySection_2,
|
|
5376
6012
|
CompanyValues,
|
|
5377
6013
|
ContactFormSection,
|
|
5378
6014
|
ContactInfoSection,
|
|
@@ -5382,15 +6018,18 @@ export {
|
|
|
5382
6018
|
DiagramSection2,
|
|
5383
6019
|
FaqSection,
|
|
5384
6020
|
HeroBannerSection,
|
|
6021
|
+
HeroBannerSection_2,
|
|
5385
6022
|
MilestoneSection,
|
|
5386
6023
|
PageChildrenSelectSection,
|
|
5387
6024
|
PageChildrenSelectSection1,
|
|
5388
6025
|
PageChildrenSelectSection2,
|
|
5389
6026
|
PageHighlightSection,
|
|
6027
|
+
PartnerAutoSection_1,
|
|
5390
6028
|
PartnerCard,
|
|
5391
6029
|
PartnerListCard$1 as PartnerListCard,
|
|
5392
6030
|
PartnerListSection,
|
|
5393
6031
|
PartnerListSection_2,
|
|
6032
|
+
PartnersGridSection_3,
|
|
5394
6033
|
PartnersSection$1 as PartnersSection,
|
|
5395
6034
|
PartnersSection as PartnersSection_2,
|
|
5396
6035
|
ProductListSection,
|