@foxford/navigation-ui 1.0.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.
- package/README.mdx +115 -0
- package/_virtual/preload-helper.js +57 -0
- package/footer/atoms/accordeon/assets/arrow-down.svg +1 -0
- package/footer/atoms/accordeon/index.d.ts +7 -0
- package/footer/atoms/accordeon/index.d.ts.map +1 -0
- package/footer/atoms/accordeon/index.js +23 -0
- package/footer/atoms/accordeon/styled.d.ts +20 -0
- package/footer/atoms/accordeon/styled.d.ts.map +1 -0
- package/footer/atoms/accordeon/styled.js +73 -0
- package/footer/atoms/license-link/index.d.ts +6 -0
- package/footer/atoms/license-link/index.d.ts.map +1 -0
- package/footer/atoms/license-link/index.js +17 -0
- package/footer/atoms/license-link/styled.d.ts +14 -0
- package/footer/atoms/license-link/styled.d.ts.map +1 -0
- package/footer/atoms/license-link/styled.js +19 -0
- package/footer/atoms/logo-sk/assets/sk_logo.svg +1 -0
- package/footer/atoms/logo-sk/index.d.ts +5 -0
- package/footer/atoms/logo-sk/index.d.ts.map +1 -0
- package/footer/atoms/logo-sk/index.js +16 -0
- package/footer/atoms/logo-sk/styled.d.ts +11 -0
- package/footer/atoms/logo-sk/styled.d.ts.map +1 -0
- package/footer/atoms/logo-sk/styled.js +15 -0
- package/footer/atoms/social-link/index.d.ts +8 -0
- package/footer/atoms/social-link/index.d.ts.map +1 -0
- package/footer/atoms/social-link/index.js +35 -0
- package/footer/contacts-column.d.ts +5 -0
- package/footer/contacts-column.d.ts.map +1 -0
- package/footer/contacts-column.js +105 -0
- package/footer/footer.d.ts +3 -0
- package/footer/footer.d.ts.map +1 -0
- package/footer/footer.js +77 -0
- package/footer/molecules/app-info/assets/fox-logo.svg +1 -0
- package/footer/molecules/app-info/index.d.ts +9 -0
- package/footer/molecules/app-info/index.d.ts.map +1 -0
- package/footer/molecules/app-info/index.js +59 -0
- package/footer/molecules/app-info/styled.d.ts +31 -0
- package/footer/molecules/app-info/styled.d.ts.map +1 -0
- package/footer/molecules/app-info/styled.js +101 -0
- package/footer/molecules/footer-logo/assets/logo-cobranding.svg +1 -0
- package/footer/molecules/footer-logo/assets/logo.svg +1 -0
- package/footer/molecules/footer-logo/index.d.ts +6 -0
- package/footer/molecules/footer-logo/index.d.ts.map +1 -0
- package/footer/molecules/footer-logo/index.js +27 -0
- package/footer/molecules/footer-menu/index.d.ts +12 -0
- package/footer/molecules/footer-menu/index.d.ts.map +1 -0
- package/footer/molecules/footer-menu/index.js +29 -0
- package/footer/molecules/geoposition/city-dialog-styled.d.ts +7 -0
- package/footer/molecules/geoposition/city-dialog-styled.d.ts.map +1 -0
- package/footer/molecules/geoposition/city-dialog-styled.js +30 -0
- package/footer/molecules/geoposition/city-dialog.d.ts +10 -0
- package/footer/molecules/geoposition/city-dialog.d.ts.map +1 -0
- package/footer/molecules/geoposition/city-dialog.js +85 -0
- package/footer/molecules/geoposition/index.d.ts +9 -0
- package/footer/molecules/geoposition/index.d.ts.map +1 -0
- package/footer/molecules/geoposition/index.js +41 -0
- package/footer/molecules/geoposition/styled.d.ts +8 -0
- package/footer/molecules/geoposition/styled.d.ts.map +1 -0
- package/footer/molecules/geoposition/styled.js +21 -0
- package/footer/molecules/geoposition/types.d.ts +5 -0
- package/footer/molecules/geoposition/types.d.ts.map +1 -0
- package/footer/molecules/onboarding-banner/assets/fox-table.svg +1 -0
- package/footer/molecules/onboarding-banner/index.d.ts +5 -0
- package/footer/molecules/onboarding-banner/index.d.ts.map +1 -0
- package/footer/molecules/onboarding-banner/index.js +45 -0
- package/footer/molecules/onboarding-banner/styled.d.ts +11 -0
- package/footer/molecules/onboarding-banner/styled.d.ts.map +1 -0
- package/footer/molecules/onboarding-banner/styled.js +40 -0
- package/footer/styled.d.ts +47 -0
- package/footer/styled.d.ts.map +1 -0
- package/footer/styled.js +121 -0
- package/footer/sub-footer-areas.d.ts +26 -0
- package/footer/sub-footer-areas.d.ts.map +1 -0
- package/footer/sub-footer-areas.js +96 -0
- package/footer/sub-footer-styled.d.ts +6 -0
- package/footer/sub-footer-styled.d.ts.map +1 -0
- package/footer/sub-footer-styled.js +70 -0
- package/footer/sub-footer.d.ts +5 -0
- package/footer/sub-footer.d.ts.map +1 -0
- package/footer/sub-footer.js +57 -0
- package/footer/types.d.ts +45 -0
- package/footer/types.d.ts.map +1 -0
- package/header/atoms/action-button/index.d.ts +16 -0
- package/header/atoms/action-button/index.d.ts.map +1 -0
- package/header/atoms/action-button/index.js +57 -0
- package/header/atoms/action-button/styled.d.ts +16 -0
- package/header/atoms/action-button/styled.d.ts.map +1 -0
- package/header/atoms/action-button/styled.js +75 -0
- package/header/atoms/avatar/index.d.ts +7 -0
- package/header/atoms/avatar/index.d.ts.map +1 -0
- package/header/atoms/avatar/index.js +16 -0
- package/header/atoms/avatar/styled.d.ts +7 -0
- package/header/atoms/avatar/styled.d.ts.map +1 -0
- package/header/atoms/avatar/styled.js +24 -0
- package/header/atoms/back-button/index.d.ts +5 -0
- package/header/atoms/back-button/index.d.ts.map +1 -0
- package/header/atoms/back-button/index.js +19 -0
- package/header/atoms/back-button/styled.d.ts +4 -0
- package/header/atoms/back-button/styled.d.ts.map +1 -0
- package/header/atoms/back-button/styled.js +12 -0
- package/header/atoms/bonus-button/index.d.ts +2 -0
- package/header/atoms/bonus-button/index.d.ts.map +1 -0
- package/header/atoms/bonus-button/index.js +13 -0
- package/header/atoms/close-button/index.d.ts +5 -0
- package/header/atoms/close-button/index.d.ts.map +1 -0
- package/header/atoms/close-button/index.js +13 -0
- package/header/atoms/close-button/styled.d.ts +4 -0
- package/header/atoms/close-button/styled.d.ts.map +1 -0
- package/header/atoms/close-button/styled.js +13 -0
- package/header/atoms/list-item/index.d.ts +12 -0
- package/header/atoms/list-item/index.d.ts.map +1 -0
- package/header/atoms/list-item/index.js +36 -0
- package/header/atoms/list-item/styled.d.ts +25 -0
- package/header/atoms/list-item/styled.d.ts.map +1 -0
- package/header/atoms/list-item/styled.js +51 -0
- package/header/atoms/list-spacer/index.d.ts +5 -0
- package/header/atoms/list-spacer/index.d.ts.map +1 -0
- package/header/atoms/list-spacer/index.js +18 -0
- package/header/atoms/list-title/index.d.ts +7 -0
- package/header/atoms/list-title/index.d.ts.map +1 -0
- package/header/atoms/list-title/index.js +24 -0
- package/header/atoms/list-title/styled.d.ts +11 -0
- package/header/atoms/list-title/styled.d.ts.map +1 -0
- package/header/atoms/list-title/styled.js +31 -0
- package/header/atoms/login-button/index.d.ts +2 -0
- package/header/atoms/login-button/index.d.ts.map +1 -0
- package/header/atoms/login-button/index.js +15 -0
- package/header/atoms/logout-button/index.d.ts +5 -0
- package/header/atoms/logout-button/index.d.ts.map +1 -0
- package/header/atoms/logout-button/index.js +16 -0
- package/header/atoms/onboarding-segment-item/assets/fox.svg +1 -0
- package/header/atoms/onboarding-segment-item/index.d.ts +5 -0
- package/header/atoms/onboarding-segment-item/index.d.ts.map +1 -0
- package/header/atoms/onboarding-segment-item/index.js +22 -0
- package/header/atoms/onboarding-segment-item/styled.d.ts +16 -0
- package/header/atoms/onboarding-segment-item/styled.d.ts.map +1 -0
- package/header/atoms/onboarding-segment-item/styled.js +34 -0
- package/header/atoms/profile-balance/index.d.ts +12 -0
- package/header/atoms/profile-balance/index.d.ts.map +1 -0
- package/header/atoms/profile-balance/index.js +37 -0
- package/header/atoms/profile-balance/styled.d.ts +10 -0
- package/header/atoms/profile-balance/styled.d.ts.map +1 -0
- package/header/atoms/profile-balance/styled.js +19 -0
- package/header/atoms/profile-info/index.d.ts +9 -0
- package/header/atoms/profile-info/index.d.ts.map +1 -0
- package/header/atoms/profile-info/index.js +32 -0
- package/header/atoms/profile-info/styled.d.ts +4 -0
- package/header/atoms/profile-info/styled.d.ts.map +1 -0
- package/header/atoms/profile-info/styled.js +8 -0
- package/header/atoms/profile-menu-item/index.d.ts +13 -0
- package/header/atoms/profile-menu-item/index.d.ts.map +1 -0
- package/header/atoms/profile-menu-item/index.js +52 -0
- package/header/atoms/profile-menu-item/styled.d.ts +15 -0
- package/header/atoms/profile-menu-item/styled.d.ts.map +1 -0
- package/header/atoms/profile-menu-item/styled.js +47 -0
- package/header/atoms/scrollbar/index.d.ts +6 -0
- package/header/atoms/scrollbar/index.d.ts.map +1 -0
- package/header/atoms/scrollbar/index.js +33 -0
- package/header/atoms/scrollbar/styled.d.ts +4 -0
- package/header/atoms/scrollbar/styled.d.ts.map +1 -0
- package/header/atoms/scrollbar/styled.js +15 -0
- package/header/atoms/segment-list-item/index.d.ts +8 -0
- package/header/atoms/segment-list-item/index.d.ts.map +1 -0
- package/header/atoms/segment-list-item/index.js +21 -0
- package/header/atoms/segment-list-item/styled.d.ts +6 -0
- package/header/atoms/segment-list-item/styled.d.ts.map +1 -0
- package/header/atoms/segment-list-item/styled.js +22 -0
- package/header/atoms/segment-title/index.d.ts +8 -0
- package/header/atoms/segment-title/index.d.ts.map +1 -0
- package/header/atoms/segment-title/index.js +18 -0
- package/header/atoms/segment-title/styled.d.ts +8 -0
- package/header/atoms/segment-title/styled.d.ts.map +1 -0
- package/header/atoms/segment-title/styled.js +32 -0
- package/header/atoms/user-profile/index.d.ts +9 -0
- package/header/atoms/user-profile/index.d.ts.map +1 -0
- package/header/atoms/user-profile/index.js +46 -0
- package/header/atoms/user-profile/styled.d.ts +14 -0
- package/header/atoms/user-profile/styled.d.ts.map +1 -0
- package/header/atoms/user-profile/styled.js +41 -0
- package/header/header-desktop.d.ts +5 -0
- package/header/header-desktop.d.ts.map +1 -0
- package/header/header-desktop.js +79 -0
- package/header/header-mobile.d.ts +5 -0
- package/header/header-mobile.d.ts.map +1 -0
- package/header/header-mobile.js +66 -0
- package/header/molecules/adaptive-button/index.d.ts +6 -0
- package/header/molecules/adaptive-button/index.d.ts.map +1 -0
- package/header/molecules/adaptive-button/index.js +16 -0
- package/header/molecules/bonuses/index.d.ts +7 -0
- package/header/molecules/bonuses/index.d.ts.map +1 -0
- package/header/molecules/bonuses/index.js +40 -0
- package/header/molecules/bonuses/styled.d.ts +16 -0
- package/header/molecules/bonuses/styled.d.ts.map +1 -0
- package/header/molecules/bonuses/styled.js +38 -0
- package/header/molecules/cart-button/index.d.ts +9 -0
- package/header/molecules/cart-button/index.d.ts.map +1 -0
- package/header/molecules/cart-button/styled.d.ts +6 -0
- package/header/molecules/cart-button/styled.d.ts.map +1 -0
- package/header/molecules/container/index.d.ts +11 -0
- package/header/molecules/container/index.d.ts.map +1 -0
- package/header/molecules/container/index.js +38 -0
- package/header/molecules/container/styled.d.ts +11 -0
- package/header/molecules/container/styled.d.ts.map +1 -0
- package/header/molecules/container/styled.js +43 -0
- package/header/molecules/entry-panel/index.d.ts +8 -0
- package/header/molecules/entry-panel/index.d.ts.map +1 -0
- package/header/molecules/entry-panel/index.js +27 -0
- package/header/molecules/entry-panel/styled.d.ts +10 -0
- package/header/molecules/entry-panel/styled.d.ts.map +1 -0
- package/header/molecules/entry-panel/styled.js +21 -0
- package/header/molecules/externat-buttons/index.d.ts +8 -0
- package/header/molecules/externat-buttons/index.d.ts.map +1 -0
- package/header/molecules/externat-buttons/index.js +36 -0
- package/header/molecules/externat-buttons/styled.d.ts +30 -0
- package/header/molecules/externat-buttons/styled.d.ts.map +1 -0
- package/header/molecules/externat-buttons/styled.js +94 -0
- package/header/molecules/header-logo/assets/foxford.svg +1 -0
- package/header/molecules/header-logo/assets/foxford_mobile.svg +1 -0
- package/header/molecules/header-logo/assets/logo-cobranding.svg +1 -0
- package/header/molecules/header-logo/base-logo.d.ts +2 -0
- package/header/molecules/header-logo/base-logo.d.ts.map +1 -0
- package/header/molecules/header-logo/base-logo.js +24 -0
- package/header/molecules/header-logo/cobranding-logo.d.ts +2 -0
- package/header/molecules/header-logo/cobranding-logo.d.ts.map +1 -0
- package/header/molecules/header-logo/cobranding-logo.js +29 -0
- package/header/molecules/header-logo/index.d.ts +7 -0
- package/header/molecules/header-logo/index.d.ts.map +1 -0
- package/header/molecules/header-logo/index.js +20 -0
- package/header/molecules/header-logo/styled.d.ts +23 -0
- package/header/molecules/header-logo/styled.d.ts.map +1 -0
- package/header/molecules/header-logo/styled.js +46 -0
- package/header/molecules/list/index.d.ts +7 -0
- package/header/molecules/list/index.d.ts.map +1 -0
- package/header/molecules/list/index.js +45 -0
- package/header/molecules/list/styled.d.ts +4 -0
- package/header/molecules/list/styled.d.ts.map +1 -0
- package/header/molecules/list/styled.js +8 -0
- package/header/molecules/menu/index.d.ts +17 -0
- package/header/molecules/menu/index.d.ts.map +1 -0
- package/header/molecules/menu/index.js +163 -0
- package/header/molecules/menu/panel-styled.d.ts +24 -0
- package/header/molecules/menu/panel-styled.d.ts.map +1 -0
- package/header/molecules/menu/panel-styled.js +105 -0
- package/header/molecules/menu/segment-content-styled.d.ts +13 -0
- package/header/molecules/menu/segment-content-styled.d.ts.map +1 -0
- package/header/molecules/menu/segment-content-styled.js +39 -0
- package/header/molecules/menu/segment-content.d.ts +7 -0
- package/header/molecules/menu/segment-content.d.ts.map +1 -0
- package/header/molecules/menu/segment-content.js +42 -0
- package/header/molecules/menu/styled.d.ts +23 -0
- package/header/molecules/menu/styled.d.ts.map +1 -0
- package/header/molecules/menu/styled.js +81 -0
- package/header/molecules/menu/types.d.ts +32 -0
- package/header/molecules/menu/types.d.ts.map +1 -0
- package/header/molecules/menu-button/index.d.ts +6 -0
- package/header/molecules/menu-button/index.d.ts.map +1 -0
- package/header/molecules/menu-button/index.js +29 -0
- package/header/molecules/menu-button/styled.d.ts +22 -0
- package/header/molecules/menu-button/styled.d.ts.map +1 -0
- package/header/molecules/menu-button/styled.js +74 -0
- package/header/molecules/onboarding-button/index.d.ts +6 -0
- package/header/molecules/onboarding-button/index.d.ts.map +1 -0
- package/header/molecules/onboarding-button/index.js +23 -0
- package/header/molecules/onboarding-button/styled.d.ts +15 -0
- package/header/molecules/onboarding-button/styled.d.ts.map +1 -0
- package/header/molecules/onboarding-button/styled.js +74 -0
- package/header/molecules/oneclick-menu/index.d.ts +14 -0
- package/header/molecules/oneclick-menu/index.d.ts.map +1 -0
- package/header/molecules/oneclick-menu/index.js +28 -0
- package/header/molecules/oneclick-menu/styled.d.ts +19 -0
- package/header/molecules/oneclick-menu/styled.d.ts.map +1 -0
- package/header/molecules/oneclick-menu/styled.js +49 -0
- package/header/molecules/phone-button/index.d.ts +5 -0
- package/header/molecules/phone-button/index.d.ts.map +1 -0
- package/header/molecules/phone-button/index.js +15 -0
- package/header/molecules/profile-menu/index.d.ts +19 -0
- package/header/molecules/profile-menu/index.d.ts.map +1 -0
- package/header/molecules/profile-menu/index.js +74 -0
- package/header/molecules/profile-menu/styled.d.ts +9 -0
- package/header/molecules/profile-menu/styled.d.ts.map +1 -0
- package/header/molecules/profile-menu/styled.js +23 -0
- package/header/molecules/profile-menu-button-tooltip/assets/arrow.svg +1 -0
- package/header/molecules/profile-menu-button-tooltip/index.d.ts +5 -0
- package/header/molecules/profile-menu-button-tooltip/index.d.ts.map +1 -0
- package/header/molecules/profile-menu-button-tooltip/index.js +13 -0
- package/header/molecules/profile-menu-button-tooltip/styled.d.ts +6 -0
- package/header/molecules/profile-menu-button-tooltip/styled.d.ts.map +1 -0
- package/header/molecules/profile-menu-button-tooltip/styled.js +56 -0
- package/header/molecules/pupil-select-button/index.d.ts +8 -0
- package/header/molecules/pupil-select-button/index.d.ts.map +1 -0
- package/header/molecules/pupil-select-button/index.js +54 -0
- package/header/molecules/pupil-select-menu/index.d.ts +15 -0
- package/header/molecules/pupil-select-menu/index.d.ts.map +1 -0
- package/header/molecules/pupil-select-menu/index.js +59 -0
- package/header/molecules/pupil-select-menu/styled.d.ts +7 -0
- package/header/molecules/pupil-select-menu/styled.d.ts.map +1 -0
- package/header/molecules/pupil-select-menu/styled.js +26 -0
- package/header/molecules/segment-list/index.d.ts +8 -0
- package/header/molecules/segment-list/index.d.ts.map +1 -0
- package/header/molecules/segment-list/index.js +32 -0
- package/header/molecules/segment-list/styled.d.ts +14 -0
- package/header/molecules/segment-list/styled.d.ts.map +1 -0
- package/header/molecules/segment-list/styled.js +20 -0
- package/header/molecules/user-panel/index.d.ts +32 -0
- package/header/molecules/user-panel/index.d.ts.map +1 -0
- package/header/molecules/user-panel/index.js +114 -0
- package/header/molecules/user-panel/styled.d.ts +16 -0
- package/header/molecules/user-panel/styled.d.ts.map +1 -0
- package/header/molecules/user-panel/styled.js +41 -0
- package/header/molecules/user-panel-mobile/index.d.ts +3 -0
- package/header/molecules/user-panel-mobile/index.d.ts.map +1 -0
- package/header/molecules/user-panel-mobile/index.js +56 -0
- package/header/molecules/user-panel-mobile/styled.d.ts +6 -0
- package/header/molecules/user-panel-mobile/styled.d.ts.map +1 -0
- package/header/molecules/user-panel-mobile/styled.js +16 -0
- package/header/navigation.d.ts +3 -0
- package/header/navigation.d.ts.map +1 -0
- package/header/navigation.js +64 -0
- package/header/styled.d.ts +31 -0
- package/header/styled.d.ts.map +1 -0
- package/header/styled.js +87 -0
- package/header/types.d.ts +40 -0
- package/header/types.d.ts.map +1 -0
- package/index.d.ts +25 -0
- package/index.d.ts.map +1 -0
- package/index.js +23 -0
- package/package.json +55 -0
- package/shared/constants.d.ts +86 -0
- package/shared/constants.d.ts.map +1 -0
- package/shared/constants.js +69 -0
- package/shared/link.d.ts +9 -0
- package/shared/link.d.ts.map +1 -0
- package/shared/link.js +56 -0
- package/shared/phone.d.ts +3 -0
- package/shared/phone.d.ts.map +1 -0
- package/shared/phone.js +10 -0
- package/shared/theme-provider.d.ts +6 -0
- package/shared/theme-provider.d.ts.map +1 -0
- package/shared/theme-provider.js +27 -0
- package/shared/theme.d.ts +77 -0
- package/shared/theme.d.ts.map +1 -0
- package/shared/theme.js +29 -0
- package/shared/use-outside-click.d.ts +3 -0
- package/shared/use-outside-click.d.ts.map +1 -0
- package/shared/use-outside-click.js +22 -0
- package/shared/use-scroll-direction.d.ts +4 -0
- package/shared/use-scroll-direction.d.ts.map +1 -0
- package/shared/use-scroll-direction.js +22 -0
- package/shared/z-index.d.ts +5 -0
- package/shared/z-index.d.ts.map +1 -0
- package/shared/z-index.js +7 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { IconProps } from '@foxford/ui';
|
|
2
|
+
import type { ComponentType } from 'react';
|
|
3
|
+
export declare const Root: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("preact").JSX.ButtonHTMLAttributes<HTMLButtonElement>, "style"> & {
|
|
4
|
+
style?: string | import("styled-components/dist/types").CSSPropertiesWithVars | import("preact").JSX.CSSProperties | import("preact").JSX.SignalLike<string | import("preact").JSX.CSSProperties | undefined> | undefined;
|
|
5
|
+
}, {
|
|
6
|
+
$active: boolean;
|
|
7
|
+
}>> & string;
|
|
8
|
+
export declare const IconWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("preact").JSX.HTMLAttributes<HTMLSpanElement>, "style"> & {
|
|
9
|
+
style?: string | import("styled-components/dist/types").CSSPropertiesWithVars | import("preact").JSX.CSSProperties | import("preact").JSX.SignalLike<string | import("preact").JSX.CSSProperties | undefined> | undefined;
|
|
10
|
+
}> & string;
|
|
11
|
+
export declare const Icon: ComponentType<IconProps & {
|
|
12
|
+
$active: boolean;
|
|
13
|
+
}>;
|
|
14
|
+
export declare const FakeIcon: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("preact").JSX.HTMLAttributes<HTMLSpanElement>, "style"> & {
|
|
15
|
+
style?: string | import("styled-components/dist/types").CSSPropertiesWithVars | import("preact").JSX.CSSProperties | import("preact").JSX.SignalLike<string | import("preact").JSX.CSSProperties | undefined> | undefined;
|
|
16
|
+
}, {
|
|
17
|
+
$active: boolean;
|
|
18
|
+
}>> & string;
|
|
19
|
+
export declare const Text: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("preact").JSX.HTMLAttributes<HTMLSpanElement>, "style"> & {
|
|
20
|
+
style?: string | import("styled-components/dist/types").CSSPropertiesWithVars | import("preact").JSX.CSSProperties | import("preact").JSX.SignalLike<string | import("preact").JSX.CSSProperties | undefined> | undefined;
|
|
21
|
+
}> & string;
|
|
22
|
+
//# sourceMappingURL=styled.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../../src/header/molecules/menu-button/styled.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAK1C,eAAO,MAAM,IAAI;;;aAA4B,OAAO;YAiDnD,CAAA;AAcD,eAAO,MAAM,WAAW;;WAGvB,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,aAAa,CAAC,SAAS,GAAG;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAGhE,CAAA;AAED,eAAO,MAAM,QAAQ;;;aAA0B,OAAO;YAqBrD,CAAA;AAKD,eAAO,MAAM,IAAI;;WAYhB,CAAA"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { styled, css } from "styled-components";
|
|
2
|
+
import { screenMaxS, screenMaxXs, screenMinS, Icon as Icon$1 } from "@foxford/ui";
|
|
3
|
+
const Root = styled.button.withConfig({
|
|
4
|
+
displayName: "styled__Root",
|
|
5
|
+
componentId: "sc-13r4epo-0"
|
|
6
|
+
})(["display:inline-flex;justify-content:center;align-items:center;border-radius:40px;height:40px;margin:0;padding:0 24px;outline:none;overflow:visible;font:inherit;font-size:14px;font-weight:700;line-height:normal;transition:background-color linear 0.3s;cursor:pointer;-webkit-font-smoothing:inherit;-moz-osx-font-smoothing:inherit;-webkit-appearance:none;", " ", " &::-moz-focus-inner{border:0;padding:0;}", ""], screenMaxS()`
|
|
7
|
+
height: 32px;
|
|
8
|
+
padding: 0 6px;
|
|
9
|
+
`, screenMaxXs()`
|
|
10
|
+
width: 32px;
|
|
11
|
+
padding: 0;
|
|
12
|
+
`, ({
|
|
13
|
+
theme
|
|
14
|
+
}) => css`
|
|
15
|
+
background-color: ${theme.colors.zeus};
|
|
16
|
+
border: none;
|
|
17
|
+
color: ${theme.colors.white};
|
|
18
|
+
font-size: 12px;
|
|
19
|
+
|
|
20
|
+
${screenMinS()`
|
|
21
|
+
font-size: 14px;
|
|
22
|
+
`}
|
|
23
|
+
|
|
24
|
+
&:hover {
|
|
25
|
+
background-color: ${theme.colors.mineShaft};
|
|
26
|
+
}
|
|
27
|
+
`);
|
|
28
|
+
const iconLine = css`
|
|
29
|
+
content: '';
|
|
30
|
+
position: absolute;
|
|
31
|
+
left: 0;
|
|
32
|
+
height: 1px;
|
|
33
|
+
width: 100%;
|
|
34
|
+
transition: transform 0.4s;
|
|
35
|
+
${({
|
|
36
|
+
theme
|
|
37
|
+
}) => css`
|
|
38
|
+
background-color: ${theme.colors.white};
|
|
39
|
+
`}
|
|
40
|
+
`;
|
|
41
|
+
const IconWrapper = styled.span.withConfig({
|
|
42
|
+
displayName: "styled__IconWrapper",
|
|
43
|
+
componentId: "sc-13r4epo-1"
|
|
44
|
+
})(["position:relative;display:inline-flex;"]);
|
|
45
|
+
const Icon = styled(Icon$1).withConfig({
|
|
46
|
+
displayName: "styled__Icon",
|
|
47
|
+
componentId: "sc-13r4epo-2"
|
|
48
|
+
})(["transition:0.4s;opacity:", ";"], ({
|
|
49
|
+
$active
|
|
50
|
+
}) => $active ? 0 : 1);
|
|
51
|
+
const FakeIcon = styled.span.withConfig({
|
|
52
|
+
displayName: "styled__FakeIcon",
|
|
53
|
+
componentId: "sc-13r4epo-3"
|
|
54
|
+
})(["display:inline-block;position:absolute;top:5px;left:0;width:20px;height:11px;opacity:", ";transition:opacity 0.4s;&::before{", " top:0;transform:", ";}&::after{", " bottom:0;transform:", ";}"], ({
|
|
55
|
+
$active
|
|
56
|
+
}) => $active ? 1 : 0, iconLine, ({
|
|
57
|
+
$active
|
|
58
|
+
}) => `translateY(${$active ? "5px" : "0"}) rotate(${$active ? "-45deg" : "0"})`, iconLine, ({
|
|
59
|
+
$active
|
|
60
|
+
}) => `translateY(${$active ? "-5px" : "0"}) rotate(${$active ? "45deg" : "0"})`);
|
|
61
|
+
const Text = styled.span.withConfig({
|
|
62
|
+
displayName: "styled__Text",
|
|
63
|
+
componentId: "sc-13r4epo-4"
|
|
64
|
+
})(["display:none;padding-top:1px;margin-left:4px;color:inherit;font-size:inherit;transition:color 0.4s;", ""], screenMinS()`
|
|
65
|
+
display: inline-block;
|
|
66
|
+
margin-left: 10px;
|
|
67
|
+
`);
|
|
68
|
+
export {
|
|
69
|
+
FakeIcon,
|
|
70
|
+
Icon,
|
|
71
|
+
IconWrapper,
|
|
72
|
+
Root,
|
|
73
|
+
Text
|
|
74
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/header/molecules/onboarding-button/index.tsx"],"names":[],"mappings":"AAEA,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACrB;AAID,wBAAgB,gBAAgB,CAAC,EAAE,MAAc,EAAE,OAAO,EAAE,EAAE,qBAAqB,gCAclF"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { FreeAccessButtonMobile, FreeAccessButtonDesktop } from "./styled.js";
|
|
2
|
+
import { jsx } from "preact/jsx-runtime";
|
|
3
|
+
const ONBOARDING_URL = "/onboarding?chat=1";
|
|
4
|
+
function OnboardingButton({
|
|
5
|
+
mobile = false,
|
|
6
|
+
onClick
|
|
7
|
+
}) {
|
|
8
|
+
if (mobile) {
|
|
9
|
+
return jsx(FreeAccessButtonMobile, {
|
|
10
|
+
href: ONBOARDING_URL,
|
|
11
|
+
onClick,
|
|
12
|
+
children: "Подобрать занятия"
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
return jsx(FreeAccessButtonDesktop, {
|
|
16
|
+
href: ONBOARDING_URL,
|
|
17
|
+
onClick,
|
|
18
|
+
children: "Подобрать занятия"
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
export {
|
|
22
|
+
OnboardingButton
|
|
23
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare const FreeAccessButtonMobile: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react-dom/src").PropsWithoutRef<import("../../..").LinkProps> & {
|
|
2
|
+
ref?: import("preact").Ref<HTMLAnchorElement> | undefined;
|
|
3
|
+
}, "style"> & {
|
|
4
|
+
style?: string | import("styled-components/dist/types").CSSPropertiesWithVars | import("preact").JSX.CSSProperties | import("preact").JSX.SignalLike<string | import("preact").JSX.CSSProperties | undefined> | undefined;
|
|
5
|
+
}> & string & Omit<import("preact").FunctionalComponent<import("react-dom/src").PropsWithoutRef<import("../../..").LinkProps> & {
|
|
6
|
+
ref?: import("preact").Ref<HTMLAnchorElement> | undefined;
|
|
7
|
+
}>, keyof import("preact").Component<any, {}>>;
|
|
8
|
+
export declare const FreeAccessButtonDesktop: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react-dom/src").PropsWithoutRef<import("../../..").LinkProps> & {
|
|
9
|
+
ref?: import("preact").Ref<HTMLAnchorElement> | undefined;
|
|
10
|
+
}, "style"> & {
|
|
11
|
+
style?: string | import("styled-components/dist/types").CSSPropertiesWithVars | import("preact").JSX.CSSProperties | import("preact").JSX.SignalLike<string | import("preact").JSX.CSSProperties | undefined> | undefined;
|
|
12
|
+
}> & string & Omit<import("preact").FunctionalComponent<import("react-dom/src").PropsWithoutRef<import("../../..").LinkProps> & {
|
|
13
|
+
ref?: import("preact").Ref<HTMLAnchorElement> | undefined;
|
|
14
|
+
}>, keyof import("preact").Component<any, {}>>;
|
|
15
|
+
//# sourceMappingURL=styled.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../../src/header/molecules/onboarding-button/styled.ts"],"names":[],"mappings":"AAoDA,eAAO,MAAM,sBAAsB;;;;;;8CAElC,CAAA;AAED,eAAO,MAAM,uBAAuB;;;;;;8CAEnC,CAAA"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { css, styled } from "styled-components";
|
|
2
|
+
import { screenMinS } from "@foxford/ui";
|
|
3
|
+
import { Link } from "../../../shared/link.js";
|
|
4
|
+
const mobileButtonStyles = css`
|
|
5
|
+
display: block;
|
|
6
|
+
box-sizing: border-box;
|
|
7
|
+
height: 24px;
|
|
8
|
+
min-width: 143px;
|
|
9
|
+
padding-right: 8px;
|
|
10
|
+
padding-left: 8px;
|
|
11
|
+
border-radius: 0 0 5px 5px;
|
|
12
|
+
background-color: ${({
|
|
13
|
+
theme
|
|
14
|
+
}) => theme.colors.orangePeel};
|
|
15
|
+
color: ${({
|
|
16
|
+
theme
|
|
17
|
+
}) => theme.colors.white};
|
|
18
|
+
font-size: 14px;
|
|
19
|
+
line-height: 24px;
|
|
20
|
+
font-weight: bold;
|
|
21
|
+
text-align: center;
|
|
22
|
+
text-decoration: none;
|
|
23
|
+
|
|
24
|
+
${screenMinS()`
|
|
25
|
+
height: 30px;
|
|
26
|
+
min-width: 183px;
|
|
27
|
+
font-size: 16px;
|
|
28
|
+
line-height: 30px;
|
|
29
|
+
`}
|
|
30
|
+
`;
|
|
31
|
+
const desktopButtonStyles = css`
|
|
32
|
+
display: block;
|
|
33
|
+
box-sizing: border-box;
|
|
34
|
+
height: 40px;
|
|
35
|
+
padding-right: 15px;
|
|
36
|
+
padding-left: 15px;
|
|
37
|
+
border: 1px solid ${({
|
|
38
|
+
theme
|
|
39
|
+
}) => theme.colors.orangePeel};
|
|
40
|
+
border-radius: 40px;
|
|
41
|
+
background-color: ${({
|
|
42
|
+
theme
|
|
43
|
+
}) => theme.colors.white};
|
|
44
|
+
color: ${({
|
|
45
|
+
theme
|
|
46
|
+
}) => theme.colors.mineShaft};
|
|
47
|
+
font-size: 14px;
|
|
48
|
+
line-height: 40px;
|
|
49
|
+
font-weight: bold;
|
|
50
|
+
text-align: center;
|
|
51
|
+
text-decoration: none;
|
|
52
|
+
transition: linear 0.3s;
|
|
53
|
+
|
|
54
|
+
&:hover {
|
|
55
|
+
background-color: ${({
|
|
56
|
+
theme
|
|
57
|
+
}) => theme.colors.orangePeel};
|
|
58
|
+
color: ${({
|
|
59
|
+
theme
|
|
60
|
+
}) => theme.colors.white};
|
|
61
|
+
}
|
|
62
|
+
`;
|
|
63
|
+
const FreeAccessButtonMobile = styled(Link).withConfig({
|
|
64
|
+
displayName: "styled__FreeAccessButtonMobile",
|
|
65
|
+
componentId: "sc-1ui6rm6-0"
|
|
66
|
+
})(["", ""], mobileButtonStyles);
|
|
67
|
+
const FreeAccessButtonDesktop = styled(Link).withConfig({
|
|
68
|
+
displayName: "styled__FreeAccessButtonDesktop",
|
|
69
|
+
componentId: "sc-1ui6rm6-1"
|
|
70
|
+
})(["", ""], desktopButtonStyles);
|
|
71
|
+
export {
|
|
72
|
+
FreeAccessButtonDesktop,
|
|
73
|
+
FreeAccessButtonMobile
|
|
74
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface OneClickMenuItem {
|
|
2
|
+
id: string;
|
|
3
|
+
title: string;
|
|
4
|
+
url: string;
|
|
5
|
+
}
|
|
6
|
+
export interface OneClickMenuProps {
|
|
7
|
+
hide?: boolean;
|
|
8
|
+
isMenuOpen: boolean;
|
|
9
|
+
items: OneClickMenuItem[];
|
|
10
|
+
onItemClick?: (id: string) => void;
|
|
11
|
+
selectedItemId?: string;
|
|
12
|
+
}
|
|
13
|
+
export declare function OneClickMenu({ hide, isMenuOpen, items, onItemClick, selectedItemId }: OneClickMenuProps): import("preact").JSX.Element | null;
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/header/molecules/oneclick-menu/index.tsx"],"names":[],"mappings":"AAEA,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,UAAU,EAAE,OAAO,CAAA;IACnB,KAAK,EAAE,gBAAgB,EAAE,CAAA;IACzB,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,wBAAgB,YAAY,CAAC,EAAE,IAAY,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,EAAE,iBAAiB,uCAoB/G"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Root, CurrentItem, Item } from "./styled.js";
|
|
2
|
+
import { jsx } from "preact/jsx-runtime";
|
|
3
|
+
function OneClickMenu({
|
|
4
|
+
hide = false,
|
|
5
|
+
isMenuOpen,
|
|
6
|
+
items,
|
|
7
|
+
onItemClick,
|
|
8
|
+
selectedItemId
|
|
9
|
+
}) {
|
|
10
|
+
if (items.length === 0) {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
return jsx(Root, {
|
|
14
|
+
$hide: hide,
|
|
15
|
+
$isMenuOpen: isMenuOpen,
|
|
16
|
+
children: items.map((item) => item.id === selectedItemId ? jsx(CurrentItem, {
|
|
17
|
+
$hide: hide,
|
|
18
|
+
children: item.title
|
|
19
|
+
}, item.id) : jsx(Item, {
|
|
20
|
+
href: item.url,
|
|
21
|
+
onClick: () => onItemClick == null ? void 0 : onItemClick(item.id),
|
|
22
|
+
children: item.title
|
|
23
|
+
}, item.id))
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
export {
|
|
27
|
+
OneClickMenu
|
|
28
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export declare const Root: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("preact").JSX.HTMLAttributes<HTMLDivElement>, "style"> & {
|
|
2
|
+
style?: string | import("styled-components/dist/types").CSSPropertiesWithVars | import("preact").JSX.CSSProperties | import("preact").JSX.SignalLike<string | import("preact").JSX.CSSProperties | undefined> | undefined;
|
|
3
|
+
}, {
|
|
4
|
+
$hide: boolean;
|
|
5
|
+
$isMenuOpen: boolean;
|
|
6
|
+
}>> & string;
|
|
7
|
+
export declare const Item: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("react-dom/src").PropsWithoutRef<import("../../..").LinkProps> & {
|
|
8
|
+
ref?: import("preact").Ref<HTMLAnchorElement> | undefined;
|
|
9
|
+
}, "style"> & {
|
|
10
|
+
style?: string | import("styled-components/dist/types").CSSPropertiesWithVars | import("preact").JSX.CSSProperties | import("preact").JSX.SignalLike<string | import("preact").JSX.CSSProperties | undefined> | undefined;
|
|
11
|
+
}> & string & Omit<import("preact").FunctionalComponent<import("react-dom/src").PropsWithoutRef<import("../../..").LinkProps> & {
|
|
12
|
+
ref?: import("preact").Ref<HTMLAnchorElement> | undefined;
|
|
13
|
+
}>, keyof import("preact").Component<any, {}>>;
|
|
14
|
+
export declare const CurrentItem: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("preact").JSX.HTMLAttributes<HTMLSpanElement>, "style"> & {
|
|
15
|
+
style?: string | import("styled-components/dist/types").CSSPropertiesWithVars | import("preact").JSX.CSSProperties | import("preact").JSX.SignalLike<string | import("preact").JSX.CSSProperties | undefined> | undefined;
|
|
16
|
+
}, {
|
|
17
|
+
$hide: boolean;
|
|
18
|
+
}>> & string;
|
|
19
|
+
//# sourceMappingURL=styled.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../../src/header/molecules/oneclick-menu/styled.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,IAAI;;;WAAuB,OAAO;iBAAe,OAAO;YAcpE,CAAA;AAED,eAAO,MAAM,IAAI;;;;;;8CAUhB,CAAA;AAED,eAAO,MAAM,WAAW;;;WAAwB,OAAO;YAoBtD,CAAA"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { css, styled } from "styled-components";
|
|
2
|
+
import { DURATION_MENU_ANIMATION } from "../../../shared/constants.js";
|
|
3
|
+
import { Link } from "../../../shared/link.js";
|
|
4
|
+
import { BASE_ZINDEX } from "../../../shared/z-index.js";
|
|
5
|
+
const itemText = css`
|
|
6
|
+
font-size: 16px;
|
|
7
|
+
line-height: 1;
|
|
8
|
+
`;
|
|
9
|
+
const Root = styled.div.withConfig({
|
|
10
|
+
displayName: "styled__Root",
|
|
11
|
+
componentId: "sc-ncuvzh-0"
|
|
12
|
+
})(["position:relative;display:flex;flex-direction:row;justify-content:space-between;align-items:center;margin-top:", ";margin-bottom:6px;opacity:", ";transition:margin linear 0.15s,opacity linear ", "ms ", ";z-index:", ";"], ({
|
|
13
|
+
$hide
|
|
14
|
+
}) => $hide ? "-22px" : "30px", ({
|
|
15
|
+
$isMenuOpen
|
|
16
|
+
}) => $isMenuOpen ? 0 : 1, DURATION_MENU_ANIMATION, ({
|
|
17
|
+
$isMenuOpen
|
|
18
|
+
}) => $isMenuOpen ? "0s" : `${DURATION_MENU_ANIMATION * 2 + 100}ms`, BASE_ZINDEX.NAVIGATION + 1);
|
|
19
|
+
const Item = styled(Link).withConfig({
|
|
20
|
+
displayName: "styled__Item",
|
|
21
|
+
componentId: "sc-ncuvzh-1"
|
|
22
|
+
})(["", " transition:color 0.3s;", ""], itemText, ({
|
|
23
|
+
theme
|
|
24
|
+
}) => css`
|
|
25
|
+
color: ${theme.colors.mineShaft};
|
|
26
|
+
|
|
27
|
+
&:hover {
|
|
28
|
+
color: ${theme.colors.accent};
|
|
29
|
+
}
|
|
30
|
+
`);
|
|
31
|
+
const CurrentItem = styled.span.withConfig({
|
|
32
|
+
displayName: "styled__CurrentItem",
|
|
33
|
+
componentId: "sc-ncuvzh-2"
|
|
34
|
+
})(["", " position:relative;", " &:before{content:'';position:absolute;bottom:-26px;left:0;width:100%;height:4px;", " opacity:", ";transition:opacity 0.3s;}"], itemText, ({
|
|
35
|
+
theme
|
|
36
|
+
}) => css`
|
|
37
|
+
color: ${theme.colors.accent};
|
|
38
|
+
`, ({
|
|
39
|
+
theme
|
|
40
|
+
}) => css`
|
|
41
|
+
background-color: ${theme.colors.accent};
|
|
42
|
+
`, ({
|
|
43
|
+
$hide
|
|
44
|
+
}) => $hide ? "0" : "1");
|
|
45
|
+
export {
|
|
46
|
+
CurrentItem,
|
|
47
|
+
Item,
|
|
48
|
+
Root
|
|
49
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/header/molecules/phone-button/index.tsx"],"names":[],"mappings":"AAGA,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAA;CACf;AAED,wBAAgB,WAAW,CAAC,EAAE,MAAM,EAAE,EAAE,gBAAgB,gCAEvD"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { SELECTOR_IDS } from "../../../shared/constants.js";
|
|
2
|
+
import { ActionButton } from "../../atoms/action-button/index.js";
|
|
3
|
+
import { jsx } from "preact/jsx-runtime";
|
|
4
|
+
function PhoneButton({
|
|
5
|
+
number
|
|
6
|
+
}) {
|
|
7
|
+
return jsx(ActionButton, {
|
|
8
|
+
icon: "phoneCall",
|
|
9
|
+
id: SELECTOR_IDS.PHONE_BUTTON_MOBILE,
|
|
10
|
+
url: `tel:${number}`
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
export {
|
|
14
|
+
PhoneButton
|
|
15
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { ProfileMenuItemProps } from '../../atoms/profile-menu-item';
|
|
2
|
+
import type { ReactNode } from 'react';
|
|
3
|
+
export interface ProfileMenuProps {
|
|
4
|
+
/**
|
|
5
|
+
* Встаёт НА МЕСТО пункта «Фоксики» в списке — так же, как в легаси, где этот пункт
|
|
6
|
+
* подменялся отдельным компонентом с балансом и бейджем. Не передан — пункт рисуется
|
|
7
|
+
* обычной строкой меню (случай агента).
|
|
8
|
+
*/
|
|
9
|
+
bonusesSlot?: ReactNode;
|
|
10
|
+
/** Пункты над разделителем: онбординг, подарок за отзыв. */
|
|
11
|
+
headItems?: ProfileMenuItemProps[];
|
|
12
|
+
headSpacing?: number;
|
|
13
|
+
items: ProfileMenuItemProps[];
|
|
14
|
+
open: boolean;
|
|
15
|
+
profileInfoSlot?: ReactNode;
|
|
16
|
+
pupilSelectSlot?: ReactNode;
|
|
17
|
+
}
|
|
18
|
+
export declare function ProfileMenu({ bonusesSlot, headItems, headSpacing, items, open, profileInfoSlot, pupilSelectSlot, }: ProfileMenuProps): import("preact").JSX.Element;
|
|
19
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/header/molecules/profile-menu/index.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtC,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB,4DAA4D;IAC5D,SAAS,CAAC,EAAE,oBAAoB,EAAE,CAAA;IAClC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,oBAAoB,EAAE,CAAA;IAC7B,IAAI,EAAE,OAAO,CAAA;IACb,eAAe,CAAC,EAAE,SAAS,CAAA;IAC3B,eAAe,CAAC,EAAE,SAAS,CAAA;CAC5B;AAID,wBAAgB,WAAW,CAAC,EAC1B,WAAW,EACX,SAAc,EACd,WAAgB,EAChB,KAAK,EACL,IAAI,EACJ,eAAe,EACf,eAAe,GAChB,EAAE,gBAAgB,gCA2DlB"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
3
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
4
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
5
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
6
|
+
var __spreadValues = (a, b) => {
|
|
7
|
+
for (var prop in b || (b = {}))
|
|
8
|
+
if (__hasOwnProp.call(b, prop))
|
|
9
|
+
__defNormalProp(a, prop, b[prop]);
|
|
10
|
+
if (__getOwnPropSymbols)
|
|
11
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
12
|
+
if (__propIsEnum.call(b, prop))
|
|
13
|
+
__defNormalProp(a, prop, b[prop]);
|
|
14
|
+
}
|
|
15
|
+
return a;
|
|
16
|
+
};
|
|
17
|
+
import { useRef, useState, useEffect, Fragment } from "react";
|
|
18
|
+
import { Scrollable, Spacer } from "@foxford/ui";
|
|
19
|
+
import { Root, PROFILE_MENU_PADDING, PROFILE_MENU_OFFSET_BOTTOM } from "./styled.js";
|
|
20
|
+
import { SELECTOR_IDS, NAVIGATION_BOTTOM_MENU_MOBILE_HEIGHT } from "../../../shared/constants.js";
|
|
21
|
+
import { ProfileMenuItem } from "../../atoms/profile-menu-item/index.js";
|
|
22
|
+
import { jsxs, jsx } from "preact/jsx-runtime";
|
|
23
|
+
function ProfileMenu({
|
|
24
|
+
bonusesSlot,
|
|
25
|
+
headItems = [],
|
|
26
|
+
headSpacing = 12,
|
|
27
|
+
items,
|
|
28
|
+
open,
|
|
29
|
+
profileInfoSlot,
|
|
30
|
+
pupilSelectSlot
|
|
31
|
+
}) {
|
|
32
|
+
const pupilSelectRef = useRef(null);
|
|
33
|
+
const profileInfoRef = useRef(null);
|
|
34
|
+
const [maxHeight, setMaxHeight] = useState("100dvh");
|
|
35
|
+
useEffect(() => {
|
|
36
|
+
const navigation = document.getElementById(SELECTOR_IDS.NAVIGATION);
|
|
37
|
+
const observed = [navigation, pupilSelectRef.current, profileInfoRef.current].filter((node) => node !== null);
|
|
38
|
+
const heightOf = (node) => {
|
|
39
|
+
var _a;
|
|
40
|
+
return (_a = node == null ? void 0 : node.getBoundingClientRect().height) != null ? _a : 0;
|
|
41
|
+
};
|
|
42
|
+
const recalculate = () => {
|
|
43
|
+
const occupied = heightOf(navigation) + NAVIGATION_BOTTOM_MENU_MOBILE_HEIGHT + heightOf(pupilSelectRef.current) + heightOf(profileInfoRef.current) + PROFILE_MENU_PADDING * 2 + (PROFILE_MENU_OFFSET_BOTTOM - NAVIGATION_BOTTOM_MENU_MOBILE_HEIGHT);
|
|
44
|
+
setMaxHeight(`calc(100dvh - ${String(occupied)}px)`);
|
|
45
|
+
};
|
|
46
|
+
const observer = new ResizeObserver(recalculate);
|
|
47
|
+
observed.forEach((node) => observer.observe(node));
|
|
48
|
+
return () => observer.disconnect();
|
|
49
|
+
}, []);
|
|
50
|
+
return jsxs(Root, {
|
|
51
|
+
$isOpen: open,
|
|
52
|
+
id: SELECTOR_IDS.PROFILE_MENU,
|
|
53
|
+
children: [jsx("div", {
|
|
54
|
+
ref: pupilSelectRef,
|
|
55
|
+
children: pupilSelectSlot
|
|
56
|
+
}), jsx("div", {
|
|
57
|
+
ref: profileInfoRef,
|
|
58
|
+
children: profileInfoSlot
|
|
59
|
+
}), jsxs(Scrollable, {
|
|
60
|
+
autoHeight: true,
|
|
61
|
+
autoHeightMax: maxHeight,
|
|
62
|
+
autoHide: true,
|
|
63
|
+
universal: true,
|
|
64
|
+
children: [headItems.map((item) => jsx(ProfileMenuItem, __spreadValues({}, item), item.id)), jsx(Spacer, {
|
|
65
|
+
marginBottom: headSpacing
|
|
66
|
+
}), items.map((item) => item.id === SELECTOR_IDS.PROFILE_MENU_BONUSES && bonusesSlot !== void 0 ? jsx(Fragment, {
|
|
67
|
+
children: bonusesSlot
|
|
68
|
+
}, item.id) : jsx(ProfileMenuItem, __spreadValues({}, item), item.id))]
|
|
69
|
+
})]
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
export {
|
|
73
|
+
ProfileMenu
|
|
74
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const PROFILE_MENU_PADDING = 20;
|
|
2
|
+
/** Отступ снизу — часть расчёта максимальной высоты прокрутки, как в легаси. */
|
|
3
|
+
export declare const PROFILE_MENU_OFFSET_BOTTOM = 15;
|
|
4
|
+
export declare const Root: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("preact").JSX.HTMLAttributes<HTMLDivElement>, "style"> & {
|
|
5
|
+
style?: string | import("styled-components/dist/types").CSSPropertiesWithVars | import("preact").JSX.CSSProperties | import("preact").JSX.SignalLike<string | import("preact").JSX.CSSProperties | undefined> | undefined;
|
|
6
|
+
}, {
|
|
7
|
+
$isOpen: boolean;
|
|
8
|
+
}>> & string;
|
|
9
|
+
//# sourceMappingURL=styled.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../../src/header/molecules/profile-menu/styled.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,oBAAoB,KAAK,CAAA;AAEtC,gFAAgF;AAChF,eAAO,MAAM,0BAA0B,KAAK,CAAA;AAE5C,eAAO,MAAM,IAAI;;;aAAyB,OAAO;YAiBhD,CAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { styled, css } from "styled-components";
|
|
2
|
+
import { DURATION_MENU_ANIMATION } from "../../../shared/constants.js";
|
|
3
|
+
import { BASE_ZINDEX } from "../../../shared/z-index.js";
|
|
4
|
+
const PROFILE_MENU_PADDING = 20;
|
|
5
|
+
const PROFILE_MENU_OFFSET_BOTTOM = 15;
|
|
6
|
+
const Root = styled.div.withConfig({
|
|
7
|
+
displayName: "styled__Root",
|
|
8
|
+
componentId: "sc-1n48uts-0"
|
|
9
|
+
})(["position:absolute;top:calc(100% + 32px);right:0;border-radius:10px;box-shadow:0px 6px 20px rgba(0,0,0,0.1);width:290px;z-index:", ";overflow:hidden;", ""], BASE_ZINDEX.NAVIGATION + 3, ({
|
|
10
|
+
$isOpen,
|
|
11
|
+
theme
|
|
12
|
+
}) => css`
|
|
13
|
+
padding: ${PROFILE_MENU_PADDING}px;
|
|
14
|
+
background-color: ${theme.colors.white};
|
|
15
|
+
pointer-events: ${$isOpen ? "auto" : "none"};
|
|
16
|
+
opacity: ${$isOpen ? 1 : 0};
|
|
17
|
+
transition: opacity ${DURATION_MENU_ANIMATION}ms linear ${$isOpen ? `${DURATION_MENU_ANIMATION * 2}ms` : "0s"};
|
|
18
|
+
`);
|
|
19
|
+
export {
|
|
20
|
+
PROFILE_MENU_OFFSET_BOTTOM,
|
|
21
|
+
PROFILE_MENU_PADDING,
|
|
22
|
+
Root
|
|
23
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="12" fill="none"><path fill="#fff" fill-rule="evenodd" d="M10.707 4.707a1 1 0 0 0-1.414 0L2 12h16l-7.293-7.293Z" clip-rule="evenodd"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/header/molecules/profile-menu-button-tooltip/index.tsx"],"names":[],"mappings":"AAEA,MAAM,WAAW,6BAA6B;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,wBAAgB,wBAAwB,CAAC,EAAE,IAAI,EAAE,EAAE,6BAA6B,gCAE/E"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Root } from "./styled.js";
|
|
2
|
+
import { jsx } from "preact/jsx-runtime";
|
|
3
|
+
function ProfileMenuButtonTooltip({
|
|
4
|
+
text
|
|
5
|
+
}) {
|
|
6
|
+
return jsx(Root, {
|
|
7
|
+
$open: text !== void 0,
|
|
8
|
+
children: text != null ? text : ""
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
export {
|
|
12
|
+
ProfileMenuButtonTooltip
|
|
13
|
+
};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const Root: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("preact").JSX.HTMLAttributes<HTMLDivElement>, "style"> & {
|
|
2
|
+
style?: string | import("styled-components/dist/types").CSSPropertiesWithVars | import("preact").JSX.CSSProperties | import("preact").JSX.SignalLike<string | import("preact").JSX.CSSProperties | undefined> | undefined;
|
|
3
|
+
}, {
|
|
4
|
+
$open: boolean;
|
|
5
|
+
}>> & string;
|
|
6
|
+
//# sourceMappingURL=styled.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../../src/header/molecules/profile-menu-button-tooltip/styled.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,IAAI;;;WAAuB,OAAO;YA6C9C,CAAA"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { styled, css } from "styled-components";
|
|
2
|
+
import { screenMinM } from "@foxford/ui";
|
|
3
|
+
import arrow from "./assets/arrow.svg";
|
|
4
|
+
const Root = styled.div.withConfig({
|
|
5
|
+
displayName: "styled__Root",
|
|
6
|
+
componentId: "sc-1tfgp9l-0"
|
|
7
|
+
})(["", ""], ({
|
|
8
|
+
$open,
|
|
9
|
+
theme
|
|
10
|
+
}) => css`
|
|
11
|
+
position: absolute;
|
|
12
|
+
top: -12px;
|
|
13
|
+
right: 0;
|
|
14
|
+
transform: translateY(-100%);
|
|
15
|
+
padding: 12px 16px;
|
|
16
|
+
border-radius: 5px;
|
|
17
|
+
width: 201px;
|
|
18
|
+
font-size: 16px;
|
|
19
|
+
line-height: 1.5;
|
|
20
|
+
color: ${theme.colors.mineShaft};
|
|
21
|
+
background-color: ${theme.colors.white};
|
|
22
|
+
box-shadow:
|
|
23
|
+
0px 4px 8px 0px rgba(0, 0, 0, 0.08),
|
|
24
|
+
0px -2px 8px 0px rgba(0, 0, 0, 0.08);
|
|
25
|
+
opacity: ${$open ? 1 : 0};
|
|
26
|
+
pointer-events: ${$open ? "auto" : "none"};
|
|
27
|
+
transition: opacity ${$open ? 0.3 : 0}s;
|
|
28
|
+
|
|
29
|
+
${screenMinM()`
|
|
30
|
+
top: initial;
|
|
31
|
+
right: -15px;
|
|
32
|
+
bottom: -12px;
|
|
33
|
+
transform: translateY(100%);
|
|
34
|
+
`}
|
|
35
|
+
|
|
36
|
+
&:before {
|
|
37
|
+
content: '';
|
|
38
|
+
position: absolute;
|
|
39
|
+
bottom: 0;
|
|
40
|
+
right: 13px;
|
|
41
|
+
transform: translateY(100%) rotate(180deg);
|
|
42
|
+
width: 20px;
|
|
43
|
+
height: 12px;
|
|
44
|
+
background: url(${arrow}) no-repeat 0 0;
|
|
45
|
+
|
|
46
|
+
${screenMinM()`
|
|
47
|
+
top: 0;
|
|
48
|
+
bottom: initial;
|
|
49
|
+
right: 25px;
|
|
50
|
+
transform: translateY(-100%);
|
|
51
|
+
`}
|
|
52
|
+
}
|
|
53
|
+
`);
|
|
54
|
+
export {
|
|
55
|
+
Root
|
|
56
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export interface PupilSelectButtonProps {
|
|
2
|
+
isViewingAsPupil?: boolean;
|
|
3
|
+
onOpenPupilList?: () => void;
|
|
4
|
+
onSignOutFromPupil?: () => void;
|
|
5
|
+
pupilCount?: number;
|
|
6
|
+
}
|
|
7
|
+
export declare function PupilSelectButton({ isViewingAsPupil, onOpenPupilList, onSignOutFromPupil, pupilCount, }: PupilSelectButtonProps): import("preact").JSX.Element | null;
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/header/molecules/pupil-select-button/index.tsx"],"names":[],"mappings":"AAEA,MAAM,WAAW,sBAAsB;IACrC,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,eAAe,CAAC,EAAE,MAAM,IAAI,CAAA;IAC5B,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAA;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAID,wBAAgB,iBAAiB,CAAC,EAChC,gBAAwB,EACxB,eAAe,EACf,kBAAkB,EAClB,UAAc,GACf,EAAE,sBAAsB,uCAyCxB"}
|