@cronos-labs/ui 0.2.0

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.
Files changed (63) hide show
  1. package/dist/FilterPillGroup/index.d.ts +1 -0
  2. package/dist/FilterPillGroup/index.js +1 -0
  3. package/dist/FilterPillGroup/styles.d.ts +8 -0
  4. package/dist/FilterPillGroup/styles.js +36 -0
  5. package/dist/Footer/index.d.ts +34 -0
  6. package/dist/Footer/index.js +48 -0
  7. package/dist/Footer/styles.d.ts +97 -0
  8. package/dist/Footer/styles.js +326 -0
  9. package/dist/Header/NavDropdown.d.ts +17 -0
  10. package/dist/Header/NavDropdown.js +39 -0
  11. package/dist/Header/helper.d.ts +1 -0
  12. package/dist/Header/helper.js +1 -0
  13. package/dist/Header/index.d.ts +46 -0
  14. package/dist/Header/index.js +162 -0
  15. package/dist/Header/styles.d.ts +158 -0
  16. package/dist/Header/styles.js +770 -0
  17. package/dist/LocaleSelector/index.d.ts +9 -0
  18. package/dist/LocaleSelector/index.js +62 -0
  19. package/dist/LocaleSelector/styles.d.ts +33 -0
  20. package/dist/LocaleSelector/styles.js +156 -0
  21. package/dist/SearchField/index.d.ts +14 -0
  22. package/dist/SearchField/index.js +6 -0
  23. package/dist/SearchField/styles.d.ts +20 -0
  24. package/dist/SearchField/styles.js +85 -0
  25. package/dist/SectionAnchorNav/index.d.ts +11 -0
  26. package/dist/SectionAnchorNav/index.js +41 -0
  27. package/dist/SectionAnchorNav/styles.d.ts +22 -0
  28. package/dist/SectionAnchorNav/styles.js +74 -0
  29. package/dist/Seo/index.d.ts +18 -0
  30. package/dist/Seo/index.js +53 -0
  31. package/dist/Seo/types.d.ts +4 -0
  32. package/dist/Seo/types.js +1 -0
  33. package/dist/config/eslintConfig.d.ts +6 -0
  34. package/dist/config/eslintConfig.js +31 -0
  35. package/dist/config/prettierConfig.d.ts +8 -0
  36. package/dist/config/prettierConfig.js +8 -0
  37. package/dist/format.d.ts +3 -0
  38. package/dist/format.js +9 -0
  39. package/dist/index.d.ts +21 -0
  40. package/dist/index.js +18 -0
  41. package/dist/locale/config.d.ts +5 -0
  42. package/dist/locale/config.js +103 -0
  43. package/dist/locale/hooks.d.ts +3 -0
  44. package/dist/locale/hooks.js +36 -0
  45. package/dist/locale/localePreference.d.ts +7 -0
  46. package/dist/locale/localePreference.js +21 -0
  47. package/dist/locale/localization.d.ts +11 -0
  48. package/dist/locale/localization.js +12 -0
  49. package/dist/locale/routes.d.ts +5 -0
  50. package/dist/locale/routes.js +32 -0
  51. package/dist/locale/types.d.ts +25 -0
  52. package/dist/locale/types.js +1 -0
  53. package/dist/navigationContent.d.ts +59 -0
  54. package/dist/navigationContent.js +552 -0
  55. package/dist/scrollToSectionHeading.d.ts +1 -0
  56. package/dist/scrollToSectionHeading.js +12 -0
  57. package/dist/tokens.d.ts +252 -0
  58. package/dist/tokens.js +253 -0
  59. package/dist/typography.d.ts +11 -0
  60. package/dist/typography.js +106 -0
  61. package/eslint-config.js +1 -0
  62. package/package.json +98 -0
  63. package/prettier-config.js +1 -0
@@ -0,0 +1 @@
1
+ export const normalizePathname = (pathname) => pathname !== '/' && pathname.endsWith('/') ? pathname.slice(0, -1) : pathname;
@@ -0,0 +1,46 @@
1
+ export type HeaderPresentationVariant = 'default' | 'inverse';
2
+ export interface HeaderPresentationState {
3
+ backgroundColor: string;
4
+ contrast?: boolean;
5
+ textColor: string;
6
+ variant: HeaderPresentationVariant;
7
+ }
8
+ export interface HeaderNavChild {
9
+ key: string;
10
+ label: string;
11
+ route?: string;
12
+ external?: boolean;
13
+ }
14
+ export interface HeaderNavItem {
15
+ label: string;
16
+ route?: string;
17
+ enabled: boolean;
18
+ order: number;
19
+ external?: boolean;
20
+ placeholder?: boolean;
21
+ badge?: string;
22
+ children?: HeaderNavChild[];
23
+ }
24
+ export interface HeaderContent {
25
+ joinWaitlist: string;
26
+ waitlistEmailCta: string;
27
+ localeSelectorAriaLabel: string;
28
+ }
29
+ export interface HeaderWaitlistCta {
30
+ href: string;
31
+ onClick?: (event: React.MouseEvent<HTMLAnchorElement>, ctaLocation: 'nav_desktop' | 'nav_mobile') => void;
32
+ }
33
+ interface HeaderProps {
34
+ brandWordmarkSrc: string;
35
+ content: HeaderContent;
36
+ forceDocumentNavigation?: boolean;
37
+ homeHref: string;
38
+ isExternalHref: (href: string) => boolean;
39
+ mobilePresentation?: HeaderPresentationState | undefined;
40
+ navItems: HeaderNavItem[];
41
+ presentation: HeaderPresentationState;
42
+ shouldAnimatePresentation: boolean;
43
+ waitlistCta?: HeaderWaitlistCta | undefined;
44
+ }
45
+ export declare function Header({ brandWordmarkSrc, content, forceDocumentNavigation, homeHref, isExternalHref, mobilePresentation, navItems, presentation, shouldAnimatePresentation, waitlistCta, }: HeaderProps): React.JSX.Element;
46
+ export {};
@@ -0,0 +1,162 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { useEffect, useState } from 'react';
3
+ import { useLocation, useNavigate } from 'react-router-dom';
4
+ import { LocaleSelector } from '../LocaleSelector/index.js';
5
+ import { buildLocalizedPath, stripLocalePrefix } from '../locale/routes.js';
6
+ import { useCurrentLocale } from '../locale/hooks.js';
7
+ import { desktopViewportQuery } from '../tokens.js';
8
+ import { normalizePathname } from './helper.js';
9
+ import { NavDropdown } from './NavDropdown.js';
10
+ import { BrandWordmarkMask, HeaderAction, HeaderActionArrow, HeaderBrandLink, HeaderFrame, HeaderMobileNav, HeaderMobileNavDisabledItem, HeaderMobileNavGroup, HeaderMobileNavGroupChevron, HeaderMobileNavGroupPanel, HeaderMobileNavGroupPanelInner, HeaderMobileNavGroupToggle, HeaderMobileNavSubLink, HeaderMobileNavSubList, HeaderMobileNavLink, HeaderMobileOverlay, HeaderMobileLocaleSlot, HeaderMobileSheet, HeaderMobileSoonBadge, HeaderMobileToggle, HeaderMobileToggleIcon, HeaderMobileWaitlistArrow, HeaderMobileWaitlistLabel, HeaderMobileWaitlistLink, HeaderShell, Nav, NavBadge, NavBadgeLabel, Wordmark, } from './styles.js';
11
+ function MobileNavGroup({ label, items }) {
12
+ const [isExpanded, setIsExpanded] = useState(false);
13
+ const panelId = `mobile-nav-group-${label.toLowerCase().replace(/\s+/gu, '-')}`;
14
+ return (_jsxs(HeaderMobileNavGroup, { children: [_jsxs(HeaderMobileNavGroupToggle, { type: "button", "aria-expanded": isExpanded, "aria-controls": panelId, onClick: () => setIsExpanded((currentValue) => !currentValue), children: [label, _jsx(HeaderMobileNavGroupChevron, { "$open": isExpanded, "aria-hidden": "true" })] }), _jsx(HeaderMobileNavGroupPanel, { "$open": isExpanded, id: panelId, children: _jsx(HeaderMobileNavGroupPanelInner, { "$open": isExpanded, children: _jsx(HeaderMobileNavSubList, { "aria-hidden": !isExpanded, children: items.map((item) => (_jsx(HeaderMobileNavSubLink, { href: item.href, "aria-label": item.ariaLabel, tabIndex: isExpanded ? undefined : -1, onClick: item.onClick, ...(item.external ? { target: '_blank', rel: 'noreferrer' } : {}), children: item.label }, item.key))) }) }) })] }));
15
+ }
16
+ export function Header({ brandWordmarkSrc, content, forceDocumentNavigation = false, homeHref, isExternalHref, mobilePresentation, navItems, presentation, shouldAnimatePresentation, waitlistCta, }) {
17
+ const [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false);
18
+ const locale = useCurrentLocale();
19
+ const location = useLocation();
20
+ const navigate = useNavigate();
21
+ const localizedHomePath = normalizePathname(homeHref);
22
+ const isHomeRoute = normalizePathname(location.pathname) === localizedHomePath;
23
+ const enabledNavItems = navItems.filter((item) => item.enabled).sort((a, b) => a.order - b.order);
24
+ const canonicalizeDocumentHref = (href) => {
25
+ const hashStart = href.indexOf('#');
26
+ const path = hashStart === -1 ? href : href.slice(0, hashStart);
27
+ const hash = hashStart === -1 ? '' : href.slice(hashStart);
28
+ if (path === '/' || path.endsWith('/')) {
29
+ return href;
30
+ }
31
+ return `${path}/${hash}`;
32
+ };
33
+ useEffect(() => {
34
+ setIsMobileMenuOpen(false);
35
+ }, [location.pathname, location.hash]);
36
+ useEffect(() => {
37
+ const desktopMediaQuery = window.matchMedia(desktopViewportQuery);
38
+ const handleChange = (event) => {
39
+ if (event.matches) {
40
+ setIsMobileMenuOpen(false);
41
+ }
42
+ };
43
+ desktopMediaQuery.addEventListener('change', handleChange);
44
+ return () => {
45
+ desktopMediaQuery.removeEventListener('change', handleChange);
46
+ };
47
+ }, []);
48
+ const resolveHref = (route) => {
49
+ const href = route.startsWith('#')
50
+ ? isHomeRoute
51
+ ? route
52
+ : `${localizedHomePath}${route}`
53
+ : route.startsWith('/')
54
+ ? buildLocalizedPath(route, locale)
55
+ : route;
56
+ return forceDocumentNavigation || isExternalHref(stripLocalePrefix(normalizePathname(href)))
57
+ ? canonicalizeDocumentHref(href)
58
+ : href;
59
+ };
60
+ const handleInternalNavigation = (event, href) => {
61
+ if (event.defaultPrevented ||
62
+ event.button !== 0 ||
63
+ event.metaKey ||
64
+ event.altKey ||
65
+ event.ctrlKey ||
66
+ event.shiftKey) {
67
+ return;
68
+ }
69
+ const isSameRouteNavigation = normalizePathname(href) === normalizePathname(location.pathname);
70
+ if (isSameRouteNavigation) {
71
+ event.preventDefault();
72
+ window.scrollTo(0, 0);
73
+ document
74
+ .querySelector('[data-home-shell="true"]')
75
+ ?.scrollTo({ top: 0, left: 0, behavior: 'auto' });
76
+ return;
77
+ }
78
+ if (isExternalHref(stripLocalePrefix(normalizePathname(href)))) {
79
+ return;
80
+ }
81
+ event.preventDefault();
82
+ void navigate(href);
83
+ };
84
+ const handleWaitlistCtaClick = (event, ctaLocation) => {
85
+ setIsMobileMenuOpen(false);
86
+ waitlistCta?.onClick?.(event, ctaLocation);
87
+ };
88
+ return (_jsxs(HeaderFrame, { "data-header-frame": "true", "$shouldAnimatePresentation": shouldAnimatePresentation, "$backgroundColor": presentation.backgroundColor, "$mobileBackgroundColor": mobilePresentation?.backgroundColor, "$contrast": presentation.contrast, children: [_jsxs(HeaderShell, { "$shouldAnimatePresentation": shouldAnimatePresentation, "$textColor": presentation.textColor, "$mobileTextColor": mobilePresentation?.textColor, children: [_jsx(HeaderBrandLink, { href: forceDocumentNavigation ? canonicalizeDocumentHref(homeHref) : homeHref, "aria-label": "Cronos home", onClick: forceDocumentNavigation
89
+ ? undefined
90
+ : (event) => handleInternalNavigation(event, homeHref), children: presentation.contrast ? (_jsx(BrandWordmarkMask, { "$url": brandWordmarkSrc, role: "img", "aria-label": "Cronos" })) : (_jsx(Wordmark, { "$shouldAnimatePresentation": shouldAnimatePresentation, "$variant": presentation.variant, "$mobileVariant": mobilePresentation?.variant, src: brandWordmarkSrc, alt: "Cronos" })) }), _jsx(Nav, { "$variant": presentation.variant, "$contrast": presentation.contrast, "aria-label": "Global navigation", children: enabledNavItems.map((item) => {
91
+ const label = item.label;
92
+ if (item.children && item.children.length > 0) {
93
+ const dropdownItems = item.children
94
+ .filter((child) => Boolean(child.route))
95
+ .map((child) => {
96
+ const childHref = resolveHref(child.route);
97
+ return {
98
+ key: child.key,
99
+ label: child.label,
100
+ href: childHref,
101
+ external: child.external,
102
+ onClick: child.external || forceDocumentNavigation
103
+ ? undefined
104
+ : (event) => {
105
+ handleInternalNavigation(event, childHref);
106
+ },
107
+ };
108
+ });
109
+ return (_jsx(NavDropdown, { label: label, items: dropdownItems, variant: presentation.variant, contrast: presentation.contrast }, item.label));
110
+ }
111
+ const content_ = (_jsxs(_Fragment, { children: [label, item.badge ? (_jsx(NavBadge, { children: _jsx(NavBadgeLabel, { children: item.badge }) })) : null] }));
112
+ if (item.placeholder || !item.route) {
113
+ return (_jsx("span", { "aria-disabled": "true", "aria-label": `${label} ${item.badge ?? ''}`.trim(), "data-has-badge": item.badge ? 'true' : undefined, children: content_ }, item.label));
114
+ }
115
+ const href = resolveHref(item.route);
116
+ return (_jsx("a", { href: href, "data-has-badge": item.badge ? 'true' : undefined, onClick: item.external
117
+ ? undefined
118
+ : forceDocumentNavigation
119
+ ? undefined
120
+ : (event) => {
121
+ handleInternalNavigation(event, href);
122
+ }, ...(item.external ? { target: '_blank', rel: 'noreferrer' } : {}), children: content_ }, item.label));
123
+ }) }), _jsx(HeaderMobileToggle, { type: "button", "aria-label": isMobileMenuOpen ? 'Close navigation menu' : 'Open navigation menu', "aria-expanded": isMobileMenuOpen, "aria-controls": "mobile-navigation", onClick: () => setIsMobileMenuOpen((currentValue) => !currentValue), children: _jsx(HeaderMobileToggleIcon, { "$open": isMobileMenuOpen, children: _jsx("span", {}) }) }), waitlistCta ? (_jsxs(HeaderAction, { "$variant": presentation.variant, href: resolveHref(waitlistCta.href), onClick: forceDocumentNavigation
124
+ ? undefined
125
+ : (event) => handleWaitlistCtaClick(event, 'nav_desktop'), children: [content.joinWaitlist, _jsx(HeaderActionArrow, { "aria-hidden": "true", children: "\u2192" })] })) : null] }), isMobileMenuOpen ? (_jsx(HeaderMobileOverlay, { onClick: () => setIsMobileMenuOpen(false), children: _jsxs(HeaderMobileSheet, { id: "mobile-navigation", role: "dialog", "aria-modal": "true", "aria-label": "Navigation menu", onClick: (event) => event.stopPropagation(), children: [_jsx(HeaderMobileNav, { "aria-label": "Mobile navigation", children: enabledNavItems.map((item) => {
126
+ const label = item.label;
127
+ if (item.children && item.children.length > 0) {
128
+ const groupItems = item.children
129
+ .filter((child) => Boolean(child.route))
130
+ .map((child) => {
131
+ const childHref = resolveHref(child.route);
132
+ return {
133
+ key: child.key,
134
+ label: child.label,
135
+ href: childHref,
136
+ external: child.external,
137
+ onClick: child.external || forceDocumentNavigation
138
+ ? () => setIsMobileMenuOpen(false)
139
+ : (event) => {
140
+ setIsMobileMenuOpen(false);
141
+ handleInternalNavigation(event, childHref);
142
+ },
143
+ };
144
+ });
145
+ return _jsx(MobileNavGroup, { label: label, items: groupItems }, item.label);
146
+ }
147
+ if (item.placeholder || !item.route) {
148
+ return (_jsxs(HeaderMobileNavDisabledItem, { "aria-disabled": "true", "aria-label": `${label} ${item.badge ?? ''}`.trim(), children: [label, item.badge ? (_jsx(HeaderMobileSoonBadge, { children: item.badge })) : null] }, item.label));
149
+ }
150
+ const href = resolveHref(item.route);
151
+ return (_jsxs(HeaderMobileNavLink, { href: href, onClick: item.external
152
+ ? () => setIsMobileMenuOpen(false)
153
+ : forceDocumentNavigation
154
+ ? () => setIsMobileMenuOpen(false)
155
+ : (event) => {
156
+ setIsMobileMenuOpen(false);
157
+ handleInternalNavigation(event, href);
158
+ }, ...(item.external ? { target: '_blank', rel: 'noreferrer' } : {}), children: [label, item.badge ? (_jsx(HeaderMobileSoonBadge, { children: item.badge })) : null] }, item.label));
159
+ }) }), _jsx(HeaderMobileLocaleSlot, { children: _jsx(LocaleSelector, { ariaLabel: content.localeSelectorAriaLabel, forceDocumentNavigation: forceDocumentNavigation, inlineMenu: true, menuPlacement: "down", onLocaleSelect: () => setIsMobileMenuOpen(false) }) }), waitlistCta ? (_jsxs(HeaderMobileWaitlistLink, { href: resolveHref(waitlistCta.href), onClick: forceDocumentNavigation
160
+ ? () => setIsMobileMenuOpen(false)
161
+ : (event) => handleWaitlistCtaClick(event, 'nav_mobile'), children: [_jsx(HeaderMobileWaitlistLabel, { children: content.waitlistEmailCta }), _jsx(HeaderMobileWaitlistArrow, { "aria-hidden": "true", children: "\u2192" })] })) : null] }) })) : null] }));
162
+ }
@@ -0,0 +1,158 @@
1
+ import type { HeaderPresentationVariant } from './index.js';
2
+ export declare const HeaderFrame: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
3
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
4
+ }, {
5
+ $shouldAnimatePresentation: boolean;
6
+ $backgroundColor: string;
7
+ $mobileBackgroundColor?: string | undefined;
8
+ $contrast?: boolean | undefined;
9
+ }>> & string;
10
+ export declare const HeaderShell: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, "style"> & {
11
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
12
+ }, {
13
+ $shouldAnimatePresentation: boolean;
14
+ $textColor: string;
15
+ $mobileTextColor?: string | undefined;
16
+ }>> & string;
17
+ export declare const HeaderBrandLink: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, "style"> & {
18
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
19
+ }> & string;
20
+ export declare const LogoMark: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("react").DetailedHTMLProps<import("react").ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>, "style"> & {
21
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
22
+ }, {
23
+ $shouldAnimatePresentation: boolean;
24
+ $variant: HeaderPresentationVariant;
25
+ $mobileVariant?: HeaderPresentationVariant | undefined;
26
+ }>> & string;
27
+ export declare const Wordmark: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("react").DetailedHTMLProps<import("react").ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>, "style"> & {
28
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
29
+ }, {
30
+ $shouldAnimatePresentation: boolean;
31
+ $variant: HeaderPresentationVariant;
32
+ $mobileVariant?: HeaderPresentationVariant | undefined;
33
+ }>> & string;
34
+ export declare const BrandMarkMask: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "style"> & {
35
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
36
+ }, {
37
+ $url: string;
38
+ }>> & string;
39
+ export declare const BrandWordmarkMask: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "style"> & {
40
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
41
+ }, {
42
+ $url: string;
43
+ }>> & string;
44
+ export declare const Nav: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, "style"> & {
45
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
46
+ }, {
47
+ $variant: HeaderPresentationVariant;
48
+ $contrast?: boolean | undefined;
49
+ }>> & string;
50
+ export declare const NavDropdown: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
51
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
52
+ }> & string;
53
+ export declare const NavDropdownTrigger: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "style"> & {
54
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
55
+ }, {
56
+ $variant: HeaderPresentationVariant;
57
+ $contrast?: boolean | undefined;
58
+ }>> & string;
59
+ export declare const NavDropdownLabel: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "style"> & {
60
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
61
+ }, {
62
+ $contrast?: boolean | undefined;
63
+ }>> & string;
64
+ export declare const NavDropdownChevron: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "style"> & {
65
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
66
+ }, {
67
+ $open: boolean;
68
+ }>> & string;
69
+ export declare const NavDropdownMenu: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
70
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
71
+ }, {
72
+ $open: boolean;
73
+ }>> & string;
74
+ export declare const NavDropdownList: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
75
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
76
+ }> & string;
77
+ export declare const NavDropdownOption: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, "style"> & {
78
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
79
+ }> & string;
80
+ export declare const NavBadge: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "style"> & {
81
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
82
+ }> & string;
83
+ export declare const NavBadgeLabel: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "style"> & {
84
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
85
+ }> & string;
86
+ export declare const HeaderAction: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, "style"> & {
87
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
88
+ }, {
89
+ $variant: HeaderPresentationVariant;
90
+ }>> & string;
91
+ export declare const HeaderActionArrow: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "style"> & {
92
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
93
+ }> & string;
94
+ export declare const HeaderMobileToggle: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "style"> & {
95
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
96
+ }> & string;
97
+ export declare const HeaderMobileToggleIcon: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "style"> & {
98
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
99
+ }, {
100
+ $open: boolean;
101
+ }>> & string;
102
+ export declare const HeaderMobileOverlay: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
103
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
104
+ }> & string;
105
+ export declare const HeaderMobileSheet: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
106
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
107
+ }> & string;
108
+ export declare const HeaderMobileNav: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, "style"> & {
109
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
110
+ }> & string;
111
+ export declare const HeaderMobileNavLink: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, "style"> & {
112
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
113
+ }> & string;
114
+ export declare const HeaderMobileNavGroup: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
115
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
116
+ }> & string;
117
+ export declare const HeaderMobileNavGroupToggle: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "style"> & {
118
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
119
+ }> & string;
120
+ export declare const HeaderMobileNavGroupChevron: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "style"> & {
121
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
122
+ }, {
123
+ $open: boolean;
124
+ }>> & string;
125
+ export declare const HeaderMobileNavGroupPanel: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
126
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
127
+ }, {
128
+ $open: boolean;
129
+ }>> & string;
130
+ export declare const HeaderMobileNavGroupPanelInner: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
131
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
132
+ }, {
133
+ $open: boolean;
134
+ }>> & string;
135
+ export declare const HeaderMobileNavSubList: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
136
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
137
+ }> & string;
138
+ export declare const HeaderMobileNavSubLink: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, "style"> & {
139
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
140
+ }> & string;
141
+ export declare const HeaderMobileNavDisabledItem: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "style"> & {
142
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
143
+ }> & string;
144
+ export declare const HeaderMobileSoonBadge: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "style"> & {
145
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
146
+ }> & string;
147
+ export declare const HeaderMobileLocaleSlot: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
148
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
149
+ }> & string;
150
+ export declare const HeaderMobileWaitlistLink: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, "style"> & {
151
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
152
+ }> & string;
153
+ export declare const HeaderMobileWaitlistLabel: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "style"> & {
154
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
155
+ }> & string;
156
+ export declare const HeaderMobileWaitlistArrow: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "style"> & {
157
+ style?: import("react").CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
158
+ }> & string;