@dxtmisha/wiki 0.24.2 → 0.25.1

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 (623) hide show
  1. package/package.json +7 -7
  2. package/src/classes/WikiStorybookItem.ts +24 -0
  3. package/src/library.ts +7 -7
  4. package/src/media/descriptions/wikiDescriptions.ts +28 -0
  5. package/src/media/descriptions/wikiDescriptionsAccordion.ts +158 -0
  6. package/src/media/descriptions/wikiDescriptionsActionSheet.ts +211 -0
  7. package/src/media/descriptions/wikiDescriptionsActions.ts +161 -0
  8. package/src/media/descriptions/wikiDescriptionsAnchor.ts +42 -0
  9. package/src/media/descriptions/wikiDescriptionsArrow.ts +181 -0
  10. package/src/media/descriptions/wikiDescriptionsBars.ts +1 -3
  11. package/src/media/descriptions/wikiDescriptionsBlock.ts +97 -0
  12. package/src/media/descriptions/wikiDescriptionsButton.ts +0 -1
  13. package/src/media/descriptions/wikiDescriptionsCell.ts +3 -3
  14. package/src/media/descriptions/wikiDescriptionsChip.ts +0 -1
  15. package/src/media/descriptions/wikiDescriptionsChipGroup.ts +168 -0
  16. package/src/media/descriptions/wikiDescriptionsDialog.ts +182 -0
  17. package/src/media/descriptions/wikiDescriptionsField.ts +3 -4
  18. package/src/media/descriptions/wikiDescriptionsFieldCounter.ts +6 -6
  19. package/src/media/descriptions/wikiDescriptionsFieldMessage.ts +1 -2
  20. package/src/media/descriptions/wikiDescriptionsImage.ts +43 -8
  21. package/src/media/descriptions/wikiDescriptionsInput.ts +257 -0
  22. package/src/media/descriptions/wikiDescriptionsList.ts +1 -5
  23. package/src/media/descriptions/wikiDescriptionsListGroup.ts +2 -3
  24. package/src/media/descriptions/wikiDescriptionsListItem.ts +1 -3
  25. package/src/media/descriptions/wikiDescriptionsListMenu.ts +2 -9
  26. package/src/media/descriptions/wikiDescriptionsMask.ts +12 -0
  27. package/src/media/descriptions/wikiDescriptionsMenu.ts +126 -14
  28. package/src/media/descriptions/wikiDescriptionsModal.ts +145 -0
  29. package/src/media/descriptions/wikiDescriptionsMotionTransform.ts +4 -10
  30. package/src/media/descriptions/wikiDescriptionsScrollbar.ts +1 -7
  31. package/src/media/descriptions/wikiDescriptionsSelect.ts +209 -0
  32. package/src/media/descriptions/wikiDescriptionsSelectValue.ts +78 -0
  33. package/src/media/descriptions/wikiDescriptionsSkeleton.ts +1 -0
  34. package/src/media/descriptions/wikiDescriptionsTextareaAutosize.ts +50 -0
  35. package/src/media/descriptions/wikiDescriptionsTooltip.ts +89 -0
  36. package/src/media/descriptions/wikiDescriptionsWindow.ts +5 -22
  37. package/src/media/functional/en/broadcastMessage.mdx +307 -0
  38. package/src/media/functional/en/conversions.mdx +67 -0
  39. package/src/media/functional/en/dataUtils.mdx +25 -0
  40. package/src/media/functional/en/datetimeRef.mdx +1 -1
  41. package/src/media/functional/en/eventRef.mdx +1 -1
  42. package/src/media/functional/en/executionUtils.mdx +58 -0
  43. package/src/media/functional/en/geoFlagRef.mdx +1 -1
  44. package/src/media/functional/en/geoIntlRef.mdx +1 -1
  45. package/src/media/functional/en/geoRef.mdx +2 -2
  46. package/src/media/functional/en/meta.mdx +1206 -0
  47. package/src/media/functional/en/metaManager.mdx +376 -0
  48. package/src/media/functional/en/metaOg.mdx +694 -0
  49. package/src/media/functional/en/metaTwitter.mdx +853 -0
  50. package/src/media/functional/en/reactive.mdx +40 -0
  51. package/src/media/functional/en/refTypes.mdx +1 -1
  52. package/src/media/functional/en/useApiRef.mdx +5 -5
  53. package/src/media/functional/en/useMeta.mdx +431 -0
  54. package/src/media/functional/en/validationUtils.mdx +11 -0
  55. package/src/media/functional/ru/broadcastMessage.mdx +305 -0
  56. package/src/media/functional/ru/conversions.mdx +67 -0
  57. package/src/media/functional/ru/dataUtils.mdx +25 -0
  58. package/src/media/functional/ru/datetimeRef.mdx +2 -2
  59. package/src/media/functional/ru/eventRef.mdx +1 -1
  60. package/src/media/functional/ru/executionUtils.mdx +58 -0
  61. package/src/media/functional/ru/geoFlagRef.mdx +1 -1
  62. package/src/media/functional/ru/geoIntl.mdx +2 -2
  63. package/src/media/functional/ru/geoIntlRef.mdx +1 -1
  64. package/src/media/functional/ru/geoRef.mdx +2 -2
  65. package/src/media/functional/ru/listTypes.mdx +1 -1
  66. package/src/media/functional/ru/meta.mdx +1330 -0
  67. package/src/media/functional/ru/metaManager.mdx +376 -0
  68. package/src/media/functional/ru/metaOg.mdx +694 -0
  69. package/src/media/functional/ru/metaTwitter.mdx +853 -0
  70. package/src/media/functional/ru/reactive.mdx +40 -0
  71. package/src/media/functional/ru/refTypes.mdx +2 -2
  72. package/src/media/functional/ru/useApiRef.mdx +5 -5
  73. package/src/media/functional/ru/useMeta.mdx +431 -0
  74. package/src/media/functional/ru/validationUtils.mdx +11 -0
  75. package/src/media/mdx/Accordion/accordion.en.mdx +59 -0
  76. package/src/media/mdx/Accordion/accordion.ru.mdx +59 -0
  77. package/src/media/mdx/Accordion/slots.en.mdx +6 -0
  78. package/src/media/mdx/Accordion/slots.ru.mdx +6 -0
  79. package/src/media/mdx/Accordion/wikiMdxAccordion.ts +25 -0
  80. package/src/media/mdx/ActionSheet/actionSheet.en.mdx +61 -0
  81. package/src/media/mdx/ActionSheet/actionSheet.ru.mdx +61 -0
  82. package/src/media/mdx/ActionSheet/touchClose.en.mdx +21 -0
  83. package/src/media/mdx/ActionSheet/touchClose.ru.mdx +21 -0
  84. package/src/media/mdx/ActionSheet/wikiMdxActionSheet.ts +25 -0
  85. package/src/media/mdx/Actions/actions.en.mdx +48 -0
  86. package/src/media/mdx/Actions/actions.ru.mdx +48 -0
  87. package/src/media/mdx/Actions/flexible.en.mdx +19 -0
  88. package/src/media/mdx/Actions/flexible.ru.mdx +19 -0
  89. package/src/media/mdx/Actions/list.en.mdx +50 -0
  90. package/src/media/mdx/Actions/list.ru.mdx +50 -0
  91. package/src/media/mdx/Actions/wikiMdxActions.ts +31 -0
  92. package/src/media/mdx/Anchor/anchor.en.mdx +34 -0
  93. package/src/media/mdx/Anchor/anchor.ru.mdx +34 -0
  94. package/src/media/mdx/Anchor/expose.go.en.mdx +6 -0
  95. package/src/media/mdx/Anchor/expose.go.ru.mdx +6 -0
  96. package/src/media/mdx/Anchor/hide.en.mdx +28 -0
  97. package/src/media/mdx/Anchor/hide.ru.mdx +28 -0
  98. package/src/media/mdx/Anchor/isCopy.en.mdx +23 -0
  99. package/src/media/mdx/Anchor/isCopy.ru.mdx +23 -0
  100. package/src/media/mdx/Anchor/scroll.en.mdx +34 -0
  101. package/src/media/mdx/Anchor/scroll.ru.mdx +35 -0
  102. package/src/media/mdx/Anchor/wikiMdxAnchor.ts +43 -0
  103. package/src/media/mdx/Arrow/arrow.en.mdx +33 -0
  104. package/src/media/mdx/Arrow/arrow.ru.mdx +33 -0
  105. package/src/media/mdx/Arrow/wikiMdxArrow.ts +19 -0
  106. package/src/media/mdx/Badge/badge.en.mdx +85 -7
  107. package/src/media/mdx/Badge/badge.ru.mdx +85 -7
  108. package/src/media/mdx/Badge/dot.en.mdx +16 -12
  109. package/src/media/mdx/Badge/dot.ru.mdx +16 -12
  110. package/src/media/mdx/Badge/outline.en.mdx +12 -13
  111. package/src/media/mdx/Badge/outline.ru.mdx +12 -13
  112. package/src/media/mdx/Badge/primary.en.mdx +12 -12
  113. package/src/media/mdx/Badge/primary.ru.mdx +12 -12
  114. package/src/media/mdx/Badge/secondary.en.mdx +12 -13
  115. package/src/media/mdx/Badge/secondary.ru.mdx +12 -13
  116. package/src/media/mdx/Bars/action.en.mdx +72 -28
  117. package/src/media/mdx/Bars/action.ru.mdx +73 -29
  118. package/src/media/mdx/Bars/bars.en.mdx +90 -15
  119. package/src/media/mdx/Bars/bars.ru.mdx +91 -15
  120. package/src/media/mdx/Bars/slots.en.mdx +33 -0
  121. package/src/media/mdx/Bars/slots.ru.mdx +33 -0
  122. package/src/media/mdx/Bars/v-model.en.mdx +23 -14
  123. package/src/media/mdx/Bars/v-model.ru.mdx +23 -14
  124. package/src/media/mdx/Bars/wikiMdxBars.ts +5 -11
  125. package/src/media/mdx/Block/block.en.mdx +42 -0
  126. package/src/media/mdx/Block/block.ru.mdx +42 -0
  127. package/src/media/mdx/Block/wikiMdxBlock.ts +19 -0
  128. package/src/media/mdx/Button/button.en.mdx +89 -1
  129. package/src/media/mdx/Button/button.ru.mdx +89 -1
  130. package/src/media/mdx/Button/outline.en.mdx +12 -14
  131. package/src/media/mdx/Button/outline.ru.mdx +12 -14
  132. package/src/media/mdx/Button/primary.en.mdx +12 -19
  133. package/src/media/mdx/Button/primary.ru.mdx +12 -19
  134. package/src/media/mdx/Button/secondary.en.mdx +12 -17
  135. package/src/media/mdx/Button/secondary.ru.mdx +12 -17
  136. package/src/media/mdx/Button/text.en.mdx +12 -11
  137. package/src/media/mdx/Button/text.ru.mdx +12 -11
  138. package/src/media/mdx/Cell/cell.en.mdx +50 -9
  139. package/src/media/mdx/Cell/cell.ru.mdx +50 -9
  140. package/src/media/mdx/Cell/slots.en.mdx +82 -0
  141. package/src/media/mdx/Cell/slots.ru.mdx +83 -0
  142. package/src/media/mdx/Cell/wikiMdxCell.ts +6 -12
  143. package/src/media/mdx/Chip/assistive.en.mdx +12 -14
  144. package/src/media/mdx/Chip/assistive.ru.mdx +12 -14
  145. package/src/media/mdx/Chip/chip.en.mdx +69 -9
  146. package/src/media/mdx/Chip/chip.ru.mdx +69 -9
  147. package/src/media/mdx/Chip/input.en.mdx +12 -19
  148. package/src/media/mdx/Chip/input.ru.mdx +12 -19
  149. package/src/media/mdx/ChipGroup/chipGroup.en.mdx +51 -0
  150. package/src/media/mdx/ChipGroup/chipGroup.ru.mdx +51 -0
  151. package/src/media/mdx/ChipGroup/selected.en.mdx +50 -0
  152. package/src/media/mdx/ChipGroup/selected.ru.mdx +50 -0
  153. package/src/media/mdx/ChipGroup/wikiMdxChipGroup.ts +25 -0
  154. package/src/media/mdx/Dialog/buttons.en.mdx +45 -0
  155. package/src/media/mdx/Dialog/buttons.ru.mdx +45 -0
  156. package/src/media/mdx/Dialog/dialog.en.mdx +66 -0
  157. package/src/media/mdx/Dialog/dialog.ru.mdx +65 -0
  158. package/src/media/mdx/Dialog/events.en.mdx +63 -0
  159. package/src/media/mdx/Dialog/events.ru.mdx +63 -0
  160. package/src/media/mdx/Dialog/states.en.mdx +58 -0
  161. package/src/media/mdx/Dialog/states.ru.mdx +57 -0
  162. package/src/media/mdx/Dialog/wikiMdxDialog.ts +37 -0
  163. package/src/media/mdx/Field/arrows.en.mdx +83 -17
  164. package/src/media/mdx/Field/arrows.ru.mdx +83 -17
  165. package/src/media/mdx/Field/cancel.en.mdx +47 -10
  166. package/src/media/mdx/Field/cancel.ru.mdx +47 -10
  167. package/src/media/mdx/Field/field.en.mdx +45 -15
  168. package/src/media/mdx/Field/field.ru.mdx +45 -15
  169. package/src/media/mdx/Field/slots.en.mdx +138 -0
  170. package/src/media/mdx/Field/slots.ru.mdx +138 -0
  171. package/src/media/mdx/Field/value.en.mdx +49 -28
  172. package/src/media/mdx/Field/value.ru.mdx +49 -28
  173. package/src/media/mdx/Field/width.en.mdx +21 -19
  174. package/src/media/mdx/Field/width.ru.mdx +21 -19
  175. package/src/media/mdx/Field/wikiMdxField.ts +14 -26
  176. package/src/media/mdx/FieldCounter/fieldCounter.en.mdx +52 -14
  177. package/src/media/mdx/FieldCounter/fieldCounter.ru.mdx +55 -14
  178. package/src/media/mdx/FieldCounter/templates.en.mdx +26 -6
  179. package/src/media/mdx/FieldCounter/templates.ru.mdx +25 -5
  180. package/src/media/mdx/FieldLabel/fieldLabel.en.mdx +56 -14
  181. package/src/media/mdx/FieldLabel/fieldLabel.ru.mdx +56 -14
  182. package/src/media/mdx/FieldMessage/fieldMessage.en.mdx +58 -14
  183. package/src/media/mdx/FieldMessage/fieldMessage.ru.mdx +58 -14
  184. package/src/media/mdx/FieldMessage/slots.en.mdx +45 -0
  185. package/src/media/mdx/FieldMessage/slots.ru.mdx +45 -0
  186. package/src/media/mdx/FieldMessage/wikiMdxFieldMessage.ts +6 -12
  187. package/src/media/mdx/Icon/expose.isActive.en.mdx +2 -10
  188. package/src/media/mdx/Icon/expose.isActive.ru.mdx +2 -10
  189. package/src/media/mdx/Icon/icon.en.mdx +43 -9
  190. package/src/media/mdx/Icon/icon.ru.mdx +27 -28
  191. package/src/media/mdx/Image/adaptive.en.mdx +63 -20
  192. package/src/media/mdx/Image/adaptive.ru.mdx +62 -25
  193. package/src/media/mdx/Image/event.load.en.mdx +37 -2
  194. package/src/media/mdx/Image/event.load.ru.mdx +34 -7
  195. package/src/media/mdx/Image/{expose.type.ru.mdx → expose.en.mdx} +11 -1
  196. package/src/media/mdx/Image/expose.ru.mdx +31 -0
  197. package/src/media/mdx/Image/image.en.mdx +46 -0
  198. package/src/media/mdx/Image/image.ru.mdx +47 -0
  199. package/src/media/mdx/Image/img-tag.en.mdx +105 -0
  200. package/src/media/mdx/Image/img-tag.ru.mdx +105 -0
  201. package/src/media/mdx/Image/size.en.mdx +19 -19
  202. package/src/media/mdx/Image/size.ru.mdx +19 -23
  203. package/src/media/mdx/Image/value.en.mdx +10 -27
  204. package/src/media/mdx/Image/value.ru.mdx +10 -29
  205. package/src/media/mdx/Image/wikiMdxImage.ts +17 -11
  206. package/src/media/mdx/Input/currency.en.mdx +38 -0
  207. package/src/media/mdx/Input/currency.ru.mdx +38 -0
  208. package/src/media/mdx/Input/date.en.mdx +53 -0
  209. package/src/media/mdx/Input/date.ru.mdx +53 -0
  210. package/src/media/mdx/Input/input.en.mdx +143 -0
  211. package/src/media/mdx/Input/input.ru.mdx +71 -0
  212. package/src/media/mdx/Input/mask.en.mdx +30 -0
  213. package/src/media/mdx/Input/mask.ru.mdx +30 -0
  214. package/src/media/mdx/Input/number.en.mdx +41 -0
  215. package/src/media/mdx/Input/number.ru.mdx +41 -0
  216. package/src/media/mdx/Input/type.en.mdx +26 -0
  217. package/src/media/mdx/Input/type.ru.mdx +26 -0
  218. package/src/media/mdx/Input/wikiMdxInput.ts +49 -0
  219. package/src/media/mdx/List/event.close.en.mdx +5 -8
  220. package/src/media/mdx/List/event.close.ru.mdx +5 -8
  221. package/src/media/mdx/List/list.en.mdx +56 -14
  222. package/src/media/mdx/List/list.ru.mdx +56 -14
  223. package/src/media/mdx/List/lite.en.mdx +17 -12
  224. package/src/media/mdx/List/lite.ru.mdx +17 -12
  225. package/src/media/mdx/List/slot.html.en.mdx +72 -21
  226. package/src/media/mdx/List/slot.html.ru.mdx +72 -21
  227. package/src/media/mdx/ListGroup/listGroup.en.mdx +55 -1
  228. package/src/media/mdx/ListGroup/listGroup.ru.mdx +55 -1
  229. package/src/media/mdx/ListGroup/slots.en.mdx +10 -0
  230. package/src/media/mdx/ListGroup/slots.ru.mdx +10 -0
  231. package/src/media/mdx/ListGroup/wikiMdxListGroup.ts +6 -12
  232. package/src/media/mdx/ListItem/basic.en.mdx +47 -10
  233. package/src/media/mdx/ListItem/basic.ru.mdx +46 -9
  234. package/src/media/mdx/ListItem/fill.en.mdx +22 -8
  235. package/src/media/mdx/ListItem/fill.ru.mdx +22 -8
  236. package/src/media/mdx/ListItem/slots.en.mdx +7 -0
  237. package/src/media/mdx/ListItem/slots.ru.mdx +7 -0
  238. package/src/media/mdx/ListItem/wikiMdxListItem.ts +7 -13
  239. package/src/media/mdx/ListMenu/listMenu.en.mdx +62 -1
  240. package/src/media/mdx/ListMenu/listMenu.ru.mdx +62 -1
  241. package/src/media/mdx/Mask/basic.en.mdx +68 -16
  242. package/src/media/mdx/Mask/basic.ru.mdx +70 -11
  243. package/src/media/mdx/Mask/dateTypes.en.mdx +82 -68
  244. package/src/media/mdx/Mask/dateTypes.ru.mdx +82 -68
  245. package/src/media/mdx/Mask/expose.en.mdx +20 -0
  246. package/src/media/mdx/Mask/expose.ru.mdx +20 -0
  247. package/src/media/mdx/Mask/groupSave.en.mdx +13 -46
  248. package/src/media/mdx/Mask/groupSave.ru.mdx +13 -46
  249. package/src/media/mdx/Mask/mask.en.mdx +12 -66
  250. package/src/media/mdx/Mask/mask.ru.mdx +12 -66
  251. package/src/media/mdx/Mask/match.en.mdx +16 -24
  252. package/src/media/mdx/Mask/match.ru.mdx +16 -24
  253. package/src/media/mdx/Mask/numberTypes.en.mdx +64 -52
  254. package/src/media/mdx/Mask/numberTypes.ru.mdx +64 -52
  255. package/src/media/mdx/Mask/pattern.en.mdx +63 -75
  256. package/src/media/mdx/Mask/pattern.ru.mdx +63 -75
  257. package/src/media/mdx/Mask/special.en.mdx +174 -97
  258. package/src/media/mdx/Mask/special.ru.mdx +174 -97
  259. package/src/media/mdx/Mask/type.en.mdx +12 -36
  260. package/src/media/mdx/Mask/type.ru.mdx +11 -35
  261. package/src/media/mdx/Mask/visible.en.mdx +33 -41
  262. package/src/media/mdx/Mask/visible.ru.mdx +32 -40
  263. package/src/media/mdx/Mask/wikiMdxMask.ts +6 -0
  264. package/src/media/mdx/Menu/ajax.en.mdx +44 -51
  265. package/src/media/mdx/Menu/ajax.ru.mdx +44 -52
  266. package/src/media/mdx/Menu/event.updateValue.en.mdx +29 -0
  267. package/src/media/mdx/Menu/event.updateValue.ru.mdx +30 -0
  268. package/src/media/mdx/Menu/expose.navigation.en.mdx +12 -0
  269. package/src/media/mdx/Menu/expose.navigation.ru.mdx +12 -0
  270. package/src/media/mdx/Menu/menu.en.mdx +63 -1
  271. package/src/media/mdx/Menu/menu.ru.mdx +64 -1
  272. package/src/media/mdx/Menu/navigation.en.mdx +56 -0
  273. package/src/media/mdx/Menu/navigation.ru.mdx +56 -0
  274. package/src/media/mdx/Menu/slots.control.en.mdx +65 -0
  275. package/src/media/mdx/Menu/slots.control.ru.mdx +65 -0
  276. package/src/media/mdx/Menu/slots.en.mdx +100 -0
  277. package/src/media/mdx/Menu/slots.ru.mdx +100 -0
  278. package/src/media/mdx/Menu/wikiMdxMenu.ts +27 -28
  279. package/src/media/mdx/Modal/differences.en.mdx +130 -0
  280. package/src/media/mdx/Modal/differences.ru.mdx +65 -0
  281. package/src/media/mdx/Modal/modal.en.mdx +63 -0
  282. package/src/media/mdx/Modal/modal.ru.mdx +63 -0
  283. package/src/media/mdx/Modal/wikiMdxModal.ts +25 -0
  284. package/src/media/mdx/MotionTransform/animationHeadPosition.en.mdx +10 -22
  285. package/src/media/mdx/MotionTransform/animationHeadPosition.ru.mdx +10 -22
  286. package/src/media/mdx/MotionTransform/classes.en.mdx +18 -25
  287. package/src/media/mdx/MotionTransform/classes.ru.mdx +18 -25
  288. package/src/media/mdx/MotionTransform/events.en.mdx +31 -43
  289. package/src/media/mdx/MotionTransform/events.ru.mdx +31 -43
  290. package/src/media/mdx/MotionTransform/expose.isShow.en.mdx +2 -4
  291. package/src/media/mdx/MotionTransform/expose.isShow.ru.mdx +2 -4
  292. package/src/media/mdx/MotionTransform/expose.motionTransformElement.en.mdx +13 -0
  293. package/src/media/mdx/MotionTransform/expose.motionTransformElement.ru.mdx +14 -0
  294. package/src/media/mdx/MotionTransform/ignore.en.mdx +22 -24
  295. package/src/media/mdx/MotionTransform/ignore.ru.mdx +22 -24
  296. package/src/media/mdx/MotionTransform/motionTransform.en.mdx +44 -15
  297. package/src/media/mdx/MotionTransform/motionTransform.ru.mdx +44 -15
  298. package/src/media/mdx/MotionTransform/slots.en.mdx +92 -0
  299. package/src/media/mdx/MotionTransform/slots.ru.mdx +92 -0
  300. package/src/media/mdx/MotionTransform/v-model.en.mdx +23 -14
  301. package/src/media/mdx/MotionTransform/v-model.ru.mdx +23 -14
  302. package/src/media/mdx/MotionTransform/wikiMdxMotionTransform.ts +11 -17
  303. package/src/media/mdx/Progress/circular.en.mdx +7 -20
  304. package/src/media/mdx/Progress/circular.ru.mdx +7 -20
  305. package/src/media/mdx/Progress/delays.en.mdx +6 -13
  306. package/src/media/mdx/Progress/delays.ru.mdx +6 -13
  307. package/src/media/mdx/Progress/linear.en.mdx +9 -23
  308. package/src/media/mdx/Progress/linear.ru.mdx +9 -23
  309. package/src/media/mdx/Progress/progress.en.mdx +67 -5
  310. package/src/media/mdx/Progress/progress.ru.mdx +67 -5
  311. package/src/media/mdx/Progress/values.en.mdx +6 -28
  312. package/src/media/mdx/Progress/values.ru.mdx +6 -29
  313. package/src/media/mdx/Ripple/ripple.en.mdx +34 -40
  314. package/src/media/mdx/Ripple/ripple.ru.mdx +34 -40
  315. package/src/media/mdx/Scrollbar/emits-include.en.mdx +38 -0
  316. package/src/media/mdx/Scrollbar/emits-include.ru.mdx +38 -0
  317. package/src/media/mdx/Scrollbar/emits.en.mdx +38 -0
  318. package/src/media/mdx/Scrollbar/emits.ru.mdx +38 -0
  319. package/src/media/mdx/Scrollbar/scrollbar.en.mdx +38 -2
  320. package/src/media/mdx/Scrollbar/scrollbar.ru.mdx +38 -2
  321. package/src/media/mdx/Scrollbar/wikiMdxScrollbar.ts +12 -43
  322. package/src/media/mdx/Select/select.en.mdx +69 -0
  323. package/src/media/mdx/Select/select.ru.mdx +69 -0
  324. package/src/media/mdx/Select/wikiMdxSelect.ts +19 -0
  325. package/src/media/mdx/SelectValue/selectValue.en.mdx +64 -0
  326. package/src/media/mdx/SelectValue/selectValue.ru.mdx +64 -0
  327. package/src/media/mdx/SelectValue/wikiMdxSelectValue.ts +19 -0
  328. package/src/media/mdx/Skeleton/classes.en.mdx +13 -0
  329. package/src/media/mdx/Skeleton/classes.ru.mdx +13 -0
  330. package/src/media/mdx/Skeleton/expose.isActive.en.mdx +7 -28
  331. package/src/media/mdx/Skeleton/expose.isActive.ru.mdx +7 -28
  332. package/src/media/mdx/Skeleton/skeleton.en.mdx +37 -36
  333. package/src/media/mdx/Skeleton/skeleton.ru.mdx +37 -36
  334. package/src/media/mdx/Skeleton/wikiMdxSkeleton.ts +7 -0
  335. package/src/media/mdx/TextareaAutosize/textarea-autosize.en.mdx +65 -0
  336. package/src/media/mdx/TextareaAutosize/textarea-autosize.ru.mdx +65 -0
  337. package/src/media/mdx/TextareaAutosize/wikiMdxTextareaAutosize.ts +19 -0
  338. package/src/media/mdx/Tooltip/event.tooltip.en.mdx +7 -0
  339. package/src/media/mdx/Tooltip/event.tooltip.ru.mdx +8 -0
  340. package/src/media/mdx/Tooltip/slot.control.en.mdx +14 -0
  341. package/src/media/mdx/Tooltip/slot.control.ru.mdx +14 -0
  342. package/src/media/mdx/Tooltip/tooltip.en.mdx +34 -0
  343. package/src/media/mdx/Tooltip/tooltip.ru.mdx +34 -0
  344. package/src/media/mdx/Tooltip/wikiMdxTooltip.ts +31 -0
  345. package/src/media/mdx/Window/axis.en.mdx +11 -19
  346. package/src/media/mdx/Window/axis.ru.mdx +11 -19
  347. package/src/media/mdx/Window/classes.en.mdx +9 -26
  348. package/src/media/mdx/Window/classes.ru.mdx +9 -26
  349. package/src/media/mdx/Window/event.window.en.mdx +26 -8
  350. package/src/media/mdx/Window/event.window.ru.mdx +26 -8
  351. package/src/media/mdx/Window/expose.en.mdx +44 -0
  352. package/src/media/mdx/Window/expose.ru.mdx +44 -0
  353. package/src/media/mdx/Window/hooks.en.mdx +29 -50
  354. package/src/media/mdx/Window/hooks.ru.mdx +31 -52
  355. package/src/media/mdx/Window/slots.en.mdx +168 -0
  356. package/src/media/mdx/Window/slots.ru.mdx +168 -0
  357. package/src/media/mdx/Window/v-model.en.mdx +20 -11
  358. package/src/media/mdx/Window/v-model.ru.mdx +19 -11
  359. package/src/media/mdx/Window/wikiMdxWindow.ts +11 -41
  360. package/src/media/mdx/Window/window.en.mdx +55 -1
  361. package/src/media/mdx/Window/window.ru.mdx +55 -1
  362. package/src/media/mdx/event/events.actions.en.mdx +44 -0
  363. package/src/media/mdx/event/events.actions.ru.mdx +44 -0
  364. package/src/media/mdx/event/events.bars.en.mdx +50 -0
  365. package/src/media/mdx/event/events.bars.ru.mdx +50 -0
  366. package/src/media/mdx/event/events.beforeinput.en.mdx +13 -0
  367. package/src/media/mdx/event/events.beforeinput.ru.mdx +13 -0
  368. package/src/media/mdx/event/events.click.en.mdx +36 -0
  369. package/src/media/mdx/event/events.click.ru.mdx +36 -0
  370. package/src/media/mdx/event/events.focus.en.mdx +13 -0
  371. package/src/media/mdx/event/events.focus.ru.mdx +13 -0
  372. package/src/media/mdx/event/events.input.en.mdx +89 -0
  373. package/src/media/mdx/event/events.input.ru.mdx +90 -0
  374. package/src/media/mdx/event/events.inputStandard.en.mdx +6 -0
  375. package/src/media/mdx/event/events.inputStandard.ru.mdx +6 -0
  376. package/src/media/mdx/event/events.keyboard.en.mdx +13 -0
  377. package/src/media/mdx/event/events.keyboard.ru.mdx +13 -0
  378. package/src/media/mdx/event/events.paste.en.mdx +6 -0
  379. package/src/media/mdx/event/events.paste.ru.mdx +6 -0
  380. package/src/media/mdx/event/events.reset.en.mdx +6 -0
  381. package/src/media/mdx/event/events.reset.ru.mdx +6 -0
  382. package/src/media/mdx/event/wikiMdxEvent.ts +50 -73
  383. package/src/media/mdx/expose/expose.clear.en.mdx +3 -0
  384. package/src/media/mdx/expose/expose.clear.ru.mdx +3 -0
  385. package/src/media/mdx/expose/expose.descriptionId.en.mdx +6 -0
  386. package/src/media/mdx/expose/expose.descriptionId.ru.mdx +6 -0
  387. package/src/media/mdx/expose/expose.detail.en.mdx +5 -0
  388. package/src/media/mdx/expose/{detail.ru.mdx → expose.detail.ru.mdx} +1 -3
  389. package/src/media/mdx/expose/expose.id.en.mdx +6 -0
  390. package/src/media/mdx/expose/expose.id.ru.mdx +6 -0
  391. package/src/media/mdx/expose/expose.labelId.en.mdx +6 -0
  392. package/src/media/mdx/expose/expose.labelId.ru.mdx +6 -0
  393. package/src/media/mdx/expose/expose.open.en.mdx +5 -0
  394. package/src/media/mdx/expose/expose.open.ru.mdx +5 -0
  395. package/src/media/mdx/expose/expose.selected.en.mdx +23 -0
  396. package/src/media/mdx/expose/expose.selected.ru.mdx +23 -0
  397. package/src/media/mdx/expose/{value.en.mdx → expose.value.en.mdx} +1 -3
  398. package/src/media/mdx/expose/{value.ru.mdx → expose.value.ru.mdx} +1 -3
  399. package/src/media/mdx/expose/wikiMdxExpose.ts +41 -29
  400. package/src/media/mdx/slot/body.en.mdx +6 -0
  401. package/src/media/mdx/slot/body.ru.mdx +6 -0
  402. package/src/media/mdx/slot/caption.en.mdx +2 -7
  403. package/src/media/mdx/slot/caption.ru.mdx +2 -7
  404. package/src/media/mdx/slot/control.en.mdx +4 -5
  405. package/src/media/mdx/slot/control.ru.mdx +4 -5
  406. package/src/media/mdx/slot/default.en.mdx +2 -7
  407. package/src/media/mdx/slot/default.ru.mdx +2 -7
  408. package/src/media/mdx/slot/description.en.mdx +2 -7
  409. package/src/media/mdx/slot/description.ru.mdx +2 -7
  410. package/src/media/mdx/slot/footer.en.mdx +4 -5
  411. package/src/media/mdx/slot/footer.ru.mdx +4 -5
  412. package/src/media/mdx/slot/headline.en.mdx +7 -0
  413. package/src/media/mdx/slot/headline.ru.mdx +6 -0
  414. package/src/media/mdx/slot/label.en.mdx +2 -8
  415. package/src/media/mdx/slot/label.ru.mdx +2 -8
  416. package/src/media/mdx/slot/leading.en.mdx +7 -0
  417. package/src/media/mdx/slot/leading.ru.mdx +7 -0
  418. package/src/media/mdx/slot/prefix.en.mdx +1 -4
  419. package/src/media/mdx/slot/prefix.ru.mdx +1 -4
  420. package/src/media/mdx/slot/secondary.en.mdx +5 -0
  421. package/src/media/mdx/slot/secondary.ru.mdx +5 -0
  422. package/src/media/mdx/slot/suffix.en.mdx +1 -4
  423. package/src/media/mdx/slot/suffix.ru.mdx +1 -4
  424. package/src/media/mdx/slot/trailing.en.mdx +7 -0
  425. package/src/media/mdx/slot/trailing.ru.mdx +7 -0
  426. package/src/media/mdx/slot/wikiMdxSlot.ts +29 -5
  427. package/src/media/mdx/style/adaptive.en.mdx +6 -16
  428. package/src/media/mdx/style/adaptive.ru.mdx +6 -16
  429. package/src/media/mdx/style/asPalette.en.mdx +13 -5
  430. package/src/media/mdx/style/asPalette.ru.mdx +13 -5
  431. package/src/media/mdx/style/dir.en.mdx +14 -7
  432. package/src/media/mdx/style/dir.ru.mdx +14 -7
  433. package/src/media/mdx/style/isSkeleton.en.mdx +20 -6
  434. package/src/media/mdx/style/isSkeleton.ru.mdx +19 -5
  435. package/src/media/mdx/value/highlight.en.mdx +19 -12
  436. package/src/media/mdx/value/highlight.ru.mdx +19 -12
  437. package/src/media/mdx/value/labelNumber.en.mdx +39 -20
  438. package/src/media/mdx/value/labelNumber.ru.mdx +39 -20
  439. package/src/media/mdx/value/v-model-selected.en.mdx +28 -0
  440. package/src/media/mdx/value/v-model-selected.ru.mdx +28 -0
  441. package/src/media/mdx/value/v-model.en.mdx +26 -0
  442. package/src/media/mdx/value/v-model.ru.mdx +26 -0
  443. package/src/media/mdx/value/value.en.mdx +6 -12
  444. package/src/media/mdx/value/value.ru.mdx +6 -12
  445. package/src/media/mdx/value/wikiMdxValue.ts +24 -3
  446. package/src/media/mdx/wikiMdx.ts +29 -1
  447. package/src/media/props/wiki.ts +42 -0
  448. package/src/media/props/wikiActions.ts +43 -0
  449. package/src/media/props/wikiActionsInclude.ts +62 -0
  450. package/src/media/props/wikiAnchor.ts +84 -0
  451. package/src/media/props/wikiAria.ts +102 -0
  452. package/src/media/props/wikiArrow.ts +24 -0
  453. package/src/media/props/wikiArrowInclude.ts +45 -0
  454. package/src/media/props/wikiBarsInclude.ts +80 -0
  455. package/src/media/props/wikiChipGroup.ts +39 -0
  456. package/src/media/props/wikiDialog.ts +34 -0
  457. package/src/media/props/wikiField.ts +0 -21
  458. package/src/media/props/wikiFieldCounterInclude.ts +78 -0
  459. package/src/media/props/wikiForm.ts +248 -0
  460. package/src/media/props/wikiHook.ts +20 -0
  461. package/src/media/props/wikiIcon.ts +3 -3
  462. package/src/media/props/wikiIconInclude.ts +319 -0
  463. package/src/media/props/wikiImage.ts +71 -19
  464. package/src/media/props/wikiInformation.ts +160 -0
  465. package/src/media/props/wikiInput.ts +34 -0
  466. package/src/media/props/wikiListItem.ts +20 -0
  467. package/src/media/props/wikiMask.ts +0 -10
  468. package/src/media/props/wikiMaskInclude.ts +54 -0
  469. package/src/media/props/wikiMenu.ts +0 -10
  470. package/src/media/props/wikiMotionTransform.ts +0 -10
  471. package/src/media/props/wikiOption.ts +113 -0
  472. package/src/media/props/wikiSelect.ts +68 -0
  473. package/src/media/props/wikiSelectValue.ts +30 -0
  474. package/src/media/props/wikiStatus.ts +29 -41
  475. package/src/media/props/wikiStyle.ts +154 -243
  476. package/src/media/props/wikiTechnical.ts +65 -0
  477. package/src/media/props/wikiText.ts +57 -0
  478. package/src/media/props/wikiTooltip.ts +53 -0
  479. package/src/media/props/wikiValue.ts +14 -203
  480. package/src/media/props/wikiWindow.ts +0 -31
  481. package/src/media/styles/color.md +1 -0
  482. package/src/media/styles/en/about.mdx +79 -0
  483. package/src/media/styles/en/color.mdx +711 -0
  484. package/src/media/styles/en/content.mdx +29 -0
  485. package/src/media/styles/en/dimension.mdx +233 -0
  486. package/src/media/styles/en/dir.mdx +193 -0
  487. package/src/media/styles/en/flex.mdx +249 -0
  488. package/src/media/styles/en/font.mdx +171 -0
  489. package/src/media/styles/en/margin.mdx +115 -0
  490. package/src/media/styles/en/media.mdx +133 -0
  491. package/src/media/styles/en/padding.mdx +115 -0
  492. package/src/media/styles/en/position.mdx +183 -0
  493. package/src/media/styles/en/rules.mdx +117 -0
  494. package/src/media/styles/en/scrollbar.mdx +27 -0
  495. package/src/media/styles/en/selector.mdx +153 -0
  496. package/src/media/styles/en/transform.mdx +114 -0
  497. package/src/media/styles/ru/about.mdx +78 -0
  498. package/src/media/styles/ru/color.mdx +711 -0
  499. package/src/media/styles/ru/content.mdx +30 -0
  500. package/src/media/styles/ru/dimension.mdx +233 -0
  501. package/src/media/styles/ru/dir.mdx +193 -0
  502. package/src/media/styles/ru/flex.mdx +249 -0
  503. package/src/media/styles/ru/font.mdx +171 -0
  504. package/src/media/styles/ru/margin.mdx +115 -0
  505. package/src/media/styles/ru/media.mdx +133 -0
  506. package/src/media/styles/ru/padding.mdx +115 -0
  507. package/src/media/styles/ru/position.mdx +183 -0
  508. package/src/media/styles/ru/rules.mdx +117 -0
  509. package/src/media/styles/ru/scrollbar.mdx +27 -0
  510. package/src/media/styles/ru/selector.mdx +153 -0
  511. package/src/media/styles/ru/transform.mdx +114 -0
  512. package/src/styles/storybookStyle.scss +4 -1
  513. package/src/types/storybookTypes.ts +26 -4
  514. package/src/media/mdx/Bars/slot.actionBars.en.mdx +0 -12
  515. package/src/media/mdx/Bars/slot.actionBars.ru.mdx +0 -11
  516. package/src/media/mdx/Bars/slot.bars.en.mdx +0 -12
  517. package/src/media/mdx/Bars/slot.bars.ru.mdx +0 -11
  518. package/src/media/mdx/Cell/slot.body.en.mdx +0 -7
  519. package/src/media/mdx/Cell/slot.body.ru.mdx +0 -7
  520. package/src/media/mdx/Cell/slot.trailing.en.mdx +0 -7
  521. package/src/media/mdx/Cell/slot.trailing.ru.mdx +0 -7
  522. package/src/media/mdx/Field/slot.default.en.mdx +0 -9
  523. package/src/media/mdx/Field/slot.default.ru.mdx +0 -9
  524. package/src/media/mdx/Field/slot.leading.en.mdx +0 -10
  525. package/src/media/mdx/Field/slot.leading.ru.mdx +0 -10
  526. package/src/media/mdx/Field/slot.trailing.en.mdx +0 -10
  527. package/src/media/mdx/Field/slot.trailing.ru.mdx +0 -10
  528. package/src/media/mdx/FieldMessage/slot.helper.en.mdx +0 -12
  529. package/src/media/mdx/FieldMessage/slot.helper.ru.mdx +0 -12
  530. package/src/media/mdx/FieldMessage/slot.validation.en.mdx +0 -12
  531. package/src/media/mdx/FieldMessage/slot.validation.ru.mdx +0 -12
  532. package/src/media/mdx/Image/expose.data.en.mdx +0 -13
  533. package/src/media/mdx/Image/expose.data.ru.mdx +0 -13
  534. package/src/media/mdx/Image/expose.type.en.mdx +0 -21
  535. package/src/media/mdx/ListGroup/slot.head.en.mdx +0 -8
  536. package/src/media/mdx/ListGroup/slot.head.ru.mdx +0 -8
  537. package/src/media/mdx/ListGroup/slot.list.en.mdx +0 -8
  538. package/src/media/mdx/ListGroup/slot.list.ru.mdx +0 -8
  539. package/src/media/mdx/ListItem/slot.body.en.mdx +0 -7
  540. package/src/media/mdx/ListItem/slot.body.ru.mdx +0 -7
  541. package/src/media/mdx/ListItem/slot.trailing.en.mdx +0 -7
  542. package/src/media/mdx/ListItem/slot.trailing.ru.mdx +0 -7
  543. package/src/media/mdx/Menu/slot.contextBottom.en.mdx +0 -9
  544. package/src/media/mdx/Menu/slot.contextBottom.ru.mdx +0 -9
  545. package/src/media/mdx/Menu/slot.contextTop.en.mdx +0 -9
  546. package/src/media/mdx/Menu/slot.contextTop.ru.mdx +0 -9
  547. package/src/media/mdx/Menu/slot.control.en.mdx +0 -9
  548. package/src/media/mdx/Menu/slot.control.ru.mdx +0 -9
  549. package/src/media/mdx/Menu/slot.footer.en.mdx +0 -9
  550. package/src/media/mdx/Menu/slot.footer.ru.mdx +0 -9
  551. package/src/media/mdx/Menu/slot.title.en.mdx +0 -9
  552. package/src/media/mdx/Menu/slot.title.ru.mdx +0 -9
  553. package/src/media/mdx/MotionTransform/slot.body.en.mdx +0 -11
  554. package/src/media/mdx/MotionTransform/slot.body.ru.mdx +0 -11
  555. package/src/media/mdx/MotionTransform/slot.head.en.mdx +0 -11
  556. package/src/media/mdx/MotionTransform/slot.head.ru.mdx +0 -11
  557. package/src/media/mdx/MotionTransform/slot.params.en.mdx +0 -61
  558. package/src/media/mdx/MotionTransform/slot.params.ru.mdx +0 -61
  559. package/src/media/mdx/Scrollbar/event.bottom.en.mdx +0 -12
  560. package/src/media/mdx/Scrollbar/event.bottom.ru.mdx +0 -12
  561. package/src/media/mdx/Scrollbar/event.edge.en.mdx +0 -14
  562. package/src/media/mdx/Scrollbar/event.edge.ru.mdx +0 -14
  563. package/src/media/mdx/Scrollbar/event.leaveBottom.en.mdx +0 -11
  564. package/src/media/mdx/Scrollbar/event.leaveBottom.ru.mdx +0 -11
  565. package/src/media/mdx/Scrollbar/event.leaveTop.en.mdx +0 -11
  566. package/src/media/mdx/Scrollbar/event.leaveTop.ru.mdx +0 -11
  567. package/src/media/mdx/Scrollbar/event.reachBottom.en.mdx +0 -11
  568. package/src/media/mdx/Scrollbar/event.reachBottom.ru.mdx +0 -11
  569. package/src/media/mdx/Scrollbar/event.reachTop.en.mdx +0 -11
  570. package/src/media/mdx/Scrollbar/event.reachTop.ru.mdx +0 -11
  571. package/src/media/mdx/Scrollbar/event.top.en.mdx +0 -12
  572. package/src/media/mdx/Scrollbar/event.top.ru.mdx +0 -12
  573. package/src/media/mdx/Window/expose.control.en.mdx +0 -15
  574. package/src/media/mdx/Window/expose.control.ru.mdx +0 -15
  575. package/src/media/mdx/Window/expose.id.en.mdx +0 -7
  576. package/src/media/mdx/Window/expose.id.ru.mdx +0 -7
  577. package/src/media/mdx/Window/expose.open.en.mdx +0 -7
  578. package/src/media/mdx/Window/expose.open.ru.mdx +0 -7
  579. package/src/media/mdx/Window/expose.setOpen.en.mdx +0 -7
  580. package/src/media/mdx/Window/expose.setOpen.ru.mdx +0 -7
  581. package/src/media/mdx/Window/expose.toClose.en.mdx +0 -7
  582. package/src/media/mdx/Window/expose.toClose.ru.mdx +0 -7
  583. package/src/media/mdx/Window/expose.toOpen.en.mdx +0 -7
  584. package/src/media/mdx/Window/expose.toOpen.ru.mdx +0 -7
  585. package/src/media/mdx/Window/expose.toggle.en.mdx +0 -7
  586. package/src/media/mdx/Window/expose.toggle.ru.mdx +0 -7
  587. package/src/media/mdx/event/bars.en.mdx +0 -17
  588. package/src/media/mdx/event/bars.ru.mdx +0 -14
  589. package/src/media/mdx/event/barsBack.en.mdx +0 -14
  590. package/src/media/mdx/event/barsBack.ru.mdx +0 -16
  591. package/src/media/mdx/event/barsLite.en.mdx +0 -14
  592. package/src/media/mdx/event/barsLite.ru.mdx +0 -14
  593. package/src/media/mdx/event/click.en.mdx +0 -18
  594. package/src/media/mdx/event/click.ru.mdx +0 -18
  595. package/src/media/mdx/event/clickLite.en.mdx +0 -18
  596. package/src/media/mdx/event/clickLite.ru.mdx +0 -18
  597. package/src/media/mdx/event/scrollbarBottom.en.mdx +0 -13
  598. package/src/media/mdx/event/scrollbarBottom.ru.mdx +0 -13
  599. package/src/media/mdx/event/scrollbarEdge.en.mdx +0 -15
  600. package/src/media/mdx/event/scrollbarEdge.ru.mdx +0 -15
  601. package/src/media/mdx/event/scrollbarLeaveBottom.en.mdx +0 -12
  602. package/src/media/mdx/event/scrollbarLeaveBottom.ru.mdx +0 -12
  603. package/src/media/mdx/event/scrollbarLeaveTop.en.mdx +0 -12
  604. package/src/media/mdx/event/scrollbarLeaveTop.ru.mdx +0 -12
  605. package/src/media/mdx/event/scrollbarReachBottom.en.mdx +0 -12
  606. package/src/media/mdx/event/scrollbarReachBottom.ru.mdx +0 -12
  607. package/src/media/mdx/event/scrollbarReachTop.en.mdx +0 -12
  608. package/src/media/mdx/event/scrollbarReachTop.ru.mdx +0 -12
  609. package/src/media/mdx/event/scrollbarTop.en.mdx +0 -13
  610. package/src/media/mdx/event/scrollbarTop.ru.mdx +0 -13
  611. package/src/media/mdx/event/window.en.mdx +0 -20
  612. package/src/media/mdx/event/window.ru.mdx +0 -20
  613. package/src/media/mdx/expose/detail.en.mdx +0 -7
  614. package/src/media/mdx/expose/isSelected.en.mdx +0 -8
  615. package/src/media/mdx/expose/isSelected.ru.mdx +0 -8
  616. package/src/media/mdx/expose/selectedList.en.mdx +0 -7
  617. package/src/media/mdx/expose/selectedList.ru.mdx +0 -7
  618. package/src/media/mdx/expose/selectedNames.en.mdx +0 -7
  619. package/src/media/mdx/expose/selectedNames.ru.mdx +0 -7
  620. package/src/media/mdx/expose/selectedValues.en.mdx +0 -8
  621. package/src/media/mdx/expose/selectedValues.ru.mdx +0 -8
  622. package/src/media/mdx/slot/title.en.mdx +0 -9
  623. package/src/media/mdx/slot/title.ru.mdx +0 -9
@@ -0,0 +1,307 @@
1
+ import {Meta} from '@storybook/addon-docs/blocks'
2
+
3
+ <Meta title='@dxtmisha/functional/en/Classes/BroadcastMessage'/>
4
+
5
+ # BroadcastMessage Class
6
+
7
+ A class for handling BroadcastChannel messaging between browser tabs/windows. Enables real-time communication across different contexts of the same origin with automatic channel naming and message handling.
8
+
9
+ ## Key Features
10
+
11
+ - **Cross-tab communication** — send and receive messages between browser tabs and windows
12
+ - **Automatic channel naming** — unique channel names per browser instance stored in localStorage
13
+ - **Type-safe messaging** — full TypeScript support with generic message types
14
+ - **Callback-based handling** — flexible message handling through callback functions
15
+ - **Error handling** — graceful error handling with console logging
16
+ - **SSR-safe** — automatically detects DOM runtime environment
17
+
18
+ ## Basic Usage
19
+
20
+ ### Constructor
21
+
22
+ Creates a new BroadcastMessage instance with specified channel name and optional callback.
23
+
24
+ **Parameters:**
25
+ - `name: string` — channel name identifier
26
+ - `callback?: (event: MessageEvent<Message>) => void` — optional callback for received messages
27
+
28
+ ```javascript
29
+ import { BroadcastMessage } from '@dxtmisha/functional'
30
+
31
+ // Create channel with callback
32
+ const channel = new BroadcastMessage('user-updates', (event) => {
33
+ console.log('Received message:', event.data)
34
+ })
35
+
36
+ // Create channel without callback (can be set later)
37
+ const notifications = new BroadcastMessage('notifications')
38
+ ```
39
+
40
+ ### `post`
41
+
42
+ Sends a message to all connected tabs/windows on the same channel.
43
+
44
+ **Parameters:**
45
+ - `message: Message` — message to broadcast
46
+
47
+ **Returns:** `this` — for method chaining
48
+
49
+ ```javascript
50
+ import { BroadcastMessage } from '@dxtmisha/functional'
51
+
52
+ const userChannel = new BroadcastMessage('user-updates')
53
+
54
+ // Send simple message
55
+ userChannel.post({ type: 'login', userId: 123 })
56
+
57
+ // Method chaining
58
+ userChannel
59
+ .post({ type: 'status', value: 'online' })
60
+ .post({ type: 'activity', timestamp: Date.now() })
61
+ ```
62
+
63
+ ### `setCallback`
64
+
65
+ Sets or updates the callback function for handling received messages.
66
+
67
+ **Parameters:**
68
+ - `callback: (event: MessageEvent<Message>) => void` — callback function
69
+
70
+ **Returns:** `this` — for method chaining
71
+
72
+ ```javascript
73
+ import { BroadcastMessage } from '@dxtmisha/functional'
74
+
75
+ const channel = new BroadcastMessage('app-events')
76
+
77
+ // Set callback later
78
+ channel.setCallback((event) => {
79
+ console.log('Event received:', event.data)
80
+ })
81
+
82
+ // Update callback
83
+ channel.setCallback((event) => {
84
+ if (event.data.type === 'refresh') {
85
+ location.reload()
86
+ }
87
+ })
88
+ ```
89
+
90
+ ## Advanced Examples
91
+
92
+ ### Cross-Tab State Synchronization
93
+
94
+ ```javascript
95
+ import { BroadcastMessage } from '@dxtmisha/functional'
96
+ import { ref } from 'vue'
97
+
98
+ // Create reactive state
99
+ const userStatus = ref('offline')
100
+
101
+ // Create broadcast channel
102
+ const statusChannel = new BroadcastMessage('user-status', (event) => {
103
+ // Update local state when other tabs broadcast changes
104
+ userStatus.value = event.data.status
105
+ console.log('Status updated from another tab:', event.data.status)
106
+ })
107
+
108
+ // Function to update status and broadcast to other tabs
109
+ function updateStatus(newStatus) {
110
+ userStatus.value = newStatus
111
+ statusChannel.post({ status: newStatus, timestamp: Date.now() })
112
+ }
113
+
114
+ // Usage
115
+ updateStatus('online') // Updates this tab and notifies others
116
+ ```
117
+
118
+ ### Multi-Tab Shopping Cart
119
+
120
+ ```javascript
121
+ import { BroadcastMessage } from '@dxtmisha/functional'
122
+
123
+ // Define message types
124
+ interface CartMessage {
125
+ action: 'add' | 'remove' | 'clear'
126
+ productId?: number
127
+ quantity?: number
128
+ }
129
+
130
+ // Create channel with typed messages
131
+ const cartChannel = new BroadcastMessage<CartMessage>('shopping-cart')
132
+
133
+ // Set up message handler
134
+ cartChannel.setCallback((event) => {
135
+ const { action, productId, quantity } = event.data
136
+
137
+ switch (action) {
138
+ case 'add':
139
+ console.log(`Adding ${quantity} of product ${productId}`)
140
+ addToCart(productId, quantity)
141
+ break
142
+ case 'remove':
143
+ console.log(`Removing product ${productId}`)
144
+ removeFromCart(productId)
145
+ break
146
+ case 'clear':
147
+ console.log('Clearing cart')
148
+ clearCart()
149
+ break
150
+ }
151
+ })
152
+
153
+ // Broadcast cart updates
154
+ function addProduct(productId, quantity) {
155
+ addToCart(productId, quantity)
156
+ cartChannel.post({ action: 'add', productId, quantity })
157
+ }
158
+ ```
159
+
160
+ ### Authentication State Sync
161
+
162
+ ```javascript
163
+ import { BroadcastMessage } from '@dxtmisha/functional'
164
+
165
+ interface AuthMessage {
166
+ type: 'login' | 'logout' | 'token-refresh'
167
+ userId?: number
168
+ token?: string
169
+ }
170
+
171
+ const authChannel = new BroadcastMessage<AuthMessage>('auth-events', (event) => {
172
+ switch (event.data.type) {
173
+ case 'login':
174
+ console.log('User logged in:', event.data.userId)
175
+ location.reload()
176
+ break
177
+
178
+ case 'logout':
179
+ console.log('User logged out, redirecting...')
180
+ localStorage.removeItem('auth-token')
181
+ window.location.href = '/login'
182
+ break
183
+
184
+ case 'token-refresh':
185
+ console.log('Token refreshed')
186
+ localStorage.setItem('auth-token', event.data.token)
187
+ break
188
+ }
189
+ })
190
+
191
+ // Broadcast login
192
+ function handleLogin(userId, token) {
193
+ localStorage.setItem('auth-token', token)
194
+ authChannel.post({ type: 'login', userId, token })
195
+ }
196
+
197
+ // Broadcast logout
198
+ function handleLogout() {
199
+ localStorage.removeItem('auth-token')
200
+ authChannel.post({ type: 'logout' })
201
+ }
202
+ ```
203
+
204
+ ### Real-Time Notifications
205
+
206
+ ```javascript
207
+ import { BroadcastMessage } from '@dxtmisha/functional'
208
+
209
+ interface Notification {
210
+ id: string
211
+ title: string
212
+ message: string
213
+ type: 'info' | 'warning' | 'error' | 'success'
214
+ timestamp: number
215
+ }
216
+
217
+ const notificationChannel = new BroadcastMessage<Notification>('notifications')
218
+
219
+ // Set up notification handler
220
+ notificationChannel.setCallback((event) => {
221
+ const notification = event.data
222
+
223
+ // Display notification in all tabs
224
+ showNotification(notification.title, notification.message, notification.type)
225
+
226
+ if (notification.type === 'error') {
227
+ playErrorSound()
228
+ }
229
+ })
230
+
231
+ // Send notification to all tabs
232
+ function broadcastNotification(title, message, type = 'info') {
233
+ const notification = {
234
+ id: crypto.randomUUID(),
235
+ title,
236
+ message,
237
+ type,
238
+ timestamp: Date.now()
239
+ }
240
+
241
+ notificationChannel.post(notification)
242
+ }
243
+
244
+ // Usage
245
+ broadcastNotification('New Message', 'You have a new message from John', 'info')
246
+ ```
247
+
248
+ ## Implementation Details
249
+
250
+ ### Unique Channel Naming
251
+
252
+ Each browser instance generates a unique identifier stored in localStorage (`__broadcast-name`). This ensures that channels are isolated between different browser instances while allowing communication within the same instance across tabs.
253
+
254
+ ```javascript
255
+ // Channel name format: name_{random_7_digits}__your-channel-name
256
+ // Example: name_1234567__user-updates
257
+ ```
258
+
259
+ ### Error Handling
260
+
261
+ BroadcastMessage gracefully handles errors and logs them to console:
262
+
263
+ ```javascript
264
+ const channel = new BroadcastMessage('my-channel')
265
+ // If BroadcastChannel is not supported or initialization fails,
266
+ // error is logged: "BroadcastMessage my-channel: [error details]"
267
+ ```
268
+
269
+ ### SSR Compatibility
270
+
271
+ The class automatically detects DOM runtime environment using `isDomRuntime()`, making it safe to use in SSR/SSG contexts where BroadcastChannel API is not available.
272
+
273
+ ## Type Safety
274
+
275
+ ```typescript
276
+ import { BroadcastMessage } from '@dxtmisha/functional'
277
+
278
+ // Define your message structure
279
+ interface UserUpdate {
280
+ userId: number
281
+ action: 'online' | 'offline' | 'typing'
282
+ timestamp: number
283
+ }
284
+
285
+ // Create typed channel
286
+ const channel = new BroadcastMessage<UserUpdate>('users')
287
+
288
+ // TypeScript ensures type safety
289
+ channel.post({
290
+ userId: 123,
291
+ action: 'online',
292
+ timestamp: Date.now()
293
+ }) // ✓ Valid
294
+
295
+ channel.post({ invalid: 'data' }) // ✗ TypeScript error
296
+ ```
297
+
298
+ ## Browser Compatibility
299
+
300
+ BroadcastChannel API is supported in:
301
+ - Chrome/Edge 54+
302
+ - Firefox 38+
303
+ - Safari 15.4+
304
+ - Opera 41+
305
+
306
+ For older browsers, consider using a polyfill or fallback mechanism.
307
+
@@ -45,6 +45,42 @@ applyTemplate('This is [bold]bold text[/bold]', { bold: '<b>[content]</b>' }) //
45
45
  applyTemplate('Text with [red]colored[/red] word', { red: '<span style="color:red">[content]</span>' })
46
46
  ```
47
47
 
48
+ ## `blobToBase64`
49
+
50
+ Converts a Blob to a Base64 string (data URL).
51
+
52
+ **Parameters:**
53
+ - `blob: Blob` — Blob object to convert
54
+
55
+ ```javascript
56
+ import { blobToBase64 } from '@dxtmisha/functional'
57
+
58
+ const blob = new Blob(['Hello World'], { type: 'text/plain' })
59
+ const base64 = await blobToBase64(blob)
60
+ // 'data:text/plain;base64,SGVsbG8gV29ybGQ='
61
+
62
+ // Using with images
63
+ const imageBlob = new Blob([imageData], { type: 'image/png' })
64
+ const imageBase64 = await blobToBase64(imageBlob)
65
+ // 'data:image/png;base64,iVBORw0KGgo...'
66
+ ```
67
+
68
+
69
+ ## `encodeAttribute`
70
+
71
+ Encodes special characters in a string for safe use in HTML attributes. Converts characters `&`, `<`, `>`, `"`, `'` into corresponding HTML entities to prevent XSS attacks and ensure correct display.
72
+
73
+ **Parameters:**
74
+ - `text: string` — text to encode
75
+
76
+ ```javascript
77
+ import { encodeAttribute } from '@dxtmisha/functional'
78
+
79
+ encodeAttribute('Hello & "World"') // 'Hello &amp; &quot;World&quot;'
80
+ encodeAttribute('<script>alert("XSS")</script>') // '&lt;script&gt;alert(&quot;XSS&quot;)&lt;/script&gt;'
81
+ encodeAttribute("It's a test") // 'It&#39;s a test'
82
+ ```
83
+
48
84
  ## `replaceRecursive`
49
85
 
50
86
  Recursively replaces values in an object or array.
@@ -78,6 +114,37 @@ replaceTemplate('User [id]: [name]', {id: '123', name: 'John'}) // 'User 123: Jo
78
114
  replaceTemplate('Time: [time]', {time: () => new Date().toLocaleString()}) // with function
79
115
  ```
80
116
 
117
+ ## `resizeImageByMax`
118
+
119
+ Resizes an image to fit within a maximum size constraint.
120
+
121
+ **Parameters:**
122
+ - `image: HTMLImageElement | string` — image element or URL
123
+ - `maxSize: number` — maximum size for width or height
124
+ - `type: 'auto' | 'width' | 'height'` — resize type (default 'auto')
125
+ - `typeData?: string` — data type for the resulting image (e.g., 'image/png', 'image/jpeg')
126
+
127
+ ```javascript
128
+ import { resizeImageByMax } from '@dxtmisha/functional'
129
+
130
+ // Automatic scaling (by larger dimension)
131
+ const image = document.querySelector('img')
132
+ const resized = resizeImageByMax(image, 800) // data URL
133
+ // Image 1200x800 becomes 800x533
134
+
135
+ // Scale by width
136
+ resizeImageByMax(image, 600, 'width')
137
+ // Width will be 600px, height proportional
138
+
139
+ // Scale by height
140
+ resizeImageByMax(image, 400, 'height')
141
+ // Height will be 400px, width proportional
142
+
143
+ // With specified data type
144
+ resizeImageByMax(image, 1024, 'auto', 'image/jpeg')
145
+ // Returns JPEG data URL
146
+ ```
147
+
81
148
  ## `secondToTime`
82
149
 
83
150
  Converts seconds to time format (hours:minutes:seconds).
@@ -37,6 +37,31 @@ const copy = copyObject(original)
37
37
  copy.data.age = 25 // original.data.age remains 30
38
38
  ```
39
39
 
40
+ ## `copyObjectLite`
41
+
42
+ Creates a shallow copy of a simple object. If the `source` parameter is passed, creates a new object and merges `value` and `source`.
43
+
44
+ **Parameters:**
45
+ - `value: T` — object to copy
46
+ - `source?: any` — additional properties to copy (optional)
47
+
48
+ ```javascript
49
+ import { copyObjectLite } from '@dxtmisha/functional'
50
+
51
+ const original = { name: 'John', age: 30 }
52
+ const copy = copyObjectLite(original) // { name: 'John', age: 30 }
53
+
54
+ // With additional properties
55
+ const extended = copyObjectLite(original, { city: 'Moscow' })
56
+ // { name: 'John', age: 30, city: 'Moscow' }
57
+
58
+ // Overriding properties
59
+ const overridden = copyObjectLite(original, { age: 25 })
60
+ // { name: 'John', age: 25 }
61
+ ```
62
+
63
+ **Note:** This is a shallow copy — nested objects retain references to the originals. For deep cloning use `copyObject`, `structuredClone` or `_.cloneDeep`.
64
+
40
65
  ## `forEach`
41
66
 
42
67
  Universal iteration function for arrays, objects and Map.
@@ -228,7 +228,7 @@ const withoutTz = datetime.standard(false)
228
228
 
229
229
  ### Vue Component with Reactive Date
230
230
 
231
- ```vue
231
+ ```html
232
232
  <template>
233
233
  <div>
234
234
  <span>{{ datetime.getYear() }}/{{ datetime.getMonth() + 1 }}/{{ datetime.getDay() }}</span>
@@ -259,7 +259,7 @@ const eventRef = new EventRef(buttonRef, containerRef, 'click')
259
259
 
260
260
  ### Vue Component with Reactive Events
261
261
 
262
- ```vue
262
+ ```html
263
263
  <template>
264
264
  <button ref="buttonEl" @click="handleClick">Click me</button>
265
265
  <input ref="inputEl" placeholder="Type...">
@@ -6,6 +6,62 @@ import {Meta} from '@storybook/addon-docs/blocks'
6
6
 
7
7
  A set of functions for universal execution of synchronous and asynchronous operations.
8
8
 
9
+ ## `computedByLanguage`
10
+
11
+ Creates a reactive computed property whose value depends on the current language and specified conditions.
12
+
13
+ **Parameters:**
14
+ - `getter: ComputedGetter<R>` — function that returns the main value depending on the language
15
+ - `getterNone: R | (() => R)` — alternative value if conditions are not met or getter returns undefined (default undefined)
16
+ - `conditions: () => boolean` — condition for calling the main getter (optional)
17
+ - `debugOptions: DebuggerOptions` — Vue debug options (optional)
18
+
19
+ ```javascript
20
+ import { computedByLanguage } from '@dxtmisha/functional'
21
+ import { ref } from 'vue'
22
+
23
+ // Simple example with translations
24
+ const title = computedByLanguage(
25
+ () => {
26
+ const lang = GeoRef.get().value
27
+ return lang === 'ru' ? 'Заголовок' : 'Title'
28
+ },
29
+ 'Default Title'
30
+ )
31
+
32
+ // With condition
33
+ const description = computedByLanguage(
34
+ () => {
35
+ const lang = GeoRef.get().value
36
+ const translations = {
37
+ ru: 'Описание на русском',
38
+ en: 'Description in English'
39
+ }
40
+ return translations[lang]
41
+ },
42
+ () => 'Default description',
43
+ () => showDescription.value // show condition
44
+ )
45
+
46
+ // Usage in component
47
+ export default {
48
+ setup() {
49
+ const showText = ref(true)
50
+
51
+ const greeting = computedByLanguage(
52
+ () => {
53
+ const lang = GeoRef.get().value
54
+ return lang === 'ru' ? 'Привет, мир!' : 'Hello, world!'
55
+ },
56
+ 'Greeting',
57
+ () => showText.value
58
+ )
59
+
60
+ return { greeting }
61
+ }
62
+ }
63
+ ```
64
+
9
65
  ## `executeFunction`
10
66
 
11
67
  Executes a function and returns its result, or returns input data if it's not a function.
@@ -127,3 +183,5 @@ export default {
127
183
  }
128
184
  }
129
185
  ```
186
+
187
+
@@ -162,7 +162,7 @@ countryCode.value = 'ru-RU'
162
162
 
163
163
  ### Vue Component with Country Flags
164
164
 
165
- ```vue
165
+ ```html
166
166
  <template>
167
167
  <div class="country-selector">
168
168
  <div class="current-country">
@@ -291,7 +291,7 @@ const daysList = intl.weekdays('long')
291
291
 
292
292
  ### Vue Component with Localization
293
293
 
294
- ```vue
294
+ ```html
295
295
  <template>
296
296
  <div class="localized-content">
297
297
  <h2>{{ intl.countryName('US') }}</h2>
@@ -141,7 +141,7 @@ const flag = new GeoFlagRef() // will use de-DE
141
141
 
142
142
  ### Vue Component with Global Geolocation
143
143
 
144
- ```vue
144
+ ```html
145
145
  <template>
146
146
  <div class="geo-info">
147
147
  <h2>Current Location</h2>
@@ -202,7 +202,7 @@ GeoRef.set(userLocale)
202
202
 
203
203
  ### Global Locale Provider
204
204
 
205
- ```vue
205
+ ```html
206
206
  <!-- App.vue -->
207
207
  <template>
208
208
  <div class="app">