@opensite/ui 1.5.1 → 1.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/about-location-info-hero.cjs +26 -48
- package/dist/about-location-info-hero.d.cts +1 -1
- package/dist/about-location-info-hero.d.ts +1 -1
- package/dist/about-location-info-hero.js +26 -48
- package/dist/components.cjs +338 -133
- package/dist/components.js +338 -133
- package/dist/footer-accordion-social.cjs +3 -1
- package/dist/footer-accordion-social.js +3 -1
- package/dist/footer-animated-social.cjs +13 -2
- package/dist/footer-animated-social.js +13 -2
- package/dist/footer-background-card.cjs +239 -69
- package/dist/footer-background-card.d.cts +9 -1
- package/dist/footer-background-card.d.ts +9 -1
- package/dist/footer-background-card.js +240 -70
- package/dist/footer-brand-description.cjs +3 -1
- package/dist/footer-brand-description.js +3 -1
- package/dist/footer-brand-links-contact.cjs +3 -1
- package/dist/footer-brand-links-contact.js +3 -1
- package/dist/footer-comprehensive-links.cjs +3 -1
- package/dist/footer-comprehensive-links.js +3 -1
- package/dist/footer-contact-card.cjs +3 -1
- package/dist/footer-contact-card.js +3 -1
- package/dist/footer-cta-banner.cjs +3 -1
- package/dist/footer-cta-banner.js +3 -1
- package/dist/footer-cta-social.cjs +3 -1
- package/dist/footer-cta-social.js +3 -1
- package/dist/footer-info-cards-accordion.cjs +3 -1
- package/dist/footer-info-cards-accordion.js +3 -1
- package/dist/footer-nav-social.cjs +159 -62
- package/dist/footer-nav-social.d.cts +9 -1
- package/dist/footer-nav-social.d.ts +9 -1
- package/dist/footer-nav-social.js +159 -62
- package/dist/footer-newsletter-contact.cjs +3 -1
- package/dist/footer-newsletter-contact.js +3 -1
- package/dist/footer-newsletter-grid.cjs +3 -1
- package/dist/footer-newsletter-grid.js +3 -1
- package/dist/footer-newsletter-minimal.cjs +3 -1
- package/dist/footer-newsletter-minimal.js +3 -1
- package/dist/footer-simple-centered.cjs +1 -1
- package/dist/footer-simple-centered.d.cts +1 -1
- package/dist/footer-simple-centered.d.ts +1 -1
- package/dist/footer-simple-centered.js +1 -1
- package/dist/footer-social-apps.cjs +3 -1
- package/dist/footer-social-apps.js +3 -1
- package/dist/footer-social-newsletter.cjs +3 -1
- package/dist/footer-social-newsletter.js +3 -1
- package/dist/footer-split-image-accordion.cjs +3 -1
- package/dist/footer-split-image-accordion.js +3 -1
- package/dist/hero-centered-screenshot.cjs +46 -59
- package/dist/hero-centered-screenshot.d.cts +1 -1
- package/dist/hero-centered-screenshot.d.ts +1 -1
- package/dist/hero-centered-screenshot.js +46 -59
- package/dist/index.cjs +338 -133
- package/dist/index.js +338 -133
- package/dist/navbar-fullscreen-menu.cjs +3 -1
- package/dist/navbar-fullscreen-menu.js +3 -1
- package/dist/navbar-transparent-overlay.cjs +3 -1
- package/dist/navbar-transparent-overlay.js +3 -1
- package/dist/registry.cjs +410 -166
- package/dist/registry.js +410 -166
- package/dist/social-link-icon.cjs +3 -1
- package/dist/social-link-icon.js +3 -1
- package/package.json +2 -2
|
@@ -1544,7 +1544,7 @@ var platformIconMap = {
|
|
|
1544
1544
|
yelp: "cib/yelp",
|
|
1545
1545
|
spotify: "cib/spotify",
|
|
1546
1546
|
apple: "cib/apple",
|
|
1547
|
-
x: "line-md/twitter-x",
|
|
1547
|
+
x: "line-md/twitter-x-alt",
|
|
1548
1548
|
github: "cib/github",
|
|
1549
1549
|
snapchat: "cib/snapchat",
|
|
1550
1550
|
discord: "cib/discord",
|
|
@@ -1563,6 +1563,8 @@ var platformIconMap = {
|
|
|
1563
1563
|
npmjs: "simple-icons/npm",
|
|
1564
1564
|
crates: "cib/rust",
|
|
1565
1565
|
rubygems: "cib/rubygems",
|
|
1566
|
+
behance: "cib/behance",
|
|
1567
|
+
dribbble: "cib/dribbble",
|
|
1566
1568
|
unknown: "icon-park-solid/circular-connection"
|
|
1567
1569
|
};
|
|
1568
1570
|
var SocialLinkIcon = React__namespace.forwardRef(
|
|
@@ -1629,6 +1631,7 @@ function FooterNavSocial({
|
|
|
1629
1631
|
gridClassName,
|
|
1630
1632
|
leftColumnClassName,
|
|
1631
1633
|
logoWrapperClassName,
|
|
1634
|
+
formConfig,
|
|
1632
1635
|
logoClassName,
|
|
1633
1636
|
navGridClassName,
|
|
1634
1637
|
navSectionClassName,
|
|
@@ -1649,7 +1652,8 @@ function FooterNavSocial({
|
|
|
1649
1652
|
legalLinksClassName,
|
|
1650
1653
|
legalLinkClassName,
|
|
1651
1654
|
background,
|
|
1652
|
-
|
|
1655
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
1656
|
+
spacing = "py-12 md:py-40",
|
|
1653
1657
|
pattern,
|
|
1654
1658
|
patternOpacity,
|
|
1655
1659
|
optixFlowConfig
|
|
@@ -1658,16 +1662,15 @@ function FooterNavSocial({
|
|
|
1658
1662
|
if (!sections || sections.length === 0) return null;
|
|
1659
1663
|
return sections.map((section, sectionIdx) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn(navSectionClassName), children: [
|
|
1660
1664
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: cn("mb-4 font-semibold", navTitleClassName), children: section.title }),
|
|
1661
|
-
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: cn("space-y-3 text-sm opacity-80", navLinksClassName), children: section.links.map((link, linkIdx) => /* @__PURE__ */ jsxRuntime.jsx("li", { className: cn(navLinkClassName), children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1662
|
-
Pressable,
|
|
1663
|
-
{
|
|
1664
|
-
href: link.href,
|
|
1665
|
-
className: "hover:opacity-100",
|
|
1666
|
-
children: link.name
|
|
1667
|
-
}
|
|
1668
|
-
) }, linkIdx)) })
|
|
1665
|
+
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: cn("space-y-3 text-sm opacity-80", navLinksClassName), children: section.links.map((link, linkIdx) => /* @__PURE__ */ jsxRuntime.jsx("li", { className: cn(navLinkClassName), children: /* @__PURE__ */ jsxRuntime.jsx(Pressable, { href: link.href, className: "hover:opacity-100", children: link.name }) }, linkIdx)) })
|
|
1669
1666
|
] }, sectionIdx));
|
|
1670
|
-
}, [
|
|
1667
|
+
}, [
|
|
1668
|
+
sections,
|
|
1669
|
+
navSectionClassName,
|
|
1670
|
+
navTitleClassName,
|
|
1671
|
+
navLinksClassName,
|
|
1672
|
+
navLinkClassName
|
|
1673
|
+
]);
|
|
1671
1674
|
const socialLinksContent = React.useMemo(() => {
|
|
1672
1675
|
if (!socialLinks || socialLinks.length === 0) return null;
|
|
1673
1676
|
return socialLinks.map((social, idx) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -1676,7 +1679,10 @@ function FooterNavSocial({
|
|
|
1676
1679
|
href: social.href,
|
|
1677
1680
|
label: social.label,
|
|
1678
1681
|
iconNameOverride: social.iconNameOverride,
|
|
1679
|
-
className: cn(
|
|
1682
|
+
className: cn(
|
|
1683
|
+
"opacity-80 transition-colors hover:opacity-100",
|
|
1684
|
+
socialLinkClassName
|
|
1685
|
+
)
|
|
1680
1686
|
}
|
|
1681
1687
|
) }, idx));
|
|
1682
1688
|
}, [socialLinks, socialLinkClassName]);
|
|
@@ -1692,64 +1698,155 @@ function FooterNavSocial({
|
|
|
1692
1698
|
pattern,
|
|
1693
1699
|
patternOpacity,
|
|
1694
1700
|
className: cn(className),
|
|
1701
|
+
containerClassName,
|
|
1695
1702
|
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn(contentClassName), children: /* @__PURE__ */ jsxRuntime.jsxs("footer", { children: [
|
|
1696
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1697
|
-
|
|
1698
|
-
|
|
1699
|
-
|
|
1700
|
-
|
|
1701
|
-
|
|
1702
|
-
logoClassName: cn("mb-8", logoWrapperClassName),
|
|
1703
|
-
logoImageClassName: logoClassName,
|
|
1704
|
-
optixFlowConfig
|
|
1705
|
-
}
|
|
1703
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1704
|
+
"div",
|
|
1705
|
+
{
|
|
1706
|
+
className: cn(
|
|
1707
|
+
"grid gap-12 md:gap-24 lg:grid-cols-2",
|
|
1708
|
+
gridClassName
|
|
1706
1709
|
),
|
|
1707
|
-
|
|
1708
|
-
|
|
1709
|
-
|
|
1710
|
-
|
|
1711
|
-
newsletterHeading && /* @__PURE__ */ jsxRuntime.jsx("h3", { className: cn("mb-2 text-lg font-semibold", newsletterHeadingClassName), children: newsletterHeading }),
|
|
1712
|
-
newsletterDescription && /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("mb-4 text-sm opacity-80", newsletterDescriptionClassName), children: newsletterDescription }),
|
|
1713
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex max-w-md gap-2", newsletterFormClassName), children: [
|
|
1714
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1715
|
-
"input",
|
|
1710
|
+
children: [
|
|
1711
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn(leftColumnClassName), children: [
|
|
1712
|
+
logo && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1713
|
+
FooterLogo,
|
|
1716
1714
|
{
|
|
1717
|
-
|
|
1718
|
-
|
|
1719
|
-
|
|
1715
|
+
logo,
|
|
1716
|
+
logoClassName: cn("mb-8", logoWrapperClassName),
|
|
1717
|
+
logoImageClassName: logoClassName,
|
|
1718
|
+
optixFlowConfig
|
|
1720
1719
|
}
|
|
1721
1720
|
),
|
|
1722
|
-
|
|
1723
|
-
"
|
|
1721
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1722
|
+
"div",
|
|
1724
1723
|
{
|
|
1725
|
-
|
|
1726
|
-
|
|
1727
|
-
|
|
1724
|
+
className: cn(
|
|
1725
|
+
"grid md:flex w-full gap-8 md:gap-6 lg:gap-12 md:flex-wrap md:justify-between grid-cols-2",
|
|
1726
|
+
navGridClassName
|
|
1727
|
+
),
|
|
1728
|
+
children: sectionsContent
|
|
1728
1729
|
}
|
|
1729
1730
|
)
|
|
1730
|
-
] })
|
|
1731
|
-
|
|
1732
|
-
|
|
1733
|
-
|
|
1734
|
-
|
|
1735
|
-
|
|
1736
|
-
|
|
1737
|
-
|
|
1738
|
-
|
|
1739
|
-
|
|
1740
|
-
|
|
1741
|
-
|
|
1742
|
-
|
|
1743
|
-
|
|
1744
|
-
|
|
1745
|
-
|
|
1746
|
-
|
|
1747
|
-
|
|
1748
|
-
|
|
1749
|
-
|
|
1750
|
-
|
|
1751
|
-
|
|
1752
|
-
|
|
1731
|
+
] }),
|
|
1732
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1733
|
+
"div",
|
|
1734
|
+
{
|
|
1735
|
+
className: cn(
|
|
1736
|
+
"flex flex-col justify-between mt-0 md:mt-16 space-y-8 md:space-y-12",
|
|
1737
|
+
rightColumnClassName
|
|
1738
|
+
),
|
|
1739
|
+
children: [
|
|
1740
|
+
formConfig && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("", newsletterClassName), children: [
|
|
1741
|
+
newsletterHeading && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1742
|
+
"h3",
|
|
1743
|
+
{
|
|
1744
|
+
className: cn(
|
|
1745
|
+
"mb-4 font-medium",
|
|
1746
|
+
newsletterHeadingClassName
|
|
1747
|
+
),
|
|
1748
|
+
children: newsletterHeading
|
|
1749
|
+
}
|
|
1750
|
+
),
|
|
1751
|
+
newsletterDescription && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1752
|
+
"p",
|
|
1753
|
+
{
|
|
1754
|
+
className: cn(
|
|
1755
|
+
"mb-4 text-sm opacity-80",
|
|
1756
|
+
newsletterDescriptionClassName
|
|
1757
|
+
),
|
|
1758
|
+
children: newsletterDescription
|
|
1759
|
+
}
|
|
1760
|
+
),
|
|
1761
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1762
|
+
"div",
|
|
1763
|
+
{
|
|
1764
|
+
className: cn(
|
|
1765
|
+
"flex max-w-md gap-2",
|
|
1766
|
+
newsletterFormClassName
|
|
1767
|
+
),
|
|
1768
|
+
children: [
|
|
1769
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1770
|
+
"input",
|
|
1771
|
+
{
|
|
1772
|
+
type: "email",
|
|
1773
|
+
placeholder: newsletterPlaceholder,
|
|
1774
|
+
className: "flex h-10 w-full rounded-md border border-input px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50"
|
|
1775
|
+
}
|
|
1776
|
+
),
|
|
1777
|
+
newsletterButtonText && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1778
|
+
"button",
|
|
1779
|
+
{
|
|
1780
|
+
type: "submit",
|
|
1781
|
+
className: "inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 bg-primary text-primary-foreground hover:bg-primary/90 h-10 px-4 py-2",
|
|
1782
|
+
children: newsletterButtonText
|
|
1783
|
+
}
|
|
1784
|
+
)
|
|
1785
|
+
]
|
|
1786
|
+
}
|
|
1787
|
+
)
|
|
1788
|
+
] }),
|
|
1789
|
+
(socialTitle || socialLinksContent) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn(socialSectionClassName), children: [
|
|
1790
|
+
socialTitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("mb-4 font-medium", socialTitleClassName), children: socialTitle }),
|
|
1791
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1792
|
+
"ul",
|
|
1793
|
+
{
|
|
1794
|
+
className: cn(
|
|
1795
|
+
"flex items-center gap-4",
|
|
1796
|
+
socialLinksClassName
|
|
1797
|
+
),
|
|
1798
|
+
children: socialLinksContent
|
|
1799
|
+
}
|
|
1800
|
+
)
|
|
1801
|
+
] })
|
|
1802
|
+
]
|
|
1803
|
+
}
|
|
1804
|
+
)
|
|
1805
|
+
]
|
|
1806
|
+
}
|
|
1807
|
+
),
|
|
1808
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1809
|
+
"div",
|
|
1810
|
+
{
|
|
1811
|
+
className: cn(
|
|
1812
|
+
"mt-16 flex flex-col justify-between gap-4 border-t pt-8 text-sm opacity-80 md:flex-row md:items-center",
|
|
1813
|
+
bottomClassName
|
|
1814
|
+
),
|
|
1815
|
+
children: [
|
|
1816
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1817
|
+
"div",
|
|
1818
|
+
{
|
|
1819
|
+
className: cn(
|
|
1820
|
+
"flex flex-col gap-2 md:flex-row md:items-center md:gap-4",
|
|
1821
|
+
copyrightClassName
|
|
1822
|
+
),
|
|
1823
|
+
children: [
|
|
1824
|
+
/* @__PURE__ */ jsxRuntime.jsx(FooterCopyright, { copyright }),
|
|
1825
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1826
|
+
BrandAttribution,
|
|
1827
|
+
{
|
|
1828
|
+
internalBrandSlug: "open_site_ai",
|
|
1829
|
+
optionIndex: 1,
|
|
1830
|
+
variant: "span",
|
|
1831
|
+
linkClassName: "underline underline-offset-4 transition-colors hover:opacity-100"
|
|
1832
|
+
}
|
|
1833
|
+
)
|
|
1834
|
+
]
|
|
1835
|
+
}
|
|
1836
|
+
),
|
|
1837
|
+
legalLinksContent && /* @__PURE__ */ jsxRuntime.jsx(
|
|
1838
|
+
"ul",
|
|
1839
|
+
{
|
|
1840
|
+
className: cn(
|
|
1841
|
+
"pt-4 md:pt-0 gap-4 grid md:flex grid-cols-2 items-center w-full md:w-fit",
|
|
1842
|
+
legalLinksClassName
|
|
1843
|
+
),
|
|
1844
|
+
children: legalLinksContent
|
|
1845
|
+
}
|
|
1846
|
+
)
|
|
1847
|
+
]
|
|
1848
|
+
}
|
|
1849
|
+
)
|
|
1753
1850
|
] }) })
|
|
1754
1851
|
}
|
|
1755
1852
|
);
|
|
@@ -86,6 +86,10 @@ interface FooterNavSocialProps {
|
|
|
86
86
|
navLinkClassName?: string;
|
|
87
87
|
/** Additional CSS classes for the right column */
|
|
88
88
|
rightColumnClassName?: string;
|
|
89
|
+
/** Config for submitting forms to server */
|
|
90
|
+
formConfig?: {
|
|
91
|
+
token: string;
|
|
92
|
+
};
|
|
89
93
|
/** Additional CSS classes for the newsletter section */
|
|
90
94
|
newsletterClassName?: string;
|
|
91
95
|
/** Additional CSS classes for the newsletter heading */
|
|
@@ -112,6 +116,10 @@ interface FooterNavSocialProps {
|
|
|
112
116
|
legalLinkClassName?: string;
|
|
113
117
|
/** Section background variant */
|
|
114
118
|
background?: SectionBackground;
|
|
119
|
+
/**
|
|
120
|
+
* Additional CSS classes for the container
|
|
121
|
+
*/
|
|
122
|
+
containerClassName?: string;
|
|
115
123
|
/** Section spacing variant */
|
|
116
124
|
spacing?: SectionSpacing;
|
|
117
125
|
/** Optional background pattern */
|
|
@@ -129,6 +137,6 @@ interface FooterNavSocialProps {
|
|
|
129
137
|
* websites, and businesses that want a complete footer with all essential elements
|
|
130
138
|
* organized in a clean, professional layout.
|
|
131
139
|
*/
|
|
132
|
-
declare function FooterNavSocial({ logo, sections, socialLinks, newsletterHeading, newsletterDescription, newsletterPlaceholder, newsletterButtonText, socialTitle, copyright, legalLinks, className, contentClassName, gridClassName, leftColumnClassName, logoWrapperClassName, logoClassName, navGridClassName, navSectionClassName, navTitleClassName, navLinksClassName, navLinkClassName, rightColumnClassName, newsletterClassName, newsletterHeadingClassName, newsletterDescriptionClassName, newsletterFormClassName, socialSectionClassName, socialTitleClassName, socialLinksClassName, socialLinkClassName, bottomClassName, copyrightClassName, legalLinksClassName, legalLinkClassName, background, spacing, pattern, patternOpacity, optixFlowConfig, }: FooterNavSocialProps): React.JSX.Element;
|
|
140
|
+
declare function FooterNavSocial({ logo, sections, socialLinks, newsletterHeading, newsletterDescription, newsletterPlaceholder, newsletterButtonText, socialTitle, copyright, legalLinks, className, contentClassName, gridClassName, leftColumnClassName, logoWrapperClassName, formConfig, logoClassName, navGridClassName, navSectionClassName, navTitleClassName, navLinksClassName, navLinkClassName, rightColumnClassName, newsletterClassName, newsletterHeadingClassName, newsletterDescriptionClassName, newsletterFormClassName, socialSectionClassName, socialTitleClassName, socialLinksClassName, socialLinkClassName, bottomClassName, copyrightClassName, legalLinksClassName, legalLinkClassName, background, containerClassName, spacing, pattern, patternOpacity, optixFlowConfig, }: FooterNavSocialProps): React.JSX.Element;
|
|
133
141
|
|
|
134
142
|
export { FooterNavSocial, type FooterNavSocialProps, type FooterNavSocialSection };
|
|
@@ -86,6 +86,10 @@ interface FooterNavSocialProps {
|
|
|
86
86
|
navLinkClassName?: string;
|
|
87
87
|
/** Additional CSS classes for the right column */
|
|
88
88
|
rightColumnClassName?: string;
|
|
89
|
+
/** Config for submitting forms to server */
|
|
90
|
+
formConfig?: {
|
|
91
|
+
token: string;
|
|
92
|
+
};
|
|
89
93
|
/** Additional CSS classes for the newsletter section */
|
|
90
94
|
newsletterClassName?: string;
|
|
91
95
|
/** Additional CSS classes for the newsletter heading */
|
|
@@ -112,6 +116,10 @@ interface FooterNavSocialProps {
|
|
|
112
116
|
legalLinkClassName?: string;
|
|
113
117
|
/** Section background variant */
|
|
114
118
|
background?: SectionBackground;
|
|
119
|
+
/**
|
|
120
|
+
* Additional CSS classes for the container
|
|
121
|
+
*/
|
|
122
|
+
containerClassName?: string;
|
|
115
123
|
/** Section spacing variant */
|
|
116
124
|
spacing?: SectionSpacing;
|
|
117
125
|
/** Optional background pattern */
|
|
@@ -129,6 +137,6 @@ interface FooterNavSocialProps {
|
|
|
129
137
|
* websites, and businesses that want a complete footer with all essential elements
|
|
130
138
|
* organized in a clean, professional layout.
|
|
131
139
|
*/
|
|
132
|
-
declare function FooterNavSocial({ logo, sections, socialLinks, newsletterHeading, newsletterDescription, newsletterPlaceholder, newsletterButtonText, socialTitle, copyright, legalLinks, className, contentClassName, gridClassName, leftColumnClassName, logoWrapperClassName, logoClassName, navGridClassName, navSectionClassName, navTitleClassName, navLinksClassName, navLinkClassName, rightColumnClassName, newsletterClassName, newsletterHeadingClassName, newsletterDescriptionClassName, newsletterFormClassName, socialSectionClassName, socialTitleClassName, socialLinksClassName, socialLinkClassName, bottomClassName, copyrightClassName, legalLinksClassName, legalLinkClassName, background, spacing, pattern, patternOpacity, optixFlowConfig, }: FooterNavSocialProps): React.JSX.Element;
|
|
140
|
+
declare function FooterNavSocial({ logo, sections, socialLinks, newsletterHeading, newsletterDescription, newsletterPlaceholder, newsletterButtonText, socialTitle, copyright, legalLinks, className, contentClassName, gridClassName, leftColumnClassName, logoWrapperClassName, formConfig, logoClassName, navGridClassName, navSectionClassName, navTitleClassName, navLinksClassName, navLinkClassName, rightColumnClassName, newsletterClassName, newsletterHeadingClassName, newsletterDescriptionClassName, newsletterFormClassName, socialSectionClassName, socialTitleClassName, socialLinksClassName, socialLinkClassName, bottomClassName, copyrightClassName, legalLinksClassName, legalLinkClassName, background, containerClassName, spacing, pattern, patternOpacity, optixFlowConfig, }: FooterNavSocialProps): React.JSX.Element;
|
|
133
141
|
|
|
134
142
|
export { FooterNavSocial, type FooterNavSocialProps, type FooterNavSocialSection };
|
|
@@ -1523,7 +1523,7 @@ var platformIconMap = {
|
|
|
1523
1523
|
yelp: "cib/yelp",
|
|
1524
1524
|
spotify: "cib/spotify",
|
|
1525
1525
|
apple: "cib/apple",
|
|
1526
|
-
x: "line-md/twitter-x",
|
|
1526
|
+
x: "line-md/twitter-x-alt",
|
|
1527
1527
|
github: "cib/github",
|
|
1528
1528
|
snapchat: "cib/snapchat",
|
|
1529
1529
|
discord: "cib/discord",
|
|
@@ -1542,6 +1542,8 @@ var platformIconMap = {
|
|
|
1542
1542
|
npmjs: "simple-icons/npm",
|
|
1543
1543
|
crates: "cib/rust",
|
|
1544
1544
|
rubygems: "cib/rubygems",
|
|
1545
|
+
behance: "cib/behance",
|
|
1546
|
+
dribbble: "cib/dribbble",
|
|
1545
1547
|
unknown: "icon-park-solid/circular-connection"
|
|
1546
1548
|
};
|
|
1547
1549
|
var SocialLinkIcon = React.forwardRef(
|
|
@@ -1608,6 +1610,7 @@ function FooterNavSocial({
|
|
|
1608
1610
|
gridClassName,
|
|
1609
1611
|
leftColumnClassName,
|
|
1610
1612
|
logoWrapperClassName,
|
|
1613
|
+
formConfig,
|
|
1611
1614
|
logoClassName,
|
|
1612
1615
|
navGridClassName,
|
|
1613
1616
|
navSectionClassName,
|
|
@@ -1628,7 +1631,8 @@ function FooterNavSocial({
|
|
|
1628
1631
|
legalLinksClassName,
|
|
1629
1632
|
legalLinkClassName,
|
|
1630
1633
|
background,
|
|
1631
|
-
|
|
1634
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
1635
|
+
spacing = "py-12 md:py-40",
|
|
1632
1636
|
pattern,
|
|
1633
1637
|
patternOpacity,
|
|
1634
1638
|
optixFlowConfig
|
|
@@ -1637,16 +1641,15 @@ function FooterNavSocial({
|
|
|
1637
1641
|
if (!sections || sections.length === 0) return null;
|
|
1638
1642
|
return sections.map((section, sectionIdx) => /* @__PURE__ */ jsxs("div", { className: cn(navSectionClassName), children: [
|
|
1639
1643
|
/* @__PURE__ */ jsx("h3", { className: cn("mb-4 font-semibold", navTitleClassName), children: section.title }),
|
|
1640
|
-
/* @__PURE__ */ jsx("ul", { className: cn("space-y-3 text-sm opacity-80", navLinksClassName), children: section.links.map((link, linkIdx) => /* @__PURE__ */ jsx("li", { className: cn(navLinkClassName), children: /* @__PURE__ */ jsx(
|
|
1641
|
-
Pressable,
|
|
1642
|
-
{
|
|
1643
|
-
href: link.href,
|
|
1644
|
-
className: "hover:opacity-100",
|
|
1645
|
-
children: link.name
|
|
1646
|
-
}
|
|
1647
|
-
) }, linkIdx)) })
|
|
1644
|
+
/* @__PURE__ */ jsx("ul", { className: cn("space-y-3 text-sm opacity-80", navLinksClassName), children: section.links.map((link, linkIdx) => /* @__PURE__ */ jsx("li", { className: cn(navLinkClassName), children: /* @__PURE__ */ jsx(Pressable, { href: link.href, className: "hover:opacity-100", children: link.name }) }, linkIdx)) })
|
|
1648
1645
|
] }, sectionIdx));
|
|
1649
|
-
}, [
|
|
1646
|
+
}, [
|
|
1647
|
+
sections,
|
|
1648
|
+
navSectionClassName,
|
|
1649
|
+
navTitleClassName,
|
|
1650
|
+
navLinksClassName,
|
|
1651
|
+
navLinkClassName
|
|
1652
|
+
]);
|
|
1650
1653
|
const socialLinksContent = useMemo(() => {
|
|
1651
1654
|
if (!socialLinks || socialLinks.length === 0) return null;
|
|
1652
1655
|
return socialLinks.map((social, idx) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(
|
|
@@ -1655,7 +1658,10 @@ function FooterNavSocial({
|
|
|
1655
1658
|
href: social.href,
|
|
1656
1659
|
label: social.label,
|
|
1657
1660
|
iconNameOverride: social.iconNameOverride,
|
|
1658
|
-
className: cn(
|
|
1661
|
+
className: cn(
|
|
1662
|
+
"opacity-80 transition-colors hover:opacity-100",
|
|
1663
|
+
socialLinkClassName
|
|
1664
|
+
)
|
|
1659
1665
|
}
|
|
1660
1666
|
) }, idx));
|
|
1661
1667
|
}, [socialLinks, socialLinkClassName]);
|
|
@@ -1671,64 +1677,155 @@ function FooterNavSocial({
|
|
|
1671
1677
|
pattern,
|
|
1672
1678
|
patternOpacity,
|
|
1673
1679
|
className: cn(className),
|
|
1680
|
+
containerClassName,
|
|
1674
1681
|
children: /* @__PURE__ */ jsx("div", { className: cn(contentClassName), children: /* @__PURE__ */ jsxs("footer", { children: [
|
|
1675
|
-
/* @__PURE__ */ jsxs(
|
|
1676
|
-
|
|
1677
|
-
|
|
1678
|
-
|
|
1679
|
-
|
|
1680
|
-
|
|
1681
|
-
logoClassName: cn("mb-8", logoWrapperClassName),
|
|
1682
|
-
logoImageClassName: logoClassName,
|
|
1683
|
-
optixFlowConfig
|
|
1684
|
-
}
|
|
1682
|
+
/* @__PURE__ */ jsxs(
|
|
1683
|
+
"div",
|
|
1684
|
+
{
|
|
1685
|
+
className: cn(
|
|
1686
|
+
"grid gap-12 md:gap-24 lg:grid-cols-2",
|
|
1687
|
+
gridClassName
|
|
1685
1688
|
),
|
|
1686
|
-
|
|
1687
|
-
|
|
1688
|
-
|
|
1689
|
-
|
|
1690
|
-
newsletterHeading && /* @__PURE__ */ jsx("h3", { className: cn("mb-2 text-lg font-semibold", newsletterHeadingClassName), children: newsletterHeading }),
|
|
1691
|
-
newsletterDescription && /* @__PURE__ */ jsx("p", { className: cn("mb-4 text-sm opacity-80", newsletterDescriptionClassName), children: newsletterDescription }),
|
|
1692
|
-
/* @__PURE__ */ jsxs("div", { className: cn("flex max-w-md gap-2", newsletterFormClassName), children: [
|
|
1693
|
-
/* @__PURE__ */ jsx(
|
|
1694
|
-
"input",
|
|
1689
|
+
children: [
|
|
1690
|
+
/* @__PURE__ */ jsxs("div", { className: cn(leftColumnClassName), children: [
|
|
1691
|
+
logo && /* @__PURE__ */ jsx(
|
|
1692
|
+
FooterLogo,
|
|
1695
1693
|
{
|
|
1696
|
-
|
|
1697
|
-
|
|
1698
|
-
|
|
1694
|
+
logo,
|
|
1695
|
+
logoClassName: cn("mb-8", logoWrapperClassName),
|
|
1696
|
+
logoImageClassName: logoClassName,
|
|
1697
|
+
optixFlowConfig
|
|
1699
1698
|
}
|
|
1700
1699
|
),
|
|
1701
|
-
|
|
1702
|
-
"
|
|
1700
|
+
/* @__PURE__ */ jsx(
|
|
1701
|
+
"div",
|
|
1703
1702
|
{
|
|
1704
|
-
|
|
1705
|
-
|
|
1706
|
-
|
|
1703
|
+
className: cn(
|
|
1704
|
+
"grid md:flex w-full gap-8 md:gap-6 lg:gap-12 md:flex-wrap md:justify-between grid-cols-2",
|
|
1705
|
+
navGridClassName
|
|
1706
|
+
),
|
|
1707
|
+
children: sectionsContent
|
|
1707
1708
|
}
|
|
1708
1709
|
)
|
|
1709
|
-
] })
|
|
1710
|
-
|
|
1711
|
-
|
|
1712
|
-
|
|
1713
|
-
|
|
1714
|
-
|
|
1715
|
-
|
|
1716
|
-
|
|
1717
|
-
|
|
1718
|
-
|
|
1719
|
-
|
|
1720
|
-
|
|
1721
|
-
|
|
1722
|
-
|
|
1723
|
-
|
|
1724
|
-
|
|
1725
|
-
|
|
1726
|
-
|
|
1727
|
-
|
|
1728
|
-
|
|
1729
|
-
|
|
1730
|
-
|
|
1731
|
-
|
|
1710
|
+
] }),
|
|
1711
|
+
/* @__PURE__ */ jsxs(
|
|
1712
|
+
"div",
|
|
1713
|
+
{
|
|
1714
|
+
className: cn(
|
|
1715
|
+
"flex flex-col justify-between mt-0 md:mt-16 space-y-8 md:space-y-12",
|
|
1716
|
+
rightColumnClassName
|
|
1717
|
+
),
|
|
1718
|
+
children: [
|
|
1719
|
+
formConfig && /* @__PURE__ */ jsxs("div", { className: cn("", newsletterClassName), children: [
|
|
1720
|
+
newsletterHeading && /* @__PURE__ */ jsx(
|
|
1721
|
+
"h3",
|
|
1722
|
+
{
|
|
1723
|
+
className: cn(
|
|
1724
|
+
"mb-4 font-medium",
|
|
1725
|
+
newsletterHeadingClassName
|
|
1726
|
+
),
|
|
1727
|
+
children: newsletterHeading
|
|
1728
|
+
}
|
|
1729
|
+
),
|
|
1730
|
+
newsletterDescription && /* @__PURE__ */ jsx(
|
|
1731
|
+
"p",
|
|
1732
|
+
{
|
|
1733
|
+
className: cn(
|
|
1734
|
+
"mb-4 text-sm opacity-80",
|
|
1735
|
+
newsletterDescriptionClassName
|
|
1736
|
+
),
|
|
1737
|
+
children: newsletterDescription
|
|
1738
|
+
}
|
|
1739
|
+
),
|
|
1740
|
+
/* @__PURE__ */ jsxs(
|
|
1741
|
+
"div",
|
|
1742
|
+
{
|
|
1743
|
+
className: cn(
|
|
1744
|
+
"flex max-w-md gap-2",
|
|
1745
|
+
newsletterFormClassName
|
|
1746
|
+
),
|
|
1747
|
+
children: [
|
|
1748
|
+
/* @__PURE__ */ jsx(
|
|
1749
|
+
"input",
|
|
1750
|
+
{
|
|
1751
|
+
type: "email",
|
|
1752
|
+
placeholder: newsletterPlaceholder,
|
|
1753
|
+
className: "flex h-10 w-full rounded-md border border-input px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50"
|
|
1754
|
+
}
|
|
1755
|
+
),
|
|
1756
|
+
newsletterButtonText && /* @__PURE__ */ jsx(
|
|
1757
|
+
"button",
|
|
1758
|
+
{
|
|
1759
|
+
type: "submit",
|
|
1760
|
+
className: "inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 bg-primary text-primary-foreground hover:bg-primary/90 h-10 px-4 py-2",
|
|
1761
|
+
children: newsletterButtonText
|
|
1762
|
+
}
|
|
1763
|
+
)
|
|
1764
|
+
]
|
|
1765
|
+
}
|
|
1766
|
+
)
|
|
1767
|
+
] }),
|
|
1768
|
+
(socialTitle || socialLinksContent) && /* @__PURE__ */ jsxs("div", { className: cn(socialSectionClassName), children: [
|
|
1769
|
+
socialTitle && /* @__PURE__ */ jsx("p", { className: cn("mb-4 font-medium", socialTitleClassName), children: socialTitle }),
|
|
1770
|
+
/* @__PURE__ */ jsx(
|
|
1771
|
+
"ul",
|
|
1772
|
+
{
|
|
1773
|
+
className: cn(
|
|
1774
|
+
"flex items-center gap-4",
|
|
1775
|
+
socialLinksClassName
|
|
1776
|
+
),
|
|
1777
|
+
children: socialLinksContent
|
|
1778
|
+
}
|
|
1779
|
+
)
|
|
1780
|
+
] })
|
|
1781
|
+
]
|
|
1782
|
+
}
|
|
1783
|
+
)
|
|
1784
|
+
]
|
|
1785
|
+
}
|
|
1786
|
+
),
|
|
1787
|
+
/* @__PURE__ */ jsxs(
|
|
1788
|
+
"div",
|
|
1789
|
+
{
|
|
1790
|
+
className: cn(
|
|
1791
|
+
"mt-16 flex flex-col justify-between gap-4 border-t pt-8 text-sm opacity-80 md:flex-row md:items-center",
|
|
1792
|
+
bottomClassName
|
|
1793
|
+
),
|
|
1794
|
+
children: [
|
|
1795
|
+
/* @__PURE__ */ jsxs(
|
|
1796
|
+
"div",
|
|
1797
|
+
{
|
|
1798
|
+
className: cn(
|
|
1799
|
+
"flex flex-col gap-2 md:flex-row md:items-center md:gap-4",
|
|
1800
|
+
copyrightClassName
|
|
1801
|
+
),
|
|
1802
|
+
children: [
|
|
1803
|
+
/* @__PURE__ */ jsx(FooterCopyright, { copyright }),
|
|
1804
|
+
/* @__PURE__ */ jsx(
|
|
1805
|
+
BrandAttribution,
|
|
1806
|
+
{
|
|
1807
|
+
internalBrandSlug: "open_site_ai",
|
|
1808
|
+
optionIndex: 1,
|
|
1809
|
+
variant: "span",
|
|
1810
|
+
linkClassName: "underline underline-offset-4 transition-colors hover:opacity-100"
|
|
1811
|
+
}
|
|
1812
|
+
)
|
|
1813
|
+
]
|
|
1814
|
+
}
|
|
1815
|
+
),
|
|
1816
|
+
legalLinksContent && /* @__PURE__ */ jsx(
|
|
1817
|
+
"ul",
|
|
1818
|
+
{
|
|
1819
|
+
className: cn(
|
|
1820
|
+
"pt-4 md:pt-0 gap-4 grid md:flex grid-cols-2 items-center w-full md:w-fit",
|
|
1821
|
+
legalLinksClassName
|
|
1822
|
+
),
|
|
1823
|
+
children: legalLinksContent
|
|
1824
|
+
}
|
|
1825
|
+
)
|
|
1826
|
+
]
|
|
1827
|
+
}
|
|
1828
|
+
)
|
|
1732
1829
|
] }) })
|
|
1733
1830
|
}
|
|
1734
1831
|
);
|
|
@@ -1175,7 +1175,7 @@ var platformIconMap = {
|
|
|
1175
1175
|
yelp: "cib/yelp",
|
|
1176
1176
|
spotify: "cib/spotify",
|
|
1177
1177
|
apple: "cib/apple",
|
|
1178
|
-
x: "line-md/twitter-x",
|
|
1178
|
+
x: "line-md/twitter-x-alt",
|
|
1179
1179
|
github: "cib/github",
|
|
1180
1180
|
snapchat: "cib/snapchat",
|
|
1181
1181
|
discord: "cib/discord",
|
|
@@ -1194,6 +1194,8 @@ var platformIconMap = {
|
|
|
1194
1194
|
npmjs: "simple-icons/npm",
|
|
1195
1195
|
crates: "cib/rust",
|
|
1196
1196
|
rubygems: "cib/rubygems",
|
|
1197
|
+
behance: "cib/behance",
|
|
1198
|
+
dribbble: "cib/dribbble",
|
|
1197
1199
|
unknown: "icon-park-solid/circular-connection"
|
|
1198
1200
|
};
|
|
1199
1201
|
var SocialLinkIcon = React__namespace.forwardRef(
|