@alfalab/core-components-modal 6.0.10 → 6.0.12

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 (203) hide show
  1. package/Component.d.ts +12 -0
  2. package/Component.desktop.d.ts +5 -44
  3. package/Component.desktop.js +14 -43
  4. package/Component.js +65 -0
  5. package/Component.mobile.d.ts +5 -18
  6. package/Component.mobile.js +13 -21
  7. package/Component.responsive.d.ts +5 -21
  8. package/Component.responsive.js +12 -34
  9. package/ResponsiveContext.d.ts +5 -0
  10. package/ResponsiveContext.js +16 -0
  11. package/components/closer/Component.js +3 -3
  12. package/components/closer/index.css +4 -4
  13. package/components/content/Component.d.ts +3 -16
  14. package/components/content/Component.js +11 -1
  15. package/components/content/desktop.css +8 -8
  16. package/components/content/index.css +3 -3
  17. package/components/content/mobile.css +3 -3
  18. package/components/footer/Component.js +15 -2
  19. package/components/footer/desktop.css +9 -9
  20. package/components/footer/index.css +4 -4
  21. package/components/footer/layout.css +25 -25
  22. package/components/footer/mobile.css +3 -3
  23. package/components/header/Component.d.ts +49 -0
  24. package/components/header/Component.js +57 -5
  25. package/components/header/desktop.css +17 -17
  26. package/components/header/index.css +15 -15
  27. package/components/header/mobile.css +3 -3
  28. package/cssm/Component.d.ts +12 -0
  29. package/cssm/Component.desktop.d.ts +5 -44
  30. package/cssm/Component.desktop.js +22 -45
  31. package/cssm/Component.js +62 -0
  32. package/cssm/Component.mobile.d.ts +5 -18
  33. package/cssm/Component.mobile.js +20 -22
  34. package/cssm/Component.responsive.d.ts +5 -21
  35. package/cssm/Component.responsive.js +18 -39
  36. package/cssm/ResponsiveContext.d.ts +5 -0
  37. package/cssm/ResponsiveContext.js +16 -0
  38. package/cssm/components/closer/Component.js +1 -1
  39. package/cssm/components/content/Component.d.ts +3 -16
  40. package/cssm/components/content/Component.js +8 -0
  41. package/cssm/components/footer/Component.js +11 -0
  42. package/cssm/components/header/Component.d.ts +49 -0
  43. package/cssm/components/header/Component.js +55 -6
  44. package/cssm/desktop.js +13 -9
  45. package/cssm/index.d.ts +1 -0
  46. package/cssm/index.js +13 -19
  47. package/cssm/mobile.js +13 -9
  48. package/cssm/responsive.js +13 -19
  49. package/cssm/typings.d.ts +52 -0
  50. package/cssm/typings.js +2 -0
  51. package/desktop.css +9 -9
  52. package/desktop.js +7 -8
  53. package/esm/Component.d.ts +12 -0
  54. package/esm/Component.desktop.d.ts +5 -44
  55. package/esm/Component.desktop.js +15 -42
  56. package/esm/Component.js +55 -0
  57. package/esm/Component.mobile.d.ts +5 -18
  58. package/esm/Component.mobile.js +13 -20
  59. package/esm/Component.responsive.d.ts +5 -21
  60. package/esm/Component.responsive.js +13 -35
  61. package/esm/ResponsiveContext.d.ts +5 -0
  62. package/esm/ResponsiveContext.js +8 -0
  63. package/esm/components/closer/Component.js +3 -3
  64. package/esm/components/closer/index.css +4 -4
  65. package/esm/components/content/Component.d.ts +3 -16
  66. package/esm/components/content/Component.js +11 -1
  67. package/esm/components/content/desktop.css +8 -8
  68. package/esm/components/content/index.css +3 -3
  69. package/esm/components/content/mobile.css +3 -3
  70. package/esm/components/footer/Component.js +15 -2
  71. package/esm/components/footer/desktop.css +9 -9
  72. package/esm/components/footer/index.css +4 -4
  73. package/esm/components/footer/layout.css +25 -25
  74. package/esm/components/footer/mobile.css +3 -3
  75. package/esm/components/header/Component.d.ts +49 -0
  76. package/esm/components/header/Component.js +55 -4
  77. package/esm/components/header/desktop.css +17 -17
  78. package/esm/components/header/index.css +15 -15
  79. package/esm/components/header/mobile.css +3 -3
  80. package/esm/desktop.css +9 -9
  81. package/esm/desktop.js +7 -8
  82. package/esm/index.d.ts +1 -0
  83. package/esm/index.js +6 -13
  84. package/esm/mobile.css +2 -2
  85. package/esm/mobile.js +6 -7
  86. package/esm/responsive.js +6 -13
  87. package/esm/transitions.css +8 -8
  88. package/esm/{tslib.es6-cd2fa46f.d.ts → tslib.es6-056b72d0.d.ts} +0 -0
  89. package/esm/{tslib.es6-cd2fa46f.js → tslib.es6-056b72d0.js} +1 -1
  90. package/esm/typings.d.ts +52 -0
  91. package/esm/typings.js +1 -0
  92. package/index.d.ts +1 -0
  93. package/index.js +6 -13
  94. package/mobile.css +2 -2
  95. package/mobile.js +6 -7
  96. package/modern/Component.d.ts +12 -0
  97. package/modern/Component.desktop.d.ts +5 -44
  98. package/modern/Component.desktop.js +14 -44
  99. package/modern/Component.js +62 -0
  100. package/modern/Component.mobile.d.ts +5 -18
  101. package/modern/Component.mobile.js +12 -19
  102. package/modern/Component.responsive.d.ts +5 -21
  103. package/modern/Component.responsive.js +12 -34
  104. package/modern/ResponsiveContext.d.ts +5 -0
  105. package/modern/ResponsiveContext.js +8 -0
  106. package/modern/components/closer/Component.js +2 -2
  107. package/modern/components/closer/index.css +4 -4
  108. package/modern/components/content/Component.d.ts +3 -16
  109. package/modern/components/content/Component.js +11 -1
  110. package/modern/components/content/desktop.css +8 -8
  111. package/modern/components/content/index.css +3 -3
  112. package/modern/components/content/mobile.css +3 -3
  113. package/modern/components/footer/Component.js +15 -2
  114. package/modern/components/footer/desktop.css +9 -9
  115. package/modern/components/footer/index.css +4 -4
  116. package/modern/components/footer/layout.css +25 -25
  117. package/modern/components/footer/mobile.css +3 -3
  118. package/modern/components/header/Component.d.ts +49 -0
  119. package/modern/components/header/Component.js +52 -4
  120. package/modern/components/header/desktop.css +17 -17
  121. package/modern/components/header/index.css +15 -15
  122. package/modern/components/header/mobile.css +3 -3
  123. package/modern/desktop.css +9 -9
  124. package/modern/desktop.js +6 -7
  125. package/modern/index.d.ts +1 -0
  126. package/modern/index.js +5 -12
  127. package/modern/mobile.css +2 -2
  128. package/modern/mobile.js +5 -6
  129. package/modern/responsive.js +5 -12
  130. package/modern/transitions.css +8 -8
  131. package/modern/typings.d.ts +52 -0
  132. package/modern/typings.js +1 -0
  133. package/package.json +4 -4
  134. package/responsive.js +6 -13
  135. package/send-stats.js +1 -1
  136. package/transitions.css +8 -8
  137. package/{tslib.es6-93e97f54.d.ts → tslib.es6-0c9325d7.d.ts} +0 -0
  138. package/{tslib.es6-93e97f54.js → tslib.es6-0c9325d7.js} +0 -0
  139. package/typings.d.ts +52 -0
  140. package/typings.js +2 -0
  141. package/Component-cacd0e72.d.ts +0 -50
  142. package/Component-cacd0e72.js +0 -43
  143. package/components/content/Component.desktop.d.ts +0 -11
  144. package/components/content/Component.desktop.js +0 -25
  145. package/components/content/Component.mobile.d.ts +0 -5
  146. package/components/content/Component.mobile.js +0 -25
  147. package/components/footer/Component.desktop.d.ts +0 -11
  148. package/components/footer/Component.desktop.js +0 -28
  149. package/components/footer/Component.mobile.d.ts +0 -5
  150. package/components/footer/Component.mobile.js +0 -28
  151. package/components/header/Component.desktop.d.ts +0 -15
  152. package/components/header/Component.desktop.js +0 -33
  153. package/components/header/Component.mobile.d.ts +0 -10
  154. package/components/header/Component.mobile.js +0 -33
  155. package/cssm/Component-5fe52731.d.ts +0 -50
  156. package/cssm/Component-5fe52731.js +0 -42
  157. package/cssm/components/content/Component.desktop.d.ts +0 -11
  158. package/cssm/components/content/Component.desktop.js +0 -25
  159. package/cssm/components/content/Component.mobile.d.ts +0 -5
  160. package/cssm/components/content/Component.mobile.js +0 -25
  161. package/cssm/components/footer/Component.desktop.d.ts +0 -11
  162. package/cssm/components/footer/Component.desktop.js +0 -29
  163. package/cssm/components/footer/Component.mobile.d.ts +0 -5
  164. package/cssm/components/footer/Component.mobile.js +0 -29
  165. package/cssm/components/header/Component.desktop.d.ts +0 -15
  166. package/cssm/components/header/Component.desktop.js +0 -34
  167. package/cssm/components/header/Component.mobile.d.ts +0 -10
  168. package/cssm/components/header/Component.mobile.js +0 -34
  169. package/cssm/getDataTestId-3fe0d3e6.d.ts +0 -2
  170. package/esm/Component-f9c8a7ff.d.ts +0 -50
  171. package/esm/Component-f9c8a7ff.js +0 -35
  172. package/esm/components/content/Component.desktop.d.ts +0 -11
  173. package/esm/components/content/Component.desktop.js +0 -16
  174. package/esm/components/content/Component.mobile.d.ts +0 -5
  175. package/esm/components/content/Component.mobile.js +0 -16
  176. package/esm/components/footer/Component.desktop.d.ts +0 -11
  177. package/esm/components/footer/Component.desktop.js +0 -19
  178. package/esm/components/footer/Component.mobile.d.ts +0 -5
  179. package/esm/components/footer/Component.mobile.js +0 -19
  180. package/esm/components/header/Component.desktop.d.ts +0 -15
  181. package/esm/components/header/Component.desktop.js +0 -24
  182. package/esm/components/header/Component.mobile.d.ts +0 -10
  183. package/esm/components/header/Component.mobile.js +0 -23
  184. package/esm/getDataTestId-3fe0d3e6.d.ts +0 -2
  185. package/esm/transitions.module-a1e3a16d.js +0 -4
  186. package/getDataTestId-3fe0d3e6.d.ts +0 -2
  187. package/modern/Component-dc6c12bd.d.ts +0 -50
  188. package/modern/Component-dc6c12bd.js +0 -33
  189. package/modern/components/content/Component.desktop.d.ts +0 -11
  190. package/modern/components/content/Component.desktop.js +0 -12
  191. package/modern/components/content/Component.mobile.d.ts +0 -5
  192. package/modern/components/content/Component.mobile.js +0 -12
  193. package/modern/components/footer/Component.desktop.d.ts +0 -11
  194. package/modern/components/footer/Component.desktop.js +0 -14
  195. package/modern/components/footer/Component.mobile.d.ts +0 -5
  196. package/modern/components/footer/Component.mobile.js +0 -14
  197. package/modern/components/header/Component.desktop.d.ts +0 -15
  198. package/modern/components/header/Component.desktop.js +0 -21
  199. package/modern/components/header/Component.mobile.d.ts +0 -10
  200. package/modern/components/header/Component.mobile.js +0 -18
  201. package/modern/getDataTestId-3fe0d3e6.d.ts +0 -2
  202. package/modern/transitions.module-a1e3a16d.js +0 -4
  203. package/transitions.module-fc7cacd3.js +0 -6
package/cssm/desktop.js CHANGED
@@ -4,29 +4,33 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  require('./tslib.es6-9682e485.js');
6
6
  require('react');
7
- require('react-merge-refs');
8
7
  require('classnames');
9
- require('@alfalab/core-components-base-modal/cssm');
10
8
  require('@alfalab/core-components-icon-button/cssm');
11
9
  require('@alfalab/icons-glyph/CrossHeavyMIcon');
10
+ require('@alfalab/core-components-base-modal/cssm');
12
11
  require('./Context.js');
13
12
  require('./components/closer/index.module.css');
14
13
  require('./components/closer/Component.js');
14
+ require('./ResponsiveContext.js');
15
+ require('./components/content/desktop.module.css');
15
16
  require('./components/content/index.module.css');
17
+ require('./components/content/mobile.module.css');
16
18
  require('./components/content/Component.js');
17
- require('./components/content/desktop.module.css');
18
- require('./components/content/Component.desktop.js');
19
+ require('./components/footer/desktop.module.css');
19
20
  require('./components/footer/index.module.css');
20
21
  require('./components/footer/layout.module.css');
22
+ require('./components/footer/mobile.module.css');
21
23
  require('./components/footer/Component.js');
22
- require('./components/footer/desktop.module.css');
23
- require('./components/footer/Component.desktop.js');
24
- require('./Component-5fe52731.js');
25
- require('./components/header/index.module.css');
24
+ require('@alfalab/icons-glyph/CrossMIcon');
25
+ require('./components/header/Component.js');
26
26
  require('./components/header/desktop.module.css');
27
- require('./components/header/Component.desktop.js');
27
+ require('./components/header/index.module.css');
28
+ require('./components/header/mobile.module.css');
29
+ require('react-merge-refs');
28
30
  require('./desktop.module.css');
31
+ require('./mobile.module.css');
29
32
  require('./transitions.module.css');
33
+ require('./Component.js');
30
34
  var Component_desktop = require('./Component.desktop.js');
31
35
 
32
36
 
package/cssm/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  export * from "./responsive";
2
2
  export * from "./Context";
3
+ export * from "./typings";
package/cssm/index.js CHANGED
@@ -4,39 +4,33 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  require('./tslib.es6-9682e485.js');
6
6
  require('react');
7
- require('react-merge-refs');
8
7
  require('classnames');
9
- require('@alfalab/core-components-base-modal/cssm');
10
8
  require('@alfalab/core-components-icon-button/cssm');
11
9
  require('@alfalab/icons-glyph/CrossHeavyMIcon');
10
+ require('@alfalab/core-components-base-modal/cssm');
12
11
  var Context = require('./Context.js');
13
12
  require('./components/closer/index.module.css');
14
13
  require('./components/closer/Component.js');
14
+ require('./ResponsiveContext.js');
15
+ require('./components/content/desktop.module.css');
15
16
  require('./components/content/index.module.css');
17
+ require('./components/content/mobile.module.css');
16
18
  require('./components/content/Component.js');
17
- require('./components/content/desktop.module.css');
18
- require('./components/content/Component.desktop.js');
19
+ require('./components/footer/desktop.module.css');
19
20
  require('./components/footer/index.module.css');
20
21
  require('./components/footer/layout.module.css');
21
- require('./components/footer/Component.js');
22
- require('./components/footer/desktop.module.css');
23
- require('./components/footer/Component.desktop.js');
24
- require('./Component-5fe52731.js');
25
- require('./components/header/index.module.css');
26
- require('./components/header/desktop.module.css');
27
- require('./components/header/Component.desktop.js');
28
- require('./desktop.module.css');
29
- require('./transitions.module.css');
30
- require('./Component.desktop.js');
31
- require('./components/content/mobile.module.css');
32
- require('./components/content/Component.mobile.js');
33
22
  require('./components/footer/mobile.module.css');
34
- require('./components/footer/Component.mobile.js');
23
+ require('./components/footer/Component.js');
35
24
  require('@alfalab/icons-glyph/CrossMIcon');
25
+ require('./components/header/Component.js');
26
+ require('./components/header/desktop.module.css');
27
+ require('./components/header/index.module.css');
36
28
  require('./components/header/mobile.module.css');
37
- require('./components/header/Component.mobile.js');
29
+ require('react-merge-refs');
30
+ require('./desktop.module.css');
38
31
  require('./mobile.module.css');
39
- require('./Component.mobile.js');
32
+ require('./transitions.module.css');
33
+ require('./Component.js');
40
34
  require('@alfalab/hooks');
41
35
  var Component_responsive = require('./Component.responsive.js');
42
36
 
package/cssm/mobile.js CHANGED
@@ -5,28 +5,32 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  require('./tslib.es6-9682e485.js');
6
6
  require('react');
7
7
  require('classnames');
8
- require('@alfalab/core-components-base-modal/cssm');
9
8
  require('@alfalab/core-components-icon-button/cssm');
10
9
  require('@alfalab/icons-glyph/CrossHeavyMIcon');
10
+ require('@alfalab/core-components-base-modal/cssm');
11
11
  require('./Context.js');
12
12
  require('./components/closer/index.module.css');
13
13
  require('./components/closer/Component.js');
14
+ require('./ResponsiveContext.js');
15
+ require('./components/content/desktop.module.css');
14
16
  require('./components/content/index.module.css');
17
+ require('./components/content/mobile.module.css');
15
18
  require('./components/content/Component.js');
19
+ require('./components/footer/desktop.module.css');
16
20
  require('./components/footer/index.module.css');
17
21
  require('./components/footer/layout.module.css');
18
- require('./components/footer/Component.js');
19
- require('./Component-5fe52731.js');
20
- require('./components/header/index.module.css');
21
- require('./transitions.module.css');
22
- require('./components/content/mobile.module.css');
23
- require('./components/content/Component.mobile.js');
24
22
  require('./components/footer/mobile.module.css');
25
- require('./components/footer/Component.mobile.js');
23
+ require('./components/footer/Component.js');
26
24
  require('@alfalab/icons-glyph/CrossMIcon');
25
+ require('./components/header/Component.js');
26
+ require('./components/header/desktop.module.css');
27
+ require('./components/header/index.module.css');
27
28
  require('./components/header/mobile.module.css');
28
- require('./components/header/Component.mobile.js');
29
+ require('react-merge-refs');
30
+ require('./desktop.module.css');
29
31
  require('./mobile.module.css');
32
+ require('./transitions.module.css');
33
+ require('./Component.js');
30
34
  var Component_mobile = require('./Component.mobile.js');
31
35
 
32
36
 
@@ -4,39 +4,33 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  require('./tslib.es6-9682e485.js');
6
6
  require('react');
7
- require('react-merge-refs');
8
7
  require('classnames');
9
- require('@alfalab/core-components-base-modal/cssm');
10
8
  require('@alfalab/core-components-icon-button/cssm');
11
9
  require('@alfalab/icons-glyph/CrossHeavyMIcon');
10
+ require('@alfalab/core-components-base-modal/cssm');
12
11
  require('./Context.js');
13
12
  require('./components/closer/index.module.css');
14
13
  require('./components/closer/Component.js');
14
+ require('./ResponsiveContext.js');
15
+ require('./components/content/desktop.module.css');
15
16
  require('./components/content/index.module.css');
17
+ require('./components/content/mobile.module.css');
16
18
  require('./components/content/Component.js');
17
- require('./components/content/desktop.module.css');
18
- require('./components/content/Component.desktop.js');
19
+ require('./components/footer/desktop.module.css');
19
20
  require('./components/footer/index.module.css');
20
21
  require('./components/footer/layout.module.css');
21
- require('./components/footer/Component.js');
22
- require('./components/footer/desktop.module.css');
23
- require('./components/footer/Component.desktop.js');
24
- require('./Component-5fe52731.js');
25
- require('./components/header/index.module.css');
26
- require('./components/header/desktop.module.css');
27
- require('./components/header/Component.desktop.js');
28
- require('./desktop.module.css');
29
- require('./transitions.module.css');
30
- require('./Component.desktop.js');
31
- require('./components/content/mobile.module.css');
32
- require('./components/content/Component.mobile.js');
33
22
  require('./components/footer/mobile.module.css');
34
- require('./components/footer/Component.mobile.js');
23
+ require('./components/footer/Component.js');
35
24
  require('@alfalab/icons-glyph/CrossMIcon');
25
+ require('./components/header/Component.js');
26
+ require('./components/header/desktop.module.css');
27
+ require('./components/header/index.module.css');
36
28
  require('./components/header/mobile.module.css');
37
- require('./components/header/Component.mobile.js');
29
+ require('react-merge-refs');
30
+ require('./desktop.module.css');
38
31
  require('./mobile.module.css');
39
- require('./Component.mobile.js');
32
+ require('./transitions.module.css');
33
+ require('./Component.js');
40
34
  require('@alfalab/hooks');
41
35
  var Component_responsive = require('./Component.responsive.js');
42
36
 
@@ -0,0 +1,52 @@
1
+ import { ReactNode } from 'react';
2
+ import { BaseModalProps } from "@alfalab/core-components-base-modal";
3
+ type ModalDesktopProps = BaseModalProps & {
4
+ /**
5
+ * Ширина модального окна
6
+ * @default "m"
7
+ */
8
+ size?: 's' | 'm' | 'l' | 'xl' | 'fullscreen';
9
+ /**
10
+ * Растягивает модальное окно на весь экран
11
+ * @deprecated Используйте размер fullscreen
12
+ */
13
+ fullscreen?: boolean;
14
+ /**
15
+ * Фиксирует позицию модального окна после открытия,
16
+ * предотвращая скачки, если контент внутри будет меняться
17
+ */
18
+ fixedPosition?: boolean;
19
+ /**
20
+ * Управление наличием закрывающего крестика
21
+ * @default false
22
+ */
23
+ hasCloser?: boolean;
24
+ };
25
+ type ModalMobileProps = Omit<ModalDesktopProps, 'size' | 'fixedPosition' | 'fullscreen'>;
26
+ type ModalResponsiveProps = ModalDesktopProps & {
27
+ /**
28
+ * Контрольная точка, с нее начинается desktop версия
29
+ * @default 1024
30
+ */
31
+ breakpoint?: number;
32
+ };
33
+ type View = 'desktop' | 'mobile';
34
+ type TResponsiveModalContext = {
35
+ view: View;
36
+ size: NonNullable<ModalDesktopProps['size']>;
37
+ };
38
+ type ContentProps = {
39
+ /**
40
+ * Контент
41
+ */
42
+ children?: ReactNode;
43
+ /**
44
+ * Дополнительный класс
45
+ */
46
+ className?: string;
47
+ /**
48
+ * Растягивает контент на всю высоту
49
+ */
50
+ flex?: boolean;
51
+ };
52
+ export { ModalDesktopProps, ModalMobileProps, ModalResponsiveProps, View, TResponsiveModalContext, ContentProps };
@@ -0,0 +1,2 @@
1
+ 'use strict';
2
+
package/desktop.css CHANGED
@@ -1,4 +1,4 @@
1
- /* hash: 1uv8g */
1
+ /* hash: xss4d */
2
2
  :root {
3
3
 
4
4
  /* Hard */
@@ -31,32 +31,32 @@
31
31
 
32
32
  /* mobile */
33
33
  }
34
- .modal__wrapper_1lhqp {
34
+ .modal__wrapper_1kgjw {
35
35
  padding-top: var(--modal-vertical-padding);
36
36
  padding-bottom: var(--modal-vertical-padding);
37
37
  }
38
- .modal__component_1lhqp {
38
+ .modal__component_1kgjw {
39
39
  width: 100%;
40
40
  max-width: 100%;
41
41
  border-radius: var(--modal-border-radius);
42
42
  }
43
- .modal__fullscreen_1lhqp {
43
+ .modal__fullscreen_1kgjw {
44
44
  padding-top: 0;
45
45
  padding-bottom: 0
46
46
  }
47
- .modal__fullscreen_1lhqp .modal__component_1lhqp {
47
+ .modal__fullscreen_1kgjw .modal__component_1kgjw {
48
48
  flex: 1;
49
49
  border-radius: 0;
50
50
  }
51
- .modal__s_1lhqp {
51
+ .modal__s_1kgjw {
52
52
  width: var(--modal-s-width);
53
53
  }
54
- .modal__m_1lhqp {
54
+ .modal__m_1kgjw {
55
55
  width: var(--modal-m-width);
56
56
  }
57
- .modal__l_1lhqp {
57
+ .modal__l_1kgjw {
58
58
  width: var(--modal-l-width);
59
59
  }
60
- .modal__xl_1lhqp {
60
+ .modal__xl_1kgjw {
61
61
  width: var(--modal-xl-width);
62
62
  }
package/desktop.js CHANGED
@@ -2,23 +2,22 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('./tslib.es6-93e97f54.js');
5
+ require('./tslib.es6-0c9325d7.js');
6
6
  require('react');
7
- require('react-merge-refs');
8
7
  require('classnames');
9
- require('@alfalab/core-components-base-modal');
10
8
  require('@alfalab/core-components-icon-button');
11
9
  require('@alfalab/icons-glyph/CrossHeavyMIcon');
10
+ require('@alfalab/core-components-base-modal');
12
11
  require('./Context.js');
13
12
  require('./components/closer/Component.js');
13
+ require('./ResponsiveContext.js');
14
14
  require('./components/content/Component.js');
15
- require('./components/content/Component.desktop.js');
16
15
  require('./components/footer/Component.js');
17
- require('./components/footer/Component.desktop.js');
18
- require('./Component-cacd0e72.js');
19
- require('./components/header/Component.desktop.js');
16
+ require('@alfalab/icons-glyph/CrossMIcon');
17
+ require('./components/header/Component.js');
18
+ require('react-merge-refs');
19
+ require('./Component.js');
20
20
  var Component_desktop = require('./Component.desktop.js');
21
- require('./transitions.module-fc7cacd3.js');
22
21
 
23
22
 
24
23
 
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ import React from 'react';
3
+ import { View } from "./typings";
4
+ declare const Modal: React.ForwardRefExoticComponent<import("@alfalab/core-components-base-modal").BaseModalProps & {
5
+ size?: "s" | "m" | "l" | "xl" | "fullscreen" | undefined;
6
+ fullscreen?: boolean | undefined;
7
+ fixedPosition?: boolean | undefined;
8
+ hasCloser?: boolean | undefined;
9
+ } & {
10
+ view: View;
11
+ } & React.RefAttributes<HTMLDivElement>>;
12
+ export { Modal };
@@ -1,53 +1,14 @@
1
1
  /// <reference types="react" />
2
2
  import React from 'react';
3
- import { BaseModalProps } from "@alfalab/core-components-base-modal";
4
- type ModalDesktopProps = BaseModalProps & {
5
- /**
6
- * Ширина модального окна
7
- * @default "m"
8
- */
9
- size?: 's' | 'm' | 'l' | 'xl' | 'fullscreen';
10
- /**
11
- * Растягивает модальное окно на весь экран
12
- * @deprecated Используйте размер fullscreen
13
- */
14
- fullscreen?: boolean;
15
- /**
16
- * Фиксирует позицию модального окна после открытия,
17
- * предотвращая скачки, если контент внутри будет меняться
18
- */
19
- fixedPosition?: boolean;
20
- /**
21
- * Управление наличием закрывающего крестика
22
- * @default false
23
- */
24
- hasCloser?: boolean;
25
- };
26
- declare const ModalDesktop: React.ForwardRefExoticComponent<BaseModalProps & {
27
- /**
28
- * Ширина модального окна
29
- * @default "m"
30
- */
3
+ declare const ModalDesktop: React.ForwardRefExoticComponent<import("packages/base-modal/src").BaseModalProps & {
31
4
  size?: "s" | "m" | "l" | "xl" | "fullscreen" | undefined;
32
- /**
33
- * Растягивает модальное окно на весь экран
34
- * @deprecated Используйте размер fullscreen
35
- */
36
5
  fullscreen?: boolean | undefined;
37
- /**
38
- * Фиксирует позицию модального окна после открытия,
39
- * предотвращая скачки, если контент внутри будет меняться
40
- */
41
6
  fixedPosition?: boolean | undefined;
42
- /**
43
- * Управление наличием закрывающего крестика
44
- * @default false
45
- */
46
7
  hasCloser?: boolean | undefined;
47
8
  } & React.RefAttributes<HTMLDivElement>> & {
48
- Content: React.FC<import("./components/content/Component.desktop").ContentDesktopProps>;
49
- Header: React.FC<import("./components/header/Component.desktop").HeaderDesktopProps>;
50
- Footer: React.FC<import("./components/footer/Component.desktop").FooterDesktopProps>;
9
+ Content: React.FC<import("./typings").ContentProps>;
10
+ Header: React.FC<import("./components/header/Component").HeaderProps>;
11
+ Footer: React.FC<import("./components/footer/Component").FooterProps>;
51
12
  Closer: React.FC<import("./components/closer/Component").CloserProps>;
52
13
  };
53
- export { ModalDesktopProps, ModalDesktop };
14
+ export { ModalDesktop };
@@ -1,51 +1,24 @@
1
- import { _ as __rest, a as __assign } from './tslib.es6-cd2fa46f.js';
2
- import React, { forwardRef, useRef, useCallback, isValidElement, cloneElement } from 'react';
3
- import mergeRefs from 'react-merge-refs';
4
- import cn from 'classnames';
5
- import { BaseModal } from '@alfalab/core-components-base-modal/esm';
1
+ import { _ as __assign } from './tslib.es6-056b72d0.js';
2
+ import React, { forwardRef } from 'react';
3
+ import 'classnames';
6
4
  import '@alfalab/core-components-icon-button/esm';
7
5
  import '@alfalab/icons-glyph/CrossHeavyMIcon';
6
+ import '@alfalab/core-components-base-modal/esm';
8
7
  import './Context.js';
9
8
  import { Closer } from './components/closer/Component.js';
10
- import './components/content/Component.js';
11
- import { ContentDesktop } from './components/content/Component.desktop.js';
12
- import './components/footer/Component.js';
13
- import { FooterDesktop } from './components/footer/Component.desktop.js';
14
- import './Component-f9c8a7ff.js';
15
- import { HeaderDesktop } from './components/header/Component.desktop.js';
16
- import { t as transitions } from './transitions.module-a1e3a16d.js';
9
+ import './ResponsiveContext.js';
10
+ import { Content } from './components/content/Component.js';
11
+ import { Footer } from './components/footer/Component.js';
12
+ import '@alfalab/icons-glyph/CrossMIcon';
13
+ import { Header } from './components/header/Component.js';
14
+ import 'react-merge-refs';
15
+ import { Modal } from './Component.js';
17
16
 
18
- var styles = {"wrapper":"modal__wrapper_1lhqp","component":"modal__component_1lhqp","fullscreen":"modal__fullscreen_1lhqp","s":"modal__s_1lhqp","m":"modal__m_1lhqp","l":"modal__l_1lhqp","xl":"modal__xl_1lhqp"};
19
- require('./desktop.css')
20
-
21
- var ModalDesktopComponent = forwardRef(function (_a, ref) {
22
- var _b;
23
- var _c = _a.size, size = _c === void 0 ? 's' : _c, fixedPosition = _a.fixedPosition, fullscreen = _a.fullscreen, children = _a.children, className = _a.className, wrapperClassName = _a.wrapperClassName, _d = _a.transitionProps, transitionProps = _d === void 0 ? {} : _d, restProps = __rest(_a, ["size", "fixedPosition", "fullscreen", "children", "className", "wrapperClassName", "transitionProps"]);
24
- // TODO: удалить, после удаления пропсы fullscreen
25
- var componentSize = fullscreen ? 'fullscreen' : size;
26
- var modalRef = useRef(null);
27
- var handleEntered = useCallback(function (node, isAppearing) {
28
- if (fixedPosition && modalRef.current) {
29
- var content = modalRef.current.querySelector("." + styles.component);
30
- if (content) {
31
- var marginTop = window.getComputedStyle(content).marginTop;
32
- content.style.marginTop = marginTop;
33
- }
34
- }
35
- if (transitionProps.onEntered) {
36
- transitionProps.onEntered(node, isAppearing);
37
- }
38
- }, [fixedPosition, transitionProps]);
39
- return (React.createElement(BaseModal, __assign({}, restProps, { ref: mergeRefs([ref, modalRef]), wrapperClassName: cn(styles.wrapper, wrapperClassName, (_b = {},
40
- _b[styles.fullscreen] = componentSize === 'fullscreen',
41
- _b)), className: cn(styles.component, className, styles[componentSize]), backdropProps: __assign({ invisible: componentSize === 'fullscreen' }, restProps.backdropProps), transitionProps: __assign(__assign({ classNames: transitions }, transitionProps), { onEntered: handleEntered }) }), React.Children.map(children, function (child) {
42
- return isValidElement(child) ? cloneElement(child, { size: componentSize }) : child;
43
- })));
44
- });
17
+ var ModalDesktopComponent = forwardRef(function (props, ref) { return (React.createElement(Modal, __assign({}, props, { ref: ref, view: 'desktop' }))); });
45
18
  var ModalDesktop = Object.assign(ModalDesktopComponent, {
46
- Content: ContentDesktop,
47
- Header: HeaderDesktop,
48
- Footer: FooterDesktop,
19
+ Content: Content,
20
+ Header: Header,
21
+ Footer: Footer,
49
22
  Closer: Closer,
50
23
  });
51
24
 
@@ -0,0 +1,55 @@
1
+ import { a as __rest, _ as __assign } from './tslib.es6-056b72d0.js';
2
+ import React, { forwardRef, useRef, useMemo } from 'react';
3
+ import cn from 'classnames';
4
+ import { BaseModal } from '@alfalab/core-components-base-modal/esm';
5
+ import { ResponsiveContext } from './ResponsiveContext.js';
6
+ import mergeRefs from 'react-merge-refs';
7
+
8
+ var desktopStyles = {"wrapper":"modal__wrapper_1kgjw","component":"modal__component_1kgjw","fullscreen":"modal__fullscreen_1kgjw","s":"modal__s_1kgjw","m":"modal__m_1kgjw","l":"modal__l_1kgjw","xl":"modal__xl_1kgjw"};
9
+ require('./desktop.css')
10
+
11
+ var mobileStyles = {"component":"modal__component_1po45"};
12
+ require('./mobile.css')
13
+
14
+ var transitions = {"appear":"modal__appear_5a8sg","enter":"modal__enter_5a8sg","appearActive":"modal__appearActive_5a8sg","enterActive":"modal__enterActive_5a8sg","exit":"modal__exit_5a8sg","exitActive":"modal__exitActive_5a8sg","exitDone":"modal__exitDone_5a8sg"};
15
+ require('./transitions.css')
16
+
17
+ var Modal = forwardRef(function (_a, ref) {
18
+ var _b;
19
+ var _c = _a.size, size = _c === void 0 ? 's' : _c, fixedPosition = _a.fixedPosition, fullscreen = _a.fullscreen, children = _a.children, className = _a.className, wrapperClassName = _a.wrapperClassName, _d = _a.transitionProps, transitionProps = _d === void 0 ? {} : _d, view = _a.view, restProps = __rest(_a, ["size", "fixedPosition", "fullscreen", "children", "className", "wrapperClassName", "transitionProps", "view"]);
20
+ // TODO: удалить, после удаления пропсы fullscreen
21
+ var componentSize = fullscreen ? 'fullscreen' : size;
22
+ var modalRef = useRef(null);
23
+ var handleEntered = function (node, isAppearing) {
24
+ if (fixedPosition && modalRef.current) {
25
+ var content = modalRef.current.querySelector("." + desktopStyles.component);
26
+ if (content) {
27
+ var marginTop = window.getComputedStyle(content).marginTop;
28
+ content.style.marginTop = marginTop;
29
+ }
30
+ }
31
+ if (transitionProps.onEntered) {
32
+ transitionProps.onEntered(node, isAppearing);
33
+ }
34
+ };
35
+ var baseModalProps = view === 'desktop'
36
+ ? {
37
+ ref: mergeRefs([ref, modalRef]),
38
+ wrapperClassName: cn(desktopStyles.wrapper, wrapperClassName, (_b = {},
39
+ _b[desktopStyles.fullscreen] = componentSize === 'fullscreen',
40
+ _b)),
41
+ className: cn(desktopStyles.component, className, desktopStyles[componentSize]),
42
+ backdropProps: __assign({ invisible: componentSize === 'fullscreen' }, restProps.backdropProps),
43
+ transitionProps: __assign(__assign({ classNames: transitions }, transitionProps), { onEntered: handleEntered }),
44
+ }
45
+ : {
46
+ ref: ref,
47
+ transitionProps: __assign({ classNames: transitions }, transitionProps),
48
+ className: cn(className, mobileStyles.component),
49
+ };
50
+ var contextValue = useMemo(function () { return ({ size: componentSize, view: view }); }, [componentSize, view]);
51
+ return (React.createElement(ResponsiveContext.Provider, { value: contextValue },
52
+ React.createElement(BaseModal, __assign({}, restProps, baseModalProps), children)));
53
+ });
54
+
55
+ export { Modal };
@@ -1,23 +1,10 @@
1
1
  /// <reference types="react" />
2
2
  import React from 'react';
3
- import { BaseModalProps } from "@alfalab/core-components-base-modal";
4
- type ModalMobileProps = BaseModalProps & {
5
- /**
6
- * Управление наличием закрывающего крестика
7
- * @default false
8
- */
9
- hasCloser?: boolean;
10
- };
11
- declare const ModalMobile: 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>;
3
+ import { ModalMobileProps } from "./typings";
4
+ declare const ModalMobile: React.ForwardRefExoticComponent<ModalMobileProps & React.RefAttributes<HTMLDivElement>> & {
5
+ Content: React.FC<import("./typings").ContentProps>;
6
+ Header: React.FC<import("./components/header/Component").HeaderProps>;
20
7
  Footer: React.FC<import("./components/footer/Component").FooterProps>;
21
8
  Closer: React.FC<import("./components/closer/Component").CloserProps>;
22
9
  };
23
- export { ModalMobileProps, ModalMobile };
10
+ export { ModalMobile };
@@ -1,31 +1,24 @@
1
- import { _ as __rest, a as __assign } from './tslib.es6-cd2fa46f.js';
1
+ import { _ as __assign } from './tslib.es6-056b72d0.js';
2
2
  import React, { forwardRef } from 'react';
3
- import cn from 'classnames';
4
- import { BaseModal } from '@alfalab/core-components-base-modal/esm';
3
+ import 'classnames';
5
4
  import '@alfalab/core-components-icon-button/esm';
6
5
  import '@alfalab/icons-glyph/CrossHeavyMIcon';
6
+ import '@alfalab/core-components-base-modal/esm';
7
7
  import './Context.js';
8
8
  import { Closer } from './components/closer/Component.js';
9
- import './components/content/Component.js';
10
- import './components/footer/Component.js';
11
- import './Component-f9c8a7ff.js';
12
- import { t as transitions } from './transitions.module-a1e3a16d.js';
13
- import { ContentMobile } from './components/content/Component.mobile.js';
14
- import { FooterMobile } from './components/footer/Component.mobile.js';
9
+ import './ResponsiveContext.js';
10
+ import { Content } from './components/content/Component.js';
11
+ import { Footer } from './components/footer/Component.js';
15
12
  import '@alfalab/icons-glyph/CrossMIcon';
16
- import { HeaderMobile } from './components/header/Component.mobile.js';
13
+ import { Header } from './components/header/Component.js';
14
+ import 'react-merge-refs';
15
+ import { Modal } from './Component.js';
17
16
 
18
- var styles = {"component":"modal__component_le65w"};
19
- require('./mobile.css')
20
-
21
- var ModalMobileComponent = forwardRef(function (_a, ref) {
22
- var children = _a.children, className = _a.className, restProps = __rest(_a, ["children", "className"]);
23
- return (React.createElement(BaseModal, __assign({}, restProps, { ref: ref, transitionProps: __assign({ classNames: transitions }, restProps.transitionProps), className: cn(className, styles.component) }), children));
24
- });
17
+ var ModalMobileComponent = forwardRef(function (props, ref) { return (React.createElement(Modal, __assign({}, props, { ref: ref, view: 'mobile' }))); });
25
18
  var ModalMobile = Object.assign(ModalMobileComponent, {
26
- Content: ContentMobile,
27
- Header: HeaderMobile,
28
- Footer: FooterMobile,
19
+ Content: Content,
20
+ Header: Header,
21
+ Footer: Footer,
29
22
  Closer: Closer,
30
23
  });
31
24