@dxtmisha/wiki 0.24.2 → 0.24.3

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 (415) hide show
  1. package/package.json +1 -1
  2. package/src/library.ts +7 -7
  3. package/src/media/descriptions/wikiDescriptionsBars.ts +1 -3
  4. package/src/media/descriptions/wikiDescriptionsCell.ts +1 -2
  5. package/src/media/descriptions/wikiDescriptionsChip.ts +0 -1
  6. package/src/media/descriptions/wikiDescriptionsField.ts +1 -4
  7. package/src/media/descriptions/wikiDescriptionsFieldCounter.ts +6 -6
  8. package/src/media/descriptions/wikiDescriptionsFieldMessage.ts +1 -2
  9. package/src/media/descriptions/wikiDescriptionsImage.ts +2 -2
  10. package/src/media/descriptions/wikiDescriptionsList.ts +1 -5
  11. package/src/media/descriptions/wikiDescriptionsListGroup.ts +2 -3
  12. package/src/media/descriptions/wikiDescriptionsListItem.ts +1 -3
  13. package/src/media/descriptions/wikiDescriptionsListMenu.ts +2 -9
  14. package/src/media/descriptions/wikiDescriptionsMask.ts +12 -0
  15. package/src/media/descriptions/wikiDescriptionsMenu.ts +3 -14
  16. package/src/media/descriptions/wikiDescriptionsMotionTransform.ts +2 -4
  17. package/src/media/descriptions/wikiDescriptionsScrollbar.ts +1 -7
  18. package/src/media/descriptions/wikiDescriptionsSkeleton.ts +1 -0
  19. package/src/media/descriptions/wikiDescriptionsWindow.ts +5 -22
  20. package/src/media/functional/en/broadcastMessage.mdx +307 -0
  21. package/src/media/functional/ru/broadcastMessage.mdx +305 -0
  22. package/src/media/mdx/Badge/badge.en.mdx +85 -7
  23. package/src/media/mdx/Badge/badge.ru.mdx +85 -7
  24. package/src/media/mdx/Badge/dot.en.mdx +16 -12
  25. package/src/media/mdx/Badge/dot.ru.mdx +16 -12
  26. package/src/media/mdx/Badge/outline.en.mdx +12 -13
  27. package/src/media/mdx/Badge/outline.ru.mdx +12 -13
  28. package/src/media/mdx/Badge/primary.en.mdx +12 -12
  29. package/src/media/mdx/Badge/primary.ru.mdx +12 -12
  30. package/src/media/mdx/Badge/secondary.en.mdx +12 -13
  31. package/src/media/mdx/Badge/secondary.ru.mdx +12 -13
  32. package/src/media/mdx/Bars/action.en.mdx +72 -28
  33. package/src/media/mdx/Bars/action.ru.mdx +73 -29
  34. package/src/media/mdx/Bars/bars.en.mdx +90 -15
  35. package/src/media/mdx/Bars/bars.ru.mdx +91 -15
  36. package/src/media/mdx/Bars/slots.en.mdx +33 -0
  37. package/src/media/mdx/Bars/slots.ru.mdx +33 -0
  38. package/src/media/mdx/Bars/v-model.en.mdx +23 -14
  39. package/src/media/mdx/Bars/v-model.ru.mdx +23 -14
  40. package/src/media/mdx/Bars/wikiMdxBars.ts +5 -11
  41. package/src/media/mdx/Button/button.en.mdx +89 -1
  42. package/src/media/mdx/Button/button.ru.mdx +89 -1
  43. package/src/media/mdx/Button/outline.en.mdx +12 -14
  44. package/src/media/mdx/Button/outline.ru.mdx +12 -14
  45. package/src/media/mdx/Button/primary.en.mdx +12 -19
  46. package/src/media/mdx/Button/primary.ru.mdx +12 -19
  47. package/src/media/mdx/Button/secondary.en.mdx +12 -17
  48. package/src/media/mdx/Button/secondary.ru.mdx +12 -17
  49. package/src/media/mdx/Button/text.en.mdx +12 -11
  50. package/src/media/mdx/Button/text.ru.mdx +12 -11
  51. package/src/media/mdx/Cell/cell.en.mdx +50 -9
  52. package/src/media/mdx/Cell/cell.ru.mdx +50 -9
  53. package/src/media/mdx/Cell/slots.en.mdx +82 -0
  54. package/src/media/mdx/Cell/slots.ru.mdx +83 -0
  55. package/src/media/mdx/Cell/wikiMdxCell.ts +6 -12
  56. package/src/media/mdx/Chip/assistive.en.mdx +12 -14
  57. package/src/media/mdx/Chip/assistive.ru.mdx +12 -14
  58. package/src/media/mdx/Chip/chip.en.mdx +69 -9
  59. package/src/media/mdx/Chip/chip.ru.mdx +69 -9
  60. package/src/media/mdx/Chip/input.en.mdx +12 -19
  61. package/src/media/mdx/Chip/input.ru.mdx +12 -19
  62. package/src/media/mdx/Field/arrows.en.mdx +67 -17
  63. package/src/media/mdx/Field/arrows.ru.mdx +67 -17
  64. package/src/media/mdx/Field/cancel.en.mdx +47 -10
  65. package/src/media/mdx/Field/cancel.ru.mdx +47 -10
  66. package/src/media/mdx/Field/field.en.mdx +45 -15
  67. package/src/media/mdx/Field/field.ru.mdx +45 -15
  68. package/src/media/mdx/Field/slots.en.mdx +151 -0
  69. package/src/media/mdx/Field/slots.ru.mdx +151 -0
  70. package/src/media/mdx/Field/value.en.mdx +49 -28
  71. package/src/media/mdx/Field/value.ru.mdx +49 -28
  72. package/src/media/mdx/Field/width.en.mdx +21 -19
  73. package/src/media/mdx/Field/width.ru.mdx +21 -19
  74. package/src/media/mdx/Field/wikiMdxField.ts +14 -26
  75. package/src/media/mdx/FieldCounter/fieldCounter.en.mdx +52 -14
  76. package/src/media/mdx/FieldCounter/fieldCounter.ru.mdx +55 -14
  77. package/src/media/mdx/FieldCounter/templates.en.mdx +26 -6
  78. package/src/media/mdx/FieldCounter/templates.ru.mdx +25 -5
  79. package/src/media/mdx/FieldLabel/fieldLabel.en.mdx +56 -14
  80. package/src/media/mdx/FieldLabel/fieldLabel.ru.mdx +56 -14
  81. package/src/media/mdx/FieldMessage/fieldMessage.en.mdx +58 -14
  82. package/src/media/mdx/FieldMessage/fieldMessage.ru.mdx +58 -14
  83. package/src/media/mdx/FieldMessage/slots.en.mdx +45 -0
  84. package/src/media/mdx/FieldMessage/slots.ru.mdx +45 -0
  85. package/src/media/mdx/FieldMessage/wikiMdxFieldMessage.ts +6 -12
  86. package/src/media/mdx/Icon/expose.isActive.en.mdx +2 -10
  87. package/src/media/mdx/Icon/expose.isActive.ru.mdx +2 -10
  88. package/src/media/mdx/Icon/icon.en.mdx +43 -9
  89. package/src/media/mdx/Icon/icon.ru.mdx +27 -28
  90. package/src/media/mdx/Image/adaptive.en.mdx +63 -20
  91. package/src/media/mdx/Image/adaptive.ru.mdx +62 -25
  92. package/src/media/mdx/Image/event.load.en.mdx +37 -2
  93. package/src/media/mdx/Image/event.load.ru.mdx +34 -7
  94. package/src/media/mdx/Image/{expose.type.ru.mdx → expose.en.mdx} +11 -1
  95. package/src/media/mdx/Image/expose.ru.mdx +31 -0
  96. package/src/media/mdx/Image/image.en.mdx +46 -0
  97. package/src/media/mdx/Image/image.ru.mdx +47 -0
  98. package/src/media/mdx/Image/size.en.mdx +19 -19
  99. package/src/media/mdx/Image/size.ru.mdx +19 -23
  100. package/src/media/mdx/Image/value.en.mdx +10 -27
  101. package/src/media/mdx/Image/value.ru.mdx +10 -29
  102. package/src/media/mdx/Image/wikiMdxImage.ts +11 -11
  103. package/src/media/mdx/List/event.close.en.mdx +5 -8
  104. package/src/media/mdx/List/event.close.ru.mdx +5 -8
  105. package/src/media/mdx/List/list.en.mdx +56 -14
  106. package/src/media/mdx/List/list.ru.mdx +56 -14
  107. package/src/media/mdx/List/lite.en.mdx +17 -12
  108. package/src/media/mdx/List/lite.ru.mdx +17 -12
  109. package/src/media/mdx/List/slot.html.en.mdx +72 -21
  110. package/src/media/mdx/List/slot.html.ru.mdx +72 -21
  111. package/src/media/mdx/ListGroup/listGroup.en.mdx +55 -1
  112. package/src/media/mdx/ListGroup/listGroup.ru.mdx +55 -1
  113. package/src/media/mdx/ListGroup/slots.en.mdx +10 -0
  114. package/src/media/mdx/ListGroup/slots.ru.mdx +10 -0
  115. package/src/media/mdx/ListGroup/wikiMdxListGroup.ts +6 -12
  116. package/src/media/mdx/ListItem/basic.en.mdx +47 -10
  117. package/src/media/mdx/ListItem/basic.ru.mdx +46 -9
  118. package/src/media/mdx/ListItem/fill.en.mdx +22 -8
  119. package/src/media/mdx/ListItem/fill.ru.mdx +22 -8
  120. package/src/media/mdx/ListItem/slots.en.mdx +7 -0
  121. package/src/media/mdx/ListItem/slots.ru.mdx +7 -0
  122. package/src/media/mdx/ListItem/wikiMdxListItem.ts +7 -13
  123. package/src/media/mdx/ListMenu/listMenu.en.mdx +62 -1
  124. package/src/media/mdx/ListMenu/listMenu.ru.mdx +62 -1
  125. package/src/media/mdx/Mask/basic.en.mdx +68 -16
  126. package/src/media/mdx/Mask/basic.ru.mdx +70 -11
  127. package/src/media/mdx/Mask/dateTypes.en.mdx +82 -68
  128. package/src/media/mdx/Mask/dateTypes.ru.mdx +82 -68
  129. package/src/media/mdx/Mask/expose.en.mdx +20 -0
  130. package/src/media/mdx/Mask/expose.ru.mdx +20 -0
  131. package/src/media/mdx/Mask/groupSave.en.mdx +13 -46
  132. package/src/media/mdx/Mask/groupSave.ru.mdx +13 -46
  133. package/src/media/mdx/Mask/mask.en.mdx +12 -66
  134. package/src/media/mdx/Mask/mask.ru.mdx +12 -66
  135. package/src/media/mdx/Mask/match.en.mdx +16 -24
  136. package/src/media/mdx/Mask/match.ru.mdx +16 -24
  137. package/src/media/mdx/Mask/numberTypes.en.mdx +64 -52
  138. package/src/media/mdx/Mask/numberTypes.ru.mdx +64 -52
  139. package/src/media/mdx/Mask/pattern.en.mdx +63 -75
  140. package/src/media/mdx/Mask/pattern.ru.mdx +63 -75
  141. package/src/media/mdx/Mask/special.en.mdx +174 -97
  142. package/src/media/mdx/Mask/special.ru.mdx +174 -97
  143. package/src/media/mdx/Mask/type.en.mdx +12 -36
  144. package/src/media/mdx/Mask/type.ru.mdx +11 -35
  145. package/src/media/mdx/Mask/visible.en.mdx +33 -41
  146. package/src/media/mdx/Mask/visible.ru.mdx +32 -40
  147. package/src/media/mdx/Mask/wikiMdxMask.ts +6 -0
  148. package/src/media/mdx/Menu/ajax.en.mdx +44 -51
  149. package/src/media/mdx/Menu/ajax.ru.mdx +44 -52
  150. package/src/media/mdx/Menu/menu.en.mdx +63 -1
  151. package/src/media/mdx/Menu/menu.ru.mdx +64 -1
  152. package/src/media/mdx/Menu/slots.en.mdx +122 -0
  153. package/src/media/mdx/Menu/slots.ru.mdx +122 -0
  154. package/src/media/mdx/Menu/wikiMdxMenu.ts +7 -32
  155. package/src/media/mdx/MotionTransform/animationHeadPosition.en.mdx +10 -22
  156. package/src/media/mdx/MotionTransform/animationHeadPosition.ru.mdx +10 -22
  157. package/src/media/mdx/MotionTransform/classes.en.mdx +18 -25
  158. package/src/media/mdx/MotionTransform/classes.ru.mdx +18 -25
  159. package/src/media/mdx/MotionTransform/events.en.mdx +31 -43
  160. package/src/media/mdx/MotionTransform/events.ru.mdx +31 -43
  161. package/src/media/mdx/MotionTransform/expose.isShow.en.mdx +2 -4
  162. package/src/media/mdx/MotionTransform/expose.isShow.ru.mdx +2 -4
  163. package/src/media/mdx/MotionTransform/ignore.en.mdx +22 -24
  164. package/src/media/mdx/MotionTransform/ignore.ru.mdx +22 -24
  165. package/src/media/mdx/MotionTransform/motionTransform.en.mdx +44 -15
  166. package/src/media/mdx/MotionTransform/motionTransform.ru.mdx +44 -15
  167. package/src/media/mdx/MotionTransform/slots.en.mdx +92 -0
  168. package/src/media/mdx/MotionTransform/slots.ru.mdx +92 -0
  169. package/src/media/mdx/MotionTransform/v-model.en.mdx +23 -14
  170. package/src/media/mdx/MotionTransform/v-model.ru.mdx +23 -14
  171. package/src/media/mdx/MotionTransform/wikiMdxMotionTransform.ts +5 -17
  172. package/src/media/mdx/Progress/circular.en.mdx +7 -20
  173. package/src/media/mdx/Progress/circular.ru.mdx +7 -20
  174. package/src/media/mdx/Progress/delays.en.mdx +6 -13
  175. package/src/media/mdx/Progress/delays.ru.mdx +6 -13
  176. package/src/media/mdx/Progress/linear.en.mdx +9 -23
  177. package/src/media/mdx/Progress/linear.ru.mdx +9 -23
  178. package/src/media/mdx/Progress/progress.en.mdx +67 -5
  179. package/src/media/mdx/Progress/progress.ru.mdx +67 -5
  180. package/src/media/mdx/Progress/values.en.mdx +6 -28
  181. package/src/media/mdx/Progress/values.ru.mdx +6 -29
  182. package/src/media/mdx/Ripple/ripple.en.mdx +34 -40
  183. package/src/media/mdx/Ripple/ripple.ru.mdx +34 -40
  184. package/src/media/mdx/Scrollbar/emits-include.en.mdx +38 -0
  185. package/src/media/mdx/Scrollbar/emits-include.ru.mdx +38 -0
  186. package/src/media/mdx/Scrollbar/emits.en.mdx +38 -0
  187. package/src/media/mdx/Scrollbar/emits.ru.mdx +38 -0
  188. package/src/media/mdx/Scrollbar/scrollbar.en.mdx +38 -2
  189. package/src/media/mdx/Scrollbar/scrollbar.ru.mdx +38 -2
  190. package/src/media/mdx/Scrollbar/wikiMdxScrollbar.ts +12 -43
  191. package/src/media/mdx/Skeleton/classes.en.mdx +13 -0
  192. package/src/media/mdx/Skeleton/classes.ru.mdx +13 -0
  193. package/src/media/mdx/Skeleton/expose.isActive.en.mdx +7 -28
  194. package/src/media/mdx/Skeleton/expose.isActive.ru.mdx +7 -28
  195. package/src/media/mdx/Skeleton/skeleton.en.mdx +37 -36
  196. package/src/media/mdx/Skeleton/skeleton.ru.mdx +37 -36
  197. package/src/media/mdx/Skeleton/wikiMdxSkeleton.ts +7 -0
  198. package/src/media/mdx/Window/axis.en.mdx +11 -19
  199. package/src/media/mdx/Window/axis.ru.mdx +11 -19
  200. package/src/media/mdx/Window/classes.en.mdx +9 -26
  201. package/src/media/mdx/Window/classes.ru.mdx +9 -26
  202. package/src/media/mdx/Window/event.window.en.mdx +26 -8
  203. package/src/media/mdx/Window/event.window.ru.mdx +26 -8
  204. package/src/media/mdx/Window/expose.en.mdx +44 -0
  205. package/src/media/mdx/Window/expose.ru.mdx +44 -0
  206. package/src/media/mdx/Window/hooks.en.mdx +29 -50
  207. package/src/media/mdx/Window/hooks.ru.mdx +31 -52
  208. package/src/media/mdx/Window/slots.en.mdx +168 -0
  209. package/src/media/mdx/Window/slots.ru.mdx +168 -0
  210. package/src/media/mdx/Window/v-model.en.mdx +20 -11
  211. package/src/media/mdx/Window/v-model.ru.mdx +19 -11
  212. package/src/media/mdx/Window/wikiMdxWindow.ts +11 -41
  213. package/src/media/mdx/Window/window.en.mdx +55 -1
  214. package/src/media/mdx/Window/window.ru.mdx +55 -1
  215. package/src/media/mdx/event/events.bars.en.mdx +50 -0
  216. package/src/media/mdx/event/events.bars.ru.mdx +50 -0
  217. package/src/media/mdx/event/events.beforeinput.en.mdx +13 -0
  218. package/src/media/mdx/event/events.beforeinput.ru.mdx +13 -0
  219. package/src/media/mdx/event/events.click.en.mdx +36 -0
  220. package/src/media/mdx/event/events.click.ru.mdx +36 -0
  221. package/src/media/mdx/event/events.focus.en.mdx +13 -0
  222. package/src/media/mdx/event/events.focus.ru.mdx +13 -0
  223. package/src/media/mdx/event/events.input.en.mdx +89 -0
  224. package/src/media/mdx/event/events.input.ru.mdx +90 -0
  225. package/src/media/mdx/event/events.keyboard.en.mdx +13 -0
  226. package/src/media/mdx/event/events.keyboard.ru.mdx +13 -0
  227. package/src/media/mdx/event/events.paste.en.mdx +6 -0
  228. package/src/media/mdx/event/events.paste.ru.mdx +6 -0
  229. package/src/media/mdx/event/events.reset.en.mdx +6 -0
  230. package/src/media/mdx/event/events.reset.ru.mdx +6 -0
  231. package/src/media/mdx/event/wikiMdxEvent.ts +39 -74
  232. package/src/media/mdx/expose/expose.clear.en.mdx +3 -0
  233. package/src/media/mdx/expose/expose.clear.ru.mdx +3 -0
  234. package/src/media/mdx/expose/expose.detail.en.mdx +5 -0
  235. package/src/media/mdx/expose/{detail.ru.mdx → expose.detail.ru.mdx} +1 -3
  236. package/src/media/mdx/expose/expose.open.en.mdx +5 -0
  237. package/src/media/mdx/expose/expose.open.ru.mdx +5 -0
  238. package/src/media/mdx/expose/expose.selected.en.mdx +23 -0
  239. package/src/media/mdx/expose/expose.selected.ru.mdx +23 -0
  240. package/src/media/mdx/expose/{value.en.mdx → expose.value.en.mdx} +1 -3
  241. package/src/media/mdx/expose/{value.ru.mdx → expose.value.ru.mdx} +1 -3
  242. package/src/media/mdx/expose/wikiMdxExpose.ts +25 -31
  243. package/src/media/mdx/slot/caption.en.mdx +2 -7
  244. package/src/media/mdx/slot/caption.ru.mdx +2 -7
  245. package/src/media/mdx/slot/control.en.mdx +4 -5
  246. package/src/media/mdx/slot/control.ru.mdx +4 -5
  247. package/src/media/mdx/slot/default.en.mdx +2 -7
  248. package/src/media/mdx/slot/default.ru.mdx +2 -7
  249. package/src/media/mdx/slot/description.en.mdx +2 -7
  250. package/src/media/mdx/slot/description.ru.mdx +2 -7
  251. package/src/media/mdx/slot/footer.en.mdx +4 -5
  252. package/src/media/mdx/slot/footer.ru.mdx +4 -5
  253. package/src/media/mdx/slot/label.en.mdx +2 -8
  254. package/src/media/mdx/slot/label.ru.mdx +2 -8
  255. package/src/media/mdx/slot/prefix.en.mdx +1 -4
  256. package/src/media/mdx/slot/prefix.ru.mdx +1 -4
  257. package/src/media/mdx/slot/suffix.en.mdx +1 -4
  258. package/src/media/mdx/slot/suffix.ru.mdx +1 -4
  259. package/src/media/mdx/slot/wikiMdxSlot.ts +0 -6
  260. package/src/media/mdx/style/adaptive.en.mdx +6 -16
  261. package/src/media/mdx/style/adaptive.ru.mdx +6 -16
  262. package/src/media/mdx/style/asPalette.en.mdx +13 -5
  263. package/src/media/mdx/style/asPalette.ru.mdx +13 -5
  264. package/src/media/mdx/style/dir.en.mdx +14 -7
  265. package/src/media/mdx/style/dir.ru.mdx +14 -7
  266. package/src/media/mdx/style/isSkeleton.en.mdx +20 -6
  267. package/src/media/mdx/style/isSkeleton.ru.mdx +19 -5
  268. package/src/media/mdx/value/highlight.en.mdx +19 -12
  269. package/src/media/mdx/value/highlight.ru.mdx +19 -12
  270. package/src/media/mdx/value/labelNumber.en.mdx +39 -20
  271. package/src/media/mdx/value/labelNumber.ru.mdx +39 -20
  272. package/src/media/mdx/value/value.en.mdx +6 -12
  273. package/src/media/mdx/value/value.ru.mdx +6 -12
  274. package/src/media/styles/color.md +1 -0
  275. package/src/media/styles/en/about.mdx +79 -0
  276. package/src/media/styles/en/color.mdx +711 -0
  277. package/src/media/styles/en/content.mdx +29 -0
  278. package/src/media/styles/en/dimension.mdx +233 -0
  279. package/src/media/styles/en/dir.mdx +193 -0
  280. package/src/media/styles/en/flex.mdx +249 -0
  281. package/src/media/styles/en/font.mdx +171 -0
  282. package/src/media/styles/en/margin.mdx +115 -0
  283. package/src/media/styles/en/media.mdx +133 -0
  284. package/src/media/styles/en/padding.mdx +115 -0
  285. package/src/media/styles/en/position.mdx +183 -0
  286. package/src/media/styles/en/rules.mdx +117 -0
  287. package/src/media/styles/en/scrollbar.mdx +27 -0
  288. package/src/media/styles/en/selector.mdx +153 -0
  289. package/src/media/styles/en/transform.mdx +114 -0
  290. package/src/media/styles/ru/about.mdx +78 -0
  291. package/src/media/styles/ru/color.mdx +711 -0
  292. package/src/media/styles/ru/content.mdx +30 -0
  293. package/src/media/styles/ru/dimension.mdx +233 -0
  294. package/src/media/styles/ru/dir.mdx +193 -0
  295. package/src/media/styles/ru/flex.mdx +249 -0
  296. package/src/media/styles/ru/font.mdx +171 -0
  297. package/src/media/styles/ru/margin.mdx +115 -0
  298. package/src/media/styles/ru/media.mdx +133 -0
  299. package/src/media/styles/ru/padding.mdx +115 -0
  300. package/src/media/styles/ru/position.mdx +183 -0
  301. package/src/media/styles/ru/rules.mdx +117 -0
  302. package/src/media/styles/ru/scrollbar.mdx +27 -0
  303. package/src/media/styles/ru/selector.mdx +153 -0
  304. package/src/media/styles/ru/transform.mdx +114 -0
  305. package/src/styles/storybookStyle.scss +1 -0
  306. package/src/media/mdx/Bars/slot.actionBars.en.mdx +0 -12
  307. package/src/media/mdx/Bars/slot.actionBars.ru.mdx +0 -11
  308. package/src/media/mdx/Bars/slot.bars.en.mdx +0 -12
  309. package/src/media/mdx/Bars/slot.bars.ru.mdx +0 -11
  310. package/src/media/mdx/Cell/slot.body.en.mdx +0 -7
  311. package/src/media/mdx/Cell/slot.body.ru.mdx +0 -7
  312. package/src/media/mdx/Cell/slot.trailing.en.mdx +0 -7
  313. package/src/media/mdx/Cell/slot.trailing.ru.mdx +0 -7
  314. package/src/media/mdx/Field/slot.default.en.mdx +0 -9
  315. package/src/media/mdx/Field/slot.default.ru.mdx +0 -9
  316. package/src/media/mdx/Field/slot.leading.en.mdx +0 -10
  317. package/src/media/mdx/Field/slot.leading.ru.mdx +0 -10
  318. package/src/media/mdx/Field/slot.trailing.en.mdx +0 -10
  319. package/src/media/mdx/Field/slot.trailing.ru.mdx +0 -10
  320. package/src/media/mdx/FieldMessage/slot.helper.en.mdx +0 -12
  321. package/src/media/mdx/FieldMessage/slot.helper.ru.mdx +0 -12
  322. package/src/media/mdx/FieldMessage/slot.validation.en.mdx +0 -12
  323. package/src/media/mdx/FieldMessage/slot.validation.ru.mdx +0 -12
  324. package/src/media/mdx/Image/expose.data.en.mdx +0 -13
  325. package/src/media/mdx/Image/expose.data.ru.mdx +0 -13
  326. package/src/media/mdx/Image/expose.type.en.mdx +0 -21
  327. package/src/media/mdx/ListGroup/slot.head.en.mdx +0 -8
  328. package/src/media/mdx/ListGroup/slot.head.ru.mdx +0 -8
  329. package/src/media/mdx/ListGroup/slot.list.en.mdx +0 -8
  330. package/src/media/mdx/ListGroup/slot.list.ru.mdx +0 -8
  331. package/src/media/mdx/ListItem/slot.body.en.mdx +0 -7
  332. package/src/media/mdx/ListItem/slot.body.ru.mdx +0 -7
  333. package/src/media/mdx/ListItem/slot.trailing.en.mdx +0 -7
  334. package/src/media/mdx/ListItem/slot.trailing.ru.mdx +0 -7
  335. package/src/media/mdx/Menu/slot.contextBottom.en.mdx +0 -9
  336. package/src/media/mdx/Menu/slot.contextBottom.ru.mdx +0 -9
  337. package/src/media/mdx/Menu/slot.contextTop.en.mdx +0 -9
  338. package/src/media/mdx/Menu/slot.contextTop.ru.mdx +0 -9
  339. package/src/media/mdx/Menu/slot.control.en.mdx +0 -9
  340. package/src/media/mdx/Menu/slot.control.ru.mdx +0 -9
  341. package/src/media/mdx/Menu/slot.footer.en.mdx +0 -9
  342. package/src/media/mdx/Menu/slot.footer.ru.mdx +0 -9
  343. package/src/media/mdx/Menu/slot.title.en.mdx +0 -9
  344. package/src/media/mdx/Menu/slot.title.ru.mdx +0 -9
  345. package/src/media/mdx/MotionTransform/slot.body.en.mdx +0 -11
  346. package/src/media/mdx/MotionTransform/slot.body.ru.mdx +0 -11
  347. package/src/media/mdx/MotionTransform/slot.head.en.mdx +0 -11
  348. package/src/media/mdx/MotionTransform/slot.head.ru.mdx +0 -11
  349. package/src/media/mdx/MotionTransform/slot.params.en.mdx +0 -61
  350. package/src/media/mdx/MotionTransform/slot.params.ru.mdx +0 -61
  351. package/src/media/mdx/Scrollbar/event.bottom.en.mdx +0 -12
  352. package/src/media/mdx/Scrollbar/event.bottom.ru.mdx +0 -12
  353. package/src/media/mdx/Scrollbar/event.edge.en.mdx +0 -14
  354. package/src/media/mdx/Scrollbar/event.edge.ru.mdx +0 -14
  355. package/src/media/mdx/Scrollbar/event.leaveBottom.en.mdx +0 -11
  356. package/src/media/mdx/Scrollbar/event.leaveBottom.ru.mdx +0 -11
  357. package/src/media/mdx/Scrollbar/event.leaveTop.en.mdx +0 -11
  358. package/src/media/mdx/Scrollbar/event.leaveTop.ru.mdx +0 -11
  359. package/src/media/mdx/Scrollbar/event.reachBottom.en.mdx +0 -11
  360. package/src/media/mdx/Scrollbar/event.reachBottom.ru.mdx +0 -11
  361. package/src/media/mdx/Scrollbar/event.reachTop.en.mdx +0 -11
  362. package/src/media/mdx/Scrollbar/event.reachTop.ru.mdx +0 -11
  363. package/src/media/mdx/Scrollbar/event.top.en.mdx +0 -12
  364. package/src/media/mdx/Scrollbar/event.top.ru.mdx +0 -12
  365. package/src/media/mdx/Window/expose.control.en.mdx +0 -15
  366. package/src/media/mdx/Window/expose.control.ru.mdx +0 -15
  367. package/src/media/mdx/Window/expose.id.en.mdx +0 -7
  368. package/src/media/mdx/Window/expose.id.ru.mdx +0 -7
  369. package/src/media/mdx/Window/expose.open.en.mdx +0 -7
  370. package/src/media/mdx/Window/expose.open.ru.mdx +0 -7
  371. package/src/media/mdx/Window/expose.setOpen.en.mdx +0 -7
  372. package/src/media/mdx/Window/expose.setOpen.ru.mdx +0 -7
  373. package/src/media/mdx/Window/expose.toClose.en.mdx +0 -7
  374. package/src/media/mdx/Window/expose.toClose.ru.mdx +0 -7
  375. package/src/media/mdx/Window/expose.toOpen.en.mdx +0 -7
  376. package/src/media/mdx/Window/expose.toOpen.ru.mdx +0 -7
  377. package/src/media/mdx/Window/expose.toggle.en.mdx +0 -7
  378. package/src/media/mdx/Window/expose.toggle.ru.mdx +0 -7
  379. package/src/media/mdx/event/bars.en.mdx +0 -17
  380. package/src/media/mdx/event/bars.ru.mdx +0 -14
  381. package/src/media/mdx/event/barsBack.en.mdx +0 -14
  382. package/src/media/mdx/event/barsBack.ru.mdx +0 -16
  383. package/src/media/mdx/event/barsLite.en.mdx +0 -14
  384. package/src/media/mdx/event/barsLite.ru.mdx +0 -14
  385. package/src/media/mdx/event/click.en.mdx +0 -18
  386. package/src/media/mdx/event/click.ru.mdx +0 -18
  387. package/src/media/mdx/event/clickLite.en.mdx +0 -18
  388. package/src/media/mdx/event/clickLite.ru.mdx +0 -18
  389. package/src/media/mdx/event/scrollbarBottom.en.mdx +0 -13
  390. package/src/media/mdx/event/scrollbarBottom.ru.mdx +0 -13
  391. package/src/media/mdx/event/scrollbarEdge.en.mdx +0 -15
  392. package/src/media/mdx/event/scrollbarEdge.ru.mdx +0 -15
  393. package/src/media/mdx/event/scrollbarLeaveBottom.en.mdx +0 -12
  394. package/src/media/mdx/event/scrollbarLeaveBottom.ru.mdx +0 -12
  395. package/src/media/mdx/event/scrollbarLeaveTop.en.mdx +0 -12
  396. package/src/media/mdx/event/scrollbarLeaveTop.ru.mdx +0 -12
  397. package/src/media/mdx/event/scrollbarReachBottom.en.mdx +0 -12
  398. package/src/media/mdx/event/scrollbarReachBottom.ru.mdx +0 -12
  399. package/src/media/mdx/event/scrollbarReachTop.en.mdx +0 -12
  400. package/src/media/mdx/event/scrollbarReachTop.ru.mdx +0 -12
  401. package/src/media/mdx/event/scrollbarTop.en.mdx +0 -13
  402. package/src/media/mdx/event/scrollbarTop.ru.mdx +0 -13
  403. package/src/media/mdx/event/window.en.mdx +0 -20
  404. package/src/media/mdx/event/window.ru.mdx +0 -20
  405. package/src/media/mdx/expose/detail.en.mdx +0 -7
  406. package/src/media/mdx/expose/isSelected.en.mdx +0 -8
  407. package/src/media/mdx/expose/isSelected.ru.mdx +0 -8
  408. package/src/media/mdx/expose/selectedList.en.mdx +0 -7
  409. package/src/media/mdx/expose/selectedList.ru.mdx +0 -7
  410. package/src/media/mdx/expose/selectedNames.en.mdx +0 -7
  411. package/src/media/mdx/expose/selectedNames.ru.mdx +0 -7
  412. package/src/media/mdx/expose/selectedValues.en.mdx +0 -8
  413. package/src/media/mdx/expose/selectedValues.ru.mdx +0 -8
  414. package/src/media/mdx/slot/title.en.mdx +0 -9
  415. package/src/media/mdx/slot/title.ru.mdx +0 -9
@@ -1,22 +1,66 @@
1
- FieldMessage — компонент для отображения вспомогательных и валидационных сообщений под полями формы.
1
+ Компонент для отображения вспомогательных и валидационных сообщений под полями формы.
2
2
 
3
- ### Назначение
3
+ FieldMessage централизует управление текстовыми подсказками и сообщениями об ошибках в формах. Компонент автоматически определяет приоритет отображения (ошибки валидации выше подсказок), поддерживает принудительное показ через forceShow и интегрируется с полями ввода и счетчиками символов. Предоставляет гибкую систему слотов для кастомизации и работает как со статическими, так и с реактивными значениями.
4
4
 
5
- - **Вспомогательное сообщение** — Подсказка пользователю под полем
6
- - **Сообщение валидации** — Текст ошибки при некорректном вводе
7
- - **Принудительное отображение** — Управление показом через свойство forceShow
8
- - **Автоматическая видимость** — Умное управление отображением
5
+ **Основные возможности:**
9
6
 
10
- ### Основные возможности
7
+ - Два типа сообщений: вспомогательное (helper) и валидационное (validation)
8
+ - Приоритет сообщений — валидационное сообщение перекрывает вспомогательное
9
+ - Умная видимость — автоматическая логика отображения на основе переданных значений
10
+ - Принудительное отображение через свойство forceShow
11
+ - Гибкие источники — поддержка статических и реактивных значений
12
+ - Интеграция с FieldCounter для комплексных форм
13
+ - Настраиваемый рендеринг через систему дизайна и слоты
11
14
 
12
- - **Приоритет сообщений** — Сообщение об ошибке имеет приоритет над подсказкой
13
- - **Гибкость источников** — Поддержка статических и реактивных значений
14
- - **Совместимость** — Используется с полями ввода и счетчиком символов
15
- - **Настраиваемый вывод** — Через дизайн‑систему и атрибуты компонента
15
+ **Типичные сценарии использования:**
16
16
 
17
- ### Интеграция
17
+ - Вспомогательные подсказки под полями ввода
18
+ - Отображение ошибок валидации в формах
19
+ - Динамические сообщения с реактивным контентом
20
+ - Комплексные формы с счетчиками и валидацией
18
21
 
19
- Используйте FieldMessage вместе с полями ввода для вывода подсказок и ошибок, а также в сочетании с FieldCounter для информативных форм.
22
+ ```html
23
+ <script setup>
24
+ import { ref } from 'vue'
25
+ import { D1FieldMessage } from '@dxtmisha/d1'
20
26
 
21
- > Компонент фокусируется на отображении текстовых сообщений и должен использоваться совместно с контролами ввода.
27
+ const validationError = ref('')
22
28
 
29
+ const validateInput = (value) => {
30
+ if (value.length < 3) {
31
+ validationError.value = 'Минимум 3 символа'
32
+ } else {
33
+ validationError.value = ''
34
+ }
35
+ }
36
+ </script>
37
+
38
+ <template>
39
+ <!-- Вспомогательное сообщение -->
40
+ <D1FieldMessage helper="Введите ваше имя" />
41
+
42
+ <!-- Сообщение валидации -->
43
+ <D1FieldMessage
44
+ helper="Минимум 3 символа"
45
+ :validation="validationError"
46
+ />
47
+
48
+ <!-- Принудительное отображение -->
49
+ <D1FieldMessage
50
+ helper="Всегда видимое сообщение"
51
+ forceShow
52
+ />
53
+
54
+ <!-- С кастомным контентом через слоты -->
55
+ <D1FieldMessage>
56
+ <template #helper>
57
+ <span class="custom-hint">💡 Подсказка</span>
58
+ </template>
59
+ <template #validation>
60
+ <span class="custom-error">⚠️ Ошибка</span>
61
+ </template>
62
+ </D1FieldMessage>
63
+ </template>
64
+ ```
65
+
66
+ > Компонент фокусируется на текстовых сообщениях и должен использоваться совместно с элементами управления вводом.
@@ -0,0 +1,45 @@
1
+ ### `helper`
2
+
3
+ Slot for placing helper message. Displays only when validation message is absent.
4
+
5
+ **Parameters:**
6
+ - `props: FieldMessageSlot` — object with message data
7
+
8
+ ### `validation`
9
+
10
+ Slot for placing validation message. Has priority over helper message.
11
+
12
+ **Parameters:**
13
+ - `props: FieldMessageSlot` — object with message data
14
+
15
+ ## FieldMessageSlot
16
+
17
+ `FieldMessageSlot` — object passed to FieldMessage component slots, containing data for displaying messages.
18
+
19
+ ### Type Structure
20
+
21
+ ```typescript
22
+ type FieldMessageSlot = {
23
+ /** Current displayed message */
24
+ message?: string
25
+
26
+ /** Helper message text */
27
+ helperMessage?: string
28
+
29
+ /** Validation message text */
30
+ validationMessage?: string
31
+ }
32
+ ```
33
+
34
+ ### Properties
35
+
36
+ - **`message`** — current message to display (validation or helper, depending on active slot)
37
+ - **`helperMessage`** — helper message text from component property
38
+ - **`validationMessage`** — validation message text from component property
39
+
40
+ ### Display Priority
41
+
42
+ Component shows only one slot at a time:
43
+
44
+ 1. **Validation** — if `validationMessage` is provided or `validation` slot is defined
45
+ 2. **Helper** — if validation is absent, but `helperMessage` is provided or `helper` slot is defined
@@ -0,0 +1,45 @@
1
+ ### `helper`
2
+
3
+ Слот для размещения вспомогательного сообщения. Отображается только когда отсутствует сообщение валидации.
4
+
5
+ **Параметры:**
6
+ - `props: FieldMessageSlot` — объект с данными сообщений
7
+
8
+ ### `validation`
9
+
10
+ Слот для размещения сообщения валидации. Имеет приоритет над вспомогательным сообщением.
11
+
12
+ **Параметры:**
13
+ - `props: FieldMessageSlot` — объект с данными сообщений
14
+
15
+ ## FieldMessageSlot
16
+
17
+ `FieldMessageSlot` — объект, передаваемый в слоты компонента FieldMessage, содержащий данные для отображения сообщений.
18
+
19
+ ### Структура типа
20
+
21
+ ```typescript
22
+ type FieldMessageSlot = {
23
+ /** Текущее отображаемое сообщение */
24
+ message?: string
25
+
26
+ /** Текст вспомогательного сообщения */
27
+ helperMessage?: string
28
+
29
+ /** Текст сообщения валидации */
30
+ validationMessage?: string
31
+ }
32
+ ```
33
+
34
+ ### Свойства
35
+
36
+ - **`message`** — текущее сообщение для отображения (validation или helper, в зависимости от активного слота)
37
+ - **`helperMessage`** — текст вспомогательного сообщения из свойства компонента
38
+ - **`validationMessage`** — текст сообщения валидации из свойства компонента
39
+
40
+ ### Приоритет отображения
41
+
42
+ Компонент показывает только один слот за раз:
43
+
44
+ 1. **Validation** — если передано `validationMessage` или определён слот `validation`
45
+ 2. **Helper** — если validation отсутствует, но передано `helperMessage` или определён слот `helper`
@@ -2,10 +2,8 @@ import type { StorybookComponentsMdxItem } from '../../../types/storybookTypes'
2
2
 
3
3
  import fieldMessageEn from './fieldMessage.en.mdx'
4
4
  import fieldMessageRu from './fieldMessage.ru.mdx'
5
- import slotHelperEn from './slot.helper.en.mdx'
6
- import slotHelperRu from './slot.helper.ru.mdx'
7
- import slotValidationEn from './slot.validation.en.mdx'
8
- import slotValidationRu from './slot.validation.ru.mdx'
5
+ import slotsEn from './slots.en.mdx'
6
+ import slotsRu from './slots.ru.mdx'
9
7
 
10
8
  /**
11
9
  * MDX files for FieldMessage component
@@ -15,17 +13,13 @@ import slotValidationRu from './slot.validation.ru.mdx'
15
13
  export const wikiMdxFieldMessage: StorybookComponentsMdxItem = {
16
14
  name: 'FieldMessage',
17
15
  descriptions: {
18
- 'fieldMessage': {
16
+ fieldMessage: {
19
17
  en: fieldMessageEn,
20
18
  ru: fieldMessageRu
21
19
  },
22
- 'slot.helper': {
23
- en: slotHelperEn,
24
- ru: slotHelperRu
25
- },
26
- 'slot.validation': {
27
- en: slotValidationEn,
28
- ru: slotValidationRu
20
+ slots: {
21
+ en: slotsEn,
22
+ ru: slotsRu
29
23
  }
30
24
  }
31
25
  }
@@ -1,13 +1,5 @@
1
1
  ### `isActive`
2
2
 
3
- Computed property that determines whether the additional icon is active.
3
+ Computed state indicating whether the alternative representation is active (when both `active` and `iconActive` are set).
4
4
 
5
- ```ts
6
- readonly isActive: ComputedRef<boolean>
7
- ```
8
-
9
- Returns `true` only when both conditions are met:
10
- - The `active` property is set to `true`
11
- - The `iconActive` property is defined (not empty)
12
-
13
- This property is used internally by the component to control the display of primary and additional icons.
5
+ **Type:** `ComputedRef<boolean>`
@@ -1,13 +1,5 @@
1
1
  ### `isActive`
2
2
 
3
- Вычисляемое свойство, которое определяет, активна ли дополнительная иконка.
3
+ Вычисляемое состояние, указывающее активно ли альтернативное представление (когда одновременно установлены `active` и `iconActive`).
4
4
 
5
- ```ts
6
- readonly isActive: ComputedRef<boolean>
7
- ```
8
-
9
- Возвращает `true` только когда выполняются оба условия:
10
- - Свойство `active` установлено в `true`
11
- - Свойство `iconActive` задано (не пустое)
12
-
13
- Это свойство используется внутри компонента для управления отображением основной и дополнительной иконок.
5
+ **Тип:** `ComputedRef<boolean>`
@@ -1,6 +1,24 @@
1
1
  ## Icon State Management
2
2
 
3
- The `icon`, `iconActive`, and `active` properties control the display of the icon based on its state. This allows for the creation of dynamic and interactive elements.
3
+ A component for displaying icons with support for active state, rotation, loading, and skeleton integration.
4
+
5
+ Icon provides a unified interface for working with icons in the design system, supporting both the main icon and an alternative for the active state. The component automatically manages switching between icons, handles loading events, and integrates with the skeleton system to display loading states.
6
+
7
+ **Key Features:**
8
+
9
+ - Display of main and active icons with smooth transitions
10
+ - Icon rotation at a specified angle
11
+ - Disabled and hide states for visibility control
12
+ - Image loading events for icons
13
+ - Integration with Skeleton for loading states
14
+ - Support within other components (Button, Cell, Chip, Field)
15
+
16
+ **Typical Use Cases:**
17
+
18
+ - Icons in buttons and navigation elements
19
+ - Interactive icons with state changes
20
+ - State indicators in forms and lists
21
+ - Decorative interface elements with animation
4
22
 
5
23
  ### Properties
6
24
 
@@ -23,21 +41,37 @@ The `icon`, `iconActive`, and `active` properties control the display of the ico
23
41
  ### Usage Example
24
42
 
25
43
  ```html
26
- <!-- Normal icon -->
27
- <Icon icon="home" />
44
+ <script setup>
45
+ import { ref } from 'vue'
46
+ import { D1Icon } from '@dxtmisha/d1'
28
47
 
29
- <!-- Active icon -->
30
- <!-- `favorite` will be displayed because active=true -->
31
- <Icon icon="favorite_border" iconActive="favorite" :active="true" />
48
+ const isActive = ref(false)
49
+ </script>
32
50
 
33
- <!-- Dynamic state toggle -->
34
51
  <template>
35
- <Icon
52
+ <!-- Normal icon -->
53
+ <D1Icon icon="home" />
54
+
55
+ <!-- Active icon -->
56
+ <!-- `favorite` will be displayed because active=true -->
57
+ <D1Icon icon="favorite_border" icon-active="favorite" :active="true" />
58
+
59
+ <!-- Dynamic state toggle -->
60
+ <D1Icon
36
61
  icon="visibility"
37
- iconActive="visibility_off"
62
+ icon-active="visibility_off"
38
63
  :active="isVisible"
39
64
  @click="isVisible = !isVisible"
40
65
  />
66
+
67
+ <D1Icon
68
+ icon="home"
69
+ icon-active="favorite"
70
+ :active="isActive"
71
+ turn="90"
72
+ @load="onIconLoad"
73
+ />
41
74
  </template>
42
75
  ```
43
76
 
77
+ > The Icon component can be used both standalone and as part of other UI components through the `icon`, `icon-trailing`, and `icon-active` properties.
@@ -1,43 +1,42 @@
1
- ## Управление состоянием иконки
1
+ ## Icon
2
2
 
3
- Свойства `icon`, `iconActive` и `active` отвечают за управление отображением иконки в зависимости от её состояния. Это позволяет создавать динамичные и интерактивные элементы.
3
+ Компонент для отображения иконок с поддержкой активного состояния, поворота, загрузки и интеграции со скелетоном.
4
4
 
5
- ### Свойства
5
+ Icon предоставляет унифицированный интерфейс для работы с иконками в дизайн-системе, поддерживая как основную иконку, так и альтернативную для активного состояния. Компонент автоматически управляет переключением между иконками, обрабатывает события загрузки и интегрируется с системой скелетонов для отображения состояния загрузки.
6
6
 
7
- - **`icon`** — Основная иконка, отображаемая по умолчанию.
8
- - **`iconActive`** — Иконка, которая отображается, когда компонент находится в активном состоянии (`active` = `true`).
9
- - **`active`** — Булево свойство, которое переключает состояние компонента между обычным и активным.
7
+ **Основные возможности:**
10
8
 
11
- ### Описание
9
+ - Отображение основной и активной иконки с плавным переключением
10
+ - Поворот иконки на заданный угол
11
+ - Состояния disabled и hide для управления видимостью
12
+ - События загрузки изображений иконок
13
+ - Интеграция со Skeleton для состояний загрузки
14
+ - Поддержка в составе других компонентов (Button, Cell, Chip, Field)
12
15
 
13
- - Свойство `icon` является основным и обязательным для отображения иконки.
14
- - Если `iconActive` не задано, то при изменении состояния `active` визуально ничего не изменится.
15
- - Когда `active` установлено в `true`, компонент будет пытаться отобразить иконку, указанную в `iconActive`.
16
- - Свойство `active` можно использовать для создания переключателей, индикаторов и других интерактивных элементов.
16
+ **Типичные сценарии использования:**
17
17
 
18
- ### Рекомендации
19
-
20
- - Используйте `iconActive` для обеспечения визуальной обратной связи при взаимодействии с пользователем (например, при нажатии или выборе).
21
- - Убедитесь, что `icon` и `iconActive` достаточно различны визуально, чтобы пользователь мог легко определить изменение состояния.
22
-
23
- ### Пример использования
18
+ - Иконки в кнопках и навигационных элементах
19
+ - Интерактивные иконки с изменением состояния
20
+ - Индикаторы состояния в формах и списках
21
+ - Декоративные элементы интерфейса с анимацией
24
22
 
25
23
  ```html
26
- <!-- Обычная иконка -->
27
- <Icon icon="home" />
24
+ <script setup>
25
+ import { ref } from 'vue'
26
+ import { D1Icon } from '@dxtmisha/d1'
28
27
 
29
- <!-- Активная иконка -->
30
- <!-- Отобразится `favorite`, так как active=true -->
31
- <Icon icon="favorite_border" iconActive="favorite" :active="true" />
28
+ const isActive = ref(false)
29
+ </script>
32
30
 
33
- <!-- Динамическое переключение состояния -->
34
31
  <template>
35
- <Icon
36
- icon="visibility"
37
- iconActive="visibility_off"
38
- :active="isVisible"
39
- @click="isVisible = !isVisible"
32
+ <D1Icon
33
+ icon="home"
34
+ icon-active="favorite"
35
+ :active="isActive"
36
+ turn="90"
37
+ @load="onIconLoad"
40
38
  />
41
39
  </template>
42
40
  ```
43
41
 
42
+ > Компонент Icon может использоваться как самостоятельно, так и в составе других UI-компонентов через свойства `icon`, `icon-trailing` и `icon-active`.
@@ -1,32 +1,75 @@
1
- ## Adaptive scaling and related properties
1
+ ## Adaptive scaling
2
2
 
3
- ### Description
3
+ The `adaptive`, `adaptiveGroup`, `adaptiveAlways`, `objectWidth`, and `objectHeight` properties control automatic image scaling to ensure visual consistency of physical object sizes across different images.
4
4
 
5
- The `adaptive` property enables automatic scaling and alignment of images. For correct operation, it is recommended to use it together with additional properties that allow you to precisely control the behavior and display of the image.
5
+ **Properties:**
6
6
 
7
- ### Properties
7
+ - `adaptive` — enables adaptive scaling mode
8
+ - `adaptiveGroup` — group name for scale synchronization (default `'basic'`)
9
+ - `objectWidth` — physical width of the object in the image in millimeters
10
+ - `objectHeight` — physical height of the object in the image in millimeters
11
+ - `adaptiveAlways` — perform calculations even for invisible elements
8
12
 
9
- - **adaptive** Enables adaptive scaling mode for the image relative to other elements with the same `adaptive-group`.
10
- - **object-width** — The physical width of the object in the image (in millimeters, pixels, or other units). Used for scale calculation.
11
- - **object-height** — The physical height of the object in the image. Can be used instead of or together with `object-width`.
12
- - **adaptive-group** — Adaptivity group. Elements with the same value of this property will be scaled proportionally to each other.
13
- - **adaptive-always** — If specified, scaling and calculations will always be performed, even if the element is hidden off-screen.
13
+ Properties work together to ensure proportional display of images with objects of different physical sizes. When `adaptive` is activated, the component starts tracking element dimensions and comparing them with other images in the same group, automatically selecting the optimal scale for each element.
14
14
 
15
- ### Recommendations
15
+ The `objectWidth` or `objectHeight` properties specify the real physical dimensions of the object in the image in millimeters. These values are necessary for calculating the scaling coefficient — the component uses them to determine how much to enlarge or reduce the image so that objects in different images appear the same size. It is sufficient to specify only one property — either width or height.
16
16
 
17
- - Always specify at least one of the parameters: `object-width` or `object-height` for correct adaptivity.
18
- - Use `adaptive-group` if you need to synchronize the scale of several images.
19
- - Use `adaptive-always` only when necessary to avoid unnecessary calculations.
17
+ The component automatically determines which axis (horizontal or vertical) to scale on, based on available dimensions and image proportions. If `objectWidth` is specified, scaling will occur horizontally, if `objectHeight` vertically. This allows flexible work with images of different orientations.
20
18
 
21
- ### Usage example
19
+ Elements with the same `adaptiveGroup` value scale synchronously, ensuring consistent visual object sizes across all images in the group. This is especially useful when displaying product galleries or comparison tables where maintaining visual size correspondence is important.
20
+
21
+ For performance optimization, scaling calculations are performed only for visible elements within the viewport plus a small margin. If an element is outside the visible area, calculations are paused until the element appears on screen. The `adaptiveAlways` property disables this optimization and forces the component to constantly recalculate the scale regardless of element visibility.
22
22
 
23
23
  ```html
24
- <!-- Adaptive image with specified object width -->
25
- <Image adaptive object-width="63.5" />
24
+ <script setup>
25
+ import { ref } from 'vue'
26
+
27
+ const phone1 = ref('/images/phone-model-a.png')
28
+ const phone2 = ref('/images/phone-model-b.png')
29
+ const phone3 = ref('/images/phone-model-c.png')
30
+ </script>
31
+
32
+ <template>
33
+ <!-- Basic usage with object width -->
34
+ <Image
35
+ :value="phone1"
36
+ adaptive
37
+ object-width="76.2"
38
+ />
39
+
40
+ <!-- Multiple images in one group -->
41
+ <Image
42
+ :value="phone1"
43
+ adaptive
44
+ adaptive-group="phones"
45
+ object-width="76.2"
46
+ />
47
+ <Image
48
+ :value="phone2"
49
+ adaptive
50
+ adaptive-group="phones"
51
+ object-width="71.9"
52
+ />
53
+ <Image
54
+ :value="phone3"
55
+ adaptive
56
+ adaptive-group="phones"
57
+ object-width="129.9"
58
+ />
26
59
 
27
- <!-- Adaptive image with height and group -->
28
- <Image adaptive object-height="40" adaptive-group="products" />
60
+ <!-- With height instead of width -->
61
+ <Image
62
+ adaptive
63
+ object-height="154.8"
64
+ :value="phone1"
65
+ />
29
66
 
30
- <!-- Constant scaling regardless of visibility -->
31
- <Image adaptive object-width="50" adaptive-always />
67
+ <!-- Constant scaling -->
68
+ <Image
69
+ adaptive
70
+ adaptive-always
71
+ object-width="76.2"
72
+ :value="phone1"
73
+ />
74
+ </template>
32
75
  ```
@@ -1,38 +1,75 @@
1
- ## Адаптивное масштабирование и связанные параметры
1
+ ## Адаптивное масштабирование
2
2
 
3
- Свойство `adaptive` включает режим автоматического масштабирования и выравнивания изображений. Для корректной работы рекомендуется использовать его совместно с дополнительными свойствами, которые позволяют точно управлять поведением и отображением изображения.
3
+ Свойства `adaptive`, `adaptiveGroup`, `adaptiveAlways`, `objectWidth` и `objectHeight` управляют автоматическим масштабированием изображений для обеспечения визуального соответствия физических размеров объектов на разных изображениях.
4
4
 
5
- ### Свойства
5
+ **Свойства:**
6
6
 
7
- - **adaptive**Включает режим адаптивного масштабирования изображения относительно других элементов с тем же `adaptive-group`.
8
- - **object-width**Физическая ширина объекта на изображении (в миллиметрах, пикселях или другой единице). Используется для расчёта масштаба.
9
- - **object-height**Физическая высота объекта на изображении. Может использоваться вместо или вместе с `object-width`.
10
- - **adaptive-group**Группа адаптивности. Элементы с одинаковым значением этого свойства будут масштабироваться пропорционально друг другу.
11
- - **adaptive-always**Если указано, масштабирование и расчёты будут выполняться всегда, даже если элемент скрыт за пределами экрана.
7
+ - `adaptive`включает режим адаптивного масштабирования
8
+ - `adaptiveGroup`название группы для синхронизации масштаба (по умолчанию `'basic'`)
9
+ - `objectWidth`физическая ширина объекта на изображении в миллиметрах
10
+ - `objectHeight`физическая высота объекта на изображении в миллиметрах
11
+ - `adaptiveAlways`выполнять расчёты даже для невидимых элементов
12
12
 
13
- ### Описание
13
+ Свойства работают совместно для обеспечения пропорционального отображения изображений с объектами разных физических размеров. При активации `adaptive` компонент начинает отслеживать размеры элемента и сравнивать их с другими изображениями в той же группе, автоматически подбирая оптимальный масштаб для каждого элемента.
14
14
 
15
- - Свойство `adaptive` позволяет автоматически подбирать масштаб изображения, чтобы оно выглядело пропорционально с другими элементами в той же группе.
16
- - `object-width` и `object-height` задают реальные размеры объекта на изображении, что необходимо для корректного расчёта масштаба.
17
- - `adaptive-group` объединяет элементы в одну группу для совместного масштабирования.
18
- - `adaptive-always` обеспечивает постоянные вычисления масштаба, даже если элемент временно скрыт.
19
- - Все свойства могут использоваться совместно для достижения нужного эффекта.
15
+ Свойства `objectWidth` или `objectHeight` задают реальные физические размеры объекта на изображении в миллиметрах. Эти значения необходимы для расчёта коэффициента масштабирования — компонент использует их для определения, во сколько раз нужно увеличить или уменьшить изображение, чтобы объекты на разных изображениях выглядели одинакового размера. Достаточно указать только одно из свойств — либо ширину, либо высоту.
20
16
 
21
- ### Рекомендации
17
+ Компонент автоматически определяет, по какой оси (горизонтальной или вертикальной) производить масштабирование, основываясь на доступных размерах и пропорциях изображения. Если указан `objectWidth`, масштабирование будет происходить по горизонтали, если `objectHeight` — по вертикали. Это позволяет гибко работать с изображениями разных ориентаций.
22
18
 
23
- - Всегда указывайте хотя бы один из параметров: `object-width` или `object-height` для корректной работы адаптивности.
24
- - Используйте `adaptive-group`, если требуется синхронизировать масштаб нескольких изображений.
25
- - Применяйте `adaptive-always` только при необходимости, чтобы избежать лишних вычислений.
19
+ Элементы с одинаковым значением `adaptiveGroup` масштабируются синхронно, обеспечивая одинаковый визуальный размер объектов на всех изображениях группы. Это особенно полезно при отображении галерей продуктов или сравнительных таблиц, где важно сохранить визуальное соответствие размеров.
26
20
 
27
- ### Пример использования
21
+ Для оптимизации производительности расчёты масштабирования выполняются только для видимых элементов в пределах области просмотра (viewport) плюс небольшой запас. Если элемент находится за пределами видимой области, расчёты приостанавливаются до момента, когда элемент появится на экране. Свойство `adaptiveAlways` отключает эту оптимизацию и заставляет компонент постоянно пересчитывать масштаб независимо от видимости элемента.
28
22
 
29
23
  ```html
30
- <!-- Адаптивное изображение с указанием ширины объекта -->
31
- <Image adaptive object-width="63.5" />
24
+ <script setup>
25
+ import { ref } from 'vue'
32
26
 
33
- <!-- Адаптивное изображение с высотой и группой -->
34
- <Image adaptive object-height="40" adaptive-group="products" />
27
+ const phone1 = ref('/images/phone-model-a.png')
28
+ const phone2 = ref('/images/phone-model-b.png')
29
+ const phone3 = ref('/images/phone-model-c.png')
30
+ </script>
35
31
 
36
- <!-- Постоянное масштабирование вне зависимости от видимости -->
37
- <Image adaptive object-width="50" adaptive-always />
32
+ <template>
33
+ <!-- Базовое использование с шириной объекта -->
34
+ <Image
35
+ :value="phone1"
36
+ adaptive
37
+ object-width="76.2"
38
+ />
39
+
40
+ <!-- Несколько изображений в одной группе -->
41
+ <Image
42
+ :value="phone1"
43
+ adaptive
44
+ adaptive-group="phones"
45
+ object-width="76.2"
46
+ />
47
+ <Image
48
+ :value="phone2"
49
+ adaptive
50
+ adaptive-group="phones"
51
+ object-width="71.9"
52
+ />
53
+ <Image
54
+ :value="phone3"
55
+ adaptive
56
+ adaptive-group="phones"
57
+ object-width="129.9"
58
+ />
59
+
60
+ <!-- С высотой вместо ширины -->
61
+ <Image
62
+ adaptive
63
+ object-height="154.8"
64
+ :value="phone1"
65
+ />
66
+
67
+ <!-- Постоянное масштабирование -->
68
+ <Image
69
+ adaptive
70
+ adaptive-always
71
+ object-width="76.2"
72
+ :value="phone1"
73
+ />
74
+ </template>
38
75
  ```
@@ -1,4 +1,39 @@
1
1
  ### `load`
2
2
 
3
- Triggered after the image is loaded.
4
- The handler receives an object `ImageEventData` with image data and source type.
3
+ Event fires after the image is loaded.
4
+
5
+ **Parameters:**
6
+ - `image: ImageEventData` — object with image data
7
+
8
+ **ImageEventData structure:**
9
+ - `type: ImageTypeItem` — image type (`'image'`, `'icon'`, `'pdf'`, `'file'`, `'flag'`, `'color'`, etc.)
10
+ - `image: ImageEventItem` — image data (`ImageItem` object, URL string, or `undefined`)
11
+
12
+ **ImageItem structure (when image is an object):**
13
+ - `width: number` — image width
14
+ - `height: number` — image height
15
+ - `image: HTMLImageElement` — image DOM element
16
+ - `src: string` — image source (URL)
17
+
18
+ ```html
19
+ <script setup>
20
+ const handleLoad = (data) => {
21
+ console.log('Image type:', data.type)
22
+
23
+ if (typeof data.image === 'object' && data.image) {
24
+ console.log('Width:', data.image.width)
25
+ console.log('Height:', data.image.height)
26
+ console.log('URL:', data.image.src)
27
+ } else {
28
+ console.log('Image URL:', data.image)
29
+ }
30
+ }
31
+ </script>
32
+
33
+ <template>
34
+ <Image
35
+ src="/path/to/image.jpg"
36
+ @load="handleLoad"
37
+ />
38
+ </template>
39
+ ```