@alfalab/core-components-side-panel 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (214) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist/Component.desktop.d.ts +35 -0
  3. package/dist/Component.desktop.js +47 -0
  4. package/dist/Component.mobile.d.ts +22 -0
  5. package/dist/Component.mobile.js +42 -0
  6. package/dist/Component.responsive.d.ts +20 -0
  7. package/dist/Component.responsive.js +62 -0
  8. package/dist/Context.d.ts +4 -0
  9. package/dist/Context.js +9 -0
  10. package/dist/components/closer/Component.d.ts +29 -0
  11. package/dist/components/closer/Component.js +37 -0
  12. package/dist/components/closer/index.css +46 -0
  13. package/dist/components/content/Component.d.ts +13 -0
  14. package/dist/components/content/Component.desktop.d.ts +11 -0
  15. package/dist/components/content/Component.desktop.js +25 -0
  16. package/dist/components/content/Component.js +24 -0
  17. package/dist/components/content/Component.mobile.d.ts +5 -0
  18. package/dist/components/content/Component.mobile.js +25 -0
  19. package/dist/components/content/desktop.css +31 -0
  20. package/dist/components/content/index.css +28 -0
  21. package/dist/components/content/mobile.css +30 -0
  22. package/dist/components/footer/Component.d.ts +25 -0
  23. package/dist/components/footer/Component.desktop.d.ts +11 -0
  24. package/dist/components/footer/Component.desktop.js +28 -0
  25. package/dist/components/footer/Component.js +34 -0
  26. package/dist/components/footer/Component.mobile.d.ts +5 -0
  27. package/dist/components/footer/Component.mobile.js +28 -0
  28. package/dist/components/footer/desktop.css +32 -0
  29. package/dist/components/footer/index.css +41 -0
  30. package/dist/components/footer/layout.css +84 -0
  31. package/dist/components/footer/mobile.css +30 -0
  32. package/dist/components/header/Component.d.ts +45 -0
  33. package/dist/components/header/Component.desktop.d.ts +15 -0
  34. package/dist/components/header/Component.desktop.js +33 -0
  35. package/dist/components/header/Component.js +40 -0
  36. package/dist/components/header/Component.mobile.d.ts +10 -0
  37. package/dist/components/header/Component.mobile.js +33 -0
  38. package/dist/components/header/desktop.css +54 -0
  39. package/dist/components/header/index.css +85 -0
  40. package/dist/components/header/mobile.css +46 -0
  41. package/dist/cssm/Component.desktop.d.ts +35 -0
  42. package/dist/cssm/Component.desktop.js +53 -0
  43. package/dist/cssm/Component.mobile.d.ts +22 -0
  44. package/dist/cssm/Component.mobile.js +48 -0
  45. package/dist/cssm/Component.responsive.d.ts +20 -0
  46. package/dist/cssm/Component.responsive.js +77 -0
  47. package/dist/cssm/Context.d.ts +4 -0
  48. package/dist/cssm/Context.js +9 -0
  49. package/dist/cssm/components/closer/Component.d.ts +29 -0
  50. package/dist/cssm/components/closer/Component.js +36 -0
  51. package/dist/cssm/components/closer/index.module.css +45 -0
  52. package/dist/cssm/components/content/Component.d.ts +13 -0
  53. package/dist/cssm/components/content/Component.desktop.d.ts +11 -0
  54. package/dist/cssm/components/content/Component.desktop.js +25 -0
  55. package/dist/cssm/components/content/Component.js +23 -0
  56. package/dist/cssm/components/content/Component.mobile.d.ts +5 -0
  57. package/dist/cssm/components/content/Component.mobile.js +25 -0
  58. package/dist/cssm/components/content/desktop.module.css +30 -0
  59. package/dist/cssm/components/content/index.module.css +27 -0
  60. package/dist/cssm/components/content/mobile.module.css +29 -0
  61. package/dist/cssm/components/footer/Component.d.ts +25 -0
  62. package/dist/cssm/components/footer/Component.desktop.d.ts +11 -0
  63. package/dist/cssm/components/footer/Component.desktop.js +29 -0
  64. package/dist/cssm/components/footer/Component.js +32 -0
  65. package/dist/cssm/components/footer/Component.mobile.d.ts +5 -0
  66. package/dist/cssm/components/footer/Component.mobile.js +29 -0
  67. package/dist/cssm/components/footer/desktop.module.css +31 -0
  68. package/dist/cssm/components/footer/index.module.css +40 -0
  69. package/dist/cssm/components/footer/layout.module.css +83 -0
  70. package/dist/cssm/components/footer/mobile.module.css +29 -0
  71. package/dist/cssm/components/header/Component.d.ts +45 -0
  72. package/dist/cssm/components/header/Component.desktop.d.ts +15 -0
  73. package/dist/cssm/components/header/Component.desktop.js +34 -0
  74. package/dist/cssm/components/header/Component.js +39 -0
  75. package/dist/cssm/components/header/Component.mobile.d.ts +10 -0
  76. package/dist/cssm/components/header/Component.mobile.js +34 -0
  77. package/dist/cssm/components/header/desktop.module.css +53 -0
  78. package/dist/cssm/components/header/index.module.css +84 -0
  79. package/dist/cssm/components/header/mobile.module.css +45 -0
  80. package/dist/cssm/desktop.d.ts +1 -0
  81. package/dist/cssm/desktop.js +35 -0
  82. package/dist/cssm/desktop.module.css +27 -0
  83. package/dist/cssm/index.d.ts +2 -0
  84. package/dist/cssm/index.js +48 -0
  85. package/dist/cssm/mobile.d.ts +1 -0
  86. package/dist/cssm/mobile.js +34 -0
  87. package/dist/cssm/mobile.module.css +24 -0
  88. package/dist/cssm/responsive.d.ts +1 -0
  89. package/dist/cssm/responsive.js +47 -0
  90. package/dist/cssm/transitions.desktop.module.css +24 -0
  91. package/dist/cssm/transitions.mobile.module.css +24 -0
  92. package/dist/cssm/tslib.es6-ce870b46.d.ts +32 -0
  93. package/dist/cssm/tslib.es6-ce870b46.js +42 -0
  94. package/dist/cssm/vars.css +20 -0
  95. package/dist/desktop.css +28 -0
  96. package/dist/desktop.d.ts +1 -0
  97. package/dist/desktop.js +25 -0
  98. package/dist/esm/Component.desktop.d.ts +35 -0
  99. package/dist/esm/Component.desktop.js +37 -0
  100. package/dist/esm/Component.mobile.d.ts +22 -0
  101. package/dist/esm/Component.mobile.js +33 -0
  102. package/dist/esm/Component.responsive.d.ts +20 -0
  103. package/dist/esm/Component.responsive.js +54 -0
  104. package/dist/esm/Context.d.ts +4 -0
  105. package/dist/esm/Context.js +5 -0
  106. package/dist/esm/components/closer/Component.d.ts +29 -0
  107. package/dist/esm/components/closer/Component.js +28 -0
  108. package/dist/esm/components/closer/index.css +46 -0
  109. package/dist/esm/components/content/Component.d.ts +13 -0
  110. package/dist/esm/components/content/Component.desktop.d.ts +11 -0
  111. package/dist/esm/components/content/Component.desktop.js +16 -0
  112. package/dist/esm/components/content/Component.js +15 -0
  113. package/dist/esm/components/content/Component.mobile.d.ts +5 -0
  114. package/dist/esm/components/content/Component.mobile.js +16 -0
  115. package/dist/esm/components/content/desktop.css +31 -0
  116. package/dist/esm/components/content/index.css +28 -0
  117. package/dist/esm/components/content/mobile.css +30 -0
  118. package/dist/esm/components/footer/Component.d.ts +25 -0
  119. package/dist/esm/components/footer/Component.desktop.d.ts +11 -0
  120. package/dist/esm/components/footer/Component.desktop.js +19 -0
  121. package/dist/esm/components/footer/Component.js +25 -0
  122. package/dist/esm/components/footer/Component.mobile.d.ts +5 -0
  123. package/dist/esm/components/footer/Component.mobile.js +19 -0
  124. package/dist/esm/components/footer/desktop.css +32 -0
  125. package/dist/esm/components/footer/index.css +41 -0
  126. package/dist/esm/components/footer/layout.css +84 -0
  127. package/dist/esm/components/footer/mobile.css +30 -0
  128. package/dist/esm/components/header/Component.d.ts +45 -0
  129. package/dist/esm/components/header/Component.desktop.d.ts +15 -0
  130. package/dist/esm/components/header/Component.desktop.js +24 -0
  131. package/dist/esm/components/header/Component.js +31 -0
  132. package/dist/esm/components/header/Component.mobile.d.ts +10 -0
  133. package/dist/esm/components/header/Component.mobile.js +23 -0
  134. package/dist/esm/components/header/desktop.css +54 -0
  135. package/dist/esm/components/header/index.css +85 -0
  136. package/dist/esm/components/header/mobile.css +46 -0
  137. package/dist/esm/desktop.css +28 -0
  138. package/dist/esm/desktop.d.ts +1 -0
  139. package/dist/esm/desktop.js +17 -0
  140. package/dist/esm/index.d.ts +2 -0
  141. package/dist/esm/index.js +24 -0
  142. package/dist/esm/mobile.css +25 -0
  143. package/dist/esm/mobile.d.ts +1 -0
  144. package/dist/esm/mobile.js +16 -0
  145. package/dist/esm/responsive.d.ts +1 -0
  146. package/dist/esm/responsive.js +24 -0
  147. package/dist/esm/transitions.desktop.css +25 -0
  148. package/dist/esm/transitions.mobile.css +25 -0
  149. package/dist/esm/tslib.es6-44d9de0b.d.ts +32 -0
  150. package/dist/esm/tslib.es6-44d9de0b.js +40 -0
  151. package/dist/index.d.ts +2 -0
  152. package/dist/index.js +33 -0
  153. package/dist/mobile.css +25 -0
  154. package/dist/mobile.d.ts +1 -0
  155. package/dist/mobile.js +24 -0
  156. package/dist/modern/Component.desktop.d.ts +35 -0
  157. package/dist/modern/Component.desktop.js +36 -0
  158. package/dist/modern/Component.mobile.d.ts +22 -0
  159. package/dist/modern/Component.mobile.js +34 -0
  160. package/dist/modern/Component.responsive.d.ts +20 -0
  161. package/dist/modern/Component.responsive.js +52 -0
  162. package/dist/modern/Context.d.ts +4 -0
  163. package/dist/modern/Context.js +5 -0
  164. package/dist/modern/components/closer/Component.d.ts +29 -0
  165. package/dist/modern/components/closer/Component.js +25 -0
  166. package/dist/modern/components/closer/index.css +46 -0
  167. package/dist/modern/components/content/Component.d.ts +13 -0
  168. package/dist/modern/components/content/Component.desktop.d.ts +11 -0
  169. package/dist/modern/components/content/Component.desktop.js +12 -0
  170. package/dist/modern/components/content/Component.js +14 -0
  171. package/dist/modern/components/content/Component.mobile.d.ts +5 -0
  172. package/dist/modern/components/content/Component.mobile.js +12 -0
  173. package/dist/modern/components/content/desktop.css +31 -0
  174. package/dist/modern/components/content/index.css +28 -0
  175. package/dist/modern/components/content/mobile.css +30 -0
  176. package/dist/modern/components/footer/Component.d.ts +25 -0
  177. package/dist/modern/components/footer/Component.desktop.d.ts +11 -0
  178. package/dist/modern/components/footer/Component.desktop.js +14 -0
  179. package/dist/modern/components/footer/Component.js +23 -0
  180. package/dist/modern/components/footer/Component.mobile.d.ts +5 -0
  181. package/dist/modern/components/footer/Component.mobile.js +14 -0
  182. package/dist/modern/components/footer/desktop.css +32 -0
  183. package/dist/modern/components/footer/index.css +41 -0
  184. package/dist/modern/components/footer/layout.css +84 -0
  185. package/dist/modern/components/footer/mobile.css +30 -0
  186. package/dist/modern/components/header/Component.d.ts +45 -0
  187. package/dist/modern/components/header/Component.desktop.d.ts +15 -0
  188. package/dist/modern/components/header/Component.desktop.js +21 -0
  189. package/dist/modern/components/header/Component.js +29 -0
  190. package/dist/modern/components/header/Component.mobile.d.ts +10 -0
  191. package/dist/modern/components/header/Component.mobile.js +18 -0
  192. package/dist/modern/components/header/desktop.css +54 -0
  193. package/dist/modern/components/header/index.css +85 -0
  194. package/dist/modern/components/header/mobile.css +46 -0
  195. package/dist/modern/desktop.css +28 -0
  196. package/dist/modern/desktop.d.ts +1 -0
  197. package/dist/modern/desktop.js +16 -0
  198. package/dist/modern/index.d.ts +2 -0
  199. package/dist/modern/index.js +23 -0
  200. package/dist/modern/mobile.css +25 -0
  201. package/dist/modern/mobile.d.ts +1 -0
  202. package/dist/modern/mobile.js +15 -0
  203. package/dist/modern/responsive.d.ts +1 -0
  204. package/dist/modern/responsive.js +23 -0
  205. package/dist/modern/transitions.desktop.css +25 -0
  206. package/dist/modern/transitions.mobile.css +25 -0
  207. package/dist/responsive.d.ts +1 -0
  208. package/dist/responsive.js +32 -0
  209. package/dist/send-stats.js +82 -0
  210. package/dist/transitions.desktop.css +25 -0
  211. package/dist/transitions.mobile.css +25 -0
  212. package/dist/tslib.es6-46fc2207.d.ts +32 -0
  213. package/dist/tslib.es6-46fc2207.js +42 -0
  214. package/package.json +29 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,11 @@
1
+ # Change Log
2
+
3
+ All notable changes to this project will be documented in this file.
4
+ See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
+
6
+ # 1.1.0 (2022-07-01)
7
+
8
+
9
+ ### Features
10
+
11
+ * **side-panel:** add new component side-panel ([#56](https://github.com/core-ds/core-components/issues/56)) ([0f9365a](https://github.com/core-ds/core-components/commit/0f9365ab22597cc230ac19ab19032f63d72a816e))
@@ -0,0 +1,35 @@
1
+ /// <reference types="react" />
2
+ /// <reference types="react-transition-group" />
3
+ import React from 'react';
4
+ import { DrawerProps } from "@alfalab/core-components-drawer";
5
+ type SidePanelDesktopProps = DrawerProps & {
6
+ /**
7
+ * Ширина модального окна
8
+ * @default "s"
9
+ */
10
+ size?: 's';
11
+ /**
12
+ * Управление наличием закрывающего крестика
13
+ * @default false
14
+ */
15
+ hasCloser?: boolean;
16
+ };
17
+ declare const SidePanelDesktop: React.ForwardRefExoticComponent<Pick<import("packages/base-modal/src").BaseModalProps, "children" | "className" | "open" | "onClose" | "dataTestId" | "Backdrop" | "backdropProps" | "disableAutoFocus" | "disableFocusLock" | "disableRestoreFocus" | "disableEscapeKeyDown" | "disableBackdropClick" | "keepMounted" | "contentClassName" | "wrapperClassName" | "scrollHandler" | "transitionProps" | "onBackdropClick" | "onEscapeKeyDown" | "onMount" | "onUnmount" | "zIndex" | "componentRef"> & {
18
+ contentTransitionProps?: Partial<TimeoutProps<undefined>> | Partial<EndListenerProps<undefined>> | undefined;
19
+ } & {
20
+ /**
21
+ * Ширина модального окна
22
+ * @default "s"
23
+ */
24
+ size?: "s" | undefined;
25
+ /**
26
+ * Управление наличием закрывающего крестика
27
+ * @default false
28
+ */
29
+ hasCloser?: boolean | undefined;
30
+ } & React.RefAttributes<HTMLDivElement>> & {
31
+ Content: React.FC<import("./components/content/Component.desktop").ContentDesktopProps>;
32
+ Header: React.FC<import("./components/header/Component.desktop").HeaderDesktopProps>;
33
+ Footer: React.FC<import("./components/footer/Component.desktop").FooterDesktopProps>;
34
+ };
35
+ export { SidePanelDesktopProps, SidePanelDesktop };
@@ -0,0 +1,47 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib_es6 = require('./tslib.es6-46fc2207.js');
6
+ var React = require('react');
7
+ var cn = require('classnames');
8
+ var coreComponentsDrawer = require('@alfalab/core-components-drawer');
9
+ var mergeRefs = require('react-merge-refs');
10
+ require('@alfalab/core-components-base-modal');
11
+ require('./Context.js');
12
+ require('./components/header/Component.js');
13
+ require('@alfalab/core-components-icon-button');
14
+ require('@alfalab/icons-glyph/CrossHeavyMIcon');
15
+ require('./components/closer/Component.js');
16
+ var components_header_Component_desktop = require('./components/header/Component.desktop.js');
17
+ require('./components/content/Component.js');
18
+ var components_content_Component_desktop = require('./components/content/Component.desktop.js');
19
+ require('./components/footer/Component.js');
20
+ var components_footer_Component_desktop = require('./components/footer/Component.desktop.js');
21
+
22
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
23
+
24
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
25
+ var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
26
+ var mergeRefs__default = /*#__PURE__*/_interopDefaultLegacy(mergeRefs);
27
+
28
+ var styles = {"s":"side-panel__s_1ysbr","hidden":"side-panel__hidden_1ysbr"};
29
+ require('./desktop.css')
30
+
31
+ var transitions = {"appear":"side-panel__appear_1hpwc","enter":"side-panel__enter_1hpwc","appearActive":"side-panel__appearActive_1hpwc","enterActive":"side-panel__enterActive_1hpwc","exit":"side-panel__exit_1hpwc","exitActive":"side-panel__exitActive_1hpwc","exitDone":"side-panel__exitDone_1hpwc"};
32
+ require('./transitions.desktop.css')
33
+
34
+ var SidePanelDesktopComponent = React.forwardRef(function (_a, ref) {
35
+ var _b = _a.size, size = _b === void 0 ? 's' : _b, children = _a.children, className = _a.className, wrapperClassName = _a.wrapperClassName, _c = _a.contentTransitionProps, contentTransitionProps = _c === void 0 ? {} : _c, backdropProps = _a.backdropProps, restProps = tslib_es6.__rest(_a, ["size", "children", "className", "wrapperClassName", "contentTransitionProps", "backdropProps"]);
36
+ var modalRef = React.useRef(null);
37
+ return (React__default['default'].createElement(coreComponentsDrawer.Drawer, tslib_es6.__assign({}, restProps, { ref: mergeRefs__default['default']([ref, modalRef]), wrapperClassName: wrapperClassName, className: cn__default['default'](className, styles[size], styles.hidden), backdropProps: backdropProps, contentTransitionProps: tslib_es6.__assign({ classNames: transitions }, contentTransitionProps) }), React__default['default'].Children.map(children, function (child) {
38
+ return React.isValidElement(child) ? React.cloneElement(child, { size: size }) : child;
39
+ })));
40
+ });
41
+ var SidePanelDesktop = Object.assign(SidePanelDesktopComponent, {
42
+ Content: components_content_Component_desktop.ContentDesktop,
43
+ Header: components_header_Component_desktop.HeaderDesktop,
44
+ Footer: components_footer_Component_desktop.FooterDesktop,
45
+ });
46
+
47
+ exports.SidePanelDesktop = SidePanelDesktop;
@@ -0,0 +1,22 @@
1
+ /// <reference types="react" />
2
+ import React from 'react';
3
+ import { BaseModalProps } from "@alfalab/core-components-base-modal";
4
+ type SidePanelMobileProps = BaseModalProps & {
5
+ /**
6
+ * Управление наличием закрывающего крестика
7
+ * @default false
8
+ */
9
+ hasCloser?: boolean;
10
+ };
11
+ declare const SidePanelMobile: React.ForwardRefExoticComponent<BaseModalProps & {
12
+ /**
13
+ * Управление наличием закрывающего крестика
14
+ * @default false
15
+ */
16
+ hasCloser?: boolean | undefined;
17
+ } & React.RefAttributes<HTMLDivElement>> & {
18
+ Content: React.FC<import("./components/content/Component").ContentProps>;
19
+ Header: React.FC<import("./components/header/Component.mobile").HeaderMobileProps>;
20
+ Footer: React.FC<import("./components/footer/Component").FooterProps>;
21
+ };
22
+ export { SidePanelMobileProps, SidePanelMobile };
@@ -0,0 +1,42 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib_es6 = require('./tslib.es6-46fc2207.js');
6
+ var React = require('react');
7
+ var cn = require('classnames');
8
+ var coreComponentsBaseModal = require('@alfalab/core-components-base-modal');
9
+ require('./Context.js');
10
+ require('./components/header/Component.js');
11
+ require('@alfalab/core-components-icon-button');
12
+ require('@alfalab/icons-glyph/CrossHeavyMIcon');
13
+ require('./components/closer/Component.js');
14
+ require('./components/content/Component.js');
15
+ require('./components/footer/Component.js');
16
+ require('@alfalab/icons-glyph/CrossMIcon');
17
+ var components_header_Component_mobile = require('./components/header/Component.mobile.js');
18
+ var components_content_Component_mobile = require('./components/content/Component.mobile.js');
19
+ var components_footer_Component_mobile = require('./components/footer/Component.mobile.js');
20
+
21
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
22
+
23
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
24
+ var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
25
+
26
+ var styles = {"component":"side-panel__component_y5ha2"};
27
+ require('./mobile.css')
28
+
29
+ var transitions = {"appear":"side-panel__appear_kozij","enter":"side-panel__enter_kozij","appearActive":"side-panel__appearActive_kozij","enterActive":"side-panel__enterActive_kozij","exit":"side-panel__exit_kozij","exitActive":"side-panel__exitActive_kozij","exitDone":"side-panel__exitDone_kozij"};
30
+ require('./transitions.mobile.css')
31
+
32
+ var SidePanelMobileComponent = React.forwardRef(function (_a, ref) {
33
+ var children = _a.children, className = _a.className, transitionProps = _a.transitionProps, restProps = tslib_es6.__rest(_a, ["children", "className", "transitionProps"]);
34
+ return (React__default['default'].createElement(coreComponentsBaseModal.BaseModal, tslib_es6.__assign({}, restProps, { ref: ref, transitionProps: tslib_es6.__assign({ classNames: transitions }, transitionProps), className: cn__default['default'](className, styles.component) }), children));
35
+ });
36
+ var SidePanelMobile = Object.assign(SidePanelMobileComponent, {
37
+ Content: components_content_Component_mobile.ContentMobile,
38
+ Header: components_header_Component_mobile.HeaderMobile,
39
+ Footer: components_footer_Component_mobile.FooterMobile,
40
+ });
41
+
42
+ exports.SidePanelMobile = SidePanelMobile;
@@ -0,0 +1,20 @@
1
+ /// <reference types="react" />
2
+ /// <reference types="react-transition-group" />
3
+ import React from 'react';
4
+ import { SidePanelDesktopProps } from "./Component.desktop";
5
+ import { SidePanelMobileProps } from "./Component.mobile";
6
+ type SidePanelResponsiveProps = SidePanelMobileProps & SidePanelDesktopProps;
7
+ declare const SidePanelResponsive: React.ForwardRefExoticComponent<import("packages/base-modal/src").BaseModalProps & {
8
+ hasCloser?: boolean | undefined;
9
+ } & Pick<import("packages/base-modal/src").BaseModalProps, "children" | "className" | "open" | "onClose" | "dataTestId" | "Backdrop" | "backdropProps" | "disableAutoFocus" | "disableFocusLock" | "disableRestoreFocus" | "disableEscapeKeyDown" | "disableBackdropClick" | "keepMounted" | "contentClassName" | "wrapperClassName" | "scrollHandler" | "transitionProps" | "onBackdropClick" | "onEscapeKeyDown" | "onMount" | "onUnmount" | "zIndex" | "componentRef"> & {
10
+ contentTransitionProps?: Partial<TimeoutProps<undefined>> | Partial<EndListenerProps<undefined>> | undefined;
11
+ } & {
12
+ size?: "s" | undefined;
13
+ hasCloser?: boolean | undefined;
14
+ } & React.RefAttributes<HTMLDivElement>> & {
15
+ Header: React.FC<import("./components/header/Component.desktop").HeaderDesktopProps> | React.FC<import("./components/header/Component.mobile").HeaderMobileProps>;
16
+ Content: React.FC<import("./components/content/Component").ContentProps> | React.FC<import("./components/content/Component.desktop").ContentDesktopProps>;
17
+ Footer: React.FC<import("./components/footer/Component").FooterProps> | React.FC<import("./components/footer/Component.desktop").FooterDesktopProps>;
18
+ Closer: React.FC<import("./components/closer/Component").CloserProps>;
19
+ };
20
+ export { SidePanelResponsiveProps, SidePanelResponsive };
@@ -0,0 +1,62 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib_es6 = require('./tslib.es6-46fc2207.js');
6
+ var React = require('react');
7
+ require('classnames');
8
+ require('@alfalab/core-components-drawer');
9
+ require('react-merge-refs');
10
+ require('@alfalab/core-components-base-modal');
11
+ require('./Context.js');
12
+ require('./components/header/Component.js');
13
+ require('@alfalab/core-components-icon-button');
14
+ require('@alfalab/icons-glyph/CrossHeavyMIcon');
15
+ var components_closer_Component = require('./components/closer/Component.js');
16
+ require('./components/header/Component.desktop.js');
17
+ require('./components/content/Component.js');
18
+ require('./components/content/Component.desktop.js');
19
+ require('./components/footer/Component.js');
20
+ require('./components/footer/Component.desktop.js');
21
+ var Component_desktop = require('./Component.desktop.js');
22
+ require('@alfalab/icons-glyph/CrossMIcon');
23
+ require('./components/header/Component.mobile.js');
24
+ require('./components/content/Component.mobile.js');
25
+ require('./components/footer/Component.mobile.js');
26
+ var Component_mobile = require('./Component.mobile.js');
27
+ var hooks = require('@alfalab/hooks');
28
+
29
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
30
+
31
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
32
+
33
+ var ResponsiveContext = React__default['default'].createContext({
34
+ view: 'desktop',
35
+ });
36
+ function createResponsive(desktop, mobile) {
37
+ function ResponsiveChild(props) {
38
+ var view = React.useContext(ResponsiveContext).view;
39
+ var Child = view === 'desktop' ? desktop : mobile;
40
+ return React__default['default'].createElement(Child, tslib_es6.__assign({}, props));
41
+ }
42
+ return ResponsiveChild;
43
+ }
44
+ var SidePanelResponsiveComponent = React.forwardRef(function (_a, ref) {
45
+ var children = _a.children, restProps = tslib_es6.__rest(_a, ["children"]);
46
+ var view = hooks.useMedia([
47
+ ['mobile', '(max-width: 1023px)'],
48
+ ['desktop', '(min-width: 1024px)'],
49
+ ], 'desktop')[0];
50
+ var contextValue = React.useMemo(function () { return ({ view: view }); }, [view]);
51
+ var Component = view === 'desktop' ? Component_desktop.SidePanelDesktop : Component_mobile.SidePanelMobile;
52
+ return (React__default['default'].createElement(ResponsiveContext.Provider, { value: contextValue },
53
+ React__default['default'].createElement(Component, tslib_es6.__assign({ ref: ref }, restProps), children)));
54
+ });
55
+ var SidePanelResponsive = Object.assign(SidePanelResponsiveComponent, {
56
+ Header: createResponsive(Component_desktop.SidePanelDesktop.Header, Component_mobile.SidePanelMobile.Header),
57
+ Content: createResponsive(Component_desktop.SidePanelDesktop.Content, Component_mobile.SidePanelMobile.Content),
58
+ Footer: createResponsive(Component_desktop.SidePanelDesktop.Footer, Component_mobile.SidePanelMobile.Footer),
59
+ Closer: components_closer_Component.Closer,
60
+ });
61
+
62
+ exports.SidePanelResponsive = SidePanelResponsive;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { BaseModalContext } from "@alfalab/core-components-base-modal";
3
+ declare const ModalContext: import("react").Context<BaseModalContext>;
4
+ export { ModalContext };
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var coreComponentsBaseModal = require('@alfalab/core-components-base-modal');
6
+
7
+ var ModalContext = coreComponentsBaseModal.BaseModalContext;
8
+
9
+ exports.ModalContext = ModalContext;
@@ -0,0 +1,29 @@
1
+ import { ButtonHTMLAttributes, ElementType, FC } from 'react';
2
+ import { IconButtonProps } from "@alfalab/core-components-icon-button";
3
+ type CloserProps = ButtonHTMLAttributes<HTMLButtonElement> & {
4
+ /**
5
+ * Дополнительный класс
6
+ */
7
+ className?: string;
8
+ /**
9
+ * Позиция крестика
10
+ */
11
+ align?: 'left' | 'right';
12
+ /**
13
+ * Размер кнопки
14
+ */
15
+ size?: IconButtonProps['size'];
16
+ /**
17
+ * Фиксирует крестик
18
+ */
19
+ sticky?: boolean;
20
+ /**
21
+ * Иконка
22
+ */
23
+ icon?: ElementType;
24
+ };
25
+ /**
26
+ * @deprecated Компонент только для внутреннего использования. Используйте <Header />
27
+ */
28
+ declare const Closer: FC<CloserProps>;
29
+ export { CloserProps, Closer };
@@ -0,0 +1,37 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib_es6 = require('../../tslib.es6-46fc2207.js');
6
+ var React = require('react');
7
+ var cn = require('classnames');
8
+ require('@alfalab/core-components-base-modal');
9
+ var Context = require('../../Context.js');
10
+ var coreComponentsIconButton = require('@alfalab/core-components-icon-button');
11
+ var CrossHeavyMIcon = require('@alfalab/icons-glyph/CrossHeavyMIcon');
12
+
13
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
14
+
15
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
16
+ var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
17
+
18
+ var styles = {"closer":"side-panel__closer_8pghy","button":"side-panel__button_8pghy","sticky":"side-panel__sticky_8pghy"};
19
+ require('./index.css')
20
+
21
+ /**
22
+ * @deprecated Компонент только для внутреннего использования. Используйте <Header />
23
+ */
24
+ var Closer = function (_a) {
25
+ var _b;
26
+ var className = _a.className, _c = _a.size, size = _c === void 0 ? 's' : _c, sticky = _a.sticky, _d = _a.icon, icon = _d === void 0 ? CrossHeavyMIcon.CrossHeavyMIcon : _d, restProps = tslib_es6.__rest(_a, ["className", "size", "sticky", "icon"]);
27
+ var onClose = React.useContext(Context.ModalContext).onClose;
28
+ var handleClick = React.useCallback(function (event) {
29
+ onClose(event, 'closerClick');
30
+ }, [onClose]);
31
+ return (React__default['default'].createElement("div", { className: cn__default['default'](styles.closer, className, (_b = {},
32
+ _b[styles.sticky] = sticky,
33
+ _b)) },
34
+ React__default['default'].createElement(coreComponentsIconButton.IconButton, tslib_es6.__assign({ size: size, className: styles.button, "aria-label": '\u0437\u0430\u043A\u0440\u044B\u0442\u044C', onClick: handleClick, icon: icon }, restProps))));
35
+ };
36
+
37
+ exports.Closer = Closer;
@@ -0,0 +1,46 @@
1
+ /* hash: rxean */
2
+ :root {
3
+ --color-light-bg-primary-alpha-40: rgba(255, 255, 255, 0.4);
4
+ }
5
+ :root {
6
+
7
+ /* Hard */
8
+
9
+ /* Up */
10
+
11
+ /* Hard up */
12
+ }
13
+ :root {
14
+
15
+ /* sizes */
16
+
17
+ /* paddings */
18
+
19
+ /* scroll */
20
+
21
+ /* desktop */
22
+
23
+ /* mobile */
24
+ }
25
+ :root {
26
+ --side-panel-closer-bg-color: var(--color-light-bg-primary-alpha-40);
27
+ }
28
+ .side-panel__closer_8pghy {
29
+ flex-shrink: 0;
30
+ width: 48px;
31
+ height: 48px;
32
+ margin-left: auto;
33
+ display: flex;
34
+ align-items: center;
35
+ justify-content: center;
36
+ }
37
+ .side-panel__button_8pghy {
38
+ background: var(--side-panel-closer-bg-color);
39
+ -webkit-backdrop-filter: blur(10px);
40
+ backdrop-filter: blur(10px);
41
+ border-radius: 50px;
42
+ }
43
+ .side-panel__sticky_8pghy {
44
+ position: sticky;
45
+ top: 0;
46
+ }
@@ -0,0 +1,13 @@
1
+ import { FC, ReactNode } from 'react';
2
+ type ContentProps = {
3
+ /**
4
+ * Контент
5
+ */
6
+ children?: ReactNode;
7
+ /**
8
+ * Дополнительный класс
9
+ */
10
+ className?: string;
11
+ };
12
+ declare const Content: FC<ContentProps>;
13
+ export { ContentProps, Content };
@@ -0,0 +1,11 @@
1
+ import { FC } from 'react';
2
+ import { ContentProps } from "./Component";
3
+ import { SidePanelDesktopProps } from "../../Component.desktop";
4
+ type ContentDesktopProps = ContentProps & {
5
+ /**
6
+ * Размер
7
+ */
8
+ size?: SidePanelDesktopProps['size'];
9
+ };
10
+ declare const ContentDesktop: FC<ContentDesktopProps>;
11
+ export { ContentDesktopProps, ContentDesktop };
@@ -0,0 +1,25 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib_es6 = require('../../tslib.es6-46fc2207.js');
6
+ var React = require('react');
7
+ var cn = require('classnames');
8
+ require('@alfalab/core-components-base-modal');
9
+ require('../../Context.js');
10
+ var components_content_Component = require('./Component.js');
11
+
12
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
+
14
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
15
+ var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
16
+
17
+ var styles = {"s":"side-panel__s_lq99o"};
18
+ require('./desktop.css')
19
+
20
+ var ContentDesktop = function (_a) {
21
+ var size = _a.size, className = _a.className, restProps = tslib_es6.__rest(_a, ["size", "className"]);
22
+ return (React__default['default'].createElement(components_content_Component.Content, tslib_es6.__assign({ className: cn__default['default'](className, size && styles[size]) }, restProps)));
23
+ };
24
+
25
+ exports.ContentDesktop = ContentDesktop;
@@ -0,0 +1,24 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var cn = require('classnames');
7
+ require('@alfalab/core-components-base-modal');
8
+ var Context = require('../../Context.js');
9
+
10
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
11
+
12
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
13
+ var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
14
+
15
+ var styles = {"content":"side-panel__content_1yxkj","flex":"side-panel__flex_1yxkj"};
16
+ require('./index.css')
17
+
18
+ var Content = function (_a) {
19
+ var children = _a.children, className = _a.className;
20
+ var contentRef = React.useContext(Context.ModalContext).contentRef;
21
+ return (React__default['default'].createElement("div", { className: cn__default['default'](styles.content, className, styles.flex), ref: contentRef }, children));
22
+ };
23
+
24
+ exports.Content = Content;
@@ -0,0 +1,5 @@
1
+ import { FC } from 'react';
2
+ import { ContentProps } from "./Component";
3
+ type ContentMobileProps = ContentProps;
4
+ declare const ContentMobile: FC<ContentMobileProps>;
5
+ export { ContentMobileProps, ContentMobile };
@@ -0,0 +1,25 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib_es6 = require('../../tslib.es6-46fc2207.js');
6
+ var React = require('react');
7
+ var cn = require('classnames');
8
+ require('@alfalab/core-components-base-modal');
9
+ require('../../Context.js');
10
+ var components_content_Component = require('./Component.js');
11
+
12
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
+
14
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
15
+ var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
16
+
17
+ var styles = {"content":"side-panel__content_7gese"};
18
+ require('./mobile.css')
19
+
20
+ var ContentMobile = function (_a) {
21
+ var className = _a.className, restProps = tslib_es6.__rest(_a, ["className"]);
22
+ return (React__default['default'].createElement(components_content_Component.Content, tslib_es6.__assign({ className: cn__default['default'](className, styles.content) }, restProps)));
23
+ };
24
+
25
+ exports.ContentMobile = ContentMobile;
@@ -0,0 +1,31 @@
1
+ /* hash: 1e1gn */
2
+ :root {
3
+
4
+ /* Hard */
5
+
6
+ /* Up */
7
+
8
+ /* Hard up */
9
+ }
10
+ :root {
11
+ --gap-2xl: 32px;
12
+ }
13
+ :root {
14
+
15
+ /* sizes */
16
+
17
+ /* paddings */
18
+ --side-panel-s-content-paddings: 0 56px;
19
+
20
+ /* scroll */
21
+
22
+ /* desktop */
23
+
24
+ /* mobile */
25
+ }
26
+ .side-panel__s_lq99o {
27
+ padding: var(--side-panel-s-content-paddings)
28
+ }
29
+ .side-panel__s_lq99o:last-child {
30
+ padding-bottom: var(--gap-2xl);
31
+ }
@@ -0,0 +1,28 @@
1
+ /* hash: gtex2 */
2
+ :root {
3
+
4
+ /* Hard */
5
+
6
+ /* Up */
7
+
8
+ /* Hard up */
9
+ }
10
+ :root {
11
+
12
+ /* sizes */
13
+
14
+ /* paddings */
15
+
16
+ /* scroll */
17
+
18
+ /* desktop */
19
+
20
+ /* mobile */
21
+ }
22
+ .side-panel__content_1yxkj {
23
+ box-sizing: border-box;
24
+ width: 100%;
25
+ }
26
+ .side-panel__flex_1yxkj {
27
+ flex: 1 1 auto;
28
+ }
@@ -0,0 +1,30 @@
1
+ /* hash: 1bi3k */
2
+ :root {
3
+
4
+ /* Hard */
5
+
6
+ /* Up */
7
+
8
+ /* Hard up */
9
+ }
10
+ :root {
11
+ --gap-m: 16px;
12
+ }
13
+ :root {
14
+
15
+ /* sizes */
16
+
17
+ /* paddings */
18
+
19
+ /* scroll */
20
+
21
+ /* desktop */
22
+
23
+ /* mobile */
24
+ }
25
+ .side-panel__content_7gese {
26
+ padding: 0 var(--gap-m)
27
+ }
28
+ .side-panel__content_7gese:last-child {
29
+ padding-bottom: var(--gap-m);
30
+ }
@@ -0,0 +1,25 @@
1
+ import { FC, ReactNode } from 'react';
2
+ type FooterProps = {
3
+ /**
4
+ * Контент футера
5
+ */
6
+ children?: ReactNode;
7
+ /**
8
+ * Дополнительный класс
9
+ */
10
+ className?: string;
11
+ /**
12
+ * Фиксирует футер
13
+ */
14
+ sticky?: boolean;
15
+ /**
16
+ * Выравнивание элементов футера
17
+ */
18
+ layout?: 'start' | 'center' | 'space-between' | 'column';
19
+ /**
20
+ * Отступы между элементами футера
21
+ */
22
+ gap?: 16 | 24 | 32;
23
+ };
24
+ declare const Footer: FC<FooterProps>;
25
+ export { FooterProps, Footer };
@@ -0,0 +1,11 @@
1
+ import { FC } from 'react';
2
+ import { FooterProps } from "./Component";
3
+ import { SidePanelDesktopProps } from "../../Component.desktop";
4
+ type FooterDesktopProps = FooterProps & {
5
+ /**
6
+ * Размер
7
+ */
8
+ size?: SidePanelDesktopProps['size'];
9
+ };
10
+ declare const FooterDesktop: FC<FooterDesktopProps>;
11
+ export { FooterDesktopProps, FooterDesktop };
@@ -0,0 +1,28 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib_es6 = require('../../tslib.es6-46fc2207.js');
6
+ var React = require('react');
7
+ var cn = require('classnames');
8
+ require('@alfalab/core-components-base-modal');
9
+ require('../../Context.js');
10
+ var components_footer_Component = require('./Component.js');
11
+
12
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
+
14
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
15
+ var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
16
+
17
+ var styles = {"sticky":"side-panel__sticky_1nka4","s":"side-panel__s_1nka4"};
18
+ require('./desktop.css')
19
+
20
+ var FooterDesktop = function (_a) {
21
+ var _b;
22
+ var size = _a.size, className = _a.className, sticky = _a.sticky, restProps = tslib_es6.__rest(_a, ["size", "className", "sticky"]);
23
+ return (React__default['default'].createElement(components_footer_Component.Footer, tslib_es6.__assign({ className: cn__default['default'](className, size && styles[size], (_b = {},
24
+ _b[styles.sticky] = sticky,
25
+ _b)), sticky: sticky }, restProps)));
26
+ };
27
+
28
+ exports.FooterDesktop = FooterDesktop;