ecomlab-components-next 0.1.237 → 0.1.239

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 (187) hide show
  1. package/dist/components/Buttons/ButtonBasicV2/ButtonBasicV2.js +85 -0
  2. package/dist/components/Buttons/ButtonBasicV2/ButtonBasicV2.scss +55 -0
  3. package/dist/components/Buttons/{SignUpButton/ButtonSignUp.stories.js → ButtonBasicV2/ButtonBasicV2stories.js} +42 -29
  4. package/dist/components/ConstructorComponents/ArticlesBlockV2/ArticlesBlockV2.js +153 -0
  5. package/dist/components/ConstructorComponents/ArticlesBlockV2/ArticlesBlockV2.module.scss +214 -0
  6. package/dist/components/ConstructorComponents/BlocksInfo/BlocksInfo.scss +0 -1
  7. package/dist/components/ConstructorComponents/BlocksInfoV2/BlocksInfoV2.js +210 -0
  8. package/dist/components/ConstructorComponents/BlocksInfoV2/BlocksInfoV2.scss +236 -0
  9. package/dist/components/ConstructorComponents/BlocksInfoV2/BlocksInfoV2.stories.js +57 -0
  10. package/dist/components/ConstructorComponents/BlocksInfoV2/img/develop.png +0 -0
  11. package/dist/components/ConstructorComponents/CardsInfo/CardsInfo.js +15 -29
  12. package/dist/components/ConstructorComponents/CardsServicesV2/CardsServicesV2.js +164 -0
  13. package/dist/components/ConstructorComponents/CardsServicesV2/CardsServicesV2.scss +333 -0
  14. package/dist/components/ConstructorComponents/CardsV2/CardsV2.js +51 -0
  15. package/dist/components/ConstructorComponents/CardsV2/CardsV2.scss +158 -0
  16. package/dist/components/ConstructorComponents/CardsV2/CardsV2.stories.js +16 -0
  17. package/dist/components/ConstructorComponents/ClientsAboutUsV2/ClientsAboutUsV2.js +83 -0
  18. package/dist/components/ConstructorComponents/ClientsAboutUsV2/ClientsAboutUsV2.scss +312 -0
  19. package/dist/components/ConstructorComponents/ClientsAboutUsV2/ClientsAboutUsV2.stories.js +25 -0
  20. package/dist/components/ConstructorComponents/FeaturesGridV2/FeaturesGridV2.js +102 -0
  21. package/dist/components/ConstructorComponents/FeaturesGridV2/FeaturesGridV2.scss +145 -0
  22. package/dist/components/ConstructorComponents/FeaturesGridV2/FeaturesGridV2.stories.js +36 -0
  23. package/dist/components/ConstructorComponents/FormV2/FormV2.js +139 -0
  24. package/dist/components/ConstructorComponents/FormV2/FormV2.scss +153 -0
  25. package/dist/components/ConstructorComponents/FormV2/FormWithBtn.stories.js +16 -0
  26. package/dist/components/ConstructorComponents/Header/Header.js +1 -1
  27. package/dist/components/ConstructorComponents/HeaderV2/HeaderV2.js +127 -0
  28. package/dist/components/ConstructorComponents/HeaderV2/HeaderV2.scss +227 -0
  29. package/dist/components/ConstructorComponents/HeaderV2/HeaderV2.stories.js +24 -0
  30. package/dist/components/ConstructorComponents/HeaderV2/img/Ozon.svg +20 -0
  31. package/dist/components/ConstructorComponents/HeaderV2/img/WB.svg +15 -0
  32. package/dist/components/ConstructorComponents/HeaderV2/img/Yandex Market.svg +14 -0
  33. package/dist/components/ConstructorComponents/MainContainer/MainContainer.js +4 -2
  34. package/dist/components/ConstructorComponents/MainContainer/MainContainer.scss +24 -0
  35. package/dist/components/ConstructorComponents/MainContainer/MainContainerV2.stories.js +199 -0
  36. package/dist/components/ConstructorComponents/MarqueImgsV2/MarqueImgsV2.js +48 -0
  37. package/dist/components/ConstructorComponents/MarqueImgsV2/MarqueImgsV2.scss +66 -0
  38. package/dist/components/ConstructorComponents/MarqueImgsV2/MarqueImgsV2.stories.js +16 -0
  39. package/dist/components/ConstructorComponents/MarqueImgsV2/img/brand_1.svg +4 -0
  40. package/dist/components/ConstructorComponents/MarqueImgsV2/img/brand_10.svg +9 -0
  41. package/dist/components/ConstructorComponents/MarqueImgsV2/img/brand_11.svg +10 -0
  42. package/dist/components/ConstructorComponents/MarqueImgsV2/img/brand_12.svg +11 -0
  43. package/dist/components/ConstructorComponents/MarqueImgsV2/img/brand_13.svg +9 -0
  44. package/dist/components/ConstructorComponents/MarqueImgsV2/img/brand_2.svg +10 -0
  45. package/dist/components/ConstructorComponents/MarqueImgsV2/img/brand_3.svg +10 -0
  46. package/dist/components/ConstructorComponents/MarqueImgsV2/img/brand_4.svg +28 -0
  47. package/dist/components/ConstructorComponents/MarqueImgsV2/img/brand_5.svg +9 -0
  48. package/dist/components/ConstructorComponents/MarqueImgsV2/img/brand_6.svg +26 -0
  49. package/dist/components/ConstructorComponents/MarqueImgsV2/img/brand_7.png +0 -0
  50. package/dist/components/ConstructorComponents/MarqueImgsV2/img/brand_7.svg +17 -0
  51. package/dist/components/ConstructorComponents/MarqueImgsV2/img/brand_8.svg +9 -0
  52. package/dist/components/ConstructorComponents/MarqueImgsV2/img/brand_9.svg +9 -0
  53. package/dist/components/ConstructorComponents/PhoneBlockV2/PhoneBlockV2.js +40 -0
  54. package/dist/components/ConstructorComponents/PhoneBlockV2/PhoneBlockV2.scss +302 -0
  55. package/dist/components/ConstructorComponents/PhoneBlockV2/PhoneBlockV2.stories.js +19 -0
  56. package/dist/components/ConstructorComponents/PhoneBlockV2/img/phone.png +0 -0
  57. package/dist/components/ConstructorComponents/PointsListV2/PointsListV2.js +45 -0
  58. package/dist/components/ConstructorComponents/PointsListV2/PointsListV2.scss +151 -0
  59. package/dist/components/ConstructorComponents/PointsListV2/PointsListV2.stories.js +43 -0
  60. package/dist/components/ConstructorComponents/PointsListV2/img/bx-right-arrow-alt.svg +5 -0
  61. package/dist/components/ConstructorComponents/QuestionsV2/QuestionsV2.js +72 -0
  62. package/dist/components/ConstructorComponents/QuestionsV2/QuestionsV2.scss +179 -0
  63. package/dist/components/ConstructorComponents/QuestionsV2/QuestionsV2.stories.js +57 -0
  64. package/dist/components/ConstructorComponents/QuestionsV2/img/ar_down.svg +5 -0
  65. package/dist/components/ConstructorComponents/QuestionsV2/img/ar_up.svg +5 -0
  66. package/dist/components/ConstructorComponents/ServicesSectionV2/ServicesSectionV2.js +161 -0
  67. package/dist/components/ConstructorComponents/ServicesSectionV2/ServicesSectionV2.scss +245 -0
  68. package/dist/components/ConstructorComponents/StatisticCardV2/StatisticCardV2.js +44 -0
  69. package/dist/components/ConstructorComponents/StatisticCardV2/StatisticCardV2.module.scss +156 -0
  70. package/dist/components/ConstructorComponents/StatisticCardV2/StatisticCardV2.stories.js +32 -0
  71. package/dist/components/ConstructorComponents/StepsV2/StepsV2.js +86 -0
  72. package/dist/components/ConstructorComponents/StepsV2/StepsV2.module.scss +226 -0
  73. package/dist/components/ConstructorComponents/StepsV2/StepsV2.stories.js +30 -0
  74. package/dist/components/ConstructorComponents/variables.scss +50 -0
  75. package/dist/components/Slider/SliderCarousel/SliderCarousel.js +4 -6
  76. package/dist/index.js +84 -0
  77. package/dist/stories/LongTileArticleBox/LongTileArticleBox.js +1 -1
  78. package/dist/stories/ShortTileArticleBox/ShortTileArticleBox.js +1 -1
  79. package/package.json +1 -1
  80. package/dist/components/Buttons/SignUpButton/ButtonSignUp.js +0 -75
  81. package/dist/components/Buttons/SignUpButton/ButtonSignUp.module.scss +0 -92
  82. package/dist/components/Buttons/SignUpButton/calendar.svg +0 -14
  83. package/dist/components/Checkbox/Checkbox/Checkbox.js +0 -83
  84. package/dist/components/Checkbox/Checkbox/Checkbox.scss +0 -136
  85. package/dist/components/Checkbox/Checkbox/Checkbox.stories.js +0 -46
  86. package/dist/components/Checkbox/Checkbox/img/check.svg +0 -3
  87. package/dist/main.js +0 -14
  88. package/dist/stories/InputDynamicWidth/InputDynamicWidth.js +0 -85
  89. package/dist/stories/InputDynamicWidth/InputDynamicWidth.scss +0 -98
  90. package/dist/stories/InputDynamicWidth/InputDynamicWidth.stories.js +0 -32
  91. package/dist/stories/InputDynamicWidth/img/close_icon.svg +0 -3
  92. package/dist/stories/InputDynamicWidth/img/search_icon.svg +0 -6
  93. package/dist/stories/NoArticles/NoArticles.js +0 -29
  94. package/dist/stories/NoArticles/NoArticles.scss +0 -26
  95. package/dist/stories/NoArticles/NoArticles.stories.js +0 -20
  96. package/dist/stories/NoArticles/img/banner.svg +0 -266
  97. package/dist/stories/ViewSwitch/ViewSwitch.js +0 -48
  98. package/dist/stories/ViewSwitch/ViewSwitch.scss +0 -135
  99. package/dist/stories/ViewSwitch/ViewSwitch.stories.js +0 -48
  100. package/dist/stories/ViewSwitch/img/Chat.js +0 -24
  101. package/dist/stories/ViewSwitch/img/Table.js +0 -21
  102. package/dist/stories/ViewSwitch/img/Tile.js +0 -20
  103. package/dist/stories/ViewSwitch/img/TileLong.js +0 -20
  104. package/dist/storybook-static/167.1ab9d45b.iframe.bundle.js +0 -1
  105. package/dist/storybook-static/294.029a22c7.iframe.bundle.js +0 -1
  106. package/dist/storybook-static/364.41fcb7af.iframe.bundle.js +0 -1
  107. package/dist/storybook-static/54.0740a2d0.iframe.bundle.js +0 -2
  108. package/dist/storybook-static/54.0740a2d0.iframe.bundle.js.LICENSE.txt +0 -1
  109. package/dist/storybook-static/735.329871ea.iframe.bundle.js +0 -2
  110. package/dist/storybook-static/735.329871ea.iframe.bundle.js.LICENSE.txt +0 -9
  111. package/dist/storybook-static/844.4c57ff93.iframe.bundle.js +0 -94
  112. package/dist/storybook-static/844.4c57ff93.iframe.bundle.js.map +0 -1
  113. package/dist/storybook-static/869.a718104a.iframe.bundle.js +0 -1
  114. package/dist/storybook-static/908.c53199b4.iframe.bundle.js +0 -1
  115. package/dist/storybook-static/939.72503e72.iframe.bundle.js +0 -405
  116. package/dist/storybook-static/939.72503e72.iframe.bundle.js.LICENSE.txt +0 -54
  117. package/dist/storybook-static/939.72503e72.iframe.bundle.js.map +0 -1
  118. package/dist/storybook-static/components-Button-stories.6b7204e5.iframe.bundle.js +0 -1
  119. package/dist/storybook-static/favicon.svg +0 -1
  120. package/dist/storybook-static/file.svg +0 -1
  121. package/dist/storybook-static/globe.svg +0 -1
  122. package/dist/storybook-static/iframe.html +0 -511
  123. package/dist/storybook-static/index.html +0 -185
  124. package/dist/storybook-static/index.json +0 -1
  125. package/dist/storybook-static/main.456a86f5.iframe.bundle.js +0 -1
  126. package/dist/storybook-static/next.svg +0 -1
  127. package/dist/storybook-static/nunito-sans-bold-italic.woff2 +0 -0
  128. package/dist/storybook-static/nunito-sans-bold.woff2 +0 -0
  129. package/dist/storybook-static/nunito-sans-italic.woff2 +0 -0
  130. package/dist/storybook-static/nunito-sans-regular.woff2 +0 -0
  131. package/dist/storybook-static/project.json +0 -1
  132. package/dist/storybook-static/runtime~main.8e4a98c9.iframe.bundle.js +0 -1
  133. package/dist/storybook-static/sb-addons/chromatic-com-storybook-10/manager-bundle.js +0 -331
  134. package/dist/storybook-static/sb-addons/chromatic-com-storybook-10/manager-bundle.js.LEGAL.txt +0 -51
  135. package/dist/storybook-static/sb-addons/essentials-actions-3/manager-bundle.js +0 -3
  136. package/dist/storybook-static/sb-addons/essentials-actions-3/manager-bundle.js.LEGAL.txt +0 -0
  137. package/dist/storybook-static/sb-addons/essentials-backgrounds-5/manager-bundle.js +0 -12
  138. package/dist/storybook-static/sb-addons/essentials-backgrounds-5/manager-bundle.js.LEGAL.txt +0 -0
  139. package/dist/storybook-static/sb-addons/essentials-controls-2/manager-bundle.js +0 -391
  140. package/dist/storybook-static/sb-addons/essentials-controls-2/manager-bundle.js.LEGAL.txt +0 -0
  141. package/dist/storybook-static/sb-addons/essentials-docs-4/manager-bundle.js +0 -230
  142. package/dist/storybook-static/sb-addons/essentials-docs-4/manager-bundle.js.LEGAL.txt +0 -0
  143. package/dist/storybook-static/sb-addons/essentials-measure-8/manager-bundle.js +0 -3
  144. package/dist/storybook-static/sb-addons/essentials-measure-8/manager-bundle.js.LEGAL.txt +0 -0
  145. package/dist/storybook-static/sb-addons/essentials-outline-9/manager-bundle.js +0 -3
  146. package/dist/storybook-static/sb-addons/essentials-outline-9/manager-bundle.js.LEGAL.txt +0 -0
  147. package/dist/storybook-static/sb-addons/essentials-toolbars-7/manager-bundle.js +0 -3
  148. package/dist/storybook-static/sb-addons/essentials-toolbars-7/manager-bundle.js.LEGAL.txt +0 -0
  149. package/dist/storybook-static/sb-addons/essentials-viewport-6/manager-bundle.js +0 -3
  150. package/dist/storybook-static/sb-addons/essentials-viewport-6/manager-bundle.js.LEGAL.txt +0 -0
  151. package/dist/storybook-static/sb-addons/interactions-11/manager-bundle.js +0 -210
  152. package/dist/storybook-static/sb-addons/interactions-11/manager-bundle.js.LEGAL.txt +0 -0
  153. package/dist/storybook-static/sb-addons/onboarding-1/manager-bundle.js +0 -127
  154. package/dist/storybook-static/sb-addons/onboarding-1/manager-bundle.js.LEGAL.txt +0 -0
  155. package/dist/storybook-static/sb-addons/storybook-core-core-server-presets-0/common-manager-bundle.js +0 -3
  156. package/dist/storybook-static/sb-addons/storybook-core-core-server-presets-0/common-manager-bundle.js.LEGAL.txt +0 -0
  157. package/dist/storybook-static/sb-common-assets/favicon.svg +0 -1
  158. package/dist/storybook-static/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
  159. package/dist/storybook-static/sb-common-assets/nunito-sans-bold.woff2 +0 -0
  160. package/dist/storybook-static/sb-common-assets/nunito-sans-italic.woff2 +0 -0
  161. package/dist/storybook-static/sb-common-assets/nunito-sans-regular.woff2 +0 -0
  162. package/dist/storybook-static/sb-manager/globals-module-info.js +0 -1037
  163. package/dist/storybook-static/sb-manager/globals-runtime.js +0 -41107
  164. package/dist/storybook-static/sb-manager/globals.js +0 -48
  165. package/dist/storybook-static/sb-manager/runtime.js +0 -11960
  166. package/dist/storybook-static/sb-preview/globals.js +0 -33
  167. package/dist/storybook-static/sb-preview/runtime.js +0 -7247
  168. package/dist/storybook-static/static/media/accessibility.b812909c.png +0 -0
  169. package/dist/storybook-static/static/media/addon-library.7d60eaf1.png +0 -0
  170. package/dist/storybook-static/static/media/assets.74434bfb.png +0 -0
  171. package/dist/storybook-static/static/media/context.0aaeed46.png +0 -0
  172. package/dist/storybook-static/static/media/discord.c13ab8cc.svg +0 -1
  173. package/dist/storybook-static/static/media/docs.78ff2c00.png +0 -0
  174. package/dist/storybook-static/static/media/figma-plugin.92feae99.png +0 -0
  175. package/dist/storybook-static/static/media/github.bf1215e7.svg +0 -1
  176. package/dist/storybook-static/static/media/share.b661f220.png +0 -0
  177. package/dist/storybook-static/static/media/styling.6ea0e96c.png +0 -0
  178. package/dist/storybook-static/static/media/testing.6f11ce8b.png +0 -0
  179. package/dist/storybook-static/static/media/theming.3ca117fd.png +0 -0
  180. package/dist/storybook-static/static/media/tutorials.f9b22f92.svg +0 -1
  181. package/dist/storybook-static/static/media/youtube.0220385a.svg +0 -1
  182. package/dist/storybook-static/stories-Button-stories.a157a598.iframe.bundle.js +0 -1
  183. package/dist/storybook-static/stories-Configure-mdx.ad43dce3.iframe.bundle.js +0 -1
  184. package/dist/storybook-static/stories-Header-stories.813bf6ef.iframe.bundle.js +0 -1
  185. package/dist/storybook-static/stories-Page-stories.9918ddc0.iframe.bundle.js +0 -1
  186. package/dist/storybook-static/vercel.svg +0 -1
  187. package/dist/storybook-static/window.svg +0 -1
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ 'use client';
3
+
4
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _react = _interopRequireWildcard(require("react"));
10
+ var _ButtonBasicV = _interopRequireDefault(require("../../Buttons/ButtonBasicV2/ButtonBasicV2"));
11
+ require("./FeaturesGridV2.scss");
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
13
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
14
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
15
+ function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
16
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
17
+ function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
18
+ function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
19
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
20
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
21
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
22
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
23
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
24
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
25
+ var FeaturesGridV2 = function FeaturesGridV2(_ref) {
26
+ var _ref$list = _ref.list,
27
+ list = _ref$list === void 0 ? [] : _ref$list,
28
+ _ref$title = _ref.title,
29
+ title = _ref$title === void 0 ? '' : _ref$title,
30
+ _ref$description = _ref.description,
31
+ description = _ref$description === void 0 ? '' : _ref$description;
32
+ var blocksRef = (0, _react.useRef)([]);
33
+ var _useState = (0, _react.useState)(0),
34
+ _useState2 = _slicedToArray(_useState, 2),
35
+ maxHeight = _useState2[0],
36
+ setMaxHeight = _useState2[1];
37
+ var _useState3 = (0, _react.useState)(window.innerWidth),
38
+ _useState4 = _slicedToArray(_useState3, 2),
39
+ windowWidth = _useState4[0],
40
+ setWindowWidth = _useState4[1];
41
+ var syncHeight = (0, _react.useCallback)(function () {
42
+ var heights = blocksRef.current.filter(function (el) {
43
+ return el && el.offsetHeight > 0;
44
+ }).map(function (el) {
45
+ return el.offsetHeight;
46
+ });
47
+ if (heights.length > 0) {
48
+ var next = Math.max.apply(Math, _toConsumableArray(heights));
49
+ if (next !== maxHeight) setMaxHeight(next);
50
+ }
51
+ }, [maxHeight]);
52
+ (0, _react.useEffect)(function () {
53
+ [0, 100, 300].forEach(function (d) {
54
+ return setTimeout(syncHeight, d);
55
+ });
56
+ var onResize = function onResize() {
57
+ setWindowWidth(window.innerWidth);
58
+ syncHeight();
59
+ };
60
+ window.addEventListener('resize', onResize);
61
+ return function () {
62
+ return window.removeEventListener('resize', onResize);
63
+ };
64
+ }, [syncHeight]);
65
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("section", {
66
+ className: "fg5"
67
+ }, /*#__PURE__*/_react["default"].createElement("div", {
68
+ className: "fg5__inner"
69
+ }, /*#__PURE__*/_react["default"].createElement("div", {
70
+ className: "fg5__header"
71
+ }, /*#__PURE__*/_react["default"].createElement("div", {
72
+ className: "fg5__header-left"
73
+ }, title && /*#__PURE__*/_react["default"].createElement("h2", {
74
+ className: "fg5__title"
75
+ }, title), description && /*#__PURE__*/_react["default"].createElement("p", {
76
+ className: "fg5__subtitle"
77
+ }, description)), /*#__PURE__*/_react["default"].createElement(_ButtonBasicV["default"], {
78
+ size: '52px',
79
+ green: true,
80
+ text: 'Попробовать бесплатно →'
81
+ })), /*#__PURE__*/_react["default"].createElement("div", {
82
+ className: "fg5__items"
83
+ }, list === null || list === void 0 ? void 0 : list.map(function (_ref2, index) {
84
+ var title = _ref2.title,
85
+ description = _ref2.description;
86
+ return /*#__PURE__*/_react["default"].createElement("div", {
87
+ key: index,
88
+ className: "fg5__card"
89
+ }, /*#__PURE__*/_react["default"].createElement("div", {
90
+ className: "fg5__card-heading",
91
+ ref: function ref(el) {
92
+ blocksRef.current[index] = el;
93
+ },
94
+ style: {
95
+ minHeight: windowWidth > 430 && maxHeight > 0 ? maxHeight : undefined
96
+ }
97
+ }, title), /*#__PURE__*/_react["default"].createElement("p", {
98
+ className: "fg5__card-text"
99
+ }, description));
100
+ })))));
101
+ };
102
+ var _default = exports["default"] = /*#__PURE__*/_react["default"].memo(FeaturesGridV2);
@@ -0,0 +1,145 @@
1
+ @import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
2
+ @import '../variables.scss';
3
+
4
+ * {
5
+ box-sizing: border-box;
6
+ margin: 0;
7
+ padding: 0;
8
+ }
9
+
10
+ .fg5 {
11
+ font-family: 'Manrope', sans-serif;
12
+ background: #F7F8FC;
13
+ width: 100%;
14
+ padding: 96px 48px;
15
+
16
+ * {
17
+ font-family: 'Manrope', 'Golos Text', sans-serif !important;
18
+ }
19
+ }
20
+
21
+ .fg5__inner {
22
+ max-width: 1280px;
23
+ margin: 0 auto;
24
+ display: flex;
25
+ flex-direction: column;
26
+ gap: 56px;
27
+ }
28
+
29
+ /* ── Header ── */
30
+ .fg5__header {
31
+ display: flex;
32
+ justify-content: space-between;
33
+ align-items: flex-end;
34
+ gap: 32px;
35
+ }
36
+
37
+ .fg5__header-left {
38
+ display: flex;
39
+ flex-direction: column;
40
+ gap: 12px;
41
+ }
42
+
43
+ .fg5__title {
44
+ font-size: 30px;
45
+ font-weight: 800;
46
+ letter-spacing: -0.5px;
47
+ color: #1A1A2E;
48
+ margin: 0;
49
+ }
50
+
51
+ .fg5__subtitle {
52
+ font-size: 15px;
53
+ color: #6B7280;
54
+ line-height: 1.65;
55
+ max-width: 440px;
56
+ margin: 0;
57
+ }
58
+
59
+ /* ── Grid ── */
60
+ .fg5__items {
61
+ display: grid;
62
+ grid-template-columns: repeat(4, 1fr);
63
+ gap: 16px;
64
+ }
65
+
66
+ /* ── Card ── */
67
+ .fg5__card {
68
+ background: #fff;
69
+ border: 1px solid #E5E7EB;
70
+ border-radius: 16px;
71
+ padding: 28px 24px 32px;
72
+ display: flex;
73
+ flex-direction: column;
74
+ gap: 0;
75
+ transition: transform .2s, box-shadow .2s;
76
+ cursor: default;
77
+ }
78
+
79
+ .fg5__card:hover {
80
+ transform: translateY(-4px);
81
+ box-shadow: 0 12px 32px rgba(0, 0, 0, .08);
82
+ }
83
+
84
+ /* colored top stripe — all purple */
85
+ .fg5__card {
86
+ border-top: 3px solid $green;
87
+ }
88
+
89
+ .fg5__card-heading {
90
+ font-size: 16px;
91
+ font-weight: 700;
92
+ color: #1A1A2E;
93
+ line-height: 1.35;
94
+ margin-bottom: 12px;
95
+ }
96
+
97
+ .fg5__card-text {
98
+ font-size: 13px;
99
+ color: #6B7280;
100
+ line-height: 1.7;
101
+ }
102
+
103
+ /* ── TABLET ── */
104
+ @media (max-width: 1024px) {
105
+ .fg5 {
106
+ padding: 72px 32px;
107
+ }
108
+
109
+ .fg5__items {
110
+ grid-template-columns: repeat(2, 1fr);
111
+ }
112
+
113
+ .fg5__title {
114
+ font-size: 26px;
115
+ }
116
+
117
+ .fg5__header {
118
+ flex-direction: column;
119
+ align-items: flex-start;
120
+ }
121
+
122
+ .fg5__btn {
123
+ width: 100%;
124
+ justify-content: center;
125
+ }
126
+ }
127
+
128
+ @media (max-width: 500px) {
129
+ .fg5 {
130
+ padding: 48px 16px;
131
+ }
132
+
133
+ .fg5__title {
134
+ font-size: 22px;
135
+ }
136
+
137
+ .fg5__items {
138
+ grid-template-columns: 1fr;
139
+ gap: 12px;
140
+ }
141
+
142
+ .fg5__card {
143
+ padding: 22px 20px 26px;
144
+ }
145
+ }
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = exports.FeaturesGridTest = void 0;
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _FeaturesGridV = _interopRequireDefault(require("./FeaturesGridV2"));
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
11
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
12
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
13
+ var advantages_list = [{
14
+ title: "\u041A\u043E\u043C\u043F\u043B\u0435\u043A\u0441\u043D\u044B\u0435 \u0440\u0435\u0448\u0435\u043D\u0438\u044F",
15
+ description: /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, "\xB7 \u0410\u0432\u0442\u043E\u043C\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044F \u0446\u0435\u043D\u043E\u043E\u0431\u0440\u0430\u0437\u043E\u0432\u0430\u043D\u0438\u044F ", /*#__PURE__*/_react["default"].createElement("br", null), "\xB7 \u0410\u043D\u0430\u043B\u0438\u0442\u0438\u043A\u0430 ", /*#__PURE__*/_react["default"].createElement("br", null), "\xB7 \u0420\u0435\u043A\u043B\u0430\u043C\u0430 \u0438 \u043C\u0430\u0440\u043A\u0435\u0442\u0438\u043D\u0433 ", /*#__PURE__*/_react["default"].createElement("br", null), "\xB7 \u0420\u0430\u0431\u043E\u0442\u0430 \u0441 \u043A\u043E\u043D\u0442\u0435\u043D\u0442\u043E\u043C ", /*#__PURE__*/_react["default"].createElement("br", null), "\xB7 \u041C\u043E\u043D\u0438\u0442\u043E\u0440\u0438\u043D\u0433 \u043A\u043E\u043D\u043A\u0443\u0440\u0435\u043D\u0442\u043E\u0432 ", /*#__PURE__*/_react["default"].createElement("br", null), "\xB7 \u0410\u0432\u0442\u043E\u043E\u0442\u0432\u0435\u0442\u044B \u043D\u0430 \u043E\u0442\u0437\u044B\u0432\u044B ", /*#__PURE__*/_react["default"].createElement("br", null), "\xB7 SEO-\u043E\u043F\u0442\u0438\u043C\u0438\u0437\u0430\u0446\u0438\u044F ", /*#__PURE__*/_react["default"].createElement("br", null), "\xB7 \u0422\u0430\u0441\u043A-\u043C\u0435\u043D\u0435\u0434\u0436\u0435\u0440 ", /*#__PURE__*/_react["default"].createElement("br", null), "\xB7 CRM ", /*#__PURE__*/_react["default"].createElement("br", null), "\xB7 PIM \u0438 \u043C\u043D\u043E\u0433\u043E\u0435 \u0434\u0440\u0443\u0433\u043E\u0435 ", /*#__PURE__*/_react["default"].createElement("br", null))
16
+ }, {
17
+ title: "\u0420\u0435\u043A\u043B\u0430\u043C\u0430 \u0438 \u043C\u0430\u0440\u043A\u0435\u0442\u0438\u043D\u0433",
18
+ description: /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, "\xB7 \u0412 2 \u0440\u0430\u0437\u0430 \u0441\u043E\u043A\u0440\u0430\u0442\u0438 \u0440\u0430\u0441\u0445\u043E\u0434\u044B \u043D\u0430 \u0440\u0435\u043A\u043B\u0430\u043C\u0443. ", /*#__PURE__*/_react["default"].createElement("br", null), "\xB7 \u042D\u0444\u0444\u0435\u043A\u0442\u0438\u0432\u043D\u043E \u0440\u0430\u0441\u043F\u0440\u0435\u0434\u0435\u043B\u044F\u0439 \u0440\u0435\u043A\u043B\u0430\u043C\u043D\u044B\u0439 \u0431\u044E\u0434\u0436\u0435\u0442 \u0438 \u043F\u043E\u043B\u0443\u0447\u0430\u0439 \u0434\u0435\u0442\u0430\u043B\u044C\u043D\u0443\u044E \u0430\u043D\u0430\u043B\u0438\u0442\u0438\u043A\u0443 \u043F\u043E \u043A\u0430\u0436\u0434\u043E\u0439 \u043A\u0430\u043C\u043F\u0430\u043D\u0438\u0438. ", /*#__PURE__*/_react["default"].createElement("br", null), "\xB7 \u041F\u043E\u043B\u0443\u0447\u0438 \u0431\u043E\u043B\u0435\u0435 50 \u0444\u0443\u043D\u043A\u0446\u0438\u0439 \u0434\u043B\u044F \u0441\u043E\u0437\u0434\u0430\u043D\u0438\u044F \u0438 \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 \u0440\u0435\u043A\u043B\u0430\u043C\u043D\u044B\u0445 \u043A\u0430\u043C\u043F\u0430\u043D\u0438\u0439 \u043D\u0430 \u043C\u0430\u0440\u043A\u0435\u0442\u043F\u043B\u0435\u0439\u0441\u0430\u0445.")
19
+ }, {
20
+ title: "\u042D\u043A\u043E\u043D\u043E\u043C\u0438\u044F \u0432\u0440\u0435\u043C\u0435\u043D\u0438 \u0438 \u0434\u0435\u043D\u0435\u0433",
21
+ description: /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, "\xB7 \u0421\u0447\u0438\u0442\u0430\u0439 \u0431\u044E\u0434\u0436\u0435\u0442 \u0438 \u043A\u043E\u043D\u0442\u0440\u043E\u043B\u0438\u0440\u0443\u0439 \u0440\u0430\u0441\u0445\u043E\u0434\u044B \u0438\u0437 \u0435\u0434\u0438\u043D\u043E\u0433\u043E \u043B\u0438\u0447\u043D\u043E\u0433\u043E \u043A\u0430\u0431\u0438\u043D\u0435\u0442\u0430.", /*#__PURE__*/_react["default"].createElement("br", null), "\xB7 \u0410\u0432\u0442\u043E\u043C\u0430\u0442\u0438\u0437\u0438\u0440\u0443\u0439 \u0440\u0443\u0442\u0438\u043D\u043D\u044B\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 \u0438 \u043E\u0441\u0432\u043E\u0431\u043E\u0434\u0438 \u0431\u043E\u043B\u0435\u0435 50% \u0440\u0430\u0431\u043E\u0447\u0435\u0433\u043E \u0432\u0440\u0435\u043C\u0435\u043D\u0438.", /*#__PURE__*/_react["default"].createElement("br", null), "\xB7 \u0421\u044D\u043A\u043E\u043D\u043E\u043C\u044C 40% \u0431\u044E\u0434\u0436\u0435\u0442\u0430 \u043A\u043E\u043C\u043F\u0430\u043D\u0438\u0438 \u0437\u0430 \u0441\u0447\u0451\u0442 \u043E\u043F\u0442\u0438\u043C\u0438\u0437\u0430\u0446\u0438\u0438 \u0431\u0438\u0437\u043D\u0435\u0441-\u043F\u0440\u043E\u0446\u0435\u0441\u0441\u043E\u0432.")
22
+ }, {
23
+ title: "\u0410\u0432\u0442\u043E\u043C\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044F \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u043E\u0432",
24
+ description: /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, "\xB7 \u0410\u0432\u0442\u043E\u043C\u0430\u0442\u0438\u0437\u0438\u0440\u0443\u0439 \u0431\u043E\u043B\u0435\u0435 75% \u0432\u0441\u0435\u0445 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u043E\u0432, \u043A\u043E\u0442\u043E\u0440\u044B\u0435 \u0432\u044B\u043F\u043E\u043B\u043D\u044F\u044E\u0442\u0441\u044F \u0440\u0443\u043A\u0430\u043C\u0438.", /*#__PURE__*/_react["default"].createElement("br", null), "\xB7 \u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439 \u0441\u044D\u043A\u043E\u043D\u043E\u043C\u043B\u0435\u043D\u043D\u043E\u0435 \u0432\u0440\u0435\u043C\u044F \u043D\u0430 \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u0438 \u043C\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0435 \u0431\u0438\u0437\u043D\u0435\u0441\u0430.", /*#__PURE__*/_react["default"].createElement("br", null))
25
+ }];
26
+ var _default = exports["default"] = {
27
+ title: 'FeaturesGridV2',
28
+ component: _FeaturesGridV["default"]
29
+ };
30
+ var FeaturesGridTest = exports.FeaturesGridTest = function FeaturesGridTest() {
31
+ return /*#__PURE__*/_react["default"].createElement(_FeaturesGridV["default"], {
32
+ title: "\u041F\u0440\u0435\u0438\u043C\u0443\u0449\u0435\u0441\u0442\u0432\u0430",
33
+ description: '60% клиентов сотрудничают с нами уже более 2-х лет',
34
+ list: advantages_list
35
+ });
36
+ };
@@ -0,0 +1,139 @@
1
+ "use strict";
2
+
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _ModalBitrixForm = _interopRequireDefault(require("../../Article/FormBtn/ModalBitrixForm/ModalBitrixForm"));
10
+ require("./FormV2.scss");
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
12
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
13
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
14
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
15
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
16
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
17
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
18
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
19
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
20
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } // FormV2.jsx — альтернативная версия с кастомной кнопкой, если ButtonBasic не гибкий
21
+ // DOTASK (токены без изменений)
22
+ var token_DOTASK = 'gAAAAABopIEPlTICTdgD52GgH_GRFS30Tou2Ok2ICeC3ECQ8_aSQMMjTqU0HS7y9krbifcKbXroyR0iMmN6UXq1KL4xP0UtjYg==';
23
+ var url_DOTASK = "https://apps0.ecomru.ru:4447/api/crm/deals/create?step_id=167&token=".concat(token_DOTASK, "&author=546&responsible=546");
24
+ var name_id_DOTASK = 'f_61';
25
+ var form_data_DOTASK = [{
26
+ id: 'name',
27
+ placeholder: '',
28
+ hidden: true,
29
+ value: 'Лид клиент',
30
+ inputType: 'text',
31
+ type: 'input'
32
+ }, {
33
+ id: 'f_61',
34
+ placeholder: 'Имя',
35
+ inputType: 'name',
36
+ required: true,
37
+ type: 'input'
38
+ }, {
39
+ id: 'f_62',
40
+ placeholder: 'Email',
41
+ inputType: 'email',
42
+ type: 'input',
43
+ required: true
44
+ }, {
45
+ id: 'f_63',
46
+ placeholder: 'Телефон',
47
+ inputType: 'tel',
48
+ type: 'input',
49
+ required: true
50
+ }, {
51
+ id: 'f_64',
52
+ placeholder: 'Комментарий',
53
+ inputType: 'description',
54
+ type: 'textarea',
55
+ required: true
56
+ }];
57
+
58
+ // ECOMRU
59
+ var token_ECOMRU = 'gAAAAABoic_FGeFf0ovZb3kdbMwakwFHd6KhIdq7IZEaQxjQx4LjfB2mu4_nj3xmzAWRvCI3XP_AIkeoPnYCnyid3sZhkm3xaA==';
60
+ var url_ECOMRU = "https://apps0.ecomru.ru:4447/api/crm/deals/create?step_id=157&token=".concat(token_ECOMRU, "&author=197&responsible=546");
61
+ var name_id_ECOMRU = 'f_34';
62
+ var form_data_ECOMRU = [{
63
+ id: 'name',
64
+ placeholder: '',
65
+ hidden: true,
66
+ value: 'Лид клиент',
67
+ inputType: 'text',
68
+ type: 'input'
69
+ }, {
70
+ id: 'f_34',
71
+ placeholder: 'Имя',
72
+ inputType: 'name',
73
+ required: true,
74
+ type: 'input'
75
+ }, {
76
+ id: 'f_33',
77
+ placeholder: 'Email',
78
+ inputType: 'email',
79
+ type: 'input',
80
+ required: true
81
+ }, {
82
+ id: 'f_35',
83
+ placeholder: 'Телефон',
84
+ inputType: 'tel',
85
+ type: 'input',
86
+ required: true
87
+ }, {
88
+ id: 'f_58',
89
+ placeholder: 'Комментарий',
90
+ inputType: 'description',
91
+ type: 'textarea',
92
+ required: true
93
+ }];
94
+ var FormV2 = function FormV2(_ref) {
95
+ var _ref$title = _ref.title,
96
+ title = _ref$title === void 0 ? 'Попробуй бесплатно' : _ref$title,
97
+ _ref$description = _ref.description,
98
+ description = _ref$description === void 0 ? 'Запишись на консультацию с нашим специалистом, чтобы получить бесплатный доступ к платформе на месяц' : _ref$description;
99
+ var _useState = (0, _react.useState)(false),
100
+ _useState2 = _slicedToArray(_useState, 2),
101
+ isModal = _useState2[0],
102
+ setIsModal = _useState2[1];
103
+ var currentProps = function currentProps() {
104
+ var isClient = typeof window !== 'undefined';
105
+ var currentUrl = isClient ? window.location.href : '';
106
+ if (currentUrl !== null && currentUrl !== void 0 && currentUrl.includes('dotask.ru')) {
107
+ return {
108
+ bitrixToken: token_DOTASK,
109
+ inputArr: form_data_DOTASK,
110
+ nameId: name_id_DOTASK,
111
+ urlFetch: url_DOTASK
112
+ };
113
+ } else {
114
+ return {
115
+ bitrixToken: token_ECOMRU,
116
+ inputArr: form_data_ECOMRU,
117
+ nameId: name_id_ECOMRU,
118
+ urlFetch: url_ECOMRU
119
+ };
120
+ }
121
+ };
122
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, isModal && /*#__PURE__*/_react["default"].createElement(_ModalBitrixForm["default"], _extends({
123
+ modal: true,
124
+ setIsModal: setIsModal,
125
+ formTitle: 'Желаемый способ связи'
126
+ }, currentProps())), /*#__PURE__*/_react["default"].createElement("section", {
127
+ className: "form-with-btn"
128
+ }, /*#__PURE__*/_react["default"].createElement("h2", {
129
+ className: "form-with-btn__title"
130
+ }, title), /*#__PURE__*/_react["default"].createElement("p", {
131
+ className: "form-with-btn__description"
132
+ }, description), /*#__PURE__*/_react["default"].createElement("button", {
133
+ className: "form-with-btn__button",
134
+ onClick: function onClick() {
135
+ return setIsModal(true);
136
+ }
137
+ }, "\u041F\u043E\u043F\u0440\u043E\u0431\u043E\u0432\u0430\u0442\u044C \u0431\u0435\u0441\u043F\u043B\u0430\u0442\u043D\u043E \u2192")));
138
+ };
139
+ var _default = exports["default"] = FormV2;
@@ -0,0 +1,153 @@
1
+ @import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
2
+ @import '../variables.scss';
3
+
4
+ .form-with-btn {
5
+ background: linear-gradient(135deg, $green-forest 0%, $green-light 100%);
6
+ padding: 48px 40px;
7
+ text-align: center;
8
+ position: relative;
9
+ overflow: hidden;
10
+
11
+ * {
12
+ font-family: 'Manrope', 'Golos Text', sans-serif !important;
13
+ }
14
+
15
+ // Декоративные элементы
16
+ &::before {
17
+ content: '';
18
+ position: absolute;
19
+ top: -60px;
20
+ right: -60px;
21
+ width: 260px;
22
+ height: 260px;
23
+ background: rgba(255, 255, 255, 0.06);
24
+ border-radius: 50%;
25
+ pointer-events: none;
26
+ }
27
+
28
+ &::after {
29
+ content: '';
30
+ position: absolute;
31
+ bottom: -80px;
32
+ left: -40px;
33
+ width: 220px;
34
+ height: 220px;
35
+ background: rgba(255, 255, 255, 0.04);
36
+ border-radius: 50%;
37
+ pointer-events: none;
38
+ }
39
+
40
+ &__title {
41
+ font-family: 'Manrope', sans-serif;
42
+ font-size: 34px;
43
+ font-weight: 800;
44
+ letter-spacing: -1px;
45
+ color: #FFFFFF;
46
+ margin-bottom: 16px;
47
+ line-height: 1.2;
48
+ position: relative;
49
+ z-index: 1;
50
+ }
51
+
52
+ &__description {
53
+ font-family: 'Manrope', sans-serif;
54
+ font-size: 16px;
55
+ line-height: 1.5;
56
+ color: rgba(255, 255, 255, 0.8);
57
+ margin-bottom: 32px;
58
+ max-width: 500px;
59
+ margin-left: auto;
60
+ margin-right: auto;
61
+ position: relative;
62
+ z-index: 1;
63
+ }
64
+
65
+ &__button {
66
+ position: relative;
67
+ z-index: 1;
68
+ background: #FFFFFF;
69
+ color: $green;
70
+ border: none;
71
+ border-radius: 12px;
72
+ padding: 14px 28px;
73
+ font-size: 16px;
74
+ font-weight: 700;
75
+ font-family: 'Manrope', sans-serif;
76
+ cursor: pointer;
77
+ transition: all 0.2s ease;
78
+ box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);
79
+ display: inline-flex;
80
+ align-items: center;
81
+ justify-content: center;
82
+ gap: 8px;
83
+ width: 100%;
84
+ max-width: 430px;
85
+ margin: 0 auto;
86
+
87
+ &:hover {
88
+ transform: translateY(-2px);
89
+ box-shadow: 0 12px 32px rgba(0, 0, 0, 0.25);
90
+ background: #FFFFFF;
91
+ }
92
+
93
+ &:active {
94
+ transform: translateY(0);
95
+ }
96
+ }
97
+ }
98
+
99
+ // Мобильная адаптация
100
+ @media (max-width: 768px) {
101
+ .form-with-btn {
102
+ padding: 36px 24px;
103
+ border-radius: 20px;
104
+
105
+ &__title {
106
+ font-size: 26px;
107
+ letter-spacing: -0.5px;
108
+ margin-bottom: 12px;
109
+ }
110
+
111
+ &__description {
112
+ font-size: 14px;
113
+ margin-bottom: 24px;
114
+ padding: 0 8px;
115
+ }
116
+
117
+ &__button {
118
+ font-size: 15px;
119
+ padding: 13px 24px;
120
+ max-width: 100%;
121
+ }
122
+ }
123
+ }
124
+
125
+ @media (max-width: 480px) {
126
+ .form-with-btn {
127
+ padding: 28px 20px;
128
+
129
+ &__title {
130
+ font-size: 22px;
131
+ }
132
+
133
+ &__description {
134
+ font-size: 13px;
135
+ line-height: 1.45;
136
+ }
137
+
138
+ &__button {
139
+ font-size: 14px;
140
+ padding: 12px 20px;
141
+ }
142
+ }
143
+ }
144
+
145
+ @media (min-width: 769px) and (max-width: 1024px) {
146
+ .form-with-btn {
147
+ padding: 42px 32px;
148
+
149
+ &__title {
150
+ font-size: 30px;
151
+ }
152
+ }
153
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = exports.FormV2Test = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _FormV = _interopRequireDefault(require("./FormV2"));
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
10
+ var _default = exports["default"] = {
11
+ title: 'FormV2',
12
+ component: _FormV["default"]
13
+ };
14
+ var FormV2Test = exports.FormV2Test = function FormV2Test() {
15
+ return /*#__PURE__*/_react["default"].createElement(_FormV["default"], null);
16
+ };
@@ -21,7 +21,7 @@ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructur
21
21
  function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
22
22
  function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
23
23
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
24
- function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } //import { ButtonBasic, InputDinamycPlaceholder, DropContainer } from '@lk-gtcom/ecomlab-components';
24
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
25
25
  var Header = function Header(_ref) {
26
26
  var title = _ref.title,
27
27
  description = _ref.description,