@sima-land/moleculas 16.0.0-alpha.2 → 16.0.0-alpha.21

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 (351) hide show
  1. package/README.md +23 -0
  2. package/common/components/badge/badge.d.ts +8 -0
  3. package/common/components/badge/badge.js +55 -0
  4. package/common/components/badge/badge.js.map +1 -0
  5. package/common/components/badge/badge.m.scss +81 -0
  6. package/common/components/badge/index.d.ts +2 -19
  7. package/common/components/badge/index.js +3 -80
  8. package/common/components/badge/index.js.map +1 -0
  9. package/common/components/badge/types.d.ts +26 -0
  10. package/common/components/{intractive-image → badge}/types.js +1 -0
  11. package/common/components/badge/types.js.map +1 -0
  12. package/common/components/badge-list/badge-list.d.ts +29 -0
  13. package/common/components/badge-list/badge-list.js +38 -0
  14. package/common/components/badge-list/badge-list.js.map +1 -0
  15. package/common/components/badge-list/index.d.ts +1 -29
  16. package/common/components/badge-list/index.js +3 -56
  17. package/common/components/badge-list/index.js.map +1 -0
  18. package/common/components/breadcrumbs/breadcrumbs.d.ts +46 -0
  19. package/common/components/breadcrumbs/breadcrumbs.js +83 -0
  20. package/common/components/breadcrumbs/breadcrumbs.js.map +1 -0
  21. package/common/components/breadcrumbs/breadcrumbs.m.scss +113 -0
  22. package/common/components/breadcrumbs/index.d.ts +2 -0
  23. package/common/components/breadcrumbs/index.js +7 -0
  24. package/common/components/breadcrumbs/index.js.map +1 -0
  25. package/common/components/breadcrumbs/types.d.ts +8 -0
  26. package/common/{types.js → components/breadcrumbs/types.js} +1 -0
  27. package/common/components/breadcrumbs/types.js.map +1 -0
  28. package/common/components/img-stub/img-stub.d.ts +14 -0
  29. package/common/components/img-stub/img-stub.js +21 -0
  30. package/common/components/img-stub/img-stub.js.map +1 -0
  31. package/common/components/img-stub/img-stub.m.scss +36 -0
  32. package/common/components/img-stub/index.d.ts +1 -0
  33. package/common/components/img-stub/index.js +6 -0
  34. package/common/components/img-stub/index.js.map +1 -0
  35. package/common/components/{intractive-image → interactive-image}/index.js +1 -0
  36. package/common/components/interactive-image/index.js.map +1 -0
  37. package/common/components/interactive-image/interactive-image.d.ts +15 -0
  38. package/common/components/interactive-image/interactive-image.js +56 -0
  39. package/common/components/interactive-image/interactive-image.js.map +1 -0
  40. package/common/components/{intractive-image → interactive-image}/types.d.ts +4 -4
  41. package/common/components/interactive-image/types.js +3 -0
  42. package/common/components/interactive-image/types.js.map +1 -0
  43. package/common/components/media-gallery/index.d.ts +2 -0
  44. package/common/components/media-gallery/index.js +7 -0
  45. package/common/components/media-gallery/index.js.map +1 -0
  46. package/common/components/media-gallery/media-gallery.d.ts +16 -0
  47. package/common/components/media-gallery/media-gallery.js +90 -0
  48. package/common/components/media-gallery/media-gallery.js.map +1 -0
  49. package/common/components/media-gallery/media-gallery.m.scss +35 -0
  50. package/common/components/media-gallery/types.d.ts +12 -0
  51. package/common/components/media-gallery/types.js +3 -0
  52. package/common/components/media-gallery/types.js.map +1 -0
  53. package/common/components/media-gallery/utils.d.ts +38 -0
  54. package/common/components/media-gallery/utils.js +102 -0
  55. package/common/components/media-gallery/utils.js.map +1 -0
  56. package/common/components/media-modal/__mocks__/images/armchair.jpg +0 -0
  57. package/common/components/media-modal/__mocks__/images/cup.jpg +0 -0
  58. package/common/components/media-modal/__mocks__/images/plant.jpg +0 -0
  59. package/common/components/media-modal/__mocks__/images/stump.jpg +0 -0
  60. package/common/components/media-modal/__mocks__/images/table.jpg +0 -0
  61. package/common/components/media-modal/__mocks__/images/vase.jpg +0 -0
  62. package/common/components/media-modal/__mocks__/index.d.ts +3 -0
  63. package/common/components/media-modal/__mocks__/index.js +251 -0
  64. package/common/components/media-modal/__mocks__/index.js.map +1 -0
  65. package/common/components/media-modal/__mocks__/thumbnails/armchair.jpg +0 -0
  66. package/common/components/media-modal/__mocks__/thumbnails/cup.jpg +0 -0
  67. package/common/components/media-modal/__mocks__/thumbnails/plant.jpg +0 -0
  68. package/common/components/media-modal/__mocks__/thumbnails/stump.jpg +0 -0
  69. package/common/components/media-modal/__mocks__/thumbnails/table.jpg +0 -0
  70. package/common/components/media-modal/__mocks__/thumbnails/vase.jpg +0 -0
  71. package/common/components/media-modal/__mocks__/thumbnails/video3404953.jpg +0 -0
  72. package/common/components/media-modal/__mocks__/thumbnails/video3619217.jpg +0 -0
  73. package/common/components/media-modal/__mocks__/thumbnails/video4093038.jpg +0 -0
  74. package/common/components/media-modal/__mocks__/thumbnails/video6907296.jpg +0 -0
  75. package/common/components/media-modal/index.d.ts +11 -0
  76. package/common/components/media-modal/index.js +29 -0
  77. package/common/components/media-modal/index.js.map +1 -0
  78. package/common/components/media-modal/layout.d.ts +36 -0
  79. package/common/components/media-modal/layout.js +81 -0
  80. package/common/components/media-modal/layout.js.map +1 -0
  81. package/common/components/media-modal/layout.m.scss +78 -0
  82. package/common/components/media-modal/parts/all-round-view.d.ts +7 -0
  83. package/common/components/media-modal/parts/all-round-view.js +42 -0
  84. package/common/components/media-modal/parts/all-round-view.js.map +1 -0
  85. package/common/components/media-modal/parts/all-round-view.m.scss +30 -0
  86. package/common/components/media-modal/parts/index.d.ts +36 -0
  87. package/common/components/media-modal/parts/index.js +65 -0
  88. package/common/components/media-modal/parts/index.js.map +1 -0
  89. package/common/components/media-modal/parts/media-area.d.ts +25 -0
  90. package/common/components/media-modal/parts/media-area.js +61 -0
  91. package/common/components/media-modal/parts/media-area.js.map +1 -0
  92. package/common/components/media-modal/parts/media-area.m.scss +21 -0
  93. package/common/components/media-modal/parts/media-view.d.ts +20 -0
  94. package/common/components/media-modal/parts/media-view.js +46 -0
  95. package/common/components/media-modal/parts/media-view.js.map +1 -0
  96. package/common/components/media-modal/parts/media-view.m.scss +34 -0
  97. package/common/components/media-modal/parts/parts.m.scss +21 -0
  98. package/common/components/media-modal/parts/product-brief.d.ts +20 -0
  99. package/common/components/media-modal/parts/product-brief.js +40 -0
  100. package/common/components/media-modal/parts/product-brief.js.map +1 -0
  101. package/common/components/media-modal/parts/product-brief.m.scss +149 -0
  102. package/common/components/media-modal/parts/review.d.ts +15 -0
  103. package/common/components/media-modal/parts/review.js +32 -0
  104. package/common/components/media-modal/parts/review.js.map +1 -0
  105. package/common/components/media-modal/parts/review.m.scss +86 -0
  106. package/common/components/media-modal/parts/scroll-section.d.ts +11 -0
  107. package/common/components/media-modal/parts/scroll-section.js +20 -0
  108. package/common/components/media-modal/parts/scroll-section.js.map +1 -0
  109. package/common/components/media-modal/parts/scroll-section.m.scss +32 -0
  110. package/common/components/media-modal/parts/thumbnail.d.ts +22 -0
  111. package/common/components/media-modal/parts/thumbnail.js +36 -0
  112. package/common/components/media-modal/parts/thumbnail.js.map +1 -0
  113. package/common/components/media-modal/parts/thumbnail.m.scss +156 -0
  114. package/common/components/media-modal/parts/thumbnails.d.ts +13 -0
  115. package/common/components/media-modal/parts/thumbnails.js +60 -0
  116. package/common/components/media-modal/parts/thumbnails.js.map +1 -0
  117. package/common/components/media-modal/parts/thumbnails.m.scss +16 -0
  118. package/common/components/media-modal/types.d.ts +18 -0
  119. package/common/components/media-modal/types.js +3 -0
  120. package/common/components/media-modal/types.js.map +1 -0
  121. package/common/components/media-modal/utils.d.ts +42 -0
  122. package/common/components/media-modal/utils.js +110 -0
  123. package/common/components/media-modal/utils.js.map +1 -0
  124. package/common/components/modifier/index.d.ts +2 -46
  125. package/common/components/modifier/index.js +4 -99
  126. package/common/components/modifier/index.js.map +1 -0
  127. package/common/components/modifier/modifier.d.ts +13 -0
  128. package/common/components/modifier/modifier.js +74 -0
  129. package/common/components/modifier/modifier.js.map +1 -0
  130. package/common/components/modifier/{modifiers.module.scss → modifier.m.scss} +61 -0
  131. package/common/components/modifier/types.d.ts +35 -0
  132. package/common/components/modifier/types.js +3 -0
  133. package/common/components/modifier/types.js.map +1 -0
  134. package/common/components/pagination-controls/index.d.ts +2 -0
  135. package/common/components/pagination-controls/index.js +9 -0
  136. package/common/components/pagination-controls/index.js.map +1 -0
  137. package/common/components/pagination-controls/pagination-controls.d.ts +30 -0
  138. package/common/components/pagination-controls/pagination-controls.js +72 -0
  139. package/common/components/pagination-controls/pagination-controls.js.map +1 -0
  140. package/common/components/pagination-controls/pagination-controls.m.scss +70 -0
  141. package/common/components/pagination-controls/types.d.ts +20 -0
  142. package/common/components/pagination-controls/types.js +3 -0
  143. package/common/components/pagination-controls/types.js.map +1 -0
  144. package/common/components/product-info/index.d.ts +1 -16
  145. package/common/components/product-info/index.js +5 -41
  146. package/common/components/product-info/index.js.map +1 -0
  147. package/common/components/product-info/parts.d.ts +22 -21
  148. package/common/components/product-info/parts.js +35 -83
  149. package/common/components/product-info/parts.js.map +1 -0
  150. package/common/components/product-info/product-info.d.ts +15 -0
  151. package/common/components/product-info/product-info.js +33 -0
  152. package/common/components/product-info/product-info.js.map +1 -0
  153. package/common/components/product-info/{product-info.module.scss → product-info.m.scss} +9 -0
  154. package/common/components/product-info/types.d.ts +2 -2
  155. package/common/components/product-info/types.js +1 -0
  156. package/common/components/product-info/types.js.map +1 -0
  157. package/common/components/product-info/utils.js +1 -0
  158. package/common/components/product-info/utils.js.map +1 -0
  159. package/common/components/rating-counter/index.d.ts +1 -25
  160. package/common/components/rating-counter/index.js +3 -35
  161. package/common/components/rating-counter/index.js.map +1 -0
  162. package/common/components/rating-counter/rating-counter-util.scss +1 -1
  163. package/common/components/rating-counter/rating-counter.d.ts +35 -0
  164. package/common/components/rating-counter/rating-counter.js +24 -0
  165. package/common/components/rating-counter/rating-counter.js.map +1 -0
  166. package/common/hooks/index.d.ts +19 -0
  167. package/common/hooks/index.js +39 -0
  168. package/common/hooks/index.js.map +1 -0
  169. package/desktop/components/breadcrumbs/breadcrumbs.d.ts +31 -0
  170. package/desktop/components/breadcrumbs/breadcrumbs.js +56 -0
  171. package/desktop/components/breadcrumbs/breadcrumbs.js.map +1 -0
  172. package/desktop/components/breadcrumbs/{breadcrumbs.module.scss → breadcrumbs.m.scss} +36 -1
  173. package/desktop/components/breadcrumbs/index.d.ts +1 -28
  174. package/desktop/components/breadcrumbs/index.js +3 -80
  175. package/desktop/components/breadcrumbs/index.js.map +1 -0
  176. package/desktop/components/gallery-modal/__mocks__/index.js +1 -0
  177. package/desktop/components/gallery-modal/__mocks__/index.js.map +1 -0
  178. package/desktop/components/gallery-modal/components/all-round-view.d.ts +5 -2
  179. package/desktop/components/gallery-modal/components/all-round-view.js +47 -62
  180. package/desktop/components/gallery-modal/components/all-round-view.js.map +1 -0
  181. package/desktop/components/gallery-modal/components/{all-round-view.module.scss → all-round-view.m.scss} +5 -0
  182. package/desktop/components/gallery-modal/components/gallery-modal.d.ts +4 -5
  183. package/desktop/components/gallery-modal/components/gallery-modal.js +16 -66
  184. package/desktop/components/gallery-modal/components/gallery-modal.js.map +1 -0
  185. package/desktop/components/gallery-modal/components/{gallery-modal.module.scss → gallery-modal.m.scss} +5 -3
  186. package/desktop/components/gallery-modal/components/image-overlay.d.ts +3 -3
  187. package/desktop/components/gallery-modal/components/image-overlay.js +4 -17
  188. package/desktop/components/gallery-modal/components/image-overlay.js.map +1 -0
  189. package/desktop/components/gallery-modal/components/{image-overlay.module.scss → image-overlay.m.scss} +1 -0
  190. package/desktop/components/gallery-modal/components/review-info.d.ts +1 -1
  191. package/desktop/components/gallery-modal/components/review-info.js +11 -52
  192. package/desktop/components/gallery-modal/components/review-info.js.map +1 -0
  193. package/desktop/components/gallery-modal/components/thumbnail.d.ts +3 -3
  194. package/desktop/components/gallery-modal/components/thumbnail.js +7 -10
  195. package/desktop/components/gallery-modal/components/thumbnail.js.map +1 -0
  196. package/desktop/components/gallery-modal/index.js +1 -0
  197. package/desktop/components/gallery-modal/index.js.map +1 -0
  198. package/desktop/components/gallery-modal/types.js +1 -0
  199. package/desktop/components/gallery-modal/types.js.map +1 -0
  200. package/desktop/components/gallery-modal/utils.d.ts +5 -3
  201. package/desktop/components/gallery-modal/utils.js +18 -8
  202. package/desktop/components/gallery-modal/utils.js.map +1 -0
  203. package/desktop/components/person-info/index.d.ts +1 -41
  204. package/desktop/components/person-info/index.js +3 -43
  205. package/desktop/components/person-info/index.js.map +1 -0
  206. package/desktop/components/person-info/person-info.d.ts +42 -0
  207. package/desktop/components/person-info/person-info.js +24 -0
  208. package/desktop/components/person-info/person-info.js.map +1 -0
  209. package/desktop/components/person-info/{person-info.module.scss → person-info.m.scss} +1 -1
  210. package/desktop/components/product-card/index.d.ts +2 -26
  211. package/desktop/components/product-card/index.js +7 -103
  212. package/desktop/components/product-card/index.js.map +1 -0
  213. package/desktop/components/product-card/product-card.d.ts +23 -0
  214. package/desktop/components/product-card/product-card.js +94 -0
  215. package/desktop/components/product-card/product-card.js.map +1 -0
  216. package/desktop/components/product-card/types.d.ts +19 -0
  217. package/desktop/components/product-card/types.js +3 -0
  218. package/desktop/components/product-card/types.js.map +1 -0
  219. package/desktop/components/product-carousel/hover-card.d.ts +2 -7
  220. package/desktop/components/product-carousel/hover-card.js +13 -49
  221. package/desktop/components/product-carousel/hover-card.js.map +1 -0
  222. package/desktop/components/product-carousel/{hover-card.module.scss → hover-card.m.scss} +2 -2
  223. package/desktop/components/product-carousel/index.d.ts +2 -31
  224. package/desktop/components/product-carousel/index.js +3 -133
  225. package/desktop/components/product-carousel/index.js.map +1 -0
  226. package/desktop/components/product-carousel/product-carousel.d.ts +7 -0
  227. package/desktop/components/product-carousel/product-carousel.js +95 -0
  228. package/desktop/components/product-carousel/product-carousel.js.map +1 -0
  229. package/desktop/components/product-carousel/{product-carousel.module.scss → product-carousel.m.scss} +1 -1
  230. package/desktop/components/product-carousel/types.d.ts +33 -0
  231. package/desktop/components/product-carousel/types.js +3 -0
  232. package/desktop/components/product-carousel/types.js.map +1 -0
  233. package/desktop/components/product-carousel/utils.d.ts +4 -4
  234. package/desktop/components/product-carousel/utils.js +8 -7
  235. package/desktop/components/product-carousel/utils.js.map +1 -0
  236. package/desktop/components/promotion-card/banner-title.d.ts +2 -3
  237. package/desktop/components/promotion-card/banner-title.js +9 -19
  238. package/desktop/components/promotion-card/banner-title.js.map +1 -0
  239. package/desktop/components/promotion-card/estimate.d.ts +1 -2
  240. package/desktop/components/promotion-card/estimate.js +3 -5
  241. package/desktop/components/promotion-card/estimate.js.map +1 -0
  242. package/desktop/components/promotion-card/index.d.ts +4 -31
  243. package/desktop/components/promotion-card/index.js +10 -83
  244. package/desktop/components/promotion-card/index.js.map +1 -0
  245. package/desktop/components/promotion-card/placeholder.d.ts +4 -2
  246. package/desktop/components/promotion-card/placeholder.js +4 -6
  247. package/desktop/components/promotion-card/placeholder.js.map +1 -0
  248. package/desktop/components/promotion-card/promotion-card.d.ts +32 -0
  249. package/desktop/components/promotion-card/promotion-card.js +39 -0
  250. package/desktop/components/promotion-card/promotion-card.js.map +1 -0
  251. package/desktop/components/promotion-card/{index.module.scss → promotion-card.m.scss} +8 -6
  252. package/desktop/components/promotion-card/types.js +1 -0
  253. package/desktop/components/promotion-card/types.js.map +1 -0
  254. package/mobile/components/action-circles/action-circles.d.ts +22 -0
  255. package/mobile/components/action-circles/action-circles.js +31 -0
  256. package/mobile/components/action-circles/action-circles.js.map +1 -0
  257. package/mobile/components/action-circles/index.d.ts +1 -22
  258. package/mobile/components/action-circles/index.js +3 -29
  259. package/mobile/components/action-circles/index.js.map +1 -0
  260. package/mobile/components/action-list/action-list.d.ts +29 -0
  261. package/mobile/components/action-list/action-list.js +40 -0
  262. package/mobile/components/action-list/action-list.js.map +1 -0
  263. package/mobile/components/action-list/index.d.ts +1 -23
  264. package/mobile/components/action-list/index.js +5 -34
  265. package/mobile/components/action-list/index.js.map +1 -0
  266. package/mobile/components/breadcrumbs/breadcrumbs.d.ts +12 -0
  267. package/mobile/components/breadcrumbs/breadcrumbs.js +17 -0
  268. package/mobile/components/breadcrumbs/breadcrumbs.js.map +1 -0
  269. package/mobile/components/breadcrumbs/index.d.ts +1 -13
  270. package/mobile/components/breadcrumbs/index.js +3 -13
  271. package/mobile/components/breadcrumbs/index.js.map +1 -0
  272. package/mobile/components/person-info/index.d.ts +1 -44
  273. package/mobile/components/person-info/index.js +4 -55
  274. package/mobile/components/person-info/index.js.map +1 -0
  275. package/mobile/components/person-info/person-info.d.ts +46 -0
  276. package/mobile/components/person-info/person-info.js +41 -0
  277. package/mobile/components/person-info/person-info.js.map +1 -0
  278. package/mobile/components/person-info/{person-info.module.scss → person-info.m.scss} +9 -16
  279. package/mobile/components/product-row/index.d.ts +1 -41
  280. package/mobile/components/product-row/index.js +3 -56
  281. package/mobile/components/product-row/index.js.map +1 -0
  282. package/mobile/components/product-row/product-row.d.ts +40 -0
  283. package/mobile/components/product-row/product-row.js +29 -0
  284. package/mobile/components/product-row/product-row.js.map +1 -0
  285. package/mobile/components/product-slider/index.d.ts +1 -17
  286. package/mobile/components/product-slider/index.js +3 -57
  287. package/mobile/components/product-slider/index.js.map +1 -0
  288. package/mobile/components/product-slider/product-slider.d.ts +17 -0
  289. package/mobile/components/product-slider/product-slider.js +37 -0
  290. package/mobile/components/product-slider/product-slider.js.map +1 -0
  291. package/mobile/components/search-bar/index.d.ts +1 -39
  292. package/mobile/components/search-bar/index.js +4 -104
  293. package/mobile/components/search-bar/index.js.map +1 -0
  294. package/mobile/components/search-bar/search-bar.d.ts +39 -0
  295. package/mobile/components/search-bar/search-bar.js +64 -0
  296. package/mobile/components/search-bar/search-bar.js.map +1 -0
  297. package/mobile/components/search-bar/{search-bar.module.scss → search-bar.m.scss} +6 -6
  298. package/mobile/components/select-screen/index.d.ts +1 -20
  299. package/mobile/components/select-screen/index.js +4 -65
  300. package/mobile/components/select-screen/index.js.map +1 -0
  301. package/mobile/components/select-screen/select-screen.d.ts +20 -0
  302. package/mobile/components/select-screen/select-screen.js +31 -0
  303. package/mobile/components/select-screen/select-screen.js.map +1 -0
  304. package/package.json +40 -52
  305. package/common/components/badge/badge.module.scss +0 -40
  306. package/common/components/intractive-image/interactive-image.d.ts +0 -15
  307. package/common/components/intractive-image/interactive-image.js +0 -96
  308. package/common/components/rating-counter/star.svg +0 -5
  309. package/common/constants.d.ts +0 -2
  310. package/common/constants.js +0 -8
  311. package/common/icons/eighteen-plus.svg +0 -5
  312. package/common/types.d.ts +0 -1
  313. package/desktop/components/breadcrumbs/square-arrow-down.svg +0 -8
  314. package/desktop/components/gallery-modal/icons/360.svg +0 -3
  315. package/desktop/components/gallery-modal/icons/pause.svg +0 -3
  316. package/desktop/components/gallery-modal/icons/turn-left.svg +0 -10
  317. package/desktop/components/gallery-modal/icons/turn-right.svg +0 -10
  318. package/desktop/components/modifiers/button/index.d.ts +0 -22
  319. package/desktop/components/modifiers/button/index.js +0 -48
  320. package/desktop/components/modifiers/button/modifier-button.module.scss +0 -85
  321. package/desktop/components/modifiers/group/index.d.ts +0 -15
  322. package/desktop/components/modifiers/group/index.js +0 -70
  323. package/desktop/components/modifiers/group/modifiers-group.module.scss +0 -33
  324. package/desktop/components/modifiers/group/utils.d.ts +0 -20
  325. package/desktop/components/modifiers/group/utils.js +0 -73
  326. package/desktop/components/modifiers/modifiers.scss +0 -8
  327. package/mobile/components/modifiers-list/index.d.ts +0 -22
  328. package/mobile/components/modifiers-list/index.js +0 -25
  329. package/mobile/components/modifiers-list/modifier-item/index.d.ts +0 -29
  330. package/mobile/components/modifiers-list/modifier-item/index.js +0 -38
  331. package/mobile/components/modifiers-list/modifier-item/modifier-item.module.scss +0 -70
  332. package/mobile/components/modifiers-list/modifiers-list.module.scss +0 -21
  333. package/mobile/components/pseudo-input/index.d.ts +0 -11
  334. package/mobile/components/pseudo-input/index.js +0 -34
  335. package/mobile/components/pseudo-input/pseudo-input.module.scss +0 -24
  336. /package/common/components/badge-list/{badge-list.module.scss → badge-list.m.scss} +0 -0
  337. /package/common/components/{intractive-image → interactive-image}/index.d.ts +0 -0
  338. /package/common/components/{intractive-image → interactive-image}/interactive-image-util.scss +0 -0
  339. /package/common/components/{intractive-image/interactive-image.module.scss → interactive-image/interactive-image.m.scss} +0 -0
  340. /package/common/components/rating-counter/{rating-counter.module.scss → rating-counter.m.scss} +0 -0
  341. /package/desktop/components/gallery-modal/components/{review-info.module.scss → review-info.m.scss} +0 -0
  342. /package/desktop/components/gallery-modal/components/{thumbnail.module.scss → thumbnail.m.scss} +0 -0
  343. /package/desktop/components/product-card/{product-card.module.scss → product-card.m.scss} +0 -0
  344. /package/desktop/components/promotion-card/{banner-title.module.scss → banner-title.m.scss} +0 -0
  345. /package/desktop/components/promotion-card/{placeholder.module.scss → placeholder.m.scss} +0 -0
  346. /package/mobile/components/action-circles/{action-circles.module.scss → action-circles.m.scss} +0 -0
  347. /package/mobile/components/action-list/{action-list.module.scss → action-list.m.scss} +0 -0
  348. /package/mobile/components/breadcrumbs/{breadcrumbs.module.scss → breadcrumbs.m.scss} +0 -0
  349. /package/mobile/components/product-row/{product-row.module.scss → product-row.m.scss} +0 -0
  350. /package/mobile/components/product-slider/{product-slider.module.scss → product-slider.m.scss} +0 -0
  351. /package/mobile/components/select-screen/{select-screen.module.scss → select-screen.m.scss} +0 -0
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.PageFormInput = exports.PageForm = exports.PageButtons = exports.PaginationControls = void 0;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const react_1 = require("react");
9
+ const input_1 = require("@sima-land/ui-nucleons/input");
10
+ const pagination_1 = require("@sima-land/ui-nucleons/pagination");
11
+ const ArrowExpandRight_1 = __importDefault(require("@sima-land/ui-quarks/icons/16x16/Stroked/ArrowExpandRight"));
12
+ const bind_1 = __importDefault(require("classnames/bind"));
13
+ const pagination_controls_m_scss_1 = __importDefault(require("./pagination-controls.m.scss"));
14
+ const cx = bind_1.default.bind(pagination_controls_m_scss_1.default);
15
+ /**
16
+ * Блок управления пагинацией.
17
+ * @param props Свойства.
18
+ * @return Элемент.
19
+ */
20
+ function PaginationControls({
21
+ // data props
22
+ current: currentProp, total: totalProp, onPageChange,
23
+ // view props
24
+ flow = 'horizontal', Buttons = PageButtons, Form = PageForm, withForm: withFormProp, className, ...restProps }) {
25
+ const { current, total } = (0, react_1.useMemo)(() => (0, pagination_1.validatePaginationState)({ current: currentProp, total: totalProp }), [currentProp, totalProp]);
26
+ const withForm = withFormProp !== null && withFormProp !== void 0 ? withFormProp : total >= 7;
27
+ const handlePageChange = (0, react_1.useCallback)((page) => {
28
+ onPageChange === null || onPageChange === void 0 ? void 0 : onPageChange(Math.max(1, Math.min(total, page)));
29
+ }, [onPageChange]);
30
+ return ((0, jsx_runtime_1.jsxs)("div", { className: cx('layout', flow !== 'unset' && `flow-${flow}`, className), ...restProps, children: [(0, jsx_runtime_1.jsx)("div", { className: cx('slot-buttons'), children: (0, jsx_runtime_1.jsx)(Buttons, { current: current, total: total, onPageChange: handlePageChange }) }), withForm && ((0, jsx_runtime_1.jsx)("div", { className: cx('slot-form'), children: (0, jsx_runtime_1.jsx)(Form, { current: current, total: total, onPageChange: handlePageChange }) }))] }));
31
+ }
32
+ exports.PaginationControls = PaginationControls;
33
+ /**
34
+ * Кнопки страниц.
35
+ * @param props Свойства.
36
+ * @return Элемент.
37
+ */
38
+ function PageButtons({ total, current, onPageChange, }) {
39
+ return ((0, jsx_runtime_1.jsx)(pagination_1.Pagination, { total: total, current: current, onPageChange: (event, button) => onPageChange(button.value) }));
40
+ }
41
+ exports.PageButtons = PageButtons;
42
+ /**
43
+ * Форма выбора страницы.
44
+ * @param props Свойства.
45
+ * @return Элемент.
46
+ */
47
+ function PageForm({ total, onPageChange }) {
48
+ const [value, setValue] = (0, react_1.useState)('');
49
+ const handleSubmit = (0, react_1.useCallback)(event => {
50
+ event.preventDefault();
51
+ const numeric = parseInt(value);
52
+ if (!Number.isNaN(numeric)) {
53
+ onPageChange === null || onPageChange === void 0 ? void 0 : onPageChange(numeric);
54
+ setValue('');
55
+ }
56
+ }, [total, value, onPageChange]);
57
+ const handleChange = (0, react_1.useCallback)(event => {
58
+ setValue(event.target.value.replace(/\D/g, ''));
59
+ }, []);
60
+ return ((0, jsx_runtime_1.jsxs)("form", { onSubmit: handleSubmit, className: cx('form'), children: [(0, jsx_runtime_1.jsx)("span", { className: cx('label'), children: "\u041A \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0435" }), (0, jsx_runtime_1.jsx)(PageFormInput, { value: value, onChange: handleChange, adornmentEnd: (0, jsx_runtime_1.jsx)("button", { disabled: value.length === 0, type: 'submit', className: cx('submit'), onMouseDown: event => event.preventDefault(), children: (0, jsx_runtime_1.jsx)(ArrowExpandRight_1.default, { fill: 'currentColor' }) }) })] }));
61
+ }
62
+ exports.PageForm = PageForm;
63
+ /**
64
+ * Поле ввода номера страницы. Только стилизует Input.
65
+ * @param props Свойства.
66
+ * @return Элемент.
67
+ */
68
+ function PageFormInput({ className, ...restProps }) {
69
+ return (0, jsx_runtime_1.jsx)(input_1.Input, { size: 'm', ...restProps, className: cx('input', className) });
70
+ }
71
+ exports.PageFormInput = PageFormInput;
72
+ //# sourceMappingURL=pagination-controls.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination-controls.js","sourceRoot":"","sources":["../../../../src/common/components/pagination-controls/pagination-controls.tsx"],"names":[],"mappings":";;;;;;;AAAA,iCAA6F;AAE7F,wDAAiE;AACjE,kEAAwF;AACxF,iHAAiF;AACjF,2DAAyC;AACzC,8FAAkD;AAElD,MAAM,EAAE,GAAG,cAAU,CAAC,IAAI,CAAC,oCAAM,CAAC,CAAC;AAEnC;;;;GAIG;AACH,SAAgB,kBAAkB,CAAC;AACjC,aAAa;AACb,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,SAAS,EAChB,YAAY;AAEZ,aAAa;AACb,IAAI,GAAG,YAAY,EACnB,OAAO,GAAG,WAAW,EACrB,IAAI,GAAG,QAAQ,EACf,QAAQ,EAAE,YAAY,EACtB,SAAS,EACT,GAAG,SAAS,EACY;IACxB,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,IAAA,eAAO,EAChC,GAAG,EAAE,CAAC,IAAA,oCAAuB,EAAC,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EACzE,CAAC,WAAW,EAAE,SAAS,CAAC,CACzB,CAAC;IACF,MAAM,QAAQ,GAAG,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,KAAK,IAAI,CAAC,CAAC;IAE5C,MAAM,gBAAgB,GAAG,IAAA,mBAAW,EAClC,CAAC,IAAY,EAAE,EAAE;QACf,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACrD,CAAC,EACD,CAAC,YAAY,CAAC,CACf,CAAC;IAEF,OAAO,CACL,iCAAK,SAAS,EAAE,EAAE,CAAC,QAAQ,EAAE,IAAI,KAAK,OAAO,IAAI,QAAQ,IAAI,EAAE,EAAE,SAAS,CAAC,KAAM,SAAS,aACxF,gCAAK,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC,YAChC,uBAAC,OAAO,IAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,gBAAgB,GAAI,GACvE,EAEL,QAAQ,IAAI,CACX,gCAAK,SAAS,EAAE,EAAE,CAAC,WAAW,CAAC,YAC7B,uBAAC,IAAI,IAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,gBAAgB,GAAI,GACpE,CACP,IACG,CACP,CAAC;AACJ,CAAC;AAxCD,gDAwCC;AAED;;;;GAIG;AACH,SAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,OAAO,EACP,YAAY,GAKb;IACC,OAAO,CACL,uBAAC,uBAAU,IACT,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,GAC3D,CACH,CAAC;AACJ,CAAC;AAhBD,kCAgBC;AAED;;;;GAIG;AACH,SAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,YAAY,EAAO;IACnD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,EAAE,CAAC,CAAC;IAEvC,MAAM,YAAY,GAAG,IAAA,mBAAW,EAC9B,KAAK,CAAC,EAAE;QACN,KAAK,CAAC,cAAc,EAAE,CAAC;QAEvB,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEhC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAG,OAAO,CAAC,CAAC;YACxB,QAAQ,CAAC,EAAE,CAAC,CAAC;QACf,CAAC;IACH,CAAC,EACD,CAAC,KAAK,EAAE,KAAK,EAAE,YAAY,CAAC,CAC7B,CAAC;IAEF,MAAM,YAAY,GAAG,IAAA,mBAAW,EAAuC,KAAK,CAAC,EAAE;QAC7E,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;IAClD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,kCAAM,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,aACjD,iCAAM,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,wEAAmB,EAC/C,uBAAC,aAAa,IACZ,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,YAAY,EACtB,YAAY,EACV,mCACE,QAAQ,EAAE,KAAK,CAAC,MAAM,KAAK,CAAC,EAC5B,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,EACvB,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,EAAE,YAE5C,uBAAC,0BAAQ,IAAC,IAAI,EAAC,cAAc,GAAG,GACzB,GAEX,IACG,CACR,CAAC;AACJ,CAAC;AAxCD,4BAwCC;AAED;;;;GAIG;AACH,SAAgB,aAAa,CAAC,EAAE,SAAS,EAAE,GAAG,SAAS,EAAc;IACnE,OAAO,uBAAC,aAAK,IAAC,IAAI,EAAC,GAAG,KAAK,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,GAAI,CAAC;AAC9E,CAAC;AAFD,sCAEC"}
@@ -0,0 +1,70 @@
1
+ @use 'node_modules/@sima-land/ui-nucleons/colors';
2
+ @use 'node_modules/@sima-land/ui-nucleons/utils';
3
+
4
+ .layout {
5
+ display: flex;
6
+ &.flow-vertical {
7
+ flex-direction: column;
8
+ justify-content: center;
9
+ .slot-buttons {
10
+ display: flex;
11
+ justify-content: center;
12
+ }
13
+ .slot-form {
14
+ margin-top: 24px;
15
+ }
16
+ }
17
+ &.flow-horizontal {
18
+ flex-direction: row;
19
+ justify-content: space-between;
20
+ .slot-form {
21
+ margin-left: 40px;
22
+ }
23
+ }
24
+ }
25
+
26
+ .form {
27
+ display: flex;
28
+ align-items: center;
29
+ justify-content: center;
30
+ .label + .input {
31
+ margin-left: 8px;
32
+ }
33
+ }
34
+
35
+ .label {
36
+ white-space: nowrap;
37
+ font-size: 16px;
38
+ line-height: 24px;
39
+ color: colors.$basic-gray38;
40
+ }
41
+
42
+ .input {
43
+ width: 100px;
44
+ }
45
+
46
+ .input .submit {
47
+ margin: -4px -8px;
48
+ }
49
+
50
+ .submit {
51
+ @include utils.reset-button;
52
+ width: 32px;
53
+ height: 32px;
54
+ display: flex;
55
+ align-items: center;
56
+ justify-content: center;
57
+ background: colors.$basic-gray87;
58
+ color: #fff;
59
+ border-radius: 4px;
60
+ &:hover {
61
+ cursor: pointer;
62
+ }
63
+ &:disabled {
64
+ background: colors.$basic-gray8;
65
+ color: colors.$basic-gray24;
66
+ }
67
+ &:focus-visible {
68
+ @include utils.focus-visible-style;
69
+ }
70
+ }
@@ -0,0 +1,20 @@
1
+ import type { ComponentType, HTMLAttributes } from 'react';
2
+ export interface PaginationData {
3
+ total: number;
4
+ current: number;
5
+ onPageChange: (page: number) => void;
6
+ }
7
+ export interface PaginationControlsProps extends Partial<PaginationData>, HTMLAttributes<HTMLDivElement> {
8
+ flow?: 'horizontal' | 'vertical' | 'unset';
9
+ withForm?: boolean;
10
+ Buttons?: ComponentType<{
11
+ total: number;
12
+ current: number;
13
+ onPageChange: (page: number) => void;
14
+ }>;
15
+ Form?: ComponentType<{
16
+ total: number;
17
+ current: number;
18
+ onPageChange: (page: number) => void;
19
+ }>;
20
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/common/components/pagination-controls/types.ts"],"names":[],"mappings":""}
@@ -1,16 +1 @@
1
- /// <reference types="react" />
2
- import { ProductInfoProps } from './types';
3
- import { Parts } from './parts';
4
- export type { ProductInfoProps };
5
- export declare const UNAVAILABLE_REASON: {
6
- readonly notEnough: "Нет в наличии";
7
- readonly unavailableInRegion: "Товар недоступен в вашем регионе";
8
- readonly onlyForLegalEntities: "Товар доступен только для юридических лиц";
9
- };
10
- /**
11
- * Блок информации о товаре по дизайн-гайдам.
12
- * @param props Свойства.
13
- * @return Элемент.
14
- */
15
- export declare const ProductInfo: ({ restriction, children }: ProductInfoProps) => JSX.Element;
16
- export { Parts };
1
+ export { type ProductInfoProps, ProductInfo, Parts } from './product-info';
@@ -1,43 +1,7 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Parts = exports.ProductInfo = exports.UNAVAILABLE_REASON = void 0;
7
- const react_1 = __importDefault(require("react"));
8
- const define_slots_1 = require("@sima-land/ui-nucleons/helpers/define-slots");
9
- const utils_1 = require("./utils");
10
- const parts_1 = require("./parts");
11
- Object.defineProperty(exports, "Parts", { enumerable: true, get: function () { return parts_1.Parts; } });
12
- exports.UNAVAILABLE_REASON = {
13
- notEnough: 'Нет в наличии',
14
- unavailableInRegion: 'Товар недоступен в вашем регионе',
15
- onlyForLegalEntities: 'Товар доступен только для юридических лиц',
16
- };
17
- /**
18
- * Блок информации о товаре по дизайн-гайдам.
19
- * @param props Свойства.
20
- * @return Элемент.
21
- */
22
- const ProductInfo = ({ restriction, children }) => {
23
- const { image, badges, prices, title, trademark, footer, secondaryInfo, ratingCounter } = (0, define_slots_1.defineSlots)(children, {
24
- image: parts_1.Parts.Image,
25
- badges: parts_1.Parts.Badges,
26
- prices: parts_1.Parts.Prices,
27
- title: parts_1.Parts.Title,
28
- trademark: parts_1.Parts.TrademarkLink,
29
- footer: parts_1.Parts.Footer,
30
- secondaryInfo: parts_1.Parts.SecondaryInfo,
31
- ratingCounter: parts_1.Parts.RatingCounter,
32
- });
33
- return (react_1.default.createElement(utils_1.ProductInfoContext.Provider, { value: { restriction } },
34
- image,
35
- restriction !== 'adult' && badges,
36
- prices,
37
- title,
38
- restriction !== 'adult' && secondaryInfo,
39
- !restriction && trademark,
40
- restriction !== 'adult' && ratingCounter,
41
- footer));
42
- };
43
- exports.ProductInfo = ProductInfo;
3
+ exports.Parts = exports.ProductInfo = void 0;
4
+ var product_info_1 = require("./product-info");
5
+ Object.defineProperty(exports, "ProductInfo", { enumerable: true, get: function () { return product_info_1.ProductInfo; } });
6
+ Object.defineProperty(exports, "Parts", { enumerable: true, get: function () { return product_info_1.Parts; } });
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/common/components/product-info/index.ts"],"names":[],"mappings":";;;AAAA,+CAA2E;AAA3C,2GAAA,WAAW,OAAA;AAAE,qGAAA,KAAK,OAAA"}
@@ -1,6 +1,5 @@
1
- import React, { ReactNode } from 'react';
1
+ import { ReactNode, MouseEventHandler } from 'react';
2
2
  import { LinkProps } from '@sima-land/ui-nucleons/link';
3
- import { HintProps } from '@sima-land/ui-nucleons/hint-deprecated';
4
3
  import { StrokedSVGProps } from '@sima-land/ui-nucleons/stroked-svg';
5
4
  import { BadgeListProps } from '../badge-list';
6
5
  import { RatingCounterProps } from '../rating-counter';
@@ -8,8 +7,8 @@ export interface ImageProps {
8
7
  src?: string;
9
8
  alt?: string;
10
9
  href?: string;
11
- onClick?: React.MouseEventHandler<HTMLAnchorElement>;
12
- children?: React.ReactNode;
10
+ onClick?: MouseEventHandler<HTMLAnchorElement>;
11
+ children?: ReactNode;
13
12
  opacity?: number;
14
13
  }
15
14
  /**
@@ -19,50 +18,52 @@ export interface ImageProps {
19
18
  */
20
19
  declare function SecondaryInfo({ children }: {
21
20
  children: ReactNode;
22
- }): JSX.Element;
21
+ }): import("react/jsx-runtime").JSX.Element;
23
22
  /**
24
23
  * Счетчик рейтинга.
25
24
  * @param props Свойства.
26
25
  * @return Элемент.
27
26
  */
28
- declare function CustomRatingCounter({ className, ...rest }: RatingCounterProps): JSX.Element;
27
+ declare function CustomRatingCounter({ className, ...rest }: RatingCounterProps): import("react/jsx-runtime").JSX.Element;
29
28
  export declare const Parts: {
30
- readonly Image: ({ src, alt, href, onClick, children, opacity }: ImageProps) => JSX.Element;
29
+ readonly Image: ({ src, alt, href, onClick, children, opacity }: ImageProps) => import("react/jsx-runtime").JSX.Element;
31
30
  readonly ImageButton: ({ icon, fill, onClick, hint, hintDirection, "data-testid": testId, position, }: {
32
31
  icon: StrokedSVGProps['component'];
33
32
  fill?: string | undefined;
34
- onClick?: React.MouseEventHandler<HTMLDivElement> | undefined;
33
+ onClick?: MouseEventHandler<HTMLDivElement> | undefined;
35
34
  hint?: string | undefined;
36
- hintDirection?: ("left" | "right" | "bottom" | "top") | undefined;
35
+ hintDirection?: "left" | "right" | "bottom" | "top" | undefined;
37
36
  'data-testid'?: string | undefined;
38
37
  position?: {
39
38
  x: 'left' | 'right';
40
39
  y: 'top' | 'bottom';
41
40
  } | undefined;
42
- }) => JSX.Element;
43
- readonly Badges: (props: BadgeListProps) => JSX.Element;
41
+ }) => import("react/jsx-runtime").JSX.Element;
42
+ readonly Badges: (props: BadgeListProps) => import("react/jsx-runtime").JSX.Element;
44
43
  readonly Prices: ({ price, oldPrice, currencyGrapheme, unavailableReason, }: {
45
44
  price: number;
46
45
  oldPrice?: number | undefined;
47
46
  currencyGrapheme?: string | undefined;
48
47
  unavailableReason?: string | undefined;
49
- }) => JSX.Element;
50
- readonly Title: ({ children, href, onClick }: Pick<LinkProps, 'children' | 'href' | 'onClick'>) => JSX.Element;
51
- readonly TrademarkLink: ({ href, children, onClick, }: Pick<LinkProps, 'href' | 'children' | 'onClick'>) => JSX.Element;
48
+ }) => import("react/jsx-runtime").JSX.Element;
49
+ readonly Title: ({ children, href, onClick }: Pick<LinkProps, 'children' | 'href' | 'onClick'>) => import("react/jsx-runtime").JSX.Element;
50
+ readonly TrademarkLink: ({ href, children, onClick, }: Pick<LinkProps, 'href' | 'children' | 'onClick'>) => import("react/jsx-runtime").JSX.Element;
52
51
  readonly SecondaryInfo: typeof SecondaryInfo;
53
52
  readonly RatingCounter: typeof CustomRatingCounter;
54
- readonly Footer: React.FC<{}>;
55
- readonly FooterContext: React.Context<{
53
+ readonly Footer: ({ children }: {
54
+ children?: ReactNode;
55
+ }) => import("react/jsx-runtime").JSX.Element;
56
+ readonly FooterContext: import("react").Context<{
56
57
  className?: string | undefined;
57
58
  }>;
58
59
  readonly CartControl: ({ children, stepText, markupText, loading, }: {
59
- children?: React.ReactNode;
60
+ children?: ReactNode;
60
61
  stepText?: string | undefined;
61
62
  markupText?: string | undefined;
62
63
  loading?: boolean | undefined;
63
- }) => JSX.Element;
64
- readonly AdultConfirmButton: ({ className, ...props }: LinkProps) => JSX.Element;
65
- readonly WaitListAddButton: ({ className, ...props }: LinkProps) => JSX.Element;
66
- readonly WaitListAddedLink: ({ className, ...props }: LinkProps) => JSX.Element;
64
+ }) => import("react/jsx-runtime").JSX.Element;
65
+ readonly AdultConfirmButton: ({ className, ...props }: LinkProps) => import("react/jsx-runtime").JSX.Element;
66
+ readonly WaitListAddButton: ({ className, ...props }: LinkProps) => import("react/jsx-runtime").JSX.Element;
67
+ readonly WaitListAddedLink: ({ className, ...props }: LinkProps) => import("react/jsx-runtime").JSX.Element;
67
68
  };
68
69
  export {};
@@ -1,56 +1,24 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __rest = (this && this.__rest) || function (s, e) {
26
- var t = {};
27
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
28
- t[p] = s[p];
29
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
30
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
31
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
32
- t[p[i]] = s[p[i]];
33
- }
34
- return t;
35
- };
36
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
37
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
38
4
  };
39
5
  Object.defineProperty(exports, "__esModule", { value: true });
40
6
  exports.Parts = void 0;
41
- const react_1 = __importStar(require("react"));
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const react_1 = require("react");
42
9
  const link_1 = require("@sima-land/ui-nucleons/link");
10
+ const hint_1 = require("@sima-land/ui-nucleons/hint");
43
11
  const price_1 = require("@sima-land/ui-nucleons/price");
44
12
  const stroked_svg_1 = require("@sima-land/ui-nucleons/stroked-svg");
45
- const with_hint_1 = require("@sima-land/ui-nucleons/with-hint");
46
13
  const image_overlay_1 = require("../../../desktop/components/gallery-modal/components/image-overlay");
47
14
  const badge_list_1 = require("../badge-list");
48
15
  const utils_1 = require("./utils");
49
16
  const rating_counter_1 = require("../rating-counter");
50
- const eighteen_plus_svg_1 = __importDefault(require("../../icons/eighteen-plus.svg"));
17
+ const EighteenPlus_1 = __importDefault(require("@sima-land/ui-quarks/icons/64x64/Stroked/EighteenPlus"));
18
+ const img_stub_1 = require("../img-stub");
51
19
  const bind_1 = __importDefault(require("classnames/bind"));
52
- const product_info_module_scss_1 = __importDefault(require("./product-info.module.scss"));
53
- const cx = bind_1.default.bind(product_info_module_scss_1.default);
20
+ const product_info_m_scss_1 = __importDefault(require("./product-info.m.scss"));
21
+ const cx = bind_1.default.bind(product_info_m_scss_1.default);
54
22
  /**
55
23
  * Кнопка-иконка на изображении.
56
24
  * @param props Свойства.
@@ -59,14 +27,23 @@ const cx = bind_1.default.bind(product_info_module_scss_1.default);
59
27
  const ImageButton = ({ icon, fill, onClick, hint, hintDirection = 'left', 'data-testid': testId, position, }) => {
60
28
  const commonProps = {
61
29
  role: 'banner',
62
- component: icon,
63
30
  fill,
64
31
  strokeWidth: 1.5,
65
32
  className: cx('image-button', position && 'positioned', position && `${position.x}-${position.y}`),
66
33
  onClick,
67
34
  'data-testid': testId,
68
35
  };
69
- return hint ? (react_1.default.createElement(with_hint_1.WithHint, { hint: hint, direction: hintDirection }, (ref, toggle) => (react_1.default.createElement(stroked_svg_1.StrokedSVG, Object.assign({}, commonProps, { ref: ref, onMouseEnter: () => toggle(true), onMouseLeave: () => toggle(false) }))))) : (react_1.default.createElement(stroked_svg_1.StrokedSVG, Object.assign({}, commonProps)));
36
+ // состояние
37
+ const [open, setOpen] = (0, react_1.useState)(false);
38
+ // позиционирование
39
+ const { refs, ...floating } = (0, hint_1.useHintFloating)({
40
+ open,
41
+ onOpenChange: setOpen,
42
+ placement: hintDirection,
43
+ });
44
+ // пользовательское взаимодействие
45
+ const { getReferenceProps, getFloatingProps } = (0, hint_1.useHintOnHover)(floating);
46
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(stroked_svg_1.StrokedSVG, { ref: refs.setReference, component: icon, ...getReferenceProps(commonProps) }), hint && ((0, jsx_runtime_1.jsx)(hint_1.Hint, { open: open, hintRef: refs.setFloating, arrowRef: refs.setArrow, ...getFloatingProps(), children: hint }))] }));
70
47
  };
71
48
  /**
72
49
  * Слот - изображение товара.
@@ -76,19 +53,16 @@ const ImageButton = ({ icon, fill, onClick, hint, hintDirection = 'left', 'data-
76
53
  const Image = ({ src, alt, href, onClick, children, opacity }) => {
77
54
  const { restriction } = (0, react_1.useContext)(utils_1.ProductInfoContext);
78
55
  const defaultOpacity = restriction ? 0.4 : undefined;
79
- return (react_1.default.createElement(image_overlay_1.ImageOverlay, { className: cx('image-overlay') }, restriction === 'adult' ? (react_1.default.createElement(react_1.default.Fragment, null,
80
- react_1.default.createElement("img", { alt: alt, src: src, className: cx('image', 'adult'), "data-testid": 'product-info:adult-image' }),
81
- react_1.default.createElement(eighteen_plus_svg_1.default, { className: cx('adult-icon') }))) : (react_1.default.createElement(react_1.default.Fragment, null,
82
- react_1.default.createElement("a", { href: href, className: cx('image-link'), onClick: onClick, "data-testid": 'product-info:image-link' },
83
- react_1.default.createElement("img", { alt: alt, src: src, className: cx('image'), style: { opacity: typeof opacity === 'number' ? opacity : defaultOpacity }, "data-testid": 'product-info:image' })),
84
- children && react_1.default.createElement("div", { className: cx('image-buttons') }, children)))));
56
+ const [broken, setBroken] = (0, react_1.useState)(false);
57
+ (0, react_1.useEffect)(() => setBroken(false), [src]);
58
+ return ((0, jsx_runtime_1.jsx)(image_overlay_1.ImageOverlay, { className: cx('image-overlay'), children: restriction === 'adult' ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("img", { onError: () => setBroken(true), alt: alt, src: src, className: cx('image', 'adult', { broken }), "data-testid": 'product-info:adult-image' }), (0, jsx_runtime_1.jsx)(EighteenPlus_1.default, { className: cx('adult-icon') })] })) : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)("a", { href: href, className: cx('image-link'), onClick: onClick, "data-testid": 'product-info:image-link', children: [(0, jsx_runtime_1.jsx)("img", { onError: () => setBroken(true), alt: alt, src: src, className: cx('image', { broken }), style: { opacity: typeof opacity === 'number' ? opacity : defaultOpacity }, "data-testid": 'product-info:image' }), broken && (0, jsx_runtime_1.jsx)(img_stub_1.ImgStub, { className: cx('broken-icon') })] }), children && (0, jsx_runtime_1.jsx)("div", { className: cx('image-buttons'), children: children })] })) }));
85
59
  };
86
60
  /**
87
61
  * Слот для вывода шильдиков.
88
62
  * @param props Свойства.
89
63
  * @return Элемент.
90
64
  */
91
- const Badges = (props) => react_1.default.createElement(badge_list_1.BadgeList, Object.assign({ className: cx('badges') }, props));
65
+ const Badges = (props) => (0, jsx_runtime_1.jsx)(badge_list_1.BadgeList, { className: cx('badges'), ...props });
92
66
  /**
93
67
  * Слот для вывода цен.
94
68
  * @param props Свойства.
@@ -96,11 +70,7 @@ const Badges = (props) => react_1.default.createElement(badge_list_1.BadgeList,
96
70
  */
97
71
  const Prices = ({ price, oldPrice, currencyGrapheme, unavailableReason = 'Товар недоступен', }) => {
98
72
  const { restriction } = (0, react_1.useContext)(utils_1.ProductInfoContext);
99
- return (react_1.default.createElement("div", { className: cx('prices', { 'height-limit': !restriction || restriction === 'adult' }), "data-testid": 'product-info:prices' },
100
- (!restriction || restriction === 'adult') && (react_1.default.createElement(react_1.default.Fragment, null,
101
- react_1.default.createElement(price_1.Price, { value: price, currencyGrapheme: currencyGrapheme, className: cx('price'), "data-testid": 'product-info:price' }),
102
- restriction !== 'adult' && oldPrice && (react_1.default.createElement(price_1.Price, { value: oldPrice, currencyGrapheme: currencyGrapheme, className: cx('old-price'), crossedOut: true, "data-testid": 'product-info:old-price' })))),
103
- restriction === 'unavailable' && unavailableReason));
73
+ return ((0, jsx_runtime_1.jsxs)("div", { className: cx('prices', { 'height-limit': !restriction || restriction === 'adult' }), "data-testid": 'product-info:prices', children: [(!restriction || restriction === 'adult') && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(price_1.Price, { value: price, currencyGrapheme: currencyGrapheme, className: cx('price'), "data-testid": 'product-info:price' }), restriction !== 'adult' && oldPrice && ((0, jsx_runtime_1.jsx)(price_1.Price, { value: oldPrice, currencyGrapheme: currencyGrapheme, className: cx('old-price'), crossedOut: true, "data-testid": 'product-info:old-price' }))] })), restriction === 'unavailable' && unavailableReason] }));
104
74
  };
105
75
  /**
106
76
  * Слот для вывода ссылки - названия товара.
@@ -109,14 +79,14 @@ const Prices = ({ price, oldPrice, currencyGrapheme, unavailableReason = 'Тов
109
79
  */
110
80
  const Title = ({ children, href, onClick }) => {
111
81
  const { restriction } = (0, react_1.useContext)(utils_1.ProductInfoContext);
112
- return restriction === 'adult' ? (react_1.default.createElement("span", { className: cx('adult-info'), "data-testid": 'product-info:adult-warning' }, "\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043E \u0432\u044B \u0441\u0442\u0430\u0440\u0448\u0435 18 \u043B\u0435\u0442, \u0447\u0442\u043E\u0431\u044B \u043F\u043E\u0441\u043C\u043E\u0442\u0440\u0435\u0442\u044C \u0442\u043E\u0432\u0430\u0440.")) : (react_1.default.createElement(link_1.Link, { onClick: onClick, className: cx('link', 'line-clamp'), href: href, color: 'basic-gray87', "data-testid": 'product-info:name-link' }, children));
82
+ return restriction === 'adult' ? ((0, jsx_runtime_1.jsx)("span", { className: cx('adult-info'), "data-testid": 'product-info:adult-warning', children: "\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043E \u0432\u044B \u0441\u0442\u0430\u0440\u0448\u0435 18 \u043B\u0435\u0442, \u0447\u0442\u043E\u0431\u044B \u043F\u043E\u0441\u043C\u043E\u0442\u0440\u0435\u0442\u044C \u0442\u043E\u0432\u0430\u0440." })) : ((0, jsx_runtime_1.jsx)(link_1.Link, { onClick: onClick, className: cx('link', 'line-clamp'), href: href, color: 'basic-gray87', "data-testid": 'product-info:name-link', children: children }));
113
83
  };
114
84
  /**
115
85
  * Слот для вывода ссылки торговой марки.
116
86
  * @param props Свойства.
117
87
  * @return Элемент.
118
88
  */
119
- const TrademarkLink = ({ href, children, onClick, }) => (react_1.default.createElement(link_1.Link, { className: cx('trademark-link'), href: href, children: children, onClick: onClick, color: 'basic-blue', "data-testid": 'product-info:trademark-link' }));
89
+ const TrademarkLink = ({ href, children, onClick, }) => ((0, jsx_runtime_1.jsx)(link_1.Link, { className: cx('trademark-link'), href: href, children: children, onClick: onClick, color: 'basic-blue', "data-testid": 'product-info:trademark-link' }));
120
90
  const FooterContext = (0, react_1.createContext)({
121
91
  className: undefined,
122
92
  });
@@ -127,66 +97,47 @@ const FooterContext = (0, react_1.createContext)({
127
97
  */
128
98
  const Footer = ({ children }) => {
129
99
  const { className = cx('footer') } = (0, react_1.useContext)(FooterContext);
130
- return (react_1.default.createElement("div", { className: className, "data-testid": 'product-info:footer' }, children));
100
+ return ((0, jsx_runtime_1.jsx)("div", { className: className, "data-testid": 'product-info:footer', children: children }));
131
101
  };
132
102
  /**
133
103
  * Блок управления корзиной.
134
104
  * @param props Свойства.
135
105
  * @return Элемент.
136
106
  */
137
- const CartControl = ({ children, stepText, markupText, loading, }) => (react_1.default.createElement("div", { className: cx('control-wrapper', { loading }) },
138
- react_1.default.createElement("div", { className: cx('control') }, !loading && children),
139
- (loading || stepText) && (react_1.default.createElement("div", { className: cx('unit-text'), "data-testid": 'product-info:cart-step' }, !loading && stepText)),
140
- !loading && markupText && (react_1.default.createElement("div", { className: cx('bottom-text'), "data-testid": 'product-info:cart-info' }, markupText))));
107
+ const CartControl = ({ children, stepText, markupText, loading, }) => ((0, jsx_runtime_1.jsxs)("div", { className: cx('control-wrapper', { loading }), children: [(0, jsx_runtime_1.jsx)("div", { className: cx('control'), children: !loading && children }), (loading || stepText) && ((0, jsx_runtime_1.jsx)("div", { className: cx('unit-text'), "data-testid": 'product-info:cart-step', children: !loading && stepText })), !loading && markupText && ((0, jsx_runtime_1.jsx)("div", { className: cx('bottom-text'), "data-testid": 'product-info:cart-info', children: markupText }))] }));
141
108
  /**
142
109
  * Кнопка "подтвердить".
143
110
  * @param props Свойства.
144
111
  * @return Элемент.
145
112
  */
146
- const AdultConfirmButton = (_a) => {
147
- var { className } = _a, props = __rest(_a, ["className"]);
148
- return (react_1.default.createElement(link_1.Link, Object.assign({}, props, { pseudo: true, color: 'basic-blue', className: cx('text-button', className), "data-testid": 'product-info:adult-confirm-button' }), "\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044C"));
149
- };
113
+ const AdultConfirmButton = ({ className, ...props }) => ((0, jsx_runtime_1.jsx)(link_1.Link, { ...props, pseudo: true, color: 'basic-blue', className: cx('text-button', className), "data-testid": 'product-info:adult-confirm-button', children: "\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044C" }));
150
114
  /**
151
115
  * Кнопка "В лист ожидания".
152
116
  * @param props Свойства.
153
117
  * @return Элемент.
154
118
  */
155
- const WaitListAddButton = (_a) => {
156
- var { className } = _a, props = __rest(_a, ["className"]);
157
- return (react_1.default.createElement(link_1.Link, Object.assign({}, props, { pseudo: true, color: 'basic-blue', className: cx('text-button', className), "data-testid": 'product-info:wait-list-add-button' }), "\u0412 \u043B\u0438\u0441\u0442 \u043E\u0436\u0438\u0434\u0430\u043D\u0438\u044F"));
158
- };
119
+ const WaitListAddButton = ({ className, ...props }) => ((0, jsx_runtime_1.jsx)(link_1.Link, { ...props, pseudo: true, color: 'basic-blue', className: cx('text-button', className), "data-testid": 'product-info:wait-list-add-button', children: "\u0412 \u043B\u0438\u0441\u0442 \u043E\u0436\u0438\u0434\u0430\u043D\u0438\u044F" }));
159
120
  /**
160
121
  * Текст со ссылкой "Товар добавлен в лист ожидания".
161
122
  * @param props Свойства.
162
123
  * @return Элемент.
163
124
  */
164
- const WaitListAddedLink = (_a) => {
165
- var { className } = _a, props = __rest(_a, ["className"]);
166
- return (react_1.default.createElement("span", { className: cx('wait-list-added-text') },
167
- "\u0422\u043E\u0432\u0430\u0440 \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D \u0432",
168
- ' ',
169
- react_1.default.createElement(link_1.Link, Object.assign({}, props, { color: 'basic-blue', className: cx('text-button', className), "data-testid": 'product-info:wait-list-added-link' }),
170
- "\u043B\u0438\u0441\u0442",
171
- '\u00A0',
172
- "\u043E\u0436\u0438\u0434\u0430\u043D\u0438\u044F")));
173
- };
125
+ const WaitListAddedLink = ({ className, ...props }) => ((0, jsx_runtime_1.jsxs)("span", { className: cx('wait-list-added-text'), children: ["\u0422\u043E\u0432\u0430\u0440 \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D \u0432", ' ', (0, jsx_runtime_1.jsxs)(link_1.Link, { ...props, color: 'basic-blue', className: cx('text-button', className), "data-testid": 'product-info:wait-list-added-link', children: ["\u043B\u0438\u0441\u0442", '\u00A0', "\u043E\u0436\u0438\u0434\u0430\u043D\u0438\u044F"] })] }));
174
126
  /**
175
127
  * Дополнительный контент после заголовка.
176
128
  * @param props Свойства.
177
129
  * @return Элемент.
178
130
  */
179
131
  function SecondaryInfo({ children }) {
180
- return react_1.default.createElement("div", { className: cx('secondary-info') }, children);
132
+ return (0, jsx_runtime_1.jsx)("div", { className: cx('secondary-info'), children: children });
181
133
  }
182
134
  /**
183
135
  * Счетчик рейтинга.
184
136
  * @param props Свойства.
185
137
  * @return Элемент.
186
138
  */
187
- function CustomRatingCounter(_a) {
188
- var { className } = _a, rest = __rest(_a, ["className"]);
189
- return react_1.default.createElement(rating_counter_1.RatingCounter, Object.assign({ size: 'unset', className: cx('rating', className), hoverDisabled: true }, rest));
139
+ function CustomRatingCounter({ className, ...rest }) {
140
+ return (0, jsx_runtime_1.jsx)(rating_counter_1.RatingCounter, { size: 'unset', className: cx('rating', className), hoverDisabled: true, ...rest });
190
141
  }
191
142
  exports.Parts = {
192
143
  // основные компоненты-слоты и компоненты-запчасти
@@ -198,7 +149,7 @@ exports.Parts = {
198
149
  TrademarkLink,
199
150
  SecondaryInfo,
200
151
  RatingCounter: CustomRatingCounter,
201
- // компоненты-слоты и компоненты-запчасти, предназначенные для вывода футера (dcе что ниже ссылки на торговую марку)
152
+ // компоненты-слоты и компоненты-запчасти, предназначенные для вывода футера (вcё что ниже ссылки на торговую марку)
202
153
  Footer,
203
154
  FooterContext,
204
155
  CartControl,
@@ -206,3 +157,4 @@ exports.Parts = {
206
157
  WaitListAddButton,
207
158
  WaitListAddedLink,
208
159
  };
160
+ //# sourceMappingURL=parts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parts.js","sourceRoot":"","sources":["../../../../src/common/components/product-info/parts.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { ProductInfoProps } from './types';
2
+ import { Parts } from './parts';
3
+ export type { ProductInfoProps };
4
+ export declare const UNAVAILABLE_REASON: {
5
+ readonly notEnough: "Нет в наличии";
6
+ readonly unavailableInRegion: "Товар недоступен в вашем регионе";
7
+ readonly onlyForLegalEntities: "Товар доступен только для юридических лиц";
8
+ };
9
+ /**
10
+ * Блок информации о товаре по дизайн-гайдам.
11
+ * @param props Свойства.
12
+ * @return Элемент.
13
+ */
14
+ export declare const ProductInfo: ({ restriction, children }: ProductInfoProps) => import("react/jsx-runtime").JSX.Element;
15
+ export { Parts };