@alfalab/core-components-bottom-sheet 7.0.0 → 7.1.0-snapshot-92b8690

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 (82) hide show
  1. package/components/footer/index.css +25 -25
  2. package/components/footer/index.module.css.js +1 -1
  3. package/components/footer/index.module.css.js.map +1 -1
  4. package/components/header/index.css +14 -14
  5. package/components/header/index.module.css.js +1 -1
  6. package/components/header/index.module.css.js.map +1 -1
  7. package/dynamic-mixins/component.d.ts +3 -0
  8. package/dynamic-mixins/component.js +407 -0
  9. package/dynamic-mixins/component.js.map +1 -0
  10. package/dynamic-mixins/components/footer/Component.d.ts +20 -0
  11. package/dynamic-mixins/components/footer/Component.js +29 -0
  12. package/dynamic-mixins/components/footer/Component.js.map +1 -0
  13. package/dynamic-mixins/components/footer/index.css +87 -0
  14. package/dynamic-mixins/components/footer/index.module.css.js +8 -0
  15. package/dynamic-mixins/components/footer/index.module.css.js.map +1 -0
  16. package/dynamic-mixins/components/header/Component.d.ts +8 -0
  17. package/dynamic-mixins/components/header/Component.js +38 -0
  18. package/dynamic-mixins/components/header/Component.js.map +1 -0
  19. package/dynamic-mixins/components/header/index.css +62 -0
  20. package/dynamic-mixins/components/header/index.module.css.js +8 -0
  21. package/dynamic-mixins/components/header/index.module.css.js.map +1 -0
  22. package/dynamic-mixins/components/swipeable-backdrop/Component.d.ts +18 -0
  23. package/dynamic-mixins/components/swipeable-backdrop/Component.js +20 -0
  24. package/dynamic-mixins/components/swipeable-backdrop/Component.js.map +1 -0
  25. package/dynamic-mixins/consts/swipeConsts.d.ts +1 -0
  26. package/dynamic-mixins/consts/swipeConsts.js +10 -0
  27. package/dynamic-mixins/consts/swipeConsts.js.map +1 -0
  28. package/dynamic-mixins/enums/swipeEnums.d.ts +6 -0
  29. package/dynamic-mixins/enums/swipeEnums.js +12 -0
  30. package/dynamic-mixins/enums/swipeEnums.js.map +1 -0
  31. package/dynamic-mixins/hooks/index.d.ts +1 -0
  32. package/dynamic-mixins/hooks/index.js +11 -0
  33. package/dynamic-mixins/hooks/index.js.map +1 -0
  34. package/dynamic-mixins/hooks/use-visualviewport-size.d.ts +7 -0
  35. package/dynamic-mixins/hooks/use-visualviewport-size.js +63 -0
  36. package/dynamic-mixins/hooks/use-visualviewport-size.js.map +1 -0
  37. package/dynamic-mixins/index.css +175 -0
  38. package/dynamic-mixins/index.d.ts +3 -0
  39. package/dynamic-mixins/index.js +13 -0
  40. package/dynamic-mixins/index.js.map +1 -0
  41. package/dynamic-mixins/index.module.css.js +8 -0
  42. package/dynamic-mixins/index.module.css.js.map +1 -0
  43. package/dynamic-mixins/shared/index.d.ts +1 -0
  44. package/dynamic-mixins/shared/index.js +10 -0
  45. package/dynamic-mixins/shared/index.js.map +1 -0
  46. package/dynamic-mixins/types/swipeTypes.d.ts +8 -0
  47. package/dynamic-mixins/types/swipeTypes.js +3 -0
  48. package/dynamic-mixins/types/swipeTypes.js.map +1 -0
  49. package/dynamic-mixins/types.d.ts +293 -0
  50. package/dynamic-mixins/types.js +3 -0
  51. package/dynamic-mixins/types.js.map +1 -0
  52. package/dynamic-mixins/utils.d.ts +16 -0
  53. package/dynamic-mixins/utils.js +48 -0
  54. package/dynamic-mixins/utils.js.map +1 -0
  55. package/esm/components/footer/index.css +25 -25
  56. package/esm/components/footer/index.module.css.js +1 -1
  57. package/esm/components/footer/index.module.css.js.map +1 -1
  58. package/esm/components/header/index.css +14 -14
  59. package/esm/components/header/index.module.css.js +1 -1
  60. package/esm/components/header/index.module.css.js.map +1 -1
  61. package/esm/index.css +44 -44
  62. package/esm/index.module.css.js +1 -1
  63. package/esm/index.module.css.js.map +1 -1
  64. package/index.css +44 -44
  65. package/index.module.css.js +1 -1
  66. package/index.module.css.js.map +1 -1
  67. package/modern/components/footer/index.css +25 -25
  68. package/modern/components/footer/index.module.css.js +1 -1
  69. package/modern/components/footer/index.module.css.js.map +1 -1
  70. package/modern/components/header/index.css +14 -14
  71. package/modern/components/header/index.module.css.js +1 -1
  72. package/modern/components/header/index.module.css.js.map +1 -1
  73. package/modern/index.css +44 -44
  74. package/modern/index.module.css.js +1 -1
  75. package/modern/index.module.css.js.map +1 -1
  76. package/moderncssm/components/footer/index.module.css +7 -0
  77. package/moderncssm/components/header/index.module.css +16 -0
  78. package/package.json +8 -8
  79. package/src/components/footer/index.module.css +1 -1
  80. package/src/components/header/index.module.css +1 -1
  81. package/src/index.module.css +1 -1
  82. package/src/vars.css +1 -1
@@ -30,58 +30,58 @@
30
30
  } :root {
31
31
  --bottom-sheet-footer-border-top: 1px solid var(--color-light-neutral-300);
32
32
  --bottom-sheet-footer-background-color: var(--color-light-modal-bg-primary);
33
- } .bottom-sheet__footer_10acv {
33
+ } .bottom-sheet__footer_1druu {
34
34
  padding: var(--gap-16) var(--gap-16);
35
35
  background-color: var(--color-light-modal-bg-primary);
36
- } .bottom-sheet__sticky_10acv {
36
+ } .bottom-sheet__sticky_1druu {
37
37
  position: sticky;
38
38
  bottom: var(--gap-0);
39
39
  z-index: 1;
40
- } .bottom-sheet__highlighted_10acv {
40
+ } .bottom-sheet__highlighted_1druu {
41
41
  border-top: var(--bottom-sheet-footer-border-top);
42
42
  background-color: var(--bottom-sheet-footer-background-color);
43
- } .bottom-sheet__background-accent_10acv {
43
+ } .bottom-sheet__background-accent_1druu {
44
44
  background-color: var(--color-light-bg-accent);
45
- } .bottom-sheet__background-info_10acv {
45
+ } .bottom-sheet__background-info_1druu {
46
46
  background-color: var(--color-light-bg-info);
47
- } .bottom-sheet__background-attention-muted_10acv {
47
+ } .bottom-sheet__background-attention-muted_1druu {
48
48
  background-color: var(--color-light-bg-attention-muted);
49
- } .bottom-sheet__background-positive-muted_10acv {
49
+ } .bottom-sheet__background-positive-muted_1druu {
50
50
  background-color: var(--color-light-bg-positive-muted);
51
- } .bottom-sheet__background-negative-muted_10acv {
51
+ } .bottom-sheet__background-negative-muted_1druu {
52
52
  background-color: var(--color-light-bg-negative-muted);
53
- } .bottom-sheet__background-primary_10acv {
53
+ } .bottom-sheet__background-primary_1druu {
54
54
  background-color: var(--color-light-bg-primary);
55
- } .bottom-sheet__background-primary-inverted_10acv {
55
+ } .bottom-sheet__background-primary-inverted_1druu {
56
56
  background-color: var(--color-light-bg-primary-inverted);
57
- } .bottom-sheet__background-secondary_10acv {
57
+ } .bottom-sheet__background-secondary_1druu {
58
58
  background-color: var(--color-light-bg-secondary);
59
- } .bottom-sheet__background-secondary-inverted_10acv {
59
+ } .bottom-sheet__background-secondary-inverted_1druu {
60
60
  background-color: var(--color-light-bg-secondary-inverted);
61
- } .bottom-sheet__background-tertiary_10acv {
61
+ } .bottom-sheet__background-tertiary_1druu {
62
62
  background-color: var(--color-light-bg-tertiary);
63
- } .bottom-sheet__background-tertiary-inverted_10acv {
63
+ } .bottom-sheet__background-tertiary-inverted_1druu {
64
64
  background-color: var(--color-light-bg-tertiary-inverted);
65
- } .bottom-sheet__background-quaternary_10acv {
65
+ } .bottom-sheet__background-quaternary_1druu {
66
66
  background-color: var(--color-light-bg-quaternary);
67
- } .bottom-sheet__background-quaternary-inverted_10acv {
67
+ } .bottom-sheet__background-quaternary-inverted_1druu {
68
68
  background-color: var(--color-light-bg-quaternary-inverted);
69
- } .bottom-sheet__background-specialbg-component_10acv {
69
+ } .bottom-sheet__background-specialbg-component_1druu {
70
70
  background-color: var(--color-light-specialbg-component);
71
- } .bottom-sheet__background-specialbg-component-inverted_10acv {
71
+ } .bottom-sheet__background-specialbg-component-inverted_1druu {
72
72
  background-color: var(--color-light-specialbg-component-inverted);
73
- } .bottom-sheet__background-specialbg-primary-grouped_10acv {
73
+ } .bottom-sheet__background-specialbg-primary-grouped_1druu {
74
74
  background-color: var(--color-light-specialbg-primary-grouped);
75
- } .bottom-sheet__background-specialbg-secondary-grouped_10acv {
75
+ } .bottom-sheet__background-specialbg-secondary-grouped_1druu {
76
76
  background-color: var(--color-light-specialbg-secondary-grouped);
77
- } .bottom-sheet__background-specialbg-tertiary-grouped_10acv {
77
+ } .bottom-sheet__background-specialbg-tertiary-grouped_1druu {
78
78
  background-color: var(--color-light-specialbg-tertiary-grouped);
79
- } .bottom-sheet__background-specialbg-secondary-transparent_10acv {
79
+ } .bottom-sheet__background-specialbg-secondary-transparent_1druu {
80
80
  background-color: var(--color-light-specialbg-secondary-transparent);
81
- } .bottom-sheet__background-specialbg-secondary-transparent-inverted_10acv {
81
+ } .bottom-sheet__background-specialbg-secondary-transparent-inverted_1druu {
82
82
  background-color: var(--color-light-specialbg-secondary-transparent-inverted);
83
- } .bottom-sheet__background-specialbg-tertiary-transparent_10acv {
83
+ } .bottom-sheet__background-specialbg-tertiary-transparent_1druu {
84
84
  background-color: var(--color-light-specialbg-tertiary-transparent);
85
- } .bottom-sheet__background-specialbg-tertiary-transparent-inverted_10acv {
85
+ } .bottom-sheet__background-specialbg-tertiary-transparent-inverted_1druu {
86
86
  background-color: var(--color-light-specialbg-tertiary-transparent-inverted);
87
87
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  require('./index.css');
4
4
 
5
- var styles = {"footer":"bottom-sheet__footer_10acv","sticky":"bottom-sheet__sticky_10acv","highlighted":"bottom-sheet__highlighted_10acv"};
5
+ var styles = {"footer":"bottom-sheet__footer_1druu","sticky":"bottom-sheet__sticky_1druu","highlighted":"bottom-sheet__highlighted_1druu"};
6
6
 
7
7
  module.exports = styles;
8
8
  //# sourceMappingURL=index.module.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.module.css.js","sources":["../../src/components/footer/index.module.css"],"sourcesContent":["@import '@alfalab/core-components-vars/src/index.css';\n@import '../../vars.css';\n\n.footer {\n padding: var(--gap-16) var(--gap-16);\n background-color: var(--color-light-modal-bg-primary);\n}\n\n.sticky {\n position: sticky;\n bottom: var(--gap-0);\n z-index: 1;\n}\n\n.highlighted {\n border-top: var(--bottom-sheet-footer-border-top);\n background-color: var(--bottom-sheet-footer-background-color);\n}\n\n@mixin bg-class-list;\n"],"names":[],"mappings":";;;;AAEgB,aAAe,CAAC,QAAQ,CAAC,4BAA4B,CAAC,QAAQ,CAAC,4BAA4B,CAAC,aAAa,CAAC,iCAA64D,CAAC;;;;"}
1
+ {"version":3,"file":"index.module.css.js","sources":["../../src/components/footer/index.module.css"],"sourcesContent":["@import '@alfalab/core-components-vars/src/no-dynamic-mixins-index.css';\n@import '../../vars.css';\n\n.footer {\n padding: var(--gap-16) var(--gap-16);\n background-color: var(--color-light-modal-bg-primary);\n}\n\n.sticky {\n position: sticky;\n bottom: var(--gap-0);\n z-index: 1;\n}\n\n.highlighted {\n border-top: var(--bottom-sheet-footer-border-top);\n background-color: var(--bottom-sheet-footer-background-color);\n}\n\n@mixin bg-class-list;\n"],"names":[],"mappings":";;;;AAEgB,aAAe,CAAC,QAAQ,CAAC,4BAA4B,CAAC,QAAQ,CAAC,4BAA4B,CAAC,aAAa,CAAC,iCAA64D,CAAC;;;;"}
@@ -17,45 +17,45 @@
17
17
  --bottom-sheet-title-font-weight: 600;
18
18
  --bottom-sheet-title-line-height: 28px;
19
19
  --bottom-sheet-title-font-family: var(--font-family-system);
20
- } .bottom-sheet__headerBase_1it2d {
20
+ } .bottom-sheet__headerBase_l0mm1 {
21
21
  border-top-left-radius: inherit;
22
22
  border-top-right-radius: inherit;
23
23
  z-index: 1;
24
- } .bottom-sheet__headerWrapper_1it2d {
24
+ } .bottom-sheet__headerWrapper_l0mm1 {
25
25
  padding: var(--gap-12) var(--gap-8) var(--gap-4);
26
- } .bottom-sheet__headerWrapperWithoutSwipeMarker_1it2d {
26
+ } .bottom-sheet__headerWrapperWithoutSwipeMarker_l0mm1 {
27
27
  padding: var(--gap-8) var(--gap-8) var(--gap-4);
28
- } .bottom-sheet__hasContent_1it2d {
28
+ } .bottom-sheet__hasContent_l0mm1 {
29
29
  background-color: inherit;
30
- } .bottom-sheet__header_1it2d {
30
+ } .bottom-sheet__header_l0mm1 {
31
31
  display: flex;
32
- } .bottom-sheet__sticky_1it2d {
32
+ } .bottom-sheet__sticky_l0mm1 {
33
33
  position: sticky;
34
34
  top: var(--gap-0);
35
- } .bottom-sheet__highlighted_1it2d {
35
+ } .bottom-sheet__highlighted_l0mm1 {
36
36
  border-bottom: var(--bottom-sheet-header-border-bottom);
37
- } .bottom-sheet__justifyEnd_1it2d {
37
+ } .bottom-sheet__justifyEnd_l0mm1 {
38
38
  justify-content: flex-end;
39
- } .bottom-sheet__addon_1it2d {
39
+ } .bottom-sheet__addon_l0mm1 {
40
40
  display: flex;
41
41
  justify-content: center;
42
42
  align-items: center;
43
43
  min-width: 48px;
44
44
  height: 48px;
45
- } .bottom-sheet__addonFixed_1it2d {
45
+ } .bottom-sheet__addonFixed_l0mm1 {
46
46
  position: fixed;
47
- } .bottom-sheet__title_1it2d {
47
+ } .bottom-sheet__title_l0mm1 {
48
48
  padding: 10px var(--gap-8);
49
49
  width: 100%;
50
50
  font-size: var(--bottom-sheet-title-font-size);
51
51
  font-weight: var(--bottom-sheet-title-font-weight);
52
52
  line-height: var(--bottom-sheet-title-line-height);
53
53
  font-family: var(--bottom-sheet-title-font-family);
54
- } .bottom-sheet__titleCenter_1it2d {
54
+ } .bottom-sheet__titleCenter_l0mm1 {
55
55
  text-align: center;
56
- } .bottom-sheet__titleLeft_1it2d {
56
+ } .bottom-sheet__titleLeft_l0mm1 {
57
57
  text-align: left;
58
- } .bottom-sheet__trimTitle_1it2d {
58
+ } .bottom-sheet__trimTitle_l0mm1 {
59
59
  white-space: nowrap;
60
60
  overflow: hidden;
61
61
  text-overflow: ellipsis;
@@ -2,7 +2,7 @@
2
2
 
3
3
  require('./index.css');
4
4
 
5
- var styles = {"headerWrapper":"bottom-sheet__headerWrapper_1it2d bottom-sheet__headerBase_1it2d","headerWrapperWithoutSwipeMarker":"bottom-sheet__headerWrapperWithoutSwipeMarker_1it2d bottom-sheet__headerBase_1it2d","hasContent":"bottom-sheet__hasContent_1it2d","sticky":"bottom-sheet__sticky_1it2d","highlighted":"bottom-sheet__highlighted_1it2d","title":"bottom-sheet__title_1it2d"};
5
+ var styles = {"headerWrapper":"bottom-sheet__headerWrapper_l0mm1 bottom-sheet__headerBase_l0mm1","headerWrapperWithoutSwipeMarker":"bottom-sheet__headerWrapperWithoutSwipeMarker_l0mm1 bottom-sheet__headerBase_l0mm1","hasContent":"bottom-sheet__hasContent_l0mm1","sticky":"bottom-sheet__sticky_l0mm1","highlighted":"bottom-sheet__highlighted_l0mm1","title":"bottom-sheet__title_l0mm1"};
6
6
 
7
7
  module.exports = styles;
8
8
  //# sourceMappingURL=index.module.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.module.css.js","sources":["../../src/components/header/index.module.css"],"sourcesContent":["@import '@alfalab/core-components-vars/src/index.css';\n@import '../../vars.css';\n\n.headerBase {\n border-top-left-radius: inherit;\n border-top-right-radius: inherit;\n z-index: 1;\n}\n\n.headerWrapper {\n composes: headerBase;\n padding: var(--gap-12) var(--gap-8) var(--gap-4);\n}\n\n.headerWrapperWithoutSwipeMarker {\n composes: headerBase;\n padding: var(--gap-8) var(--gap-8) var(--gap-4);\n}\n\n.hasContent {\n background-color: inherit;\n}\n\n.header {\n display: flex;\n}\n\n.sticky {\n position: sticky;\n top: var(--gap-0);\n}\n\n.highlighted {\n border-bottom: var(--bottom-sheet-header-border-bottom);\n}\n\n.justifyEnd {\n justify-content: flex-end;\n}\n\n.addon {\n display: flex;\n justify-content: center;\n align-items: center;\n min-width: 48px;\n height: 48px;\n}\n\n.addonFixed {\n position: fixed;\n}\n\n.title {\n padding: 10px var(--gap-8);\n width: 100%;\n font-size: var(--bottom-sheet-title-font-size);\n font-weight: var(--bottom-sheet-title-font-weight);\n line-height: var(--bottom-sheet-title-line-height);\n font-family: var(--bottom-sheet-title-font-family);\n}\n\n.titleCenter {\n text-align: center;\n}\n\n.titleLeft {\n text-align: left;\n}\n\n.trimTitle {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n"],"names":[],"mappings":";;;;AAEgB,aAAe,CAA+C,eAAe,CAAC,kEAAkE,CAAC,iCAAiC,CAAC,oFAAoF,CAAC,YAAY,CAAC,gCAAgC,CAAuC,QAAQ,CAAC,4BAA4B,CAAC,aAAa,CAAC,iCAAiC,CAAiI,OAAO,CAAC,2BAAmK,CAAC;;;;"}
1
+ {"version":3,"file":"index.module.css.js","sources":["../../src/components/header/index.module.css"],"sourcesContent":["@import '@alfalab/core-components-vars/src/no-dynamic-mixins-index.css';\n@import '../../vars.css';\n\n.headerBase {\n border-top-left-radius: inherit;\n border-top-right-radius: inherit;\n z-index: 1;\n}\n\n.headerWrapper {\n composes: headerBase;\n padding: var(--gap-12) var(--gap-8) var(--gap-4);\n}\n\n.headerWrapperWithoutSwipeMarker {\n composes: headerBase;\n padding: var(--gap-8) var(--gap-8) var(--gap-4);\n}\n\n.hasContent {\n background-color: inherit;\n}\n\n.header {\n display: flex;\n}\n\n.sticky {\n position: sticky;\n top: var(--gap-0);\n}\n\n.highlighted {\n border-bottom: var(--bottom-sheet-header-border-bottom);\n}\n\n.justifyEnd {\n justify-content: flex-end;\n}\n\n.addon {\n display: flex;\n justify-content: center;\n align-items: center;\n min-width: 48px;\n height: 48px;\n}\n\n.addonFixed {\n position: fixed;\n}\n\n.title {\n padding: 10px var(--gap-8);\n width: 100%;\n font-size: var(--bottom-sheet-title-font-size);\n font-weight: var(--bottom-sheet-title-font-weight);\n line-height: var(--bottom-sheet-title-line-height);\n font-family: var(--bottom-sheet-title-font-family);\n}\n\n.titleCenter {\n text-align: center;\n}\n\n.titleLeft {\n text-align: left;\n}\n\n.trimTitle {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n"],"names":[],"mappings":";;;;AAEgB,aAAe,CAA+C,eAAe,CAAC,kEAAkE,CAAC,iCAAiC,CAAC,oFAAoF,CAAC,YAAY,CAAC,gCAAgC,CAAuC,QAAQ,CAAC,4BAA4B,CAAC,aAAa,CAAC,iCAAiC,CAAiI,OAAO,CAAC,2BAAmK,CAAC;;;;"}
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ import type { BottomSheetProps } from './types';
3
+ export declare const BottomSheet: React.ForwardRefExoticComponent<BottomSheetProps & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,407 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib = require('tslib');
6
+ var React = require('react');
7
+ var reactDiv100vh = require('react-div-100vh');
8
+ var mergeRefs = require('react-merge-refs');
9
+ var reactSwipeable = require('react-swipeable');
10
+ var cn = require('classnames');
11
+ var dynamicMixins$1 = require('@alfalab/core-components-base-modal/dynamic-mixins');
12
+ var dynamicMixins = require('@alfalab/core-components-shared/dynamic-mixins');
13
+ var Component$2 = require('./components/footer/Component.js');
14
+ var Component$1 = require('./components/header/Component.js');
15
+ var Component = require('./components/swipeable-backdrop/Component.js');
16
+ var swipeConsts = require('./consts/swipeConsts.js');
17
+ var useVisualviewportSize = require('./hooks/use-visualviewport-size.js');
18
+ var utils = require('./utils.js');
19
+ var index_module = require('./index.module.css.js');
20
+
21
+ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
22
+
23
+ var React__default = /*#__PURE__*/_interopDefaultCompat(React);
24
+ var mergeRefs__default = /*#__PURE__*/_interopDefaultCompat(mergeRefs);
25
+ var cn__default = /*#__PURE__*/_interopDefaultCompat(cn);
26
+
27
+ var isNil = dynamicMixins.fnUtils.isNil;
28
+ var adjustContainerHeightDefault = function (value) { return value; };
29
+ var BottomSheet = React.forwardRef(
30
+ // eslint-disable-next-line complexity
31
+ function (_a, ref) {
32
+ var _b, _c, _d, _e, _f;
33
+ var _g, _h;
34
+ var open = _a.open, title = _a.title, container = _a.container, usePortal = _a.usePortal, backgroundColor = _a.backgroundColor, _j = _a.titleSize, titleSize = _j === void 0 ? 'default' : _j, subtitle = _a.subtitle, actionButton = _a.actionButton, contentClassName = _a.contentClassName, containerClassName = _a.containerClassName, containerProps = _a.containerProps, headerClassName = _a.headerClassName, footerClassName = _a.footerClassName, addonClassName = _a.addonClassName, closerClassName = _a.closerClassName, backerClassName = _a.backerClassName, modalClassName = _a.modalClassName, modalWrapperClassName = _a.modalWrapperClassName, className = _a.className, leftAddons = _a.leftAddons, rightAddons = _a.rightAddons, bottomAddons = _a.bottomAddons, hasCloser = _a.hasCloser, hasBacker = _a.hasBacker, _k = _a.titleAlign, titleAlign = _k === void 0 ? 'left' : _k, trimTitle = _a.trimTitle, stickyHeader = _a.stickyHeader, _l = _a.stickyFooter, stickyFooter = _l === void 0 ? true : _l, _m = _a.initialHeight, initialHeight = _m === void 0 ? 'default' : _m, hideOverlay = _a.hideOverlay, hideScrollbar = _a.hideScrollbar, hideHeader = _a.hideHeader, disableOverlayClick = _a.disableOverlayClick, disableBlockingScroll = _a.disableBlockingScroll, disableFocusLock = _a.disableFocusLock, children = _a.children, zIndex = _a.zIndex, _o = _a.transitionProps, transitionProps = _o === void 0 ? {} : _o, magneticAreasProp = _a.magneticAreas, initialActiveAreaIndex = _a.initialActiveAreaIndex, dataTestId = _a.dataTestId, _p = _a.swipeable, swipeable = _p === void 0 ? true : _p, _q = _a.swipeableContent, swipeableContent = _q === void 0 ? true : _q, _r = _a.swipeThreshold, swipeThreshold = _r === void 0 ? 5 : _r, scrollLockedProp = _a.scrollLocked, backdropProps = _a.backdropProps, _s = _a.scrollableContainerRef, scrollableContainerRef = _s === void 0 ? function () { return null; } : _s, bottomSheetInstanceRef = _a.bottomSheetInstanceRef, _t = _a.sheetContainerRef, sheetContainerRef = _t === void 0 ? function () { return null; } : _t, _u = _a.headerOffset, headerOffset = _u === void 0 ? 24 : _u, _v = _a.adjustContainerHeight, adjustContainerHeight = _v === void 0 ? adjustContainerHeightDefault : _v, onClose = _a.onClose, onBack = _a.onBack, onMagnetize = _a.onMagnetize, onSwipeStart = _a.onSwipeStart, onSwipeEnd = _a.onSwipeEnd, disableRestoreFocus = _a.disableRestoreFocus, disableAutoFocus = _a.disableAutoFocus, disableEscapeKeyDown = _a.disableEscapeKeyDown, keepMounted = _a.keepMounted, onMagnetizeEnd = _a.onMagnetizeEnd, onOffsetChange = _a.onOffsetChange, _w = _a.showSwipeMarker, showSwipeMarker = _w === void 0 ? true : _w, swipeableMarker = _a.swipeableMarker, swipeableMarkerClassName = _a.swipeableMarkerClassName, backButtonProps = _a.backButtonProps, _x = _a.iOSLock, iOSLock = _x === void 0 ? false : _x, _y = _a.virtualKeyboard, virtualKeyboard = _y === void 0 ? false : _y;
35
+ var windowHeight = (_g = reactDiv100vh.use100vh()) !== null && _g !== void 0 ? _g : 0;
36
+ var visualViewportSize = useVisualviewportSize.useVisualViewportSize();
37
+ var fullHeight = virtualKeyboard ? (_h = visualViewportSize === null || visualViewportSize === void 0 ? void 0 : visualViewportSize.height) !== null && _h !== void 0 ? _h : 0 : windowHeight;
38
+ // Хук use100vh рассчитывает высоту вьюпорта в useEffect, поэтому на первый рендер всегда возвращает null.
39
+ var isFirstRender = fullHeight === 0;
40
+ fullHeight = adjustContainerHeight(fullHeight);
41
+ var initialIndexRef = React.useRef(initialActiveAreaIndex);
42
+ var magneticAreas = React.useMemo(function () {
43
+ var _a;
44
+ if (magneticAreasProp) {
45
+ return magneticAreasProp.map(function (area) {
46
+ return utils.convertPercentToNumber(area, fullHeight, headerOffset);
47
+ });
48
+ }
49
+ var iOSViewHeight = 0;
50
+ if (dynamicMixins.isClient()) {
51
+ if ((_a = document === null || document === void 0 ? void 0 : document.documentElement) === null || _a === void 0 ? void 0 : _a.clientHeight) {
52
+ iOSViewHeight = adjustContainerHeight(document.documentElement.clientHeight);
53
+ }
54
+ else {
55
+ iOSViewHeight = window === null || window === void 0 ? void 0 : window.innerHeight;
56
+ }
57
+ }
58
+ var viewHeight = dynamicMixins.os.isIOS() && !virtualKeyboard ? iOSViewHeight : fullHeight;
59
+ return [0, viewHeight - headerOffset];
60
+ }, [fullHeight, headerOffset, magneticAreasProp, virtualKeyboard, adjustContainerHeight]);
61
+ var lastMagneticArea = magneticAreas[magneticAreas.length - 1];
62
+ var _z = React.useState(0), sheetOffset = _z[0], setSheetOffset = _z[1];
63
+ var _0 = React.useState(1), backdropOpacity = _0[0], setBackdropOpacity = _0[1];
64
+ var _1 = React.useState(-1), activeAreaIdx = _1[0], setActiveAreaIdx = _1[1];
65
+ var _2 = React.useState(null), swipingInProgress = _2[0], setSwipingInProgress = _2[1];
66
+ var scrollOccurred = React.useRef(false);
67
+ var headerRef = React.useRef(null);
68
+ var contentRef = React.useRef(null);
69
+ var sheetHeight = React.useRef(0);
70
+ var sheetRef = React.useRef(null);
71
+ var scrollableContainer = React.useRef(null);
72
+ var activeArea = magneticAreas[activeAreaIdx];
73
+ var emptyHeader = !hasCloser && !leftAddons && !title && !hasBacker && !rightAddons;
74
+ var titleIsReactElement = React__default.default.isValidElement(title);
75
+ var headerProps = tslib.__assign(tslib.__assign({}, (titleIsReactElement
76
+ ? { children: title }
77
+ : { title: title ? title === null || title === void 0 ? void 0 : title.toString() : undefined })), { scrollableParentRef: scrollableContainer, headerRef: headerRef, headerOffset: headerOffset, className: headerClassName, addonClassName: addonClassName, closerClassName: closerClassName, backButtonClassName: backerClassName, leftAddons: leftAddons, rightAddons: rightAddons, bottomAddons: bottomAddons, hasCloser: hasCloser, hasBackButton: hasBacker, align: titleAlign, trim: trimTitle, sticky: stickyHeader, dataTestId: dynamicMixins.getDataTestId(dataTestId, 'header'), onBack: onBack, titleSize: titleSize, subtitle: subtitle, onClose: onClose, backButtonProps: backButtonProps });
78
+ var startSwiping = function (event) {
79
+ setSwipingInProgress(function (p) {
80
+ if (!p)
81
+ onSwipeStart === null || onSwipeStart === void 0 ? void 0 : onSwipeStart(event);
82
+ return true;
83
+ });
84
+ };
85
+ var stopSwiping = function (event) {
86
+ setSwipingInProgress(function (p) {
87
+ if (p)
88
+ onSwipeEnd === null || onSwipeEnd === void 0 ? void 0 : onSwipeEnd(event);
89
+ return false;
90
+ });
91
+ scrollOccurred.current = false;
92
+ };
93
+ var getBackdropOpacity = function (offset) {
94
+ var canClose = magneticAreas[0] === 0;
95
+ var secondArea = magneticAreas[1];
96
+ var isSecondArea = secondArea === activeArea;
97
+ if (canClose && isSecondArea && sheetOffset > lastMagneticArea - secondArea) {
98
+ var opacity = 1 - (offset - (lastMagneticArea - secondArea)) / secondArea;
99
+ return Math.max(0, Number(opacity.toFixed(2)));
100
+ }
101
+ return 1;
102
+ };
103
+ var getSheetOffset = function (deltaY) {
104
+ var offset = lastMagneticArea - activeArea + deltaY;
105
+ var maxOffset = magneticAreas[0] === 0 ? 0 : lastMagneticArea - magneticAreas[0];
106
+ if (maxOffset) {
107
+ offset = Math.min(maxOffset, offset);
108
+ }
109
+ return Math.max(0, Math.round(offset));
110
+ };
111
+ var getActiveAreaIndex = function (area) { return magneticAreas.findIndex(function (a) { return a === area; }); };
112
+ var setSheetHeight = function () {
113
+ if (sheetRef.current) {
114
+ sheetHeight.current = sheetRef.current.getBoundingClientRect().height - sheetOffset;
115
+ }
116
+ };
117
+ var handleTransitionEnd = function (event) {
118
+ setSheetHeight();
119
+ if (event.propertyName === 'transform' && event.target === event.currentTarget) {
120
+ onMagnetizeEnd === null || onMagnetizeEnd === void 0 ? void 0 : onMagnetizeEnd(getActiveAreaIndex(activeArea));
121
+ }
122
+ };
123
+ var scrollToArea = function (idx) {
124
+ if (isFirstRender) {
125
+ initialIndexRef.current = idx;
126
+ return;
127
+ }
128
+ stopSwiping(null);
129
+ var nextArea = magneticAreas[idx];
130
+ var nextAreaIdx = getActiveAreaIndex(nextArea);
131
+ if (nextArea === 0) {
132
+ if (iOSLock) {
133
+ dynamicMixins$1.unlockScroll();
134
+ }
135
+ onClose();
136
+ return;
137
+ }
138
+ if (nextAreaIdx !== -1) {
139
+ setActiveAreaIdx(nextAreaIdx);
140
+ setSheetOffset(lastMagneticArea - nextArea);
141
+ onMagnetize === null || onMagnetize === void 0 ? void 0 : onMagnetize(nextAreaIdx);
142
+ }
143
+ };
144
+ var magnetize = function (velocity, deltaY) {
145
+ var shouldMagnetizeDownByVelocity = deltaY >= 0 && velocity >= utils.SWIPE_VELOCITY;
146
+ var shouldMagnetizeUpByVelocity = deltaY < 0 && velocity >= utils.SWIPE_VELOCITY;
147
+ var updatePosition = function (nextOffset, nextAreaIdx) {
148
+ setSheetOffset(nextOffset);
149
+ setActiveAreaIdx(function (prevState) { return (nextAreaIdx === -1 ? prevState : nextAreaIdx); });
150
+ if (nextAreaIdx !== -1) {
151
+ onMagnetize === null || onMagnetize === void 0 ? void 0 : onMagnetize(nextAreaIdx);
152
+ // Если nextOffset == offset, то onTransitionEnd не отработает и onMagnetizeEnd не вызовется
153
+ if (sheetOffset === nextOffset) {
154
+ onMagnetizeEnd === null || onMagnetizeEnd === void 0 ? void 0 : onMagnetizeEnd(nextAreaIdx);
155
+ setSheetHeight();
156
+ }
157
+ }
158
+ };
159
+ if (shouldMagnetizeDownByVelocity) {
160
+ var nextArea = magneticAreas
161
+ .slice()
162
+ .reverse()
163
+ .find(function (area) { return area < activeArea; });
164
+ if (nextArea === 0) {
165
+ if (iOSLock) {
166
+ dynamicMixins$1.unlockScroll();
167
+ }
168
+ onClose();
169
+ return;
170
+ }
171
+ var nextOffset = nextArea
172
+ ? lastMagneticArea - nextArea
173
+ : lastMagneticArea - activeArea;
174
+ var nextAreaIdx = getActiveAreaIndex(nextArea);
175
+ updatePosition(nextOffset, nextAreaIdx);
176
+ return;
177
+ }
178
+ if (shouldMagnetizeUpByVelocity) {
179
+ var nextArea = magneticAreas.find(function (area) { return area > activeArea; });
180
+ var nextAreaIdx = getActiveAreaIndex(nextArea);
181
+ var nextOffset = nextArea ? lastMagneticArea - nextArea : 0;
182
+ updatePosition(nextOffset, nextAreaIdx);
183
+ return;
184
+ }
185
+ var offset = getSheetOffset(deltaY);
186
+ var currentSheetHeight = lastMagneticArea - offset;
187
+ var secondArea = magneticAreas[1];
188
+ var isSecondArea = activeArea === secondArea;
189
+ var canClose = magneticAreas[0] === 0 && deltaY >= 0;
190
+ var shouldCloseByOffset = isSecondArea && canClose && 1 - currentSheetHeight / activeArea > utils.CLOSE_OFFSET;
191
+ if (shouldCloseByOffset) {
192
+ if (iOSLock) {
193
+ dynamicMixins$1.unlockScroll();
194
+ }
195
+ onClose();
196
+ return;
197
+ }
198
+ var nearestArea = magneticAreas.reduceRight(function (res, area) {
199
+ if (Math.abs(area - currentSheetHeight) < res.minOffset) {
200
+ res.minOffset = area - currentSheetHeight;
201
+ res.nearestArea = area;
202
+ }
203
+ return res;
204
+ }, {
205
+ nearestArea: lastMagneticArea,
206
+ minOffset: lastMagneticArea,
207
+ }).nearestArea;
208
+ if (nearestArea === 0) {
209
+ if (iOSLock) {
210
+ dynamicMixins$1.unlockScroll();
211
+ }
212
+ onClose();
213
+ }
214
+ else {
215
+ var nextOffset = lastMagneticArea - nearestArea;
216
+ var nextAreaIdx = getActiveAreaIndex(nearestArea);
217
+ setBackdropOpacity(1);
218
+ updatePosition(nextOffset, nextAreaIdx);
219
+ }
220
+ };
221
+ /**
222
+ * Если контент внутри шторки скроллится - то шторка не должна свайпаться
223
+ * Если шапка внутри шторки зафиксирована - то шторка должна свайпаться только в области шапки
224
+ */
225
+ var shouldSkipSwiping = function (swipeParams) {
226
+ var _a;
227
+ var deltaY = swipeParams.deltaY, startY = swipeParams.startY, event = swipeParams.event, dir = swipeParams.dir;
228
+ if (scrollLockedProp || swipingInProgress)
229
+ return false;
230
+ if (!swipeableContent && ((_a = contentRef.current) === null || _a === void 0 ? void 0 : _a.contains(event.target))) {
231
+ return true;
232
+ }
233
+ var scrollableNode = scrollableContainer.current;
234
+ // Точка верхней границы (y координата)
235
+ var bottomSheetTopY = fullHeight - sheetHeight.current;
236
+ if (!scrollableNode ||
237
+ (!stickyHeader && Math.abs(bottomSheetTopY - startY) <= utils.MARKER_HEIGHT) ||
238
+ (stickyHeader &&
239
+ headerRef.current &&
240
+ Math.abs(bottomSheetTopY - startY) <= headerRef.current.clientHeight)) {
241
+ return false;
242
+ }
243
+ var shouldScroll = deltaY >= 0
244
+ ? scrollableNode.scrollTop > 0
245
+ : scrollableNode.scrollHeight -
246
+ scrollableNode.scrollTop -
247
+ scrollableNode.clientHeight >
248
+ utils.SCROLL_OFFSET;
249
+ if (!scrollOccurred.current && shouldScroll) {
250
+ scrollOccurred.current = true;
251
+ }
252
+ // Если контент внутри шторки скроллится горизонально - то шторка не должна закрываться
253
+ if (swipeConsts.horizontalDirections.includes(dir)) {
254
+ return true;
255
+ }
256
+ return shouldScroll;
257
+ };
258
+ var handleSheetSwipeEnd = function (swipeParams) {
259
+ var initial = swipeParams.initial, velocity = swipeParams.velocity, deltaY = swipeParams.deltaY, event = swipeParams.event, dir = swipeParams.dir;
260
+ var shouldPreventSwipe = scrollOccurred.current ||
261
+ shouldSkipSwiping({ deltaY: deltaY, startY: initial[1], event: event, dir: dir });
262
+ if (shouldPreventSwipe) {
263
+ return;
264
+ }
265
+ magnetize(velocity, deltaY);
266
+ };
267
+ var handleSheetSwipeStart = function (swipeParams) {
268
+ var deltaY = swipeParams.deltaY, initial = swipeParams.initial, event = swipeParams.event, dir = swipeParams.dir;
269
+ if (shouldSkipSwiping({ deltaY: deltaY, startY: initial[1], event: event, dir: dir })) {
270
+ return;
271
+ }
272
+ startSwiping(event);
273
+ };
274
+ var handleTouchEnd = function (_a) {
275
+ var event = _a.event;
276
+ return stopSwiping(event);
277
+ };
278
+ var handleSheetSwipeMove = function (swipeParams) {
279
+ var initial = swipeParams.initial, deltaY = swipeParams.deltaY, event = swipeParams.event, dir = swipeParams.dir;
280
+ var shouldPreventSwipe = scrollOccurred.current ||
281
+ shouldSkipSwiping({ deltaY: deltaY, startY: initial[1], event: event, dir: dir });
282
+ if (shouldPreventSwipe) {
283
+ return;
284
+ }
285
+ if (!swipingInProgress) {
286
+ startSwiping(event);
287
+ }
288
+ var offset = getSheetOffset(deltaY);
289
+ var opacity = getBackdropOpacity(offset);
290
+ setSheetOffset(offset);
291
+ setBackdropOpacity(opacity);
292
+ };
293
+ var sheetSwipeableHandlers = reactSwipeable.useSwipeable({
294
+ onSwipeStart: handleSheetSwipeStart,
295
+ onSwiping: handleSheetSwipeMove,
296
+ onSwiped: handleSheetSwipeEnd,
297
+ onTouchEndOrOnMouseUp: handleTouchEnd,
298
+ trackMouse: swipeable,
299
+ trackTouch: swipeable,
300
+ delta: swipeThreshold,
301
+ });
302
+ var handleExited = function (node) {
303
+ var idx = initialIndexRef.current;
304
+ setBackdropOpacity(1);
305
+ setSheetOffset(isNil(idx) ? magneticAreas[0] : lastMagneticArea - magneticAreas[idx]);
306
+ setActiveAreaIdx(isNil(idx) ? magneticAreas.length - 1 : idx);
307
+ onMagnetizeEnd === null || onMagnetizeEnd === void 0 ? void 0 : onMagnetizeEnd(0);
308
+ if (transitionProps.onExited) {
309
+ transitionProps.onExited(node);
310
+ }
311
+ };
312
+ var handleEnter = function (node, isAppearing) {
313
+ var _a;
314
+ onMagnetize === null || onMagnetize === void 0 ? void 0 : onMagnetize((_a = initialIndexRef.current) !== null && _a !== void 0 ? _a : magneticAreas.length - 1);
315
+ if (transitionProps.onEnter) {
316
+ transitionProps.onEnter(node, isAppearing);
317
+ }
318
+ };
319
+ var handleExit = function (node) {
320
+ onMagnetize === null || onMagnetize === void 0 ? void 0 : onMagnetize(0);
321
+ if (transitionProps.onExit) {
322
+ transitionProps.onExit(node);
323
+ }
324
+ };
325
+ var handleEntered = function (node, isAppearing) {
326
+ setBackdropOpacity(1);
327
+ setSheetHeight();
328
+ // Ready for swiping
329
+ setSwipingInProgress(false);
330
+ onMagnetizeEnd === null || onMagnetizeEnd === void 0 ? void 0 : onMagnetizeEnd(getActiveAreaIndex(activeArea));
331
+ if (transitionProps.onEntered) {
332
+ transitionProps.onEntered(node, isAppearing);
333
+ }
334
+ };
335
+ React.useEffect(function () {
336
+ if (!isFirstRender) {
337
+ // Инициализируем стейт только после того, как была рассчитана высота вьюпорта
338
+ if (activeAreaIdx === -1) {
339
+ var idx = initialIndexRef.current;
340
+ setSheetOffset(isNil(idx) ? 0 : lastMagneticArea - magneticAreas[idx]);
341
+ setActiveAreaIdx(isNil(idx) ? magneticAreas.length - 1 : idx);
342
+ }
343
+ else {
344
+ setSheetOffset(activeArea ? lastMagneticArea - activeArea : 0);
345
+ }
346
+ }
347
+ // eslint-disable-next-line react-hooks/exhaustive-deps
348
+ }, [isFirstRender, magneticAreas, lastMagneticArea]);
349
+ React.useEffect(function () {
350
+ if (!sheetRef.current)
351
+ return;
352
+ var maxOffset = fullHeight - headerOffset;
353
+ var offset = open ? sheetOffset : maxOffset;
354
+ var percent = (offset / maxOffset) * 100;
355
+ onOffsetChange === null || onOffsetChange === void 0 ? void 0 : onOffsetChange(offset, percent);
356
+ }, [fullHeight, headerOffset, onOffsetChange, open, sheetOffset]);
357
+ React.useImperativeHandle(bottomSheetInstanceRef, function () { return ({
358
+ scrollToArea: scrollToArea,
359
+ }); });
360
+ var getSwipeStyles = function () {
361
+ return sheetOffset ? { transform: "translateY(".concat(sheetOffset, "px)") } : {};
362
+ };
363
+ var getHeightStyles = function () { return ({
364
+ height: !isFirstRender && (initialHeight === 'full' || magneticAreasProp)
365
+ ? "".concat(lastMagneticArea, "px")
366
+ : 'unset',
367
+ maxHeight: isFirstRender ? 0 : "".concat(lastMagneticArea, "px"),
368
+ marginBottom: virtualKeyboard && visualViewportSize && windowHeight > visualViewportSize.height
369
+ ? windowHeight - visualViewportSize.height - visualViewportSize.offsetTop
370
+ : undefined,
371
+ }); };
372
+ var renderMarker = function () {
373
+ if (swipeableMarker) {
374
+ return (React__default.default.createElement("div", { className: cn__default.default(index_module.marker, swipeableMarkerClassName) }, swipeableMarker));
375
+ }
376
+ if (showSwipeMarker) {
377
+ return (React__default.default.createElement("div", { className: cn__default.default(index_module.marker, index_module.defaultMarker, swipeableMarkerClassName) }));
378
+ }
379
+ return null;
380
+ };
381
+ var bgClassName = backgroundColor && index_module["background-".concat(backgroundColor)];
382
+ return (React__default.default.createElement(dynamicMixins$1.BaseModal, { open: open, ref: ref, container: container, dataTestId: dataTestId, zIndex: zIndex, onClose: onClose, usePortal: usePortal, scrollHandler: scrollableContainer, Backdrop: Component.SwipeableBackdrop, backdropProps: tslib.__assign(tslib.__assign({}, backdropProps), { className: index_module.disabledPointerEvents, opacity: backdropOpacity, opacityTimeout: utils.TIMEOUT, invisible: hideOverlay }), disableBackdropClick: hideOverlay ? true : disableOverlayClick, className: cn__default.default(index_module.modal, modalClassName), wrapperClassName: cn__default.default(modalWrapperClassName, (_b = {},
383
+ _b[index_module.disabledPointerEvents] = hideOverlay,
384
+ _b)), disableBlockingScroll: disableBlockingScroll, disableFocusLock: disableFocusLock, transitionProps: tslib.__assign(tslib.__assign({ appear: true, timeout: utils.TIMEOUT, classNames: index_module }, transitionProps), { onExited: handleExited, onEntered: handleEntered, onEnter: handleEnter, onExit: handleExit }), disableAutoFocus: disableAutoFocus, disableEscapeKeyDown: disableEscapeKeyDown, disableRestoreFocus: disableRestoreFocus, keepMounted: keepMounted, iOSLock: iOSLock },
385
+ React__default.default.createElement("div", { className: cn__default.default(index_module.wrapper, (_c = {},
386
+ _c[index_module.fullscreen] = headerOffset === 0 && sheetOffset === 0,
387
+ _c)), onTransitionEnd: setSheetHeight },
388
+ React__default.default.createElement("div", tslib.__assign({ className: cn__default.default(index_module.component, bgClassName, className, (_d = {},
389
+ _d[index_module.withTransition] = swipingInProgress === false,
390
+ _d[index_module.safeAreaBottom] = dynamicMixins.os.isIOS(),
391
+ _d)), style: tslib.__assign(tslib.__assign({}, getSwipeStyles()), getHeightStyles()) }, sheetSwipeableHandlers, { ref: mergeRefs__default.default([sheetRef, sheetContainerRef, sheetSwipeableHandlers.ref]), onTransitionEnd: handleTransitionEnd }),
392
+ renderMarker(),
393
+ React__default.default.createElement("div", tslib.__assign({}, containerProps, { className: cn__default.default(index_module.scrollableContainer, containerProps === null || containerProps === void 0 ? void 0 : containerProps.className, containerClassName, (_e = {},
394
+ _e[index_module.scrollLocked] = scrollLockedProp || swipingInProgress,
395
+ _e[index_module.hiddenScrollbar] = hideScrollbar,
396
+ _e)), ref: mergeRefs__default.default([scrollableContainer, scrollableContainerRef]) }),
397
+ !hideHeader && !emptyHeader && (React__default.default.createElement(Component$1.Header, tslib.__assign({}, headerProps, { showSwipeMarker: showSwipeMarker }))),
398
+ React__default.default.createElement("div", { ref: contentRef, className: cn__default.default(index_module.content, contentClassName, (_f = {},
399
+ _f[index_module.noHeader] = hideHeader || emptyHeader,
400
+ _f[index_module.noFooter] = !actionButton,
401
+ _f)), "data-test-id": dynamicMixins.getDataTestId(dataTestId, 'content') }, children),
402
+ actionButton && (React__default.default.createElement(Component$2.Footer, { sticky: stickyFooter, className: cn__default.default(bgClassName, footerClassName), dataTestId: dynamicMixins.getDataTestId(dataTestId, 'footer') }, actionButton)))))));
403
+ });
404
+ BottomSheet.displayName = 'BottomSheet';
405
+
406
+ exports.BottomSheet = BottomSheet;
407
+ //# sourceMappingURL=component.js.map