@alfalab/core-components-side-panel 7.0.4 → 7.0.5-alfasans

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 (167) hide show
  1. package/Component.responsive.d.ts +11 -11
  2. package/Context.d.ts +0 -1
  3. package/components/content/Component.d.ts +1 -1
  4. package/components/content/Component.desktop.d.ts +1 -1
  5. package/components/content/Component.mobile.d.ts +1 -1
  6. package/components/content/desktop.css +2 -2
  7. package/components/content/desktop.module.css.js +1 -1
  8. package/components/content/index.css +3 -3
  9. package/components/content/index.module.css.js +1 -1
  10. package/components/content/mobile.css +2 -2
  11. package/components/content/mobile.module.css.js +1 -1
  12. package/components/controls/index.css +1 -1
  13. package/components/controls/index.module.css.js +1 -1
  14. package/components/footer/Component.d.ts +1 -1
  15. package/components/footer/Component.desktop.d.ts +1 -1
  16. package/components/footer/Component.mobile.d.ts +1 -1
  17. package/components/footer/desktop.css +2 -2
  18. package/components/footer/desktop.module.css.js +1 -1
  19. package/components/footer/index.css +3 -3
  20. package/components/footer/index.module.css.js +1 -1
  21. package/components/footer/layout.css +16 -16
  22. package/components/footer/layout.module.css.js +1 -1
  23. package/components/footer/mobile.css +3 -3
  24. package/components/footer/mobile.module.css.js +1 -1
  25. package/components/header/Component.d.ts +1 -1
  26. package/components/header/desktop.css +8 -6
  27. package/components/header/desktop.module.css.js +1 -1
  28. package/components/header/index.css +13 -13
  29. package/components/header/index.module.css.js +1 -1
  30. package/components/header/mobile.css +11 -8
  31. package/components/header/mobile.module.css.js +1 -1
  32. package/cssm/Component.responsive.d.ts +11 -11
  33. package/cssm/Context.d.ts +0 -1
  34. package/cssm/components/content/Component.d.ts +1 -1
  35. package/cssm/components/content/Component.desktop.d.ts +1 -1
  36. package/cssm/components/content/Component.mobile.d.ts +1 -1
  37. package/cssm/components/footer/Component.d.ts +1 -1
  38. package/cssm/components/footer/Component.desktop.d.ts +1 -1
  39. package/cssm/components/footer/Component.mobile.d.ts +1 -1
  40. package/cssm/components/header/Component.d.ts +1 -1
  41. package/cssm/components/header/desktop.module.css +5 -3
  42. package/cssm/components/header/mobile.module.css +7 -4
  43. package/cssm/desktop/Component.desktop.d.ts +6 -6
  44. package/cssm/desktop/Component.desktop.js +3 -1
  45. package/cssm/desktop/Component.desktop.js.map +1 -1
  46. package/cssm/mobile/Component.mobile.d.ts +3 -3
  47. package/cssm/typings.d.ts +2 -2
  48. package/desktop/Component.desktop.d.ts +6 -6
  49. package/desktop/Component.desktop.js +3 -1
  50. package/desktop/Component.desktop.js.map +1 -1
  51. package/desktop/desktop.css +2 -2
  52. package/desktop/desktop.module.css.js +1 -1
  53. package/desktop/transitions.desktop.css +6 -6
  54. package/desktop/transitions.desktop.module.css.js +1 -1
  55. package/esm/Component.responsive.d.ts +11 -11
  56. package/esm/Context.d.ts +0 -1
  57. package/esm/components/content/Component.d.ts +1 -1
  58. package/esm/components/content/Component.desktop.d.ts +1 -1
  59. package/esm/components/content/Component.mobile.d.ts +1 -1
  60. package/esm/components/content/desktop.css +2 -2
  61. package/esm/components/content/desktop.module.css.js +1 -1
  62. package/esm/components/content/index.css +3 -3
  63. package/esm/components/content/index.module.css.js +1 -1
  64. package/esm/components/content/mobile.css +2 -2
  65. package/esm/components/content/mobile.module.css.js +1 -1
  66. package/esm/components/controls/index.css +1 -1
  67. package/esm/components/controls/index.module.css.js +1 -1
  68. package/esm/components/footer/Component.d.ts +1 -1
  69. package/esm/components/footer/Component.desktop.d.ts +1 -1
  70. package/esm/components/footer/Component.mobile.d.ts +1 -1
  71. package/esm/components/footer/desktop.css +2 -2
  72. package/esm/components/footer/desktop.module.css.js +1 -1
  73. package/esm/components/footer/index.css +3 -3
  74. package/esm/components/footer/index.module.css.js +1 -1
  75. package/esm/components/footer/layout.css +16 -16
  76. package/esm/components/footer/layout.module.css.js +1 -1
  77. package/esm/components/footer/mobile.css +3 -3
  78. package/esm/components/footer/mobile.module.css.js +1 -1
  79. package/esm/components/header/Component.d.ts +1 -1
  80. package/esm/components/header/desktop.css +8 -6
  81. package/esm/components/header/desktop.module.css.js +1 -1
  82. package/esm/components/header/index.css +13 -13
  83. package/esm/components/header/index.module.css.js +1 -1
  84. package/esm/components/header/mobile.css +11 -8
  85. package/esm/components/header/mobile.module.css.js +1 -1
  86. package/esm/desktop/Component.desktop.d.ts +6 -6
  87. package/esm/desktop/Component.desktop.js +3 -1
  88. package/esm/desktop/Component.desktop.js.map +1 -1
  89. package/esm/desktop/desktop.css +2 -2
  90. package/esm/desktop/desktop.module.css.js +1 -1
  91. package/esm/desktop/transitions.desktop.css +6 -6
  92. package/esm/desktop/transitions.desktop.module.css.js +1 -1
  93. package/esm/mobile/Component.mobile.d.ts +3 -3
  94. package/esm/mobile/mobile.css +4 -4
  95. package/esm/mobile/mobile.module.css.js +1 -1
  96. package/esm/mobile/transitions.mobile.css +7 -7
  97. package/esm/mobile/transitions.mobile.module.css.js +1 -1
  98. package/esm/typings.d.ts +2 -2
  99. package/mobile/Component.mobile.d.ts +3 -3
  100. package/mobile/mobile.css +4 -4
  101. package/mobile/mobile.module.css.js +1 -1
  102. package/mobile/transitions.mobile.css +7 -7
  103. package/mobile/transitions.mobile.module.css.js +1 -1
  104. package/modern/Component.responsive.d.ts +11 -11
  105. package/modern/Context.d.ts +0 -1
  106. package/modern/components/content/Component.d.ts +1 -1
  107. package/modern/components/content/Component.desktop.d.ts +1 -1
  108. package/modern/components/content/Component.mobile.d.ts +1 -1
  109. package/modern/components/content/desktop.css +2 -2
  110. package/modern/components/content/desktop.module.css.js +1 -1
  111. package/modern/components/content/index.css +3 -3
  112. package/modern/components/content/index.module.css.js +1 -1
  113. package/modern/components/content/mobile.css +2 -2
  114. package/modern/components/content/mobile.module.css.js +1 -1
  115. package/modern/components/controls/index.css +1 -1
  116. package/modern/components/controls/index.module.css.js +1 -1
  117. package/modern/components/footer/Component.d.ts +1 -1
  118. package/modern/components/footer/Component.desktop.d.ts +1 -1
  119. package/modern/components/footer/Component.mobile.d.ts +1 -1
  120. package/modern/components/footer/desktop.css +2 -2
  121. package/modern/components/footer/desktop.module.css.js +1 -1
  122. package/modern/components/footer/index.css +3 -3
  123. package/modern/components/footer/index.module.css.js +1 -1
  124. package/modern/components/footer/layout.css +16 -16
  125. package/modern/components/footer/layout.module.css.js +1 -1
  126. package/modern/components/footer/mobile.css +3 -3
  127. package/modern/components/footer/mobile.module.css.js +1 -1
  128. package/modern/components/header/Component.d.ts +1 -1
  129. package/modern/components/header/desktop.css +8 -6
  130. package/modern/components/header/desktop.module.css.js +1 -1
  131. package/modern/components/header/index.css +13 -13
  132. package/modern/components/header/index.module.css.js +1 -1
  133. package/modern/components/header/mobile.css +11 -8
  134. package/modern/components/header/mobile.module.css.js +1 -1
  135. package/modern/desktop/Component.desktop.d.ts +6 -6
  136. package/modern/desktop/Component.desktop.js +3 -1
  137. package/modern/desktop/Component.desktop.js.map +1 -1
  138. package/modern/desktop/desktop.css +2 -2
  139. package/modern/desktop/desktop.module.css.js +1 -1
  140. package/modern/desktop/transitions.desktop.css +6 -6
  141. package/modern/desktop/transitions.desktop.module.css.js +1 -1
  142. package/modern/mobile/Component.mobile.d.ts +3 -3
  143. package/modern/mobile/mobile.css +4 -4
  144. package/modern/mobile/mobile.module.css.js +1 -1
  145. package/modern/mobile/transitions.mobile.css +7 -7
  146. package/modern/mobile/transitions.mobile.module.css.js +1 -1
  147. package/modern/typings.d.ts +2 -2
  148. package/moderncssm/Component.responsive.d.ts +11 -11
  149. package/moderncssm/Context.d.ts +0 -1
  150. package/moderncssm/components/content/Component.d.ts +1 -1
  151. package/moderncssm/components/content/Component.desktop.d.ts +1 -1
  152. package/moderncssm/components/content/Component.mobile.d.ts +1 -1
  153. package/moderncssm/components/footer/Component.d.ts +1 -1
  154. package/moderncssm/components/footer/Component.desktop.d.ts +1 -1
  155. package/moderncssm/components/footer/Component.mobile.d.ts +1 -1
  156. package/moderncssm/components/header/Component.d.ts +1 -1
  157. package/moderncssm/components/header/desktop.module.css +2 -1
  158. package/moderncssm/components/header/mobile.module.css +4 -2
  159. package/moderncssm/desktop/Component.desktop.d.ts +6 -6
  160. package/moderncssm/desktop/Component.desktop.js +3 -1
  161. package/moderncssm/desktop/Component.desktop.js.map +1 -1
  162. package/moderncssm/mobile/Component.mobile.d.ts +3 -3
  163. package/moderncssm/typings.d.ts +2 -2
  164. package/package.json +8 -8
  165. package/src/desktop/Component.desktop.tsx +3 -1
  166. package/src/vars.css +1 -1
  167. package/typings.d.ts +2 -2
@@ -10,8 +10,9 @@
10
10
  --gap-10: 10px;
11
11
  }
12
12
  :root {
13
- --font-family-system:
14
- system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Helvetica, sans-serif;
13
+ --font-family-alfasans:
14
+ 'Alfa Interface Sans', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue',
15
+ Helvetica, sans-serif;
15
16
  }
16
17
  :root {
17
18
  --side-panel-header-mobile-content-paddings: var(--gap-10) var(--gap-8);
@@ -19,25 +20,27 @@
19
20
  --side-panel-header-mobile-paddings: var(--side-panel-header-mobile-top-padding) var(--gap-8)
20
21
  var(--gap-4) var(--gap-8);
21
22
  }
22
- .side-panel__header_1bi61 {
23
+ .side-panel__header_1cxcs {
23
24
  padding: var(--side-panel-header-mobile-paddings);
24
25
  }
25
26
  @media (display-mode: standalone) {
26
- .side-panel__header_1bi61 {
27
+ .side-panel__header_1cxcs {
27
28
  padding-top: calc(var(--sat) + var(--side-panel-header-mobile-top-padding));
28
29
  }
29
30
  }
30
- .side-panel__sticky_1bi61 {
31
+ .side-panel__sticky_1cxcs {
31
32
  top: var(--gap-0);
32
33
  }
33
- .side-panel__content_1bi61 {
34
+ .side-panel__content_1cxcs {
34
35
  padding: var(--side-panel-header-mobile-content-paddings);
35
36
 
36
37
  font-size: 20px;
37
38
 
38
39
  line-height: 28px;
39
40
 
40
- font-weight: 600;
41
+ font-weight: 500;
41
42
 
42
- font-family: var(--font-family-system);
43
+ letter-spacing: -0.15px;
44
+
45
+ font-family: var(--font-family-alfasans);
43
46
  }
@@ -1,6 +1,6 @@
1
1
  import './mobile.css';
2
2
 
3
- const mobileStyles = {"header":"side-panel__header_1bi61","sticky":"side-panel__sticky_1bi61","content":"side-panel__content_1bi61"};
3
+ const mobileStyles = {"header":"side-panel__header_1cxcs","sticky":"side-panel__sticky_1cxcs","content":"side-panel__content_1cxcs"};
4
4
 
5
5
  export { mobileStyles as default };
6
6
  //# sourceMappingURL=mobile.module.css.js.map
@@ -5,7 +5,7 @@ import { ContentDesktop } from '../components/content/Component.desktop';
5
5
  import { type ControlsProps } from '../components/controls';
6
6
  import { FooterDesktop } from '../components/footer/Component.desktop';
7
7
  import { type HeaderProps } from '../components/header/Component';
8
- export declare type SidePanelDesktopProps = BaseModalProps & Pick<DrawerProps, 'placement' | 'nativeScrollbar' | 'contentTransitionProps'> & {
8
+ export type SidePanelDesktopProps = BaseModalProps & Pick<DrawerProps, 'placement' | 'nativeScrollbar' | 'contentTransitionProps'> & {
9
9
  /**
10
10
  * Ширина модального окна
11
11
  * @default "s"
@@ -22,26 +22,26 @@ declare const SidePanelDesktopComponent: React.ForwardRefExoticComponent<BaseMod
22
22
  * Ширина модального окна
23
23
  * @default "s"
24
24
  */
25
- size?: "s" | 500 | undefined;
25
+ size?: "s" | 500;
26
26
  /**
27
27
  * Управление наличием закрывающего крестика
28
28
  * @default false
29
29
  */
30
- hasCloser?: boolean | undefined;
30
+ hasCloser?: boolean;
31
31
  } & React.RefAttributes<HTMLDivElement>>;
32
- declare const HeaderDesktop: React.FC<Omit<HeaderProps, "subtitle" | "titleSize">>;
32
+ declare const HeaderDesktop: React.FC<Omit<HeaderProps, "titleSize" | "subtitle">>;
33
33
  declare const ControlsDesktop: React.FC<Omit<ControlsProps, "mobileLayout">>;
34
34
  declare const SidePanelDesktop: React.ForwardRefExoticComponent<BaseModalProps & Pick<DrawerProps, "placement" | "nativeScrollbar" | "contentTransitionProps"> & {
35
35
  /**
36
36
  * Ширина модального окна
37
37
  * @default "s"
38
38
  */
39
- size?: "s" | 500 | undefined;
39
+ size?: "s" | 500;
40
40
  /**
41
41
  * Управление наличием закрывающего крестика
42
42
  * @default false
43
43
  */
44
- hasCloser?: boolean | undefined;
44
+ hasCloser?: boolean;
45
45
  } & React.RefAttributes<HTMLDivElement>> & {
46
46
  Content: React.FC<import("../components/content/Component.desktop").ContentDesktopProps>;
47
47
  Header: React.FC<Omit<HeaderProps, "subtitle" | "titleSize">>;
@@ -34,7 +34,9 @@ const SidePanelDesktopComponent = forwardRef(({ size = 500, children, className,
34
34
  exitDone: exitCn,
35
35
  },
36
36
  ...contentTransitionProps,
37
- } }, React.Children.map(children, (child) => isValidElement(child) ? cloneElement(child, { size }) : child)));
37
+ } }, React.Children.map(children, (child) => isValidElement(child)
38
+ ? cloneElement(child, { size })
39
+ : child)));
38
40
  const renderWithContext = () => (React.createElement(ResponsiveContext.Provider, { value: contextValue }, renderContent()));
39
41
  return responsiveContext ? renderContent() : renderWithContext();
40
42
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Component.desktop.js","sources":["../../src/desktop/Component.desktop.tsx"],"sourcesContent":["import React, { cloneElement, forwardRef, isValidElement, useContext, useRef } from 'react';\nimport mergeRefs from 'react-merge-refs';\nimport cn from 'classnames';\n\nimport { type BaseModalProps } from '@alfalab/core-components-base-modal';\nimport { Drawer, type DrawerProps } from '@alfalab/core-components-drawer';\n\nimport { ContentDesktop } from '../components/content/Component.desktop';\nimport { Controls, type ControlsProps } from '../components/controls';\nimport { FooterDesktop } from '../components/footer/Component.desktop';\nimport { Header, type HeaderProps } from '../components/header/Component';\nimport { SIZE_TO_CLASSNAME_MAP } from '../consts';\nimport { ResponsiveContext } from '../ResponsiveContext';\nimport { type TResponsiveModalContext } from '../typings';\n\nimport styles from './desktop.module.css';\nimport transitions from './transitions.desktop.module.css';\n\nexport type SidePanelDesktopProps = BaseModalProps &\n Pick<DrawerProps, 'placement' | 'nativeScrollbar' | 'contentTransitionProps'> & {\n /**\n * Ширина модального окна\n * @default \"s\"\n */\n size?: 's' | 500;\n\n /**\n * Управление наличием закрывающего крестика\n * @default false\n */\n hasCloser?: boolean;\n };\n\nconst SidePanelDesktopComponent = forwardRef<HTMLDivElement, SidePanelDesktopProps>(\n (\n {\n size = 500,\n children,\n className,\n wrapperClassName,\n contentTransitionProps = {},\n backdropProps,\n placement = 'right',\n dataTestId,\n ...restProps\n },\n ref,\n ) => {\n const responsiveContext = useContext(ResponsiveContext);\n const modalRef = useRef<HTMLElement>(null);\n\n const enterCn = cn({\n [transitions.appearRight]: placement === 'right',\n [transitions.appearLeft]: placement === 'left',\n });\n\n const exitCn = cn({\n [transitions.exitActiveRight]: placement === 'right',\n [transitions.exitActiveLeft]: placement === 'left',\n });\n\n const contextValue = React.useMemo<TResponsiveModalContext>(\n () => ({ size, view: 'desktop', dataTestId }),\n [size, dataTestId],\n );\n\n const renderContent = () => (\n <Drawer\n {...restProps}\n dataTestId={dataTestId}\n ref={mergeRefs([ref, modalRef])}\n placement={placement}\n wrapperClassName={wrapperClassName}\n className={cn(className, styles[SIZE_TO_CLASSNAME_MAP[size]], styles.hidden)}\n backdropProps={backdropProps}\n contentTransitionProps={{\n classNames: {\n appear: enterCn,\n enter: enterCn,\n appearActive: transitions.enterActive,\n enterActive: transitions.enterActive,\n exit: transitions.exit,\n exitActive: exitCn,\n exitDone: exitCn,\n },\n ...contentTransitionProps,\n }}\n >\n {React.Children.map(children, (child) =>\n isValidElement(child) ? cloneElement(child, { size }) : child,\n )}\n </Drawer>\n );\n\n const renderWithContext = () => (\n <ResponsiveContext.Provider value={contextValue}>\n {renderContent()}\n </ResponsiveContext.Provider>\n );\n\n return responsiveContext ? renderContent() : renderWithContext();\n },\n);\n\nconst HeaderDesktop = Header as React.FC<Omit<HeaderProps, 'titleSize' | 'subtitle'>>;\nconst ControlsDesktop = Controls as React.FC<Omit<ControlsProps, 'mobileLayout'>>;\n\nconst SidePanelDesktop = Object.assign(SidePanelDesktopComponent, {\n Content: ContentDesktop,\n Header: HeaderDesktop,\n Footer: FooterDesktop,\n Controls: ControlsDesktop,\n});\n\nexport {\n SidePanelDesktop,\n SidePanelDesktopComponent as SidePanelComponentDesktop,\n ContentDesktop,\n HeaderDesktop,\n FooterDesktop,\n ControlsDesktop,\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;AAiCA,MAAM,yBAAyB,GAAG,UAAU,CACxC,CACI,EACI,IAAI,GAAG,GAAG,EACV,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,sBAAsB,GAAG,EAAE,EAC3B,aAAa,EACb,SAAS,GAAG,OAAO,EACnB,UAAU,EACV,GAAG,SAAS,EACf,EACD,GAAG,KACH;AACA,IAAA,MAAM,iBAAiB,GAAG,UAAU,CAAC,iBAAiB,CAAC;AACvD,IAAA,MAAM,QAAQ,GAAG,MAAM,CAAc,IAAI,CAAC;IAE1C,MAAM,OAAO,GAAG,EAAE,CAAC;AACf,QAAA,CAAC,WAAW,CAAC,WAAW,GAAG,SAAS,KAAK,OAAO;AAChD,QAAA,CAAC,WAAW,CAAC,UAAU,GAAG,SAAS,KAAK,MAAM;AACjD,KAAA,CAAC;IAEF,MAAM,MAAM,GAAG,EAAE,CAAC;AACd,QAAA,CAAC,WAAW,CAAC,eAAe,GAAG,SAAS,KAAK,OAAO;AACpD,QAAA,CAAC,WAAW,CAAC,cAAc,GAAG,SAAS,KAAK,MAAM;AACrD,KAAA,CAAC;IAEF,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAC9B,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,EAC7C,CAAC,IAAI,EAAE,UAAU,CAAC,CACrB;IAED,MAAM,aAAa,GAAG,OAClB,KAAA,CAAA,aAAA,CAAC,MAAM,EAAA,EAAA,GACC,SAAS,EACb,UAAU,EAAE,UAAU,EACtB,GAAG,EAAE,SAAS,CAAC,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,EAC/B,SAAS,EAAE,SAAS,EACpB,gBAAgB,EAAE,gBAAgB,EAClC,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,EAC5E,aAAa,EAAE,aAAa,EAC5B,sBAAsB,EAAE;AACpB,YAAA,UAAU,EAAE;AACR,gBAAA,MAAM,EAAE,OAAO;AACf,gBAAA,KAAK,EAAE,OAAO;gBACd,YAAY,EAAE,WAAW,CAAC,WAAW;gBACrC,WAAW,EAAE,WAAW,CAAC,WAAW;gBACpC,IAAI,EAAE,WAAW,CAAC,IAAI;AACtB,gBAAA,UAAU,EAAE,MAAM;AAClB,gBAAA,QAAQ,EAAE,MAAM;AACnB,aAAA;AACD,YAAA,GAAG,sBAAsB;AAC5B,SAAA,EAAA,EAEA,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,KAChC,cAAc,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,KAAK,CAChE,CACI,CACZ;AAED,IAAA,MAAM,iBAAiB,GAAG,OACtB,oBAAC,iBAAiB,CAAC,QAAQ,EAAC,EAAA,KAAK,EAAE,YAAY,EAAA,EAC1C,aAAa,EAAE,CACS,CAChC;IAED,OAAO,iBAAiB,GAAG,aAAa,EAAE,GAAG,iBAAiB,EAAE;AACpE,CAAC;AAGC,MAAA,aAAa,GAAG;AAChB,MAAA,eAAe,GAAG;AAExB,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,yBAAyB,EAAE;AAC9D,IAAA,OAAO,EAAE,cAAc;AACvB,IAAA,MAAM,EAAE,aAAa;AACrB,IAAA,MAAM,EAAE,aAAa;AACrB,IAAA,QAAQ,EAAE,eAAe;AAC5B,CAAA;;;;"}
1
+ {"version":3,"file":"Component.desktop.js","sources":["../../src/desktop/Component.desktop.tsx"],"sourcesContent":["import React, { cloneElement, forwardRef, isValidElement, useContext, useRef } from 'react';\nimport mergeRefs from 'react-merge-refs';\nimport cn from 'classnames';\n\nimport { type BaseModalProps } from '@alfalab/core-components-base-modal';\nimport { Drawer, type DrawerProps } from '@alfalab/core-components-drawer';\n\nimport { ContentDesktop } from '../components/content/Component.desktop';\nimport { Controls, type ControlsProps } from '../components/controls';\nimport { FooterDesktop } from '../components/footer/Component.desktop';\nimport { Header, type HeaderProps } from '../components/header/Component';\nimport { SIZE_TO_CLASSNAME_MAP } from '../consts';\nimport { ResponsiveContext } from '../ResponsiveContext';\nimport { type TResponsiveModalContext } from '../typings';\n\nimport styles from './desktop.module.css';\nimport transitions from './transitions.desktop.module.css';\n\nexport type SidePanelDesktopProps = BaseModalProps &\n Pick<DrawerProps, 'placement' | 'nativeScrollbar' | 'contentTransitionProps'> & {\n /**\n * Ширина модального окна\n * @default \"s\"\n */\n size?: 's' | 500;\n\n /**\n * Управление наличием закрывающего крестика\n * @default false\n */\n hasCloser?: boolean;\n };\n\nconst SidePanelDesktopComponent = forwardRef<HTMLDivElement, SidePanelDesktopProps>(\n (\n {\n size = 500,\n children,\n className,\n wrapperClassName,\n contentTransitionProps = {},\n backdropProps,\n placement = 'right',\n dataTestId,\n ...restProps\n },\n ref,\n ) => {\n const responsiveContext = useContext(ResponsiveContext);\n const modalRef = useRef<HTMLElement>(null);\n\n const enterCn = cn({\n [transitions.appearRight]: placement === 'right',\n [transitions.appearLeft]: placement === 'left',\n });\n\n const exitCn = cn({\n [transitions.exitActiveRight]: placement === 'right',\n [transitions.exitActiveLeft]: placement === 'left',\n });\n\n const contextValue = React.useMemo<TResponsiveModalContext>(\n () => ({ size, view: 'desktop', dataTestId }),\n [size, dataTestId],\n );\n\n const renderContent = () => (\n <Drawer\n {...restProps}\n dataTestId={dataTestId}\n ref={mergeRefs([ref, modalRef])}\n placement={placement}\n wrapperClassName={wrapperClassName}\n className={cn(className, styles[SIZE_TO_CLASSNAME_MAP[size]], styles.hidden)}\n backdropProps={backdropProps}\n contentTransitionProps={{\n classNames: {\n appear: enterCn,\n enter: enterCn,\n appearActive: transitions.enterActive,\n enterActive: transitions.enterActive,\n exit: transitions.exit,\n exitActive: exitCn,\n exitDone: exitCn,\n },\n ...contentTransitionProps,\n }}\n >\n {React.Children.map(children, (child) =>\n isValidElement<{ size: unknown }>(child)\n ? cloneElement(child, { size })\n : child,\n )}\n </Drawer>\n );\n\n const renderWithContext = () => (\n <ResponsiveContext.Provider value={contextValue}>\n {renderContent()}\n </ResponsiveContext.Provider>\n );\n\n return responsiveContext ? renderContent() : renderWithContext();\n },\n);\n\nconst HeaderDesktop = Header as React.FC<Omit<HeaderProps, 'titleSize' | 'subtitle'>>;\nconst ControlsDesktop = Controls as React.FC<Omit<ControlsProps, 'mobileLayout'>>;\n\nconst SidePanelDesktop = Object.assign(SidePanelDesktopComponent, {\n Content: ContentDesktop,\n Header: HeaderDesktop,\n Footer: FooterDesktop,\n Controls: ControlsDesktop,\n});\n\nexport {\n SidePanelDesktop,\n SidePanelDesktopComponent as SidePanelComponentDesktop,\n ContentDesktop,\n HeaderDesktop,\n FooterDesktop,\n ControlsDesktop,\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;AAiCA,MAAM,yBAAyB,GAAG,UAAU,CACxC,CACI,EACI,IAAI,GAAG,GAAG,EACV,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,sBAAsB,GAAG,EAAE,EAC3B,aAAa,EACb,SAAS,GAAG,OAAO,EACnB,UAAU,EACV,GAAG,SAAS,EACf,EACD,GAAG,KACH;AACA,IAAA,MAAM,iBAAiB,GAAG,UAAU,CAAC,iBAAiB,CAAC;AACvD,IAAA,MAAM,QAAQ,GAAG,MAAM,CAAc,IAAI,CAAC;IAE1C,MAAM,OAAO,GAAG,EAAE,CAAC;AACf,QAAA,CAAC,WAAW,CAAC,WAAW,GAAG,SAAS,KAAK,OAAO;AAChD,QAAA,CAAC,WAAW,CAAC,UAAU,GAAG,SAAS,KAAK,MAAM;AACjD,KAAA,CAAC;IAEF,MAAM,MAAM,GAAG,EAAE,CAAC;AACd,QAAA,CAAC,WAAW,CAAC,eAAe,GAAG,SAAS,KAAK,OAAO;AACpD,QAAA,CAAC,WAAW,CAAC,cAAc,GAAG,SAAS,KAAK,MAAM;AACrD,KAAA,CAAC;IAEF,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAC9B,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,EAC7C,CAAC,IAAI,EAAE,UAAU,CAAC,CACrB;IAED,MAAM,aAAa,GAAG,OAClB,KAAA,CAAA,aAAA,CAAC,MAAM,EAAA,EAAA,GACC,SAAS,EACb,UAAU,EAAE,UAAU,EACtB,GAAG,EAAE,SAAS,CAAC,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,EAC/B,SAAS,EAAE,SAAS,EACpB,gBAAgB,EAAE,gBAAgB,EAClC,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,EAC5E,aAAa,EAAE,aAAa,EAC5B,sBAAsB,EAAE;AACpB,YAAA,UAAU,EAAE;AACR,gBAAA,MAAM,EAAE,OAAO;AACf,gBAAA,KAAK,EAAE,OAAO;gBACd,YAAY,EAAE,WAAW,CAAC,WAAW;gBACrC,WAAW,EAAE,WAAW,CAAC,WAAW;gBACpC,IAAI,EAAE,WAAW,CAAC,IAAI;AACtB,gBAAA,UAAU,EAAE,MAAM;AAClB,gBAAA,QAAQ,EAAE,MAAM;AACnB,aAAA;AACD,YAAA,GAAG,sBAAsB;AAC5B,SAAA,EAAA,EAEA,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,KAChC,cAAc,CAAoB,KAAK;UACjC,YAAY,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE;AAC9B,UAAE,KAAK,CACd,CACI,CACZ;AAED,IAAA,MAAM,iBAAiB,GAAG,OACtB,oBAAC,iBAAiB,CAAC,QAAQ,EAAC,EAAA,KAAK,EAAE,YAAY,EAAA,EAC1C,aAAa,EAAE,CACS,CAChC;IAED,OAAO,iBAAiB,GAAG,aAAa,EAAE,GAAG,iBAAiB,EAAE;AACpE,CAAC;AAGC,MAAA,aAAa,GAAG;AAChB,MAAA,eAAe,GAAG;AAExB,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,yBAAyB,EAAE;AAC9D,IAAA,OAAO,EAAE,cAAc;AACvB,IAAA,MAAM,EAAE,aAAa;AACrB,IAAA,MAAM,EAAE,aAAa;AACrB,IAAA,QAAQ,EAAE,eAAe;AAC5B,CAAA;;;;"}
@@ -1,9 +1,9 @@
1
1
  :root {
2
2
  --side-panel-s-width: 500px;
3
3
  }
4
- .side-panel__size-500_1a6tr.side-panel__size-500_1a6tr {
4
+ .side-panel__size-500_1tea1.side-panel__size-500_1tea1 {
5
5
  width: var(--side-panel-s-width);
6
6
  }
7
- .side-panel__hidden_1a6tr {
7
+ .side-panel__hidden_1tea1 {
8
8
  overflow-x: hidden;
9
9
  }
@@ -1,6 +1,6 @@
1
1
  import './desktop.css';
2
2
 
3
- const styles = {"size-500":"side-panel__size-500_1a6tr","hidden":"side-panel__hidden_1a6tr"};
3
+ const styles = {"size-500":"side-panel__size-500_1tea1","hidden":"side-panel__hidden_1tea1"};
4
4
 
5
5
  export { styles as default };
6
6
  //# sourceMappingURL=desktop.module.css.js.map
@@ -1,14 +1,14 @@
1
- .side-panel__enterRight_1h7vs {
1
+ .side-panel__enterRight_w8pr1 {
2
2
  opacity: 0;
3
3
  transform: translateX(15px);
4
4
  }
5
5
 
6
- .side-panel__enterLeft_1h7vs {
6
+ .side-panel__enterLeft_w8pr1 {
7
7
  opacity: 0;
8
8
  transform: translateX(-15px);
9
9
  }
10
10
 
11
- .side-panel__enterActive_1h7vs {
11
+ .side-panel__enterActive_w8pr1 {
12
12
  opacity: 1;
13
13
  transform: translateX(0);
14
14
  transition:
@@ -16,12 +16,12 @@
16
16
  transform 200ms ease-in;
17
17
  }
18
18
 
19
- .side-panel__exit_1h7vs {
19
+ .side-panel__exit_w8pr1 {
20
20
  opacity: 1;
21
21
  transform: translateX(0);
22
22
  }
23
23
 
24
- .side-panel__exitActiveRight_1h7vs {
24
+ .side-panel__exitActiveRight_w8pr1 {
25
25
  opacity: 0;
26
26
  transition:
27
27
  opacity 200ms ease-out,
@@ -29,7 +29,7 @@
29
29
  transform: translateX(15px);
30
30
  }
31
31
 
32
- .side-panel__exitActiveLeft_1h7vs {
32
+ .side-panel__exitActiveLeft_w8pr1 {
33
33
  opacity: 0;
34
34
  transition:
35
35
  opacity 200ms ease-out,
@@ -1,6 +1,6 @@
1
1
  import './transitions.desktop.css';
2
2
 
3
- const transitions = {"enterActive":"side-panel__enterActive_1h7vs","exit":"side-panel__exit_1h7vs","exitActiveRight":"side-panel__exitActiveRight_1h7vs","exitActiveLeft":"side-panel__exitActiveLeft_1h7vs"};
3
+ const transitions = {"enterActive":"side-panel__enterActive_w8pr1","exit":"side-panel__exit_w8pr1","exitActiveRight":"side-panel__exitActiveRight_w8pr1","exitActiveLeft":"side-panel__exitActiveLeft_w8pr1"};
4
4
 
5
5
  export { transitions as default };
6
6
  //# sourceMappingURL=transitions.desktop.module.css.js.map
@@ -4,7 +4,7 @@ import { ContentMobile } from '../components/content/Component.mobile';
4
4
  import { type ControlsProps } from '../components/controls';
5
5
  import { FooterMobile } from '../components/footer/Component.mobile';
6
6
  import { Header } from '../components/header/Component';
7
- export declare type SidePanelMobileProps = BaseModalProps & {
7
+ export type SidePanelMobileProps = BaseModalProps & {
8
8
  /**
9
9
  * Управление наличием закрывающего крестика
10
10
  * @default false
@@ -16,7 +16,7 @@ declare const SidePanelMobileComponent: React.ForwardRefExoticComponent<BaseModa
16
16
  * Управление наличием закрывающего крестика
17
17
  * @default false
18
18
  */
19
- hasCloser?: boolean | undefined;
19
+ hasCloser?: boolean;
20
20
  } & React.RefAttributes<HTMLDivElement>>;
21
21
  declare const ControlsMobile: React.FC<Omit<ControlsProps, "mobileLayout">>;
22
22
  declare const SidePanelMobile: React.ForwardRefExoticComponent<BaseModalProps & {
@@ -24,7 +24,7 @@ declare const SidePanelMobile: React.ForwardRefExoticComponent<BaseModalProps &
24
24
  * Управление наличием закрывающего крестика
25
25
  * @default false
26
26
  */
27
- hasCloser?: boolean | undefined;
27
+ hasCloser?: boolean;
28
28
  } & React.RefAttributes<HTMLDivElement>> & {
29
29
  Content: React.FC<import("../components/content/Component").ContentProps>;
30
30
  Header: React.FC<import("../components/header/Component").HeaderProps>;
@@ -5,7 +5,7 @@
5
5
  :root {
6
6
  --gap-0: 0px;
7
7
  }
8
- .side-panel__component_ze3ks {
8
+ .side-panel__component_wlnew {
9
9
  top: var(--gap-0);
10
10
  height: 100%;
11
11
  width: 100%;
@@ -13,17 +13,17 @@
13
13
  overflow-y: auto;
14
14
  max-width: 600px;
15
15
  }
16
- .side-panel__component_ze3ks.side-panel__component_ze3ks {
16
+ .side-panel__component_wlnew.side-panel__component_wlnew {
17
17
  position: fixed;
18
18
  flex: 1;
19
19
  }
20
20
  @media (display-mode: standalone) {
21
- .side-panel__content_ze3ks {
21
+ .side-panel__content_wlnew {
22
22
  padding-top: var(--sat);
23
23
  padding-bottom: var(--sab);
24
24
  }
25
25
  }
26
- .side-panel__mobileContent_ze3ks {
26
+ .side-panel__mobileContent_wlnew {
27
27
  display: flex;
28
28
  flex-direction: column;
29
29
  width: 100%;
@@ -1,6 +1,6 @@
1
1
  import './mobile.css';
2
2
 
3
- const styles = {"component":"side-panel__component_ze3ks","content":"side-panel__content_ze3ks","mobileContent":"side-panel__mobileContent_ze3ks"};
3
+ const styles = {"component":"side-panel__component_wlnew","content":"side-panel__content_wlnew","mobileContent":"side-panel__mobileContent_wlnew"};
4
4
 
5
5
  export { styles as default };
6
6
  //# sourceMappingURL=mobile.module.css.js.map
@@ -1,11 +1,11 @@
1
- .side-panel__appear_9ls7f,
2
- .side-panel__enter_9ls7f {
1
+ .side-panel__appear_1m6ft,
2
+ .side-panel__enter_1m6ft {
3
3
  opacity: 0;
4
4
  transform: translateY(15px);
5
5
  }
6
6
 
7
- .side-panel__appearActive_9ls7f,
8
- .side-panel__enterActive_9ls7f {
7
+ .side-panel__appearActive_1m6ft,
8
+ .side-panel__enterActive_1m6ft {
9
9
  opacity: 1;
10
10
  transform: translateY(0);
11
11
  transition:
@@ -13,13 +13,13 @@
13
13
  transform 200ms ease-in;
14
14
  }
15
15
 
16
- .side-panel__exit_9ls7f {
16
+ .side-panel__exit_1m6ft {
17
17
  opacity: 1;
18
18
  transform: translateY(0);
19
19
  }
20
20
 
21
- .side-panel__exitActive_9ls7f,
22
- .side-panel__exitDone_9ls7f {
21
+ .side-panel__exitActive_1m6ft,
22
+ .side-panel__exitDone_1m6ft {
23
23
  opacity: 0;
24
24
  transform: translateY(15px);
25
25
  transition:
@@ -1,6 +1,6 @@
1
1
  import './transitions.mobile.css';
2
2
 
3
- const transitions = {"appear":"side-panel__appear_9ls7f","enter":"side-panel__enter_9ls7f","appearActive":"side-panel__appearActive_9ls7f","enterActive":"side-panel__enterActive_9ls7f","exit":"side-panel__exit_9ls7f","exitActive":"side-panel__exitActive_9ls7f","exitDone":"side-panel__exitDone_9ls7f"};
3
+ const transitions = {"appear":"side-panel__appear_1m6ft","enter":"side-panel__enter_1m6ft","appearActive":"side-panel__appearActive_1m6ft","enterActive":"side-panel__enterActive_1m6ft","exit":"side-panel__exit_1m6ft","exitActive":"side-panel__exitActive_1m6ft","exitDone":"side-panel__exitDone_1m6ft"};
4
4
 
5
5
  export { transitions as default };
6
6
  //# sourceMappingURL=transitions.mobile.module.css.js.map
@@ -1,5 +1,5 @@
1
- export declare type View = 'desktop' | 'mobile';
2
- export declare type TResponsiveModalContext = {
1
+ export type View = 'desktop' | 'mobile';
2
+ export type TResponsiveModalContext = {
3
3
  view: View;
4
4
  size: 's' | 500;
5
5
  dataTestId?: string;
@@ -3,7 +3,7 @@ import { type BaseModalProps } from '@alfalab/core-components-base-modal/modernc
3
3
  import { type DrawerProps } from '@alfalab/core-components-drawer/moderncssm';
4
4
  import { Controls } from './components/controls';
5
5
  import { Header } from './components/header/Component';
6
- export declare type SidePanelResponsiveProps = BaseModalProps & Pick<DrawerProps, 'contentTransitionProps' | 'placement' | 'nativeScrollbar'> & {
6
+ export type SidePanelResponsiveProps = BaseModalProps & Pick<DrawerProps, 'contentTransitionProps' | 'placement' | 'nativeScrollbar'> & {
7
7
  /**
8
8
  * Ширина модального окна
9
9
  * @default "s"
@@ -34,26 +34,26 @@ declare const SidePanelResponsiveComponent: React.ForwardRefExoticComponent<Base
34
34
  * Ширина модального окна
35
35
  * @default "s"
36
36
  */
37
- size?: "s" | 500 | undefined;
37
+ size?: "s" | 500;
38
38
  /**
39
39
  * Управление наличием закрывающего крестика
40
40
  * @default false
41
41
  */
42
- hasCloser?: boolean | undefined;
42
+ hasCloser?: boolean;
43
43
  /**
44
44
  * Контрольная точка, с нее начинается desktop версия
45
45
  * @default 1024
46
46
  */
47
- breakpoint?: number | undefined;
47
+ breakpoint?: number;
48
48
  /**
49
49
  * Версия, которая будет использоваться при серверном рендеринге
50
50
  */
51
- client?: "desktop" | "mobile" | undefined;
51
+ client?: "desktop" | "mobile";
52
52
  /**
53
53
  * Значение по-умолчанию для хука useMatchMedia
54
54
  * @deprecated Используйте client
55
55
  */
56
- defaultMatchMediaValue?: boolean | (() => boolean) | undefined;
56
+ defaultMatchMediaValue?: boolean | (() => boolean);
57
57
  } & React.RefAttributes<HTMLDivElement>>;
58
58
  declare const ContentResponsive: React.FC<import("./components/content/Component").ContentProps> | React.FC<import("./components/content/Component.desktop").ContentDesktopProps>;
59
59
  declare const FooterResponsive: React.FC<import("./components/footer/Component").FooterProps> | React.FC<import("./components/footer/Component.desktop").FooterDesktopProps>;
@@ -63,26 +63,26 @@ declare const SidePanelResponsive: React.ForwardRefExoticComponent<BaseModalProp
63
63
  * Ширина модального окна
64
64
  * @default "s"
65
65
  */
66
- size?: "s" | 500 | undefined;
66
+ size?: "s" | 500;
67
67
  /**
68
68
  * Управление наличием закрывающего крестика
69
69
  * @default false
70
70
  */
71
- hasCloser?: boolean | undefined;
71
+ hasCloser?: boolean;
72
72
  /**
73
73
  * Контрольная точка, с нее начинается desktop версия
74
74
  * @default 1024
75
75
  */
76
- breakpoint?: number | undefined;
76
+ breakpoint?: number;
77
77
  /**
78
78
  * Версия, которая будет использоваться при серверном рендеринге
79
79
  */
80
- client?: "desktop" | "mobile" | undefined;
80
+ client?: "desktop" | "mobile";
81
81
  /**
82
82
  * Значение по-умолчанию для хука useMatchMedia
83
83
  * @deprecated Используйте client
84
84
  */
85
- defaultMatchMediaValue?: boolean | (() => boolean) | undefined;
85
+ defaultMatchMediaValue?: boolean | (() => boolean);
86
86
  } & React.RefAttributes<HTMLDivElement>> & {
87
87
  Header: React.FC<import("./components/header/Component").HeaderProps>;
88
88
  Controls: React.FC<import("./components/controls").ControlsProps>;
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  import { BaseModalContext } from '@alfalab/core-components-base-modal/moderncssm';
3
2
  export declare const ModalContext: import("react").Context<BaseModalContext>;
@@ -1,5 +1,5 @@
1
1
  import { type FC, type ReactNode } from 'react';
2
- export declare type ContentProps = {
2
+ export type ContentProps = {
3
3
  /**
4
4
  * Контент
5
5
  */
@@ -1,6 +1,6 @@
1
1
  import { type FC } from 'react';
2
2
  import { type ContentProps } from './Component';
3
- export declare type ContentDesktopProps = ContentProps & {
3
+ export type ContentDesktopProps = ContentProps & {
4
4
  /**
5
5
  * Размер (только для desktop версии компонента)
6
6
  */
@@ -1,4 +1,4 @@
1
1
  import { type FC } from 'react';
2
2
  import { type ContentProps } from './Component';
3
- export declare type ContentMobileProps = ContentProps;
3
+ export type ContentMobileProps = ContentProps;
4
4
  export declare const ContentMobile: FC<ContentMobileProps>;
@@ -1,5 +1,5 @@
1
1
  import { type FC, type ReactNode } from 'react';
2
- export declare type FooterProps = {
2
+ export type FooterProps = {
3
3
  /**
4
4
  * Контент футера
5
5
  */
@@ -1,6 +1,6 @@
1
1
  import { type FC } from 'react';
2
2
  import { type FooterProps } from './Component';
3
- export declare type FooterDesktopProps = FooterProps & {
3
+ export type FooterDesktopProps = FooterProps & {
4
4
  /**
5
5
  * Размер (только для desktop версии компонента)
6
6
  */
@@ -1,4 +1,4 @@
1
1
  import { type FC } from 'react';
2
2
  import { type FooterProps } from './Component';
3
- export declare type FooterMobileProps = FooterProps;
3
+ export type FooterMobileProps = FooterProps;
4
4
  export declare const FooterMobile: FC<FooterMobileProps>;
@@ -1,4 +1,4 @@
1
1
  import { type FC } from 'react';
2
2
  import { type NavigationBarPrivateProps } from '@alfalab/core-components-navigation-bar-private/moderncssm';
3
- export declare type HeaderProps = Omit<NavigationBarPrivateProps, 'size' | 'view' | 'parentRef'>;
3
+ export type HeaderProps = Omit<NavigationBarPrivateProps, 'size' | 'view' | 'parentRef'>;
4
4
  export declare const Header: FC<HeaderProps>;
@@ -10,7 +10,8 @@
10
10
  font-size: 30px;
11
11
  line-height: 36px;
12
12
  font-weight: 700;
13
- font-family: var(--font-family-system);
13
+ letter-spacing: 0.1px;
14
+ font-family: var(--font-family-alfasans);
14
15
  }
15
16
 
16
17
  .size-500 {
@@ -25,7 +25,9 @@
25
25
 
26
26
  line-height: 28px;
27
27
 
28
- font-weight: 600;
28
+ font-weight: 500;
29
29
 
30
- font-family: var(--font-family-system);
30
+ letter-spacing: -0.15px;
31
+
32
+ font-family: var(--font-family-alfasans);
31
33
  }
@@ -5,7 +5,7 @@ import { ContentDesktop } from '../components/content/Component.desktop';
5
5
  import { type ControlsProps } from '../components/controls';
6
6
  import { FooterDesktop } from '../components/footer/Component.desktop';
7
7
  import { type HeaderProps } from '../components/header/Component';
8
- export declare type SidePanelDesktopProps = BaseModalProps & Pick<DrawerProps, 'placement' | 'nativeScrollbar' | 'contentTransitionProps'> & {
8
+ export type SidePanelDesktopProps = BaseModalProps & Pick<DrawerProps, 'placement' | 'nativeScrollbar' | 'contentTransitionProps'> & {
9
9
  /**
10
10
  * Ширина модального окна
11
11
  * @default "s"
@@ -22,26 +22,26 @@ declare const SidePanelDesktopComponent: React.ForwardRefExoticComponent<BaseMod
22
22
  * Ширина модального окна
23
23
  * @default "s"
24
24
  */
25
- size?: "s" | 500 | undefined;
25
+ size?: "s" | 500;
26
26
  /**
27
27
  * Управление наличием закрывающего крестика
28
28
  * @default false
29
29
  */
30
- hasCloser?: boolean | undefined;
30
+ hasCloser?: boolean;
31
31
  } & React.RefAttributes<HTMLDivElement>>;
32
- declare const HeaderDesktop: React.FC<Omit<HeaderProps, "subtitle" | "titleSize">>;
32
+ declare const HeaderDesktop: React.FC<Omit<HeaderProps, "titleSize" | "subtitle">>;
33
33
  declare const ControlsDesktop: React.FC<Omit<ControlsProps, "mobileLayout">>;
34
34
  declare const SidePanelDesktop: React.ForwardRefExoticComponent<BaseModalProps & Pick<DrawerProps, "placement" | "nativeScrollbar" | "contentTransitionProps"> & {
35
35
  /**
36
36
  * Ширина модального окна
37
37
  * @default "s"
38
38
  */
39
- size?: "s" | 500 | undefined;
39
+ size?: "s" | 500;
40
40
  /**
41
41
  * Управление наличием закрывающего крестика
42
42
  * @default false
43
43
  */
44
- hasCloser?: boolean | undefined;
44
+ hasCloser?: boolean;
45
45
  } & React.RefAttributes<HTMLDivElement>> & {
46
46
  Content: React.FC<import("../components/content/Component.desktop").ContentDesktopProps>;
47
47
  Header: React.FC<Omit<HeaderProps, "subtitle" | "titleSize">>;
@@ -34,7 +34,9 @@ const SidePanelDesktopComponent = forwardRef(({ size = 500, children, className,
34
34
  exitDone: exitCn,
35
35
  },
36
36
  ...contentTransitionProps,
37
- } }, React.Children.map(children, (child) => isValidElement(child) ? cloneElement(child, { size }) : child)));
37
+ } }, React.Children.map(children, (child) => isValidElement(child)
38
+ ? cloneElement(child, { size })
39
+ : child)));
38
40
  const renderWithContext = () => (React.createElement(ResponsiveContext.Provider, { value: contextValue }, renderContent()));
39
41
  return responsiveContext ? renderContent() : renderWithContext();
40
42
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Component.desktop.js","sources":["../../src/desktop/Component.desktop.tsx"],"sourcesContent":["import React, { cloneElement, forwardRef, isValidElement, useContext, useRef } from 'react';\nimport mergeRefs from 'react-merge-refs';\nimport cn from 'classnames';\n\nimport { type BaseModalProps } from '@alfalab/core-components-base-modal';\nimport { Drawer, type DrawerProps } from '@alfalab/core-components-drawer';\n\nimport { ContentDesktop } from '../components/content/Component.desktop';\nimport { Controls, type ControlsProps } from '../components/controls';\nimport { FooterDesktop } from '../components/footer/Component.desktop';\nimport { Header, type HeaderProps } from '../components/header/Component';\nimport { SIZE_TO_CLASSNAME_MAP } from '../consts';\nimport { ResponsiveContext } from '../ResponsiveContext';\nimport { type TResponsiveModalContext } from '../typings';\n\nimport styles from './desktop.module.css';\nimport transitions from './transitions.desktop.module.css';\n\nexport type SidePanelDesktopProps = BaseModalProps &\n Pick<DrawerProps, 'placement' | 'nativeScrollbar' | 'contentTransitionProps'> & {\n /**\n * Ширина модального окна\n * @default \"s\"\n */\n size?: 's' | 500;\n\n /**\n * Управление наличием закрывающего крестика\n * @default false\n */\n hasCloser?: boolean;\n };\n\nconst SidePanelDesktopComponent = forwardRef<HTMLDivElement, SidePanelDesktopProps>(\n (\n {\n size = 500,\n children,\n className,\n wrapperClassName,\n contentTransitionProps = {},\n backdropProps,\n placement = 'right',\n dataTestId,\n ...restProps\n },\n ref,\n ) => {\n const responsiveContext = useContext(ResponsiveContext);\n const modalRef = useRef<HTMLElement>(null);\n\n const enterCn = cn({\n [transitions.appearRight]: placement === 'right',\n [transitions.appearLeft]: placement === 'left',\n });\n\n const exitCn = cn({\n [transitions.exitActiveRight]: placement === 'right',\n [transitions.exitActiveLeft]: placement === 'left',\n });\n\n const contextValue = React.useMemo<TResponsiveModalContext>(\n () => ({ size, view: 'desktop', dataTestId }),\n [size, dataTestId],\n );\n\n const renderContent = () => (\n <Drawer\n {...restProps}\n dataTestId={dataTestId}\n ref={mergeRefs([ref, modalRef])}\n placement={placement}\n wrapperClassName={wrapperClassName}\n className={cn(className, styles[SIZE_TO_CLASSNAME_MAP[size]], styles.hidden)}\n backdropProps={backdropProps}\n contentTransitionProps={{\n classNames: {\n appear: enterCn,\n enter: enterCn,\n appearActive: transitions.enterActive,\n enterActive: transitions.enterActive,\n exit: transitions.exit,\n exitActive: exitCn,\n exitDone: exitCn,\n },\n ...contentTransitionProps,\n }}\n >\n {React.Children.map(children, (child) =>\n isValidElement(child) ? cloneElement(child, { size }) : child,\n )}\n </Drawer>\n );\n\n const renderWithContext = () => (\n <ResponsiveContext.Provider value={contextValue}>\n {renderContent()}\n </ResponsiveContext.Provider>\n );\n\n return responsiveContext ? renderContent() : renderWithContext();\n },\n);\n\nconst HeaderDesktop = Header as React.FC<Omit<HeaderProps, 'titleSize' | 'subtitle'>>;\nconst ControlsDesktop = Controls as React.FC<Omit<ControlsProps, 'mobileLayout'>>;\n\nconst SidePanelDesktop = Object.assign(SidePanelDesktopComponent, {\n Content: ContentDesktop,\n Header: HeaderDesktop,\n Footer: FooterDesktop,\n Controls: ControlsDesktop,\n});\n\nexport {\n SidePanelDesktop,\n SidePanelDesktopComponent as SidePanelComponentDesktop,\n ContentDesktop,\n HeaderDesktop,\n FooterDesktop,\n ControlsDesktop,\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;AAiCA,MAAM,yBAAyB,GAAG,UAAU,CACxC,CACI,EACI,IAAI,GAAG,GAAG,EACV,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,sBAAsB,GAAG,EAAE,EAC3B,aAAa,EACb,SAAS,GAAG,OAAO,EACnB,UAAU,EACV,GAAG,SAAS,EACf,EACD,GAAG,KACH;AACA,IAAA,MAAM,iBAAiB,GAAG,UAAU,CAAC,iBAAiB,CAAC;AACvD,IAAA,MAAM,QAAQ,GAAG,MAAM,CAAc,IAAI,CAAC;IAE1C,MAAM,OAAO,GAAG,EAAE,CAAC;AACf,QAAA,CAAC,WAAW,CAAC,WAAW,GAAG,SAAS,KAAK,OAAO;AAChD,QAAA,CAAC,WAAW,CAAC,UAAU,GAAG,SAAS,KAAK,MAAM;AACjD,KAAA,CAAC;IAEF,MAAM,MAAM,GAAG,EAAE,CAAC;AACd,QAAA,CAAC,WAAW,CAAC,eAAe,GAAG,SAAS,KAAK,OAAO;AACpD,QAAA,CAAC,WAAW,CAAC,cAAc,GAAG,SAAS,KAAK,MAAM;AACrD,KAAA,CAAC;IAEF,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAC9B,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,EAC7C,CAAC,IAAI,EAAE,UAAU,CAAC,CACrB;IAED,MAAM,aAAa,GAAG,OAClB,KAAA,CAAA,aAAA,CAAC,MAAM,EAAA,EAAA,GACC,SAAS,EACb,UAAU,EAAE,UAAU,EACtB,GAAG,EAAE,SAAS,CAAC,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,EAC/B,SAAS,EAAE,SAAS,EACpB,gBAAgB,EAAE,gBAAgB,EAClC,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,EAC5E,aAAa,EAAE,aAAa,EAC5B,sBAAsB,EAAE;AACpB,YAAA,UAAU,EAAE;AACR,gBAAA,MAAM,EAAE,OAAO;AACf,gBAAA,KAAK,EAAE,OAAO;gBACd,YAAY,EAAE,WAAW,CAAC,WAAW;gBACrC,WAAW,EAAE,WAAW,CAAC,WAAW;gBACpC,IAAI,EAAE,WAAW,CAAC,IAAI;AACtB,gBAAA,UAAU,EAAE,MAAM;AAClB,gBAAA,QAAQ,EAAE,MAAM;AACnB,aAAA;AACD,YAAA,GAAG,sBAAsB;AAC5B,SAAA,EAAA,EAEA,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,KAChC,cAAc,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,KAAK,CAChE,CACI,CACZ;AAED,IAAA,MAAM,iBAAiB,GAAG,OACtB,oBAAC,iBAAiB,CAAC,QAAQ,EAAC,EAAA,KAAK,EAAE,YAAY,EAAA,EAC1C,aAAa,EAAE,CACS,CAChC;IAED,OAAO,iBAAiB,GAAG,aAAa,EAAE,GAAG,iBAAiB,EAAE;AACpE,CAAC;AAGC,MAAA,aAAa,GAAG;AAChB,MAAA,eAAe,GAAG;AAExB,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,yBAAyB,EAAE;AAC9D,IAAA,OAAO,EAAE,cAAc;AACvB,IAAA,MAAM,EAAE,aAAa;AACrB,IAAA,MAAM,EAAE,aAAa;AACrB,IAAA,QAAQ,EAAE,eAAe;AAC5B,CAAA;;;;"}
1
+ {"version":3,"file":"Component.desktop.js","sources":["../../src/desktop/Component.desktop.tsx"],"sourcesContent":["import React, { cloneElement, forwardRef, isValidElement, useContext, useRef } from 'react';\nimport mergeRefs from 'react-merge-refs';\nimport cn from 'classnames';\n\nimport { type BaseModalProps } from '@alfalab/core-components-base-modal';\nimport { Drawer, type DrawerProps } from '@alfalab/core-components-drawer';\n\nimport { ContentDesktop } from '../components/content/Component.desktop';\nimport { Controls, type ControlsProps } from '../components/controls';\nimport { FooterDesktop } from '../components/footer/Component.desktop';\nimport { Header, type HeaderProps } from '../components/header/Component';\nimport { SIZE_TO_CLASSNAME_MAP } from '../consts';\nimport { ResponsiveContext } from '../ResponsiveContext';\nimport { type TResponsiveModalContext } from '../typings';\n\nimport styles from './desktop.module.css';\nimport transitions from './transitions.desktop.module.css';\n\nexport type SidePanelDesktopProps = BaseModalProps &\n Pick<DrawerProps, 'placement' | 'nativeScrollbar' | 'contentTransitionProps'> & {\n /**\n * Ширина модального окна\n * @default \"s\"\n */\n size?: 's' | 500;\n\n /**\n * Управление наличием закрывающего крестика\n * @default false\n */\n hasCloser?: boolean;\n };\n\nconst SidePanelDesktopComponent = forwardRef<HTMLDivElement, SidePanelDesktopProps>(\n (\n {\n size = 500,\n children,\n className,\n wrapperClassName,\n contentTransitionProps = {},\n backdropProps,\n placement = 'right',\n dataTestId,\n ...restProps\n },\n ref,\n ) => {\n const responsiveContext = useContext(ResponsiveContext);\n const modalRef = useRef<HTMLElement>(null);\n\n const enterCn = cn({\n [transitions.appearRight]: placement === 'right',\n [transitions.appearLeft]: placement === 'left',\n });\n\n const exitCn = cn({\n [transitions.exitActiveRight]: placement === 'right',\n [transitions.exitActiveLeft]: placement === 'left',\n });\n\n const contextValue = React.useMemo<TResponsiveModalContext>(\n () => ({ size, view: 'desktop', dataTestId }),\n [size, dataTestId],\n );\n\n const renderContent = () => (\n <Drawer\n {...restProps}\n dataTestId={dataTestId}\n ref={mergeRefs([ref, modalRef])}\n placement={placement}\n wrapperClassName={wrapperClassName}\n className={cn(className, styles[SIZE_TO_CLASSNAME_MAP[size]], styles.hidden)}\n backdropProps={backdropProps}\n contentTransitionProps={{\n classNames: {\n appear: enterCn,\n enter: enterCn,\n appearActive: transitions.enterActive,\n enterActive: transitions.enterActive,\n exit: transitions.exit,\n exitActive: exitCn,\n exitDone: exitCn,\n },\n ...contentTransitionProps,\n }}\n >\n {React.Children.map(children, (child) =>\n isValidElement<{ size: unknown }>(child)\n ? cloneElement(child, { size })\n : child,\n )}\n </Drawer>\n );\n\n const renderWithContext = () => (\n <ResponsiveContext.Provider value={contextValue}>\n {renderContent()}\n </ResponsiveContext.Provider>\n );\n\n return responsiveContext ? renderContent() : renderWithContext();\n },\n);\n\nconst HeaderDesktop = Header as React.FC<Omit<HeaderProps, 'titleSize' | 'subtitle'>>;\nconst ControlsDesktop = Controls as React.FC<Omit<ControlsProps, 'mobileLayout'>>;\n\nconst SidePanelDesktop = Object.assign(SidePanelDesktopComponent, {\n Content: ContentDesktop,\n Header: HeaderDesktop,\n Footer: FooterDesktop,\n Controls: ControlsDesktop,\n});\n\nexport {\n SidePanelDesktop,\n SidePanelDesktopComponent as SidePanelComponentDesktop,\n ContentDesktop,\n HeaderDesktop,\n FooterDesktop,\n ControlsDesktop,\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;AAiCA,MAAM,yBAAyB,GAAG,UAAU,CACxC,CACI,EACI,IAAI,GAAG,GAAG,EACV,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,sBAAsB,GAAG,EAAE,EAC3B,aAAa,EACb,SAAS,GAAG,OAAO,EACnB,UAAU,EACV,GAAG,SAAS,EACf,EACD,GAAG,KACH;AACA,IAAA,MAAM,iBAAiB,GAAG,UAAU,CAAC,iBAAiB,CAAC;AACvD,IAAA,MAAM,QAAQ,GAAG,MAAM,CAAc,IAAI,CAAC;IAE1C,MAAM,OAAO,GAAG,EAAE,CAAC;AACf,QAAA,CAAC,WAAW,CAAC,WAAW,GAAG,SAAS,KAAK,OAAO;AAChD,QAAA,CAAC,WAAW,CAAC,UAAU,GAAG,SAAS,KAAK,MAAM;AACjD,KAAA,CAAC;IAEF,MAAM,MAAM,GAAG,EAAE,CAAC;AACd,QAAA,CAAC,WAAW,CAAC,eAAe,GAAG,SAAS,KAAK,OAAO;AACpD,QAAA,CAAC,WAAW,CAAC,cAAc,GAAG,SAAS,KAAK,MAAM;AACrD,KAAA,CAAC;IAEF,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAC9B,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,EAC7C,CAAC,IAAI,EAAE,UAAU,CAAC,CACrB;IAED,MAAM,aAAa,GAAG,OAClB,KAAA,CAAA,aAAA,CAAC,MAAM,EAAA,EAAA,GACC,SAAS,EACb,UAAU,EAAE,UAAU,EACtB,GAAG,EAAE,SAAS,CAAC,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,EAC/B,SAAS,EAAE,SAAS,EACpB,gBAAgB,EAAE,gBAAgB,EAClC,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,EAC5E,aAAa,EAAE,aAAa,EAC5B,sBAAsB,EAAE;AACpB,YAAA,UAAU,EAAE;AACR,gBAAA,MAAM,EAAE,OAAO;AACf,gBAAA,KAAK,EAAE,OAAO;gBACd,YAAY,EAAE,WAAW,CAAC,WAAW;gBACrC,WAAW,EAAE,WAAW,CAAC,WAAW;gBACpC,IAAI,EAAE,WAAW,CAAC,IAAI;AACtB,gBAAA,UAAU,EAAE,MAAM;AAClB,gBAAA,QAAQ,EAAE,MAAM;AACnB,aAAA;AACD,YAAA,GAAG,sBAAsB;AAC5B,SAAA,EAAA,EAEA,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,KAChC,cAAc,CAAoB,KAAK;UACjC,YAAY,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE;AAC9B,UAAE,KAAK,CACd,CACI,CACZ;AAED,IAAA,MAAM,iBAAiB,GAAG,OACtB,oBAAC,iBAAiB,CAAC,QAAQ,EAAC,EAAA,KAAK,EAAE,YAAY,EAAA,EAC1C,aAAa,EAAE,CACS,CAChC;IAED,OAAO,iBAAiB,GAAG,aAAa,EAAE,GAAG,iBAAiB,EAAE;AACpE,CAAC;AAGC,MAAA,aAAa,GAAG;AAChB,MAAA,eAAe,GAAG;AAExB,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,yBAAyB,EAAE;AAC9D,IAAA,OAAO,EAAE,cAAc;AACvB,IAAA,MAAM,EAAE,aAAa;AACrB,IAAA,MAAM,EAAE,aAAa;AACrB,IAAA,QAAQ,EAAE,eAAe;AAC5B,CAAA;;;;"}
@@ -4,7 +4,7 @@ import { ContentMobile } from '../components/content/Component.mobile';
4
4
  import { type ControlsProps } from '../components/controls';
5
5
  import { FooterMobile } from '../components/footer/Component.mobile';
6
6
  import { Header } from '../components/header/Component';
7
- export declare type SidePanelMobileProps = BaseModalProps & {
7
+ export type SidePanelMobileProps = BaseModalProps & {
8
8
  /**
9
9
  * Управление наличием закрывающего крестика
10
10
  * @default false
@@ -16,7 +16,7 @@ declare const SidePanelMobileComponent: React.ForwardRefExoticComponent<BaseModa
16
16
  * Управление наличием закрывающего крестика
17
17
  * @default false
18
18
  */
19
- hasCloser?: boolean | undefined;
19
+ hasCloser?: boolean;
20
20
  } & React.RefAttributes<HTMLDivElement>>;
21
21
  declare const ControlsMobile: React.FC<Omit<ControlsProps, "mobileLayout">>;
22
22
  declare const SidePanelMobile: React.ForwardRefExoticComponent<BaseModalProps & {
@@ -24,7 +24,7 @@ declare const SidePanelMobile: React.ForwardRefExoticComponent<BaseModalProps &
24
24
  * Управление наличием закрывающего крестика
25
25
  * @default false
26
26
  */
27
- hasCloser?: boolean | undefined;
27
+ hasCloser?: boolean;
28
28
  } & React.RefAttributes<HTMLDivElement>> & {
29
29
  Content: React.FC<import("../components/content/Component").ContentProps>;
30
30
  Header: React.FC<import("../components/header/Component").HeaderProps>;
@@ -1,5 +1,5 @@
1
- export declare type View = 'desktop' | 'mobile';
2
- export declare type TResponsiveModalContext = {
1
+ export type View = 'desktop' | 'mobile';
2
+ export type TResponsiveModalContext = {
3
3
  view: View;
4
4
  size: 's' | 500;
5
5
  dataTestId?: string;