nvis-fe-cms-libs 1.1.19 → 1.1.21

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.
@@ -49,7 +49,7 @@ var __async = (__this, __arguments, generator) => {
49
49
  step((generator = generator.apply(__this, __arguments)).next());
50
50
  });
51
51
  };
52
- import require$$0, { useRef, useState, useEffect, useMemo, forwardRef, createElement } from "react";
52
+ import require$$0, { useRef, useState, useEffect, useMemo, forwardRef, createElement, createContext, useContext, useCallback } from "react";
53
53
  var jsxRuntime = { exports: {} };
54
54
  var reactJsxRuntime_production = {};
55
55
  /**
@@ -1744,31 +1744,42 @@ const createLucideIcon = (iconName, iconNode) => {
1744
1744
  * This source code is licensed under the ISC license.
1745
1745
  * See the LICENSE file in the root directory of this source tree.
1746
1746
  */
1747
- const __iconNode$z = [
1747
+ const __iconNode$B = [
1748
+ ["path", { d: "M5 12h14", key: "1ays0h" }],
1749
+ ["path", { d: "m12 5 7 7-7 7", key: "xquz4c" }]
1750
+ ];
1751
+ const ArrowRight = createLucideIcon("arrow-right", __iconNode$B);
1752
+ /**
1753
+ * @license lucide-react v0.536.0 - ISC
1754
+ *
1755
+ * This source code is licensed under the ISC license.
1756
+ * See the LICENSE file in the root directory of this source tree.
1757
+ */
1758
+ const __iconNode$A = [
1748
1759
  ["path", { d: "M2 4v16", key: "vw9hq8" }],
1749
1760
  ["path", { d: "M2 8h18a2 2 0 0 1 2 2v10", key: "1dgv2r" }],
1750
1761
  ["path", { d: "M2 17h20", key: "18nfp3" }],
1751
1762
  ["path", { d: "M6 8v9", key: "1yriud" }]
1752
1763
  ];
1753
- const Bed = createLucideIcon("bed", __iconNode$z);
1764
+ const Bed = createLucideIcon("bed", __iconNode$A);
1754
1765
  /**
1755
1766
  * @license lucide-react v0.536.0 - ISC
1756
1767
  *
1757
1768
  * This source code is licensed under the ISC license.
1758
1769
  * See the LICENSE file in the root directory of this source tree.
1759
1770
  */
1760
- const __iconNode$y = [
1771
+ const __iconNode$z = [
1761
1772
  ["path", { d: "M16 20V4a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16", key: "jecpp" }],
1762
1773
  ["rect", { width: "20", height: "14", x: "2", y: "6", rx: "2", key: "i6l2r4" }]
1763
1774
  ];
1764
- const Briefcase = createLucideIcon("briefcase", __iconNode$y);
1775
+ const Briefcase = createLucideIcon("briefcase", __iconNode$z);
1765
1776
  /**
1766
1777
  * @license lucide-react v0.536.0 - ISC
1767
1778
  *
1768
1779
  * This source code is licensed under the ISC license.
1769
1780
  * See the LICENSE file in the root directory of this source tree.
1770
1781
  */
1771
- const __iconNode$x = [
1782
+ const __iconNode$y = [
1772
1783
  ["path", { d: "M6 22V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v18Z", key: "1b4qmf" }],
1773
1784
  ["path", { d: "M6 12H4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h2", key: "i71pzd" }],
1774
1785
  ["path", { d: "M18 9h2a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2h-2", key: "10jefs" }],
@@ -1777,14 +1788,14 @@ const __iconNode$x = [
1777
1788
  ["path", { d: "M10 14h4", key: "kelpxr" }],
1778
1789
  ["path", { d: "M10 18h4", key: "1ulq68" }]
1779
1790
  ];
1780
- const Building2 = createLucideIcon("building-2", __iconNode$x);
1791
+ const Building2 = createLucideIcon("building-2", __iconNode$y);
1781
1792
  /**
1782
1793
  * @license lucide-react v0.536.0 - ISC
1783
1794
  *
1784
1795
  * This source code is licensed under the ISC license.
1785
1796
  * See the LICENSE file in the root directory of this source tree.
1786
1797
  */
1787
- const __iconNode$w = [
1798
+ const __iconNode$x = [
1788
1799
  ["rect", { width: "16", height: "20", x: "4", y: "2", rx: "2", ry: "2", key: "76otgf" }],
1789
1800
  ["path", { d: "M9 22v-4h6v4", key: "r93iot" }],
1790
1801
  ["path", { d: "M8 6h.01", key: "1dz90k" }],
@@ -1797,14 +1808,14 @@ const __iconNode$w = [
1797
1808
  ["path", { d: "M8 10h.01", key: "19clt8" }],
1798
1809
  ["path", { d: "M8 14h.01", key: "6423bh" }]
1799
1810
  ];
1800
- const Building = createLucideIcon("building", __iconNode$w);
1811
+ const Building = createLucideIcon("building", __iconNode$x);
1801
1812
  /**
1802
1813
  * @license lucide-react v0.536.0 - ISC
1803
1814
  *
1804
1815
  * This source code is licensed under the ISC license.
1805
1816
  * See the LICENSE file in the root directory of this source tree.
1806
1817
  */
1807
- const __iconNode$v = [
1818
+ const __iconNode$w = [
1808
1819
  ["rect", { width: "16", height: "20", x: "4", y: "2", rx: "2", key: "1nb95v" }],
1809
1820
  ["line", { x1: "8", x2: "16", y1: "6", y2: "6", key: "x4nwl0" }],
1810
1821
  ["line", { x1: "16", x2: "16", y1: "14", y2: "18", key: "wjye3r" }],
@@ -1816,15 +1827,23 @@ const __iconNode$v = [
1816
1827
  ["path", { d: "M12 18h.01", key: "mhygvu" }],
1817
1828
  ["path", { d: "M8 18h.01", key: "lrp35t" }]
1818
1829
  ];
1819
- const Calculator = createLucideIcon("calculator", __iconNode$v);
1830
+ const Calculator = createLucideIcon("calculator", __iconNode$w);
1831
+ /**
1832
+ * @license lucide-react v0.536.0 - ISC
1833
+ *
1834
+ * This source code is licensed under the ISC license.
1835
+ * See the LICENSE file in the root directory of this source tree.
1836
+ */
1837
+ const __iconNode$v = [["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }]];
1838
+ const ChevronDown = createLucideIcon("chevron-down", __iconNode$v);
1820
1839
  /**
1821
1840
  * @license lucide-react v0.536.0 - ISC
1822
1841
  *
1823
1842
  * This source code is licensed under the ISC license.
1824
1843
  * See the LICENSE file in the root directory of this source tree.
1825
1844
  */
1826
- const __iconNode$u = [["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }]];
1827
- const ChevronDown = createLucideIcon("chevron-down", __iconNode$u);
1845
+ const __iconNode$u = [["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]];
1846
+ const ChevronRight = createLucideIcon("chevron-right", __iconNode$u);
1828
1847
  /**
1829
1848
  * @license lucide-react v0.536.0 - ISC
1830
1849
  *
@@ -4557,7 +4576,7 @@ const PageHighlightSection = ({ data, t, isDarkMode, imageBaseUrl = "" }) => {
4557
4576
  }, [highlightData.length]);
4558
4577
  const handleNavigate = (slug) => {
4559
4578
  if (slug) {
4560
- window.open(slug, "_blank");
4579
+ window.location.href = slug;
4561
4580
  }
4562
4581
  };
4563
4582
  const gradientColors = [
@@ -4603,8 +4622,8 @@ const PageHighlightSection = ({ data, t, isDarkMode, imageBaseUrl = "" }) => {
4603
4622
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "absolute top-8 left-8", children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: `inline-block bg-gradient-to-r ${color} text-white px-6 py-3 rounded-full text-sm font-bold shadow-xl`, children: item.tag }) })
4604
4623
  ] }),
4605
4624
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "p-5 lg:p-8 flex flex-col justify-center", children: [
4606
- /* @__PURE__ */ jsxRuntimeExports.jsx("h2", { className: `text-3xl lg:text-4xl font-black mb-3 bg-gradient-to-r ${color} bg-clip-text text-transparent`, children: item.title }),
4607
- /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: `${isDarkMode ? "text-gray-300" : "text-gray-600"} text-sm leading-relaxed mb-5`, children: item.description }),
4625
+ /* @__PURE__ */ jsxRuntimeExports.jsx("h1", { className: `text-3xl lg:text-4xl font-black mb-3 bg-gradient-to-r ${color} bg-clip-text text-transparent`, children: item.title }),
4626
+ /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: `${isDarkMode ? "text-gray-300" : "text-gray-600"} text-base leading-relaxed mb-5`, children: item.description }),
4608
4627
  item.features && item.features.length > 0 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "grid grid-cols-1 sm:grid-cols-2 gap-2 mb-6", children: item.features.map((feature, idx) => /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-start gap-2 group", children: [
4609
4628
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: `mt-0.5 w-4 h-4 rounded-full bg-gradient-to-r ${color} flex items-center justify-center flex-shrink-0`, children: /* @__PURE__ */ jsxRuntimeExports.jsx("svg", { className: "w-2.5 h-2.5 text-white", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: /* @__PURE__ */ jsxRuntimeExports.jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 3, d: "M5 13l4 4L19 7" }) }) }),
4610
4629
  /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: `${isDarkMode ? "text-gray-300 group-hover:text-white" : "text-gray-700 group-hover:text-gray-900"} font-medium text-xs transition-colors`, children: feature })
@@ -4665,6 +4684,615 @@ const PageHighlightSection = ({ data, t, isDarkMode, imageBaseUrl = "" }) => {
4665
4684
  ] })
4666
4685
  ] });
4667
4686
  };
4687
+ const PageChildrenSelectSection = ({ data, isDarkMode, section, imageBaseUrl = "" }) => {
4688
+ var _a;
4689
+ const pages = ((_a = data == null ? void 0 : data.sectionDataBindingItems) == null ? void 0 : _a.map((item) => item.data).filter(Boolean)) || [];
4690
+ const sectionTitle = (section == null ? void 0 : section.title) || "";
4691
+ const sectionDescription = (section == null ? void 0 : section.description) || "";
4692
+ if (!pages || pages.length === 0) {
4693
+ return null;
4694
+ }
4695
+ const handleNavigate = (slug) => {
4696
+ window.location.href = slug;
4697
+ };
4698
+ const getImageUrl = (url) => {
4699
+ if (!url) return "";
4700
+ if (url.startsWith("http://") || url.startsWith("https://")) return url;
4701
+ return `${imageBaseUrl}${url}`;
4702
+ };
4703
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("section", { style: {
4704
+ padding: "80px 16px",
4705
+ backgroundColor: isDarkMode ? "#111827" : "#f5f5f5",
4706
+ transition: "background-color 0.3s"
4707
+ }, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: {
4708
+ maxWidth: "1400px",
4709
+ margin: "0 auto"
4710
+ }, children: [
4711
+ sectionTitle && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: {
4712
+ marginBottom: "50px",
4713
+ textAlign: "center"
4714
+ }, children: [
4715
+ /* @__PURE__ */ jsxRuntimeExports.jsx("h2", { style: {
4716
+ fontSize: "36px",
4717
+ fontWeight: "700",
4718
+ marginBottom: "16px",
4719
+ color: isDarkMode ? "#f9fafb" : "#4b5563"
4720
+ }, children: sectionTitle }),
4721
+ sectionDescription && /* @__PURE__ */ jsxRuntimeExports.jsx("p", { style: {
4722
+ fontSize: "16px",
4723
+ lineHeight: "1.6",
4724
+ color: isDarkMode ? "#d1d5db" : "#6b7280",
4725
+ maxWidth: "900px",
4726
+ margin: "0 auto"
4727
+ }, children: sectionDescription })
4728
+ ] }),
4729
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: {
4730
+ display: "grid",
4731
+ gridTemplateColumns: "repeat(auto-fit, minmax(220px, 1fr))",
4732
+ gap: "24px"
4733
+ }, children: pages.map((page) => {
4734
+ const iconUrl = getImageUrl(page.icon);
4735
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(
4736
+ "div",
4737
+ {
4738
+ onClick: () => handleNavigate(page.slug),
4739
+ style: {
4740
+ backgroundColor: isDarkMode ? "#1f2937" : "#ffffff",
4741
+ borderRadius: "12px",
4742
+ padding: "32px 20px",
4743
+ cursor: "pointer",
4744
+ transition: "all 0.3s",
4745
+ border: `1px solid ${isDarkMode ? "#374151" : "#e5e7eb"}`,
4746
+ boxShadow: isDarkMode ? "0 4px 6px -1px rgba(0, 0, 0, 0.3)" : "0 4px 6px -1px rgba(0, 0, 0, 0.1)",
4747
+ display: "flex",
4748
+ flexDirection: "column",
4749
+ alignItems: "center",
4750
+ textAlign: "center",
4751
+ gap: "16px"
4752
+ },
4753
+ onMouseEnter: (e) => {
4754
+ e.currentTarget.style.transform = "translateY(-8px)";
4755
+ e.currentTarget.style.boxShadow = isDarkMode ? "0 20px 25px -5px rgba(0, 0, 0, 0.5)" : "0 20px 25px -5px rgba(0, 0, 0, 0.15)";
4756
+ e.currentTarget.style.borderColor = isDarkMode ? "#f97316" : "#f97316";
4757
+ },
4758
+ onMouseLeave: (e) => {
4759
+ e.currentTarget.style.transform = "translateY(0)";
4760
+ e.currentTarget.style.boxShadow = isDarkMode ? "0 4px 6px -1px rgba(0, 0, 0, 0.3)" : "0 4px 6px -1px rgba(0, 0, 0, 0.1)";
4761
+ e.currentTarget.style.borderColor = isDarkMode ? "#374151" : "#e5e7eb";
4762
+ },
4763
+ children: [
4764
+ iconUrl && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: {
4765
+ width: "80px",
4766
+ height: "80px",
4767
+ display: "flex",
4768
+ alignItems: "center",
4769
+ justifyContent: "center"
4770
+ }, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
4771
+ "img",
4772
+ {
4773
+ src: iconUrl,
4774
+ alt: page.title,
4775
+ style: {
4776
+ width: "100%",
4777
+ height: "100%",
4778
+ objectFit: "contain"
4779
+ }
4780
+ }
4781
+ ) }),
4782
+ /* @__PURE__ */ jsxRuntimeExports.jsx("h3", { style: {
4783
+ fontSize: "16px",
4784
+ fontWeight: "600",
4785
+ color: isDarkMode ? "#f9fafb" : "#4b5563",
4786
+ margin: 0,
4787
+ lineHeight: "1.4"
4788
+ }, children: page.title })
4789
+ ]
4790
+ },
4791
+ page.id
4792
+ );
4793
+ }) })
4794
+ ] }) });
4795
+ };
4796
+ const PageChildrenSelectSection1 = ({ data, isDarkMode, section, imageBaseUrl = "" }) => {
4797
+ var _a;
4798
+ const pages = ((_a = data == null ? void 0 : data.sectionDataBindingItems) == null ? void 0 : _a.map((item) => item.data).filter(Boolean)) || [];
4799
+ const sectionTitle = (section == null ? void 0 : section.title) || "";
4800
+ if (!pages || pages.length === 0) {
4801
+ return null;
4802
+ }
4803
+ const handleNavigate = (slug) => {
4804
+ window.location.href = slug;
4805
+ };
4806
+ const getImageUrl = (url) => {
4807
+ if (!url) return "";
4808
+ if (url.startsWith("http://") || url.startsWith("https://")) return url;
4809
+ return `${imageBaseUrl}${url}`;
4810
+ };
4811
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("section", { style: {
4812
+ padding: "60px 16px",
4813
+ backgroundColor: isDarkMode ? "#111827" : "#ffffff",
4814
+ transition: "background-color 0.3s"
4815
+ }, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: {
4816
+ maxWidth: "1280px",
4817
+ margin: "0 auto"
4818
+ }, children: [
4819
+ sectionTitle && /* @__PURE__ */ jsxRuntimeExports.jsx("h2", { style: {
4820
+ fontSize: "28px",
4821
+ fontWeight: "700",
4822
+ marginBottom: "40px",
4823
+ color: isDarkMode ? "#f9fafb" : "#1e40af",
4824
+ textTransform: "uppercase",
4825
+ letterSpacing: "0.5px"
4826
+ }, children: sectionTitle }),
4827
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: {
4828
+ display: "flex",
4829
+ flexDirection: "column",
4830
+ gap: "24px"
4831
+ }, children: pages.map((page) => {
4832
+ var _a2, _b;
4833
+ const mainImage = ((_b = (_a2 = page.pageImages) == null ? void 0 : _a2.find((img) => img.isMain)) == null ? void 0 : _b.url) || page.icon;
4834
+ const imageUrl = getImageUrl(mainImage);
4835
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(
4836
+ "div",
4837
+ {
4838
+ onClick: () => handleNavigate(page.slug),
4839
+ style: {
4840
+ display: "flex",
4841
+ gap: "20px",
4842
+ backgroundColor: isDarkMode ? "#1f2937" : "#ffffff",
4843
+ borderRadius: "8px",
4844
+ overflow: "hidden",
4845
+ cursor: "pointer",
4846
+ transition: "all 0.2s",
4847
+ border: `1px solid ${isDarkMode ? "#374151" : "#e5e7eb"}`,
4848
+ padding: "16px"
4849
+ },
4850
+ onMouseEnter: (e) => {
4851
+ e.currentTarget.style.backgroundColor = isDarkMode ? "#374151" : "#f9fafb";
4852
+ },
4853
+ onMouseLeave: (e) => {
4854
+ e.currentTarget.style.backgroundColor = isDarkMode ? "#1f2937" : "#ffffff";
4855
+ },
4856
+ children: [
4857
+ imageUrl && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: {
4858
+ width: "200px",
4859
+ height: "140px",
4860
+ flexShrink: 0,
4861
+ overflow: "hidden",
4862
+ borderRadius: "6px"
4863
+ }, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
4864
+ "img",
4865
+ {
4866
+ src: imageUrl,
4867
+ alt: page.title,
4868
+ style: {
4869
+ width: "100%",
4870
+ height: "100%",
4871
+ objectFit: "cover"
4872
+ }
4873
+ }
4874
+ ) }),
4875
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: {
4876
+ flex: 1,
4877
+ display: "flex",
4878
+ flexDirection: "column",
4879
+ justifyContent: "center"
4880
+ }, children: [
4881
+ page.tagKeys && page.tagKeys.length > 0 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: {
4882
+ fontSize: "12px",
4883
+ fontWeight: "600",
4884
+ color: isDarkMode ? "#60a5fa" : "#2563eb",
4885
+ marginBottom: "8px",
4886
+ textTransform: "uppercase",
4887
+ letterSpacing: "0.5px"
4888
+ }, children: page.tagKeys[0].key }),
4889
+ /* @__PURE__ */ jsxRuntimeExports.jsx("h3", { style: {
4890
+ fontSize: "18px",
4891
+ fontWeight: "700",
4892
+ marginBottom: "8px",
4893
+ color: isDarkMode ? "#f9fafb" : "#1f2937",
4894
+ lineHeight: "1.4"
4895
+ }, children: page.title }),
4896
+ page.description && /* @__PURE__ */ jsxRuntimeExports.jsx("p", { style: {
4897
+ fontSize: "14px",
4898
+ lineHeight: "1.6",
4899
+ color: isDarkMode ? "#d1d5db" : "#6b7280",
4900
+ margin: 0
4901
+ }, children: page.description })
4902
+ ] }),
4903
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: {
4904
+ display: "flex",
4905
+ alignItems: "center",
4906
+ paddingLeft: "16px"
4907
+ }, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
4908
+ ChevronRight,
4909
+ {
4910
+ size: 20,
4911
+ style: {
4912
+ color: isDarkMode ? "#9ca3af" : "#d1d5db",
4913
+ transition: "color 0.2s"
4914
+ }
4915
+ }
4916
+ ) })
4917
+ ]
4918
+ },
4919
+ page.id
4920
+ );
4921
+ }) })
4922
+ ] }) });
4923
+ };
4924
+ const warn = (i18n, code, msg, rest) => {
4925
+ var _a, _b, _c, _d;
4926
+ const args = [msg, __spreadValues({
4927
+ code
4928
+ }, rest || {})];
4929
+ if ((_b = (_a = i18n == null ? void 0 : i18n.services) == null ? void 0 : _a.logger) == null ? void 0 : _b.forward) {
4930
+ return i18n.services.logger.forward(args, "warn", "react-i18next::", true);
4931
+ }
4932
+ if (isString(args[0])) args[0] = `react-i18next:: ${args[0]}`;
4933
+ if ((_d = (_c = i18n == null ? void 0 : i18n.services) == null ? void 0 : _c.logger) == null ? void 0 : _d.warn) {
4934
+ i18n.services.logger.warn(...args);
4935
+ } else if (console == null ? void 0 : console.warn) {
4936
+ console.warn(...args);
4937
+ }
4938
+ };
4939
+ const alreadyWarned = {};
4940
+ const warnOnce = (i18n, code, msg, rest) => {
4941
+ if (isString(msg) && alreadyWarned[msg]) return;
4942
+ if (isString(msg)) alreadyWarned[msg] = /* @__PURE__ */ new Date();
4943
+ warn(i18n, code, msg, rest);
4944
+ };
4945
+ const loadedClb = (i18n, cb) => () => {
4946
+ if (i18n.isInitialized) {
4947
+ cb();
4948
+ } else {
4949
+ const initialized = () => {
4950
+ setTimeout(() => {
4951
+ i18n.off("initialized", initialized);
4952
+ }, 0);
4953
+ cb();
4954
+ };
4955
+ i18n.on("initialized", initialized);
4956
+ }
4957
+ };
4958
+ const loadNamespaces = (i18n, ns, cb) => {
4959
+ i18n.loadNamespaces(ns, loadedClb(i18n, cb));
4960
+ };
4961
+ const loadLanguages = (i18n, lng, ns, cb) => {
4962
+ if (isString(ns)) ns = [ns];
4963
+ if (i18n.options.preload && i18n.options.preload.indexOf(lng) > -1) return loadNamespaces(i18n, ns, cb);
4964
+ ns.forEach((n) => {
4965
+ if (i18n.options.ns.indexOf(n) < 0) i18n.options.ns.push(n);
4966
+ });
4967
+ i18n.loadLanguages(lng, loadedClb(i18n, cb));
4968
+ };
4969
+ const hasLoadedNamespace = (ns, i18n, options = {}) => {
4970
+ if (!i18n.languages || !i18n.languages.length) {
4971
+ warnOnce(i18n, "NO_LANGUAGES", "i18n.languages were undefined or empty", {
4972
+ languages: i18n.languages
4973
+ });
4974
+ return true;
4975
+ }
4976
+ return i18n.hasLoadedNamespace(ns, {
4977
+ lng: options.lng,
4978
+ precheck: (i18nInstance2, loadNotPending) => {
4979
+ if (options.bindI18n && options.bindI18n.indexOf("languageChanging") > -1 && i18nInstance2.services.backendConnector.backend && i18nInstance2.isLanguageChangingTo && !loadNotPending(i18nInstance2.isLanguageChangingTo, ns)) return false;
4980
+ }
4981
+ });
4982
+ };
4983
+ const isString = (obj) => typeof obj === "string";
4984
+ const isObject = (obj) => typeof obj === "object" && obj !== null;
4985
+ const matchHtmlEntity = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g;
4986
+ const htmlEntities = {
4987
+ "&amp;": "&",
4988
+ "&#38;": "&",
4989
+ "&lt;": "<",
4990
+ "&#60;": "<",
4991
+ "&gt;": ">",
4992
+ "&#62;": ">",
4993
+ "&apos;": "'",
4994
+ "&#39;": "'",
4995
+ "&quot;": '"',
4996
+ "&#34;": '"',
4997
+ "&nbsp;": " ",
4998
+ "&#160;": " ",
4999
+ "&copy;": "©",
5000
+ "&#169;": "©",
5001
+ "&reg;": "®",
5002
+ "&#174;": "®",
5003
+ "&hellip;": "…",
5004
+ "&#8230;": "…",
5005
+ "&#x2F;": "/",
5006
+ "&#47;": "/"
5007
+ };
5008
+ const unescapeHtmlEntity = (m) => htmlEntities[m];
5009
+ const unescape = (text) => text.replace(matchHtmlEntity, unescapeHtmlEntity);
5010
+ let defaultOptions = {
5011
+ bindI18n: "languageChanged",
5012
+ bindI18nStore: "",
5013
+ transEmptyNodeValue: "",
5014
+ transSupportBasicHtmlNodes: true,
5015
+ transWrapTextNodes: "",
5016
+ transKeepBasicHtmlNodesFor: ["br", "strong", "i", "p"],
5017
+ useSuspense: true,
5018
+ unescape
5019
+ };
5020
+ const getDefaults = () => defaultOptions;
5021
+ let i18nInstance;
5022
+ const getI18n = () => i18nInstance;
5023
+ const I18nContext = createContext();
5024
+ class ReportNamespaces {
5025
+ constructor() {
5026
+ this.usedNamespaces = {};
5027
+ }
5028
+ addUsedNamespaces(namespaces) {
5029
+ namespaces.forEach((ns) => {
5030
+ if (!this.usedNamespaces[ns]) this.usedNamespaces[ns] = true;
5031
+ });
5032
+ }
5033
+ getUsedNamespaces() {
5034
+ return Object.keys(this.usedNamespaces);
5035
+ }
5036
+ }
5037
+ const usePrevious = (value, ignore) => {
5038
+ const ref = useRef();
5039
+ useEffect(() => {
5040
+ ref.current = value;
5041
+ }, [value, ignore]);
5042
+ return ref.current;
5043
+ };
5044
+ const alwaysNewT = (i18n, language, namespace, keyPrefix) => i18n.getFixedT(language, namespace, keyPrefix);
5045
+ const useMemoizedT = (i18n, language, namespace, keyPrefix) => useCallback(alwaysNewT(i18n, language, namespace, keyPrefix), [i18n, language, namespace, keyPrefix]);
5046
+ const useTranslation = (ns, props = {}) => {
5047
+ var _a, _b, _c, _d;
5048
+ const {
5049
+ i18n: i18nFromProps
5050
+ } = props;
5051
+ const {
5052
+ i18n: i18nFromContext,
5053
+ defaultNS: defaultNSFromContext
5054
+ } = useContext(I18nContext) || {};
5055
+ const i18n = i18nFromProps || i18nFromContext || getI18n();
5056
+ if (i18n && !i18n.reportNamespaces) i18n.reportNamespaces = new ReportNamespaces();
5057
+ if (!i18n) {
5058
+ warnOnce(i18n, "NO_I18NEXT_INSTANCE", "useTranslation: You will need to pass in an i18next instance by using initReactI18next");
5059
+ const notReadyT = (k, optsOrDefaultValue) => {
5060
+ if (isString(optsOrDefaultValue)) return optsOrDefaultValue;
5061
+ if (isObject(optsOrDefaultValue) && isString(optsOrDefaultValue.defaultValue)) return optsOrDefaultValue.defaultValue;
5062
+ return Array.isArray(k) ? k[k.length - 1] : k;
5063
+ };
5064
+ const retNotReady = [notReadyT, {}, false];
5065
+ retNotReady.t = notReadyT;
5066
+ retNotReady.i18n = {};
5067
+ retNotReady.ready = false;
5068
+ return retNotReady;
5069
+ }
5070
+ if ((_a = i18n.options.react) == null ? void 0 : _a.wait) warnOnce(i18n, "DEPRECATED_OPTION", "useTranslation: It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");
5071
+ const i18nOptions = __spreadValues(__spreadValues(__spreadValues({}, getDefaults()), i18n.options.react), props);
5072
+ const {
5073
+ useSuspense,
5074
+ keyPrefix
5075
+ } = i18nOptions;
5076
+ let namespaces = defaultNSFromContext || ((_b = i18n.options) == null ? void 0 : _b.defaultNS);
5077
+ namespaces = isString(namespaces) ? [namespaces] : namespaces || ["translation"];
5078
+ (_d = (_c = i18n.reportNamespaces).addUsedNamespaces) == null ? void 0 : _d.call(_c, namespaces);
5079
+ const ready = (i18n.isInitialized || i18n.initializedStoreOnce) && namespaces.every((n) => hasLoadedNamespace(n, i18n, i18nOptions));
5080
+ const memoGetT = useMemoizedT(i18n, props.lng || null, i18nOptions.nsMode === "fallback" ? namespaces : namespaces[0], keyPrefix);
5081
+ const getT = () => memoGetT;
5082
+ const getNewT = () => alwaysNewT(i18n, props.lng || null, i18nOptions.nsMode === "fallback" ? namespaces : namespaces[0], keyPrefix);
5083
+ const [t, setT] = useState(getT);
5084
+ let joinedNS = namespaces.join();
5085
+ if (props.lng) joinedNS = `${props.lng}${joinedNS}`;
5086
+ const previousJoinedNS = usePrevious(joinedNS);
5087
+ const isMounted = useRef(true);
5088
+ useEffect(() => {
5089
+ const {
5090
+ bindI18n,
5091
+ bindI18nStore
5092
+ } = i18nOptions;
5093
+ isMounted.current = true;
5094
+ if (!ready && !useSuspense) {
5095
+ if (props.lng) {
5096
+ loadLanguages(i18n, props.lng, namespaces, () => {
5097
+ if (isMounted.current) setT(getNewT);
5098
+ });
5099
+ } else {
5100
+ loadNamespaces(i18n, namespaces, () => {
5101
+ if (isMounted.current) setT(getNewT);
5102
+ });
5103
+ }
5104
+ }
5105
+ if (ready && previousJoinedNS && previousJoinedNS !== joinedNS && isMounted.current) {
5106
+ setT(getNewT);
5107
+ }
5108
+ const boundReset = () => {
5109
+ if (isMounted.current) setT(getNewT);
5110
+ };
5111
+ if (bindI18n) i18n == null ? void 0 : i18n.on(bindI18n, boundReset);
5112
+ if (bindI18nStore) i18n == null ? void 0 : i18n.store.on(bindI18nStore, boundReset);
5113
+ return () => {
5114
+ isMounted.current = false;
5115
+ if (i18n && bindI18n) bindI18n == null ? void 0 : bindI18n.split(" ").forEach((e) => i18n.off(e, boundReset));
5116
+ if (bindI18nStore && i18n) bindI18nStore.split(" ").forEach((e) => i18n.store.off(e, boundReset));
5117
+ };
5118
+ }, [i18n, joinedNS]);
5119
+ useEffect(() => {
5120
+ if (isMounted.current && ready) {
5121
+ setT(getT);
5122
+ }
5123
+ }, [i18n, keyPrefix, ready]);
5124
+ const ret = [t, i18n, ready];
5125
+ ret.t = t;
5126
+ ret.i18n = i18n;
5127
+ ret.ready = ready;
5128
+ if (ready) return ret;
5129
+ if (!ready && !useSuspense) return ret;
5130
+ throw new Promise((resolve) => {
5131
+ if (props.lng) {
5132
+ loadLanguages(i18n, props.lng, namespaces, () => resolve());
5133
+ } else {
5134
+ loadNamespaces(i18n, namespaces, () => resolve());
5135
+ }
5136
+ });
5137
+ };
5138
+ const PageChildrenSelectSection2 = ({ data, isDarkMode, section, imageBaseUrl = "" }) => {
5139
+ var _a;
5140
+ const { t } = useTranslation();
5141
+ const pages = ((_a = data == null ? void 0 : data.sectionDataBindingItems) == null ? void 0 : _a.map((item) => item.data).filter(Boolean)) || [];
5142
+ const sectionTitle = (section == null ? void 0 : section.title) || "";
5143
+ const [visibleCount, setVisibleCount] = useState(6);
5144
+ if (!pages || pages.length === 0) {
5145
+ return null;
5146
+ }
5147
+ const handleNavigate = (slug) => {
5148
+ window.location.href = slug;
5149
+ };
5150
+ const getImageUrl = (url) => {
5151
+ if (!url) return "";
5152
+ if (url.startsWith("http://") || url.startsWith("https://")) return url;
5153
+ return `${imageBaseUrl}${url}`;
5154
+ };
5155
+ const handleLoadMore = () => {
5156
+ setVisibleCount((prev) => prev + 6);
5157
+ };
5158
+ const visiblePages = pages.slice(0, visibleCount);
5159
+ const hasMore = visibleCount < pages.length;
5160
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("section", { style: {
5161
+ padding: "80px 16px",
5162
+ backgroundColor: isDarkMode ? "#0f172a" : "#f8fafc",
5163
+ transition: "background-color 0.3s"
5164
+ }, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: {
5165
+ maxWidth: "1400px",
5166
+ margin: "0 auto"
5167
+ }, children: [
5168
+ sectionTitle && /* @__PURE__ */ jsxRuntimeExports.jsx("h2", { style: {
5169
+ fontSize: "36px",
5170
+ fontWeight: "700",
5171
+ marginBottom: "50px",
5172
+ color: isDarkMode ? "#f1f5f9" : "#1e293b"
5173
+ }, children: sectionTitle }),
5174
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: {
5175
+ display: "grid",
5176
+ gridTemplateColumns: "repeat(auto-fit, minmax(350px, 1fr))",
5177
+ gap: "30px",
5178
+ marginBottom: "50px"
5179
+ }, children: visiblePages.map((page) => {
5180
+ var _a2, _b;
5181
+ const mainImage = ((_b = (_a2 = page.pageImages) == null ? void 0 : _a2.find((img) => img.isMain)) == null ? void 0 : _b.url) || page.icon;
5182
+ const imageUrl = getImageUrl(mainImage);
5183
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(
5184
+ "div",
5185
+ {
5186
+ onClick: () => handleNavigate(page.slug),
5187
+ style: {
5188
+ backgroundColor: isDarkMode ? "#1e293b" : "#ffffff",
5189
+ borderRadius: "16px",
5190
+ overflow: "hidden",
5191
+ cursor: "pointer",
5192
+ transition: "all 0.3s",
5193
+ boxShadow: isDarkMode ? "0 4px 6px -1px rgba(0, 0, 0, 0.5)" : "0 4px 6px -1px rgba(0, 0, 0, 0.1)",
5194
+ border: `1px solid ${isDarkMode ? "#334155" : "#e2e8f0"}`
5195
+ },
5196
+ onMouseEnter: (e) => {
5197
+ e.currentTarget.style.transform = "translateY(-8px)";
5198
+ e.currentTarget.style.boxShadow = isDarkMode ? "0 20px 25px -5px rgba(0, 0, 0, 0.6)" : "0 20px 25px -5px rgba(0, 0, 0, 0.15)";
5199
+ },
5200
+ onMouseLeave: (e) => {
5201
+ e.currentTarget.style.transform = "translateY(0)";
5202
+ e.currentTarget.style.boxShadow = isDarkMode ? "0 4px 6px -1px rgba(0, 0, 0, 0.5)" : "0 4px 6px -1px rgba(0, 0, 0, 0.1)";
5203
+ },
5204
+ children: [
5205
+ imageUrl && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: {
5206
+ width: "100%",
5207
+ height: "240px",
5208
+ overflow: "hidden",
5209
+ position: "relative"
5210
+ }, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
5211
+ "img",
5212
+ {
5213
+ src: imageUrl,
5214
+ alt: page.title,
5215
+ style: {
5216
+ width: "100%",
5217
+ height: "100%",
5218
+ objectFit: "cover",
5219
+ transition: "transform 0.3s"
5220
+ },
5221
+ onMouseEnter: (e) => {
5222
+ e.currentTarget.style.transform = "scale(1.05)";
5223
+ },
5224
+ onMouseLeave: (e) => {
5225
+ e.currentTarget.style.transform = "scale(1)";
5226
+ }
5227
+ }
5228
+ ) }),
5229
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: {
5230
+ padding: "24px"
5231
+ }, children: [
5232
+ /* @__PURE__ */ jsxRuntimeExports.jsx("h3", { style: {
5233
+ fontSize: "20px",
5234
+ fontWeight: "700",
5235
+ marginBottom: "12px",
5236
+ color: isDarkMode ? "#f1f5f9" : "#1e293b",
5237
+ lineHeight: "1.4",
5238
+ minHeight: "56px"
5239
+ }, children: page.title }),
5240
+ page.description && /* @__PURE__ */ jsxRuntimeExports.jsx("p", { style: {
5241
+ fontSize: "14px",
5242
+ lineHeight: "1.6",
5243
+ color: isDarkMode ? "#cbd5e1" : "#64748b",
5244
+ marginBottom: "16px",
5245
+ display: "-webkit-box",
5246
+ WebkitLineClamp: 2,
5247
+ WebkitBoxOrient: "vertical",
5248
+ overflow: "hidden"
5249
+ }, children: page.description })
5250
+ ] })
5251
+ ]
5252
+ },
5253
+ page.id
5254
+ );
5255
+ }) }),
5256
+ hasMore && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: {
5257
+ display: "flex",
5258
+ justifyContent: "center"
5259
+ }, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
5260
+ "button",
5261
+ {
5262
+ onClick: handleLoadMore,
5263
+ style: {
5264
+ display: "inline-flex",
5265
+ alignItems: "center",
5266
+ gap: "8px",
5267
+ padding: "14px 32px",
5268
+ fontSize: "16px",
5269
+ fontWeight: "600",
5270
+ color: "#ffffff",
5271
+ backgroundColor: "#ef4444",
5272
+ border: "none",
5273
+ borderRadius: "50px",
5274
+ cursor: "pointer",
5275
+ transition: "all 0.3s",
5276
+ boxShadow: "0 4px 6px -1px rgba(239, 68, 68, 0.3)"
5277
+ },
5278
+ onMouseEnter: (e) => {
5279
+ e.currentTarget.style.backgroundColor = "#dc2626";
5280
+ e.currentTarget.style.transform = "translateY(-2px)";
5281
+ e.currentTarget.style.boxShadow = "0 10px 15px -3px rgba(239, 68, 68, 0.4)";
5282
+ },
5283
+ onMouseLeave: (e) => {
5284
+ e.currentTarget.style.backgroundColor = "#ef4444";
5285
+ e.currentTarget.style.transform = "translateY(0)";
5286
+ e.currentTarget.style.boxShadow = "0 4px 6px -1px rgba(239, 68, 68, 0.3)";
5287
+ },
5288
+ children: [
5289
+ t("pageChildrenSelect.moreInsights"),
5290
+ /* @__PURE__ */ jsxRuntimeExports.jsx(ArrowRight, { size: 18 })
5291
+ ]
5292
+ }
5293
+ ) })
5294
+ ] }) });
5295
+ };
4668
5296
  const index = {
4669
5297
  AboutCompanySection,
4670
5298
  CompanyValues,
@@ -4687,7 +5315,10 @@ const index = {
4687
5315
  DiagramSection,
4688
5316
  DiagramSection2,
4689
5317
  FaqSection,
4690
- PageHighlightSection
5318
+ PageHighlightSection,
5319
+ PageChildrenSelectSection,
5320
+ PageChildrenSelectSection1,
5321
+ PageChildrenSelectSection2
4691
5322
  };
4692
5323
  export {
4693
5324
  AboutCompanySection,
@@ -4702,6 +5333,9 @@ export {
4702
5333
  ImageSection,
4703
5334
  ImageSingleSection,
4704
5335
  MilestoneSection,
5336
+ PageChildrenSelectSection,
5337
+ PageChildrenSelectSection1,
5338
+ PageChildrenSelectSection2,
4705
5339
  PageHighlightSection,
4706
5340
  PartnerCard,
4707
5341
  PartnerListCard,