@salutejs/plasma-b2c 1.640.0-dev.0 → 1.641.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 (235) hide show
  1. package/README.md +2 -2
  2. package/dist/css/cjs/components/Autocomplete/Autocomplete.clear.config.js +46 -0
  3. package/dist/css/cjs/components/Autocomplete/Autocomplete.clear.config.js.map +1 -0
  4. package/dist/css/cjs/components/Autocomplete/Autocomplete.clear.config_1paus6e.css +15 -0
  5. package/dist/css/cjs/components/Autocomplete/Autocomplete.config.js +1 -1
  6. package/dist/css/cjs/components/Autocomplete/Autocomplete.config.js.map +1 -1
  7. package/dist/css/cjs/components/Autocomplete/Autocomplete.config_g9tbnn.css +15 -0
  8. package/dist/css/cjs/components/Autocomplete/Autocomplete.css +30 -14
  9. package/dist/css/cjs/components/Autocomplete/Autocomplete.js +10 -1
  10. package/dist/css/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  11. package/dist/css/cjs/components/DatePicker/DatePicker.clear.config.js +1 -1
  12. package/dist/css/cjs/components/DatePicker/DatePicker.clear.config.js.map +1 -1
  13. package/dist/css/cjs/components/DatePicker/DatePicker.clear.config_g58txx.css +13 -0
  14. package/dist/css/cjs/components/DatePicker/DatePicker.config.js +1 -1
  15. package/dist/css/cjs/components/DatePicker/DatePicker.config.js.map +1 -1
  16. package/dist/css/cjs/components/DatePicker/DatePicker.config_1yxdldh.css +13 -0
  17. package/dist/css/cjs/components/DatePicker/DatePicker.css +26 -26
  18. package/dist/css/cjs/components/DateTimePicker/DateTimePicker.clear.config.js +1 -1
  19. package/dist/css/cjs/components/DateTimePicker/DateTimePicker.clear.config.js.map +1 -1
  20. package/dist/css/cjs/components/DateTimePicker/DateTimePicker.clear.config_d8v946.css +13 -0
  21. package/dist/css/cjs/components/DateTimePicker/DateTimePicker.config.js +1 -1
  22. package/dist/css/cjs/components/DateTimePicker/DateTimePicker.config.js.map +1 -1
  23. package/dist/css/cjs/components/DateTimePicker/DateTimePicker.config_1wc65ll.css +13 -0
  24. package/dist/css/cjs/components/DateTimePicker/DateTimePicker.css +26 -26
  25. package/dist/css/cjs/components/InformationWrapper/InformationWrapper.config.js +1 -1
  26. package/dist/css/cjs/components/InformationWrapper/InformationWrapper.config.js.map +1 -1
  27. package/dist/css/cjs/components/InformationWrapper/{InformationWrapper.config_1glkttm.css → InformationWrapper.config_1iwwe6b.css} +4 -4
  28. package/dist/css/cjs/components/InformationWrapper/InformationWrapper.css +12 -12
  29. package/dist/css/cjs/components/Mask/Mask.css +42 -42
  30. package/dist/css/cjs/components/Range/Range.clear.config.js +1 -1
  31. package/dist/css/cjs/components/Range/Range.clear.config.js.map +1 -1
  32. package/dist/css/{es/components/Range/Range.clear.config_3l5zfi.css → cjs/components/Range/Range.clear.config_1e79wsw.css} +5 -5
  33. package/dist/css/cjs/components/Range/Range.config.js +1 -1
  34. package/dist/css/cjs/components/Range/Range.config.js.map +1 -1
  35. package/dist/css/{es/components/Range/Range.config_xzp7mw.css → cjs/components/Range/Range.config_1acoyog.css} +5 -5
  36. package/dist/css/cjs/components/Range/Range.css +22 -22
  37. package/dist/css/cjs/components/Select/Select.clear.config.js +60 -0
  38. package/dist/css/cjs/components/Select/Select.clear.config.js.map +1 -0
  39. package/dist/css/cjs/components/Select/Select.clear.config_1q8q0cy.css +24 -0
  40. package/dist/css/cjs/components/Select/Select.config.js +1 -1
  41. package/dist/css/cjs/components/Select/Select.config.js.map +1 -1
  42. package/dist/css/cjs/components/Select/Select.config_4jo2zr.css +24 -0
  43. package/dist/css/cjs/components/Select/Select.css +48 -23
  44. package/dist/css/cjs/components/Select/Select.js +8 -1
  45. package/dist/css/cjs/components/Select/Select.js.map +1 -1
  46. package/dist/css/cjs/components/TextArea/TextArea.clear.config.js +1 -1
  47. package/dist/css/cjs/components/TextArea/TextArea.clear.config.js.map +1 -1
  48. package/dist/css/{es/components/TextArea/TextArea.clear.config_1gcop6e.css → cjs/components/TextArea/TextArea.clear.config_m125ks.css} +5 -5
  49. package/dist/css/cjs/components/TextArea/TextArea.config.js +1 -1
  50. package/dist/css/cjs/components/TextArea/TextArea.config.js.map +1 -1
  51. package/dist/css/cjs/components/TextArea/{TextArea.config_lv30fy.css → TextArea.config_1fr7eme.css} +5 -5
  52. package/dist/css/cjs/components/TextArea/TextArea.css +30 -30
  53. package/dist/css/cjs/components/TextField/TextField.clear.config.js +1 -1
  54. package/dist/css/cjs/components/TextField/TextField.clear.config.js.map +1 -1
  55. package/dist/css/cjs/components/TextField/TextField.clear.config_17n2wtf.css +22 -0
  56. package/dist/css/cjs/components/TextField/TextField.config.js +1 -1
  57. package/dist/css/cjs/components/TextField/TextField.config.js.map +1 -1
  58. package/dist/css/{es/components/TextField/TextField.config_cl1zgq.css → cjs/components/TextField/TextField.config_x1az5u.css} +5 -5
  59. package/dist/css/cjs/components/TimePicker/TimePicker.config.js +1 -1
  60. package/dist/css/cjs/components/TimePicker/TimePicker.config.js.map +1 -1
  61. package/dist/css/cjs/components/TimePicker/TimePicker.config_17l3u8g.css +10 -0
  62. package/dist/css/cjs/components/TimePicker/TimePicker.css +10 -10
  63. package/dist/css/cjs/index.css +257 -216
  64. package/dist/css/es/components/Autocomplete/Autocomplete.clear.config.js +42 -0
  65. package/dist/css/es/components/Autocomplete/Autocomplete.clear.config.js.map +1 -0
  66. package/dist/css/es/components/Autocomplete/Autocomplete.clear.config_1paus6e.css +15 -0
  67. package/dist/css/es/components/Autocomplete/Autocomplete.config.js +1 -1
  68. package/dist/css/es/components/Autocomplete/Autocomplete.config.js.map +1 -1
  69. package/dist/css/es/components/Autocomplete/Autocomplete.config_g9tbnn.css +15 -0
  70. package/dist/css/es/components/Autocomplete/Autocomplete.css +30 -14
  71. package/dist/css/es/components/Autocomplete/Autocomplete.js +10 -3
  72. package/dist/css/es/components/Autocomplete/Autocomplete.js.map +1 -1
  73. package/dist/css/es/components/DatePicker/DatePicker.clear.config.js +1 -1
  74. package/dist/css/es/components/DatePicker/DatePicker.clear.config.js.map +1 -1
  75. package/dist/css/es/components/DatePicker/DatePicker.clear.config_g58txx.css +13 -0
  76. package/dist/css/es/components/DatePicker/DatePicker.config.js +1 -1
  77. package/dist/css/es/components/DatePicker/DatePicker.config.js.map +1 -1
  78. package/dist/css/es/components/DatePicker/DatePicker.config_1yxdldh.css +13 -0
  79. package/dist/css/es/components/DatePicker/DatePicker.css +26 -26
  80. package/dist/css/es/components/DateTimePicker/DateTimePicker.clear.config.js +1 -1
  81. package/dist/css/es/components/DateTimePicker/DateTimePicker.clear.config.js.map +1 -1
  82. package/dist/css/es/components/DateTimePicker/DateTimePicker.clear.config_d8v946.css +13 -0
  83. package/dist/css/es/components/DateTimePicker/DateTimePicker.config.js +1 -1
  84. package/dist/css/es/components/DateTimePicker/DateTimePicker.config.js.map +1 -1
  85. package/dist/css/es/components/DateTimePicker/DateTimePicker.config_1wc65ll.css +13 -0
  86. package/dist/css/es/components/DateTimePicker/DateTimePicker.css +26 -26
  87. package/dist/css/es/components/InformationWrapper/InformationWrapper.config.js +1 -1
  88. package/dist/css/es/components/InformationWrapper/InformationWrapper.config.js.map +1 -1
  89. package/dist/css/es/components/InformationWrapper/{InformationWrapper.config_1glkttm.css → InformationWrapper.config_1iwwe6b.css} +4 -4
  90. package/dist/css/es/components/InformationWrapper/InformationWrapper.css +12 -12
  91. package/dist/css/es/components/Mask/Mask.css +42 -42
  92. package/dist/css/es/components/Range/Range.clear.config.js +1 -1
  93. package/dist/css/es/components/Range/Range.clear.config.js.map +1 -1
  94. package/dist/css/{cjs/components/Range/Range.clear.config_3l5zfi.css → es/components/Range/Range.clear.config_1e79wsw.css} +5 -5
  95. package/dist/css/es/components/Range/Range.config.js +1 -1
  96. package/dist/css/es/components/Range/Range.config.js.map +1 -1
  97. package/dist/css/{cjs/components/Range/Range.config_xzp7mw.css → es/components/Range/Range.config_1acoyog.css} +5 -5
  98. package/dist/css/es/components/Range/Range.css +22 -22
  99. package/dist/css/es/components/Select/Select.clear.config.js +56 -0
  100. package/dist/css/es/components/Select/Select.clear.config.js.map +1 -0
  101. package/dist/css/es/components/Select/Select.clear.config_1q8q0cy.css +24 -0
  102. package/dist/css/es/components/Select/Select.config.js +1 -1
  103. package/dist/css/es/components/Select/Select.config.js.map +1 -1
  104. package/dist/css/es/components/Select/Select.config_4jo2zr.css +24 -0
  105. package/dist/css/es/components/Select/Select.css +48 -23
  106. package/dist/css/es/components/Select/Select.js +9 -2
  107. package/dist/css/es/components/Select/Select.js.map +1 -1
  108. package/dist/css/es/components/TextArea/TextArea.clear.config.js +1 -1
  109. package/dist/css/es/components/TextArea/TextArea.clear.config.js.map +1 -1
  110. package/dist/css/{cjs/components/TextArea/TextArea.clear.config_1gcop6e.css → es/components/TextArea/TextArea.clear.config_m125ks.css} +5 -5
  111. package/dist/css/es/components/TextArea/TextArea.config.js +1 -1
  112. package/dist/css/es/components/TextArea/TextArea.config.js.map +1 -1
  113. package/dist/css/es/components/TextArea/{TextArea.config_lv30fy.css → TextArea.config_1fr7eme.css} +5 -5
  114. package/dist/css/es/components/TextArea/TextArea.css +30 -30
  115. package/dist/css/es/components/TextField/TextField.clear.config.js +1 -1
  116. package/dist/css/es/components/TextField/TextField.clear.config.js.map +1 -1
  117. package/dist/css/es/components/TextField/TextField.clear.config_17n2wtf.css +22 -0
  118. package/dist/css/es/components/TextField/TextField.config.js +1 -1
  119. package/dist/css/es/components/TextField/TextField.config.js.map +1 -1
  120. package/dist/css/{cjs/components/TextField/TextField.config_cl1zgq.css → es/components/TextField/TextField.config_x1az5u.css} +5 -5
  121. package/dist/css/es/components/TimePicker/TimePicker.config.js +1 -1
  122. package/dist/css/es/components/TimePicker/TimePicker.config.js.map +1 -1
  123. package/dist/css/es/components/TimePicker/TimePicker.config_17l3u8g.css +10 -0
  124. package/dist/css/es/components/TimePicker/TimePicker.css +10 -10
  125. package/dist/css/es/index.css +257 -216
  126. package/dist/styled-components/cjs/components/Autocomplete/Autocomplete.clear.config.js +623 -0
  127. package/dist/styled-components/cjs/components/Autocomplete/Autocomplete.config.js +33 -0
  128. package/dist/styled-components/cjs/components/Autocomplete/Autocomplete.js +14 -1
  129. package/dist/styled-components/cjs/components/Card/Card.js +80 -0
  130. package/dist/styled-components/cjs/components/Card/CardBadge.js +88 -0
  131. package/dist/styled-components/cjs/components/Card/CardBody.js +23 -0
  132. package/dist/styled-components/cjs/components/Card/CardContent.js +71 -0
  133. package/dist/styled-components/cjs/components/Card/CardMedia.js +12 -0
  134. package/dist/styled-components/cjs/components/Card/index.js +11 -7
  135. package/dist/styled-components/cjs/components/DatePicker/DatePicker.clear.config.js +5 -0
  136. package/dist/styled-components/cjs/components/DatePicker/DatePicker.config.js +5 -0
  137. package/dist/styled-components/cjs/components/DateTimePicker/DateTimePicker.clear.config.js +5 -0
  138. package/dist/styled-components/cjs/components/DateTimePicker/DateTimePicker.config.js +5 -0
  139. package/dist/styled-components/cjs/components/InformationWrapper/InformationWrapper.config.js +4 -0
  140. package/dist/styled-components/cjs/components/Modal/Modal.js +195 -0
  141. package/dist/styled-components/cjs/components/Modal/ModalView.js +63 -0
  142. package/dist/styled-components/cjs/components/Modal/ModalsContext.js +113 -0
  143. package/dist/styled-components/cjs/components/Modal/index.js +6 -4
  144. package/dist/styled-components/cjs/components/Range/Range.clear.config.js +5 -0
  145. package/dist/styled-components/cjs/components/Range/Range.config.js +5 -0
  146. package/dist/styled-components/cjs/components/Select/Select.clear.config.js +1124 -0
  147. package/dist/styled-components/cjs/components/Select/Select.config.js +32 -0
  148. package/dist/styled-components/cjs/components/Select/Select.js +8 -1
  149. package/dist/styled-components/cjs/components/TextArea/TextArea.clear.config.js +5 -0
  150. package/dist/styled-components/cjs/components/TextArea/TextArea.config.js +5 -0
  151. package/dist/styled-components/cjs/components/TextField/TextField.clear.config.js +23 -3
  152. package/dist/styled-components/cjs/components/TextField/TextField.config.js +5 -0
  153. package/dist/styled-components/cjs/components/TimePicker/TimePicker.config.js +30 -0
  154. package/dist/styled-components/cjs/components/_Button/Button.js +72 -0
  155. package/dist/styled-components/cjs/components/_Button/Button.props.js +126 -0
  156. package/dist/styled-components/cjs/components/_Button/index.js +20 -0
  157. package/dist/styled-components/cjs/components/_Button/types.js +4 -0
  158. package/dist/styled-components/cjs/components/_Button/views/b2c/ButtonB2C.js +57 -0
  159. package/dist/styled-components/cjs/components/_Button/views/web/ButtonWeb.js +63 -0
  160. package/dist/styled-components/es/components/Autocomplete/Autocomplete.clear.config.js +613 -0
  161. package/dist/styled-components/es/components/Autocomplete/Autocomplete.config.js +33 -0
  162. package/dist/styled-components/es/components/Autocomplete/Autocomplete.js +9 -2
  163. package/dist/styled-components/es/components/Card/Card.js +24 -0
  164. package/dist/styled-components/es/components/Card/CardBadge.js +37 -0
  165. package/dist/styled-components/es/components/Card/CardBody.js +8 -0
  166. package/dist/styled-components/es/components/Card/CardContent.js +14 -0
  167. package/dist/styled-components/es/components/Card/CardMedia.js +2 -0
  168. package/dist/styled-components/es/components/Card/index.js +5 -5
  169. package/dist/styled-components/es/components/DatePicker/DatePicker.clear.config.js +5 -0
  170. package/dist/styled-components/es/components/DatePicker/DatePicker.config.js +5 -0
  171. package/dist/styled-components/es/components/DateTimePicker/DateTimePicker.clear.config.js +5 -0
  172. package/dist/styled-components/es/components/DateTimePicker/DateTimePicker.config.js +5 -0
  173. package/dist/styled-components/es/components/InformationWrapper/InformationWrapper.config.js +4 -0
  174. package/dist/styled-components/es/components/Modal/Modal.js +142 -0
  175. package/dist/styled-components/es/components/Modal/ModalView.js +50 -0
  176. package/dist/styled-components/es/components/Modal/ModalsContext.js +51 -0
  177. package/dist/styled-components/es/components/Modal/index.js +3 -1
  178. package/dist/styled-components/es/components/Range/Range.clear.config.js +5 -0
  179. package/dist/styled-components/es/components/Range/Range.config.js +5 -0
  180. package/dist/styled-components/es/components/Select/Select.clear.config.js +1114 -0
  181. package/dist/styled-components/es/components/Select/Select.config.js +32 -0
  182. package/dist/styled-components/es/components/Select/Select.js +9 -2
  183. package/dist/styled-components/es/components/TextArea/TextArea.clear.config.js +5 -0
  184. package/dist/styled-components/es/components/TextArea/TextArea.config.js +5 -0
  185. package/dist/styled-components/es/components/TextField/TextField.clear.config.js +23 -3
  186. package/dist/styled-components/es/components/TextField/TextField.config.js +5 -0
  187. package/dist/styled-components/es/components/TimePicker/TimePicker.config.js +30 -0
  188. package/dist/styled-components/es/components/_Button/Button.js +21 -0
  189. package/dist/styled-components/es/components/_Button/Button.props.js +71 -0
  190. package/dist/styled-components/es/components/_Button/index.js +2 -0
  191. package/dist/styled-components/es/components/_Button/types.js +1 -0
  192. package/dist/styled-components/es/components/_Button/views/b2c/ButtonB2C.js +42 -0
  193. package/dist/styled-components/es/components/_Button/views/web/ButtonWeb.js +48 -0
  194. package/package.json +15 -15
  195. package/types/components/Autocomplete/Autocomplete.clear.config.d.ts +38 -0
  196. package/types/components/Autocomplete/Autocomplete.d.ts +2000 -10
  197. package/types/components/Calendar/Calendar.d.ts +3 -1
  198. package/types/components/Card/Card.d.ts +16 -0
  199. package/types/components/Card/CardBadge.d.ts +12 -0
  200. package/types/components/Card/CardBody.d.ts +3 -0
  201. package/types/components/Card/CardContent.d.ts +8 -0
  202. package/types/components/Card/CardMedia.d.ts +3 -0
  203. package/types/components/Card/index.d.ts +9 -9
  204. package/types/components/DatePicker/DatePicker.d.ts +36 -36
  205. package/types/components/DateTimePicker/DateTimePicker.d.ts +8 -8
  206. package/types/components/Modal/Modal.d.ts +47 -0
  207. package/types/components/Modal/ModalView.d.ts +23 -0
  208. package/types/components/Modal/ModalsContext.d.ts +15 -0
  209. package/types/components/Modal/index.d.ts +4 -2
  210. package/types/components/Select/Select.clear.config.d.ts +52 -0
  211. package/types/components/Select/Select.d.ts +36 -10
  212. package/types/components/TimePicker/TimePicker.d.ts +2 -0
  213. package/types/components/_Button/Button.d.ts +3 -0
  214. package/types/components/_Button/Button.props.d.ts +37 -0
  215. package/types/components/_Button/index.d.ts +4 -0
  216. package/types/components/_Button/types.d.ts +16 -0
  217. package/types/components/_Button/views/b2c/ButtonB2C.d.ts +5 -0
  218. package/types/components/_Button/views/web/ButtonWeb.d.ts +5 -0
  219. package/types/mixins/index.d.ts +1 -1
  220. package/dist/css/cjs/components/Autocomplete/Autocomplete.config_1e65vh7.css +0 -15
  221. package/dist/css/cjs/components/DatePicker/DatePicker.clear.config_ohlkzl.css +0 -13
  222. package/dist/css/cjs/components/DatePicker/DatePicker.config_kcwbn.css +0 -13
  223. package/dist/css/cjs/components/DateTimePicker/DateTimePicker.clear.config_ycq0km.css +0 -13
  224. package/dist/css/cjs/components/DateTimePicker/DateTimePicker.config_144c0b0.css +0 -13
  225. package/dist/css/cjs/components/Select/Select.config_1pm79n3.css +0 -24
  226. package/dist/css/cjs/components/TextField/TextField.clear.config_1g82q62.css +0 -22
  227. package/dist/css/cjs/components/TimePicker/TimePicker.config_li48d3.css +0 -10
  228. package/dist/css/es/components/Autocomplete/Autocomplete.config_1e65vh7.css +0 -15
  229. package/dist/css/es/components/DatePicker/DatePicker.clear.config_ohlkzl.css +0 -13
  230. package/dist/css/es/components/DatePicker/DatePicker.config_kcwbn.css +0 -13
  231. package/dist/css/es/components/DateTimePicker/DateTimePicker.clear.config_ycq0km.css +0 -13
  232. package/dist/css/es/components/DateTimePicker/DateTimePicker.config_144c0b0.css +0 -13
  233. package/dist/css/es/components/Select/Select.config_1pm79n3.css +0 -24
  234. package/dist/css/es/components/TextField/TextField.clear.config_1g82q62.css +0 -22
  235. package/dist/css/es/components/TimePicker/TimePicker.config_li48d3.css +0 -10
@@ -0,0 +1,195 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "Modal", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return Modal;
9
+ }
10
+ });
11
+ const _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
12
+ const _reactdom = /*#__PURE__*/ _interop_require_default(require("react-dom"));
13
+ const _styledcomponents = /*#__PURE__*/ _interop_require_wildcard(require("styled-components"));
14
+ const _styledcomponents1 = require("@salutejs/plasma-new-hope/styled-components");
15
+ const _ModalsContext = require("./ModalsContext");
16
+ const _ModalView = require("./ModalView");
17
+ function _interop_require_default(obj) {
18
+ return obj && obj.__esModule ? obj : {
19
+ default: obj
20
+ };
21
+ }
22
+ function _getRequireWildcardCache(nodeInterop) {
23
+ if (typeof WeakMap !== "function") return null;
24
+ var cacheBabelInterop = new WeakMap();
25
+ var cacheNodeInterop = new WeakMap();
26
+ return (_getRequireWildcardCache = function(nodeInterop) {
27
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
28
+ })(nodeInterop);
29
+ }
30
+ function _interop_require_wildcard(obj, nodeInterop) {
31
+ if (!nodeInterop && obj && obj.__esModule) {
32
+ return obj;
33
+ }
34
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
35
+ return {
36
+ default: obj
37
+ };
38
+ }
39
+ var cache = _getRequireWildcardCache(nodeInterop);
40
+ if (cache && cache.has(obj)) {
41
+ return cache.get(obj);
42
+ }
43
+ var newObj = {
44
+ __proto__: null
45
+ };
46
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
47
+ for(var key in obj){
48
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
49
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
50
+ if (desc && (desc.get || desc.set)) {
51
+ Object.defineProperty(newObj, key, desc);
52
+ } else {
53
+ newObj[key] = obj[key];
54
+ }
55
+ }
56
+ }
57
+ newObj.default = obj;
58
+ if (cache) {
59
+ cache.set(obj, newObj);
60
+ }
61
+ return newObj;
62
+ }
63
+ const ESCAPE_KEYCODE = 27;
64
+ const wrapperHideAnimation = (0, _styledcomponents.keyframes)([
65
+ `from{opacity:1;}to{opacity:0;}`
66
+ ]);
67
+ const bodyShowAnimation = (0, _styledcomponents.keyframes)([
68
+ `from{opacity:0;transform:translateY(-100%);}to{opacity:1;transform:translateY(0);}`
69
+ ]);
70
+ const bodyHideAnimation = (0, _styledcomponents.keyframes)([
71
+ `from{opacity:1;transform:translateY(0);}to{opacity:0;transform:translateY(-100%);}`
72
+ ]);
73
+ const StyledWrapper = _styledcomponents.default.div.withConfig({
74
+ displayName: "Modal__StyledWrapper",
75
+ componentId: "sc-c1a3a85-0"
76
+ })([
77
+ `position:fixed;top:0;left:0;right:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;`,
78
+ ``
79
+ ], ({ isHiding })=>isHiding && (0, _styledcomponents.css)([
80
+ `animation:0.1s `,
81
+ ` ease-out;`
82
+ ], wrapperHideAnimation));
83
+ const StyledOverlay = _styledcomponents.default.div.withConfig({
84
+ displayName: "Modal__StyledOverlay",
85
+ componentId: "sc-c1a3a85-1"
86
+ })([
87
+ `position:absolute;`,
88
+ `;width:100%;height:100%;background-color:`,
89
+ `;backdrop-filter:var(--backdrop-filter);cursor:`,
90
+ `;`
91
+ ], ({ $withBlur })=>{
92
+ return (0, _styledcomponents.css)([
93
+ `--background-color:`,
94
+ `;--backdrop-filter:`,
95
+ `;`
96
+ ], $withBlur ? 'rgba(35, 35, 35, 0.2)' : 'rgba(8, 8, 8, 0.56)', $withBlur ? 'blur(1rem)' : 'none');
97
+ }, ({ transparent })=>transparent ? 'transparent' : 'var(--background-color)', ({ clickable })=>clickable ? 'pointer' : 'default');
98
+ const StyledModal = _styledcomponents.default.div.withConfig({
99
+ displayName: "Modal__StyledModal",
100
+ componentId: "sc-c1a3a85-2"
101
+ })([
102
+ `position:absolute;height:100%;pointer-events:none;`,
103
+ ``
104
+ ], ({ isHiding })=>(0, _styledcomponents.css)([
105
+ `animation:0.4s `,
106
+ ` ease-out;`
107
+ ], isHiding ? bodyHideAnimation : bodyShowAnimation));
108
+ const NoScroll = (0, _styledcomponents.createGlobalStyle)([
109
+ `body{overflow-y:hidden;}`
110
+ ]);
111
+ const Modal = ({ id, isOpen, opened, onClose, onOverlayClick, onEscKeyDown, closeOnEsc = true, closeOnOverlayClick = true, withBlur, initialFocusRef, focusAfterRef, ...rest })=>{
112
+ const innerIsOpen = Boolean(isOpen || opened);
113
+ const uniqId = _styledcomponents1.plasmaCore.useUniqId();
114
+ const innerId = id || uniqId;
115
+ const wrapperRef = (0, _react.useRef)(null);
116
+ const portalRef = (0, _react.useRef)(null);
117
+ const trapRef = (0, _styledcomponents1.useFocusTrap)(true, initialFocusRef, focusAfterRef);
118
+ const controller = (0, _react.useContext)(_ModalsContext.ModalsContext);
119
+ const [, forceRender] = (0, _react.useState)(false);
120
+ const onOverlayKeyDown = (0, _react.useCallback)((event)=>{
121
+ if (!closeOnOverlayClick) {
122
+ return;
123
+ }
124
+ if (onOverlayClick) {
125
+ onOverlayClick(event);
126
+ return;
127
+ }
128
+ onClose?.();
129
+ }, [
130
+ closeOnOverlayClick,
131
+ onOverlayClick,
132
+ onClose
133
+ ]);
134
+ (0, _react.useEffect)(()=>{
135
+ let portal = document.getElementById(_ModalsContext.MODALS_PORTAL_ID);
136
+ if (!portal) {
137
+ portal = document.createElement('div');
138
+ portal.setAttribute('id', _ModalsContext.MODALS_PORTAL_ID);
139
+ portal.setAttribute('aria-live', 'off');
140
+ portal.setAttribute('role', 'presentation');
141
+ portal.style.position = 'relative';
142
+ portal.style.zIndex = '9000';
143
+ document.body.appendChild(portal);
144
+ }
145
+ portalRef.current = portal;
146
+ /**
147
+ * Изменение стейта нужно для того, чтобы модальное окно
148
+ * отобразилось после записи DOM элемента в portalRef.current
149
+ */ forceRender(true);
150
+ }, []);
151
+ (0, _react.useEffect)(()=>{
152
+ const onKeyDown = (event)=>{
153
+ if (closeOnEsc && event.keyCode === ESCAPE_KEYCODE && wrapperRef.current && portalRef.current && portalRef.current.contains(wrapperRef.current) && portalRef.current.children[portalRef.current.children.length - 1] === wrapperRef.current) {
154
+ if (onEscKeyDown) {
155
+ onEscKeyDown(event);
156
+ return;
157
+ }
158
+ onClose?.();
159
+ }
160
+ };
161
+ window.addEventListener('keydown', onKeyDown);
162
+ return ()=>{
163
+ window.removeEventListener('keydown', onKeyDown);
164
+ };
165
+ }, [
166
+ onClose,
167
+ onEscKeyDown,
168
+ closeOnEsc
169
+ ]);
170
+ (0, _react.useEffect)(()=>{
171
+ return ()=>{
172
+ controller.unregister(innerId);
173
+ };
174
+ }, [
175
+ controller.unregister,
176
+ innerId
177
+ ]);
178
+ if (innerIsOpen) {
179
+ controller.register(innerId);
180
+ } else {
181
+ return null;
182
+ }
183
+ return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/ _react.default.createElement(NoScroll, null), portalRef.current && /*#__PURE__*/ _reactdom.default.createPortal(/*#__PURE__*/ _react.default.createElement(StyledWrapper, {
184
+ ref: wrapperRef
185
+ }, /*#__PURE__*/ _react.default.createElement(StyledOverlay, {
186
+ transparent: controller.items.indexOf(innerId) !== 0,
187
+ clickable: closeOnOverlayClick,
188
+ onClick: onOverlayKeyDown,
189
+ $withBlur: withBlur
190
+ }), /*#__PURE__*/ _react.default.createElement(StyledModal, null, /*#__PURE__*/ _react.default.createElement(_ModalView.ModalView, {
191
+ onClose: onClose,
192
+ ref: trapRef,
193
+ ...rest
194
+ }))), portalRef.current));
195
+ };
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "ModalView", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return ModalView;
9
+ }
10
+ });
11
+ const _react = /*#__PURE__*/ _interop_require_default(require("react"));
12
+ const _styledcomponents = /*#__PURE__*/ _interop_require_default(require("styled-components"));
13
+ const _plasmaicons = require("@salutejs/plasma-icons");
14
+ const _Button = require("../_Button");
15
+ function _interop_require_default(obj) {
16
+ return obj && obj.__esModule ? obj : {
17
+ default: obj
18
+ };
19
+ }
20
+ const StyledWrapper = _styledcomponents.default.div.withConfig({
21
+ displayName: "ModalView__StyledWrapper",
22
+ componentId: "sc-53f3095-0"
23
+ })([
24
+ `display:flex;align-items:center;height:100%;`
25
+ ]);
26
+ const StyledBody = _styledcomponents.default.div.withConfig({
27
+ displayName: "ModalView__StyledBody",
28
+ componentId: "sc-53f3095-1"
29
+ })([
30
+ `position:relative;width:25rem;max-width:100%;border-radius:1.25rem;background-color:var(--surface-solid-card);pointer-events:all;`
31
+ ]);
32
+ const StyledContent = _styledcomponents.default.div.withConfig({
33
+ displayName: "ModalView__StyledContent",
34
+ componentId: "sc-53f3095-2"
35
+ })([
36
+ `padding:2rem;`
37
+ ]);
38
+ const StyledButtonClose = (0, _styledcomponents.default)((0, _Button.Button)({
39
+ design: 'web'
40
+ })).attrs(()=>({
41
+ view: 'clear'
42
+ })).withConfig({
43
+ displayName: "ModalView__StyledButtonClose",
44
+ componentId: "sc-53f3095-3"
45
+ })([
46
+ `position:absolute;top:0;right:0;margin:2rem;width:auto;height:auto;padding:0;`
47
+ ]);
48
+ const ModalView = /*#__PURE__*/ _react.default.forwardRef(({ role = 'dialog', closeButtonAriaLabel, children, onClose, showCloseButton = true, ...rest }, ref)=>{
49
+ return /*#__PURE__*/ _react.default.createElement(StyledWrapper, null, /*#__PURE__*/ _react.default.createElement(StyledBody, {
50
+ ...rest,
51
+ ref: ref,
52
+ role: role,
53
+ "aria-modal": "true"
54
+ }, /*#__PURE__*/ _react.default.createElement(StyledContent, null, children), showCloseButton && /*#__PURE__*/ _react.default.createElement(StyledButtonClose, {
55
+ "aria-label": closeButtonAriaLabel,
56
+ onClick: onClose,
57
+ size: "s",
58
+ contentLeft: /*#__PURE__*/ _react.default.createElement(_plasmaicons.IconClose, {
59
+ size: "s",
60
+ color: "inherit"
61
+ })
62
+ })));
63
+ });
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get MODALS_PORTAL_ID () {
13
+ return MODALS_PORTAL_ID;
14
+ },
15
+ get ModalsContext () {
16
+ return ModalsContext;
17
+ },
18
+ get ModalsProvider () {
19
+ return ModalsProvider;
20
+ }
21
+ });
22
+ const _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
23
+ function _define_property(obj, key, value) {
24
+ if (key in obj) {
25
+ Object.defineProperty(obj, key, {
26
+ value: value,
27
+ enumerable: true,
28
+ configurable: true,
29
+ writable: true
30
+ });
31
+ } else {
32
+ obj[key] = value;
33
+ }
34
+ return obj;
35
+ }
36
+ function _getRequireWildcardCache(nodeInterop) {
37
+ if (typeof WeakMap !== "function") return null;
38
+ var cacheBabelInterop = new WeakMap();
39
+ var cacheNodeInterop = new WeakMap();
40
+ return (_getRequireWildcardCache = function(nodeInterop) {
41
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
42
+ })(nodeInterop);
43
+ }
44
+ function _interop_require_wildcard(obj, nodeInterop) {
45
+ if (!nodeInterop && obj && obj.__esModule) {
46
+ return obj;
47
+ }
48
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
49
+ return {
50
+ default: obj
51
+ };
52
+ }
53
+ var cache = _getRequireWildcardCache(nodeInterop);
54
+ if (cache && cache.has(obj)) {
55
+ return cache.get(obj);
56
+ }
57
+ var newObj = {
58
+ __proto__: null
59
+ };
60
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
61
+ for(var key in obj){
62
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
63
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
64
+ if (desc && (desc.get || desc.set)) {
65
+ Object.defineProperty(newObj, key, desc);
66
+ } else {
67
+ newObj[key] = obj[key];
68
+ }
69
+ }
70
+ }
71
+ newObj.default = obj;
72
+ if (cache) {
73
+ cache.set(obj, newObj);
74
+ }
75
+ return newObj;
76
+ }
77
+ /**
78
+ * Хранилище модальных окон.
79
+ */ class ModalsController {
80
+ register(id) {
81
+ const indexOfElement = this.items.indexOf(id);
82
+ if (indexOfElement >= 0) {
83
+ return;
84
+ }
85
+ return this.items.push(id);
86
+ }
87
+ unregister(id) {
88
+ const indexOfElement = this.items.indexOf(id);
89
+ if (indexOfElement < 0) {
90
+ return;
91
+ }
92
+ this.items.splice(indexOfElement, 1);
93
+ }
94
+ constructor(){
95
+ _define_property(this, "items", []);
96
+ }
97
+ }
98
+ const controller = new ModalsController();
99
+ const MODALS_PORTAL_ID = 'plasma-modals-root';
100
+ const ModalsContext = /*#__PURE__*/ _react.default.createContext(controller);
101
+ const ModalsProvider = ({ children })=>{
102
+ (0, _react.useEffect)(()=>{
103
+ return ()=>{
104
+ const portal = document.createElement('div');
105
+ if (portal && document.body.contains(portal)) {
106
+ document.body.removeChild(portal);
107
+ }
108
+ };
109
+ }, []);
110
+ return /*#__PURE__*/ _react.default.createElement(ModalsContext.Provider, {
111
+ value: controller
112
+ }, children);
113
+ };
@@ -10,13 +10,15 @@ function _export(target, all) {
10
10
  }
11
11
  _export(exports, {
12
12
  get Modal () {
13
- return _plasmahope.Modal;
13
+ return _Modal.Modal;
14
14
  },
15
15
  get ModalView () {
16
- return _plasmahope.ModalView;
16
+ return _ModalView.ModalView;
17
17
  },
18
18
  get ModalsProvider () {
19
- return _plasmahope.ModalsProvider;
19
+ return _ModalsContext.ModalsProvider;
20
20
  }
21
21
  });
22
- const _plasmahope = require("@salutejs/plasma-hope");
22
+ const _Modal = require("./Modal");
23
+ const _ModalsContext = require("./ModalsContext");
24
+ const _ModalView = require("./ModalView");
@@ -148,6 +148,7 @@ const config = {
148
148
  ${_styledcomponents.rangeTokens.hintPlacementInnerMargin}: 0 -0.438rem;
149
149
 
150
150
  ${_styledcomponents.rangeTokens.titleCaptionOffset}: 0.375rem;
151
+ ${_styledcomponents.rangeTokens.titleCaptionMargin}: 0.375rem;
151
152
  ${_styledcomponents.rangeTokens.titleCaptionFontFamily}: var(--plasma-typo-body-xs-font-family);
152
153
  ${_styledcomponents.rangeTokens.titleCaptionFontSize}: var(--plasma-typo-body-xs-font-size);
153
154
  ${_styledcomponents.rangeTokens.titleCaptionFontStyle}: var(--plasma-typo-body-xs-font-style);
@@ -225,6 +226,7 @@ const config = {
225
226
  ${_styledcomponents.rangeTokens.hintPlacementInnerMargin}: 0 -0.438rem;
226
227
 
227
228
  ${_styledcomponents.rangeTokens.titleCaptionOffset}: 0.375rem;
229
+ ${_styledcomponents.rangeTokens.titleCaptionMargin}: 0.375rem;
228
230
  ${_styledcomponents.rangeTokens.titleCaptionFontFamily}: var(--plasma-typo-body-xs-font-family);
229
231
  ${_styledcomponents.rangeTokens.titleCaptionFontSize}: var(--plasma-typo-body-xs-font-size);
230
232
  ${_styledcomponents.rangeTokens.titleCaptionFontStyle}: var(--plasma-typo-body-xs-font-style);
@@ -302,6 +304,7 @@ const config = {
302
304
  ${_styledcomponents.rangeTokens.hintPlacementInnerMargin}: 0 -0.438rem;
303
305
 
304
306
  ${_styledcomponents.rangeTokens.titleCaptionOffset}: 0.313rem;
307
+ ${_styledcomponents.rangeTokens.titleCaptionMargin}: 0.3125rem;
305
308
  ${_styledcomponents.rangeTokens.titleCaptionFontFamily}: var(--plasma-typo-body-xs-font-family);
306
309
  ${_styledcomponents.rangeTokens.titleCaptionFontSize}: var(--plasma-typo-body-xs-font-size);
307
310
  ${_styledcomponents.rangeTokens.titleCaptionFontStyle}: var(--plasma-typo-body-xs-font-style);
@@ -379,6 +382,7 @@ const config = {
379
382
  ${_styledcomponents.rangeTokens.hintPlacementInnerMargin}: 0 -0.438rem;
380
383
 
381
384
  ${_styledcomponents.rangeTokens.titleCaptionOffset}: 0.188rem;
385
+ ${_styledcomponents.rangeTokens.titleCaptionMargin}: 0.1875rem;
382
386
  ${_styledcomponents.rangeTokens.titleCaptionFontFamily}: var(--plasma-typo-body-xs-font-family);
383
387
  ${_styledcomponents.rangeTokens.titleCaptionFontSize}: var(--plasma-typo-body-xs-font-size);
384
388
  ${_styledcomponents.rangeTokens.titleCaptionFontStyle}: var(--plasma-typo-body-xs-font-style);
@@ -456,6 +460,7 @@ const config = {
456
460
  ${_styledcomponents.rangeTokens.hintPlacementInnerMargin}: 0 -0.688rem;
457
461
 
458
462
  ${_styledcomponents.rangeTokens.titleCaptionOffset}: 0;
463
+ ${_styledcomponents.rangeTokens.titleCaptionMargin}: 0;
459
464
  ${_styledcomponents.rangeTokens.titleCaptionFontFamily}: var(--plasma-typo-body-xs-font-family);
460
465
  ${_styledcomponents.rangeTokens.titleCaptionFontSize}: var(--plasma-typo-body-xs-font-size);
461
466
  ${_styledcomponents.rangeTokens.titleCaptionFontStyle}: var(--plasma-typo-body-xs-font-style);
@@ -123,6 +123,7 @@ const config = {
123
123
  ${_styledcomponents.rangeTokens.hintPlacementInnerMargin}: 0 0.813rem 0 -0.438rem;
124
124
 
125
125
  ${_styledcomponents.rangeTokens.titleCaptionOffset}: 0.375rem;
126
+ ${_styledcomponents.rangeTokens.titleCaptionMargin}: 0.375rem;
126
127
  ${_styledcomponents.rangeTokens.titleCaptionFontFamily}: var(--plasma-typo-body-xs-font-family);
127
128
  ${_styledcomponents.rangeTokens.titleCaptionFontSize}: var(--plasma-typo-body-xs-font-size);
128
129
  ${_styledcomponents.rangeTokens.titleCaptionFontStyle}: var(--plasma-typo-body-xs-font-style);
@@ -199,6 +200,7 @@ const config = {
199
200
  ${_styledcomponents.rangeTokens.hintPlacementInnerMargin}: 0 0.563rem 0 -0.438rem;
200
201
 
201
202
  ${_styledcomponents.rangeTokens.titleCaptionOffset}: 0.375rem;
203
+ ${_styledcomponents.rangeTokens.titleCaptionMargin}: 0.375rem;
202
204
  ${_styledcomponents.rangeTokens.titleCaptionFontFamily}: var(--plasma-typo-body-xs-font-family);
203
205
  ${_styledcomponents.rangeTokens.titleCaptionFontSize}: var(--plasma-typo-body-xs-font-size);
204
206
  ${_styledcomponents.rangeTokens.titleCaptionFontStyle}: var(--plasma-typo-body-xs-font-style);
@@ -275,6 +277,7 @@ const config = {
275
277
  ${_styledcomponents.rangeTokens.hintPlacementInnerMargin}: 0 0.313rem 0 -0.438rem;
276
278
 
277
279
  ${_styledcomponents.rangeTokens.titleCaptionOffset}: 0.313rem;
280
+ ${_styledcomponents.rangeTokens.titleCaptionMargin}: 0.3125rem;
278
281
  ${_styledcomponents.rangeTokens.titleCaptionFontFamily}: var(--plasma-typo-body-xs-font-family);
279
282
  ${_styledcomponents.rangeTokens.titleCaptionFontSize}: var(--plasma-typo-body-xs-font-size);
280
283
  ${_styledcomponents.rangeTokens.titleCaptionFontStyle}: var(--plasma-typo-body-xs-font-style);
@@ -351,6 +354,7 @@ const config = {
351
354
  ${_styledcomponents.rangeTokens.hintPlacementInnerMargin}: 0 0.063rem 0 -0.438rem;
352
355
 
353
356
  ${_styledcomponents.rangeTokens.titleCaptionOffset}: 0.188rem;
357
+ ${_styledcomponents.rangeTokens.titleCaptionMargin}: 0.1875rem;
354
358
  ${_styledcomponents.rangeTokens.titleCaptionFontFamily}: var(--plasma-typo-body-xs-font-family);
355
359
  ${_styledcomponents.rangeTokens.titleCaptionFontSize}: var(--plasma-typo-body-xs-font-size);
356
360
  ${_styledcomponents.rangeTokens.titleCaptionFontStyle}: var(--plasma-typo-body-xs-font-style);
@@ -427,6 +431,7 @@ const config = {
427
431
  ${_styledcomponents.rangeTokens.hintPlacementInnerMargin}: 0 -0.188rem 0 -0.688rem;
428
432
 
429
433
  ${_styledcomponents.rangeTokens.titleCaptionOffset}: 0;
434
+ ${_styledcomponents.rangeTokens.titleCaptionMargin}: 0;
430
435
  ${_styledcomponents.rangeTokens.titleCaptionFontFamily}: var(--plasma-typo-body-xs-font-family);
431
436
  ${_styledcomponents.rangeTokens.titleCaptionFontSize}: var(--plasma-typo-body-xs-font-size);
432
437
  ${_styledcomponents.rangeTokens.titleCaptionFontStyle}: var(--plasma-typo-body-xs-font-style);