@foxford/navigation-ui 1.0.0 → 1.0.2

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 (112) hide show
  1. package/README.mdx +48 -4
  2. package/footer/contacts-column.d.ts.map +1 -1
  3. package/footer/contacts-column.js +80 -48
  4. package/footer/contacts-styled.d.ts +44 -0
  5. package/footer/contacts-styled.d.ts.map +1 -0
  6. package/footer/contacts-styled.js +120 -0
  7. package/footer/footer.d.ts.map +1 -1
  8. package/footer/footer.js +3 -3
  9. package/footer/molecules/geoposition/index.js +1 -3
  10. package/footer/styled.d.ts +0 -22
  11. package/footer/styled.d.ts.map +1 -1
  12. package/footer/styled.js +7 -42
  13. package/footer/types.d.ts +6 -6
  14. package/footer/types.d.ts.map +1 -1
  15. package/header/atoms/action-button/assets/elementary/calendar.svg +1 -0
  16. package/header/atoms/action-button/assets/elementary/catalog.svg +1 -0
  17. package/header/atoms/action-button/assets/elementary/dashboard.svg +1 -0
  18. package/header/atoms/action-button/assets/elementary/externship.svg +1 -0
  19. package/header/atoms/action-button/assets/elementary/main.svg +1 -0
  20. package/header/atoms/action-button/assets/elementary/room.svg +1 -0
  21. package/header/atoms/action-button/elementary-icons.d.ts +14 -0
  22. package/header/atoms/action-button/elementary-icons.d.ts.map +1 -0
  23. package/header/atoms/action-button/elementary-icons.js +21 -0
  24. package/header/atoms/action-button/index.d.ts +5 -3
  25. package/header/atoms/action-button/index.d.ts.map +1 -1
  26. package/header/atoms/action-button/index.js +23 -4
  27. package/header/atoms/grades-list-item/index.d.ts +10 -0
  28. package/header/atoms/grades-list-item/index.d.ts.map +1 -0
  29. package/header/atoms/grades-list-item/index.js +21 -0
  30. package/header/atoms/grades-list-item/styled.d.ts +14 -0
  31. package/header/atoms/grades-list-item/styled.d.ts.map +1 -0
  32. package/header/atoms/grades-list-item/styled.js +27 -0
  33. package/header/atoms/profile-menu-item/index.d.ts +3 -1
  34. package/header/atoms/profile-menu-item/index.d.ts.map +1 -1
  35. package/header/atoms/profile-menu-item/index.js +2 -0
  36. package/header/atoms/profile-menu-item/styled.d.ts +4 -2
  37. package/header/atoms/profile-menu-item/styled.d.ts.map +1 -1
  38. package/header/atoms/profile-menu-item/styled.js +3 -1
  39. package/header/atoms/prolongation-title/assets/arrow.svg +1 -0
  40. package/header/atoms/prolongation-title/assets/lightning.svg +1 -0
  41. package/header/atoms/prolongation-title/index.d.ts +10 -0
  42. package/header/atoms/prolongation-title/index.d.ts.map +1 -0
  43. package/header/atoms/prolongation-title/index.js +44 -0
  44. package/header/atoms/prolongation-title/styled.d.ts +14 -0
  45. package/header/atoms/prolongation-title/styled.d.ts.map +1 -0
  46. package/header/atoms/prolongation-title/styled.js +38 -0
  47. package/header/header-desktop.d.ts +2 -2
  48. package/header/header-desktop.d.ts.map +1 -1
  49. package/header/header-desktop.js +16 -41
  50. package/header/header-mobile.d.ts +2 -2
  51. package/header/header-mobile.d.ts.map +1 -1
  52. package/header/header-mobile.js +3 -18
  53. package/header/molecules/cart-button/index.js +25 -0
  54. package/header/molecules/cart-button/styled.d.ts.map +1 -1
  55. package/header/molecules/cart-button/styled.js +14 -0
  56. package/header/molecules/container/index.d.ts +5 -1
  57. package/header/molecules/container/index.d.ts.map +1 -1
  58. package/header/molecules/container/index.js +5 -3
  59. package/header/molecules/entry-panel/index.d.ts +4 -1
  60. package/header/molecules/entry-panel/index.d.ts.map +1 -1
  61. package/header/molecules/entry-panel/index.js +26 -5
  62. package/header/molecules/list/index.d.ts.map +1 -1
  63. package/header/molecules/list/index.js +5 -1
  64. package/header/molecules/menu/segment-content.d.ts.map +1 -1
  65. package/header/molecules/menu/segment-content.js +20 -3
  66. package/header/molecules/menu/types.d.ts +18 -0
  67. package/header/molecules/menu/types.d.ts.map +1 -1
  68. package/header/molecules/support-button/index.d.ts +5 -0
  69. package/header/molecules/support-button/index.d.ts.map +1 -0
  70. package/header/molecules/support-button/index.js +108 -0
  71. package/header/molecules/support-button/modal.d.ts +9 -0
  72. package/header/molecules/support-button/modal.d.ts.map +1 -0
  73. package/header/molecules/support-button/modal.js +122 -0
  74. package/header/molecules/support-button/modal.styled.d.ts +12 -0
  75. package/header/molecules/support-button/modal.styled.d.ts.map +1 -0
  76. package/header/molecules/support-button/modal.styled.js +23 -0
  77. package/header/molecules/support-button/styled.d.ts +20 -0
  78. package/header/molecules/support-button/styled.d.ts.map +1 -0
  79. package/header/molecules/support-button/styled.js +24 -0
  80. package/header/molecules/support-button/theme.d.ts +5 -0
  81. package/header/molecules/support-button/theme.d.ts.map +1 -0
  82. package/header/molecules/support-button/theme.js +40 -0
  83. package/header/molecules/support-button/types.d.ts +20 -0
  84. package/header/molecules/support-button/types.d.ts.map +1 -0
  85. package/header/molecules/user-panel/index.d.ts +10 -3
  86. package/header/molecules/user-panel/index.d.ts.map +1 -1
  87. package/header/molecules/user-panel/index.js +48 -36
  88. package/header/molecules/user-panel/styled.d.ts +15 -0
  89. package/header/molecules/user-panel/styled.d.ts.map +1 -1
  90. package/header/molecules/user-panel/styled.js +41 -5
  91. package/header/molecules/user-panel-mobile/index.d.ts +1 -1
  92. package/header/molecules/user-panel-mobile/index.d.ts.map +1 -1
  93. package/header/molecules/user-panel-mobile/index.js +11 -3
  94. package/header/navigation.d.ts.map +1 -1
  95. package/header/navigation.js +66 -4
  96. package/header/styled.d.ts +7 -0
  97. package/header/styled.d.ts.map +1 -1
  98. package/header/styled.js +24 -4
  99. package/header/types.d.ts +9 -6
  100. package/header/types.d.ts.map +1 -1
  101. package/index.d.ts +6 -0
  102. package/index.d.ts.map +1 -1
  103. package/index.js +10 -0
  104. package/package.json +14 -4
  105. package/shared/constants.d.ts +8 -0
  106. package/shared/constants.d.ts.map +1 -1
  107. package/shared/constants.js +8 -0
  108. package/shared/slots.d.ts +64 -0
  109. package/shared/slots.d.ts.map +1 -0
  110. package/shared/slots.js +53 -0
  111. package/_virtual/preload-helper.js +0 -57
  112. package/header/molecules/phone-button/index.js +0 -15
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 33" fill="none"><path stroke="#F16F04" stroke-miterlimit="10" stroke-width="1.173" d="M19.143 1h-5.285v4.17h5.285V1Z"/><path fill="#F90" d="M26.037 30H6.961a.695.695 0 0 1-.696-.696V10.977a8.157 8.157 0 0 1 8.158-8.158h4.156a8.158 8.158 0 0 1 8.154 8.158v18.327a.696.696 0 0 1-.696.696Z"/><path fill="#FFFA7D" d="m14.403 12.105 1.159.037.627.955.837-.781 1.13.23.029-1.14.962-.62-.788-.844.23-1.113-1.143-.046-.62-.958-.844.784-1.132-.223-.023 1.136-.965.624.784.84-.243 1.12Z"/><path fill="#8950E6" d="M6.265 27.747H5.5a3.001 3.001 0 0 1-3-2.997v-9.296a3.004 3.004 0 0 1 3.004-3.004h.765v15.297h-.004ZM26.733 12.454h.765a3.007 3.007 0 0 1 3.004 3.004v9.293a2.997 2.997 0 0 1-3 2.994h-.765v-15.29h-.004Z"/><path fill="#FFFA7D" d="M9.581 19.288h14.165v6.624a1.212 1.212 0 0 1-1.211 1.212H10.789a1.213 1.213 0 0 1-1.205-1.211v-6.625h-.003Z"/><path fill="#F16F04" d="M10.168 17.404h12.984a.594.594 0 0 1 .594.59v1.583H9.581v-1.582c0-.158.062-.305.17-.417a.621.621 0 0 1 .418-.174Z"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" fill="none"><g clip-path="url(#clip0_17316_17069)"><path fill="#F90" d="M20.179 7.097h3.609V0l-1.805.833L20.18 0v7.097ZM27.646 11.95H5.24V28.26h22.405V11.95Z"/><path fill="#F90" d="M16.443 11.95H4.37l12.073-9.335 12.073 9.335H16.443Z"/><path fill="#8950E6" d="M13.207 16.681v11.577h6.472V16.681h-6.472ZM16.435.53l-1.37 1.773L28.5 12.689l1.37-1.773L16.435.529Z"/><path fill="#8950E6" d="M16.433.53 3 10.913l1.37 1.774L17.803 2.303 16.433.53Z"/><path fill="#fff" d="M26.402 16.681H21.15v7.346h5.252v-7.346ZM11.668 16.681H6.417v7.346h5.251v-7.346Z"/><path stroke="#000" stroke-miterlimit="10" stroke-width=".655" d="M16.258 12.908a2.699 2.699 0 1 0 0-5.398 2.699 2.699 0 0 0 0 5.398ZM3 28.53h26.87"/></g><defs><clipPath id="clip0_17316_17069"><path fill="#fff" d="M3 0h26.87v29H3z"/></clipPath></defs></svg>
@@ -0,0 +1 @@
1
+ <svg viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M30 12.742C30 5.705 24.295 0 17.258 0 10.22 0 4.515 5.705 4.515 12.742V29H30V12.742z" fill="#8450E1"/><path d="M24.21 20.78a1.654 1.654 0 1 0 0-3.308 1.654 1.654 0 0 0 0 3.309z" fill="#BA9DFF"/><path d="m1 20.081 2.295 2.136-.247 3.065 3.036.588 1.504 2.68 2.804-1.126 2.753 1.402 1.7-2.44 2.97-.269.218-3.036L20.45 21.2l-1.503-2.651 1.111-2.877-2.774-1.43-.574-3.088-3.123.37-2.18-2.374-2.375 2.113-3.174-.762-.806 3.029-3.05 1.01.907 3.072L1 20.082z" fill="#F90"/><path d="M7.682 19.624c-.109.421-.13.864-.065 1.3.05.436.196.85.428 1.227.218.378.509.712.857.974.35.268.741.457 1.163.566.42.124.857.146 1.285.066.429-.051.843-.204 1.213-.429a3.336 3.336 0 0 0 1.533-2.04l-3.196-.843-3.218-.821zM15.868 20.06a1.103 1.103 0 0 1-.828-.916 1.115 1.115 0 0 1 .516-1.133 1.06 1.06 0 0 1 .624-.16 1.113 1.113 0 0 1 .995.734c.073.21.087.436.037.646a1.17 1.17 0 0 1-.182.4 1.248 1.248 0 0 1-.32.298c-.123.08-.261.13-.406.152a1.09 1.09 0 0 1-.436-.022zM6.65 17.786a1.103 1.103 0 0 1-.827-.915 1.115 1.115 0 0 1 .516-1.126 1.06 1.06 0 0 1 .624-.16c.218.007.429.087.603.218.174.13.312.312.385.516a1.157 1.157 0 0 1-.138 1.046 1.037 1.037 0 0 1-.32.298c-.123.08-.261.123-.406.145a.973.973 0 0 1-.436-.022z" fill="#000"/></svg>
@@ -0,0 +1,14 @@
1
+ import type { IconName } from '@foxford/ui';
2
+ export declare const ELEMENTARY_ICONS: {
3
+ readonly elementaryCalendar: string;
4
+ readonly elementaryCatalog: string;
5
+ readonly elementaryExternship: string;
6
+ readonly elementaryLessons: string;
7
+ readonly elementaryMain: string;
8
+ readonly elementaryRoom: string;
9
+ };
10
+ export type ElementaryIconName = keyof typeof ELEMENTARY_ICONS;
11
+ /** Что вообще может стоять иконкой в шапке: пиктограмма кита либо иллюстрация началки. */
12
+ export type NavigationIconName = ElementaryIconName | IconName;
13
+ export declare function isElementaryIcon(name: string): name is ElementaryIconName;
14
+ //# sourceMappingURL=elementary-icons.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"elementary-icons.d.ts","sourceRoot":"","sources":["../../../../src/header/atoms/action-button/elementary-icons.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAO3C,eAAO,MAAM,gBAAgB;;;;;;;CAOnB,CAAA;AAEV,MAAM,MAAM,kBAAkB,GAAG,MAAM,OAAO,gBAAgB,CAAA;AAE9D,0FAA0F;AAC1F,MAAM,MAAM,kBAAkB,GAAG,kBAAkB,GAAG,QAAQ,CAAA;AAE9D,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,kBAAkB,CAEzE"}
@@ -0,0 +1,21 @@
1
+ import calendar from "./assets/elementary/calendar.svg";
2
+ import catalog from "./assets/elementary/catalog.svg";
3
+ import dashboard from "./assets/elementary/dashboard.svg";
4
+ import externship from "./assets/elementary/externship.svg";
5
+ import main from "./assets/elementary/main.svg";
6
+ import room from "./assets/elementary/room.svg";
7
+ const ELEMENTARY_ICONS = {
8
+ elementaryCalendar: calendar,
9
+ elementaryCatalog: catalog,
10
+ elementaryExternship: externship,
11
+ elementaryLessons: dashboard,
12
+ elementaryMain: main,
13
+ elementaryRoom: room
14
+ };
15
+ function isElementaryIcon(name) {
16
+ return name in ELEMENTARY_ICONS;
17
+ }
18
+ export {
19
+ ELEMENTARY_ICONS,
20
+ isElementaryIcon
21
+ };
@@ -1,16 +1,18 @@
1
- import type { IconName } from '@foxford/ui';
1
+ import type { NavigationIconName } from './elementary-icons';
2
2
  import type { ReactNode } from 'react';
3
3
  export interface ActionButtonProps {
4
4
  active?: boolean;
5
5
  avatar?: ReactNode;
6
6
  className?: string;
7
7
  hideTextInMobile?: boolean;
8
- icon?: IconName;
8
+ icon?: NavigationIconName;
9
+ /** Размер иконки; у иллюстраций началки он больше пиктограмм кита. */
10
+ iconSize?: number;
9
11
  id?: string;
10
12
  marker?: boolean;
11
13
  onClick?: () => void;
12
14
  text?: ReactNode;
13
15
  url?: string;
14
16
  }
15
- export declare function ActionButton({ active, avatar, className, hideTextInMobile, icon, id, marker, onClick, text, url, }: ActionButtonProps): import("preact").JSX.Element;
17
+ export declare function ActionButton({ active, avatar, className, hideTextInMobile, icon, iconSize, id, marker, onClick, text, url, }: ActionButtonProps): import("preact").JSX.Element;
16
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/header/atoms/action-button/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EAAwB,SAAS,EAAE,MAAM,OAAO,CAAA;AAE5D,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,EAAE,QAAQ,CAAA;IACf,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,GAAG,CAAC,EAAE,MAAM,CAAA;CACb;AAED,wBAAgB,YAAY,CAAC,EAC3B,MAAc,EACd,MAAM,EACN,SAAS,EACT,gBAAwB,EACxB,IAAI,EACJ,EAAE,EACF,MAAc,EACd,OAAO,EACP,IAAI,EACJ,GAAG,GACJ,EAAE,iBAAiB,gCA+BnB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/header/atoms/action-button/index.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,KAAK,EAAwB,SAAS,EAAE,MAAM,OAAO,CAAA;AAE5D,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,EAAE,kBAAkB,CAAA;IACzB,sEAAsE;IACtE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,GAAG,CAAC,EAAE,MAAM,CAAA;CACb;AAWD,wBAAgB,YAAY,CAAC,EAC3B,MAAc,EACd,MAAM,EACN,SAAS,EACT,gBAAwB,EACxB,IAAI,EACJ,QAAa,EACb,EAAE,EACF,MAAc,EACd,OAAO,EACP,IAAI,EACJ,GAAG,GACJ,EAAE,iBAAiB,gCA+BnB"}
@@ -1,13 +1,33 @@
1
1
  import { Icon } from "@foxford/ui";
2
+ import { isElementaryIcon, ELEMENTARY_ICONS } from "./elementary-icons.js";
2
3
  import { Inner, Marker, Text } from "./styled.js";
3
4
  import { Link } from "../../../shared/link.js";
4
5
  import { jsxs, jsx } from "preact/jsx-runtime";
6
+ function ButtonIcon({
7
+ icon,
8
+ size
9
+ }) {
10
+ if (isElementaryIcon(icon)) {
11
+ return jsx("img", {
12
+ alt: "",
13
+ height: size,
14
+ src: ELEMENTARY_ICONS[icon],
15
+ width: size
16
+ });
17
+ }
18
+ return jsx(Icon, {
19
+ name: icon,
20
+ preset: "brand",
21
+ size
22
+ });
23
+ }
5
24
  function ActionButton({
6
25
  active = false,
7
26
  avatar,
8
27
  className,
9
28
  hideTextInMobile = false,
10
29
  icon,
30
+ iconSize = 20,
11
31
  id,
12
32
  marker = false,
13
33
  onClick,
@@ -20,10 +40,9 @@ function ActionButton({
20
40
  className,
21
41
  children: [(avatar !== void 0 || icon !== void 0) && jsx(Marker, {
22
42
  $marker: marker,
23
- children: avatar != null ? avatar : icon && jsx(Icon, {
24
- name: icon,
25
- preset: "brand",
26
- size: 20
43
+ children: avatar != null ? avatar : icon && jsx(ButtonIcon, {
44
+ icon,
45
+ size: iconSize
27
46
  })
28
47
  }), hasText && jsx(Text, {
29
48
  $hideTextInMobile: hideTextInMobile,
@@ -0,0 +1,10 @@
1
+ export interface GradeLink {
2
+ title: string;
3
+ url: string;
4
+ }
5
+ export interface GradesListItemProps {
6
+ items: GradeLink[];
7
+ onItemClick?: (item: GradeLink) => void;
8
+ }
9
+ export declare function GradesListItem({ items, onItemClick }: GradesListItemProps): import("preact").JSX.Element;
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/header/atoms/grades-list-item/index.tsx"],"names":[],"mappings":"AAEA,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,SAAS,EAAE,CAAA;IAClB,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;CACxC;AASD,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,mBAAmB,gCAgBzE"}
@@ -0,0 +1,21 @@
1
+ import { Root, Column, Title } from "./styled.js";
2
+ import { jsx } from "preact/jsx-runtime";
3
+ const FIRST_COLUMN_SIZE = 6;
4
+ function GradesListItem({
5
+ items,
6
+ onItemClick
7
+ }) {
8
+ const columns = [items.slice(0, FIRST_COLUMN_SIZE), items.slice(FIRST_COLUMN_SIZE)];
9
+ return jsx(Root, {
10
+ children: columns.map((column, columnIndex) => jsx(Column, {
11
+ children: column.map((item) => jsx(Title, {
12
+ href: item.url,
13
+ onClick: () => onItemClick == null ? void 0 : onItemClick(item),
14
+ children: item.title
15
+ }, item.url))
16
+ }, columnIndex))
17
+ });
18
+ }
19
+ export {
20
+ GradesListItem
21
+ };
@@ -0,0 +1,14 @@
1
+ export declare const Root: import("styled-components/dist/types").IStyledComponentBase<"web", 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
+ }> & string;
4
+ export declare const Column: import("styled-components/dist/types").IStyledComponentBase<"web", 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
+ }> & string;
7
+ export declare const Title: 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
+ //# sourceMappingURL=styled.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../../src/header/atoms/grades-list-item/styled.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,IAAI;;WAOhB,CAAA;AAED,eAAO,MAAM,MAAM;;WAIlB,CAAA;AAED,eAAO,MAAM,KAAK;;;;;;8CAiBjB,CAAA"}
@@ -0,0 +1,27 @@
1
+ import { styled, css } from "styled-components";
2
+ import { Link } from "../../../shared/link.js";
3
+ const Root = styled.div.withConfig({
4
+ displayName: "styled__Root",
5
+ componentId: "sc-145kbei-0"
6
+ })(["display:flex;margin-bottom:12px;> *:not(:first-child){margin-left:27px;}"]);
7
+ const Column = styled.div.withConfig({
8
+ displayName: "styled__Column",
9
+ componentId: "sc-145kbei-1"
10
+ })(["display:flex;max-width:50%;flex-direction:column;"]);
11
+ const Title = styled(Link).withConfig({
12
+ displayName: "styled__Title",
13
+ componentId: "sc-145kbei-2"
14
+ })(["display:inline-block;font-size:18px;line-height:1.5;cursor:pointer;&:not(:last-child){margin-bottom:8px;}", ""], ({
15
+ theme
16
+ }) => css`
17
+ color: ${theme.colors.mineShaft};
18
+
19
+ &:hover {
20
+ color: ${theme.colors.accent};
21
+ }
22
+ `);
23
+ export {
24
+ Column,
25
+ Root,
26
+ Title
27
+ };
@@ -5,9 +5,11 @@ export interface ProfileMenuItemProps {
5
5
  icon?: IconName;
6
6
  id: string;
7
7
  isMarkerVisible?: boolean;
8
+ /** Отбивка ПЕРЕД пунктом — та же конвенция, что у пунктов подвала (`FooterMenuItem`). */
9
+ isSpacer?: boolean;
8
10
  onClick?: () => void;
9
11
  title: ReactNode;
10
12
  url?: string;
11
13
  }
12
- export declare function ProfileMenuItem({ additionalInfo, icon, id, isMarkerVisible, onClick, title, url, }: ProfileMenuItemProps): import("preact").JSX.Element;
14
+ export declare function ProfileMenuItem({ additionalInfo, icon, id, isMarkerVisible, isSpacer, onClick, title, url, }: ProfileMenuItemProps): import("preact").JSX.Element;
13
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/header/atoms/profile-menu-item/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EAAwB,SAAS,EAAE,MAAM,OAAO,CAAA;AAE5D,MAAM,WAAW,oBAAoB;IACnC,cAAc,CAAC,EAAE,SAAS,CAAA;IAC1B,IAAI,CAAC,EAAE,QAAQ,CAAA;IACf,EAAE,EAAE,MAAM,CAAA;IACV,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,KAAK,EAAE,SAAS,CAAA;IAChB,GAAG,CAAC,EAAE,MAAM,CAAA;CACb;AAED,wBAAgB,eAAe,CAAC,EAC9B,cAAc,EACd,IAAI,EACJ,EAAE,EACF,eAAe,EACf,OAAO,EACP,KAAK,EACL,GAAG,GACJ,EAAE,oBAAoB,gCAkCtB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/header/atoms/profile-menu-item/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EAAwB,SAAS,EAAE,MAAM,OAAO,CAAA;AAE5D,MAAM,WAAW,oBAAoB;IACnC,cAAc,CAAC,EAAE,SAAS,CAAA;IAC1B,IAAI,CAAC,EAAE,QAAQ,CAAA;IACf,EAAE,EAAE,MAAM,CAAA;IACV,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,yFAAyF;IACzF,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,KAAK,EAAE,SAAS,CAAA;IAChB,GAAG,CAAC,EAAE,MAAM,CAAA;CACb;AAED,wBAAgB,eAAe,CAAC,EAC9B,cAAc,EACd,IAAI,EACJ,EAAE,EACF,eAAe,EACf,QAAQ,EACR,OAAO,EACP,KAAK,EACL,GAAG,GACJ,EAAE,oBAAoB,gCAkCtB"}
@@ -7,11 +7,13 @@ function ProfileMenuItem({
7
7
  icon,
8
8
  id,
9
9
  isMarkerVisible,
10
+ isSpacer,
10
11
  onClick,
11
12
  title,
12
13
  url
13
14
  }) {
14
15
  const inner = jsxs(Inner, {
16
+ $isSpacer: isSpacer,
15
17
  children: [icon && jsx(Marker, {
16
18
  $isMarkerVisible: isMarkerVisible,
17
19
  children: jsx(Icon, {
@@ -1,6 +1,8 @@
1
- export declare const Inner: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("preact").JSX.HTMLAttributes<HTMLDivElement>, "style"> & {
1
+ export declare const Inner: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<import("preact").JSX.HTMLAttributes<HTMLDivElement>, "style"> & {
2
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
- }> & string;
3
+ }, {
4
+ $isSpacer?: boolean;
5
+ }>> & string;
4
6
  export declare const Title: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("preact").JSX.HTMLAttributes<HTMLSpanElement>, "style"> & {
5
7
  style?: string | import("styled-components/dist/types").CSSPropertiesWithVars | import("preact").JSX.CSSProperties | import("preact").JSX.SignalLike<string | import("preact").JSX.CSSProperties | undefined> | undefined;
6
8
  }> & string;
@@ -1 +1 @@
1
- {"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../../src/header/atoms/profile-menu-item/styled.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,KAAK;;WAgBjB,CAAA;AAED,eAAO,MAAM,KAAK;;WAIjB,CAAA;AAED,eAAO,MAAM,IAAI;;WAEhB,CAAA;AAED,eAAO,MAAM,MAAM;;;uBAAmC,OAAO;YAmB5D,CAAA"}
1
+ {"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../../src/header/atoms/profile-menu-item/styled.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,KAAK;;;gBAA4B,OAAO;YAkBpD,CAAA;AAED,eAAO,MAAM,KAAK;;WAIjB,CAAA;AAED,eAAO,MAAM,IAAI;;WAEhB,CAAA;AAED,eAAO,MAAM,MAAM;;;uBAAmC,OAAO;YAmB5D,CAAA"}
@@ -2,7 +2,9 @@ import { styled, css } from "styled-components";
2
2
  const Inner = styled.div.withConfig({
3
3
  displayName: "styled__Inner",
4
4
  componentId: "sc-1qc5rww-0"
5
- })(["display:flex;align-items:center;padding-top:6px;padding-bottom:6px;transition:color 0.3s;cursor:pointer;", ""], ({
5
+ })(["display:flex;align-items:center;padding-top:6px;padding-bottom:6px;transition:color 0.3s;cursor:pointer;", " ", ""], ({
6
+ $isSpacer
7
+ }) => $isSpacer === true && "margin-top: 24px;", ({
6
8
  theme
7
9
  }) => css`
8
10
  color: ${theme.colors.mineShaft};
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="20" height="21" fill="currentColor"><path fill="currentColor" d="M12.1 10.5 5.8 4.2l1.4-1.4 7.7 7.7-7.7 7.7-1.4-1.4 6.3-6.3Z"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="none"><path fill="#fff" d="M1.875 6.664c-.24.496.12 1.103.78 1.103h2.042v3.474c0 .772 1.14 1.048 1.56.386l3.844-6.563c.3-.496-.12-1.103-.72-1.103H6.737V.763c0-.827-1.2-1.048-1.561-.331L1.875 6.664Z"/></svg>
@@ -0,0 +1,10 @@
1
+ export interface ProlongationTitleProps {
2
+ /** Скидка за продление, в процентах. */
3
+ discount: number;
4
+ onClick?: () => void;
5
+ url: string;
6
+ /** Учебный год, на который продлевают, — «26/27». */
7
+ yearName: string;
8
+ }
9
+ export declare function ProlongationTitle({ discount, onClick, url, yearName }: ProlongationTitleProps): import("preact").JSX.Element;
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/header/atoms/prolongation-title/index.tsx"],"names":[],"mappings":"AAMA,MAAM,WAAW,sBAAsB;IACrC,wCAAwC;IACxC,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,GAAG,EAAE,MAAM,CAAA;IACX,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAA;CACjB;AAID,wBAAgB,iBAAiB,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,sBAAsB,gCAmB7F"}
@@ -0,0 +1,44 @@
1
+ import { Text } from "@foxford/ui";
2
+ import arrow from "./assets/arrow.svg";
3
+ import lightning from "./assets/lightning.svg";
4
+ import { Discount, Link, Arrow } from "./styled.js";
5
+ import { jsxs, jsx } from "preact/jsx-runtime";
6
+ function ProlongationTitle({
7
+ discount,
8
+ onClick,
9
+ url,
10
+ yearName
11
+ }) {
12
+ const discountBadge = jsxs(Discount, {
13
+ children: [jsx("img", {
14
+ alt: "",
15
+ height: 12,
16
+ src: lightning,
17
+ width: 12
18
+ }), jsxs(Text, {
19
+ as: "span",
20
+ color: "white",
21
+ size: "s",
22
+ weight: "bold",
23
+ children: ["-", discount, "%"]
24
+ })]
25
+ });
26
+ return jsxs(Link, {
27
+ href: url,
28
+ onClick,
29
+ children: [discountBadge, jsxs(Text, {
30
+ as: "span",
31
+ lineHeight: 1,
32
+ size: "l",
33
+ children: ["Продлить обучение на ", yearName, " год"]
34
+ }), jsx(Arrow, {
35
+ alt: "",
36
+ height: 20,
37
+ src: arrow,
38
+ width: 20
39
+ })]
40
+ });
41
+ }
42
+ export {
43
+ ProlongationTitle
44
+ };
@@ -0,0 +1,14 @@
1
+ export declare const Link: 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 Discount: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("preact").JSX.HTMLAttributes<HTMLDivElement>, "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 Arrow: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<import("preact").JSX.ImgHTMLAttributes<HTMLImageElement>, "style"> & {
12
+ style?: string | import("styled-components/dist/types").CSSPropertiesWithVars | import("preact").JSX.CSSProperties | import("preact").JSX.SignalLike<string | import("preact").JSX.CSSProperties | undefined> | undefined;
13
+ }> & string;
14
+ //# sourceMappingURL=styled.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../../src/header/atoms/prolongation-title/styled.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,IAAI;;;;;;8CAqBhB,CAAA;AAED,eAAO,MAAM,QAAQ;;WASpB,CAAA;AAGD,eAAO,MAAM,KAAK;;WAMjB,CAAA"}
@@ -0,0 +1,38 @@
1
+ import { styled, css } from "styled-components";
2
+ import { screenMinS } from "@foxford/ui";
3
+ import { Link as Link$1 } from "../../../shared/link.js";
4
+ const Link = styled(Link$1).withConfig({
5
+ displayName: "styled__Link",
6
+ componentId: "sc-n7u9q0-0"
7
+ })(["width:161px;&:hover > div:first-child{background:", ";}&:hover > div:not(div:first-child),&:hover > span{color:", ";}", ""], ({
8
+ theme
9
+ }) => theme.colors.accent, ({
10
+ theme
11
+ }) => theme.colors.accent, screenMinS()`
12
+ display: flex;
13
+ width: auto;
14
+ align-items: center;
15
+
16
+ > *:not(:first-child) {
17
+ margin-left: 8px;
18
+ }
19
+ `);
20
+ const Discount = styled.div.withConfig({
21
+ displayName: "styled__Discount",
22
+ componentId: "sc-n7u9q0-1"
23
+ })(["display:inline-flex;align-items:center;padding:0 4px;border-radius:27px;", ""], ({
24
+ theme
25
+ }) => css`
26
+ background: ${theme.colors.primary};
27
+ `);
28
+ const Arrow = styled.img.withConfig({
29
+ displayName: "styled__Arrow",
30
+ componentId: "sc-n7u9q0-2"
31
+ })(["display:none;", ""], screenMinS()`
32
+ display: block;
33
+ `);
34
+ export {
35
+ Arrow,
36
+ Discount,
37
+ Link
38
+ };
@@ -1,5 +1,5 @@
1
1
  import type { NavigationProps } from './types';
2
- type HeaderDesktopProps = Pick<NavigationProps, 'cobranding' | 'entryPanel' | 'externatFreeAccessLink' | 'hasOneClickMenu' | 'isLoggedIn' | 'menuOpen' | 'oneClickMenuItems' | 'onExternatCallbackClick' | 'onExternatFreeAccessClick' | 'onMenuToggle' | 'onOnboardingClick' | 'onSegmentItemClick' | 'origin' | 'selectedOneClickMenuItemId' | 'showExternatButtons' | 'showOnboardingButton' | 'slots' | 'userPanel'>;
3
- export declare function HeaderDesktop({ cobranding, entryPanel, externatFreeAccessLink, hasOneClickMenu, isLoggedIn, menuOpen, oneClickMenuItems, onExternatCallbackClick, onExternatFreeAccessClick, onMenuToggle, onOnboardingClick, onSegmentItemClick, origin, selectedOneClickMenuItemId, showExternatButtons, showOnboardingButton, slots, userPanel, }: HeaderDesktopProps): import("preact").JSX.Element;
2
+ type HeaderDesktopProps = Pick<NavigationProps, 'entryPanel' | 'externatFreeAccessLink' | 'isLoggedIn' | 'onExternatCallbackClick' | 'onExternatFreeAccessClick' | 'onOnboardingClick' | 'showExternatButtons' | 'showOnboardingButton' | 'supportButton' | 'userPanel'>;
3
+ export declare function HeaderDesktop({ entryPanel, externatFreeAccessLink, isLoggedIn, onExternatCallbackClick, onExternatFreeAccessClick, onOnboardingClick, showExternatButtons, showOnboardingButton, supportButton, userPanel, }: HeaderDesktopProps): import("preact").JSX.Element;
4
4
  export {};
5
5
  //# sourceMappingURL=header-desktop.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"header-desktop.d.ts","sourceRoot":"","sources":["../../src/header/header-desktop.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,KAAK,kBAAkB,GAAG,IAAI,CAC5B,eAAe,EACb,YAAY,GACZ,YAAY,GACZ,wBAAwB,GACxB,iBAAiB,GACjB,YAAY,GACZ,UAAU,GACV,mBAAmB,GACnB,yBAAyB,GACzB,2BAA2B,GAC3B,cAAc,GACd,mBAAmB,GACnB,oBAAoB,GACpB,QAAQ,GACR,4BAA4B,GAC5B,qBAAqB,GACrB,sBAAsB,GACtB,OAAO,GACP,WAAW,CACd,CAAA;AAED,wBAAgB,aAAa,CAAC,EAC5B,UAAU,EACV,UAAU,EACV,sBAAsB,EACtB,eAAe,EACf,UAAU,EACV,QAAQ,EACR,iBAAsB,EACtB,uBAAuB,EACvB,yBAAyB,EACzB,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,MAAM,EACN,0BAA0B,EAC1B,mBAAmB,EACnB,oBAAoB,EACpB,KAAK,EACL,SAAS,GACV,EAAE,kBAAkB,gCAoCpB"}
1
+ {"version":3,"file":"header-desktop.d.ts","sourceRoot":"","sources":["../../src/header/header-desktop.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,KAAK,kBAAkB,GAAG,IAAI,CAC5B,eAAe,EACb,YAAY,GACZ,wBAAwB,GACxB,YAAY,GACZ,yBAAyB,GACzB,2BAA2B,GAC3B,mBAAmB,GACnB,qBAAqB,GACrB,sBAAsB,GACtB,eAAe,GACf,WAAW,CACd,CAAA;AAGD,wBAAgB,aAAa,CAAC,EAC5B,UAAU,EACV,sBAAsB,EACtB,UAAU,EACV,uBAAuB,EACvB,yBAAyB,EACzB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,aAAa,EACb,SAAS,GACV,EAAE,kBAAkB,gCAwBpB"}
@@ -16,62 +16,37 @@ var __spreadValues = (a, b) => {
16
16
  };
17
17
  import { EntryPanel } from "./molecules/entry-panel/index.js";
18
18
  import { ExternatButtons } from "./molecules/externat-buttons/index.js";
19
- import { HeaderLogo } from "./molecules/header-logo/index.js";
20
- import { MenuButton } from "./molecules/menu-button/index.js";
21
19
  import { OnboardingButton } from "./molecules/onboarding-button/index.js";
22
- import { OneClickMenu } from "./molecules/oneclick-menu/index.js";
20
+ import { SupportButtonDesktop } from "./molecules/support-button/index.js";
23
21
  import { UserPanel } from "./molecules/user-panel/index.js";
24
- import { DesktopOnly, HeaderTop, UserPanelWrapper, ExtraButtonsDesktopWrapper } from "./styled.js";
25
- import { SELECTOR_IDS } from "../shared/constants.js";
22
+ import { DesktopOnly, UserPanelWrapper, ExtraButtonsDesktopWrapper } from "./styled.js";
26
23
  import { jsxs, jsx } from "preact/jsx-runtime";
27
24
  function HeaderDesktop({
28
- cobranding,
29
25
  entryPanel,
30
26
  externatFreeAccessLink,
31
- hasOneClickMenu,
32
27
  isLoggedIn,
33
- menuOpen,
34
- oneClickMenuItems = [],
35
28
  onExternatCallbackClick,
36
29
  onExternatFreeAccessClick,
37
- onMenuToggle,
38
30
  onOnboardingClick,
39
- onSegmentItemClick,
40
- origin,
41
- selectedOneClickMenuItemId,
42
31
  showExternatButtons,
43
32
  showOnboardingButton,
44
- slots,
33
+ supportButton,
45
34
  userPanel
46
35
  }) {
47
36
  return jsxs(DesktopOnly, {
48
- children: [jsxs(HeaderTop, {
49
- id: SELECTOR_IDS.HEADER_TOP,
50
- children: [jsx(HeaderLogo, {
51
- cobranding,
52
- origin
53
- }), jsx(MenuButton, {
54
- active: menuOpen,
55
- onClick: onMenuToggle
56
- }), slots == null ? void 0 : slots.actionsButton, jsxs(UserPanelWrapper, {
57
- children: [showExternatButtons && jsx(ExtraButtonsDesktopWrapper, {
58
- children: jsx(ExternatButtons, {
59
- freeAccessLink: externatFreeAccessLink,
60
- onCallbackClick: onExternatCallbackClick,
61
- onFreeAccessClick: onExternatFreeAccessClick
62
- })
63
- }), showOnboardingButton && jsx(ExtraButtonsDesktopWrapper, {
64
- children: jsx(OnboardingButton, {
65
- onClick: onOnboardingClick
66
- })
67
- }), isLoggedIn && userPanel && jsx(UserPanel, __spreadValues({}, userPanel)), jsx(EntryPanel, __spreadValues({}, entryPanel))]
68
- })]
69
- }), hasOneClickMenu && jsx(OneClickMenu, {
70
- isMenuOpen: menuOpen,
71
- items: oneClickMenuItems,
72
- onItemClick: onSegmentItemClick,
73
- selectedItemId: selectedOneClickMenuItemId
74
- })]
37
+ children: [jsxs(UserPanelWrapper, {
38
+ children: [showExternatButtons && jsx(ExtraButtonsDesktopWrapper, {
39
+ children: jsx(ExternatButtons, {
40
+ freeAccessLink: externatFreeAccessLink,
41
+ onCallbackClick: onExternatCallbackClick,
42
+ onFreeAccessClick: onExternatFreeAccessClick
43
+ })
44
+ }), showOnboardingButton && jsx(ExtraButtonsDesktopWrapper, {
45
+ children: jsx(OnboardingButton, {
46
+ onClick: onOnboardingClick
47
+ })
48
+ }), isLoggedIn && userPanel && jsx(UserPanel, __spreadValues({}, userPanel)), jsx(EntryPanel, __spreadValues({}, entryPanel))]
49
+ }), isLoggedIn && supportButton && jsx(SupportButtonDesktop, __spreadValues({}, supportButton))]
75
50
  });
76
51
  }
77
52
  export {
@@ -1,5 +1,5 @@
1
1
  import type { NavigationProps } from './types';
2
- type HeaderMobileProps = Pick<NavigationProps, 'cobranding' | 'entryPanel' | 'externatFreeAccessLink' | 'menuOpen' | 'onExternatCallbackClick' | 'onExternatFreeAccessClick' | 'onMenuToggle' | 'onOnboardingClick' | 'origin' | 'showExternatButtons' | 'showOnboardingMobileButton' | 'slots'>;
3
- export declare function HeaderMobile({ cobranding, entryPanel, externatFreeAccessLink, menuOpen, onExternatCallbackClick, onExternatFreeAccessClick, onMenuToggle, onOnboardingClick, origin, showExternatButtons, showOnboardingMobileButton, slots, }: HeaderMobileProps): import("preact").JSX.Element;
2
+ type HeaderMobileProps = Pick<NavigationProps, 'entryPanel' | 'externatFreeAccessLink' | 'onExternatCallbackClick' | 'onExternatFreeAccessClick' | 'onOnboardingClick' | 'showExternatButtons' | 'showOnboardingMobileButton'>;
3
+ export declare function HeaderMobile({ entryPanel, externatFreeAccessLink, onExternatCallbackClick, onExternatFreeAccessClick, onOnboardingClick, showExternatButtons, showOnboardingMobileButton, }: HeaderMobileProps): import("preact").JSX.Element;
4
4
  export {};
5
5
  //# sourceMappingURL=header-mobile.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"header-mobile.d.ts","sourceRoot":"","sources":["../../src/header/header-mobile.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,KAAK,iBAAiB,GAAG,IAAI,CAC3B,eAAe,EACb,YAAY,GACZ,YAAY,GACZ,wBAAwB,GACxB,UAAU,GACV,yBAAyB,GACzB,2BAA2B,GAC3B,cAAc,GACd,mBAAmB,GACnB,QAAQ,GACR,qBAAqB,GACrB,4BAA4B,GAC5B,OAAO,CACV,CAAA;AAED,wBAAgB,YAAY,CAAC,EAC3B,UAAU,EACV,UAAU,EACV,sBAAsB,EACtB,QAAQ,EACR,uBAAuB,EACvB,yBAAyB,EACzB,YAAY,EACZ,iBAAiB,EACjB,MAAM,EACN,mBAAmB,EACnB,0BAA0B,EAC1B,KAAK,GACN,EAAE,iBAAiB,gCA4BnB"}
1
+ {"version":3,"file":"header-mobile.d.ts","sourceRoot":"","sources":["../../src/header/header-mobile.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,KAAK,iBAAiB,GAAG,IAAI,CAC3B,eAAe,EACb,YAAY,GACZ,wBAAwB,GACxB,yBAAyB,GACzB,2BAA2B,GAC3B,mBAAmB,GACnB,qBAAqB,GACrB,4BAA4B,CAC/B,CAAA;AAKD,wBAAgB,YAAY,CAAC,EAC3B,UAAU,EACV,sBAAsB,EACtB,uBAAuB,EACvB,yBAAyB,EACzB,iBAAiB,EACjB,mBAAmB,EACnB,0BAA0B,GAC3B,EAAE,iBAAiB,gCAuBnB"}
@@ -16,35 +16,20 @@ var __spreadValues = (a, b) => {
16
16
  };
17
17
  import { EntryPanel } from "./molecules/entry-panel/index.js";
18
18
  import { ExternatButtons } from "./molecules/externat-buttons/index.js";
19
- import { HeaderLogo } from "./molecules/header-logo/index.js";
20
- import { MenuButton } from "./molecules/menu-button/index.js";
21
19
  import { OnboardingButton } from "./molecules/onboarding-button/index.js";
22
- import { MobileOnly, HeaderLeftButtons, EntryPanelWrapper, ExtraButtonsMobileWrapper } from "./styled.js";
20
+ import { MobileOnly, EntryPanelWrapper, ExtraButtonsMobileWrapper } from "./styled.js";
23
21
  import { jsxs, jsx } from "preact/jsx-runtime";
24
22
  function HeaderMobile({
25
- cobranding,
26
23
  entryPanel,
27
24
  externatFreeAccessLink,
28
- menuOpen,
29
25
  onExternatCallbackClick,
30
26
  onExternatFreeAccessClick,
31
- onMenuToggle,
32
27
  onOnboardingClick,
33
- origin,
34
28
  showExternatButtons,
35
- showOnboardingMobileButton,
36
- slots
29
+ showOnboardingMobileButton
37
30
  }) {
38
31
  return jsxs(MobileOnly, {
39
- children: [jsxs(HeaderLeftButtons, {
40
- children: [jsx(MenuButton, {
41
- active: menuOpen,
42
- onClick: onMenuToggle
43
- }), slots == null ? void 0 : slots.actionsButton]
44
- }), jsx(HeaderLogo, {
45
- cobranding,
46
- origin
47
- }), jsx(EntryPanelWrapper, {
32
+ children: [jsx(EntryPanelWrapper, {
48
33
  children: jsx(EntryPanel, __spreadValues({}, entryPanel))
49
34
  }), showOnboardingMobileButton && jsx(ExtraButtonsMobileWrapper, {
50
35
  children: jsx(OnboardingButton, {
@@ -0,0 +1,25 @@
1
+ import { Cart } from "./styled.js";
2
+ import { SELECTOR_IDS } from "../../../shared/constants.js";
3
+ import { jsx } from "preact/jsx-runtime";
4
+ function CartButton({
5
+ active = false,
6
+ cartItemsCount = 0,
7
+ filled = false,
8
+ onClick,
9
+ showText = false
10
+ }) {
11
+ return jsx(Cart, {
12
+ active,
13
+ $filled: filled,
14
+ hideTextInMobile: true,
15
+ icon: "cart",
16
+ id: SELECTOR_IDS.TOP_MENU_CART,
17
+ marker: cartItemsCount > 0,
18
+ onClick,
19
+ text: showText ? "Корзина" : void 0,
20
+ url: "/checkout"
21
+ });
22
+ }
23
+ export {
24
+ CartButton
25
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../../src/header/molecules/cart-button/styled.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAE1C,eAAO,MAAM,IAAI,EAAE,aAAa,CAAC,iBAAiB,GAAG;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAczE,CAAA"}
1
+ {"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../../src/header/molecules/cart-button/styled.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAK1C,eAAO,MAAM,IAAI,EAAE,aAAa,CAAC,iBAAiB,GAAG;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAiBzE,CAAA"}
@@ -0,0 +1,14 @@
1
+ import { styled, css } from "styled-components";
2
+ import { ActionButton } from "../../atoms/action-button/index.js";
3
+ const Cart = styled(ActionButton).withConfig({
4
+ displayName: "styled__Cart",
5
+ componentId: "sc-1xs4dfu-0"
6
+ })(["&&{display:flex;height:40px;min-width:40px;align-items:center;justify-content:center;border-radius:50%;", "}"], ({
7
+ $filled,
8
+ theme
9
+ }) => $filled && css`
10
+ background: ${theme.colors["bg-onmain-main"]};
11
+ `);
12
+ export {
13
+ Cart
14
+ };