igloo-d2c-components 1.0.9 → 1.0.11

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 (105) hide show
  1. package/README.md +18 -0
  2. package/dist/assets/icons/alert.svg +5 -0
  3. package/dist/assets/icons/arrow-down.svg +3 -0
  4. package/dist/assets/icons/arrow.svg +9 -0
  5. package/dist/assets/icons/close.svg +4 -0
  6. package/dist/assets/icons/facebook.svg +3 -0
  7. package/dist/assets/icons/index.ts +26 -0
  8. package/dist/assets/icons/instagram.svg +11 -0
  9. package/dist/assets/icons/youtube.svg +11 -0
  10. package/dist/assets/index.ts +13 -0
  11. package/dist/assets/tenants/ammetlife/logo.svg +10 -0
  12. package/dist/assets/tenants/cimb/logo-white.png +0 -0
  13. package/dist/assets/tenants/cimb/logo.svg +62 -0
  14. package/dist/assets/tenants/igloo/logo.svg +22 -0
  15. package/dist/cjs/index.js +2551 -41
  16. package/dist/cjs/index.js.map +1 -1
  17. package/dist/esm/index.js +2501 -41
  18. package/dist/esm/index.js.map +1 -1
  19. package/dist/types/assets/icons/index.d.ts +21 -0
  20. package/dist/types/assets/index.d.ts +9 -0
  21. package/dist/types/components/BillingToggle/BillingToggle.d.ts +34 -0
  22. package/dist/types/components/BillingToggle/index.d.ts +3 -0
  23. package/dist/types/components/BillingToggle/styled.d.ts +12 -0
  24. package/dist/types/components/CheckoutFormButton/CheckoutFormButton.d.ts +39 -0
  25. package/dist/types/components/CheckoutFormButton/index.d.ts +2 -0
  26. package/dist/types/components/CheckoutFormButton/styled.d.ts +9 -0
  27. package/dist/types/components/CheckoutHeader/CheckoutHeader.d.ts +41 -0
  28. package/dist/types/components/CheckoutHeader/index.d.ts +2 -0
  29. package/dist/types/components/CheckoutHeader/styled.d.ts +15 -0
  30. package/dist/types/components/CheckoutProgress/CheckoutProgress.d.ts +35 -0
  31. package/dist/types/components/CheckoutProgress/index.d.ts +2 -0
  32. package/dist/types/components/CheckoutProgress/styled.d.ts +16 -0
  33. package/dist/types/components/ChildInformationForm/ChildInformationForm.d.ts +52 -0
  34. package/dist/types/components/ChildInformationForm/index.d.ts +2 -0
  35. package/dist/types/components/ChildInformationForm/styled.d.ts +4 -0
  36. package/dist/types/components/ContactDetailsForm/ContactDetailsForm.d.ts +63 -0
  37. package/dist/types/components/ContactDetailsForm/index.d.ts +2 -0
  38. package/dist/types/components/ContactDetailsForm/styled.d.ts +10 -0
  39. package/dist/types/components/CoverageAmountSlider/CoverageAmountSlider.d.ts +57 -0
  40. package/dist/types/components/CoverageAmountSlider/index.d.ts +3 -0
  41. package/dist/types/components/CoverageAmountSlider/styled.d.ts +50 -0
  42. package/dist/types/components/Footer/Footer.d.ts +94 -0
  43. package/dist/types/components/Footer/index.d.ts +3 -0
  44. package/dist/types/components/Footer/styled.d.ts +38 -0
  45. package/dist/types/components/Header/Header.d.ts +159 -0
  46. package/dist/types/components/Header/index.d.ts +3 -0
  47. package/dist/types/components/Header/styled.d.ts +80 -0
  48. package/dist/types/components/HealthInformationForm/HealthInformationForm.d.ts +81 -0
  49. package/dist/types/components/HealthInformationForm/index.d.ts +2 -0
  50. package/dist/types/components/HealthInformationForm/styled.d.ts +4 -0
  51. package/dist/types/components/HealthQuestionGroup/HealthQuestionGroup.d.ts +40 -0
  52. package/dist/types/components/HealthQuestionGroup/index.d.ts +2 -0
  53. package/dist/types/components/HealthQuestionGroup/styled.d.ts +20 -0
  54. package/dist/types/components/InfoCallout/InfoCallout.d.ts +34 -0
  55. package/dist/types/components/InfoCallout/index.d.ts +3 -0
  56. package/dist/types/components/InfoCallout/styled.d.ts +16 -0
  57. package/dist/types/components/NewHeader/NewHeader.d.ts +60 -0
  58. package/dist/types/components/NewHeader/index.d.ts +3 -0
  59. package/dist/types/components/NewHeader/styled.d.ts +26 -0
  60. package/dist/types/components/OptionButton/OptionButton.d.ts +59 -0
  61. package/dist/types/components/OptionButton/index.d.ts +3 -0
  62. package/dist/types/components/OptionButton/styled.d.ts +18 -0
  63. package/dist/types/components/PersonalInformationForm/PersonalInformationForm.d.ts +75 -0
  64. package/dist/types/components/PersonalInformationForm/index.d.ts +2 -0
  65. package/dist/types/components/PersonalInformationForm/styled.d.ts +10 -0
  66. package/dist/types/components/ProductCard/ProductCard.d.ts +43 -0
  67. package/dist/types/components/ProductCard/index.d.ts +2 -0
  68. package/dist/types/components/ProductCard/styled.d.ts +27 -0
  69. package/dist/types/components/ProductSelectionDrawer/ProductSelectionDrawer.d.ts +54 -0
  70. package/dist/types/components/ProductSelectionDrawer/index.d.ts +3 -0
  71. package/dist/types/components/ProductSelectionDrawer/styled.d.ts +44 -0
  72. package/dist/types/components/QuestionSection/QuestionSection.d.ts +71 -0
  73. package/dist/types/components/QuestionSection/index.d.ts +3 -0
  74. package/dist/types/components/QuestionSection/styled.d.ts +16 -0
  75. package/dist/types/components/RecommendationsDrawer/RecommendationsDrawer.d.ts +92 -0
  76. package/dist/types/components/RecommendationsDrawer/index.d.ts +3 -0
  77. package/dist/types/components/RecommendationsDrawer/styled.d.ts +35 -0
  78. package/dist/types/components/ToggleGroup/ToggleGroup.d.ts +45 -0
  79. package/dist/types/components/ToggleGroup/index.d.ts +3 -0
  80. package/dist/types/components/ToggleGroup/styled.d.ts +17 -0
  81. package/dist/types/context/TenantThemeContext.d.ts +3 -2
  82. package/dist/types/index.d.ts +48 -4
  83. package/dist/types/{components/Banner → storybook-components}/Banner.stories.d.ts +1 -1
  84. package/dist/types/storybook-components/BillingToggle.stories.d.ts +10 -0
  85. package/dist/types/{components/Button → storybook-components}/Button.stories.d.ts +1 -1
  86. package/dist/types/{components/Card → storybook-components}/Card.stories.d.ts +1 -1
  87. package/dist/types/storybook-components/CheckoutProgress.stories.d.ts +9 -0
  88. package/dist/types/storybook-components/CoverageAmountSlider.stories.d.ts +14 -0
  89. package/dist/types/storybook-components/Footer.stories.d.ts +10 -0
  90. package/dist/types/storybook-components/Header.stories.d.ts +9 -0
  91. package/dist/types/storybook-components/HealthQuestionGroup.stories.d.ts +9 -0
  92. package/dist/types/storybook-components/InfoCallout.stories.d.ts +11 -0
  93. package/dist/types/storybook-components/NewHeader.stories.d.ts +82 -0
  94. package/dist/types/storybook-components/OptionButton.stories.d.ts +12 -0
  95. package/dist/types/storybook-components/ProductCard.stories.d.ts +9 -0
  96. package/dist/types/storybook-components/ProductSelectionDrawer.stories.d.ts +24 -0
  97. package/dist/types/storybook-components/QuestionSection.stories.d.ts +11 -0
  98. package/dist/types/storybook-components/RecommendationsDrawer.stories.d.ts +36 -0
  99. package/dist/types/storybook-components/ToggleGroup.stories.d.ts +10 -0
  100. package/dist/types/themes/index.d.ts +1 -1
  101. package/dist/types/themes/typography.d.ts +69 -0
  102. package/dist/types/types/tenant.d.ts +23 -2
  103. package/dist/types/utils/assets.d.ts +54 -0
  104. package/dist/types/utils/theme.d.ts +3 -2
  105. package/package.json +4 -2
@@ -0,0 +1,94 @@
1
+ /**
2
+ * Tenant-Aware Footer Component
3
+ * Responsive footer with links, social media, and company information
4
+ */
5
+ export interface SocialLink {
6
+ platform: 'facebook' | 'instagram' | 'youtube' | 'twitter' | 'linkedin';
7
+ url: string;
8
+ icon: string;
9
+ ariaLabel?: string;
10
+ }
11
+ export interface FooterLicenseImage {
12
+ src: string;
13
+ alt: string;
14
+ width: string;
15
+ height: string;
16
+ url?: string;
17
+ ariaLabel?: string;
18
+ }
19
+ export interface FooterNavigationLink {
20
+ label: string;
21
+ innerHref?: string;
22
+ outerHref?: string;
23
+ key?: string;
24
+ }
25
+ export interface FooterProps {
26
+ /**
27
+ * Simplified layout without navigation links
28
+ */
29
+ simplifiedLayout?: boolean;
30
+ /**
31
+ * Company introduction text
32
+ */
33
+ introText: string;
34
+ /**
35
+ * Company address
36
+ */
37
+ addressText?: string;
38
+ /**
39
+ * Social media links
40
+ */
41
+ socialLinks: SocialLink[];
42
+ /**
43
+ * License/certification images (e.g., OJK, APPARINDO)
44
+ */
45
+ licenseImages: FooterLicenseImage[];
46
+ /**
47
+ * Powered by image
48
+ */
49
+ poweredByImage?: FooterLicenseImage;
50
+ /**
51
+ * Footer navigation links organized in sections
52
+ */
53
+ navigationLinks?: FooterNavigationLink[][];
54
+ /**
55
+ * Current locale
56
+ */
57
+ currentLocale: string;
58
+ /**
59
+ * Host URL
60
+ */
61
+ host?: string;
62
+ /**
63
+ * Is mobile view
64
+ */
65
+ isMobile?: boolean;
66
+ /**
67
+ * Event handlers
68
+ */
69
+ onLinkClick?: (link: FooterNavigationLink) => void;
70
+ onSocialClick?: (platform: string, url: string) => void;
71
+ onPrivacyPolicyClick?: () => void;
72
+ onTermsOfServiceClick?: () => void;
73
+ /**
74
+ * Format message function for i18n
75
+ */
76
+ formatMessage?: (descriptor: {
77
+ id: string;
78
+ }) => string;
79
+ }
80
+ /**
81
+ * Footer component with tenant theme support
82
+ *
83
+ * @example
84
+ * ```tsx
85
+ * <Footer
86
+ * introText="Company introduction..."
87
+ * socialLinks={socialMediaLinks}
88
+ * licenseImages={licenses}
89
+ * navigationLinks={footerNavLinks}
90
+ * currentLocale="en"
91
+ * />
92
+ * ```
93
+ */
94
+ export declare function Footer({ simplifiedLayout, introText, addressText, socialLinks, licenseImages, poweredByImage, navigationLinks, currentLocale, host, isMobile: propIsMobile, onLinkClick, onSocialClick, onPrivacyPolicyClick, onTermsOfServiceClick, formatMessage, }: FooterProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,3 @@
1
+ export { Footer } from './Footer';
2
+ export type { FooterProps, SocialLink, FooterLicenseImage, FooterNavigationLink, } from './Footer';
3
+ export * from './styled';
@@ -0,0 +1,38 @@
1
+ /// <reference types="react" />
2
+ export declare const DivFooter: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
3
+ export declare const DivFooterConterResponsiveLayout: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
4
+ export declare const FooterHiddenContent: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
5
+ simplifiedLayout: boolean;
6
+ }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
7
+ export declare const DivIglooIntro: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
8
+ export declare const DivSocial: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
9
+ export declare const ButtonIcon: import("@emotion/styled").StyledComponent<import("@mui/material").ButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
10
+ ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
11
+ }, "children" | "style" | "className" | "classes" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "sx" | "tabIndex" | "TouchRippleProps" | "touchRippleRef" | "color" | "disableElevation" | "disableFocusRipple" | "endIcon" | "fullWidth" | "href" | "size" | "startIcon" | "variant"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
12
+ export declare const TypographyIntro: import("@emotion/styled").StyledComponent<import("@mui/material").TypographyOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & {
13
+ ref?: ((instance: HTMLSpanElement | null) => void) | import("react").RefObject<HTMLSpanElement> | null | undefined;
14
+ }, "fontFamily" | "children" | "p" | "style" | "fontSize" | "fontStyle" | "fontWeight" | "lineHeight" | "border" | "className" | "classes" | "sx" | "boxShadow" | "zIndex" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxSizing" | "color" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "marginBlockEnd" | "marginBlockStart" | "marginBottom" | "marginInlineEnd" | "marginInlineStart" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBlockEnd" | "paddingBlockStart" | "paddingBottom" | "paddingInlineEnd" | "paddingInlineStart" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "marginBlock" | "marginInline" | "overflow" | "padding" | "paddingBlock" | "paddingInline" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "typography" | "displayPrint" | "variant" | "align" | "gutterBottom" | "noWrap" | "paragraph" | "variantMapping"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
15
+ export declare const TypographyAddressFooter: import("@emotion/styled").StyledComponent<import("@mui/material").TypographyOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & {
16
+ ref?: ((instance: HTMLSpanElement | null) => void) | import("react").RefObject<HTMLSpanElement> | null | undefined;
17
+ }, "fontFamily" | "children" | "p" | "style" | "fontSize" | "fontStyle" | "fontWeight" | "lineHeight" | "border" | "className" | "classes" | "sx" | "boxShadow" | "zIndex" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxSizing" | "color" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "marginBlockEnd" | "marginBlockStart" | "marginBottom" | "marginInlineEnd" | "marginInlineStart" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBlockEnd" | "paddingBlockStart" | "paddingBottom" | "paddingInlineEnd" | "paddingInlineStart" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "marginBlock" | "marginInline" | "overflow" | "padding" | "paddingBlock" | "paddingInline" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "typography" | "displayPrint" | "variant" | "align" | "gutterBottom" | "noWrap" | "paragraph" | "variantMapping"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
18
+ export declare const DivLogos: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
19
+ export declare const DivFirstRow: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
20
+ export declare const ButtonOjkLink: import("@emotion/styled").StyledComponent<import("@mui/material").ButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
21
+ ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
22
+ }, "children" | "style" | "className" | "classes" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "sx" | "tabIndex" | "TouchRippleProps" | "touchRippleRef" | "color" | "disableElevation" | "disableFocusRipple" | "endIcon" | "fullWidth" | "href" | "size" | "startIcon" | "variant"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
23
+ export declare const ImageOjkLicense: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>, {}>;
24
+ export declare const ButtonSolisoustamaLink: import("@emotion/styled").StyledComponent<import("@mui/material").ButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
25
+ ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
26
+ }, "children" | "style" | "className" | "classes" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "sx" | "tabIndex" | "TouchRippleProps" | "touchRippleRef" | "color" | "disableElevation" | "disableFocusRipple" | "endIcon" | "fullWidth" | "href" | "size" | "startIcon" | "variant"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
27
+ export declare const ImageSolisoustama: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>, {}>;
28
+ export declare const DivLinks: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
29
+ export declare const DivSection: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
30
+ export declare const ButtonBottomLink: import("@emotion/styled").StyledComponent<import("@mui/material").ButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
31
+ ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
32
+ }, "children" | "style" | "className" | "classes" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "sx" | "tabIndex" | "TouchRippleProps" | "touchRippleRef" | "color" | "disableElevation" | "disableFocusRipple" | "endIcon" | "fullWidth" | "href" | "size" | "startIcon" | "variant"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
33
+ export declare const StyledDivider: import("@emotion/styled").StyledComponent<import("@mui/material").DividerOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLHRElement>, HTMLHRElement>, "ref"> & {
34
+ ref?: ((instance: HTMLHRElement | null) => void) | import("react").RefObject<HTMLHRElement> | null | undefined;
35
+ }, "children" | "style" | "light" | "className" | "classes" | "sx" | "textAlign" | "variant" | "absolute" | "orientation" | "flexItem"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
36
+ export declare const DivBottom: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
37
+ export declare const DivSep: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
38
+ export declare const AnchorLink: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, {}>;
@@ -0,0 +1,159 @@
1
+ /**
2
+ * Tenant-Aware Header Component
3
+ * Responsive header with navigation, authentication, and language selection
4
+ */
5
+ import * as React from 'react';
6
+ export interface NavigationLink {
7
+ key: string;
8
+ name: string;
9
+ icon: string;
10
+ link?: string;
11
+ badge?: string;
12
+ }
13
+ export interface LanguageOption {
14
+ value: string;
15
+ locale: string;
16
+ label: string;
17
+ }
18
+ export interface HeaderProps {
19
+ /**
20
+ * Logo image source
21
+ */
22
+ logo: string;
23
+ /**
24
+ * Alternative logo for special pages (e.g., partnership page)
25
+ */
26
+ alternateLogo?: string;
27
+ /**
28
+ * Show alternate logo
29
+ */
30
+ showAlternateLogo?: boolean;
31
+ /**
32
+ * Navigation links for products/services
33
+ */
34
+ navigationLinks: NavigationLink[];
35
+ /**
36
+ * Available languages
37
+ */
38
+ languages: LanguageOption[];
39
+ /**
40
+ * Current locale (e.g., 'en', 'id')
41
+ */
42
+ currentLocale: string;
43
+ /**
44
+ * Current language code
45
+ */
46
+ currentLang?: string;
47
+ /**
48
+ * User authentication token
49
+ */
50
+ userToken?: string | null;
51
+ /**
52
+ * User first name for avatar
53
+ */
54
+ userFirstName?: string;
55
+ /**
56
+ * Is mobile view
57
+ */
58
+ isMobile?: boolean;
59
+ /**
60
+ * Is scrolled
61
+ */
62
+ scrolled?: boolean;
63
+ /**
64
+ * Is partnership page mobile view
65
+ */
66
+ isPartnershipPageMobileView?: boolean;
67
+ /**
68
+ * Is partnership page PC view
69
+ */
70
+ isPartnershipPagePCView?: boolean;
71
+ /**
72
+ * Is SEO page view
73
+ */
74
+ isSeoPageView?: boolean;
75
+ /**
76
+ * Show get quote button in header
77
+ */
78
+ showGetQuoteButton?: boolean;
79
+ /**
80
+ * Banner data for CTA
81
+ */
82
+ bannerData?: {
83
+ ctaText?: string;
84
+ ctaBGColor?: string;
85
+ ctaTextColor?: string;
86
+ };
87
+ /**
88
+ * CTA data for category page
89
+ */
90
+ ctaData?: {
91
+ ctaText?: string;
92
+ };
93
+ /**
94
+ * Host URL
95
+ */
96
+ host?: string;
97
+ /**
98
+ * Welcome message for drawer
99
+ */
100
+ welcomeMessage?: string;
101
+ /**
102
+ * Event handlers
103
+ */
104
+ onLogoClick?: () => void;
105
+ onProductMenuClick?: (key: string) => void;
106
+ onLanguageChange?: (locale: string, value: string) => void;
107
+ onLoginClick?: () => void;
108
+ onSignupClick?: () => void;
109
+ onLogoutClick?: () => void;
110
+ onPartnershipClick?: () => void;
111
+ onAboutUsClick?: () => void;
112
+ onBlogClick?: () => void;
113
+ onMyProfileClick?: () => void;
114
+ onGetQuoteClick?: () => void;
115
+ onPartnershipCTAClick?: () => void;
116
+ /**
117
+ * Format message function for i18n
118
+ */
119
+ formatMessage?: (descriptor: {
120
+ id: string;
121
+ }) => string;
122
+ /**
123
+ * Additional menu items (e.g., Partnership, About Us, Blog)
124
+ */
125
+ menuItems?: {
126
+ partnership?: {
127
+ label: string;
128
+ route: string;
129
+ };
130
+ aboutUs?: {
131
+ label: string;
132
+ route: string;
133
+ };
134
+ blog?: {
135
+ label: string;
136
+ url: string;
137
+ };
138
+ };
139
+ /**
140
+ * User profile component
141
+ */
142
+ userProfileComponent?: React.ReactNode;
143
+ }
144
+ /**
145
+ * Header component with tenant theme support and responsive navigation
146
+ *
147
+ * @example
148
+ * ```tsx
149
+ * <Header
150
+ * logo={logoSrc}
151
+ * navigationLinks={navLinks}
152
+ * languages={languageOptions}
153
+ * currentLocale="en"
154
+ * onLogoClick={() => history.push('/')}
155
+ * onLoginClick={() => setShowLoginModal(true)}
156
+ * />
157
+ * ```
158
+ */
159
+ export declare function Header({ logo, alternateLogo, showAlternateLogo, navigationLinks, languages, currentLocale, currentLang, userToken, userFirstName, isMobile: propIsMobile, scrolled, isPartnershipPageMobileView, isPartnershipPagePCView, isSeoPageView, showGetQuoteButton, bannerData, ctaData, host, welcomeMessage, formatMessage, menuItems, userProfileComponent, onLogoClick, onProductMenuClick, onLanguageChange, onLoginClick, onSignupClick, onLogoutClick, onPartnershipClick, onAboutUsClick, onBlogClick, onMyProfileClick, onGetQuoteClick, onPartnershipCTAClick, }: HeaderProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,3 @@
1
+ export { Header } from './Header';
2
+ export type { HeaderProps, NavigationLink, LanguageOption } from './Header';
3
+ export * from './styled';
@@ -0,0 +1,80 @@
1
+ /// <reference types="react" />
2
+ export declare const StyledAppBar: import("@emotion/styled").StyledComponent<import("@mui/material").AppBarOwnProps & Omit<import("@mui/material").PaperOwnProps, "classes" | "color" | "position"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, "ref"> & {
3
+ ref?: ((instance: HTMLElement | null) => void) | import("react").RefObject<HTMLElement> | null | undefined;
4
+ }, "children" | "style" | "className" | "classes" | "sx" | "color" | "position" | "variant" | "square" | "elevation" | "enableColorOnDark"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
5
+ ispartnershippagemobileview: boolean;
6
+ scrolled: any;
7
+ }, {}, {}>;
8
+ export declare const ResponsiveB2CLayout: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
9
+ export declare const StyledContainer: import("@emotion/styled").StyledComponent<import("@mui/material").ContainerOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
10
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
11
+ }, "children" | "fixed" | "style" | "className" | "classes" | "sx" | "maxWidth" | "disableGutters"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
12
+ ispartnershippagemobileview: boolean;
13
+ scrolled: any;
14
+ }, {}, {}>;
15
+ export declare const TypographyLogo: import("@emotion/styled").StyledComponent<import("@mui/material").TypographyOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & {
16
+ ref?: ((instance: HTMLSpanElement | null) => void) | import("react").RefObject<HTMLSpanElement> | null | undefined;
17
+ }, "fontFamily" | "children" | "p" | "style" | "fontSize" | "fontStyle" | "fontWeight" | "lineHeight" | "border" | "className" | "classes" | "sx" | "boxShadow" | "zIndex" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxSizing" | "color" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "marginBlockEnd" | "marginBlockStart" | "marginBottom" | "marginInlineEnd" | "marginInlineStart" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBlockEnd" | "paddingBlockStart" | "paddingBottom" | "paddingInlineEnd" | "paddingInlineStart" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "marginBlock" | "marginInline" | "overflow" | "padding" | "paddingBlock" | "paddingInline" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "typography" | "displayPrint" | "variant" | "align" | "gutterBottom" | "noWrap" | "paragraph" | "variantMapping"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
18
+ export declare const ButtonDesktopMenu: import("@emotion/styled").StyledComponent<import("@mui/material").ButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
19
+ ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
20
+ }, "children" | "style" | "className" | "classes" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "sx" | "tabIndex" | "TouchRippleProps" | "touchRippleRef" | "color" | "disableElevation" | "disableFocusRipple" | "endIcon" | "fullWidth" | "href" | "size" | "startIcon" | "variant"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
21
+ export declare const AnchorLinks: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, {}>;
22
+ export declare const StyledAvatar: import("@emotion/styled").StyledComponent<import("@mui/material").AvatarOwnProps & import("@mui/material").AvatarSlotsAndSlotProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
23
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
24
+ }, "children" | "style" | "className" | "classes" | "sx" | "variant" | "sizes" | "alt" | "src" | "srcSet" | "imgProps" | "slots" | "slotProps"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
25
+ export declare const DivButtonWrapper: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
26
+ export declare const ButtonAuth: import("@emotion/styled").StyledComponent<import("@mui/material").ButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
27
+ ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
28
+ }, "children" | "style" | "className" | "classes" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "sx" | "tabIndex" | "TouchRippleProps" | "touchRippleRef" | "color" | "disableElevation" | "disableFocusRipple" | "endIcon" | "fullWidth" | "href" | "size" | "startIcon" | "variant"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
29
+ export declare const TypographyAuth: import("@emotion/styled").StyledComponent<import("@mui/material").TypographyOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & {
30
+ ref?: ((instance: HTMLSpanElement | null) => void) | import("react").RefObject<HTMLSpanElement> | null | undefined;
31
+ }, "fontFamily" | "children" | "p" | "style" | "fontSize" | "fontStyle" | "fontWeight" | "lineHeight" | "border" | "className" | "classes" | "sx" | "boxShadow" | "zIndex" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxSizing" | "color" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "marginBlockEnd" | "marginBlockStart" | "marginBottom" | "marginInlineEnd" | "marginInlineStart" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBlockEnd" | "paddingBlockStart" | "paddingBottom" | "paddingInlineEnd" | "paddingInlineStart" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "marginBlock" | "marginInline" | "overflow" | "padding" | "paddingBlock" | "paddingInline" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "typography" | "displayPrint" | "variant" | "align" | "gutterBottom" | "noWrap" | "paragraph" | "variantMapping"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
32
+ export declare const StyledMenu: import("@emotion/styled").StyledComponent<import("@mui/material").MenuProps & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
33
+ export declare const DivProductListing: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
34
+ export declare const StyledMenuItem: import("@emotion/styled").StyledComponent<import("@mui/material").MenuItemOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, "ref"> & {
35
+ ref?: ((instance: HTMLLIElement | null) => void) | import("react").RefObject<HTMLLIElement> | null | undefined;
36
+ }, "children" | "style" | "className" | "classes" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "sx" | "tabIndex" | "TouchRippleProps" | "touchRippleRef" | "autoFocus" | "dense" | "selected" | "disableGutters" | "divider"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
37
+ export declare const SpanImageWrapper: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
38
+ export declare const ImageProductIcon: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>, {}>;
39
+ export declare const StyledMenuItemDesktop: import("@emotion/styled").StyledComponent<import("@mui/material").MenuItemOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, "ref"> & {
40
+ ref?: ((instance: HTMLLIElement | null) => void) | import("react").RefObject<HTMLLIElement> | null | undefined;
41
+ }, "children" | "style" | "className" | "classes" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "sx" | "tabIndex" | "TouchRippleProps" | "touchRippleRef" | "autoFocus" | "dense" | "selected" | "disableGutters" | "divider"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
42
+ export declare const StyledCloseIcon: import("@emotion/styled").StyledComponent<import("@mui/material").SvgIconOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").SVGProps<SVGSVGElement>, "ref"> & {
43
+ ref?: ((instance: SVGSVGElement | null) => void) | import("react").RefObject<SVGSVGElement> | null | undefined;
44
+ }, "children" | "style" | "fontSize" | "className" | "classes" | "sx" | "color" | "shapeRendering" | "viewBox" | "htmlColor" | "inheritViewBox" | "titleAccess"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
45
+ export declare const StyledAvatarUserIcon: import("@emotion/styled").StyledComponent<import("@mui/material").AvatarOwnProps & import("@mui/material").AvatarSlotsAndSlotProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
46
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
47
+ }, "children" | "style" | "className" | "classes" | "sx" | "variant" | "sizes" | "alt" | "src" | "srcSet" | "imgProps" | "slots" | "slotProps"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
48
+ export declare const StyledMenuIcon: import("@emotion/styled").StyledComponent<import("@mui/material").SvgIconOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").SVGProps<SVGSVGElement>, "ref"> & {
49
+ ref?: ((instance: SVGSVGElement | null) => void) | import("react").RefObject<SVGSVGElement> | null | undefined;
50
+ }, "children" | "style" | "fontSize" | "className" | "classes" | "sx" | "color" | "shapeRendering" | "viewBox" | "htmlColor" | "inheritViewBox" | "titleAccess"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
51
+ ispartnershippagemobileview: any;
52
+ scrolled: any;
53
+ }, {}, {}>;
54
+ export declare const StyledDrawer: import("@emotion/styled").StyledComponent<import("@mui/material").DrawerProps & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
55
+ export declare const DivLogoWrapper: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
56
+ export declare const DivLogo: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
57
+ export declare const DivCrossIconWrapper: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
58
+ export declare const StyledCloseIconBtn: import("@emotion/styled").StyledComponent<import("@mui/material").IconButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
59
+ ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
60
+ }, "children" | "style" | "className" | "classes" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "sx" | "tabIndex" | "TouchRippleProps" | "touchRippleRef" | "color" | "disableFocusRipple" | "size" | "edge"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
61
+ export declare const DivLoginActionContainer: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
62
+ export declare const DivCommonMenus: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
63
+ export declare const MenuItemOtherLinks: import("@emotion/styled").StyledComponent<import("@mui/material").MenuItemOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, "ref"> & {
64
+ ref?: ((instance: HTMLLIElement | null) => void) | import("react").RefObject<HTMLLIElement> | null | undefined;
65
+ }, "children" | "style" | "className" | "classes" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "sx" | "tabIndex" | "TouchRippleProps" | "touchRippleRef" | "autoFocus" | "dense" | "selected" | "disableGutters" | "divider"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
66
+ export declare const StyledFormControlLabel: import("@emotion/styled").StyledComponent<import("@mui/material").FormControlLabelProps & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
67
+ export declare const ButtonLogout: import("@emotion/styled").StyledComponent<import("@mui/material").ButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
68
+ ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
69
+ }, "children" | "style" | "className" | "classes" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "sx" | "tabIndex" | "TouchRippleProps" | "touchRippleRef" | "color" | "disableElevation" | "disableFocusRipple" | "endIcon" | "fullWidth" | "href" | "size" | "startIcon" | "variant"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
70
+ export declare const DivLogoutBtnWrapper: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
71
+ export declare const AnchorLink: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, {}>;
72
+ export declare const StyledButton: import("@emotion/styled").StyledComponent<import("@mui/material").ButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
73
+ ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
74
+ }, "children" | "style" | "className" | "classes" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "sx" | "tabIndex" | "TouchRippleProps" | "touchRippleRef" | "color" | "disableElevation" | "disableFocusRipple" | "endIcon" | "fullWidth" | "href" | "size" | "startIcon" | "variant"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
75
+ export declare const StyledButtonBanner: import("@emotion/styled").StyledComponent<import("@mui/material").ButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
76
+ ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
77
+ }, "children" | "style" | "className" | "classes" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "sx" | "tabIndex" | "TouchRippleProps" | "touchRippleRef" | "color" | "disableElevation" | "disableFocusRipple" | "endIcon" | "fullWidth" | "href" | "size" | "startIcon" | "variant"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
78
+ export declare const TypographyBtnText: import("@emotion/styled").StyledComponent<import("@mui/material").TypographyOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & {
79
+ ref?: ((instance: HTMLSpanElement | null) => void) | import("react").RefObject<HTMLSpanElement> | null | undefined;
80
+ }, "fontFamily" | "children" | "p" | "style" | "fontSize" | "fontStyle" | "fontWeight" | "lineHeight" | "border" | "className" | "classes" | "sx" | "boxShadow" | "zIndex" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxSizing" | "color" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "marginBlockEnd" | "marginBlockStart" | "marginBottom" | "marginInlineEnd" | "marginInlineStart" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBlockEnd" | "paddingBlockStart" | "paddingBottom" | "paddingInlineEnd" | "paddingInlineStart" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "marginBlock" | "marginInline" | "overflow" | "padding" | "paddingBlock" | "paddingInline" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "typography" | "displayPrint" | "variant" | "align" | "gutterBottom" | "noWrap" | "paragraph" | "variantMapping"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
@@ -0,0 +1,81 @@
1
+ /**
2
+ * Health Information Form Component
3
+ * Collects health-related information including weight, height, and health questions
4
+ */
5
+ import * as React from 'react';
6
+ export interface HealthInformationField {
7
+ name: string;
8
+ label: string;
9
+ value: any;
10
+ error?: string;
11
+ touched?: boolean;
12
+ helperText?: string;
13
+ type?: string;
14
+ inputProps?: any;
15
+ onChange?: (e: any) => void;
16
+ onBlur?: (e: any) => void;
17
+ }
18
+ export interface HealthQuestion {
19
+ /**
20
+ * Question text
21
+ */
22
+ question: string;
23
+ /**
24
+ * Question number (optional)
25
+ */
26
+ questionNumber?: number;
27
+ /**
28
+ * Field name for the question
29
+ */
30
+ name: string;
31
+ /**
32
+ * Selected value ('yes' | 'no' | undefined)
33
+ */
34
+ value?: 'yes' | 'no';
35
+ /**
36
+ * Callback when option is selected
37
+ */
38
+ onChange: (value: 'yes' | 'no') => void;
39
+ /**
40
+ * Error message
41
+ */
42
+ error?: string;
43
+ /**
44
+ * Labels for Yes/No buttons
45
+ */
46
+ labels?: {
47
+ yes?: string;
48
+ no?: string;
49
+ };
50
+ }
51
+ export interface HealthInformationFormProps {
52
+ /**
53
+ * Render function for measurement fields (weight, height)
54
+ */
55
+ renderField: (field: HealthInformationField) => React.ReactNode;
56
+ /**
57
+ * Measurement fields (weight and height)
58
+ */
59
+ measurementFields: {
60
+ weight: HealthInformationField;
61
+ height: HealthInformationField;
62
+ };
63
+ /**
64
+ * Health questions array
65
+ * Allows for flexible number of questions (e.g., gender-specific)
66
+ */
67
+ healthQuestions: HealthQuestion[];
68
+ /**
69
+ * Form submission handler
70
+ */
71
+ onSubmit?: (e: React.FormEvent) => void;
72
+ /**
73
+ * Optional reference for scroll handling
74
+ */
75
+ formRef?: React.RefObject<HTMLDivElement>;
76
+ /**
77
+ * Optional custom styles
78
+ */
79
+ sx?: any;
80
+ }
81
+ export declare const HealthInformationForm: React.FC<HealthInformationFormProps>;
@@ -0,0 +1,2 @@
1
+ export { HealthInformationForm } from './HealthInformationForm';
2
+ export type { HealthInformationField, HealthInformationFormProps, HealthQuestion } from './HealthInformationForm';
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ export declare const FormContainer: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
3
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
4
+ }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Health Question Group Component
3
+ * Displays a health question with Yes/No button options
4
+ */
5
+ import * as React from 'react';
6
+ export interface HealthQuestionGroupProps {
7
+ /**
8
+ * Question text
9
+ */
10
+ question: string;
11
+ /**
12
+ * Question number (optional)
13
+ */
14
+ questionNumber?: number;
15
+ /**
16
+ * Selected value ('yes' | 'no' | undefined)
17
+ */
18
+ value?: 'yes' | 'no';
19
+ /**
20
+ * Callback when option is selected
21
+ */
22
+ onChange: (value: 'yes' | 'no') => void;
23
+ /**
24
+ * Error message
25
+ */
26
+ error?: string;
27
+ /**
28
+ * Labels for Yes/No buttons
29
+ * @default { yes: 'Yes', no: 'No' }
30
+ */
31
+ labels?: {
32
+ yes?: string;
33
+ no?: string;
34
+ };
35
+ /**
36
+ * Optional custom styles
37
+ */
38
+ sx?: any;
39
+ }
40
+ export declare const HealthQuestionGroup: React.FC<HealthQuestionGroupProps>;
@@ -0,0 +1,2 @@
1
+ export { HealthQuestionGroup } from './HealthQuestionGroup';
2
+ export type { HealthQuestionGroupProps } from './HealthQuestionGroup';
@@ -0,0 +1,20 @@
1
+ /// <reference types="react" />
2
+ export declare const QuestionContainer: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
3
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
4
+ }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
5
+ export declare const QuestionText: import("@emotion/styled").StyledComponent<import("@mui/material").TypographyOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & {
6
+ ref?: ((instance: HTMLSpanElement | null) => void) | import("react").RefObject<HTMLSpanElement> | null | undefined;
7
+ }, "fontFamily" | "children" | "p" | "style" | "fontSize" | "fontStyle" | "fontWeight" | "lineHeight" | "border" | "className" | "classes" | "sx" | "boxShadow" | "zIndex" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxSizing" | "color" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "marginBlockEnd" | "marginBlockStart" | "marginBottom" | "marginInlineEnd" | "marginInlineStart" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBlockEnd" | "paddingBlockStart" | "paddingBottom" | "paddingInlineEnd" | "paddingInlineStart" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "marginBlock" | "marginInline" | "overflow" | "padding" | "paddingBlock" | "paddingInline" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "typography" | "displayPrint" | "variant" | "align" | "gutterBottom" | "noWrap" | "paragraph" | "variantMapping"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
8
+ export declare const OptionsContainer: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
9
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
10
+ }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
11
+ export declare const OptionButton: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
12
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
13
+ }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
14
+ selected?: boolean | undefined;
15
+ }, {}, {}>;
16
+ export declare const OptionText: import("@emotion/styled").StyledComponent<import("@mui/material").TypographyOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & {
17
+ ref?: ((instance: HTMLSpanElement | null) => void) | import("react").RefObject<HTMLSpanElement> | null | undefined;
18
+ }, "fontFamily" | "children" | "p" | "style" | "fontSize" | "fontStyle" | "fontWeight" | "lineHeight" | "border" | "className" | "classes" | "sx" | "boxShadow" | "zIndex" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxSizing" | "color" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "marginBlockEnd" | "marginBlockStart" | "marginBottom" | "marginInlineEnd" | "marginInlineStart" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBlockEnd" | "paddingBlockStart" | "paddingBottom" | "paddingInlineEnd" | "paddingInlineStart" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "marginBlock" | "marginInline" | "overflow" | "padding" | "paddingBlock" | "paddingInline" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "typography" | "displayPrint" | "variant" | "align" | "gutterBottom" | "noWrap" | "paragraph" | "variantMapping"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
19
+ selected?: boolean | undefined;
20
+ }, {}, {}>;