@redneckz/wildless-cms-uni-blocks 0.5.5 → 0.5.7

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 (880) hide show
  1. package/bundle/blocks.schema.json +1 -1
  2. package/bundle/bundle.umd.js +218 -255
  3. package/bundle/bundle.umd.min.js +1 -1
  4. package/cosmos-static/icons/AirPlaneIcon.svg +1 -1
  5. package/cosmos-static/icons/ArrowDownIcon.svg +1 -1
  6. package/cosmos-static/icons/ArrowUpIcon.svg +1 -1
  7. package/cosmos-static/icons/BuildingIcon.svg +1 -0
  8. package/cosmos-static/icons/Car2Icon.svg +1 -0
  9. package/cosmos-static/icons/CarIcon.svg +1 -1
  10. package/cosmos-static/icons/CinemaIcon.svg +1 -1
  11. package/cosmos-static/icons/DocDownloadIcon.svg +1 -1
  12. package/cosmos-static/icons/DocsIcon.svg +1 -1
  13. package/cosmos-static/icons/DoneIcon.svg +1 -1
  14. package/cosmos-static/icons/DoneSimpleIcon.svg +1 -0
  15. package/cosmos-static/icons/GpsIcon.svg +1 -1
  16. package/cosmos-static/icons/MoneysIcon.svg +1 -0
  17. package/cosmos-static/icons/PackA4Icon.svg +1 -1
  18. package/cosmos-static/icons/PowerIcon.svg +1 -1
  19. package/cosmos-static/icons/PumpkinIcon.svg +1 -1
  20. package/cosmos-static/icons/SoundIcon.svg +1 -1
  21. package/cosmos-static/icons/StrongBoxIcon.svg +1 -0
  22. package/cosmos-static/icons/UserSquareIcon.svg +1 -0
  23. package/cosmos-static/icons/WateringCanIcon.svg +1 -1
  24. package/dist/ProjectSettings.d.ts +2 -0
  25. package/dist/ProjectSettings.js +3 -0
  26. package/dist/ProjectSettings.js.map +1 -1
  27. package/dist/components/Accordion/AccordionContent.d.ts +4 -9
  28. package/dist/components/BenefitsBlock/BenefitsBlock.js.map +1 -1
  29. package/dist/components/BenefitsBlock/BenefitsBlockContent.d.ts +12 -19
  30. package/dist/components/BlockContent.d.ts +2 -3
  31. package/dist/components/Blocks.d.ts +0 -1
  32. package/dist/components/Blocks.js +1 -3
  33. package/dist/components/Blocks.js.map +1 -1
  34. package/dist/components/Bonus/BonusContent.d.ts +6 -9
  35. package/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js +3 -5
  36. package/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  37. package/dist/components/BonusBenefitsBlock/BonusBenefitsBlockContent.d.ts +5 -11
  38. package/dist/components/Calculator/BonusCalculatorForm.js +3 -2
  39. package/dist/components/Calculator/BonusCalculatorForm.js.map +1 -1
  40. package/dist/components/Calculator/CalculatorContent.d.ts +7 -40
  41. package/dist/components/Calculator/CalculatorValueBlock.js +1 -1
  42. package/dist/components/Calculator/CreditCalculatorForm.js +4 -3
  43. package/dist/components/Calculator/CreditCalculatorForm.js.map +1 -1
  44. package/dist/components/Calculator/DepositCalculatorForm.js +21 -2
  45. package/dist/components/Calculator/DepositCalculatorForm.js.map +1 -1
  46. package/dist/components/Calculator/EmbeddableCalcBlocks.d.ts +1 -3
  47. package/dist/components/Calculator/EmbeddableCalcBlocks.js +0 -2
  48. package/dist/components/Calculator/EmbeddableCalcBlocks.js.map +1 -1
  49. package/dist/components/Calculator/renderFootnote.d.ts +2 -0
  50. package/dist/components/Calculator/renderFootnote.js +6 -0
  51. package/dist/components/Calculator/renderFootnote.js.map +1 -0
  52. package/dist/components/CardTransfer/CardTransferContent.d.ts +3 -6
  53. package/dist/components/Catalog/CatalogCard.js.map +1 -1
  54. package/dist/components/Catalog/CatalogContent.d.ts +2 -5
  55. package/dist/components/ComparisonTable/ComparisonTableContent.d.ts +9 -43
  56. package/dist/components/ComparisonTable/TableColumn.d.ts +8 -1
  57. package/dist/components/ComparisonTable/TableColumn.js.map +1 -1
  58. package/dist/components/ComparisonTable/TableRow.d.ts +5 -1
  59. package/dist/components/ComparisonTable/TableRow.js.map +1 -1
  60. package/dist/components/ContentPage/computeAPIFallback.d.ts +5 -0
  61. package/dist/components/ContentPage/computeAPIFallback.js +68 -0
  62. package/dist/components/ContentPage/computeAPIFallback.js.map +1 -0
  63. package/dist/components/ErrorBlock/ErrorBlockContent.d.ts +17 -4
  64. package/dist/components/ExchangeRateTile/ExchangeRateTileContent.d.ts +3 -4
  65. package/dist/components/ExchangeRateTile/renderInput.js +4 -3
  66. package/dist/components/ExchangeRateTile/renderInput.js.map +1 -1
  67. package/dist/components/Footer/Footer.js +3 -2
  68. package/dist/components/Footer/Footer.js.map +1 -1
  69. package/dist/components/Footer/Footer.mobile.js +3 -2
  70. package/dist/components/Footer/Footer.mobile.js.map +1 -1
  71. package/dist/components/Footer/FooterContent.d.ts +5 -9
  72. package/dist/components/Footer/HorizontalNavigation.d.ts +2 -2
  73. package/dist/components/Footer/HorizontalNavigation.js.map +1 -1
  74. package/dist/components/Footer/HorizontalNavigation.mobile.d.ts +2 -2
  75. package/dist/components/Footer/HorizontalNavigation.mobile.js.map +1 -1
  76. package/dist/components/Footer/Sitemap.d.ts +2 -0
  77. package/dist/components/Footer/Sitemap.js +2 -2
  78. package/dist/components/Footer/Sitemap.js.map +1 -1
  79. package/dist/components/Gallery/GalleryContent.d.ts +16 -19
  80. package/dist/components/GracePeriod/GracePeriodContent.d.ts +10 -14
  81. package/dist/components/Header/Header.fallback.d.ts +2 -0
  82. package/dist/components/Header/Header.fallback.js +12 -0
  83. package/dist/components/Header/Header.fallback.js.map +1 -0
  84. package/dist/components/Header/Header.js +4 -3
  85. package/dist/components/Header/Header.js.map +1 -1
  86. package/dist/components/Header/Header.mobile.js +3 -2
  87. package/dist/components/Header/Header.mobile.js.map +1 -1
  88. package/dist/components/Header/HeaderContent.d.ts +14 -23
  89. package/dist/components/Headline/HeadlineContent.d.ts +4 -3
  90. package/dist/components/InsuranceAmountBlock/InsuranceAmountBlockContent.d.ts +8 -13
  91. package/dist/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +2 -2
  92. package/dist/components/MiniGallery/MiniGalleryContent.d.ts +8 -3
  93. package/dist/components/MobileAppTile/MobileAppTileContent.d.ts +19 -5
  94. package/dist/components/OfficeServicesBlock/OfficeServicesBlock.js +1 -1
  95. package/dist/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -1
  96. package/dist/components/OfficeServicesBlock/OfficeServicesBlockContent.d.ts +5 -20
  97. package/dist/components/OtherProducts/OtherProductsContent.d.ts +3 -4
  98. package/dist/components/PictureText/PictureText.js +1 -1
  99. package/dist/components/PictureText/PictureTextContent.d.ts +20 -4
  100. package/dist/components/ProductBlock/ProductBlockContent.d.ts +13 -10
  101. package/dist/components/ProductTile/ProductTile.js +13 -8
  102. package/dist/components/ProductTile/ProductTile.js.map +1 -1
  103. package/dist/components/ProductTile/ProductTileContent.d.ts +19 -9
  104. package/dist/components/Recommendation/RecommendationContent.d.ts +20 -2
  105. package/dist/components/SafeDepositRental/SafeDepositRental.js +1 -6
  106. package/dist/components/SafeDepositRental/SafeDepositRental.js.map +1 -1
  107. package/dist/components/SafeDepositRental/SafeDepositRentalContent.d.ts +4 -4
  108. package/dist/components/SafeDepositRental/YandexMap.js +14 -7
  109. package/dist/components/SafeDepositRental/YandexMap.js.map +1 -1
  110. package/dist/components/SafeDepositRental/renderClusterer.d.ts +2 -1
  111. package/dist/components/SafeDepositRental/renderClusterer.js +16 -18
  112. package/dist/components/SafeDepositRental/renderClusterer.js.map +1 -1
  113. package/dist/components/SafeDepositRental/useYandexMaps.d.ts +2 -0
  114. package/dist/components/SafeDepositRental/useYandexMaps.js +12 -0
  115. package/dist/components/SafeDepositRental/useYandexMaps.js.map +1 -0
  116. package/dist/components/StepsBlock/StepsBlockContent.d.ts +6 -25
  117. package/dist/components/Tabs/TabsContent.d.ts +8 -5
  118. package/dist/components/TariffsTable/EmbeddableCellData.mobile.d.ts +0 -3
  119. package/dist/components/TariffsTable/EmbeddableCellData.mobile.js.map +1 -1
  120. package/dist/components/TariffsTable/TariffsTableContent.d.ts +19 -36
  121. package/dist/components/TariffsTable/TariffsTableRow.js +2 -1
  122. package/dist/components/TariffsTable/TariffsTableRow.js.map +1 -1
  123. package/dist/components/TextBlock/TextBlockContent.d.ts +3 -6
  124. package/dist/components/Tile/TileContent.d.ts +17 -2
  125. package/dist/hooks/useExternalNS.d.ts +2 -0
  126. package/dist/hooks/useExternalNS.js +39 -0
  127. package/dist/hooks/useExternalNS.js.map +1 -0
  128. package/dist/icons/IconName.d.ts +18 -8
  129. package/dist/icons/IconName.js +16 -6
  130. package/dist/icons/IconName.js.map +1 -1
  131. package/dist/model/ButtonVersion.d.ts +1 -1
  132. package/dist/model/Footnote.d.ts +4 -0
  133. package/dist/{components/Navigation/NavigationContent.js → model/Footnote.js} +1 -1
  134. package/dist/model/Footnote.js.map +1 -0
  135. package/dist/model/HeadlineType.d.ts +4 -0
  136. package/dist/model/Picture.d.ts +4 -0
  137. package/dist/model/ProductColorVersion.d.ts +4 -0
  138. package/dist/model/ProductColorVersion.js +2 -0
  139. package/dist/model/ProductColorVersion.js.map +1 -0
  140. package/dist/services/sitemap/useSitemap.d.ts +2 -1
  141. package/dist/services/sitemap/useSitemap.js +2 -2
  142. package/dist/services/sitemap/useSitemap.js.map +1 -1
  143. package/dist/types/Fallback.d.ts +5 -0
  144. package/{mobile/dist/components/Navigation/NavigationContent.js → dist/types/Fallback.js} +1 -1
  145. package/dist/types/Fallback.js.map +1 -0
  146. package/dist/types.d.ts +1 -0
  147. package/dist/ui-kit/BenefitItem/BenefitItemProps.d.ts +3 -8
  148. package/dist/ui-kit/Button/ButtonProps.d.ts +3 -5
  149. package/dist/ui-kit/Button/ButtonSection.js +2 -1
  150. package/dist/ui-kit/Button/ButtonSection.js.map +1 -1
  151. package/dist/ui-kit/Button/buttonClassNameConstants.js +4 -3
  152. package/dist/ui-kit/Button/buttonClassNameConstants.js.map +1 -1
  153. package/dist/ui-kit/Foldable/Foldable.js +1 -1
  154. package/dist/ui-kit/Foldable/Foldable.js.map +1 -1
  155. package/dist/ui-kit/Input/Input.js +1 -1
  156. package/dist/ui-kit/Input/Input.js.map +1 -1
  157. package/dist/ui-kit/InputRange/InputRange.js +8 -15
  158. package/dist/ui-kit/InputRange/InputRange.js.map +1 -1
  159. package/dist/ui-kit/Radio/Radio.js +1 -1
  160. package/dist/ui-kit/Radio/Radio.js.map +1 -1
  161. package/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.js +1 -1
  162. package/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
  163. package/dist/ui-kit/SearchBar/SearchBarInner.js +1 -1
  164. package/dist/ui-kit/SearchBar/SearchBarInner.js.map +1 -1
  165. package/dist/ui-kit/SelectCustom/SelectCustom.d.ts +13 -0
  166. package/dist/ui-kit/SelectCustom/SelectCustom.js +30 -0
  167. package/dist/ui-kit/SelectCustom/SelectCustom.js.map +1 -0
  168. package/lib/ProjectSettings.d.ts +2 -0
  169. package/lib/ProjectSettings.js +3 -0
  170. package/lib/ProjectSettings.js.map +1 -1
  171. package/lib/common.css +1 -1
  172. package/lib/components/Accordion/AccordionContent.d.ts +4 -9
  173. package/lib/components/BenefitsBlock/BenefitsBlock.js.map +1 -1
  174. package/lib/components/BenefitsBlock/BenefitsBlockContent.d.ts +12 -19
  175. package/lib/components/BlockContent.d.ts +2 -3
  176. package/lib/components/Blocks.d.ts +0 -1
  177. package/lib/components/Blocks.js +1 -3
  178. package/lib/components/Blocks.js.map +1 -1
  179. package/lib/components/Bonus/BonusContent.d.ts +6 -9
  180. package/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js +3 -5
  181. package/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  182. package/lib/components/BonusBenefitsBlock/BonusBenefitsBlockContent.d.ts +5 -11
  183. package/lib/components/Calculator/BonusCalculatorForm.js +3 -2
  184. package/lib/components/Calculator/BonusCalculatorForm.js.map +1 -1
  185. package/lib/components/Calculator/CalculatorContent.d.ts +7 -40
  186. package/lib/components/Calculator/CalculatorValueBlock.js +1 -1
  187. package/lib/components/Calculator/CreditCalculatorForm.js +4 -3
  188. package/lib/components/Calculator/CreditCalculatorForm.js.map +1 -1
  189. package/lib/components/Calculator/DepositCalculatorForm.js +21 -2
  190. package/lib/components/Calculator/DepositCalculatorForm.js.map +1 -1
  191. package/lib/components/Calculator/EmbeddableCalcBlocks.d.ts +1 -3
  192. package/lib/components/Calculator/EmbeddableCalcBlocks.js +0 -2
  193. package/lib/components/Calculator/EmbeddableCalcBlocks.js.map +1 -1
  194. package/lib/components/Calculator/renderFootnote.d.ts +2 -0
  195. package/lib/components/Calculator/renderFootnote.js +3 -0
  196. package/lib/components/Calculator/renderFootnote.js.map +1 -0
  197. package/lib/components/CardTransfer/CardTransferContent.d.ts +3 -6
  198. package/lib/components/Catalog/CatalogCard.js.map +1 -1
  199. package/lib/components/Catalog/CatalogContent.d.ts +2 -5
  200. package/lib/components/ComparisonTable/ComparisonTableContent.d.ts +9 -43
  201. package/lib/components/ComparisonTable/TableColumn.d.ts +8 -1
  202. package/lib/components/ComparisonTable/TableColumn.js.map +1 -1
  203. package/lib/components/ComparisonTable/TableRow.d.ts +5 -1
  204. package/lib/components/ComparisonTable/TableRow.js.map +1 -1
  205. package/lib/components/ContentPage/computeAPIFallback.d.ts +5 -0
  206. package/lib/components/ContentPage/computeAPIFallback.js +40 -0
  207. package/lib/components/ContentPage/computeAPIFallback.js.map +1 -0
  208. package/lib/components/ErrorBlock/ErrorBlockContent.d.ts +17 -4
  209. package/lib/components/ExchangeRateTile/ExchangeRateTileContent.d.ts +3 -4
  210. package/lib/components/ExchangeRateTile/renderInput.js +4 -3
  211. package/lib/components/ExchangeRateTile/renderInput.js.map +1 -1
  212. package/lib/components/Footer/Footer.js +3 -2
  213. package/lib/components/Footer/Footer.js.map +1 -1
  214. package/lib/components/Footer/Footer.mobile.js +3 -2
  215. package/lib/components/Footer/Footer.mobile.js.map +1 -1
  216. package/lib/components/Footer/FooterContent.d.ts +5 -9
  217. package/lib/components/Footer/HorizontalNavigation.d.ts +2 -2
  218. package/lib/components/Footer/HorizontalNavigation.js.map +1 -1
  219. package/lib/components/Footer/HorizontalNavigation.mobile.d.ts +2 -2
  220. package/lib/components/Footer/HorizontalNavigation.mobile.js.map +1 -1
  221. package/lib/components/Footer/Sitemap.d.ts +2 -0
  222. package/lib/components/Footer/Sitemap.js +2 -2
  223. package/lib/components/Footer/Sitemap.js.map +1 -1
  224. package/lib/components/Gallery/GalleryContent.d.ts +16 -19
  225. package/lib/components/GracePeriod/GracePeriodContent.d.ts +10 -14
  226. package/lib/components/Header/Header.fallback.d.ts +2 -0
  227. package/lib/components/Header/Header.fallback.js +9 -0
  228. package/lib/components/Header/Header.fallback.js.map +1 -0
  229. package/lib/components/Header/Header.js +4 -3
  230. package/lib/components/Header/Header.js.map +1 -1
  231. package/lib/components/Header/Header.mobile.js +3 -2
  232. package/lib/components/Header/Header.mobile.js.map +1 -1
  233. package/lib/components/Header/HeaderContent.d.ts +14 -23
  234. package/lib/components/Headline/HeadlineContent.d.ts +4 -3
  235. package/lib/components/InsuranceAmountBlock/InsuranceAmountBlockContent.d.ts +8 -13
  236. package/lib/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +2 -2
  237. package/lib/components/MiniGallery/MiniGalleryContent.d.ts +8 -3
  238. package/lib/components/MobileAppTile/MobileAppTileContent.d.ts +19 -5
  239. package/lib/components/OfficeServicesBlock/OfficeServicesBlock.js +1 -1
  240. package/lib/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -1
  241. package/lib/components/OfficeServicesBlock/OfficeServicesBlockContent.d.ts +5 -20
  242. package/lib/components/OtherProducts/OtherProductsContent.d.ts +3 -4
  243. package/lib/components/PictureText/PictureText.js +1 -1
  244. package/lib/components/PictureText/PictureTextContent.d.ts +20 -4
  245. package/lib/components/ProductBlock/ProductBlockContent.d.ts +13 -10
  246. package/lib/components/ProductTile/ProductTile.fixture.d.ts +1 -0
  247. package/lib/components/ProductTile/ProductTile.js +13 -8
  248. package/lib/components/ProductTile/ProductTile.js.map +1 -1
  249. package/lib/components/ProductTile/ProductTileContent.d.ts +19 -9
  250. package/lib/components/Recommendation/RecommendationContent.d.ts +20 -2
  251. package/lib/components/SafeDepositRental/SafeDepositRental.js +1 -6
  252. package/lib/components/SafeDepositRental/SafeDepositRental.js.map +1 -1
  253. package/lib/components/SafeDepositRental/SafeDepositRentalContent.d.ts +4 -4
  254. package/lib/components/SafeDepositRental/YandexMap.js +15 -8
  255. package/lib/components/SafeDepositRental/YandexMap.js.map +1 -1
  256. package/lib/components/SafeDepositRental/renderClusterer.d.ts +2 -1
  257. package/lib/components/SafeDepositRental/renderClusterer.js +16 -18
  258. package/lib/components/SafeDepositRental/renderClusterer.js.map +1 -1
  259. package/lib/components/SafeDepositRental/useYandexMaps.d.ts +2 -0
  260. package/lib/components/SafeDepositRental/useYandexMaps.js +9 -0
  261. package/lib/components/SafeDepositRental/useYandexMaps.js.map +1 -0
  262. package/lib/components/StepsBlock/StepsBlockContent.d.ts +6 -25
  263. package/lib/components/Tabs/TabsContent.d.ts +8 -5
  264. package/lib/components/TariffsTable/EmbeddableCellData.mobile.d.ts +0 -3
  265. package/lib/components/TariffsTable/EmbeddableCellData.mobile.js.map +1 -1
  266. package/lib/components/TariffsTable/TariffsTableContent.d.ts +19 -36
  267. package/lib/components/TariffsTable/TariffsTableRow.js +2 -1
  268. package/lib/components/TariffsTable/TariffsTableRow.js.map +1 -1
  269. package/lib/components/TextBlock/TextBlockContent.d.ts +3 -6
  270. package/lib/components/Tile/TileContent.d.ts +17 -2
  271. package/lib/hooks/useExternalNS.d.ts +2 -0
  272. package/lib/hooks/useExternalNS.js +35 -0
  273. package/lib/hooks/useExternalNS.js.map +1 -0
  274. package/lib/icons/IconName.d.ts +18 -8
  275. package/lib/icons/IconName.js +16 -6
  276. package/lib/icons/IconName.js.map +1 -1
  277. package/lib/model/ButtonVersion.d.ts +1 -1
  278. package/lib/model/Footnote.d.ts +4 -0
  279. package/lib/model/Footnote.js +2 -0
  280. package/lib/model/Footnote.js.map +1 -0
  281. package/lib/model/HeadlineType.d.ts +4 -0
  282. package/lib/model/Picture.d.ts +4 -0
  283. package/lib/model/ProductColorVersion.d.ts +4 -0
  284. package/lib/model/ProductColorVersion.js +2 -0
  285. package/lib/model/ProductColorVersion.js.map +1 -0
  286. package/lib/services/sitemap/useSitemap.d.ts +2 -1
  287. package/lib/services/sitemap/useSitemap.js +2 -2
  288. package/lib/services/sitemap/useSitemap.js.map +1 -1
  289. package/lib/types/Fallback.d.ts +5 -0
  290. package/lib/types/Fallback.js +2 -0
  291. package/lib/types/Fallback.js.map +1 -0
  292. package/lib/types.d.ts +1 -0
  293. package/lib/ui-kit/BenefitItem/BenefitItemProps.d.ts +3 -8
  294. package/lib/ui-kit/Button/ButtonProps.d.ts +3 -5
  295. package/lib/ui-kit/Button/ButtonSection.js +2 -1
  296. package/lib/ui-kit/Button/ButtonSection.js.map +1 -1
  297. package/lib/ui-kit/Button/buttonClassNameConstants.js +4 -3
  298. package/lib/ui-kit/Button/buttonClassNameConstants.js.map +1 -1
  299. package/lib/ui-kit/Foldable/Foldable.js +1 -1
  300. package/lib/ui-kit/Foldable/Foldable.js.map +1 -1
  301. package/lib/ui-kit/Input/Input.js +1 -1
  302. package/lib/ui-kit/Input/Input.js.map +1 -1
  303. package/lib/ui-kit/InputRange/InputRange.js +8 -15
  304. package/lib/ui-kit/InputRange/InputRange.js.map +1 -1
  305. package/lib/ui-kit/Radio/Radio.js +1 -1
  306. package/lib/ui-kit/Radio/Radio.js.map +1 -1
  307. package/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.js +1 -1
  308. package/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
  309. package/lib/ui-kit/SearchBar/SearchBarInner.js +1 -1
  310. package/lib/ui-kit/SearchBar/SearchBarInner.js.map +1 -1
  311. package/lib/ui-kit/SelectCustom/SelectCustom.d.ts +13 -0
  312. package/lib/{components/Navigation/Navigation.fixture.d.ts → ui-kit/SelectCustom/SelectCustom.fixture.d.ts} +0 -0
  313. package/lib/ui-kit/SelectCustom/SelectCustom.js +28 -0
  314. package/lib/ui-kit/SelectCustom/SelectCustom.js.map +1 -0
  315. package/mobile/bundle/bundle.umd.js +56 -25
  316. package/mobile/bundle/bundle.umd.min.js +1 -1
  317. package/mobile/dist/ProjectSettings.d.ts +2 -0
  318. package/mobile/dist/ProjectSettings.js +3 -0
  319. package/mobile/dist/ProjectSettings.js.map +1 -1
  320. package/mobile/dist/components/Accordion/AccordionContent.d.ts +4 -9
  321. package/mobile/dist/components/BenefitsBlock/BenefitsBlock.js.map +1 -1
  322. package/mobile/dist/components/BenefitsBlock/BenefitsBlockContent.d.ts +12 -19
  323. package/mobile/dist/components/BlockContent.d.ts +2 -3
  324. package/mobile/dist/components/Bonus/BonusContent.d.ts +6 -9
  325. package/mobile/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js +3 -5
  326. package/mobile/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  327. package/mobile/dist/components/BonusBenefitsBlock/BonusBenefitsBlockContent.d.ts +5 -11
  328. package/mobile/dist/components/Calculator/BonusCalculatorForm.js +3 -2
  329. package/mobile/dist/components/Calculator/BonusCalculatorForm.js.map +1 -1
  330. package/mobile/dist/components/Calculator/CalculatorContent.d.ts +7 -40
  331. package/mobile/dist/components/Calculator/CalculatorValueBlock.js +1 -1
  332. package/mobile/dist/components/Calculator/CreditCalculatorForm.js +4 -3
  333. package/mobile/dist/components/Calculator/CreditCalculatorForm.js.map +1 -1
  334. package/mobile/dist/components/Calculator/DepositCalculatorForm.js +21 -2
  335. package/mobile/dist/components/Calculator/DepositCalculatorForm.js.map +1 -1
  336. package/mobile/dist/components/Calculator/EmbeddableCalcBlocks.d.ts +1 -3
  337. package/mobile/dist/components/Calculator/EmbeddableCalcBlocks.js +0 -2
  338. package/mobile/dist/components/Calculator/EmbeddableCalcBlocks.js.map +1 -1
  339. package/mobile/dist/components/Calculator/renderFootnote.d.ts +2 -0
  340. package/mobile/dist/components/Calculator/renderFootnote.js +6 -0
  341. package/mobile/dist/components/Calculator/renderFootnote.js.map +1 -0
  342. package/mobile/dist/components/CardTransfer/CardTransferContent.d.ts +3 -6
  343. package/mobile/dist/components/Catalog/CatalogCard.js.map +1 -1
  344. package/mobile/dist/components/Catalog/CatalogContent.d.ts +2 -5
  345. package/mobile/dist/components/ComparisonTable/ComparisonTableContent.d.ts +9 -43
  346. package/mobile/dist/components/ComparisonTable/TableColumn.d.ts +8 -1
  347. package/mobile/dist/components/ComparisonTable/TableColumn.js.map +1 -1
  348. package/mobile/dist/components/ComparisonTable/TableRow.d.ts +5 -1
  349. package/mobile/dist/components/ComparisonTable/TableRow.js.map +1 -1
  350. package/mobile/dist/components/ContentPage/computeAPIFallback.d.ts +5 -0
  351. package/mobile/dist/components/ContentPage/computeAPIFallback.js +68 -0
  352. package/mobile/dist/components/ContentPage/computeAPIFallback.js.map +1 -0
  353. package/mobile/dist/components/ErrorBlock/ErrorBlockContent.d.ts +17 -4
  354. package/mobile/dist/components/ExchangeRateTile/ExchangeRateTileContent.d.ts +3 -4
  355. package/mobile/dist/components/ExchangeRateTile/renderInput.js +4 -3
  356. package/mobile/dist/components/ExchangeRateTile/renderInput.js.map +1 -1
  357. package/mobile/dist/components/Footer/Footer.js +3 -2
  358. package/mobile/dist/components/Footer/Footer.js.map +1 -1
  359. package/mobile/dist/components/Footer/FooterContent.d.ts +5 -9
  360. package/mobile/dist/components/Footer/HorizontalNavigation.d.ts +2 -2
  361. package/mobile/dist/components/Footer/HorizontalNavigation.js.map +1 -1
  362. package/mobile/dist/components/Footer/Sitemap.d.ts +2 -0
  363. package/mobile/dist/components/Footer/Sitemap.js +2 -2
  364. package/mobile/dist/components/Footer/Sitemap.js.map +1 -1
  365. package/mobile/dist/components/Gallery/GalleryContent.d.ts +16 -19
  366. package/mobile/dist/components/GracePeriod/GracePeriodContent.d.ts +10 -14
  367. package/mobile/dist/components/Header/Header.fallback.d.ts +2 -0
  368. package/mobile/dist/components/Header/Header.fallback.js +12 -0
  369. package/mobile/dist/components/Header/Header.fallback.js.map +1 -0
  370. package/mobile/dist/components/Header/Header.js +3 -2
  371. package/mobile/dist/components/Header/Header.js.map +1 -1
  372. package/mobile/dist/components/Header/HeaderContent.d.ts +14 -23
  373. package/mobile/dist/components/Headline/HeadlineContent.d.ts +4 -3
  374. package/mobile/dist/components/InsuranceAmountBlock/InsuranceAmountBlockContent.d.ts +8 -13
  375. package/mobile/dist/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +2 -2
  376. package/mobile/dist/components/MiniGallery/MiniGalleryContent.d.ts +8 -3
  377. package/mobile/dist/components/MobileAppTile/MobileAppTileContent.d.ts +19 -5
  378. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlock.js +1 -1
  379. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -1
  380. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlockContent.d.ts +5 -20
  381. package/mobile/dist/components/OtherProducts/OtherProductsContent.d.ts +3 -4
  382. package/mobile/dist/components/PictureText/PictureText.js +1 -1
  383. package/mobile/dist/components/PictureText/PictureTextContent.d.ts +20 -4
  384. package/mobile/dist/components/ProductBlock/ProductBlockContent.d.ts +13 -10
  385. package/mobile/dist/components/ProductTile/ProductTile.js +13 -8
  386. package/mobile/dist/components/ProductTile/ProductTile.js.map +1 -1
  387. package/mobile/dist/components/ProductTile/ProductTileContent.d.ts +19 -9
  388. package/mobile/dist/components/Recommendation/RecommendationContent.d.ts +20 -2
  389. package/mobile/dist/components/SafeDepositRental/SafeDepositRental.js +1 -6
  390. package/mobile/dist/components/SafeDepositRental/SafeDepositRental.js.map +1 -1
  391. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalContent.d.ts +4 -4
  392. package/mobile/dist/components/SafeDepositRental/YandexMap.js +14 -7
  393. package/mobile/dist/components/SafeDepositRental/YandexMap.js.map +1 -1
  394. package/mobile/dist/components/SafeDepositRental/renderClusterer.d.ts +2 -1
  395. package/mobile/dist/components/SafeDepositRental/renderClusterer.js +16 -18
  396. package/mobile/dist/components/SafeDepositRental/renderClusterer.js.map +1 -1
  397. package/mobile/dist/components/SafeDepositRental/useYandexMaps.d.ts +2 -0
  398. package/mobile/dist/components/SafeDepositRental/useYandexMaps.js +12 -0
  399. package/mobile/dist/components/SafeDepositRental/useYandexMaps.js.map +1 -0
  400. package/mobile/dist/components/StepsBlock/StepsBlockContent.d.ts +6 -25
  401. package/mobile/dist/components/Tabs/TabsContent.d.ts +8 -5
  402. package/mobile/dist/components/TariffsTable/EmbeddableCellData.d.ts +0 -3
  403. package/mobile/dist/components/TariffsTable/EmbeddableCellData.js.map +1 -1
  404. package/mobile/dist/components/TariffsTable/TariffsTableContent.d.ts +19 -36
  405. package/mobile/dist/components/TariffsTable/TariffsTableRow.js +2 -1
  406. package/mobile/dist/components/TariffsTable/TariffsTableRow.js.map +1 -1
  407. package/mobile/dist/components/TextBlock/TextBlockContent.d.ts +3 -6
  408. package/mobile/dist/components/Tile/TileContent.d.ts +17 -2
  409. package/mobile/dist/hooks/useExternalNS.d.ts +2 -0
  410. package/mobile/dist/hooks/useExternalNS.js +39 -0
  411. package/mobile/dist/hooks/useExternalNS.js.map +1 -0
  412. package/mobile/dist/icons/IconName.d.ts +18 -8
  413. package/mobile/dist/icons/IconName.js +16 -6
  414. package/mobile/dist/icons/IconName.js.map +1 -1
  415. package/mobile/dist/model/ButtonVersion.d.ts +1 -1
  416. package/mobile/dist/model/Footnote.d.ts +4 -0
  417. package/mobile/dist/model/Footnote.js +2 -0
  418. package/mobile/dist/model/Footnote.js.map +1 -0
  419. package/mobile/dist/model/HeadlineType.d.ts +4 -0
  420. package/mobile/dist/model/Picture.d.ts +4 -0
  421. package/mobile/dist/model/ProductColorVersion.d.ts +4 -0
  422. package/mobile/dist/model/ProductColorVersion.js +2 -0
  423. package/mobile/dist/model/ProductColorVersion.js.map +1 -0
  424. package/mobile/dist/services/sitemap/useSitemap.d.ts +2 -1
  425. package/mobile/dist/services/sitemap/useSitemap.js +2 -2
  426. package/mobile/dist/services/sitemap/useSitemap.js.map +1 -1
  427. package/mobile/dist/types/Fallback.d.ts +5 -0
  428. package/mobile/dist/types/Fallback.js +2 -0
  429. package/mobile/dist/types/Fallback.js.map +1 -0
  430. package/mobile/dist/types.d.ts +1 -0
  431. package/mobile/dist/ui-kit/BenefitItem/BenefitItemProps.d.ts +3 -8
  432. package/mobile/dist/ui-kit/Button/ButtonProps.d.ts +3 -5
  433. package/mobile/dist/ui-kit/Button/ButtonSection.js +2 -1
  434. package/mobile/dist/ui-kit/Button/ButtonSection.js.map +1 -1
  435. package/mobile/dist/ui-kit/Button/buttonClassNameConstants.js +4 -3
  436. package/mobile/dist/ui-kit/Button/buttonClassNameConstants.js.map +1 -1
  437. package/mobile/dist/ui-kit/Foldable/Foldable.js +1 -1
  438. package/mobile/dist/ui-kit/Foldable/Foldable.js.map +1 -1
  439. package/mobile/dist/ui-kit/Input/Input.js +1 -1
  440. package/mobile/dist/ui-kit/Input/Input.js.map +1 -1
  441. package/mobile/dist/ui-kit/InputRange/InputRange.js +8 -15
  442. package/mobile/dist/ui-kit/InputRange/InputRange.js.map +1 -1
  443. package/mobile/dist/ui-kit/Radio/Radio.js +1 -1
  444. package/mobile/dist/ui-kit/Radio/Radio.js.map +1 -1
  445. package/mobile/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.js +1 -1
  446. package/mobile/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
  447. package/mobile/dist/ui-kit/SearchBar/SearchBarInner.js +1 -1
  448. package/mobile/dist/ui-kit/SearchBar/SearchBarInner.js.map +1 -1
  449. package/mobile/dist/ui-kit/SelectCustom/SelectCustom.d.ts +13 -0
  450. package/mobile/dist/ui-kit/SelectCustom/SelectCustom.js +30 -0
  451. package/mobile/dist/ui-kit/SelectCustom/SelectCustom.js.map +1 -0
  452. package/mobile/lib/ProjectSettings.d.ts +2 -0
  453. package/mobile/lib/ProjectSettings.js +3 -0
  454. package/mobile/lib/ProjectSettings.js.map +1 -1
  455. package/mobile/lib/components/Accordion/AccordionContent.d.ts +4 -9
  456. package/mobile/lib/components/BenefitsBlock/BenefitsBlock.js.map +1 -1
  457. package/mobile/lib/components/BenefitsBlock/BenefitsBlockContent.d.ts +12 -19
  458. package/mobile/lib/components/BlockContent.d.ts +2 -3
  459. package/mobile/lib/components/Bonus/BonusContent.d.ts +6 -9
  460. package/mobile/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js +3 -5
  461. package/mobile/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  462. package/mobile/lib/components/BonusBenefitsBlock/BonusBenefitsBlockContent.d.ts +5 -11
  463. package/mobile/lib/components/Calculator/BonusCalculatorForm.js +3 -2
  464. package/mobile/lib/components/Calculator/BonusCalculatorForm.js.map +1 -1
  465. package/mobile/lib/components/Calculator/CalculatorContent.d.ts +7 -40
  466. package/mobile/lib/components/Calculator/CalculatorValueBlock.js +1 -1
  467. package/mobile/lib/components/Calculator/CreditCalculatorForm.js +4 -3
  468. package/mobile/lib/components/Calculator/CreditCalculatorForm.js.map +1 -1
  469. package/mobile/lib/components/Calculator/DepositCalculatorForm.js +21 -2
  470. package/mobile/lib/components/Calculator/DepositCalculatorForm.js.map +1 -1
  471. package/mobile/lib/components/Calculator/EmbeddableCalcBlocks.d.ts +1 -3
  472. package/mobile/lib/components/Calculator/EmbeddableCalcBlocks.js +0 -2
  473. package/mobile/lib/components/Calculator/EmbeddableCalcBlocks.js.map +1 -1
  474. package/mobile/lib/components/Calculator/renderFootnote.d.ts +2 -0
  475. package/mobile/lib/components/Calculator/renderFootnote.js +3 -0
  476. package/mobile/lib/components/Calculator/renderFootnote.js.map +1 -0
  477. package/mobile/lib/components/CardTransfer/CardTransferContent.d.ts +3 -6
  478. package/mobile/lib/components/Catalog/CatalogCard.js.map +1 -1
  479. package/mobile/lib/components/Catalog/CatalogContent.d.ts +2 -5
  480. package/mobile/lib/components/ComparisonTable/ComparisonTableContent.d.ts +9 -43
  481. package/mobile/lib/components/ComparisonTable/TableColumn.d.ts +8 -1
  482. package/mobile/lib/components/ComparisonTable/TableColumn.js.map +1 -1
  483. package/mobile/lib/components/ComparisonTable/TableRow.d.ts +5 -1
  484. package/mobile/lib/components/ComparisonTable/TableRow.js.map +1 -1
  485. package/mobile/lib/components/ContentPage/computeAPIFallback.d.ts +5 -0
  486. package/mobile/lib/components/ContentPage/computeAPIFallback.js +40 -0
  487. package/mobile/lib/components/ContentPage/computeAPIFallback.js.map +1 -0
  488. package/mobile/lib/components/ErrorBlock/ErrorBlockContent.d.ts +17 -4
  489. package/mobile/lib/components/ExchangeRateTile/ExchangeRateTileContent.d.ts +3 -4
  490. package/mobile/lib/components/ExchangeRateTile/renderInput.js +4 -3
  491. package/mobile/lib/components/ExchangeRateTile/renderInput.js.map +1 -1
  492. package/mobile/lib/components/Footer/Footer.js +3 -2
  493. package/mobile/lib/components/Footer/Footer.js.map +1 -1
  494. package/mobile/lib/components/Footer/FooterContent.d.ts +5 -9
  495. package/mobile/lib/components/Footer/HorizontalNavigation.d.ts +2 -2
  496. package/mobile/lib/components/Footer/HorizontalNavigation.js.map +1 -1
  497. package/mobile/lib/components/Footer/Sitemap.d.ts +2 -0
  498. package/mobile/lib/components/Footer/Sitemap.js +2 -2
  499. package/mobile/lib/components/Footer/Sitemap.js.map +1 -1
  500. package/mobile/lib/components/Gallery/GalleryContent.d.ts +16 -19
  501. package/mobile/lib/components/GracePeriod/GracePeriodContent.d.ts +10 -14
  502. package/mobile/lib/components/Header/Header.fallback.d.ts +2 -0
  503. package/mobile/lib/components/Header/Header.fallback.js +9 -0
  504. package/mobile/lib/components/Header/Header.fallback.js.map +1 -0
  505. package/mobile/lib/components/Header/Header.js +3 -2
  506. package/mobile/lib/components/Header/Header.js.map +1 -1
  507. package/mobile/lib/components/Header/HeaderContent.d.ts +14 -23
  508. package/mobile/lib/components/Headline/HeadlineContent.d.ts +4 -3
  509. package/mobile/lib/components/InsuranceAmountBlock/InsuranceAmountBlockContent.d.ts +8 -13
  510. package/mobile/lib/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +2 -2
  511. package/mobile/lib/components/MiniGallery/MiniGalleryContent.d.ts +8 -3
  512. package/mobile/lib/components/MobileAppTile/MobileAppTileContent.d.ts +19 -5
  513. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlock.js +1 -1
  514. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -1
  515. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlockContent.d.ts +5 -20
  516. package/mobile/lib/components/OtherProducts/OtherProductsContent.d.ts +3 -4
  517. package/mobile/lib/components/PictureText/PictureText.js +1 -1
  518. package/mobile/lib/components/PictureText/PictureTextContent.d.ts +20 -4
  519. package/mobile/lib/components/ProductBlock/ProductBlockContent.d.ts +13 -10
  520. package/mobile/lib/components/ProductTile/ProductTile.js +13 -8
  521. package/mobile/lib/components/ProductTile/ProductTile.js.map +1 -1
  522. package/mobile/lib/components/ProductTile/ProductTileContent.d.ts +19 -9
  523. package/mobile/lib/components/Recommendation/RecommendationContent.d.ts +20 -2
  524. package/mobile/lib/components/SafeDepositRental/SafeDepositRental.js +1 -6
  525. package/mobile/lib/components/SafeDepositRental/SafeDepositRental.js.map +1 -1
  526. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalContent.d.ts +4 -4
  527. package/mobile/lib/components/SafeDepositRental/YandexMap.js +15 -8
  528. package/mobile/lib/components/SafeDepositRental/YandexMap.js.map +1 -1
  529. package/mobile/lib/components/SafeDepositRental/renderClusterer.d.ts +2 -1
  530. package/mobile/lib/components/SafeDepositRental/renderClusterer.js +16 -18
  531. package/mobile/lib/components/SafeDepositRental/renderClusterer.js.map +1 -1
  532. package/mobile/lib/components/SafeDepositRental/useYandexMaps.d.ts +2 -0
  533. package/mobile/lib/components/SafeDepositRental/useYandexMaps.js +9 -0
  534. package/mobile/lib/components/SafeDepositRental/useYandexMaps.js.map +1 -0
  535. package/mobile/lib/components/StepsBlock/StepsBlockContent.d.ts +6 -25
  536. package/mobile/lib/components/Tabs/TabsContent.d.ts +8 -5
  537. package/mobile/lib/components/TariffsTable/EmbeddableCellData.d.ts +0 -3
  538. package/mobile/lib/components/TariffsTable/EmbeddableCellData.js.map +1 -1
  539. package/mobile/lib/components/TariffsTable/TariffsTableContent.d.ts +19 -36
  540. package/mobile/lib/components/TariffsTable/TariffsTableRow.js +2 -1
  541. package/mobile/lib/components/TariffsTable/TariffsTableRow.js.map +1 -1
  542. package/mobile/lib/components/TextBlock/TextBlockContent.d.ts +3 -6
  543. package/mobile/lib/components/Tile/TileContent.d.ts +17 -2
  544. package/mobile/lib/hooks/useExternalNS.d.ts +2 -0
  545. package/mobile/lib/hooks/useExternalNS.js +35 -0
  546. package/mobile/lib/hooks/useExternalNS.js.map +1 -0
  547. package/mobile/lib/icons/IconName.d.ts +18 -8
  548. package/mobile/lib/icons/IconName.js +16 -6
  549. package/mobile/lib/icons/IconName.js.map +1 -1
  550. package/mobile/lib/model/ButtonVersion.d.ts +1 -1
  551. package/mobile/lib/model/Footnote.d.ts +4 -0
  552. package/mobile/lib/model/Footnote.js +2 -0
  553. package/mobile/lib/model/Footnote.js.map +1 -0
  554. package/mobile/lib/model/HeadlineType.d.ts +4 -0
  555. package/mobile/lib/model/Picture.d.ts +4 -0
  556. package/mobile/lib/model/ProductColorVersion.d.ts +4 -0
  557. package/mobile/lib/model/ProductColorVersion.js +2 -0
  558. package/mobile/lib/model/ProductColorVersion.js.map +1 -0
  559. package/mobile/lib/services/sitemap/useSitemap.d.ts +2 -1
  560. package/mobile/lib/services/sitemap/useSitemap.js +2 -2
  561. package/mobile/lib/services/sitemap/useSitemap.js.map +1 -1
  562. package/mobile/lib/types/Fallback.d.ts +5 -0
  563. package/mobile/lib/types/Fallback.js +2 -0
  564. package/mobile/lib/types/Fallback.js.map +1 -0
  565. package/mobile/lib/types.d.ts +1 -0
  566. package/mobile/lib/ui-kit/BenefitItem/BenefitItemProps.d.ts +3 -8
  567. package/mobile/lib/ui-kit/Button/ButtonProps.d.ts +3 -5
  568. package/mobile/lib/ui-kit/Button/ButtonSection.js +2 -1
  569. package/mobile/lib/ui-kit/Button/ButtonSection.js.map +1 -1
  570. package/mobile/lib/ui-kit/Button/buttonClassNameConstants.js +4 -3
  571. package/mobile/lib/ui-kit/Button/buttonClassNameConstants.js.map +1 -1
  572. package/mobile/lib/ui-kit/Foldable/Foldable.js +1 -1
  573. package/mobile/lib/ui-kit/Foldable/Foldable.js.map +1 -1
  574. package/mobile/lib/ui-kit/Input/Input.js +1 -1
  575. package/mobile/lib/ui-kit/Input/Input.js.map +1 -1
  576. package/mobile/lib/ui-kit/InputRange/InputRange.js +8 -15
  577. package/mobile/lib/ui-kit/InputRange/InputRange.js.map +1 -1
  578. package/mobile/lib/ui-kit/Radio/Radio.js +1 -1
  579. package/mobile/lib/ui-kit/Radio/Radio.js.map +1 -1
  580. package/mobile/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.js +1 -1
  581. package/mobile/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
  582. package/mobile/lib/ui-kit/SearchBar/SearchBarInner.js +1 -1
  583. package/mobile/lib/ui-kit/SearchBar/SearchBarInner.js.map +1 -1
  584. package/mobile/lib/ui-kit/SelectCustom/SelectCustom.d.ts +13 -0
  585. package/mobile/lib/ui-kit/SelectCustom/SelectCustom.js +28 -0
  586. package/mobile/lib/ui-kit/SelectCustom/SelectCustom.js.map +1 -0
  587. package/mobile/src/ProjectSettings.ts +4 -0
  588. package/mobile/src/components/Accordion/AccordionContent.ts +5 -9
  589. package/mobile/src/components/BenefitsBlock/BenefitsBlock.tsx +8 -14
  590. package/mobile/src/components/BenefitsBlock/BenefitsBlockContent.ts +15 -22
  591. package/mobile/src/components/BlockContent.ts +1 -3
  592. package/mobile/src/components/Bonus/BonusContent.ts +6 -8
  593. package/mobile/src/components/BonusBenefitsBlock/BonusBenefitsBlock.tsx +25 -27
  594. package/mobile/src/components/BonusBenefitsBlock/BonusBenefitsBlockContent.ts +5 -11
  595. package/mobile/src/components/Calculator/BonusCalculatorForm.tsx +4 -2
  596. package/mobile/src/components/Calculator/CalculatorContent.ts +6 -44
  597. package/mobile/src/components/Calculator/CalculatorValueBlock.tsx +1 -1
  598. package/mobile/src/components/Calculator/CreditCalculatorForm.tsx +4 -2
  599. package/mobile/src/components/Calculator/DepositCalculatorForm.tsx +25 -2
  600. package/mobile/src/components/Calculator/EmbeddableCalcBlocks.tsx +0 -3
  601. package/mobile/src/components/Calculator/renderFootnote.tsx +2 -0
  602. package/mobile/src/components/CardTransfer/CardTransferContent.ts +9 -10
  603. package/mobile/src/components/Catalog/CatalogCard.tsx +4 -3
  604. package/mobile/src/components/Catalog/CatalogContent.ts +2 -6
  605. package/mobile/src/components/ComparisonTable/ComparisonTableContent.ts +9 -47
  606. package/mobile/src/components/ComparisonTable/TableColumn.tsx +10 -1
  607. package/mobile/src/components/ComparisonTable/TableRow.tsx +5 -1
  608. package/mobile/src/components/ContentPage/computeAPIFallback.spec.ts +63 -0
  609. package/mobile/src/components/ContentPage/computeAPIFallback.ts +55 -0
  610. package/mobile/src/components/ErrorBlock/ErrorBlockContent.ts +17 -4
  611. package/mobile/src/components/ExchangeRateTile/ExchangeRateTileContent.ts +3 -4
  612. package/mobile/src/components/ExchangeRateTile/renderInput.tsx +13 -16
  613. package/mobile/src/components/Footer/Footer.tsx +4 -1
  614. package/mobile/src/components/Footer/FooterContent.ts +5 -9
  615. package/mobile/src/components/Footer/HorizontalNavigation.tsx +3 -4
  616. package/mobile/src/components/Footer/Sitemap.tsx +4 -2
  617. package/mobile/src/components/Gallery/GalleryContent.ts +16 -19
  618. package/mobile/src/components/GracePeriod/GracePeriodContent.ts +10 -13
  619. package/mobile/src/components/Header/Header.fallback.ts +14 -0
  620. package/mobile/src/components/Header/Header.tsx +4 -2
  621. package/mobile/src/components/Header/HeaderContent.ts +15 -23
  622. package/mobile/src/components/Headline/HeadlineContent.ts +9 -9
  623. package/mobile/src/components/InsuranceAmountBlock/InsuranceAmountBlockContent.ts +8 -13
  624. package/mobile/src/components/InsuranceAmountBlock/InsuranceAmountBlockInner.tsx +2 -2
  625. package/mobile/src/components/MiniGallery/MiniGalleryContent.ts +8 -3
  626. package/mobile/src/components/MobileAppTile/MobileAppTileContent.ts +19 -6
  627. package/mobile/src/components/OfficeServicesBlock/OfficeServicesBlock.tsx +3 -3
  628. package/mobile/src/components/OfficeServicesBlock/OfficeServicesBlockContent.ts +5 -20
  629. package/mobile/src/components/OtherProducts/OtherProductsContent.ts +3 -4
  630. package/mobile/src/components/PictureText/PictureText.tsx +1 -1
  631. package/mobile/src/components/PictureText/PictureTextContent.ts +20 -5
  632. package/mobile/src/components/ProductBlock/ProductBlockContent.ts +13 -10
  633. package/mobile/src/components/ProductTile/ProductTile.tsx +21 -12
  634. package/mobile/src/components/ProductTile/ProductTileContent.ts +19 -10
  635. package/mobile/src/components/Recommendation/RecommendationContent.ts +20 -2
  636. package/mobile/src/components/SafeDepositRental/SafeDepositRental.tsx +1 -12
  637. package/mobile/src/components/SafeDepositRental/SafeDepositRentalContent.ts +8 -6
  638. package/mobile/src/components/SafeDepositRental/YandexMap.tsx +19 -11
  639. package/mobile/src/components/SafeDepositRental/renderClusterer.ts +29 -23
  640. package/mobile/src/components/SafeDepositRental/useYandexMaps.ts +13 -0
  641. package/mobile/src/components/StepsBlock/StepsBlockContent.ts +10 -27
  642. package/mobile/src/components/Tabs/TabsContent.ts +8 -5
  643. package/mobile/src/components/TariffsTable/EmbeddableCellData.tsx +0 -4
  644. package/mobile/src/components/TariffsTable/TariffsTableContent.ts +19 -36
  645. package/mobile/src/components/TariffsTable/TariffsTableRow.tsx +4 -1
  646. package/mobile/src/components/TextBlock/TextBlockContent.ts +3 -6
  647. package/mobile/src/components/Tile/TileContent.ts +17 -3
  648. package/mobile/src/components/__snapshots__/Blocks.spec.tsx.snap +16 -22
  649. package/mobile/src/hooks/useExternalNS.ts +44 -0
  650. package/mobile/src/icons/AirPlaneIcon.svg +1 -98
  651. package/mobile/src/icons/ArrowDownIcon.svg +1 -1
  652. package/mobile/src/icons/ArrowUpIcon.svg +1 -1
  653. package/mobile/src/icons/BuildingIcon.svg +10 -0
  654. package/mobile/src/icons/Car2Icon.svg +10 -0
  655. package/mobile/src/icons/CarIcon.svg +1 -466
  656. package/mobile/src/icons/CinemaIcon.svg +1 -274
  657. package/mobile/src/icons/DocDownloadIcon.svg +1 -1
  658. package/mobile/src/icons/DocsIcon.svg +1 -238
  659. package/mobile/src/icons/DoneIcon.svg +3 -3
  660. package/mobile/src/icons/DoneSimpleIcon.svg +3 -0
  661. package/mobile/src/icons/GpsIcon.svg +1 -1
  662. package/mobile/src/icons/IconName.ts +4 -4
  663. package/mobile/src/icons/MoneyIcon.svg +5 -1
  664. package/mobile/src/icons/MoneysIcon.svg +7 -0
  665. package/mobile/src/icons/PackA4Icon.svg +1 -1
  666. package/mobile/src/icons/PowerIcon.svg +1 -135
  667. package/mobile/src/icons/Profile2UserIcon.svg +6 -1
  668. package/mobile/src/icons/PumpkinIcon.svg +1 -236
  669. package/mobile/src/icons/SoundIcon.svg +1 -113
  670. package/mobile/src/icons/StrongBoxIcon.svg +5 -0
  671. package/mobile/src/icons/UserSquareIcon.svg +5 -0
  672. package/mobile/src/icons/UserTickIcon.svg +5 -1
  673. package/mobile/src/icons/WateringCanIcon.svg +1 -497
  674. package/mobile/src/model/ButtonVersion.ts +1 -1
  675. package/mobile/src/model/Footnote.ts +4 -0
  676. package/mobile/src/model/HeadlineType.ts +5 -0
  677. package/mobile/src/model/Picture.ts +5 -0
  678. package/mobile/src/model/ProductColorVersion.ts +4 -0
  679. package/mobile/src/services/sitemap/useSitemap.ts +3 -1
  680. package/mobile/src/types/Fallback.ts +4 -0
  681. package/mobile/src/types.ts +1 -0
  682. package/mobile/src/ui-kit/BenefitItem/BenefitItemProps.ts +3 -8
  683. package/mobile/src/ui-kit/Button/ButtonProps.ts +12 -13
  684. package/mobile/src/ui-kit/Button/ButtonSection.tsx +19 -2
  685. package/mobile/src/ui-kit/Button/buttonClassNameConstants.ts +5 -3
  686. package/mobile/src/ui-kit/Foldable/Foldable.tsx +1 -1
  687. package/mobile/src/ui-kit/Input/Input.tsx +1 -1
  688. package/mobile/src/ui-kit/InputRange/InputRange.tsx +24 -25
  689. package/mobile/src/ui-kit/Radio/Radio.tsx +2 -1
  690. package/mobile/src/ui-kit/RadioButtonGroup/RadioButtonGroup.tsx +1 -1
  691. package/mobile/src/ui-kit/SearchBar/SearchBarInner.tsx +1 -1
  692. package/mobile/src/ui-kit/SelectCustom/SelectCustom.tsx +91 -0
  693. package/package.json +3 -2
  694. package/src/ProjectSettings.ts +4 -0
  695. package/src/components/Accordion/AccordionContent.ts +5 -9
  696. package/src/components/BenefitsBlock/BenefitsBlock.tsx +8 -14
  697. package/src/components/BenefitsBlock/BenefitsBlockContent.ts +15 -22
  698. package/src/components/BlockContent.ts +1 -3
  699. package/src/components/Blocks.ts +1 -3
  700. package/src/components/Bonus/BonusContent.ts +6 -8
  701. package/src/components/BonusBenefitsBlock/BonusBenefitsBlock.tsx +25 -27
  702. package/src/components/BonusBenefitsBlock/BonusBenefitsBlockContent.ts +5 -11
  703. package/src/components/Calculator/BonusCalculatorForm.tsx +4 -2
  704. package/src/components/Calculator/Calculator.fixture.tsx +5 -21
  705. package/src/components/Calculator/CalculatorContent.ts +6 -44
  706. package/src/components/Calculator/CalculatorValueBlock.tsx +1 -1
  707. package/src/components/Calculator/CreditCalculatorForm.tsx +4 -2
  708. package/src/components/Calculator/DepositCalculatorForm.tsx +25 -2
  709. package/src/components/Calculator/EmbeddableCalcBlocks.tsx +0 -3
  710. package/src/components/Calculator/renderFootnote.tsx +2 -0
  711. package/src/components/CardTransfer/CardTransferContent.ts +9 -10
  712. package/src/components/Catalog/Catalog.fixture.tsx +2 -2
  713. package/src/components/Catalog/CatalogCard.tsx +4 -3
  714. package/src/components/Catalog/CatalogContent.ts +2 -6
  715. package/src/components/ComparisonTable/ComparisonTableContent.ts +9 -47
  716. package/src/components/ComparisonTable/TableColumn.tsx +10 -1
  717. package/src/components/ComparisonTable/TableRow.tsx +5 -1
  718. package/src/components/ContentPage/computeAPIFallback.spec.ts +63 -0
  719. package/src/components/ContentPage/computeAPIFallback.ts +55 -0
  720. package/src/components/ErrorBlock/ErrorBlockContent.ts +17 -4
  721. package/src/components/ExchangeRateTile/ExchangeRateTileContent.ts +3 -4
  722. package/src/components/ExchangeRateTile/renderInput.tsx +13 -16
  723. package/src/components/Footer/Footer.mobile.tsx +4 -1
  724. package/src/components/Footer/Footer.tsx +5 -1
  725. package/src/components/Footer/FooterContent.ts +5 -9
  726. package/src/components/Footer/HorizontalNavigation.mobile.tsx +3 -4
  727. package/src/components/Footer/HorizontalNavigation.tsx +3 -4
  728. package/src/components/Footer/Sitemap.tsx +4 -2
  729. package/src/components/Gallery/GalleryContent.ts +16 -19
  730. package/src/components/GracePeriod/GracePeriodContent.ts +10 -13
  731. package/src/components/Header/Header.fallback.ts +14 -0
  732. package/src/components/Header/Header.mobile.tsx +4 -2
  733. package/src/components/Header/Header.tsx +7 -2
  734. package/src/components/Header/HeaderContent.ts +15 -23
  735. package/src/components/Headline/HeadlineContent.ts +9 -9
  736. package/src/components/InsuranceAmountBlock/InsuranceAmountBlockContent.ts +8 -13
  737. package/src/components/InsuranceAmountBlock/InsuranceAmountBlockInner.tsx +2 -2
  738. package/src/components/MiniGallery/MiniGalleryContent.ts +8 -3
  739. package/src/components/MobileAppTile/MobileAppTileContent.ts +19 -6
  740. package/src/components/OfficeServicesBlock/OfficeServicesBlock.tsx +3 -3
  741. package/src/components/OfficeServicesBlock/OfficeServicesBlockContent.ts +5 -20
  742. package/src/components/OtherProducts/OtherProductsContent.ts +3 -4
  743. package/src/components/PictureText/PictureText.tsx +1 -1
  744. package/src/components/PictureText/PictureTextContent.ts +20 -5
  745. package/src/components/ProductBlock/ProductBlock.fixture.tsx +1 -21
  746. package/src/components/ProductBlock/ProductBlockContent.ts +13 -10
  747. package/src/components/ProductTile/ProductTile.fixture.tsx +12 -0
  748. package/src/components/ProductTile/ProductTile.tsx +21 -12
  749. package/src/components/ProductTile/ProductTileContent.ts +19 -10
  750. package/src/components/Recommendation/RecommendationContent.ts +20 -2
  751. package/src/components/SafeDepositRental/SafeDepositRental.tsx +1 -12
  752. package/src/components/SafeDepositRental/SafeDepositRentalContent.ts +8 -6
  753. package/src/components/SafeDepositRental/YandexMap.tsx +19 -11
  754. package/src/components/SafeDepositRental/renderClusterer.ts +29 -23
  755. package/src/components/SafeDepositRental/useYandexMaps.ts +13 -0
  756. package/src/components/StepsBlock/StepsBlockContent.ts +10 -27
  757. package/src/components/Tabs/TabsContent.ts +8 -5
  758. package/src/components/TariffsTable/EmbeddableCellData.mobile.tsx +0 -4
  759. package/src/components/TariffsTable/TariffsTableContent.ts +19 -36
  760. package/src/components/TariffsTable/TariffsTableRow.tsx +4 -1
  761. package/src/components/TextBlock/TextBlockContent.ts +3 -6
  762. package/src/components/Tile/TileContent.ts +17 -3
  763. package/src/components/__snapshots__/Blocks.spec.tsx.snap +16 -22
  764. package/src/hooks/useExternalNS.ts +44 -0
  765. package/src/icons/AirPlaneIcon.svg +1 -98
  766. package/src/icons/ArrowDownIcon.svg +1 -1
  767. package/src/icons/ArrowUpIcon.svg +1 -1
  768. package/src/icons/BuildingIcon.svg +10 -0
  769. package/src/icons/Car2Icon.svg +10 -0
  770. package/src/icons/CarIcon.svg +1 -466
  771. package/src/icons/CinemaIcon.svg +1 -274
  772. package/src/icons/DocDownloadIcon.svg +1 -1
  773. package/src/icons/DocsIcon.svg +1 -238
  774. package/src/icons/DoneIcon.svg +3 -3
  775. package/src/icons/DoneSimpleIcon.svg +3 -0
  776. package/src/icons/GpsIcon.svg +1 -1
  777. package/src/icons/IconName.ts +25 -10
  778. package/src/icons/MoneyIcon.svg +5 -1
  779. package/src/icons/MoneysIcon.svg +7 -0
  780. package/src/icons/PackA4Icon.svg +1 -1
  781. package/src/icons/PowerIcon.svg +1 -135
  782. package/src/icons/Profile2UserIcon.svg +6 -1
  783. package/src/icons/PumpkinIcon.svg +1 -236
  784. package/src/icons/SoundIcon.svg +1 -113
  785. package/src/icons/StrongBoxIcon.svg +5 -0
  786. package/src/icons/UserSquareIcon.svg +5 -0
  787. package/src/icons/UserTickIcon.svg +5 -1
  788. package/src/icons/WateringCanIcon.svg +1 -497
  789. package/src/model/ButtonVersion.ts +1 -1
  790. package/src/model/Footnote.ts +4 -0
  791. package/src/model/HeadlineType.ts +5 -0
  792. package/src/model/Picture.ts +5 -0
  793. package/src/model/ProductColorVersion.ts +4 -0
  794. package/src/services/sitemap/useSitemap.ts +3 -1
  795. package/src/types/Fallback.ts +4 -0
  796. package/src/types.ts +1 -0
  797. package/src/ui-kit/BenefitItem/BenefitItemProps.ts +3 -8
  798. package/src/ui-kit/Button/ButtonProps.ts +12 -13
  799. package/src/ui-kit/Button/ButtonSection.tsx +19 -2
  800. package/src/ui-kit/Button/buttonClassNameConstants.ts +5 -3
  801. package/src/ui-kit/Foldable/Foldable.tsx +1 -1
  802. package/src/ui-kit/Input/Input.tsx +1 -1
  803. package/src/ui-kit/InputRange/InputRange.tsx +24 -25
  804. package/src/ui-kit/Radio/Radio.tsx +2 -1
  805. package/src/ui-kit/RadioButtonGroup/RadioButtonGroup.tsx +1 -1
  806. package/src/ui-kit/SearchBar/SearchBarInner.tsx +1 -1
  807. package/src/ui-kit/SelectCustom/SelectCustom.fixture.tsx +15 -0
  808. package/src/ui-kit/SelectCustom/SelectCustom.tsx +91 -0
  809. package/cosmos-static/icons/StateMortgageIcon.svg +0 -1
  810. package/dist/components/Calculator/MortgageCalculatorForm.d.ts +0 -5
  811. package/dist/components/Calculator/MortgageCalculatorForm.js +0 -34
  812. package/dist/components/Calculator/MortgageCalculatorForm.js.map +0 -1
  813. package/dist/components/Navigation/Navigation.d.ts +0 -5
  814. package/dist/components/Navigation/Navigation.js +0 -17
  815. package/dist/components/Navigation/Navigation.js.map +0 -1
  816. package/dist/components/Navigation/NavigationContent.d.ts +0 -10
  817. package/dist/components/Navigation/NavigationContent.js.map +0 -1
  818. package/dist/components/Navigation/NavigationItem.d.ts +0 -4
  819. package/dist/components/Navigation/NavigationItem.js +0 -6
  820. package/dist/components/Navigation/NavigationItem.js.map +0 -1
  821. package/dist/hooks/useScript.d.ts +0 -6
  822. package/dist/hooks/useScript.js +0 -75
  823. package/dist/hooks/useScript.js.map +0 -1
  824. package/lib/components/Calculator/MortgageCalculatorForm.d.ts +0 -5
  825. package/lib/components/Calculator/MortgageCalculatorForm.js +0 -32
  826. package/lib/components/Calculator/MortgageCalculatorForm.js.map +0 -1
  827. package/lib/components/Navigation/Navigation.d.ts +0 -5
  828. package/lib/components/Navigation/Navigation.js +0 -15
  829. package/lib/components/Navigation/Navigation.js.map +0 -1
  830. package/lib/components/Navigation/NavigationContent.d.ts +0 -10
  831. package/lib/components/Navigation/NavigationContent.js +0 -2
  832. package/lib/components/Navigation/NavigationContent.js.map +0 -1
  833. package/lib/components/Navigation/NavigationItem.d.ts +0 -4
  834. package/lib/components/Navigation/NavigationItem.js +0 -4
  835. package/lib/components/Navigation/NavigationItem.js.map +0 -1
  836. package/lib/hooks/useScript.d.ts +0 -6
  837. package/lib/hooks/useScript.js +0 -72
  838. package/lib/hooks/useScript.js.map +0 -1
  839. package/mobile/dist/components/Calculator/MortgageCalculatorForm.d.ts +0 -5
  840. package/mobile/dist/components/Calculator/MortgageCalculatorForm.js +0 -34
  841. package/mobile/dist/components/Calculator/MortgageCalculatorForm.js.map +0 -1
  842. package/mobile/dist/components/Navigation/Navigation.d.ts +0 -5
  843. package/mobile/dist/components/Navigation/Navigation.js +0 -17
  844. package/mobile/dist/components/Navigation/Navigation.js.map +0 -1
  845. package/mobile/dist/components/Navigation/NavigationContent.d.ts +0 -10
  846. package/mobile/dist/components/Navigation/NavigationContent.js.map +0 -1
  847. package/mobile/dist/components/Navigation/NavigationItem.d.ts +0 -4
  848. package/mobile/dist/components/Navigation/NavigationItem.js +0 -6
  849. package/mobile/dist/components/Navigation/NavigationItem.js.map +0 -1
  850. package/mobile/dist/hooks/useScript.d.ts +0 -6
  851. package/mobile/dist/hooks/useScript.js +0 -75
  852. package/mobile/dist/hooks/useScript.js.map +0 -1
  853. package/mobile/lib/components/Calculator/MortgageCalculatorForm.d.ts +0 -5
  854. package/mobile/lib/components/Calculator/MortgageCalculatorForm.js +0 -32
  855. package/mobile/lib/components/Calculator/MortgageCalculatorForm.js.map +0 -1
  856. package/mobile/lib/components/Navigation/Navigation.d.ts +0 -5
  857. package/mobile/lib/components/Navigation/Navigation.js +0 -15
  858. package/mobile/lib/components/Navigation/Navigation.js.map +0 -1
  859. package/mobile/lib/components/Navigation/NavigationContent.d.ts +0 -10
  860. package/mobile/lib/components/Navigation/NavigationContent.js +0 -2
  861. package/mobile/lib/components/Navigation/NavigationContent.js.map +0 -1
  862. package/mobile/lib/components/Navigation/NavigationItem.d.ts +0 -4
  863. package/mobile/lib/components/Navigation/NavigationItem.js +0 -4
  864. package/mobile/lib/components/Navigation/NavigationItem.js.map +0 -1
  865. package/mobile/lib/hooks/useScript.d.ts +0 -6
  866. package/mobile/lib/hooks/useScript.js +0 -72
  867. package/mobile/lib/hooks/useScript.js.map +0 -1
  868. package/mobile/src/components/Calculator/MortgageCalculatorForm.tsx +0 -75
  869. package/mobile/src/components/Navigation/Navigation.tsx +0 -44
  870. package/mobile/src/components/Navigation/NavigationContent.ts +0 -11
  871. package/mobile/src/components/Navigation/NavigationItem.tsx +0 -17
  872. package/mobile/src/hooks/useScript.ts +0 -97
  873. package/mobile/src/icons/StateMortgageIcon.svg +0 -1
  874. package/src/components/Calculator/MortgageCalculatorForm.tsx +0 -75
  875. package/src/components/Navigation/Navigation.fixture.tsx +0 -30
  876. package/src/components/Navigation/Navigation.tsx +0 -44
  877. package/src/components/Navigation/NavigationContent.ts +0 -11
  878. package/src/components/Navigation/NavigationItem.tsx +0 -17
  879. package/src/hooks/useScript.ts +0 -97
  880. package/src/icons/StateMortgageIcon.svg +0 -1
@@ -1,72 +0,0 @@
1
- import { useEffect, useState } from '@redneckz/uni-jsx/lib/hooks';
2
- const cachedScriptStatuses = {};
3
- function getScriptNode(src) {
4
- const node = document.querySelector(`script[src="${src}"]`);
5
- const status = node?.getAttribute('data-status');
6
- return {
7
- node,
8
- status,
9
- };
10
- }
11
- function getScriptStatus(type) {
12
- return type === 'load' ? 'ready' : 'error';
13
- }
14
- function getInitialValueStatus(src, options) {
15
- if (!src || options?.shouldPreventLoad) {
16
- return 'idle';
17
- }
18
- if (typeof window === 'undefined') {
19
- return 'loading';
20
- }
21
- return cachedScriptStatuses[src] ?? 'loading';
22
- }
23
- export function useScript(src, options) {
24
- const [status, setStatus] = useState(getInitialValueStatus(src, options));
25
- // eslint-disable-next-line complexity
26
- useEffect(() => {
27
- if (!src || options?.shouldPreventLoad) {
28
- return undefined;
29
- }
30
- const cachedScriptStatus = cachedScriptStatuses[src];
31
- if (cachedScriptStatus === 'ready' || cachedScriptStatus === 'error') {
32
- setStatus(cachedScriptStatus);
33
- return undefined;
34
- }
35
- const script = getScriptNode(src);
36
- let scriptNode = script.node;
37
- if (!scriptNode) {
38
- scriptNode = document.createElement('script');
39
- scriptNode.src = src;
40
- scriptNode.async = true;
41
- scriptNode.setAttribute('data-status', 'loading');
42
- document.body.appendChild(scriptNode);
43
- const setAttributeFromEvent = (event) => {
44
- const scriptStatus = getScriptStatus(event.type);
45
- scriptNode?.setAttribute('data-status', scriptStatus);
46
- };
47
- scriptNode.addEventListener('load', setAttributeFromEvent);
48
- scriptNode.addEventListener('error', setAttributeFromEvent);
49
- }
50
- else {
51
- setStatus(script.status ?? cachedScriptStatus ?? 'loading');
52
- }
53
- const setStateFromEvent = (event) => {
54
- const newStatus = getScriptStatus(event.type);
55
- setStatus(newStatus);
56
- cachedScriptStatuses[src] = newStatus;
57
- };
58
- scriptNode.addEventListener('load', setStateFromEvent);
59
- scriptNode.addEventListener('error', setStateFromEvent);
60
- return () => {
61
- if (scriptNode) {
62
- scriptNode.removeEventListener('load', setStateFromEvent);
63
- scriptNode.removeEventListener('error', setStateFromEvent);
64
- }
65
- if (scriptNode && options?.removeOnUnmount) {
66
- scriptNode.remove();
67
- }
68
- };
69
- }, [src, options?.shouldPreventLoad, options?.removeOnUnmount]);
70
- return status;
71
- }
72
- //# sourceMappingURL=useScript.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useScript.js","sourceRoot":"","sources":["../../src/hooks/useScript.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAQlE,MAAM,oBAAoB,GAA6C,EAAE,CAAC;AAE1E,SAAS,aAAa,CAAC,GAAW;IAChC,MAAM,IAAI,GAA6B,QAAQ,CAAC,aAAa,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;IACtF,MAAM,MAAM,GAAG,IAAI,EAAE,YAAY,CAAC,aAAa,CAA6B,CAAC;IAE7E,OAAO;QACL,IAAI;QACJ,MAAM;KACP,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,IAAI;IAC3B,OAAO,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;AAC7C,CAAC;AAED,SAAS,qBAAqB,CAAC,GAAkB,EAAE,OAA0B;IAC3E,IAAI,CAAC,GAAG,IAAI,OAAO,EAAE,iBAAiB,EAAE;QACtC,OAAO,MAAM,CAAC;KACf;IAED,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;QACjC,OAAO,SAAS,CAAC;KAClB;IAED,OAAO,oBAAoB,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,GAAkB,EAAE,OAA0B;IACtE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAe,qBAAqB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;IAExF,sCAAsC;IACtC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,GAAG,IAAI,OAAO,EAAE,iBAAiB,EAAE;YACtC,OAAO,SAAS,CAAC;SAClB;QAED,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;QACrD,IAAI,kBAAkB,KAAK,OAAO,IAAI,kBAAkB,KAAK,OAAO,EAAE;YACpE,SAAS,CAAC,kBAAkB,CAAC,CAAC;YAE9B,OAAO,SAAS,CAAC;SAClB;QAED,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;QAE7B,IAAI,CAAC,UAAU,EAAE;YACf,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC9C,UAAU,CAAC,GAAG,GAAG,GAAG,CAAC;YACrB,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC;YACxB,UAAU,CAAC,YAAY,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YAClD,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YAEtC,MAAM,qBAAqB,GAAG,CAAC,KAAY,EAAE,EAAE;gBAC7C,MAAM,YAAY,GAAiB,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAE/D,UAAU,EAAE,YAAY,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;YACxD,CAAC,CAAC;YAEF,UAAU,CAAC,gBAAgB,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;YAC3D,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;SAC7D;aAAM;YACL,SAAS,CAAC,MAAM,CAAC,MAAM,IAAI,kBAAkB,IAAI,SAAS,CAAC,CAAC;SAC7D;QAED,MAAM,iBAAiB,GAAG,CAAC,KAAY,EAAE,EAAE;YACzC,MAAM,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC9C,SAAS,CAAC,SAAS,CAAC,CAAC;YACrB,oBAAoB,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;QACxC,CAAC,CAAC;QAEF,UAAU,CAAC,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;QACvD,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;QAExD,OAAO,GAAG,EAAE;YACV,IAAI,UAAU,EAAE;gBACd,UAAU,CAAC,mBAAmB,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;gBAC1D,UAAU,CAAC,mBAAmB,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;aAC5D;YAED,IAAI,UAAU,IAAI,OAAO,EAAE,eAAe,EAAE;gBAC1C,UAAU,CAAC,MAAM,EAAE,CAAC;aACrB;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC;IAEhE,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,75 +0,0 @@
1
- // TEMP
2
- import { JSX } from '@redneckz/uni-jsx';
3
- import { useState } from '@redneckz/uni-jsx/lib/hooks';
4
- import type { UniBlockProps } from '../../types';
5
- import { Checkbox } from '../../ui-kit/Checkbox/Checkbox';
6
- import { CommonCalculatorProps, MortgageCalculatorParams } from './CalculatorContent';
7
- import { CalculatorValueBlock } from './CalculatorValueBlock';
8
- import { DEFAULT_MAX_MONTHS, DEFAULT_MIN_MONTHS } from './constants';
9
- import { getCreditRate } from './getCreditRate';
10
- import { Rate } from './Rate';
11
- import { renderButtonSection } from './renderButtonSection';
12
- import { renderInitialFeeInput } from './renderInitialFeeInput';
13
- import { renderMonthsInput } from './renderMonthsInput';
14
- import { renderProposalMortgage } from './renderProposalMortgage';
15
- import { renderRealEstateValue } from './renderRealEstateValue';
16
-
17
- export interface MortgageCalculatorProp
18
- extends MortgageCalculatorParams,
19
- CommonCalculatorProps,
20
- UniBlockProps {}
21
-
22
- export const MortgageCalculatorForm = JSX<MortgageCalculatorProp>(
23
- ({ context, className = '', buttons }) => {
24
- const [moneyValue, setMoneyValue] = useState(1000000);
25
- const [monthsValue, setMonthsValue] = useState(12);
26
- const [isInsurance, toggleIsInsurance] = useState(false);
27
- const [isFullInsurance, toggleIsFullInsurance] = useState(false);
28
-
29
- const calculatorParams = {}; // getCalculatorParams(context, { isAnnuity: isInsurance });
30
-
31
- const minMonths = /*calculatorParams?.minMonths ||*/ DEFAULT_MIN_MONTHS;
32
- const maxMonths = /* calculatorParams?.maxMonths || */ DEFAULT_MAX_MONTHS;
33
-
34
- const rate = getCreditRate({ calculatorParams, isInsurance: isInsurance });
35
- const proposalMortgageValue = { credit: 3892000, period: 15, taxRefund: 650000 }; // TODO: hardcode
36
-
37
- return (
38
- <section className={className}>
39
- <div className="w-[468px]">
40
- {renderRealEstateValue('Стоимость недвижимости, ₽', { moneyValue }, setMoneyValue)}
41
- {renderInitialFeeInput(
42
- 'Первоначальный взнос, ₽',
43
- {
44
- moneyValue,
45
- },
46
- setMoneyValue,
47
- )}
48
- {renderMonthsInput(
49
- 'Срок ипотеки, месяцев',
50
- {
51
- minMonths,
52
- maxMonths,
53
- monthsValue,
54
- },
55
- setMonthsValue,
56
- )}
57
- <div className="mt-7">
58
- <Checkbox text="Страхование жизни" checked={isInsurance} onChange={toggleIsInsurance} />
59
- <Checkbox
60
- className="mt-4"
61
- text="Страхование жизни, здоровья и временной утраты трудоспособности"
62
- checked={isFullInsurance}
63
- onChange={toggleIsFullInsurance}
64
- />
65
- </div>
66
- </div>
67
- <Rate rate={rate} rateBlockClassName="tracking-[-25px]" unit="%" />
68
- <div>
69
- <div className="w-[351px]">{renderProposalMortgage(proposalMortgageValue)}</div>
70
- {renderButtonSection(context, buttons)}
71
- </div>
72
- </section>
73
- );
74
- },
75
- );
@@ -1,44 +0,0 @@
1
- import { JSX } from '@redneckz/uni-jsx';
2
- import { useLink } from '../../hooks/useLink';
3
- import { BlockWrapper } from '../../ui-kit/BlockWrapper';
4
- import { findActiveSubItem } from '../../services/sitemap/findActiveSubItem';
5
- import type { UniBlockProps } from '../../types';
6
- import type { NavigationContent } from './NavigationContent';
7
- import { NavigationItem } from './NavigationItem';
8
-
9
- export interface NavigationProps extends NavigationContent, UniBlockProps {}
10
-
11
- export const Navigation = JSX<NavigationProps>(
12
- ({ className, context, title, buttons, ...rest }) => {
13
- const router = context.useRouter();
14
- const { handlerDecorator } = context;
15
-
16
- const activeButton = findActiveSubItem(router)(buttons);
17
-
18
- return (
19
- <BlockWrapper
20
- context={context}
21
- className={`font-sans text-primary-text flex items-center justify-between ${
22
- className || ''
23
- }`}
24
- {...rest}
25
- >
26
- <h2 className="text-xl font-medium m-0">{title}</h2>
27
- {buttons?.length ? (
28
- <div className="flex rounded-md overflow-hidden bg-white">
29
- {buttons
30
- .filter(({ text }) => text)
31
- .map((button, i) => (
32
- <NavigationItem
33
- key={String(i)}
34
- className="first:rounded-tl-md first:rounded-bl-md last:rounded-tr-md last:rounded-br-md"
35
- isActive={button === activeButton}
36
- {...useLink({ router, handlerDecorator }, button)}
37
- />
38
- ))}
39
- </div>
40
- ) : null}
41
- </BlockWrapper>
42
- );
43
- },
44
- );
@@ -1,11 +0,0 @@
1
- import type { ButtonProps } from '../../ui-kit/Button/ButtonProps';
2
-
3
- /**
4
- * @title Навигация
5
- */
6
- export interface NavigationContent {
7
- /** @title Заголовок */
8
- title?: string;
9
- /** @title Список ссылок */
10
- buttons?: ButtonProps[];
11
- }
@@ -1,17 +0,0 @@
1
- import { JSX } from '@redneckz/uni-jsx';
2
- import type { ButtonProps } from '../../ui-kit/Button/ButtonProps';
3
-
4
- export const NavigationItem = JSX<ButtonProps & { isActive: boolean }>(
5
- ({ className, text, onClick, href, target, isActive }) => (
6
- <a
7
- className={`bg-inherit no-underline px-4 py-2.5 cursor-pointer rounded text-s border border-solid hover:text-primary-main ${
8
- className || ''
9
- } ${isActive ? 'border-primary-main text-primary-main' : 'border-white text-secondary-text'}`}
10
- onClick={onClick}
11
- href={href}
12
- target={target}
13
- >
14
- {text}
15
- </a>
16
- ),
17
- );
@@ -1,97 +0,0 @@
1
- import { useEffect, useState } from '@redneckz/uni-jsx/lib/hooks';
2
-
3
- export type ScriptStatus = 'idle' | 'loading' | 'ready' | 'error';
4
- export interface UseScriptOptions {
5
- shouldPreventLoad?: boolean;
6
- removeOnUnmount?: boolean;
7
- }
8
-
9
- const cachedScriptStatuses: Record<string, ScriptStatus | undefined> = {};
10
-
11
- function getScriptNode(src: string) {
12
- const node: HTMLScriptElement | null = document.querySelector(`script[src="${src}"]`);
13
- const status = node?.getAttribute('data-status') as ScriptStatus | undefined;
14
-
15
- return {
16
- node,
17
- status,
18
- };
19
- }
20
-
21
- function getScriptStatus(type) {
22
- return type === 'load' ? 'ready' : 'error';
23
- }
24
-
25
- function getInitialValueStatus(src: string | null, options?: UseScriptOptions) {
26
- if (!src || options?.shouldPreventLoad) {
27
- return 'idle';
28
- }
29
-
30
- if (typeof window === 'undefined') {
31
- return 'loading';
32
- }
33
-
34
- return cachedScriptStatuses[src] ?? 'loading';
35
- }
36
-
37
- export function useScript(src: string | null, options?: UseScriptOptions): ScriptStatus {
38
- const [status, setStatus] = useState<ScriptStatus>(getInitialValueStatus(src, options));
39
-
40
- // eslint-disable-next-line complexity
41
- useEffect(() => {
42
- if (!src || options?.shouldPreventLoad) {
43
- return undefined;
44
- }
45
-
46
- const cachedScriptStatus = cachedScriptStatuses[src];
47
- if (cachedScriptStatus === 'ready' || cachedScriptStatus === 'error') {
48
- setStatus(cachedScriptStatus);
49
-
50
- return undefined;
51
- }
52
-
53
- const script = getScriptNode(src);
54
- let scriptNode = script.node;
55
-
56
- if (!scriptNode) {
57
- scriptNode = document.createElement('script');
58
- scriptNode.src = src;
59
- scriptNode.async = true;
60
- scriptNode.setAttribute('data-status', 'loading');
61
- document.body.appendChild(scriptNode);
62
-
63
- const setAttributeFromEvent = (event: Event) => {
64
- const scriptStatus: ScriptStatus = getScriptStatus(event.type);
65
-
66
- scriptNode?.setAttribute('data-status', scriptStatus);
67
- };
68
-
69
- scriptNode.addEventListener('load', setAttributeFromEvent);
70
- scriptNode.addEventListener('error', setAttributeFromEvent);
71
- } else {
72
- setStatus(script.status ?? cachedScriptStatus ?? 'loading');
73
- }
74
-
75
- const setStateFromEvent = (event: Event) => {
76
- const newStatus = getScriptStatus(event.type);
77
- setStatus(newStatus);
78
- cachedScriptStatuses[src] = newStatus;
79
- };
80
-
81
- scriptNode.addEventListener('load', setStateFromEvent);
82
- scriptNode.addEventListener('error', setStateFromEvent);
83
-
84
- return () => {
85
- if (scriptNode) {
86
- scriptNode.removeEventListener('load', setStateFromEvent);
87
- scriptNode.removeEventListener('error', setStateFromEvent);
88
- }
89
-
90
- if (scriptNode && options?.removeOnUnmount) {
91
- scriptNode.remove();
92
- }
93
- };
94
- }, [src, options?.shouldPreventLoad, options?.removeOnUnmount]);
95
-
96
- return status;
97
- }
@@ -1 +0,0 @@
1
- <svg width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 22h22M19.781 22.01v-4.46" stroke="#000000" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/><path d="M19.802 10.89c-1.22 0-2.2.98-2.2 2.2v2.27c0 1.22.98 2.2 2.2 2.2 1.22 0 2.2-.98 2.2-2.2v-2.27c0-1.22-.98-2.2-2.2-2.2Z" stroke="currentColor" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/><path d="M2.102 6.02c0-2.01 1-3.02 2.99-3.02h6.23c1.99 0 2.98 1.01 2.98 3.02V22M2.102 22V10.01" stroke="#000000" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/><path d="M5.8 8.25h4.95M5.8 12h4.95" stroke="currentColor" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/><path d="M8.25 22v-3.75" stroke="#000000" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/></svg>
@@ -1,75 +0,0 @@
1
- // TEMP
2
- import { JSX } from '@redneckz/uni-jsx';
3
- import { useState } from '@redneckz/uni-jsx/lib/hooks';
4
- import type { UniBlockProps } from '../../types';
5
- import { Checkbox } from '../../ui-kit/Checkbox/Checkbox';
6
- import { CommonCalculatorProps, MortgageCalculatorParams } from './CalculatorContent';
7
- import { CalculatorValueBlock } from './CalculatorValueBlock';
8
- import { DEFAULT_MAX_MONTHS, DEFAULT_MIN_MONTHS } from './constants';
9
- import { getCreditRate } from './getCreditRate';
10
- import { Rate } from './Rate';
11
- import { renderButtonSection } from './renderButtonSection';
12
- import { renderInitialFeeInput } from './renderInitialFeeInput';
13
- import { renderMonthsInput } from './renderMonthsInput';
14
- import { renderProposalMortgage } from './renderProposalMortgage';
15
- import { renderRealEstateValue } from './renderRealEstateValue';
16
-
17
- export interface MortgageCalculatorProp
18
- extends MortgageCalculatorParams,
19
- CommonCalculatorProps,
20
- UniBlockProps {}
21
-
22
- export const MortgageCalculatorForm = JSX<MortgageCalculatorProp>(
23
- ({ context, className = '', buttons }) => {
24
- const [moneyValue, setMoneyValue] = useState(1000000);
25
- const [monthsValue, setMonthsValue] = useState(12);
26
- const [isInsurance, toggleIsInsurance] = useState(false);
27
- const [isFullInsurance, toggleIsFullInsurance] = useState(false);
28
-
29
- const calculatorParams = {}; // getCalculatorParams(context, { isAnnuity: isInsurance });
30
-
31
- const minMonths = /*calculatorParams?.minMonths ||*/ DEFAULT_MIN_MONTHS;
32
- const maxMonths = /* calculatorParams?.maxMonths || */ DEFAULT_MAX_MONTHS;
33
-
34
- const rate = getCreditRate({ calculatorParams, isInsurance: isInsurance });
35
- const proposalMortgageValue = { credit: 3892000, period: 15, taxRefund: 650000 }; // TODO: hardcode
36
-
37
- return (
38
- <section className={className}>
39
- <div className="w-[468px]">
40
- {renderRealEstateValue('Стоимость недвижимости, ₽', { moneyValue }, setMoneyValue)}
41
- {renderInitialFeeInput(
42
- 'Первоначальный взнос, ₽',
43
- {
44
- moneyValue,
45
- },
46
- setMoneyValue,
47
- )}
48
- {renderMonthsInput(
49
- 'Срок ипотеки, месяцев',
50
- {
51
- minMonths,
52
- maxMonths,
53
- monthsValue,
54
- },
55
- setMonthsValue,
56
- )}
57
- <div className="mt-7">
58
- <Checkbox text="Страхование жизни" checked={isInsurance} onChange={toggleIsInsurance} />
59
- <Checkbox
60
- className="mt-4"
61
- text="Страхование жизни, здоровья и временной утраты трудоспособности"
62
- checked={isFullInsurance}
63
- onChange={toggleIsFullInsurance}
64
- />
65
- </div>
66
- </div>
67
- <Rate rate={rate} rateBlockClassName="tracking-[-25px]" unit="%" />
68
- <div>
69
- <div className="w-[351px]">{renderProposalMortgage(proposalMortgageValue)}</div>
70
- {renderButtonSection(context, buttons)}
71
- </div>
72
- </section>
73
- );
74
- },
75
- );
@@ -1,30 +0,0 @@
1
- import { context } from '../../react/setup-fixture';
2
-
3
- import { Navigation } from './Navigation';
4
-
5
- export default {
6
- default: (
7
- <Navigation
8
- title="Потребительский кредит наличными"
9
- buttons={[
10
- {
11
- href: '/credits',
12
- text: 'Оформить',
13
- },
14
- {
15
- href: '/tariffs',
16
- text: 'Тарифы',
17
- },
18
- {
19
- href: '/harvest',
20
- text: 'Урожай',
21
- },
22
- {
23
- href: '/faq',
24
- text: 'Частые вопросы',
25
- },
26
- ]}
27
- context={context}
28
- />
29
- ),
30
- };
@@ -1,44 +0,0 @@
1
- import { JSX } from '@redneckz/uni-jsx';
2
- import { useLink } from '../../hooks/useLink';
3
- import { BlockWrapper } from '../../ui-kit/BlockWrapper';
4
- import { findActiveSubItem } from '../../services/sitemap/findActiveSubItem';
5
- import type { UniBlockProps } from '../../types';
6
- import type { NavigationContent } from './NavigationContent';
7
- import { NavigationItem } from './NavigationItem';
8
-
9
- export interface NavigationProps extends NavigationContent, UniBlockProps {}
10
-
11
- export const Navigation = JSX<NavigationProps>(
12
- ({ className, context, title, buttons, ...rest }) => {
13
- const router = context.useRouter();
14
- const { handlerDecorator } = context;
15
-
16
- const activeButton = findActiveSubItem(router)(buttons);
17
-
18
- return (
19
- <BlockWrapper
20
- context={context}
21
- className={`font-sans text-primary-text flex items-center justify-between ${
22
- className || ''
23
- }`}
24
- {...rest}
25
- >
26
- <h2 className="text-xl font-medium m-0">{title}</h2>
27
- {buttons?.length ? (
28
- <div className="flex rounded-md overflow-hidden bg-white">
29
- {buttons
30
- .filter(({ text }) => text)
31
- .map((button, i) => (
32
- <NavigationItem
33
- key={String(i)}
34
- className="first:rounded-tl-md first:rounded-bl-md last:rounded-tr-md last:rounded-br-md"
35
- isActive={button === activeButton}
36
- {...useLink({ router, handlerDecorator }, button)}
37
- />
38
- ))}
39
- </div>
40
- ) : null}
41
- </BlockWrapper>
42
- );
43
- },
44
- );
@@ -1,11 +0,0 @@
1
- import type { ButtonProps } from '../../ui-kit/Button/ButtonProps';
2
-
3
- /**
4
- * @title Навигация
5
- */
6
- export interface NavigationContent {
7
- /** @title Заголовок */
8
- title?: string;
9
- /** @title Список ссылок */
10
- buttons?: ButtonProps[];
11
- }
@@ -1,17 +0,0 @@
1
- import { JSX } from '@redneckz/uni-jsx';
2
- import type { ButtonProps } from '../../ui-kit/Button/ButtonProps';
3
-
4
- export const NavigationItem = JSX<ButtonProps & { isActive: boolean }>(
5
- ({ className, text, onClick, href, target, isActive }) => (
6
- <a
7
- className={`bg-inherit no-underline px-4 py-2.5 cursor-pointer rounded text-s border border-solid hover:text-primary-main ${
8
- className || ''
9
- } ${isActive ? 'border-primary-main text-primary-main' : 'border-white text-secondary-text'}`}
10
- onClick={onClick}
11
- href={href}
12
- target={target}
13
- >
14
- {text}
15
- </a>
16
- ),
17
- );
@@ -1,97 +0,0 @@
1
- import { useEffect, useState } from '@redneckz/uni-jsx/lib/hooks';
2
-
3
- export type ScriptStatus = 'idle' | 'loading' | 'ready' | 'error';
4
- export interface UseScriptOptions {
5
- shouldPreventLoad?: boolean;
6
- removeOnUnmount?: boolean;
7
- }
8
-
9
- const cachedScriptStatuses: Record<string, ScriptStatus | undefined> = {};
10
-
11
- function getScriptNode(src: string) {
12
- const node: HTMLScriptElement | null = document.querySelector(`script[src="${src}"]`);
13
- const status = node?.getAttribute('data-status') as ScriptStatus | undefined;
14
-
15
- return {
16
- node,
17
- status,
18
- };
19
- }
20
-
21
- function getScriptStatus(type) {
22
- return type === 'load' ? 'ready' : 'error';
23
- }
24
-
25
- function getInitialValueStatus(src: string | null, options?: UseScriptOptions) {
26
- if (!src || options?.shouldPreventLoad) {
27
- return 'idle';
28
- }
29
-
30
- if (typeof window === 'undefined') {
31
- return 'loading';
32
- }
33
-
34
- return cachedScriptStatuses[src] ?? 'loading';
35
- }
36
-
37
- export function useScript(src: string | null, options?: UseScriptOptions): ScriptStatus {
38
- const [status, setStatus] = useState<ScriptStatus>(getInitialValueStatus(src, options));
39
-
40
- // eslint-disable-next-line complexity
41
- useEffect(() => {
42
- if (!src || options?.shouldPreventLoad) {
43
- return undefined;
44
- }
45
-
46
- const cachedScriptStatus = cachedScriptStatuses[src];
47
- if (cachedScriptStatus === 'ready' || cachedScriptStatus === 'error') {
48
- setStatus(cachedScriptStatus);
49
-
50
- return undefined;
51
- }
52
-
53
- const script = getScriptNode(src);
54
- let scriptNode = script.node;
55
-
56
- if (!scriptNode) {
57
- scriptNode = document.createElement('script');
58
- scriptNode.src = src;
59
- scriptNode.async = true;
60
- scriptNode.setAttribute('data-status', 'loading');
61
- document.body.appendChild(scriptNode);
62
-
63
- const setAttributeFromEvent = (event: Event) => {
64
- const scriptStatus: ScriptStatus = getScriptStatus(event.type);
65
-
66
- scriptNode?.setAttribute('data-status', scriptStatus);
67
- };
68
-
69
- scriptNode.addEventListener('load', setAttributeFromEvent);
70
- scriptNode.addEventListener('error', setAttributeFromEvent);
71
- } else {
72
- setStatus(script.status ?? cachedScriptStatus ?? 'loading');
73
- }
74
-
75
- const setStateFromEvent = (event: Event) => {
76
- const newStatus = getScriptStatus(event.type);
77
- setStatus(newStatus);
78
- cachedScriptStatuses[src] = newStatus;
79
- };
80
-
81
- scriptNode.addEventListener('load', setStateFromEvent);
82
- scriptNode.addEventListener('error', setStateFromEvent);
83
-
84
- return () => {
85
- if (scriptNode) {
86
- scriptNode.removeEventListener('load', setStateFromEvent);
87
- scriptNode.removeEventListener('error', setStateFromEvent);
88
- }
89
-
90
- if (scriptNode && options?.removeOnUnmount) {
91
- scriptNode.remove();
92
- }
93
- };
94
- }, [src, options?.shouldPreventLoad, options?.removeOnUnmount]);
95
-
96
- return status;
97
- }
@@ -1 +0,0 @@
1
- <svg width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 22h22M19.781 22.01v-4.46" stroke="#000000" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/><path d="M19.802 10.89c-1.22 0-2.2.98-2.2 2.2v2.27c0 1.22.98 2.2 2.2 2.2 1.22 0 2.2-.98 2.2-2.2v-2.27c0-1.22-.98-2.2-2.2-2.2Z" stroke="currentColor" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/><path d="M2.102 6.02c0-2.01 1-3.02 2.99-3.02h6.23c1.99 0 2.98 1.01 2.98 3.02V22M2.102 22V10.01" stroke="#000000" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/><path d="M5.8 8.25h4.95M5.8 12h4.95" stroke="currentColor" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/><path d="M8.25 22v-3.75" stroke="#000000" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/></svg>