@alfalab/core-components-confirmation 14.0.1 → 14.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (284) hide show
  1. package/component.responsive.d.ts +2 -2
  2. package/component.responsive.js.map +1 -1
  3. package/components/base-confirmation/component.d.ts +2 -2
  4. package/components/base-confirmation/component.js +4 -3
  5. package/components/base-confirmation/component.js.map +1 -1
  6. package/components/base-confirmation/index.css +3 -3
  7. package/components/base-confirmation/index.module.css.js +1 -1
  8. package/components/base-confirmation/index.module.css.js.map +1 -1
  9. package/components/countdown-loader/component.d.ts +1 -1
  10. package/components/countdown-loader/component.js.map +1 -1
  11. package/components/countdown-loader/index.css +1 -1
  12. package/components/countdown-loader/index.module.css.js +1 -1
  13. package/components/countdown-loader/index.module.css.js.map +1 -1
  14. package/components/header/component.d.ts +6 -1
  15. package/components/header/component.js +2 -2
  16. package/components/header/component.js.map +1 -1
  17. package/components/header/index.css +5 -5
  18. package/components/header/index.module.css.js +1 -1
  19. package/components/screens/fatal-error/component.d.ts +1 -1
  20. package/components/screens/fatal-error/component.js +2 -2
  21. package/components/screens/fatal-error/component.js.map +1 -1
  22. package/components/screens/fatal-error/index.css +8 -10
  23. package/components/screens/fatal-error/index.module.css.js +1 -1
  24. package/components/screens/hint/component.d.ts +1 -1
  25. package/components/screens/hint/component.js +2 -2
  26. package/components/screens/hint/component.js.map +1 -1
  27. package/components/screens/hint/index.css +16 -18
  28. package/components/screens/hint/index.module.css.js +1 -1
  29. package/components/screens/initial/component.d.ts +1 -1
  30. package/components/screens/initial/component.js +2 -2
  31. package/components/screens/initial/component.js.map +1 -1
  32. package/components/screens/initial/countdown-section.d.ts +1 -1
  33. package/components/screens/initial/countdown-section.js.map +1 -1
  34. package/components/screens/initial/index.css +22 -24
  35. package/components/screens/initial/index.module.css.js +1 -1
  36. package/components/screens/temp-block/component.d.ts +1 -1
  37. package/components/screens/temp-block/component.js +2 -2
  38. package/components/screens/temp-block/component.js.map +1 -1
  39. package/components/screens/temp-block/index.css +10 -12
  40. package/components/screens/temp-block/index.module.css.js +1 -1
  41. package/components/screens/temp-block-over/component.d.ts +1 -1
  42. package/components/screens/temp-block-over/component.js +2 -2
  43. package/components/screens/temp-block-over/component.js.map +1 -1
  44. package/components/screens/temp-block-over/index.css +7 -9
  45. package/components/screens/temp-block-over/index.module.css.js +1 -1
  46. package/context.d.ts +1 -1
  47. package/context.js +1 -0
  48. package/context.js.map +1 -1
  49. package/cssm/component.responsive.d.ts +2 -2
  50. package/cssm/component.responsive.js.map +1 -1
  51. package/cssm/components/base-confirmation/component.d.ts +2 -2
  52. package/cssm/components/base-confirmation/component.js +4 -3
  53. package/cssm/components/base-confirmation/component.js.map +1 -1
  54. package/cssm/components/base-confirmation/index.module.css +1 -1
  55. package/cssm/components/countdown-loader/component.d.ts +1 -1
  56. package/cssm/components/countdown-loader/component.js.map +1 -1
  57. package/cssm/components/header/component.d.ts +6 -1
  58. package/cssm/components/header/component.js +2 -2
  59. package/cssm/components/header/component.js.map +1 -1
  60. package/cssm/components/header/index.module.css +2 -2
  61. package/cssm/components/screens/fatal-error/component.d.ts +1 -1
  62. package/cssm/components/screens/fatal-error/component.js +2 -2
  63. package/cssm/components/screens/fatal-error/component.js.map +1 -1
  64. package/cssm/components/screens/fatal-error/index.module.css +2 -4
  65. package/cssm/components/screens/hint/component.d.ts +1 -1
  66. package/cssm/components/screens/hint/component.js +2 -2
  67. package/cssm/components/screens/hint/component.js.map +1 -1
  68. package/cssm/components/screens/hint/index.module.css +4 -6
  69. package/cssm/components/screens/initial/component.d.ts +1 -1
  70. package/cssm/components/screens/initial/component.js +2 -2
  71. package/cssm/components/screens/initial/component.js.map +1 -1
  72. package/cssm/components/screens/initial/countdown-section.d.ts +1 -1
  73. package/cssm/components/screens/initial/countdown-section.js.map +1 -1
  74. package/cssm/components/screens/initial/index.module.css +3 -5
  75. package/cssm/components/screens/temp-block/component.d.ts +1 -1
  76. package/cssm/components/screens/temp-block/component.js +2 -2
  77. package/cssm/components/screens/temp-block/component.js.map +1 -1
  78. package/cssm/components/screens/temp-block/index.module.css +2 -4
  79. package/cssm/components/screens/temp-block-over/component.d.ts +1 -1
  80. package/cssm/components/screens/temp-block-over/component.js +2 -2
  81. package/cssm/components/screens/temp-block-over/component.js.map +1 -1
  82. package/cssm/components/screens/temp-block-over/index.module.css +2 -4
  83. package/cssm/context.d.ts +1 -1
  84. package/cssm/context.js +1 -0
  85. package/cssm/context.js.map +1 -1
  86. package/cssm/desktop/component.desktop.d.ts +2 -2
  87. package/cssm/desktop/component.desktop.js.map +1 -1
  88. package/cssm/mobile/component.mobile.d.ts +2 -2
  89. package/cssm/mobile/component.mobile.js.map +1 -1
  90. package/cssm/types.d.ts +13 -8
  91. package/cssm/types.js.map +1 -1
  92. package/cssm/utils.d.ts +1 -1
  93. package/cssm/utils.js.map +1 -1
  94. package/desktop/component.desktop.d.ts +2 -2
  95. package/desktop/component.desktop.js.map +1 -1
  96. package/esm/component.responsive.d.ts +2 -2
  97. package/esm/component.responsive.js.map +1 -1
  98. package/esm/components/base-confirmation/component.d.ts +2 -2
  99. package/esm/components/base-confirmation/component.js +4 -3
  100. package/esm/components/base-confirmation/component.js.map +1 -1
  101. package/esm/components/base-confirmation/index.css +3 -3
  102. package/esm/components/base-confirmation/index.module.css.js +1 -1
  103. package/esm/components/base-confirmation/index.module.css.js.map +1 -1
  104. package/esm/components/countdown-loader/component.d.ts +1 -1
  105. package/esm/components/countdown-loader/component.js.map +1 -1
  106. package/esm/components/countdown-loader/index.css +1 -1
  107. package/esm/components/countdown-loader/index.module.css.js +1 -1
  108. package/esm/components/countdown-loader/index.module.css.js.map +1 -1
  109. package/esm/components/header/component.d.ts +6 -1
  110. package/esm/components/header/component.js +2 -2
  111. package/esm/components/header/component.js.map +1 -1
  112. package/esm/components/header/index.css +5 -5
  113. package/esm/components/header/index.module.css.js +1 -1
  114. package/esm/components/screens/fatal-error/component.d.ts +1 -1
  115. package/esm/components/screens/fatal-error/component.js +2 -2
  116. package/esm/components/screens/fatal-error/component.js.map +1 -1
  117. package/esm/components/screens/fatal-error/index.css +8 -10
  118. package/esm/components/screens/fatal-error/index.module.css.js +1 -1
  119. package/esm/components/screens/hint/component.d.ts +1 -1
  120. package/esm/components/screens/hint/component.js +2 -2
  121. package/esm/components/screens/hint/component.js.map +1 -1
  122. package/esm/components/screens/hint/index.css +16 -18
  123. package/esm/components/screens/hint/index.module.css.js +1 -1
  124. package/esm/components/screens/initial/component.d.ts +1 -1
  125. package/esm/components/screens/initial/component.js +2 -2
  126. package/esm/components/screens/initial/component.js.map +1 -1
  127. package/esm/components/screens/initial/countdown-section.d.ts +1 -1
  128. package/esm/components/screens/initial/countdown-section.js.map +1 -1
  129. package/esm/components/screens/initial/index.css +22 -24
  130. package/esm/components/screens/initial/index.module.css.js +1 -1
  131. package/esm/components/screens/temp-block/component.d.ts +1 -1
  132. package/esm/components/screens/temp-block/component.js +2 -2
  133. package/esm/components/screens/temp-block/component.js.map +1 -1
  134. package/esm/components/screens/temp-block/index.css +10 -12
  135. package/esm/components/screens/temp-block/index.module.css.js +1 -1
  136. package/esm/components/screens/temp-block-over/component.d.ts +1 -1
  137. package/esm/components/screens/temp-block-over/component.js +2 -2
  138. package/esm/components/screens/temp-block-over/component.js.map +1 -1
  139. package/esm/components/screens/temp-block-over/index.css +7 -9
  140. package/esm/components/screens/temp-block-over/index.module.css.js +1 -1
  141. package/esm/context.d.ts +1 -1
  142. package/esm/context.js +1 -0
  143. package/esm/context.js.map +1 -1
  144. package/esm/desktop/component.desktop.d.ts +2 -2
  145. package/esm/desktop/component.desktop.js.map +1 -1
  146. package/esm/mobile/component.mobile.d.ts +2 -2
  147. package/esm/mobile/component.mobile.js.map +1 -1
  148. package/esm/mobile/mobile.css +1 -1
  149. package/esm/mobile/mobile.module.css.js +1 -1
  150. package/esm/types.d.ts +13 -8
  151. package/esm/types.js.map +1 -1
  152. package/esm/utils.d.ts +1 -1
  153. package/esm/utils.js.map +1 -1
  154. package/mobile/component.mobile.d.ts +2 -2
  155. package/mobile/component.mobile.js.map +1 -1
  156. package/mobile/mobile.css +1 -1
  157. package/mobile/mobile.module.css.js +1 -1
  158. package/modern/component.responsive.d.ts +2 -2
  159. package/modern/component.responsive.js.map +1 -1
  160. package/modern/components/base-confirmation/component.d.ts +2 -2
  161. package/modern/components/base-confirmation/component.js +3 -2
  162. package/modern/components/base-confirmation/component.js.map +1 -1
  163. package/modern/components/base-confirmation/index.css +3 -3
  164. package/modern/components/base-confirmation/index.module.css.js +1 -1
  165. package/modern/components/base-confirmation/index.module.css.js.map +1 -1
  166. package/modern/components/countdown-loader/component.d.ts +1 -1
  167. package/modern/components/countdown-loader/component.js.map +1 -1
  168. package/modern/components/countdown-loader/index.css +1 -1
  169. package/modern/components/countdown-loader/index.module.css.js +1 -1
  170. package/modern/components/countdown-loader/index.module.css.js.map +1 -1
  171. package/modern/components/header/component.d.ts +6 -1
  172. package/modern/components/header/component.js +1 -1
  173. package/modern/components/header/component.js.map +1 -1
  174. package/modern/components/header/index.css +5 -5
  175. package/modern/components/header/index.module.css.js +1 -1
  176. package/modern/components/screens/fatal-error/component.d.ts +1 -1
  177. package/modern/components/screens/fatal-error/component.js +2 -2
  178. package/modern/components/screens/fatal-error/component.js.map +1 -1
  179. package/modern/components/screens/fatal-error/index.css +8 -10
  180. package/modern/components/screens/fatal-error/index.module.css.js +1 -1
  181. package/modern/components/screens/hint/component.d.ts +1 -1
  182. package/modern/components/screens/hint/component.js +2 -2
  183. package/modern/components/screens/hint/component.js.map +1 -1
  184. package/modern/components/screens/hint/index.css +16 -18
  185. package/modern/components/screens/hint/index.module.css.js +1 -1
  186. package/modern/components/screens/initial/component.d.ts +1 -1
  187. package/modern/components/screens/initial/component.js +2 -2
  188. package/modern/components/screens/initial/component.js.map +1 -1
  189. package/modern/components/screens/initial/countdown-section.d.ts +1 -1
  190. package/modern/components/screens/initial/countdown-section.js.map +1 -1
  191. package/modern/components/screens/initial/index.css +22 -24
  192. package/modern/components/screens/initial/index.module.css.js +1 -1
  193. package/modern/components/screens/temp-block/component.d.ts +1 -1
  194. package/modern/components/screens/temp-block/component.js +2 -2
  195. package/modern/components/screens/temp-block/component.js.map +1 -1
  196. package/modern/components/screens/temp-block/index.css +10 -12
  197. package/modern/components/screens/temp-block/index.module.css.js +1 -1
  198. package/modern/components/screens/temp-block-over/component.d.ts +1 -1
  199. package/modern/components/screens/temp-block-over/component.js +2 -2
  200. package/modern/components/screens/temp-block-over/component.js.map +1 -1
  201. package/modern/components/screens/temp-block-over/index.css +7 -9
  202. package/modern/components/screens/temp-block-over/index.module.css.js +1 -1
  203. package/modern/context.d.ts +1 -1
  204. package/modern/context.js +1 -0
  205. package/modern/context.js.map +1 -1
  206. package/modern/desktop/component.desktop.d.ts +2 -2
  207. package/modern/desktop/component.desktop.js.map +1 -1
  208. package/modern/mobile/component.mobile.d.ts +2 -2
  209. package/modern/mobile/component.mobile.js.map +1 -1
  210. package/modern/mobile/mobile.css +1 -1
  211. package/modern/mobile/mobile.module.css.js +1 -1
  212. package/modern/types.d.ts +13 -8
  213. package/modern/types.js.map +1 -1
  214. package/modern/utils.d.ts +1 -1
  215. package/modern/utils.js.map +1 -1
  216. package/moderncssm/component.responsive.d.ts +2 -2
  217. package/moderncssm/component.responsive.js.map +1 -1
  218. package/moderncssm/components/base-confirmation/component.d.ts +2 -2
  219. package/moderncssm/components/base-confirmation/component.js +3 -2
  220. package/moderncssm/components/base-confirmation/component.js.map +1 -1
  221. package/moderncssm/components/base-confirmation/index.module.css +3 -2
  222. package/moderncssm/components/countdown-loader/component.d.ts +1 -1
  223. package/moderncssm/components/countdown-loader/component.js.map +1 -1
  224. package/moderncssm/components/countdown-loader/index.module.css +2 -0
  225. package/moderncssm/components/header/component.d.ts +6 -1
  226. package/moderncssm/components/header/component.js +1 -1
  227. package/moderncssm/components/header/component.js.map +1 -1
  228. package/moderncssm/components/header/index.module.css +2 -0
  229. package/moderncssm/components/screens/fatal-error/component.d.ts +1 -1
  230. package/moderncssm/components/screens/fatal-error/component.js +2 -2
  231. package/moderncssm/components/screens/fatal-error/component.js.map +1 -1
  232. package/moderncssm/components/screens/fatal-error/index.module.css +2 -2
  233. package/moderncssm/components/screens/hint/component.d.ts +1 -1
  234. package/moderncssm/components/screens/hint/component.js +2 -2
  235. package/moderncssm/components/screens/hint/component.js.map +1 -1
  236. package/moderncssm/components/screens/hint/index.module.css +4 -4
  237. package/moderncssm/components/screens/initial/component.d.ts +1 -1
  238. package/moderncssm/components/screens/initial/component.js +2 -2
  239. package/moderncssm/components/screens/initial/component.js.map +1 -1
  240. package/moderncssm/components/screens/initial/countdown-section.d.ts +1 -1
  241. package/moderncssm/components/screens/initial/countdown-section.js.map +1 -1
  242. package/moderncssm/components/screens/initial/index.module.css +3 -3
  243. package/moderncssm/components/screens/temp-block/component.d.ts +1 -1
  244. package/moderncssm/components/screens/temp-block/component.js +2 -2
  245. package/moderncssm/components/screens/temp-block/component.js.map +1 -1
  246. package/moderncssm/components/screens/temp-block/index.module.css +2 -2
  247. package/moderncssm/components/screens/temp-block-over/component.d.ts +1 -1
  248. package/moderncssm/components/screens/temp-block-over/component.js +2 -2
  249. package/moderncssm/components/screens/temp-block-over/component.js.map +1 -1
  250. package/moderncssm/components/screens/temp-block-over/index.module.css +2 -2
  251. package/moderncssm/context.d.ts +1 -1
  252. package/moderncssm/context.js +1 -0
  253. package/moderncssm/context.js.map +1 -1
  254. package/moderncssm/desktop/component.desktop.d.ts +2 -2
  255. package/moderncssm/desktop/component.desktop.js.map +1 -1
  256. package/moderncssm/mobile/component.mobile.d.ts +2 -2
  257. package/moderncssm/mobile/component.mobile.js.map +1 -1
  258. package/moderncssm/types.d.ts +13 -8
  259. package/moderncssm/types.js.map +1 -1
  260. package/moderncssm/utils.d.ts +1 -1
  261. package/moderncssm/utils.js.map +1 -1
  262. package/package.json +3 -3
  263. package/src/component.responsive.tsx +2 -2
  264. package/src/components/base-confirmation/component.tsx +5 -6
  265. package/src/components/base-confirmation/index.module.css +1 -1
  266. package/src/components/countdown-loader/component.tsx +1 -1
  267. package/src/components/countdown-loader/index.module.css +1 -1
  268. package/src/components/header/component.tsx +9 -3
  269. package/src/components/screens/fatal-error/component.tsx +5 -3
  270. package/src/components/screens/hint/component.tsx +5 -3
  271. package/src/components/screens/initial/component.tsx +9 -3
  272. package/src/components/screens/initial/countdown-section.tsx +1 -1
  273. package/src/components/screens/temp-block/component.tsx +12 -4
  274. package/src/components/screens/temp-block-over/component.tsx +5 -3
  275. package/src/context.ts +2 -1
  276. package/src/desktop/component.desktop.tsx +2 -2
  277. package/src/mobile/component.mobile.tsx +2 -2
  278. package/src/types.ts +14 -7
  279. package/src/utils.ts +1 -1
  280. package/src/vars.css +1 -1
  281. package/types.d.ts +13 -8
  282. package/types.js.map +1 -1
  283. package/utils.d.ts +1 -1
  284. package/utils.js.map +1 -1
@@ -15,8 +15,8 @@ var styles__default = /*#__PURE__*/_interopDefaultCompat(styles);
15
15
 
16
16
  var Header = function (_a) {
17
17
  var _b;
18
- var mobile = _a.mobile, children = _a.children;
19
- return (React__default.default.createElement(cssm.TitleDesktop, { className: cn__default.default(styles__default.default.header, styles__default.default.typography, (_b = {}, _b[styles__default.default.typographyMobile] = mobile, _b)), tag: 'h3', color: 'primary' }, children));
18
+ var mobile = _a.mobile, children = _a.children, _c = _a.titleTag, titleTag = _c === void 0 ? 'h3' : _c;
19
+ return (React__default.default.createElement(cssm.TitleDesktop, { className: cn__default.default(styles__default.default.header, styles__default.default.typography, (_b = {}, _b[styles__default.default.typographyMobile] = mobile, _b)), tag: titleTag, color: 'primary' }, children));
20
20
  };
21
21
 
22
22
  exports.Header = Header;
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sources":["../../../src/components/header/component.tsx"],"sourcesContent":["import React, { FC, ReactNode } from 'react';\nimport cn from 'classnames';\n\nimport { TitleDesktop } from '@alfalab/core-components-typography';\n\nimport styles from './index.module.css';\n\nexport type HeaderProps = {\n /**\n * Контент шапки\n */\n children?: ReactNode;\n\n /**\n * Отображать в мобильной версии экран компонента\n */\n mobile?: boolean;\n};\n\nexport const Header: FC<HeaderProps> = ({ mobile, children }) => (\n <TitleDesktop\n className={cn(styles.header, styles.typography, { [styles.typographyMobile]: mobile })}\n tag='h3'\n color='primary'\n >\n {children}\n </TitleDesktop>\n);\n"],"names":["React","TitleDesktop","cn","styles"],"mappings":";;;;;;;;;;;;;;;AAmBO,IAAM,MAAM,GAAoB,UAAC,EAAoB,EAAA;;QAAlB,MAAM,GAAA,EAAA,CAAA,MAAA,EAAE,QAAQ,GAAA,EAAA,CAAA,QAAA;AAAO,IAAA,QAC7DA,sBAAA,CAAA,aAAA,CAACC,iBAAY,EAAA,EACT,SAAS,EAAEC,mBAAE,CAACC,uBAAM,CAAC,MAAM,EAAEA,uBAAM,CAAC,UAAU,GAAI,EAAA,GAAA,EAAA,EAAA,EAAA,CAACA,uBAAM,CAAC,gBAAgB,CAAA,GAAG,MAAM,EAAA,EAAA,EAAG,EACtF,GAAG,EAAC,IAAI,EACR,KAAK,EAAC,SAAS,EAEd,EAAA,QAAQ,CACE;AAP8C;;;;"}
1
+ {"version":3,"file":"component.js","sources":["../../../src/components/header/component.tsx"],"sourcesContent":["import React, { type FC, type ReactNode } from 'react';\nimport cn from 'classnames';\n\nimport { TitleDesktop } from '@alfalab/core-components-typography';\n\nimport styles from './index.module.css';\n\nexport type HeaderProps = {\n /**\n * Контент шапки\n */\n children?: ReactNode;\n\n /**\n * Отображать в мобильной версии экран компонента\n */\n mobile?: boolean;\n\n /**\n * HTML тег для заголовка\n * @default 'h3'\n */\n titleTag?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n};\n\nexport const Header: FC<HeaderProps> = ({ mobile, children, titleTag = 'h3' }) => (\n <TitleDesktop\n className={cn(styles.header, styles.typography, { [styles.typographyMobile]: mobile })}\n tag={titleTag}\n color='primary'\n >\n {children}\n </TitleDesktop>\n);\n"],"names":["React","TitleDesktop","cn","styles"],"mappings":";;;;;;;;;;;;;;;AAyBO,IAAM,MAAM,GAAoB,UAAC,EAAqC,EAAA;;QAAnC,MAAM,GAAA,EAAA,CAAA,MAAA,EAAE,QAAQ,GAAA,EAAA,CAAA,QAAA,EAAE,gBAAe,EAAf,QAAQ,GAAG,EAAA,KAAA,MAAA,GAAA,IAAI,GAAA,EAAA;AAAO,IAAA,QAC9EA,sBAAA,CAAA,aAAA,CAACC,iBAAY,EAAA,EACT,SAAS,EAAEC,mBAAE,CAACC,uBAAM,CAAC,MAAM,EAAEA,uBAAM,CAAC,UAAU,GAAI,EAAA,GAAA,EAAA,EAAA,EAAA,CAACA,uBAAM,CAAC,gBAAgB,CAAA,GAAG,MAAM,EAAA,EAAA,EAAG,EACtF,GAAG,EAAE,QAAQ,EACb,KAAK,EAAC,SAAS,EAEd,EAAA,QAAQ,CACE;AAP+D;;;;"}
@@ -2,8 +2,8 @@
2
2
  --gap-xl: 24px;
3
3
  --gap-24: var(--gap-xl);
4
4
  } :root {
5
- --font-family-system: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Helvetica,
6
- sans-serif;
5
+ --font-family-system:
6
+ system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Helvetica, sans-serif;
7
7
  } :root {
8
8
  --confirmation-header-desktop-font-size: 22px;
9
9
  --confirmation-header-desktop-line-height: 26px;
@@ -1,4 +1,4 @@
1
- import { FC } from 'react';
1
+ import { type FC } from 'react';
2
2
  export declare type FatalErrorProps = {
3
3
  /**
4
4
  * Отображать в мобильной версии экран компонента
@@ -19,9 +19,9 @@ var styles__default = /*#__PURE__*/_interopDefaultCompat(styles);
19
19
  var FatalError = function (_a) {
20
20
  var _b;
21
21
  var mobile = _a.mobile;
22
- var _c = React.useContext(context.ConfirmationContext), alignContent = _c.alignContent, texts = _c.texts, onFatalErrorOkButtonClick = _c.onFatalErrorOkButtonClick, breakpoint = _c.breakpoint, client = _c.client;
22
+ var _c = React.useContext(context.ConfirmationContext), alignContent = _c.alignContent, titleTag = _c.titleTag, texts = _c.texts, onFatalErrorOkButtonClick = _c.onFatalErrorOkButtonClick, breakpoint = _c.breakpoint, client = _c.client;
23
23
  return (React__default.default.createElement("div", { className: cn__default.default(styles__default.default.component, styles__default.default[alignContent]) },
24
- React__default.default.createElement(component.Header, { mobile: mobile }, texts.fatalErrorTitle),
24
+ React__default.default.createElement(component.Header, { mobile: mobile, titleTag: titleTag }, texts.fatalErrorTitle),
25
25
  React__default.default.createElement(cssm.Text, { view: 'primary-medium', color: 'primary', className: cn__default.default((_b = {},
26
26
  _b[styles__default.default.typographyTheme] = !mobile,
27
27
  _b[styles__default.default.typographyThemeMobile] = mobile,
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sources":["../../../../src/components/screens/fatal-error/component.tsx"],"sourcesContent":["import React, { FC, useContext } from 'react';\nimport cn from 'classnames';\n\nimport { Button } from '@alfalab/core-components-button';\nimport { Text } from '@alfalab/core-components-typography';\n\nimport { ConfirmationContext } from '../../../context';\nimport { Header } from '../../header';\n\nimport styles from './index.module.css';\n\nexport type FatalErrorProps = {\n /**\n * Отображать в мобильной версии экран компонента\n */\n mobile?: boolean;\n};\n\nexport const FatalError: FC<FatalErrorProps> = ({ mobile }) => {\n const { alignContent, texts, onFatalErrorOkButtonClick, breakpoint, client } =\n useContext(ConfirmationContext);\n\n return (\n <div className={cn(styles.component, styles[alignContent])}>\n <Header mobile={mobile}>{texts.fatalErrorTitle}</Header>\n\n <Text\n view='primary-medium'\n color='primary'\n className={cn({\n [styles.typographyTheme]: !mobile,\n [styles.typographyThemeMobile]: mobile,\n })}\n >\n {texts.fatalErrorDescription}\n </Text>\n\n <Button\n size={mobile ? 'xs' : 's'}\n view='secondary'\n onClick={onFatalErrorOkButtonClick}\n className={styles.button}\n breakpoint={breakpoint}\n client={client}\n >\n {texts.fatalErrorButton}\n </Button>\n </div>\n );\n};\n"],"names":["useContext","ConfirmationContext","React","cn","styles","Header","Text","Button"],"mappings":";;;;;;;;;;;;;;;;;;AAkBO,IAAM,UAAU,GAAwB,UAAC,EAAU,EAAA;;AAAR,IAAA,IAAA,MAAM,GAAA,EAAA,CAAA,MAAA;IAC9C,IAAA,EAAA,GACFA,gBAAU,CAACC,2BAAmB,CAAC,EAD3B,YAAY,kBAAA,EAAE,KAAK,WAAA,EAAE,yBAAyB,+BAAA,EAAE,UAAU,gBAAA,EAAE,MAAM,YACvC;AAEnC,IAAA,QACIC,sBAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAEC,mBAAE,CAACC,uBAAM,CAAC,SAAS,EAAEA,uBAAM,CAAC,YAAY,CAAC,CAAC,EAAA;QACtDF,sBAAC,CAAA,aAAA,CAAAG,gBAAM,IAAC,MAAM,EAAE,MAAM,EAAG,EAAA,KAAK,CAAC,eAAe,CAAU;AAExD,QAAAH,sBAAA,CAAA,aAAA,CAACI,SAAI,EAAA,EACD,IAAI,EAAC,gBAAgB,EACrB,KAAK,EAAC,SAAS,EACf,SAAS,EAAEH,mBAAE,EAAA,EAAA,GAAA,EAAA;AACT,gBAAA,EAAA,CAACC,uBAAM,CAAC,eAAe,CAAA,GAAG,CAAC,MAAM;AACjC,gBAAA,EAAA,CAACA,uBAAM,CAAC,qBAAqB,CAAA,GAAG,MAAM;oBACxC,EAED,EAAA,KAAK,CAAC,qBAAqB,CACzB;AAEP,QAAAF,sBAAA,CAAA,aAAA,CAACK,aAAM,EACH,EAAA,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,GAAG,EACzB,IAAI,EAAC,WAAW,EAChB,OAAO,EAAE,yBAAyB,EAClC,SAAS,EAAEH,uBAAM,CAAC,MAAM,EACxB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,IAEb,KAAK,CAAC,gBAAgB,CAClB,CACP;AAEd;;;;"}
1
+ {"version":3,"file":"component.js","sources":["../../../../src/components/screens/fatal-error/component.tsx"],"sourcesContent":["import React, { type FC, useContext } from 'react';\nimport cn from 'classnames';\n\nimport { Button } from '@alfalab/core-components-button';\nimport { Text } from '@alfalab/core-components-typography';\n\nimport { ConfirmationContext } from '../../../context';\nimport { Header } from '../../header';\n\nimport styles from './index.module.css';\n\nexport type FatalErrorProps = {\n /**\n * Отображать в мобильной версии экран компонента\n */\n mobile?: boolean;\n};\n\nexport const FatalError: FC<FatalErrorProps> = ({ mobile }) => {\n const { alignContent, titleTag, texts, onFatalErrorOkButtonClick, breakpoint, client } =\n useContext(ConfirmationContext);\n\n return (\n <div className={cn(styles.component, styles[alignContent])}>\n <Header mobile={mobile} titleTag={titleTag}>\n {texts.fatalErrorTitle}\n </Header>\n\n <Text\n view='primary-medium'\n color='primary'\n className={cn({\n [styles.typographyTheme]: !mobile,\n [styles.typographyThemeMobile]: mobile,\n })}\n >\n {texts.fatalErrorDescription}\n </Text>\n\n <Button\n size={mobile ? 'xs' : 's'}\n view='secondary'\n onClick={onFatalErrorOkButtonClick}\n className={styles.button}\n breakpoint={breakpoint}\n client={client}\n >\n {texts.fatalErrorButton}\n </Button>\n </div>\n );\n};\n"],"names":["useContext","ConfirmationContext","React","cn","styles","Header","Text","Button"],"mappings":";;;;;;;;;;;;;;;;;;AAkBO,IAAM,UAAU,GAAwB,UAAC,EAAU,EAAA;;AAAR,IAAA,IAAA,MAAM,GAAA,EAAA,CAAA,MAAA;IAC9C,IAAA,EAAA,GACFA,gBAAU,CAACC,2BAAmB,CAAC,EAD3B,YAAY,GAAA,EAAA,CAAA,YAAA,EAAE,QAAQ,GAAA,EAAA,CAAA,QAAA,EAAE,KAAK,GAAA,EAAA,CAAA,KAAA,EAAE,yBAAyB,GAAA,EAAA,CAAA,yBAAA,EAAE,UAAU,GAAA,EAAA,CAAA,UAAA,EAAE,MAAM,GAAA,EAAA,CAAA,MACjD;AAEnC,IAAA,QACIC,sBAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAEC,mBAAE,CAACC,uBAAM,CAAC,SAAS,EAAEA,uBAAM,CAAC,YAAY,CAAC,CAAC,EAAA;AACtD,QAAAF,sBAAA,CAAA,aAAA,CAACG,gBAAM,EAAA,EAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAA,EACrC,KAAK,CAAC,eAAe,CACjB;AAET,QAAAH,sBAAA,CAAA,aAAA,CAACI,SAAI,EAAA,EACD,IAAI,EAAC,gBAAgB,EACrB,KAAK,EAAC,SAAS,EACf,SAAS,EAAEH,mBAAE,EAAA,EAAA,GAAA,EAAA;AACT,gBAAA,EAAA,CAACC,uBAAM,CAAC,eAAe,CAAA,GAAG,CAAC,MAAM;AACjC,gBAAA,EAAA,CAACA,uBAAM,CAAC,qBAAqB,CAAA,GAAG,MAAM;oBACxC,EAED,EAAA,KAAK,CAAC,qBAAqB,CACzB;AAEP,QAAAF,sBAAA,CAAA,aAAA,CAACK,aAAM,EACH,EAAA,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,GAAG,EACzB,IAAI,EAAC,WAAW,EAChB,OAAO,EAAE,yBAAyB,EAClC,SAAS,EAAEH,uBAAM,CAAC,MAAM,EACxB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,IAEb,KAAK,CAAC,gBAAgB,CAClB,CACP;AAEd;;;;"}
@@ -5,16 +5,14 @@
5
5
  --gap-2xl: 32px;
6
6
  --gap-32: var(--gap-2xl);
7
7
  } :root {
8
- --font-family-system: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Helvetica,
9
- sans-serif;
8
+ --font-family-system:
9
+ system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Helvetica, sans-serif;
10
10
  } :root {
11
11
  --confirmation-text-font-size: 16px;
12
12
  --confirmation-text-line-height: 24px;
13
13
  --confirmation-text-font-weight: 400;
14
14
  --confirmation-text-font-family: var(--font-family-system);
15
15
  --confirmation-text-color: var(--color-light-text-primary)
16
-
17
- /* header */
18
16
  } .component {
19
17
  display: flex;
20
18
  flex-direction: column;
@@ -1,4 +1,4 @@
1
- import { FC } from 'react';
1
+ import { type FC } from 'react';
2
2
  export declare type HintProps = {
3
3
  /**
4
4
  * Отображать в мобильной версии экран компонента
@@ -21,14 +21,14 @@ var styles__default = /*#__PURE__*/_interopDefaultCompat(styles);
21
21
  var Hint = function (_a) {
22
22
  var _b, _c, _d, _e, _f, _g, _h, _j, _k;
23
23
  var mobile = _a.mobile;
24
- var _l = React.useContext(context.ConfirmationContext), alignContent = _l.alignContent, texts = _l.texts, onChangeScreen = _l.onChangeScreen, onChangeState = _l.onChangeState, breakpoint = _l.breakpoint, client = _l.client;
24
+ var _l = React.useContext(context.ConfirmationContext), alignContent = _l.alignContent, titleTag = _l.titleTag, texts = _l.texts, onChangeScreen = _l.onChangeScreen, onChangeState = _l.onChangeState, breakpoint = _l.breakpoint, client = _l.client;
25
25
  var _m = texts.domesticPhone, domesticPhone = _m === void 0 ? '' : _m, _o = texts.internationalPhone, internationalPhone = _o === void 0 ? '' : _o, hintButton = texts.hintButton;
26
26
  var handleReturnButtonClick = function () {
27
27
  onChangeScreen('INITIAL');
28
28
  onChangeState('INITIAL');
29
29
  };
30
30
  return (React__default.default.createElement("div", { className: cn__default.default(styles__default.default.component, styles__default.default[alignContent]) },
31
- React__default.default.createElement(component.Header, { mobile: mobile }, texts.hintTitle),
31
+ React__default.default.createElement(component.Header, { mobile: mobile, titleTag: titleTag }, texts.hintTitle),
32
32
  React__default.default.createElement(cssm.Text, { view: 'primary-medium', color: 'primary', className: cn__default.default(styles__default.default.text, (_b = {},
33
33
  _b[styles__default.default.typographyTheme] = !mobile,
34
34
  _b[styles__default.default.typographyThemeMobile] = mobile,
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sources":["../../../../src/components/screens/hint/component.tsx"],"sourcesContent":["import React, { FC, useContext } from 'react';\nimport cn from 'classnames';\n\nimport { Button } from '@alfalab/core-components-button';\nimport { Link } from '@alfalab/core-components-link';\nimport { Text } from '@alfalab/core-components-typography';\n\nimport { ConfirmationContext } from '../../../context';\nimport { getPhoneHref } from '../../../utils';\nimport { Header } from '../../header';\n\nimport styles from './index.module.css';\n\nexport type HintProps = {\n /**\n * Отображать в мобильной версии экран компонента\n */\n mobile?: boolean;\n};\n\nexport const Hint: FC<HintProps> = ({ mobile }) => {\n const { alignContent, texts, onChangeScreen, onChangeState, breakpoint, client } =\n useContext(ConfirmationContext);\n\n const { domesticPhone = '', internationalPhone = '', hintButton } = texts;\n\n const handleReturnButtonClick = () => {\n onChangeScreen('INITIAL');\n onChangeState('INITIAL');\n };\n\n return (\n <div className={cn(styles.component, styles[alignContent])}>\n <Header mobile={mobile}>{texts.hintTitle}</Header>\n\n <Text\n view='primary-medium'\n color='primary'\n className={cn(styles.text, {\n [styles.typographyTheme]: !mobile,\n [styles.typographyThemeMobile]: mobile,\n })}\n >\n {texts.hintDescription}\n </Text>\n\n <div\n className={cn(styles.phonesWrap, {\n [styles.phonesWrapMobile]: mobile,\n })}\n >\n <div className={cn(styles.phoneWrap, { [styles.phoneContentMobile]: mobile })}>\n <Link\n href={getPhoneHref(internationalPhone)}\n underline={false}\n className={cn(styles.phoneLink, { [styles.typographyThemeMobile]: mobile })}\n >\n {internationalPhone}\n </Link>\n <Text\n view='primary-medium'\n color='primary'\n className={cn(styles.text, {\n [styles.typographyTheme]: !mobile,\n [styles.typographyThemeMobile]: mobile,\n })}\n >\n {mobile\n ? 'В\\u00A0Москве и\\u00A0за\\u00A0границей'\n : ' \\u2014\\u00A0в\\u00A0Москве и\\u00A0за\\u00A0границей'}\n </Text>\n </div>\n\n <div className={cn(styles.phoneWrap, { [styles.phoneContentMobile]: mobile })}>\n <Link\n href={getPhoneHref(domesticPhone)}\n underline={false}\n className={cn(styles.phoneLink, { [styles.typographyThemeMobile]: mobile })}\n >\n {domesticPhone}\n </Link>\n <Text\n view='primary-medium'\n color='primary'\n className={cn(styles.text, {\n [styles.typographyTheme]: !mobile,\n [styles.typographyThemeMobile]: mobile,\n })}\n >\n {mobile\n ? 'Для\\u00A0звонков по\\u00A0России'\n : ' \\u2014\\u00A0для звонков по\\u00A0России'}\n </Text>\n </div>\n </div>\n\n <Text\n view='primary-medium'\n color='primary'\n className={cn(styles.text, {\n [styles.typographyTheme]: !mobile,\n [styles.typographyThemeMobile]: mobile,\n })}\n >\n {texts.hintNotification}\n </Text>\n <Button\n size={mobile ? 'xs' : 's'}\n view='secondary'\n onClick={handleReturnButtonClick}\n className={styles.hintButton}\n breakpoint={breakpoint}\n client={client}\n >\n {hintButton}\n </Button>\n </div>\n );\n};\n"],"names":["useContext","ConfirmationContext","React","cn","styles","Header","Text","Link","getPhoneHref","Button"],"mappings":"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"}
1
+ {"version":3,"file":"component.js","sources":["../../../../src/components/screens/hint/component.tsx"],"sourcesContent":["import React, { type FC, useContext } from 'react';\nimport cn from 'classnames';\n\nimport { Button } from '@alfalab/core-components-button';\nimport { Link } from '@alfalab/core-components-link';\nimport { Text } from '@alfalab/core-components-typography';\n\nimport { ConfirmationContext } from '../../../context';\nimport { getPhoneHref } from '../../../utils';\nimport { Header } from '../../header';\n\nimport styles from './index.module.css';\n\nexport type HintProps = {\n /**\n * Отображать в мобильной версии экран компонента\n */\n mobile?: boolean;\n};\n\nexport const Hint: FC<HintProps> = ({ mobile }) => {\n const { alignContent, titleTag, texts, onChangeScreen, onChangeState, breakpoint, client } =\n useContext(ConfirmationContext);\n\n const { domesticPhone = '', internationalPhone = '', hintButton } = texts;\n\n const handleReturnButtonClick = () => {\n onChangeScreen('INITIAL');\n onChangeState('INITIAL');\n };\n\n return (\n <div className={cn(styles.component, styles[alignContent])}>\n <Header mobile={mobile} titleTag={titleTag}>\n {texts.hintTitle}\n </Header>\n\n <Text\n view='primary-medium'\n color='primary'\n className={cn(styles.text, {\n [styles.typographyTheme]: !mobile,\n [styles.typographyThemeMobile]: mobile,\n })}\n >\n {texts.hintDescription}\n </Text>\n\n <div\n className={cn(styles.phonesWrap, {\n [styles.phonesWrapMobile]: mobile,\n })}\n >\n <div className={cn(styles.phoneWrap, { [styles.phoneContentMobile]: mobile })}>\n <Link\n href={getPhoneHref(internationalPhone)}\n underline={false}\n className={cn(styles.phoneLink, { [styles.typographyThemeMobile]: mobile })}\n >\n {internationalPhone}\n </Link>\n <Text\n view='primary-medium'\n color='primary'\n className={cn(styles.text, {\n [styles.typographyTheme]: !mobile,\n [styles.typographyThemeMobile]: mobile,\n })}\n >\n {mobile\n ? 'В\\u00A0Москве и\\u00A0за\\u00A0границей'\n : ' \\u2014\\u00A0в\\u00A0Москве и\\u00A0за\\u00A0границей'}\n </Text>\n </div>\n\n <div className={cn(styles.phoneWrap, { [styles.phoneContentMobile]: mobile })}>\n <Link\n href={getPhoneHref(domesticPhone)}\n underline={false}\n className={cn(styles.phoneLink, { [styles.typographyThemeMobile]: mobile })}\n >\n {domesticPhone}\n </Link>\n <Text\n view='primary-medium'\n color='primary'\n className={cn(styles.text, {\n [styles.typographyTheme]: !mobile,\n [styles.typographyThemeMobile]: mobile,\n })}\n >\n {mobile\n ? 'Для\\u00A0звонков по\\u00A0России'\n : ' \\u2014\\u00A0для звонков по\\u00A0России'}\n </Text>\n </div>\n </div>\n\n <Text\n view='primary-medium'\n color='primary'\n className={cn(styles.text, {\n [styles.typographyTheme]: !mobile,\n [styles.typographyThemeMobile]: mobile,\n })}\n >\n {texts.hintNotification}\n </Text>\n <Button\n size={mobile ? 'xs' : 's'}\n view='secondary'\n onClick={handleReturnButtonClick}\n className={styles.hintButton}\n breakpoint={breakpoint}\n client={client}\n >\n {hintButton}\n </Button>\n </div>\n );\n};\n"],"names":["useContext","ConfirmationContext","React","cn","styles","Header","Text","Link","getPhoneHref","Button"],"mappings":"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"}
@@ -10,20 +10,18 @@
10
10
  --gap-24: var(--gap-xl);
11
11
  --gap-32: var(--gap-2xl);
12
12
  } :root {
13
- --font-family-system: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Helvetica,
14
- sans-serif;
13
+ --font-family-system:
14
+ system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Helvetica, sans-serif;
15
15
  } :root {
16
16
  --confirmation-text-font-size: 16px;
17
17
  --confirmation-text-line-height: 24px;
18
18
  --confirmation-text-font-weight: 400;
19
19
  --confirmation-text-font-family: var(--font-family-system);
20
20
  --confirmation-text-color: var(--color-light-text-primary)
21
-
22
- /* header */
23
21
  } .component {
24
22
  display: flex;
25
23
  flex-direction: column;
26
- align-items: flex-start
24
+ align-items: flex-start;
27
25
  } .component span:last-of-type {
28
26
  margin-bottom: var(--gap-0);
29
27
  } .center {
@@ -44,7 +42,7 @@
44
42
  flex-direction: column;
45
43
  margin-bottom: var(--gap-24);
46
44
  } .phoneWrap {
47
- margin-bottom: var(--gap-8)
45
+ margin-bottom: var(--gap-8);
48
46
  } .phoneWrap:last-child {
49
47
  margin-bottom: var(--gap-0);
50
48
  } .phoneLink.phoneLink {
@@ -1,4 +1,4 @@
1
- import { FC } from 'react';
1
+ import { type FC } from 'react';
2
2
  export declare type InitialProps = {
3
3
  /**
4
4
  * Отображать в мобильной версии экран компонента
@@ -25,7 +25,7 @@ var CODE_SEND_HINT_VISIBLE_DURATION = 2000;
25
25
  var Initial = function (_a) {
26
26
  var _b;
27
27
  var mobile$2 = _a.mobile;
28
- var _c = React.useContext(context.ConfirmationContext), state = _c.state, alignContent = _c.alignContent, texts = _c.texts, requiredCharAmount = _c.requiredCharAmount, timeLeft = _c.timeLeft, phone = _c.phone, clearCodeOnError = _c.clearCodeOnError, hideCountdownSection = _c.hideCountdownSection, initialScreenHintSlot = _c.initialScreenHintSlot, errorVisibleDuration = _c.errorVisibleDuration, onChangeState = _c.onChangeState, onInputFinished = _c.onInputFinished, onChangeScreen = _c.onChangeScreen, onSmsRetryClick = _c.onSmsRetryClick;
28
+ var _c = React.useContext(context.ConfirmationContext), state = _c.state, alignContent = _c.alignContent, titleTag = _c.titleTag, texts = _c.texts, requiredCharAmount = _c.requiredCharAmount, timeLeft = _c.timeLeft, phone = _c.phone, clearCodeOnError = _c.clearCodeOnError, hideCountdownSection = _c.hideCountdownSection, initialScreenHintSlot = _c.initialScreenHintSlot, errorVisibleDuration = _c.errorVisibleDuration, onChangeState = _c.onChangeState, onInputFinished = _c.onInputFinished, onChangeScreen = _c.onChangeScreen, onSmsRetryClick = _c.onSmsRetryClick;
29
29
  var prevState = hooks.usePrevious(state);
30
30
  var inputRef = React.useRef(null);
31
31
  var _d = React.useState(false), codeSendHintVisible = _d[0], setCodeSendHintVisible = _d[1];
@@ -105,7 +105,7 @@ var Initial = function (_a) {
105
105
  var timePassed = timeLeft === 0;
106
106
  var ComponentCodeInput = mobile$2 ? mobile.CodeInputMobile : desktop.CodeInputDesktop;
107
107
  return (React__default.default.createElement("div", { className: cn__default.default(styles__default.default.component, styles__default.default[alignContent]) },
108
- React__default.default.createElement(component.Header, { mobile: mobile$2 }, texts.title),
108
+ React__default.default.createElement(component.Header, { mobile: mobile$2, titleTag: titleTag }, texts.title),
109
109
  phone ? (React__default.default.createElement(cssm.Text, { view: 'primary-medium', color: 'primary', className: cn__default.default(styles__default.default.phone, (_b = {},
110
110
  _b[styles__default.default.typographyTheme] = !mobile$2,
111
111
  _b[styles__default.default.typographyThemeMobile] = mobile$2,
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sources":["../../../../src/components/screens/initial/component.tsx"],"sourcesContent":["import React, { FC, useCallback, useContext, useEffect, useRef, useState } from 'react';\nimport cn from 'classnames';\n\nimport { ButtonMobile } from '@alfalab/core-components-button/mobile';\nimport { CodeInputDesktop } from '@alfalab/core-components-code-input/desktop';\nimport { CodeInputMobile } from '@alfalab/core-components-code-input/mobile';\nimport { BaseCodeInputProps, CustomInputRef } from '@alfalab/core-components-code-input/shared';\nimport { Link } from '@alfalab/core-components-link';\nimport { Text } from '@alfalab/core-components-typography';\nimport { useLayoutEffect_SAFE_FOR_SSR, usePrevious } from '@alfalab/hooks';\n\nimport { ConfirmationContext } from '../../../context';\nimport { Header } from '../../header';\n\nimport { CountdownSection } from './countdown-section';\n\nimport styles from './index.module.css';\n\nexport type InitialProps = {\n /**\n * Отображать в мобильной версии экран компонента\n */\n mobile?: boolean;\n};\n\nconst CODE_SEND_HINT_VISIBLE_DURATION = 2000;\n\nexport const Initial: FC<InitialProps> = ({ mobile }) => {\n const {\n state,\n alignContent,\n texts,\n requiredCharAmount,\n timeLeft,\n phone,\n clearCodeOnError,\n hideCountdownSection,\n initialScreenHintSlot,\n errorVisibleDuration,\n onChangeState,\n onInputFinished,\n onChangeScreen,\n onSmsRetryClick,\n } = useContext(ConfirmationContext);\n\n const prevState = usePrevious(state);\n\n const inputRef = useRef<CustomInputRef>(null);\n\n const [codeSendHintVisible, setCodeSendHintVisible] = useState(false);\n\n const timerId = useRef(0);\n\n const handleInputComplete: BaseCodeInputProps['onComplete'] = (code) => {\n onInputFinished(code);\n };\n\n const handleSmsHintLinkClick = () => {\n onChangeScreen('HINT');\n };\n\n const handleInputChange = () => {\n if (state === 'CODE_ERROR') {\n onChangeState('INITIAL');\n }\n };\n\n const handleSmsRetryClick = () => {\n if (inputRef.current) {\n inputRef.current.reset();\n }\n\n onSmsRetryClick();\n };\n\n const handleErrorAnimationEnd = () => {\n if (clearCodeOnError && state !== 'INITIAL') {\n onChangeState('INITIAL');\n }\n };\n\n const clearTimer = useCallback(() => {\n window.clearTimeout(timerId.current);\n }, []);\n\n useEffect(() => {\n if (inputRef.current) {\n inputRef.current.focus();\n }\n\n return () => {\n clearTimer();\n };\n }, [clearTimer]);\n\n useEffect(() => {\n if (!inputRef.current) {\n return;\n }\n\n if (prevState === 'CODE_SENDING' && state !== 'CODE_SENDING') {\n inputRef.current.focus();\n }\n }, [prevState, state, requiredCharAmount]);\n\n useLayoutEffect_SAFE_FOR_SSR(() => {\n if (prevState === 'CODE_SENDING' && state !== 'CODE_SENDING') {\n setCodeSendHintVisible(true);\n\n clearTimer();\n\n timerId.current = window.setTimeout(() => {\n setCodeSendHintVisible(false);\n }, CODE_SEND_HINT_VISIBLE_DURATION);\n }\n }, [prevState, state, clearTimer]);\n\n const getCodeInputError = (): string | boolean => {\n if (state === 'CODE_EXPIRED') {\n return texts.codeErrorExpired || true;\n }\n\n if (state === 'CODE_EXPIRED_ENDED') {\n return texts.codeErrorExpiredEnded || true;\n }\n\n if (state === 'CODE_ERROR') {\n return texts.codeError || true;\n }\n\n return false;\n };\n\n const renderHintButton = () => {\n if (initialScreenHintSlot) {\n return initialScreenHintSlot;\n }\n\n if (mobile) {\n return (\n <ButtonMobile\n onClick={handleSmsHintLinkClick}\n className={styles.smsBtn}\n view='text'\n size='xs'\n >\n {texts.linkToHint}\n </ButtonMobile>\n );\n }\n\n return (\n <Link\n onClick={handleSmsHintLinkClick}\n className={styles.smsComeLink}\n view={mobile ? 'primary' : 'secondary'}\n pseudo={true}\n >\n {texts.linkToHint}\n </Link>\n );\n };\n\n const processing = ['CODE_CHECKING', 'CODE_SENDING'].includes(state);\n\n const timePassed = timeLeft === 0;\n\n const ComponentCodeInput = mobile ? CodeInputMobile : CodeInputDesktop;\n\n return (\n <div className={cn(styles.component, styles[alignContent])}>\n <Header mobile={mobile}>{texts.title}</Header>\n\n {phone ? (\n <Text\n view='primary-medium'\n color='primary'\n className={cn(styles.phone, {\n [styles.typographyTheme]: !mobile,\n [styles.typographyThemeMobile]: mobile,\n })}\n >\n Отправили на {phone}\n </Text>\n ) : null}\n <ComponentCodeInput\n disabled={processing}\n error={getCodeInputError()}\n ref={inputRef}\n fields={requiredCharAmount}\n className={cn(styles.containerInput, styles.codeInput)}\n onComplete={handleInputComplete}\n onChange={handleInputChange}\n clearCodeOnError={clearCodeOnError}\n errorVisibleDuration={errorVisibleDuration}\n onErrorAnimationEnd={handleErrorAnimationEnd}\n />\n {!hideCountdownSection && (\n <CountdownSection\n processing={processing}\n timePassed={timePassed}\n codeSendHintVisible={codeSendHintVisible}\n handleSmsRetryClick={handleSmsRetryClick}\n mobile={mobile}\n />\n )}\n\n {renderHintButton()}\n </div>\n );\n};\n"],"names":["mobile","useContext","ConfirmationContext","usePrevious","useRef","useState","useCallback","useEffect","useLayoutEffect_SAFE_FOR_SSR","React","ButtonMobile","styles","Link","CodeInputMobile","CodeInputDesktop","cn","Header","Text","CountdownSection"],"mappings":"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"}
1
+ {"version":3,"file":"component.js","sources":["../../../../src/components/screens/initial/component.tsx"],"sourcesContent":["import React, { type FC, useCallback, useContext, useEffect, useRef, useState } from 'react';\nimport cn from 'classnames';\n\nimport { ButtonMobile } from '@alfalab/core-components-button/mobile';\nimport { CodeInputDesktop } from '@alfalab/core-components-code-input/desktop';\nimport { CodeInputMobile } from '@alfalab/core-components-code-input/mobile';\nimport {\n type BaseCodeInputProps,\n type CustomInputRef,\n} from '@alfalab/core-components-code-input/shared';\nimport { Link } from '@alfalab/core-components-link';\nimport { Text } from '@alfalab/core-components-typography';\nimport { useLayoutEffect_SAFE_FOR_SSR, usePrevious } from '@alfalab/hooks';\n\nimport { ConfirmationContext } from '../../../context';\nimport { Header } from '../../header';\n\nimport { CountdownSection } from './countdown-section';\n\nimport styles from './index.module.css';\n\nexport type InitialProps = {\n /**\n * Отображать в мобильной версии экран компонента\n */\n mobile?: boolean;\n};\n\nconst CODE_SEND_HINT_VISIBLE_DURATION = 2000;\n\nexport const Initial: FC<InitialProps> = ({ mobile }) => {\n const {\n state,\n alignContent,\n titleTag,\n texts,\n requiredCharAmount,\n timeLeft,\n phone,\n clearCodeOnError,\n hideCountdownSection,\n initialScreenHintSlot,\n errorVisibleDuration,\n onChangeState,\n onInputFinished,\n onChangeScreen,\n onSmsRetryClick,\n } = useContext(ConfirmationContext);\n\n const prevState = usePrevious(state);\n\n const inputRef = useRef<CustomInputRef>(null);\n\n const [codeSendHintVisible, setCodeSendHintVisible] = useState(false);\n\n const timerId = useRef(0);\n\n const handleInputComplete: BaseCodeInputProps['onComplete'] = (code) => {\n onInputFinished(code);\n };\n\n const handleSmsHintLinkClick = () => {\n onChangeScreen('HINT');\n };\n\n const handleInputChange = () => {\n if (state === 'CODE_ERROR') {\n onChangeState('INITIAL');\n }\n };\n\n const handleSmsRetryClick = () => {\n if (inputRef.current) {\n inputRef.current.reset();\n }\n\n onSmsRetryClick();\n };\n\n const handleErrorAnimationEnd = () => {\n if (clearCodeOnError && state !== 'INITIAL') {\n onChangeState('INITIAL');\n }\n };\n\n const clearTimer = useCallback(() => {\n window.clearTimeout(timerId.current);\n }, []);\n\n useEffect(() => {\n if (inputRef.current) {\n inputRef.current.focus();\n }\n\n return () => {\n clearTimer();\n };\n }, [clearTimer]);\n\n useEffect(() => {\n if (!inputRef.current) {\n return;\n }\n\n if (prevState === 'CODE_SENDING' && state !== 'CODE_SENDING') {\n inputRef.current.focus();\n }\n }, [prevState, state, requiredCharAmount]);\n\n useLayoutEffect_SAFE_FOR_SSR(() => {\n if (prevState === 'CODE_SENDING' && state !== 'CODE_SENDING') {\n setCodeSendHintVisible(true);\n\n clearTimer();\n\n timerId.current = window.setTimeout(() => {\n setCodeSendHintVisible(false);\n }, CODE_SEND_HINT_VISIBLE_DURATION);\n }\n }, [prevState, state, clearTimer]);\n\n const getCodeInputError = (): string | boolean => {\n if (state === 'CODE_EXPIRED') {\n return texts.codeErrorExpired || true;\n }\n\n if (state === 'CODE_EXPIRED_ENDED') {\n return texts.codeErrorExpiredEnded || true;\n }\n\n if (state === 'CODE_ERROR') {\n return texts.codeError || true;\n }\n\n return false;\n };\n\n const renderHintButton = () => {\n if (initialScreenHintSlot) {\n return initialScreenHintSlot;\n }\n\n if (mobile) {\n return (\n <ButtonMobile\n onClick={handleSmsHintLinkClick}\n className={styles.smsBtn}\n view='text'\n size='xs'\n >\n {texts.linkToHint}\n </ButtonMobile>\n );\n }\n\n return (\n <Link\n onClick={handleSmsHintLinkClick}\n className={styles.smsComeLink}\n view={mobile ? 'primary' : 'secondary'}\n pseudo={true}\n >\n {texts.linkToHint}\n </Link>\n );\n };\n\n const processing = ['CODE_CHECKING', 'CODE_SENDING'].includes(state);\n\n const timePassed = timeLeft === 0;\n\n const ComponentCodeInput = mobile ? CodeInputMobile : CodeInputDesktop;\n\n return (\n <div className={cn(styles.component, styles[alignContent])}>\n <Header mobile={mobile} titleTag={titleTag}>\n {texts.title}\n </Header>\n\n {phone ? (\n <Text\n view='primary-medium'\n color='primary'\n className={cn(styles.phone, {\n [styles.typographyTheme]: !mobile,\n [styles.typographyThemeMobile]: mobile,\n })}\n >\n Отправили на {phone}\n </Text>\n ) : null}\n <ComponentCodeInput\n disabled={processing}\n error={getCodeInputError()}\n ref={inputRef}\n fields={requiredCharAmount}\n className={cn(styles.containerInput, styles.codeInput)}\n onComplete={handleInputComplete}\n onChange={handleInputChange}\n clearCodeOnError={clearCodeOnError}\n errorVisibleDuration={errorVisibleDuration}\n onErrorAnimationEnd={handleErrorAnimationEnd}\n />\n {!hideCountdownSection && (\n <CountdownSection\n processing={processing}\n timePassed={timePassed}\n codeSendHintVisible={codeSendHintVisible}\n handleSmsRetryClick={handleSmsRetryClick}\n mobile={mobile}\n />\n )}\n\n {renderHintButton()}\n </div>\n );\n};\n"],"names":["mobile","useContext","ConfirmationContext","usePrevious","useRef","useState","useCallback","useEffect","useLayoutEffect_SAFE_FOR_SSR","React","ButtonMobile","styles","Link","CodeInputMobile","CodeInputDesktop","cn","Header","Text","CountdownSection"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { FC } from 'react';
1
+ import { type FC } from 'react';
2
2
  declare type CountdownSectionProps = {
3
3
  codeSendHintVisible: boolean;
4
4
  timePassed: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"countdown-section.js","sources":["../../../../src/components/screens/initial/countdown-section.tsx"],"sourcesContent":["import React, { FC, Fragment, ReactNode, useContext } from 'react';\nimport cn from 'classnames';\n\nimport { Button } from '@alfalab/core-components-button';\nimport { Spinner } from '@alfalab/core-components-spinner';\nimport { Text } from '@alfalab/core-components-typography';\n\nimport { ConfirmationContext } from '../../../context';\nimport { formatMsAsMinutes } from '../../../utils';\n\nimport styles from './index.module.css';\n\ntype CountdownSectionProps = {\n codeSendHintVisible: boolean;\n timePassed: boolean;\n processing: boolean;\n mobile?: boolean;\n handleSmsRetryClick: () => void;\n};\n\nexport const CountdownSection: FC<CountdownSectionProps> = ({\n codeSendHintVisible,\n timePassed,\n processing,\n mobile,\n handleSmsRetryClick,\n}) => {\n const { state, texts, timeLeft, blockSmsRetry, breakpoint, client } =\n useContext(ConfirmationContext);\n\n const renderText = (content: ReactNode) => (\n <Text\n className={cn(styles.countdownContainer, {\n [styles.countdownMobile]: mobile,\n [styles.typographyTheme]: !mobile,\n })}\n view={mobile ? 'primary-small' : 'primary-medium'}\n tag='div'\n >\n {content}\n </Text>\n );\n\n if (codeSendHintVisible) return renderText(texts.codeSended);\n\n if (processing) {\n return (\n <div\n className={cn(styles.loaderWrap, styles.countdownContainer, {\n [styles.countdownLoaderMobile]: mobile,\n [styles.typographyTheme]: !mobile,\n })}\n >\n <Spinner preset={24} visible={true} />\n\n <span className={styles.loaderText}>\n {state === 'CODE_CHECKING' ? texts.codeChecking : texts.codeSending}\n </span>\n </div>\n );\n }\n\n if (blockSmsRetry) return renderText(texts.noAttemptsLeft);\n\n if (timePassed) {\n return (\n <Button\n size={mobile ? 'xs' : 'xxs'}\n view='secondary'\n onClick={handleSmsRetryClick}\n className={cn(styles.getCodeButton, { [styles.getCodeButtonMobile]: mobile })}\n breakpoint={breakpoint}\n client={client}\n >\n {texts.buttonRetry}\n </Button>\n );\n }\n\n return renderText(\n <Fragment>\n {texts.countdown}\n {'\\u00A0'}\n <time className={styles.timeCounter}>{formatMsAsMinutes(timeLeft)}</time>\n </Fragment>,\n );\n};\n"],"names":["useContext","ConfirmationContext","React","Text","cn","styles","Spinner","Button","Fragment","formatMsAsMinutes"],"mappings":"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"}
1
+ {"version":3,"file":"countdown-section.js","sources":["../../../../src/components/screens/initial/countdown-section.tsx"],"sourcesContent":["import React, { type FC, Fragment, type ReactNode, useContext } from 'react';\nimport cn from 'classnames';\n\nimport { Button } from '@alfalab/core-components-button';\nimport { Spinner } from '@alfalab/core-components-spinner';\nimport { Text } from '@alfalab/core-components-typography';\n\nimport { ConfirmationContext } from '../../../context';\nimport { formatMsAsMinutes } from '../../../utils';\n\nimport styles from './index.module.css';\n\ntype CountdownSectionProps = {\n codeSendHintVisible: boolean;\n timePassed: boolean;\n processing: boolean;\n mobile?: boolean;\n handleSmsRetryClick: () => void;\n};\n\nexport const CountdownSection: FC<CountdownSectionProps> = ({\n codeSendHintVisible,\n timePassed,\n processing,\n mobile,\n handleSmsRetryClick,\n}) => {\n const { state, texts, timeLeft, blockSmsRetry, breakpoint, client } =\n useContext(ConfirmationContext);\n\n const renderText = (content: ReactNode) => (\n <Text\n className={cn(styles.countdownContainer, {\n [styles.countdownMobile]: mobile,\n [styles.typographyTheme]: !mobile,\n })}\n view={mobile ? 'primary-small' : 'primary-medium'}\n tag='div'\n >\n {content}\n </Text>\n );\n\n if (codeSendHintVisible) return renderText(texts.codeSended);\n\n if (processing) {\n return (\n <div\n className={cn(styles.loaderWrap, styles.countdownContainer, {\n [styles.countdownLoaderMobile]: mobile,\n [styles.typographyTheme]: !mobile,\n })}\n >\n <Spinner preset={24} visible={true} />\n\n <span className={styles.loaderText}>\n {state === 'CODE_CHECKING' ? texts.codeChecking : texts.codeSending}\n </span>\n </div>\n );\n }\n\n if (blockSmsRetry) return renderText(texts.noAttemptsLeft);\n\n if (timePassed) {\n return (\n <Button\n size={mobile ? 'xs' : 'xxs'}\n view='secondary'\n onClick={handleSmsRetryClick}\n className={cn(styles.getCodeButton, { [styles.getCodeButtonMobile]: mobile })}\n breakpoint={breakpoint}\n client={client}\n >\n {texts.buttonRetry}\n </Button>\n );\n }\n\n return renderText(\n <Fragment>\n {texts.countdown}\n {'\\u00A0'}\n <time className={styles.timeCounter}>{formatMsAsMinutes(timeLeft)}</time>\n </Fragment>,\n );\n};\n"],"names":["useContext","ConfirmationContext","React","Text","cn","styles","Spinner","Button","Fragment","formatMsAsMinutes"],"mappings":"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"}
@@ -16,8 +16,8 @@
16
16
  --gap-32: var(--gap-2xl);
17
17
  --gap-4-neg: var(--gap-2xs-neg);
18
18
  } :root {
19
- --font-family-system: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Helvetica,
20
- sans-serif;
19
+ --font-family-system:
20
+ system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Helvetica, sans-serif;
21
21
  } :root {
22
22
  --size-xs-height: 40px;
23
23
  } :root {
@@ -26,8 +26,6 @@
26
26
  --confirmation-text-font-weight: 400;
27
27
  --confirmation-text-font-family: var(--font-family-system);
28
28
  --confirmation-text-color: var(--color-light-text-primary)
29
-
30
- /* header */
31
29
  } .component {
32
30
  display: flex;
33
31
  flex-direction: column;
@@ -51,7 +49,7 @@
51
49
  align-items: flex-start;
52
50
  } .center {
53
51
  align-items: center;
54
- text-align: center
52
+ text-align: center;
55
53
  } .center .loaderWrap {
56
54
  justify-content: center;
57
55
  } .codeInput {
@@ -1,4 +1,4 @@
1
- import { FC } from 'react';
1
+ import { type FC } from 'react';
2
2
  export declare type TempBlockProps = {
3
3
  /**
4
4
  * Отображать в мобильной версии экран компонента
@@ -20,7 +20,7 @@ var styles__default = /*#__PURE__*/_interopDefaultCompat(styles);
20
20
  var TempBlock = function (_a) {
21
21
  var _b, _c;
22
22
  var mobile = _a.mobile;
23
- var _d = React.useContext(context.ConfirmationContext), alignContent = _d.alignContent, texts = _d.texts, tempBlockDuration = _d.tempBlockDuration, onChangeScreen = _d.onChangeScreen, onTempBlockFinished = _d.onTempBlockFinished;
23
+ var _d = React.useContext(context.ConfirmationContext), alignContent = _d.alignContent, titleTag = _d.titleTag, texts = _d.texts, tempBlockDuration = _d.tempBlockDuration, onChangeScreen = _d.onChangeScreen, onTempBlockFinished = _d.onTempBlockFinished;
24
24
  var _e = utils.useCountdown(tempBlockDuration), timeLeft = _e[0], startTimer = _e[1];
25
25
  React.useEffect(function () {
26
26
  startTimer();
@@ -31,7 +31,7 @@ var TempBlock = function (_a) {
31
31
  }
32
32
  }, [timeLeft, onChangeScreen, onTempBlockFinished]);
33
33
  return (React__default.default.createElement("div", { className: cn__default.default(styles__default.default.component, styles__default.default[alignContent]) },
34
- React__default.default.createElement(component.Header, { mobile: mobile }, texts.tempBlockTitle),
34
+ React__default.default.createElement(component.Header, { mobile: mobile, titleTag: titleTag }, texts.tempBlockTitle),
35
35
  React__default.default.createElement(cssm.Text, { view: 'primary-medium', color: 'primary', className: cn__default.default(styles__default.default.description, (_b = {},
36
36
  _b[styles__default.default.typographyTheme] = !mobile,
37
37
  _b[styles__default.default.typographyThemeMobile] = mobile,
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sources":["../../../../src/components/screens/temp-block/component.tsx"],"sourcesContent":["import React, { FC, useContext, useEffect } from 'react';\nimport cn from 'classnames';\n\nimport { Text } from '@alfalab/core-components-typography';\n\nimport { ConfirmationContext } from '../../../context';\nimport { formatMsAsMinutes, useCountdown } from '../../../utils';\nimport { CountdownLoader } from '../../countdown-loader';\nimport { Header } from '../../header';\n\nimport styles from './index.module.css';\n\nexport type TempBlockProps = {\n /**\n * Отображать в мобильной версии экран компонента\n */\n mobile?: boolean;\n};\n\nexport const TempBlock: FC<TempBlockProps> = ({ mobile }) => {\n const { alignContent, texts, tempBlockDuration, onChangeScreen, onTempBlockFinished } =\n useContext(ConfirmationContext);\n\n const [timeLeft, startTimer] = useCountdown(tempBlockDuration);\n\n useEffect(() => {\n startTimer();\n }, [startTimer]);\n\n useEffect(() => {\n if (timeLeft === 0 && onTempBlockFinished) {\n onTempBlockFinished();\n }\n }, [timeLeft, onChangeScreen, onTempBlockFinished]);\n\n return (\n <div className={cn(styles.component, styles[alignContent])}>\n <Header mobile={mobile}>{texts.tempBlockTitle}</Header>\n\n <Text\n view='primary-medium'\n color='primary'\n className={cn(styles.description, {\n [styles.typographyTheme]: !mobile,\n [styles.typographyThemeMobile]: mobile,\n })}\n >\n {texts.tempBlockDescription}\n </Text>\n\n <div className={cn(styles.countdownWrap, { [styles.typographyTheme]: !mobile })}>\n <CountdownLoader\n progress={1 - timeLeft / tempBlockDuration}\n className={styles.loader}\n />\n <time className={styles.timeCounter}>{formatMsAsMinutes(timeLeft)}</time>\n </div>\n </div>\n );\n};\n"],"names":["useContext","ConfirmationContext","useCountdown","useEffect","React","cn","styles","Header","Text","CountdownLoader","formatMsAsMinutes"],"mappings":";;;;;;;;;;;;;;;;;;;AAmBO,IAAM,SAAS,GAAuB,UAAC,EAAU,EAAA;;AAAR,IAAA,IAAA,MAAM,GAAA,EAAA,CAAA,MAAA;IAC5C,IAAA,EAAA,GACFA,gBAAU,CAACC,2BAAmB,CAAC,EAD3B,YAAY,kBAAA,EAAE,KAAK,WAAA,EAAE,iBAAiB,uBAAA,EAAE,cAAc,oBAAA,EAAE,mBAAmB,yBAChD;IAE7B,IAAA,EAAA,GAAyBC,kBAAY,CAAC,iBAAiB,CAAC,EAAvD,QAAQ,GAAA,EAAA,CAAA,CAAA,CAAA,EAAE,UAAU,GAAA,EAAA,CAAA,CAAA,CAAmC;AAE9D,IAAAC,eAAS,CAAC,YAAA;AACN,QAAA,UAAU,EAAE;AAChB,KAAC,EAAE,CAAC,UAAU,CAAC,CAAC;AAEhB,IAAAA,eAAS,CAAC,YAAA;AACN,QAAA,IAAI,QAAQ,KAAK,CAAC,IAAI,mBAAmB,EAAE;AACvC,YAAA,mBAAmB,EAAE;AACxB;KACJ,EAAE,CAAC,QAAQ,EAAE,cAAc,EAAE,mBAAmB,CAAC,CAAC;AAEnD,IAAA,QACIC,sBAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAEC,mBAAE,CAACC,uBAAM,CAAC,SAAS,EAAEA,uBAAM,CAAC,YAAY,CAAC,CAAC,EAAA;QACtDF,sBAAC,CAAA,aAAA,CAAAG,gBAAM,IAAC,MAAM,EAAE,MAAM,EAAG,EAAA,KAAK,CAAC,cAAc,CAAU;AAEvD,QAAAH,sBAAA,CAAA,aAAA,CAACI,SAAI,EACD,EAAA,IAAI,EAAC,gBAAgB,EACrB,KAAK,EAAC,SAAS,EACf,SAAS,EAAEH,mBAAE,CAACC,uBAAM,CAAC,WAAW,GAAA,EAAA,GAAA,EAAA;AAC5B,gBAAA,EAAA,CAACA,uBAAM,CAAC,eAAe,CAAA,GAAG,CAAC,MAAM;AACjC,gBAAA,EAAA,CAACA,uBAAM,CAAC,qBAAqB,CAAA,GAAG,MAAM;oBACxC,EAED,EAAA,KAAK,CAAC,oBAAoB,CACxB;AAEP,QAAAF,sBAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAEC,mBAAE,CAACC,uBAAM,CAAC,aAAa,GAAI,EAAA,GAAA,EAAA,EAAA,EAAA,CAACA,uBAAM,CAAC,eAAe,CAAG,GAAA,CAAC,MAAM,EAAG,EAAA,EAAA,EAAA;AAC3E,YAAAF,sBAAA,CAAA,aAAA,CAACK,2BAAe,EAAA,EACZ,QAAQ,EAAE,CAAC,GAAG,QAAQ,GAAG,iBAAiB,EAC1C,SAAS,EAAEH,uBAAM,CAAC,MAAM,EAC1B,CAAA;AACF,YAAAF,sBAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAEE,uBAAM,CAAC,WAAW,EAAG,EAAAI,uBAAiB,CAAC,QAAQ,CAAC,CAAQ,CACvE,CACJ;AAEd;;;;"}
1
+ {"version":3,"file":"component.js","sources":["../../../../src/components/screens/temp-block/component.tsx"],"sourcesContent":["import React, { type FC, useContext, useEffect } from 'react';\nimport cn from 'classnames';\n\nimport { Text } from '@alfalab/core-components-typography';\n\nimport { ConfirmationContext } from '../../../context';\nimport { formatMsAsMinutes, useCountdown } from '../../../utils';\nimport { CountdownLoader } from '../../countdown-loader';\nimport { Header } from '../../header';\n\nimport styles from './index.module.css';\n\nexport type TempBlockProps = {\n /**\n * Отображать в мобильной версии экран компонента\n */\n mobile?: boolean;\n};\n\nexport const TempBlock: FC<TempBlockProps> = ({ mobile }) => {\n const {\n alignContent,\n titleTag,\n texts,\n tempBlockDuration,\n onChangeScreen,\n onTempBlockFinished,\n } = useContext(ConfirmationContext);\n\n const [timeLeft, startTimer] = useCountdown(tempBlockDuration);\n\n useEffect(() => {\n startTimer();\n }, [startTimer]);\n\n useEffect(() => {\n if (timeLeft === 0 && onTempBlockFinished) {\n onTempBlockFinished();\n }\n }, [timeLeft, onChangeScreen, onTempBlockFinished]);\n\n return (\n <div className={cn(styles.component, styles[alignContent])}>\n <Header mobile={mobile} titleTag={titleTag}>\n {texts.tempBlockTitle}\n </Header>\n\n <Text\n view='primary-medium'\n color='primary'\n className={cn(styles.description, {\n [styles.typographyTheme]: !mobile,\n [styles.typographyThemeMobile]: mobile,\n })}\n >\n {texts.tempBlockDescription}\n </Text>\n\n <div className={cn(styles.countdownWrap, { [styles.typographyTheme]: !mobile })}>\n <CountdownLoader\n progress={1 - timeLeft / tempBlockDuration}\n className={styles.loader}\n />\n <time className={styles.timeCounter}>{formatMsAsMinutes(timeLeft)}</time>\n </div>\n </div>\n );\n};\n"],"names":["useContext","ConfirmationContext","useCountdown","useEffect","React","cn","styles","Header","Text","CountdownLoader","formatMsAsMinutes"],"mappings":";;;;;;;;;;;;;;;;;;;AAmBO,IAAM,SAAS,GAAuB,UAAC,EAAU,EAAA;;AAAR,IAAA,IAAA,MAAM,GAAA,EAAA,CAAA,MAAA;IAC5C,IAAA,EAAA,GAOFA,gBAAU,CAACC,2BAAmB,CAAC,EAN/B,YAAY,GAAA,EAAA,CAAA,YAAA,EACZ,QAAQ,GAAA,EAAA,CAAA,QAAA,EACR,KAAK,GAAA,EAAA,CAAA,KAAA,EACL,iBAAiB,GAAA,EAAA,CAAA,iBAAA,EACjB,cAAc,GAAA,EAAA,CAAA,cAAA,EACd,mBAAmB,GAAA,EAAA,CAAA,mBACY;IAE7B,IAAA,EAAA,GAAyBC,kBAAY,CAAC,iBAAiB,CAAC,EAAvD,QAAQ,GAAA,EAAA,CAAA,CAAA,CAAA,EAAE,UAAU,GAAA,EAAA,CAAA,CAAA,CAAmC;AAE9D,IAAAC,eAAS,CAAC,YAAA;AACN,QAAA,UAAU,EAAE;AAChB,KAAC,EAAE,CAAC,UAAU,CAAC,CAAC;AAEhB,IAAAA,eAAS,CAAC,YAAA;AACN,QAAA,IAAI,QAAQ,KAAK,CAAC,IAAI,mBAAmB,EAAE;AACvC,YAAA,mBAAmB,EAAE;AACxB;KACJ,EAAE,CAAC,QAAQ,EAAE,cAAc,EAAE,mBAAmB,CAAC,CAAC;AAEnD,IAAA,QACIC,sBAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAEC,mBAAE,CAACC,uBAAM,CAAC,SAAS,EAAEA,uBAAM,CAAC,YAAY,CAAC,CAAC,EAAA;AACtD,QAAAF,sBAAA,CAAA,aAAA,CAACG,gBAAM,EAAA,EAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAA,EACrC,KAAK,CAAC,cAAc,CAChB;AAET,QAAAH,sBAAA,CAAA,aAAA,CAACI,SAAI,EACD,EAAA,IAAI,EAAC,gBAAgB,EACrB,KAAK,EAAC,SAAS,EACf,SAAS,EAAEH,mBAAE,CAACC,uBAAM,CAAC,WAAW,GAAA,EAAA,GAAA,EAAA;AAC5B,gBAAA,EAAA,CAACA,uBAAM,CAAC,eAAe,CAAA,GAAG,CAAC,MAAM;AACjC,gBAAA,EAAA,CAACA,uBAAM,CAAC,qBAAqB,CAAA,GAAG,MAAM;oBACxC,EAED,EAAA,KAAK,CAAC,oBAAoB,CACxB;AAEP,QAAAF,sBAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAEC,mBAAE,CAACC,uBAAM,CAAC,aAAa,GAAI,EAAA,GAAA,EAAA,EAAA,EAAA,CAACA,uBAAM,CAAC,eAAe,CAAG,GAAA,CAAC,MAAM,EAAG,EAAA,EAAA,EAAA;AAC3E,YAAAF,sBAAA,CAAA,aAAA,CAACK,2BAAe,EAAA,EACZ,QAAQ,EAAE,CAAC,GAAG,QAAQ,GAAG,iBAAiB,EAC1C,SAAS,EAAEH,uBAAM,CAAC,MAAM,EAC1B,CAAA;AACF,YAAAF,sBAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAEE,uBAAM,CAAC,WAAW,EAAG,EAAAI,uBAAiB,CAAC,QAAQ,CAAC,CAAQ,CACvE,CACJ;AAEd;;;;"}
@@ -5,16 +5,14 @@
5
5
  --gap-xs: 8px;
6
6
  --gap-8: var(--gap-xs);
7
7
  } :root {
8
- --font-family-system: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Helvetica,
9
- sans-serif;
8
+ --font-family-system:
9
+ system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Helvetica, sans-serif;
10
10
  } :root {
11
11
  --confirmation-text-font-size: 16px;
12
12
  --confirmation-text-line-height: 24px;
13
13
  --confirmation-text-font-weight: 400;
14
14
  --confirmation-text-font-family: var(--font-family-system);
15
15
  --confirmation-text-color: var(--color-light-text-primary)
16
-
17
- /* header */
18
16
  } .component {
19
17
  display: flex;
20
18
  flex-direction: column;
@@ -1,4 +1,4 @@
1
- import { FC } from 'react';
1
+ import { type FC } from 'react';
2
2
  export declare type TempBlockOverProps = {
3
3
  /**
4
4
  * Отображать в мобильной версии экран компонента
@@ -19,13 +19,13 @@ var styles__default = /*#__PURE__*/_interopDefaultCompat(styles);
19
19
  var TempBlockOver = function (_a) {
20
20
  var _b;
21
21
  var mobile = _a.mobile;
22
- var _c = React.useContext(context.ConfirmationContext), alignContent = _c.alignContent, texts = _c.texts, breakpoint = _c.breakpoint, client = _c.client, onChangeScreen = _c.onChangeScreen, onChangeState = _c.onChangeState;
22
+ var _c = React.useContext(context.ConfirmationContext), alignContent = _c.alignContent, titleTag = _c.titleTag, texts = _c.texts, breakpoint = _c.breakpoint, client = _c.client, onChangeScreen = _c.onChangeScreen, onChangeState = _c.onChangeState;
23
23
  var handleReturnButtonClick = function () {
24
24
  onChangeScreen('INITIAL');
25
25
  onChangeState('INITIAL');
26
26
  };
27
27
  return (React__default.default.createElement("div", { className: cn__default.default(styles__default.default.component, styles__default.default[alignContent]) },
28
- React__default.default.createElement(component.Header, { mobile: mobile }, texts.tempBlockOverTitle),
28
+ React__default.default.createElement(component.Header, { mobile: mobile, titleTag: titleTag }, texts.tempBlockOverTitle),
29
29
  React__default.default.createElement(cssm.Text, { view: 'primary-medium', color: 'primary', className: cn__default.default(styles__default.default.description, (_b = {},
30
30
  _b[styles__default.default.typographyTheme] = !mobile,
31
31
  _b[styles__default.default.typographyThemeMobile] = mobile,
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sources":["../../../../src/components/screens/temp-block-over/component.tsx"],"sourcesContent":["import React, { FC, useContext } from 'react';\nimport cn from 'classnames';\n\nimport { Button } from '@alfalab/core-components-button';\nimport { Text } from '@alfalab/core-components-typography';\n\nimport { ConfirmationContext } from '../../../context';\nimport { Header } from '../../header';\n\nimport styles from './index.module.css';\n\nexport type TempBlockOverProps = {\n /**\n * Отображать в мобильной версии экран компонента\n */\n mobile?: boolean;\n};\n\nexport const TempBlockOver: FC<TempBlockOverProps> = ({ mobile }) => {\n const { alignContent, texts, breakpoint, client, onChangeScreen, onChangeState } =\n useContext(ConfirmationContext);\n\n const handleReturnButtonClick = () => {\n onChangeScreen('INITIAL');\n onChangeState('INITIAL');\n };\n\n return (\n <div className={cn(styles.component, styles[alignContent])}>\n <Header mobile={mobile}>{texts.tempBlockOverTitle}</Header>\n\n <Text\n view='primary-medium'\n color='primary'\n className={cn(styles.description, {\n [styles.typographyTheme]: !mobile,\n [styles.typographyThemeMobile]: mobile,\n })}\n >\n {texts.tempBlockOverDescription}\n </Text>\n\n <Button\n size={mobile ? 'xs' : 's'}\n view='secondary'\n onClick={handleReturnButtonClick}\n className={styles.button}\n breakpoint={breakpoint}\n client={client}\n >\n {texts.tempBlockOverButton}\n </Button>\n </div>\n );\n};\n"],"names":["useContext","ConfirmationContext","React","cn","styles","Header","Text","Button"],"mappings":";;;;;;;;;;;;;;;;;;AAkBO,IAAM,aAAa,GAA2B,UAAC,EAAU,EAAA;;AAAR,IAAA,IAAA,MAAM,GAAA,EAAA,CAAA,MAAA;IACpD,IAAA,EAAA,GACFA,gBAAU,CAACC,2BAAmB,CAAC,EAD3B,YAAY,GAAA,EAAA,CAAA,YAAA,EAAE,KAAK,GAAA,EAAA,CAAA,KAAA,EAAE,UAAU,GAAA,EAAA,CAAA,UAAA,EAAE,MAAM,GAAA,EAAA,CAAA,MAAA,EAAE,cAAc,GAAA,EAAA,CAAA,cAAA,EAAE,aAAa,GAAA,EAAA,CAAA,aAC3C;AAEnC,IAAA,IAAM,uBAAuB,GAAG,YAAA;QAC5B,cAAc,CAAC,SAAS,CAAC;QACzB,aAAa,CAAC,SAAS,CAAC;AAC5B,KAAC;AAED,IAAA,QACIC,sBAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAEC,mBAAE,CAACC,uBAAM,CAAC,SAAS,EAAEA,uBAAM,CAAC,YAAY,CAAC,CAAC,EAAA;QACtDF,sBAAC,CAAA,aAAA,CAAAG,gBAAM,IAAC,MAAM,EAAE,MAAM,EAAG,EAAA,KAAK,CAAC,kBAAkB,CAAU;AAE3D,QAAAH,sBAAA,CAAA,aAAA,CAACI,SAAI,EACD,EAAA,IAAI,EAAC,gBAAgB,EACrB,KAAK,EAAC,SAAS,EACf,SAAS,EAAEH,mBAAE,CAACC,uBAAM,CAAC,WAAW,GAAA,EAAA,GAAA,EAAA;AAC5B,gBAAA,EAAA,CAACA,uBAAM,CAAC,eAAe,CAAA,GAAG,CAAC,MAAM;AACjC,gBAAA,EAAA,CAACA,uBAAM,CAAC,qBAAqB,CAAA,GAAG,MAAM;oBACxC,EAED,EAAA,KAAK,CAAC,wBAAwB,CAC5B;AAEP,QAAAF,sBAAA,CAAA,aAAA,CAACK,aAAM,EACH,EAAA,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,GAAG,EACzB,IAAI,EAAC,WAAW,EAChB,OAAO,EAAE,uBAAuB,EAChC,SAAS,EAAEH,uBAAM,CAAC,MAAM,EACxB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,IAEb,KAAK,CAAC,mBAAmB,CACrB,CACP;AAEd;;;;"}
1
+ {"version":3,"file":"component.js","sources":["../../../../src/components/screens/temp-block-over/component.tsx"],"sourcesContent":["import React, { type FC, useContext } from 'react';\nimport cn from 'classnames';\n\nimport { Button } from '@alfalab/core-components-button';\nimport { Text } from '@alfalab/core-components-typography';\n\nimport { ConfirmationContext } from '../../../context';\nimport { Header } from '../../header';\n\nimport styles from './index.module.css';\n\nexport type TempBlockOverProps = {\n /**\n * Отображать в мобильной версии экран компонента\n */\n mobile?: boolean;\n};\n\nexport const TempBlockOver: FC<TempBlockOverProps> = ({ mobile }) => {\n const { alignContent, titleTag, texts, breakpoint, client, onChangeScreen, onChangeState } =\n useContext(ConfirmationContext);\n\n const handleReturnButtonClick = () => {\n onChangeScreen('INITIAL');\n onChangeState('INITIAL');\n };\n\n return (\n <div className={cn(styles.component, styles[alignContent])}>\n <Header mobile={mobile} titleTag={titleTag}>\n {texts.tempBlockOverTitle}\n </Header>\n\n <Text\n view='primary-medium'\n color='primary'\n className={cn(styles.description, {\n [styles.typographyTheme]: !mobile,\n [styles.typographyThemeMobile]: mobile,\n })}\n >\n {texts.tempBlockOverDescription}\n </Text>\n\n <Button\n size={mobile ? 'xs' : 's'}\n view='secondary'\n onClick={handleReturnButtonClick}\n className={styles.button}\n breakpoint={breakpoint}\n client={client}\n >\n {texts.tempBlockOverButton}\n </Button>\n </div>\n );\n};\n"],"names":["useContext","ConfirmationContext","React","cn","styles","Header","Text","Button"],"mappings":";;;;;;;;;;;;;;;;;;AAkBO,IAAM,aAAa,GAA2B,UAAC,EAAU,EAAA;;AAAR,IAAA,IAAA,MAAM,GAAA,EAAA,CAAA,MAAA;IACpD,IAAA,EAAA,GACFA,gBAAU,CAACC,2BAAmB,CAAC,EAD3B,YAAY,GAAA,EAAA,CAAA,YAAA,EAAE,QAAQ,GAAA,EAAA,CAAA,QAAA,EAAE,KAAK,WAAA,EAAE,UAAU,GAAA,EAAA,CAAA,UAAA,EAAE,MAAM,GAAA,EAAA,CAAA,MAAA,EAAE,cAAc,GAAA,EAAA,CAAA,cAAA,EAAE,aAAa,GAAA,EAAA,CAAA,aACrD;AAEnC,IAAA,IAAM,uBAAuB,GAAG,YAAA;QAC5B,cAAc,CAAC,SAAS,CAAC;QACzB,aAAa,CAAC,SAAS,CAAC;AAC5B,KAAC;AAED,IAAA,QACIC,sBAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAEC,mBAAE,CAACC,uBAAM,CAAC,SAAS,EAAEA,uBAAM,CAAC,YAAY,CAAC,CAAC,EAAA;AACtD,QAAAF,sBAAA,CAAA,aAAA,CAACG,gBAAM,EAAA,EAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAA,EACrC,KAAK,CAAC,kBAAkB,CACpB;AAET,QAAAH,sBAAA,CAAA,aAAA,CAACI,SAAI,EACD,EAAA,IAAI,EAAC,gBAAgB,EACrB,KAAK,EAAC,SAAS,EACf,SAAS,EAAEH,mBAAE,CAACC,uBAAM,CAAC,WAAW,GAAA,EAAA,GAAA,EAAA;AAC5B,gBAAA,EAAA,CAACA,uBAAM,CAAC,eAAe,CAAA,GAAG,CAAC,MAAM;AACjC,gBAAA,EAAA,CAACA,uBAAM,CAAC,qBAAqB,CAAA,GAAG,MAAM;oBACxC,EAED,EAAA,KAAK,CAAC,wBAAwB,CAC5B;AAEP,QAAAF,sBAAA,CAAA,aAAA,CAACK,aAAM,EACH,EAAA,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,GAAG,EACzB,IAAI,EAAC,WAAW,EAChB,OAAO,EAAE,uBAAuB,EAChC,SAAS,EAAEH,uBAAM,CAAC,MAAM,EACxB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,IAEb,KAAK,CAAC,mBAAmB,CACrB,CACP;AAEd;;;;"}
@@ -5,16 +5,14 @@
5
5
  --gap-2xl: 32px;
6
6
  --gap-32: var(--gap-2xl);
7
7
  } :root {
8
- --font-family-system: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Helvetica,
9
- sans-serif;
8
+ --font-family-system:
9
+ system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Helvetica, sans-serif;
10
10
  } :root {
11
11
  --confirmation-text-font-size: 16px;
12
12
  --confirmation-text-line-height: 24px;
13
13
  --confirmation-text-font-weight: 400;
14
14
  --confirmation-text-font-family: var(--font-family-system);
15
15
  --confirmation-text-color: var(--color-light-text-primary)
16
-
17
- /* header */
18
16
  } .component {
19
17
  display: flex;
20
18
  flex-direction: column;
package/cssm/context.d.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  /// <reference types="react" />
2
- import { TConfirmationContext } from './types';
2
+ import { type TConfirmationContext } from './types';
3
3
  export declare const ConfirmationContext: import("react").Context<TConfirmationContext>;
package/cssm/context.js CHANGED
@@ -8,6 +8,7 @@ var utils = require('./utils.js');
8
8
  var mockFn = function () { return undefined; };
9
9
  var ConfirmationContext = React.createContext({
10
10
  alignContent: 'left',
11
+ titleTag: 'h3',
11
12
  texts: {},
12
13
  state: 'INITIAL',
13
14
  screen: 'INITIAL',
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sources":["../src/context.ts"],"sourcesContent":["import { createContext } from 'react';\n\nimport { TConfirmationContext } from './types';\nimport { ONE_DAY, ONE_MINUTE } from './utils';\n\nconst mockFn = () => undefined;\n\nexport const ConfirmationContext = createContext<TConfirmationContext>({\n alignContent: 'left',\n texts: {},\n state: 'INITIAL',\n screen: 'INITIAL',\n requiredCharAmount: 5,\n countdownDuration: ONE_MINUTE,\n timeLeft: ONE_MINUTE,\n tempBlockDuration: ONE_DAY,\n phone: '',\n hideCountdownSection: false,\n breakpoint: 1024,\n client: 'desktop',\n initialScreenHintSlot: null,\n onTempBlockFinished: mockFn,\n onInputFinished: mockFn,\n onChangeState: mockFn,\n onSmsRetryClick: mockFn,\n onChangeScreen: mockFn,\n onFatalErrorOkButtonClick: mockFn,\n});\n"],"names":["createContext","ONE_MINUTE","ONE_DAY"],"mappings":";;;;;;;AAKA,IAAM,MAAM,GAAG,YAAA,EAAM,OAAA,SAAS,CAAA,EAAA;AAEvB,IAAM,mBAAmB,GAAGA,mBAAa,CAAuB;AACnE,IAAA,YAAY,EAAE,MAAM;AACpB,IAAA,KAAK,EAAE,EAAE;AACT,IAAA,KAAK,EAAE,SAAS;AAChB,IAAA,MAAM,EAAE,SAAS;AACjB,IAAA,kBAAkB,EAAE,CAAC;AACrB,IAAA,iBAAiB,EAAEC,gBAAU;AAC7B,IAAA,QAAQ,EAAEA,gBAAU;AACpB,IAAA,iBAAiB,EAAEC,aAAO;AAC1B,IAAA,KAAK,EAAE,EAAE;AACT,IAAA,oBAAoB,EAAE,KAAK;AAC3B,IAAA,UAAU,EAAE,IAAI;AAChB,IAAA,MAAM,EAAE,SAAS;AACjB,IAAA,qBAAqB,EAAE,IAAI;AAC3B,IAAA,mBAAmB,EAAE,MAAM;AAC3B,IAAA,eAAe,EAAE,MAAM;AACvB,IAAA,aAAa,EAAE,MAAM;AACrB,IAAA,eAAe,EAAE,MAAM;AACvB,IAAA,cAAc,EAAE,MAAM;AACtB,IAAA,yBAAyB,EAAE,MAAM;AACpC,CAAA;;;;"}
1
+ {"version":3,"file":"context.js","sources":["../src/context.ts"],"sourcesContent":["import { createContext } from 'react';\n\nimport { type TConfirmationContext } from './types';\nimport { ONE_DAY, ONE_MINUTE } from './utils';\n\nconst mockFn = () => undefined;\n\nexport const ConfirmationContext = createContext<TConfirmationContext>({\n alignContent: 'left',\n titleTag: 'h3',\n texts: {},\n state: 'INITIAL',\n screen: 'INITIAL',\n requiredCharAmount: 5,\n countdownDuration: ONE_MINUTE,\n timeLeft: ONE_MINUTE,\n tempBlockDuration: ONE_DAY,\n phone: '',\n hideCountdownSection: false,\n breakpoint: 1024,\n client: 'desktop',\n initialScreenHintSlot: null,\n onTempBlockFinished: mockFn,\n onInputFinished: mockFn,\n onChangeState: mockFn,\n onSmsRetryClick: mockFn,\n onChangeScreen: mockFn,\n onFatalErrorOkButtonClick: mockFn,\n});\n"],"names":["createContext","ONE_MINUTE","ONE_DAY"],"mappings":";;;;;;;AAKA,IAAM,MAAM,GAAG,YAAA,EAAM,OAAA,SAAS,CAAA,EAAA;AAEvB,IAAM,mBAAmB,GAAGA,mBAAa,CAAuB;AACnE,IAAA,YAAY,EAAE,MAAM;AACpB,IAAA,QAAQ,EAAE,IAAI;AACd,IAAA,KAAK,EAAE,EAAE;AACT,IAAA,KAAK,EAAE,SAAS;AAChB,IAAA,MAAM,EAAE,SAAS;AACjB,IAAA,kBAAkB,EAAE,CAAC;AACrB,IAAA,iBAAiB,EAAEC,gBAAU;AAC7B,IAAA,QAAQ,EAAEA,gBAAU;AACpB,IAAA,iBAAiB,EAAEC,aAAO;AAC1B,IAAA,KAAK,EAAE,EAAE;AACT,IAAA,oBAAoB,EAAE,KAAK;AAC3B,IAAA,UAAU,EAAE,IAAI;AAChB,IAAA,MAAM,EAAE,SAAS;AACjB,IAAA,qBAAqB,EAAE,IAAI;AAC3B,IAAA,mBAAmB,EAAE,MAAM;AAC3B,IAAA,eAAe,EAAE,MAAM;AACvB,IAAA,aAAa,EAAE,MAAM;AACrB,IAAA,eAAe,EAAE,MAAM;AACvB,IAAA,cAAc,EAAE,MAAM;AACtB,IAAA,yBAAyB,EAAE,MAAM;AACpC,CAAA;;;;"}
@@ -1,4 +1,4 @@
1
- import { FC } from 'react';
2
- import { ConfirmationProps } from '../types';
1
+ import { type FC } from 'react';
2
+ import { type ConfirmationProps } from '../types';
3
3
  export declare type DesktopConfirmationProps = Omit<ConfirmationProps, 'mobile' | 'breakpoint'>;
4
4
  export declare const ConfirmationDesktop: FC<DesktopConfirmationProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"component.desktop.js","sources":["../../src/desktop/component.desktop.tsx"],"sourcesContent":["import React, { FC } from 'react';\n\nimport { BaseConfirmation } from '../components/base-confirmation';\nimport { ConfirmationProps } from '../types';\n\nexport type DesktopConfirmationProps = Omit<ConfirmationProps, 'mobile' | 'breakpoint'>;\n\nexport const ConfirmationDesktop: FC<DesktopConfirmationProps> = (props) => (\n <BaseConfirmation {...props} />\n);\n"],"names":["React","BaseConfirmation","__assign"],"mappings":";;;;;;;;;;;;AAOa,IAAA,mBAAmB,GAAiC,UAAC,KAAK,EAAK,EAAA,QACxEA,sBAAA,CAAA,aAAA,CAACC,0BAAgB,EAAKC,cAAA,CAAA,EAAA,EAAA,KAAK,EAAI,EAClC;;;;"}
1
+ {"version":3,"file":"component.desktop.js","sources":["../../src/desktop/component.desktop.tsx"],"sourcesContent":["import React, { type FC } from 'react';\n\nimport { BaseConfirmation } from '../components/base-confirmation';\nimport { type ConfirmationProps } from '../types';\n\nexport type DesktopConfirmationProps = Omit<ConfirmationProps, 'mobile' | 'breakpoint'>;\n\nexport const ConfirmationDesktop: FC<DesktopConfirmationProps> = (props) => (\n <BaseConfirmation {...props} />\n);\n"],"names":["React","BaseConfirmation","__assign"],"mappings":";;;;;;;;;;;;AAOa,IAAA,mBAAmB,GAAiC,UAAC,KAAK,EAAK,EAAA,QACxEA,sBAAA,CAAA,aAAA,CAACC,0BAAgB,EAAKC,cAAA,CAAA,EAAA,EAAA,KAAK,EAAI,EAClC;;;;"}
@@ -1,4 +1,4 @@
1
- import { FC } from 'react';
2
- import { ConfirmationProps } from '../types';
1
+ import { type FC } from 'react';
2
+ import { type ConfirmationProps } from '../types';
3
3
  export declare type MobileConfirmationProps = Omit<ConfirmationProps, 'mobile'>;
4
4
  export declare const ConfirmationMobile: FC<MobileConfirmationProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"component.mobile.js","sources":["../../src/mobile/component.mobile.tsx"],"sourcesContent":["import React, { FC } from 'react';\nimport cn from 'classnames';\n\nimport { BaseConfirmation } from '../components/base-confirmation';\nimport { ConfirmationProps } from '../types';\n\nimport styles from './mobile.module.css';\n\nexport type MobileConfirmationProps = Omit<ConfirmationProps, 'mobile'>;\n\nexport const ConfirmationMobile: FC<MobileConfirmationProps> = ({ className, ...resProps }) => (\n <BaseConfirmation mobile={true} className={cn(className, styles.container)} {...resProps} />\n);\n"],"names":["__rest","React","BaseConfirmation","__assign","cn","styles"],"mappings":";;;;;;;;;;;;;;;;AAUO,IAAM,kBAAkB,GAAgC,UAAC,EAA0B,EAAA;AAAxB,IAAA,IAAA,SAAS,GAAA,EAAA,CAAA,SAAA,EAAK,QAAQ,GAAAA,YAAA,CAAA,EAAA,EAAxB,aAA0B,CAAF;IAAO,QAC3FC,qCAACC,0BAAgB,EAAAC,cAAA,CAAA,EAAC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAEC,mBAAE,CAAC,SAAS,EAAEC,uBAAM,CAAC,SAAS,CAAC,EAAM,EAAA,QAAQ,CAAI,CAAA;;;;;"}
1
+ {"version":3,"file":"component.mobile.js","sources":["../../src/mobile/component.mobile.tsx"],"sourcesContent":["import React, { type FC } from 'react';\nimport cn from 'classnames';\n\nimport { BaseConfirmation } from '../components/base-confirmation';\nimport { type ConfirmationProps } from '../types';\n\nimport styles from './mobile.module.css';\n\nexport type MobileConfirmationProps = Omit<ConfirmationProps, 'mobile'>;\n\nexport const ConfirmationMobile: FC<MobileConfirmationProps> = ({ className, ...resProps }) => (\n <BaseConfirmation mobile={true} className={cn(className, styles.container)} {...resProps} />\n);\n"],"names":["__rest","React","BaseConfirmation","__assign","cn","styles"],"mappings":";;;;;;;;;;;;;;;;AAUO,IAAM,kBAAkB,GAAgC,UAAC,EAA0B,EAAA;AAAxB,IAAA,IAAA,SAAS,GAAA,EAAA,CAAA,SAAA,EAAK,QAAQ,GAAAA,YAAA,CAAA,EAAA,EAAxB,aAA0B,CAAF;IAAO,QAC3FC,qCAACC,0BAAgB,EAAAC,cAAA,CAAA,EAAC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAEC,mBAAE,CAAC,SAAS,EAAEC,uBAAM,CAAC,SAAS,CAAC,EAAM,EAAA,QAAQ,CAAI,CAAA;;;;;"}
package/cssm/types.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { ComponentType, ReactNode } from 'react';
2
- export declare type ConfirmationProps = {
1
+ import { type ComponentType, type ReactNode } from 'react';
2
+ export interface ConfirmationProps {
3
3
  /**
4
4
  * Экран компонента
5
5
  */
@@ -16,6 +16,11 @@ export declare type ConfirmationProps = {
16
16
  * Позиционирование контента
17
17
  */
18
18
  alignContent?: 'left' | 'center';
19
+ /**
20
+ * HTML тег для заголовка
21
+ * @default 'h3'
22
+ */
23
+ titleTag?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
19
24
  /**
20
25
  * Объект с текстами
21
26
  */
@@ -107,11 +112,11 @@ export declare type ConfirmationProps = {
107
112
  * @default 1300
108
113
  */
109
114
  errorVisibleDuration?: number;
110
- };
111
- export declare type TConfirmationContext = Required<Pick<ConfirmationProps, 'alignContent' | 'texts' | 'state' | 'screen' | 'requiredCharAmount' | 'onInputFinished' | 'countdownDuration' | 'onChangeState' | 'onSmsRetryClick' | 'onChangeScreen' | 'onFatalErrorOkButtonClick' | 'tempBlockDuration' | 'hideCountdownSection'>> & Pick<ConfirmationProps, 'phone' | 'blockSmsRetry' | 'onTempBlockFinished' | 'clearCodeOnError' | 'initialScreenHintSlot' | 'errorVisibleDuration' | 'breakpoint' | 'client'> & {
115
+ }
116
+ export declare type TConfirmationContext = Required<Pick<ConfirmationProps, 'alignContent' | 'titleTag' | 'texts' | 'state' | 'screen' | 'requiredCharAmount' | 'onInputFinished' | 'countdownDuration' | 'onChangeState' | 'onSmsRetryClick' | 'onChangeScreen' | 'onFatalErrorOkButtonClick' | 'tempBlockDuration' | 'hideCountdownSection'>> & Pick<ConfirmationProps, 'phone' | 'blockSmsRetry' | 'onTempBlockFinished' | 'clearCodeOnError' | 'initialScreenHintSlot' | 'errorVisibleDuration' | 'breakpoint' | 'client'> & {
112
117
  timeLeft: number;
113
118
  };
114
- export declare type ConfirmationTexts = {
119
+ export interface ConfirmationTexts {
115
120
  /**
116
121
  * Экран INITIAL
117
122
  */
@@ -152,10 +157,10 @@ export declare type ConfirmationTexts = {
152
157
  tempBlockOverTitle?: ReactNode;
153
158
  tempBlockOverDescription?: ReactNode;
154
159
  tempBlockOverButton?: string;
155
- };
160
+ }
156
161
  export declare type ConfirmationScreen = 'INITIAL' | 'HINT' | 'FATAL_ERROR' | 'TEMP_BLOCK' | 'TEMP_BLOCK_OVER';
157
162
  export declare type ConfirmationState = 'INITIAL' | 'CODE_CHECKING' | 'CODE_SENDING' | 'CODE_ERROR' | 'CODE_EXPIRED' | 'CODE_EXPIRED_ENDED';
158
- export declare type ScreensMap = {
163
+ export interface ScreensMap {
159
164
  [key: string]: ComponentType;
160
- };
165
+ }
161
166
  export declare const defaultTexts: ConfirmationTexts;