@dxtmisha/wiki 0.24.1 → 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.
- package/package.json +3 -2
- package/src/library.ts +7 -7
- package/src/media/descriptions/wikiDescriptionsBars.ts +1 -3
- package/src/media/descriptions/wikiDescriptionsCell.ts +1 -2
- package/src/media/descriptions/wikiDescriptionsChip.ts +0 -1
- package/src/media/descriptions/wikiDescriptionsField.ts +1 -4
- package/src/media/descriptions/wikiDescriptionsFieldCounter.ts +6 -6
- package/src/media/descriptions/wikiDescriptionsFieldMessage.ts +1 -2
- package/src/media/descriptions/wikiDescriptionsImage.ts +2 -2
- package/src/media/descriptions/wikiDescriptionsList.ts +1 -5
- package/src/media/descriptions/wikiDescriptionsListGroup.ts +2 -3
- package/src/media/descriptions/wikiDescriptionsListItem.ts +1 -3
- package/src/media/descriptions/wikiDescriptionsListMenu.ts +2 -9
- package/src/media/descriptions/wikiDescriptionsMask.ts +12 -0
- package/src/media/descriptions/wikiDescriptionsMenu.ts +3 -14
- package/src/media/descriptions/wikiDescriptionsMotionTransform.ts +2 -4
- package/src/media/descriptions/wikiDescriptionsScrollbar.ts +1 -7
- package/src/media/descriptions/wikiDescriptionsSkeleton.ts +1 -0
- package/src/media/descriptions/wikiDescriptionsWindow.ts +5 -22
- package/src/media/functional/en/broadcastMessage.mdx +307 -0
- package/src/media/functional/ru/broadcastMessage.mdx +305 -0
- package/src/media/mdx/Badge/badge.en.mdx +85 -7
- package/src/media/mdx/Badge/badge.ru.mdx +85 -7
- package/src/media/mdx/Badge/dot.en.mdx +16 -12
- package/src/media/mdx/Badge/dot.ru.mdx +16 -12
- package/src/media/mdx/Badge/outline.en.mdx +12 -13
- package/src/media/mdx/Badge/outline.ru.mdx +12 -13
- package/src/media/mdx/Badge/primary.en.mdx +12 -12
- package/src/media/mdx/Badge/primary.ru.mdx +12 -12
- package/src/media/mdx/Badge/secondary.en.mdx +12 -13
- package/src/media/mdx/Badge/secondary.ru.mdx +12 -13
- package/src/media/mdx/Bars/action.en.mdx +72 -28
- package/src/media/mdx/Bars/action.ru.mdx +73 -29
- package/src/media/mdx/Bars/bars.en.mdx +90 -15
- package/src/media/mdx/Bars/bars.ru.mdx +91 -15
- package/src/media/mdx/Bars/slots.en.mdx +33 -0
- package/src/media/mdx/Bars/slots.ru.mdx +33 -0
- package/src/media/mdx/Bars/v-model.en.mdx +23 -14
- package/src/media/mdx/Bars/v-model.ru.mdx +23 -14
- package/src/media/mdx/Bars/wikiMdxBars.ts +5 -11
- package/src/media/mdx/Button/button.en.mdx +89 -1
- package/src/media/mdx/Button/button.ru.mdx +89 -1
- package/src/media/mdx/Button/outline.en.mdx +12 -14
- package/src/media/mdx/Button/outline.ru.mdx +12 -14
- package/src/media/mdx/Button/primary.en.mdx +12 -19
- package/src/media/mdx/Button/primary.ru.mdx +12 -19
- package/src/media/mdx/Button/secondary.en.mdx +12 -17
- package/src/media/mdx/Button/secondary.ru.mdx +12 -17
- package/src/media/mdx/Button/text.en.mdx +12 -11
- package/src/media/mdx/Button/text.ru.mdx +12 -11
- package/src/media/mdx/Cell/cell.en.mdx +50 -9
- package/src/media/mdx/Cell/cell.ru.mdx +50 -9
- package/src/media/mdx/Cell/slots.en.mdx +82 -0
- package/src/media/mdx/Cell/slots.ru.mdx +83 -0
- package/src/media/mdx/Cell/wikiMdxCell.ts +6 -12
- package/src/media/mdx/Chip/assistive.en.mdx +12 -14
- package/src/media/mdx/Chip/assistive.ru.mdx +12 -14
- package/src/media/mdx/Chip/chip.en.mdx +69 -9
- package/src/media/mdx/Chip/chip.ru.mdx +69 -9
- package/src/media/mdx/Chip/input.en.mdx +12 -19
- package/src/media/mdx/Chip/input.ru.mdx +12 -19
- package/src/media/mdx/Field/arrows.en.mdx +67 -17
- package/src/media/mdx/Field/arrows.ru.mdx +67 -17
- package/src/media/mdx/Field/cancel.en.mdx +47 -10
- package/src/media/mdx/Field/cancel.ru.mdx +47 -10
- package/src/media/mdx/Field/field.en.mdx +45 -15
- package/src/media/mdx/Field/field.ru.mdx +45 -15
- package/src/media/mdx/Field/slots.en.mdx +151 -0
- package/src/media/mdx/Field/slots.ru.mdx +151 -0
- package/src/media/mdx/Field/value.en.mdx +49 -28
- package/src/media/mdx/Field/value.ru.mdx +49 -28
- package/src/media/mdx/Field/width.en.mdx +21 -19
- package/src/media/mdx/Field/width.ru.mdx +21 -19
- package/src/media/mdx/Field/wikiMdxField.ts +14 -26
- package/src/media/mdx/FieldCounter/fieldCounter.en.mdx +52 -14
- package/src/media/mdx/FieldCounter/fieldCounter.ru.mdx +55 -14
- package/src/media/mdx/FieldCounter/templates.en.mdx +26 -6
- package/src/media/mdx/FieldCounter/templates.ru.mdx +25 -5
- package/src/media/mdx/FieldLabel/fieldLabel.en.mdx +56 -14
- package/src/media/mdx/FieldLabel/fieldLabel.ru.mdx +56 -14
- package/src/media/mdx/FieldMessage/fieldMessage.en.mdx +58 -14
- package/src/media/mdx/FieldMessage/fieldMessage.ru.mdx +58 -14
- package/src/media/mdx/FieldMessage/slots.en.mdx +45 -0
- package/src/media/mdx/FieldMessage/slots.ru.mdx +45 -0
- package/src/media/mdx/FieldMessage/wikiMdxFieldMessage.ts +6 -12
- package/src/media/mdx/Icon/expose.isActive.en.mdx +2 -10
- package/src/media/mdx/Icon/expose.isActive.ru.mdx +2 -10
- package/src/media/mdx/Icon/icon.en.mdx +43 -9
- package/src/media/mdx/Icon/icon.ru.mdx +27 -28
- package/src/media/mdx/Image/adaptive.en.mdx +63 -20
- package/src/media/mdx/Image/adaptive.ru.mdx +62 -25
- package/src/media/mdx/Image/event.load.en.mdx +37 -2
- package/src/media/mdx/Image/event.load.ru.mdx +34 -7
- package/src/media/mdx/Image/{expose.type.ru.mdx → expose.en.mdx} +11 -1
- package/src/media/mdx/Image/expose.ru.mdx +31 -0
- package/src/media/mdx/Image/image.en.mdx +46 -0
- package/src/media/mdx/Image/image.ru.mdx +47 -0
- package/src/media/mdx/Image/size.en.mdx +19 -19
- package/src/media/mdx/Image/size.ru.mdx +19 -23
- package/src/media/mdx/Image/value.en.mdx +10 -27
- package/src/media/mdx/Image/value.ru.mdx +10 -29
- package/src/media/mdx/Image/wikiMdxImage.ts +11 -11
- package/src/media/mdx/List/event.close.en.mdx +5 -8
- package/src/media/mdx/List/event.close.ru.mdx +5 -8
- package/src/media/mdx/List/list.en.mdx +56 -14
- package/src/media/mdx/List/list.ru.mdx +56 -14
- package/src/media/mdx/List/lite.en.mdx +17 -12
- package/src/media/mdx/List/lite.ru.mdx +17 -12
- package/src/media/mdx/List/slot.html.en.mdx +72 -21
- package/src/media/mdx/List/slot.html.ru.mdx +72 -21
- package/src/media/mdx/ListGroup/listGroup.en.mdx +55 -1
- package/src/media/mdx/ListGroup/listGroup.ru.mdx +55 -1
- package/src/media/mdx/ListGroup/slots.en.mdx +10 -0
- package/src/media/mdx/ListGroup/slots.ru.mdx +10 -0
- package/src/media/mdx/ListGroup/wikiMdxListGroup.ts +6 -12
- package/src/media/mdx/ListItem/basic.en.mdx +47 -10
- package/src/media/mdx/ListItem/basic.ru.mdx +46 -9
- package/src/media/mdx/ListItem/fill.en.mdx +22 -8
- package/src/media/mdx/ListItem/fill.ru.mdx +22 -8
- package/src/media/mdx/ListItem/slots.en.mdx +7 -0
- package/src/media/mdx/ListItem/slots.ru.mdx +7 -0
- package/src/media/mdx/ListItem/wikiMdxListItem.ts +7 -13
- package/src/media/mdx/ListMenu/listMenu.en.mdx +62 -1
- package/src/media/mdx/ListMenu/listMenu.ru.mdx +62 -1
- package/src/media/mdx/Mask/basic.en.mdx +68 -16
- package/src/media/mdx/Mask/basic.ru.mdx +70 -11
- package/src/media/mdx/Mask/dateTypes.en.mdx +82 -68
- package/src/media/mdx/Mask/dateTypes.ru.mdx +82 -68
- package/src/media/mdx/Mask/expose.en.mdx +20 -0
- package/src/media/mdx/Mask/expose.ru.mdx +20 -0
- package/src/media/mdx/Mask/groupSave.en.mdx +13 -46
- package/src/media/mdx/Mask/groupSave.ru.mdx +13 -46
- package/src/media/mdx/Mask/mask.en.mdx +12 -66
- package/src/media/mdx/Mask/mask.ru.mdx +12 -66
- package/src/media/mdx/Mask/match.en.mdx +16 -24
- package/src/media/mdx/Mask/match.ru.mdx +16 -24
- package/src/media/mdx/Mask/numberTypes.en.mdx +64 -52
- package/src/media/mdx/Mask/numberTypes.ru.mdx +64 -52
- package/src/media/mdx/Mask/pattern.en.mdx +63 -75
- package/src/media/mdx/Mask/pattern.ru.mdx +63 -75
- package/src/media/mdx/Mask/special.en.mdx +174 -97
- package/src/media/mdx/Mask/special.ru.mdx +174 -97
- package/src/media/mdx/Mask/type.en.mdx +12 -36
- package/src/media/mdx/Mask/type.ru.mdx +11 -35
- package/src/media/mdx/Mask/visible.en.mdx +33 -41
- package/src/media/mdx/Mask/visible.ru.mdx +32 -40
- package/src/media/mdx/Mask/wikiMdxMask.ts +6 -0
- package/src/media/mdx/Menu/ajax.en.mdx +44 -51
- package/src/media/mdx/Menu/ajax.ru.mdx +44 -52
- package/src/media/mdx/Menu/menu.en.mdx +63 -1
- package/src/media/mdx/Menu/menu.ru.mdx +64 -1
- package/src/media/mdx/Menu/slots.en.mdx +122 -0
- package/src/media/mdx/Menu/slots.ru.mdx +122 -0
- package/src/media/mdx/Menu/wikiMdxMenu.ts +7 -32
- package/src/media/mdx/MotionTransform/animationHeadPosition.en.mdx +10 -22
- package/src/media/mdx/MotionTransform/animationHeadPosition.ru.mdx +10 -22
- package/src/media/mdx/MotionTransform/classes.en.mdx +18 -25
- package/src/media/mdx/MotionTransform/classes.ru.mdx +18 -25
- package/src/media/mdx/MotionTransform/events.en.mdx +31 -43
- package/src/media/mdx/MotionTransform/events.ru.mdx +31 -43
- package/src/media/mdx/MotionTransform/expose.isShow.en.mdx +2 -4
- package/src/media/mdx/MotionTransform/expose.isShow.ru.mdx +2 -4
- package/src/media/mdx/MotionTransform/ignore.en.mdx +22 -24
- package/src/media/mdx/MotionTransform/ignore.ru.mdx +22 -24
- package/src/media/mdx/MotionTransform/motionTransform.en.mdx +44 -15
- package/src/media/mdx/MotionTransform/motionTransform.ru.mdx +44 -15
- package/src/media/mdx/MotionTransform/slots.en.mdx +92 -0
- package/src/media/mdx/MotionTransform/slots.ru.mdx +92 -0
- package/src/media/mdx/MotionTransform/v-model.en.mdx +23 -14
- package/src/media/mdx/MotionTransform/v-model.ru.mdx +23 -14
- package/src/media/mdx/MotionTransform/wikiMdxMotionTransform.ts +5 -17
- package/src/media/mdx/Progress/circular.en.mdx +7 -20
- package/src/media/mdx/Progress/circular.ru.mdx +7 -20
- package/src/media/mdx/Progress/delays.en.mdx +6 -13
- package/src/media/mdx/Progress/delays.ru.mdx +6 -13
- package/src/media/mdx/Progress/linear.en.mdx +9 -23
- package/src/media/mdx/Progress/linear.ru.mdx +9 -23
- package/src/media/mdx/Progress/progress.en.mdx +67 -5
- package/src/media/mdx/Progress/progress.ru.mdx +67 -5
- package/src/media/mdx/Progress/values.en.mdx +6 -28
- package/src/media/mdx/Progress/values.ru.mdx +6 -29
- package/src/media/mdx/Ripple/ripple.en.mdx +34 -40
- package/src/media/mdx/Ripple/ripple.ru.mdx +34 -40
- package/src/media/mdx/Scrollbar/emits-include.en.mdx +38 -0
- package/src/media/mdx/Scrollbar/emits-include.ru.mdx +38 -0
- package/src/media/mdx/Scrollbar/emits.en.mdx +38 -0
- package/src/media/mdx/Scrollbar/emits.ru.mdx +38 -0
- package/src/media/mdx/Scrollbar/scrollbar.en.mdx +38 -2
- package/src/media/mdx/Scrollbar/scrollbar.ru.mdx +38 -2
- package/src/media/mdx/Scrollbar/wikiMdxScrollbar.ts +12 -43
- package/src/media/mdx/Skeleton/classes.en.mdx +13 -0
- package/src/media/mdx/Skeleton/classes.ru.mdx +13 -0
- package/src/media/mdx/Skeleton/expose.isActive.en.mdx +7 -28
- package/src/media/mdx/Skeleton/expose.isActive.ru.mdx +7 -28
- package/src/media/mdx/Skeleton/skeleton.en.mdx +37 -36
- package/src/media/mdx/Skeleton/skeleton.ru.mdx +37 -36
- package/src/media/mdx/Skeleton/wikiMdxSkeleton.ts +7 -0
- package/src/media/mdx/Window/axis.en.mdx +11 -19
- package/src/media/mdx/Window/axis.ru.mdx +11 -19
- package/src/media/mdx/Window/classes.en.mdx +9 -26
- package/src/media/mdx/Window/classes.ru.mdx +9 -26
- package/src/media/mdx/Window/event.window.en.mdx +26 -8
- package/src/media/mdx/Window/event.window.ru.mdx +26 -8
- package/src/media/mdx/Window/expose.en.mdx +44 -0
- package/src/media/mdx/Window/expose.ru.mdx +44 -0
- package/src/media/mdx/Window/hooks.en.mdx +29 -50
- package/src/media/mdx/Window/hooks.ru.mdx +31 -52
- package/src/media/mdx/Window/slots.en.mdx +168 -0
- package/src/media/mdx/Window/slots.ru.mdx +168 -0
- package/src/media/mdx/Window/v-model.en.mdx +20 -11
- package/src/media/mdx/Window/v-model.ru.mdx +19 -11
- package/src/media/mdx/Window/wikiMdxWindow.ts +11 -41
- package/src/media/mdx/Window/window.en.mdx +55 -1
- package/src/media/mdx/Window/window.ru.mdx +55 -1
- package/src/media/mdx/event/events.bars.en.mdx +50 -0
- package/src/media/mdx/event/events.bars.ru.mdx +50 -0
- package/src/media/mdx/event/events.beforeinput.en.mdx +13 -0
- package/src/media/mdx/event/events.beforeinput.ru.mdx +13 -0
- package/src/media/mdx/event/events.click.en.mdx +36 -0
- package/src/media/mdx/event/events.click.ru.mdx +36 -0
- package/src/media/mdx/event/events.focus.en.mdx +13 -0
- package/src/media/mdx/event/events.focus.ru.mdx +13 -0
- package/src/media/mdx/event/events.input.en.mdx +89 -0
- package/src/media/mdx/event/events.input.ru.mdx +90 -0
- package/src/media/mdx/event/events.keyboard.en.mdx +13 -0
- package/src/media/mdx/event/events.keyboard.ru.mdx +13 -0
- package/src/media/mdx/event/events.paste.en.mdx +6 -0
- package/src/media/mdx/event/events.paste.ru.mdx +6 -0
- package/src/media/mdx/event/events.reset.en.mdx +6 -0
- package/src/media/mdx/event/events.reset.ru.mdx +6 -0
- package/src/media/mdx/event/wikiMdxEvent.ts +39 -74
- package/src/media/mdx/expose/expose.clear.en.mdx +3 -0
- package/src/media/mdx/expose/expose.clear.ru.mdx +3 -0
- package/src/media/mdx/expose/expose.detail.en.mdx +5 -0
- package/src/media/mdx/expose/{detail.ru.mdx → expose.detail.ru.mdx} +1 -3
- package/src/media/mdx/expose/expose.open.en.mdx +5 -0
- package/src/media/mdx/expose/expose.open.ru.mdx +5 -0
- package/src/media/mdx/expose/expose.selected.en.mdx +23 -0
- package/src/media/mdx/expose/expose.selected.ru.mdx +23 -0
- package/src/media/mdx/expose/{value.en.mdx → expose.value.en.mdx} +1 -3
- package/src/media/mdx/expose/{value.ru.mdx → expose.value.ru.mdx} +1 -3
- package/src/media/mdx/expose/wikiMdxExpose.ts +25 -31
- package/src/media/mdx/slot/caption.en.mdx +2 -7
- package/src/media/mdx/slot/caption.ru.mdx +2 -7
- package/src/media/mdx/slot/control.en.mdx +4 -5
- package/src/media/mdx/slot/control.ru.mdx +4 -5
- package/src/media/mdx/slot/default.en.mdx +2 -7
- package/src/media/mdx/slot/default.ru.mdx +2 -7
- package/src/media/mdx/slot/description.en.mdx +2 -7
- package/src/media/mdx/slot/description.ru.mdx +2 -7
- package/src/media/mdx/slot/footer.en.mdx +4 -5
- package/src/media/mdx/slot/footer.ru.mdx +4 -5
- package/src/media/mdx/slot/label.en.mdx +2 -8
- package/src/media/mdx/slot/label.ru.mdx +2 -8
- package/src/media/mdx/slot/prefix.en.mdx +1 -4
- package/src/media/mdx/slot/prefix.ru.mdx +1 -4
- package/src/media/mdx/slot/suffix.en.mdx +1 -4
- package/src/media/mdx/slot/suffix.ru.mdx +1 -4
- package/src/media/mdx/slot/wikiMdxSlot.ts +0 -6
- package/src/media/mdx/style/adaptive.en.mdx +6 -16
- package/src/media/mdx/style/adaptive.ru.mdx +6 -16
- package/src/media/mdx/style/asPalette.en.mdx +13 -5
- package/src/media/mdx/style/asPalette.ru.mdx +13 -5
- package/src/media/mdx/style/dir.en.mdx +14 -7
- package/src/media/mdx/style/dir.ru.mdx +14 -7
- package/src/media/mdx/style/isSkeleton.en.mdx +20 -6
- package/src/media/mdx/style/isSkeleton.ru.mdx +19 -5
- package/src/media/mdx/value/highlight.en.mdx +19 -12
- package/src/media/mdx/value/highlight.ru.mdx +19 -12
- package/src/media/mdx/value/labelNumber.en.mdx +39 -20
- package/src/media/mdx/value/labelNumber.ru.mdx +39 -20
- package/src/media/mdx/value/value.en.mdx +6 -12
- package/src/media/mdx/value/value.ru.mdx +6 -12
- package/src/media/styles/color.md +1 -0
- package/src/media/styles/en/about.mdx +79 -0
- package/src/media/styles/en/color.mdx +711 -0
- package/src/media/styles/en/content.mdx +29 -0
- package/src/media/styles/en/dimension.mdx +233 -0
- package/src/media/styles/en/dir.mdx +193 -0
- package/src/media/styles/en/flex.mdx +249 -0
- package/src/media/styles/en/font.mdx +171 -0
- package/src/media/styles/en/margin.mdx +115 -0
- package/src/media/styles/en/media.mdx +133 -0
- package/src/media/styles/en/padding.mdx +115 -0
- package/src/media/styles/en/position.mdx +183 -0
- package/src/media/styles/en/rules.mdx +117 -0
- package/src/media/styles/en/scrollbar.mdx +27 -0
- package/src/media/styles/en/selector.mdx +153 -0
- package/src/media/styles/en/transform.mdx +114 -0
- package/src/media/styles/ru/about.mdx +78 -0
- package/src/media/styles/ru/color.mdx +711 -0
- package/src/media/styles/ru/content.mdx +30 -0
- package/src/media/styles/ru/dimension.mdx +233 -0
- package/src/media/styles/ru/dir.mdx +193 -0
- package/src/media/styles/ru/flex.mdx +249 -0
- package/src/media/styles/ru/font.mdx +171 -0
- package/src/media/styles/ru/margin.mdx +115 -0
- package/src/media/styles/ru/media.mdx +133 -0
- package/src/media/styles/ru/padding.mdx +115 -0
- package/src/media/styles/ru/position.mdx +183 -0
- package/src/media/styles/ru/rules.mdx +117 -0
- package/src/media/styles/ru/scrollbar.mdx +27 -0
- package/src/media/styles/ru/selector.mdx +153 -0
- package/src/media/styles/ru/transform.mdx +114 -0
- package/src/styles/storybookStyle.scss +1 -0
- package/src/media/mdx/Bars/slot.actionBars.en.mdx +0 -12
- package/src/media/mdx/Bars/slot.actionBars.ru.mdx +0 -11
- package/src/media/mdx/Bars/slot.bars.en.mdx +0 -12
- package/src/media/mdx/Bars/slot.bars.ru.mdx +0 -11
- package/src/media/mdx/Cell/slot.body.en.mdx +0 -7
- package/src/media/mdx/Cell/slot.body.ru.mdx +0 -7
- package/src/media/mdx/Cell/slot.trailing.en.mdx +0 -7
- package/src/media/mdx/Cell/slot.trailing.ru.mdx +0 -7
- package/src/media/mdx/Field/slot.default.en.mdx +0 -9
- package/src/media/mdx/Field/slot.default.ru.mdx +0 -9
- package/src/media/mdx/Field/slot.leading.en.mdx +0 -10
- package/src/media/mdx/Field/slot.leading.ru.mdx +0 -10
- package/src/media/mdx/Field/slot.trailing.en.mdx +0 -10
- package/src/media/mdx/Field/slot.trailing.ru.mdx +0 -10
- package/src/media/mdx/FieldMessage/slot.helper.en.mdx +0 -12
- package/src/media/mdx/FieldMessage/slot.helper.ru.mdx +0 -12
- package/src/media/mdx/FieldMessage/slot.validation.en.mdx +0 -12
- package/src/media/mdx/FieldMessage/slot.validation.ru.mdx +0 -12
- package/src/media/mdx/Image/expose.data.en.mdx +0 -13
- package/src/media/mdx/Image/expose.data.ru.mdx +0 -13
- package/src/media/mdx/Image/expose.type.en.mdx +0 -21
- package/src/media/mdx/ListGroup/slot.head.en.mdx +0 -8
- package/src/media/mdx/ListGroup/slot.head.ru.mdx +0 -8
- package/src/media/mdx/ListGroup/slot.list.en.mdx +0 -8
- package/src/media/mdx/ListGroup/slot.list.ru.mdx +0 -8
- package/src/media/mdx/ListItem/slot.body.en.mdx +0 -7
- package/src/media/mdx/ListItem/slot.body.ru.mdx +0 -7
- package/src/media/mdx/ListItem/slot.trailing.en.mdx +0 -7
- package/src/media/mdx/ListItem/slot.trailing.ru.mdx +0 -7
- package/src/media/mdx/Menu/slot.contextBottom.en.mdx +0 -9
- package/src/media/mdx/Menu/slot.contextBottom.ru.mdx +0 -9
- package/src/media/mdx/Menu/slot.contextTop.en.mdx +0 -9
- package/src/media/mdx/Menu/slot.contextTop.ru.mdx +0 -9
- package/src/media/mdx/Menu/slot.control.en.mdx +0 -9
- package/src/media/mdx/Menu/slot.control.ru.mdx +0 -9
- package/src/media/mdx/Menu/slot.footer.en.mdx +0 -9
- package/src/media/mdx/Menu/slot.footer.ru.mdx +0 -9
- package/src/media/mdx/Menu/slot.title.en.mdx +0 -9
- package/src/media/mdx/Menu/slot.title.ru.mdx +0 -9
- package/src/media/mdx/MotionTransform/slot.body.en.mdx +0 -11
- package/src/media/mdx/MotionTransform/slot.body.ru.mdx +0 -11
- package/src/media/mdx/MotionTransform/slot.head.en.mdx +0 -11
- package/src/media/mdx/MotionTransform/slot.head.ru.mdx +0 -11
- package/src/media/mdx/MotionTransform/slot.params.en.mdx +0 -61
- package/src/media/mdx/MotionTransform/slot.params.ru.mdx +0 -61
- package/src/media/mdx/Scrollbar/event.bottom.en.mdx +0 -12
- package/src/media/mdx/Scrollbar/event.bottom.ru.mdx +0 -12
- package/src/media/mdx/Scrollbar/event.edge.en.mdx +0 -14
- package/src/media/mdx/Scrollbar/event.edge.ru.mdx +0 -14
- package/src/media/mdx/Scrollbar/event.leaveBottom.en.mdx +0 -11
- package/src/media/mdx/Scrollbar/event.leaveBottom.ru.mdx +0 -11
- package/src/media/mdx/Scrollbar/event.leaveTop.en.mdx +0 -11
- package/src/media/mdx/Scrollbar/event.leaveTop.ru.mdx +0 -11
- package/src/media/mdx/Scrollbar/event.reachBottom.en.mdx +0 -11
- package/src/media/mdx/Scrollbar/event.reachBottom.ru.mdx +0 -11
- package/src/media/mdx/Scrollbar/event.reachTop.en.mdx +0 -11
- package/src/media/mdx/Scrollbar/event.reachTop.ru.mdx +0 -11
- package/src/media/mdx/Scrollbar/event.top.en.mdx +0 -12
- package/src/media/mdx/Scrollbar/event.top.ru.mdx +0 -12
- package/src/media/mdx/Window/expose.control.en.mdx +0 -15
- package/src/media/mdx/Window/expose.control.ru.mdx +0 -15
- package/src/media/mdx/Window/expose.id.en.mdx +0 -7
- package/src/media/mdx/Window/expose.id.ru.mdx +0 -7
- package/src/media/mdx/Window/expose.open.en.mdx +0 -7
- package/src/media/mdx/Window/expose.open.ru.mdx +0 -7
- package/src/media/mdx/Window/expose.setOpen.en.mdx +0 -7
- package/src/media/mdx/Window/expose.setOpen.ru.mdx +0 -7
- package/src/media/mdx/Window/expose.toClose.en.mdx +0 -7
- package/src/media/mdx/Window/expose.toClose.ru.mdx +0 -7
- package/src/media/mdx/Window/expose.toOpen.en.mdx +0 -7
- package/src/media/mdx/Window/expose.toOpen.ru.mdx +0 -7
- package/src/media/mdx/Window/expose.toggle.en.mdx +0 -7
- package/src/media/mdx/Window/expose.toggle.ru.mdx +0 -7
- package/src/media/mdx/event/bars.en.mdx +0 -17
- package/src/media/mdx/event/bars.ru.mdx +0 -14
- package/src/media/mdx/event/barsBack.en.mdx +0 -14
- package/src/media/mdx/event/barsBack.ru.mdx +0 -16
- package/src/media/mdx/event/barsLite.en.mdx +0 -14
- package/src/media/mdx/event/barsLite.ru.mdx +0 -14
- package/src/media/mdx/event/click.en.mdx +0 -18
- package/src/media/mdx/event/click.ru.mdx +0 -18
- package/src/media/mdx/event/clickLite.en.mdx +0 -18
- package/src/media/mdx/event/clickLite.ru.mdx +0 -18
- package/src/media/mdx/event/scrollbarBottom.en.mdx +0 -13
- package/src/media/mdx/event/scrollbarBottom.ru.mdx +0 -13
- package/src/media/mdx/event/scrollbarEdge.en.mdx +0 -15
- package/src/media/mdx/event/scrollbarEdge.ru.mdx +0 -15
- package/src/media/mdx/event/scrollbarLeaveBottom.en.mdx +0 -12
- package/src/media/mdx/event/scrollbarLeaveBottom.ru.mdx +0 -12
- package/src/media/mdx/event/scrollbarLeaveTop.en.mdx +0 -12
- package/src/media/mdx/event/scrollbarLeaveTop.ru.mdx +0 -12
- package/src/media/mdx/event/scrollbarReachBottom.en.mdx +0 -12
- package/src/media/mdx/event/scrollbarReachBottom.ru.mdx +0 -12
- package/src/media/mdx/event/scrollbarReachTop.en.mdx +0 -12
- package/src/media/mdx/event/scrollbarReachTop.ru.mdx +0 -12
- package/src/media/mdx/event/scrollbarTop.en.mdx +0 -13
- package/src/media/mdx/event/scrollbarTop.ru.mdx +0 -13
- package/src/media/mdx/event/window.en.mdx +0 -20
- package/src/media/mdx/event/window.ru.mdx +0 -20
- package/src/media/mdx/expose/detail.en.mdx +0 -7
- package/src/media/mdx/expose/isSelected.en.mdx +0 -8
- package/src/media/mdx/expose/isSelected.ru.mdx +0 -8
- package/src/media/mdx/expose/selectedList.en.mdx +0 -7
- package/src/media/mdx/expose/selectedList.ru.mdx +0 -7
- package/src/media/mdx/expose/selectedNames.en.mdx +0 -7
- package/src/media/mdx/expose/selectedNames.ru.mdx +0 -7
- package/src/media/mdx/expose/selectedValues.en.mdx +0 -8
- package/src/media/mdx/expose/selectedValues.ru.mdx +0 -8
- package/src/media/mdx/slot/title.en.mdx +0 -9
- package/src/media/mdx/slot/title.ru.mdx +0 -9
|
@@ -1,22 +1,97 @@
|
|
|
1
|
-
|
|
1
|
+
## Description
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Versatile bar component for application headers, toolbars, and contextual action bars with support for navigation, action buttons, and bulk operation modes.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
- **Toolbars** — Placement of primary actions and functional interface elements
|
|
7
|
-
- **Contextual actions** — Special mode for bulk operations on selected items
|
|
8
|
-
- **Structured navigation** — Standardized back button behavior and screen transitions
|
|
5
|
+
Bars provides a comprehensive solution for creating consistent top-level interface elements with structured layout for titles, descriptions, back navigation, and interactive button sets. The component integrates action mode switching for contextual operations, unified button configuration, and skeleton loading states for creating modern application headers and toolbars.
|
|
9
6
|
|
|
10
|
-
|
|
7
|
+
**Key features:**
|
|
11
8
|
|
|
12
|
-
-
|
|
13
|
-
-
|
|
14
|
-
-
|
|
15
|
-
-
|
|
16
|
-
-
|
|
9
|
+
- Structured text hierarchy (label and description with dynamic updates)
|
|
10
|
+
- Configurable back button with navigation and close icon switching
|
|
11
|
+
- Flexible button arrays (bars) for primary actions on the right side
|
|
12
|
+
- Action mode with separate content and button set for bulk operations
|
|
13
|
+
- Two-way binding (v-model:action) for state synchronization
|
|
14
|
+
- Unified button attributes (buttonAttrs) for consistent styling
|
|
15
|
+
- Event handling for click interactions and navigation
|
|
16
|
+
- Skeleton system integration for loading states
|
|
17
|
+
- Icon customization for back and close buttons
|
|
17
18
|
|
|
18
|
-
|
|
19
|
+
**Typical use cases:**
|
|
19
20
|
|
|
20
|
-
|
|
21
|
+
- Application screen headers with navigation and actions
|
|
22
|
+
- Toolbar panels for sections and pages
|
|
23
|
+
- Contextual action bars for selected item operations
|
|
24
|
+
- Search headers with filter and sort controls
|
|
25
|
+
- Settings screens with back navigation
|
|
26
|
+
- List headers with bulk action support
|
|
27
|
+
- Multi-selection interfaces with action mode
|
|
21
28
|
|
|
22
|
-
|
|
29
|
+
```html
|
|
30
|
+
<script setup>
|
|
31
|
+
import { ref } from 'vue'
|
|
32
|
+
|
|
33
|
+
const actionMode = ref(false)
|
|
34
|
+
const selectedCount = ref(0)
|
|
35
|
+
|
|
36
|
+
const handleSearch = () => {
|
|
37
|
+
console.log('Search clicked')
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
const handleFilter = () => {
|
|
41
|
+
console.log('Filter clicked')
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
const handleDelete = () => {
|
|
45
|
+
console.log('Delete selected items')
|
|
46
|
+
actionMode.value = false
|
|
47
|
+
selectedCount.value = 0
|
|
48
|
+
}
|
|
49
|
+
</script>
|
|
50
|
+
|
|
51
|
+
<template>
|
|
52
|
+
<div class="app-layout">
|
|
53
|
+
<!-- Standard header with navigation and actions -->
|
|
54
|
+
<Bars
|
|
55
|
+
label="Messages"
|
|
56
|
+
description="Your conversations"
|
|
57
|
+
icon-back="arrow_back"
|
|
58
|
+
:bars="[
|
|
59
|
+
{ icon: 'search', onClick: handleSearch },
|
|
60
|
+
{ icon: 'filter_list', onClick: handleFilter },
|
|
61
|
+
{ icon: 'more_vert' }
|
|
62
|
+
]"
|
|
63
|
+
/>
|
|
64
|
+
|
|
65
|
+
<!-- Header with action mode for bulk operations -->
|
|
66
|
+
<Bars
|
|
67
|
+
v-model:action="actionMode"
|
|
68
|
+
label="Contacts"
|
|
69
|
+
description="Manage your contacts"
|
|
70
|
+
:action-label="`${selectedCount} selected`"
|
|
71
|
+
action-description="Choose an action"
|
|
72
|
+
icon-back="arrow_back"
|
|
73
|
+
icon-close="close"
|
|
74
|
+
:bars="[
|
|
75
|
+
{ icon: 'add' },
|
|
76
|
+
{ icon: 'search' }
|
|
77
|
+
]"
|
|
78
|
+
:action-bars="[
|
|
79
|
+
{ icon: 'share' },
|
|
80
|
+
{ icon: 'delete', onClick: handleDelete }
|
|
81
|
+
]"
|
|
82
|
+
/>
|
|
83
|
+
|
|
84
|
+
<!-- Toolbar with custom button attributes -->
|
|
85
|
+
<Bars
|
|
86
|
+
label="Settings"
|
|
87
|
+
:button-attrs="{ secondary: true }"
|
|
88
|
+
:bars="[
|
|
89
|
+
{ icon: 'sync', label: 'Sync' },
|
|
90
|
+
{ icon: 'info', label: 'Info' }
|
|
91
|
+
]"
|
|
92
|
+
/>
|
|
93
|
+
</div>
|
|
94
|
+
</template>
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
> Bars is designed as a top-level UI component for creating consistent application headers, toolbars, and contextual action interfaces with comprehensive navigation, action management, and bulk operation support.
|
|
@@ -1,22 +1,98 @@
|
|
|
1
|
-
|
|
1
|
+
## Описание
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Универсальный компонент панели для заголовков приложений, панелей инструментов и контекстных панелей действий с поддержкой навигации, кнопок действий и режимов массовых операций.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
- **Панели инструментов** — Размещение основных действий и функциональных элементов интерфейса
|
|
7
|
-
- **Контекстные действия** — Специальный режим для массовых операций над выбранными элементами
|
|
8
|
-
- **Структурированная навигация** — Стандартизированное поведение кнопки назад и переходов между экранами
|
|
5
|
+
Bars предоставляет комплексное решение для создания согласованных элементов интерфейса верхнего уровня со структурированным макетом для заголовков, описаний, обратной навигации и интерактивных наборов кнопок. Компонент интегрирует переключение режима действий для контекстных операций, единую конфигурацию кнопок и состояния загрузки скелетонов для создания современных заголовков приложений и панелей инструментов.
|
|
9
6
|
|
|
10
|
-
|
|
7
|
+
**Основные возможности:**
|
|
11
8
|
|
|
12
|
-
-
|
|
13
|
-
-
|
|
14
|
-
-
|
|
15
|
-
-
|
|
16
|
-
-
|
|
9
|
+
- Структурированная текстовая иерархия (метка и описание с динамическим обновлением)
|
|
10
|
+
- Настраиваемая кнопка назад с навигацией и переключением иконки закрытия
|
|
11
|
+
- Гибкие массивы кнопок (bars) для основных действий справа
|
|
12
|
+
- Режим действий с отдельным контентом и набором кнопок для массовых операций
|
|
13
|
+
- Двусторонняя привязка (v-model:action) для синхронизации состояния
|
|
14
|
+
- Единые атрибуты кнопок (buttonAttrs) для согласованной стилизации
|
|
15
|
+
- Обработка событий для взаимодействий кликов и навигации
|
|
16
|
+
- Интеграция системы скелетонов для состояний загрузки
|
|
17
|
+
- Кастомизация иконок для кнопок назад и закрытия
|
|
17
18
|
|
|
18
|
-
|
|
19
|
+
**Типичные сценарии использования:**
|
|
19
20
|
|
|
20
|
-
|
|
21
|
+
- Заголовки экранов приложения с навигацией и действиями
|
|
22
|
+
- Панели инструментов для разделов и страниц
|
|
23
|
+
- Контекстные панели действий для операций с выбранными элементами
|
|
24
|
+
- Заголовки поиска с элементами управления фильтрами и сортировкой
|
|
25
|
+
- Экраны настроек с обратной навигацией
|
|
26
|
+
- Заголовки списков с поддержкой массовых действий
|
|
27
|
+
- Интерфейсы множественного выбора с режимом действий
|
|
28
|
+
|
|
29
|
+
```html
|
|
30
|
+
<script setup>
|
|
31
|
+
import { ref } from 'vue'
|
|
32
|
+
|
|
33
|
+
const actionMode = ref(false)
|
|
34
|
+
const selectedCount = ref(0)
|
|
35
|
+
|
|
36
|
+
const handleSearch = () => {
|
|
37
|
+
console.log('Нажат поиск')
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
const handleFilter = () => {
|
|
41
|
+
console.log('Нажат фильтр')
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
const handleDelete = () => {
|
|
45
|
+
console.log('Удалить выбранные элементы')
|
|
46
|
+
actionMode.value = false
|
|
47
|
+
selectedCount.value = 0
|
|
48
|
+
}
|
|
49
|
+
</script>
|
|
50
|
+
|
|
51
|
+
<template>
|
|
52
|
+
<div class="app-layout">
|
|
53
|
+
<!-- Стандартный заголовок с навигацией и действиями -->
|
|
54
|
+
<Bars
|
|
55
|
+
label="Сообщения"
|
|
56
|
+
description="Ваши беседы"
|
|
57
|
+
icon-back="arrow_back"
|
|
58
|
+
:bars="[
|
|
59
|
+
{ icon: 'search', onClick: handleSearch },
|
|
60
|
+
{ icon: 'filter_list', onClick: handleFilter },
|
|
61
|
+
{ icon: 'more_vert' }
|
|
62
|
+
]"
|
|
63
|
+
/>
|
|
64
|
+
|
|
65
|
+
<!-- Заголовок с режимом действий для массовых операций -->
|
|
66
|
+
<Bars
|
|
67
|
+
v-model:action="actionMode"
|
|
68
|
+
label="Контакты"
|
|
69
|
+
description="Управление контактами"
|
|
70
|
+
:action-label="`Выбрано: ${selectedCount}`"
|
|
71
|
+
action-description="Выберите действие"
|
|
72
|
+
icon-back="arrow_back"
|
|
73
|
+
icon-close="close"
|
|
74
|
+
:bars="[
|
|
75
|
+
{ icon: 'add' },
|
|
76
|
+
{ icon: 'search' }
|
|
77
|
+
]"
|
|
78
|
+
:action-bars="[
|
|
79
|
+
{ icon: 'share' },
|
|
80
|
+
{ icon: 'delete', onClick: handleDelete }
|
|
81
|
+
]"
|
|
82
|
+
/>
|
|
83
|
+
|
|
84
|
+
<!-- Панель инструментов с пользовательскими атрибутами кнопок -->
|
|
85
|
+
<Bars
|
|
86
|
+
label="Настройки"
|
|
87
|
+
:button-attrs="{ secondary: true }"
|
|
88
|
+
:bars="[
|
|
89
|
+
{ icon: 'sync', label: 'Синхр.' },
|
|
90
|
+
{ icon: 'info', label: 'Инфо' }
|
|
91
|
+
]"
|
|
92
|
+
/>
|
|
93
|
+
</div>
|
|
94
|
+
</template>
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
> Bars разработан как UI-компонент верхнего уровня для создания согласованных заголовков приложений, панелей инструментов и контекстных интерфейсов действий с комплексной поддержкой навигации, управления действиями и массовых операций.
|
|
21
98
|
|
|
22
|
-
> Это UI‑компонент верхнего уровня, предназначенный для прямого использования в интерфейсах приложений и дизайн‑системах.
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
```html
|
|
2
|
+
<Bars>
|
|
3
|
+
<template #bars>
|
|
4
|
+
<Button icon="search" />
|
|
5
|
+
<Button icon="refresh" />
|
|
6
|
+
<Button icon="more_vert" />
|
|
7
|
+
</template>
|
|
8
|
+
|
|
9
|
+
<template #actionBars>
|
|
10
|
+
<Button icon="share" />
|
|
11
|
+
<Button icon="edit" />
|
|
12
|
+
<Button icon="delete" />
|
|
13
|
+
</template>
|
|
14
|
+
</Bars>
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
### `bars`
|
|
18
|
+
|
|
19
|
+
Slot for placing action buttons in regular mode.
|
|
20
|
+
|
|
21
|
+
Allows you to fully override the composition, order, and appearance of buttons positioned to the right of the label and description. The `bars` area is right-aligned and inherits sizing/spacing from the base Bars component styles.
|
|
22
|
+
|
|
23
|
+
**Parameters:**
|
|
24
|
+
- Slot does not pass parameters (static slot)
|
|
25
|
+
|
|
26
|
+
### `actionBars`
|
|
27
|
+
|
|
28
|
+
Slot for placing buttons in action mode.
|
|
29
|
+
|
|
30
|
+
Allows you to fully redefine specialized actions displayed when item selection mode is active. The `actionBars` area is shown instead of regular `bars` when action mode is enabled (via `v-model:action` or the `action` property).
|
|
31
|
+
|
|
32
|
+
**Parameters:**
|
|
33
|
+
- Slot does not pass parameters (static slot)
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
```html
|
|
2
|
+
<Bars>
|
|
3
|
+
<template #bars>
|
|
4
|
+
<Button icon="search" />
|
|
5
|
+
<Button icon="refresh" />
|
|
6
|
+
<Button icon="more_vert" />
|
|
7
|
+
</template>
|
|
8
|
+
|
|
9
|
+
<template #actionBars>
|
|
10
|
+
<Button icon="share" />
|
|
11
|
+
<Button icon="edit" />
|
|
12
|
+
<Button icon="delete" />
|
|
13
|
+
</template>
|
|
14
|
+
</Bars>
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
### `bars`
|
|
18
|
+
|
|
19
|
+
Слот для размещения кнопок панели действий в обычном режиме.
|
|
20
|
+
|
|
21
|
+
Позволяет полностью переопределить состав, порядок и внешний вид кнопок, которые располагаются справа от заголовка и описания. Область `bars` выравнивается по правому краю панели и наследует размеры/отступы от базового стиля компонента Bars.
|
|
22
|
+
|
|
23
|
+
**Параметры:**
|
|
24
|
+
- Слот не передает параметры (статический слот)
|
|
25
|
+
|
|
26
|
+
### `actionBars`
|
|
27
|
+
|
|
28
|
+
Слот для размещения кнопок в режиме действий (action mode).
|
|
29
|
+
|
|
30
|
+
Позволяет полностью переопределить специализированные действия, которые отображаются при активированном режиме выбора элементов. Область `actionBars` отображается вместо обычного `bars`, когда включён action-режим (через `v-model:action` или свойство `action`).
|
|
31
|
+
|
|
32
|
+
**Параметры:**
|
|
33
|
+
- Слот не передает параметры (статический слот)
|
|
@@ -1,19 +1,28 @@
|
|
|
1
|
-
##
|
|
1
|
+
## State management via v-model
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Two-way binding of action mode state via `v-model:action`.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
This allows you to synchronize the action mode of the bar with a local data property in your parent component.
|
|
5
|
+
**Parameters:**
|
|
6
|
+
- `action: boolean` — action mode state of the bar
|
|
8
7
|
|
|
9
8
|
```html
|
|
10
|
-
<
|
|
9
|
+
<script setup>
|
|
10
|
+
import { ref } from 'vue'
|
|
11
|
+
|
|
12
|
+
const isAction = ref(false)
|
|
13
|
+
</script>
|
|
14
|
+
|
|
15
|
+
<template>
|
|
16
|
+
<button @click="isAction = true">Enable action mode</button>
|
|
17
|
+
|
|
18
|
+
<Bars v-model:action="isAction">
|
|
19
|
+
<template #bars>
|
|
20
|
+
<Button>Regular button</Button>
|
|
21
|
+
</template>
|
|
22
|
+
<template #actionBars>
|
|
23
|
+
<Button>Action button</Button>
|
|
24
|
+
<Button @click="isAction = false">Close</Button>
|
|
25
|
+
</template>
|
|
26
|
+
</Bars>
|
|
27
|
+
</template>
|
|
11
28
|
```
|
|
12
|
-
|
|
13
|
-
### How it works
|
|
14
|
-
|
|
15
|
-
The `v-model:action` is a shorthand for binding the `action` prop and listening to the `update:action` event.
|
|
16
|
-
|
|
17
|
-
- **`:action=\"isAction\"`** — The action mode is controlled by the `isAction` ref.
|
|
18
|
-
- **`@update:action=\"isAction = $event\"`** — When the internal state changes, the component emits an event to update the parent’s `isAction` ref.
|
|
19
|
-
|
|
@@ -1,19 +1,28 @@
|
|
|
1
|
-
##
|
|
1
|
+
## Управление состоянием через v-model
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Двусторонняя привязка состояния action-режима через `v-model:action`.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
Это позволяет синхронизировать режим действий панели с локальным свойством данных родительского компонента.
|
|
5
|
+
**Параметры:**
|
|
6
|
+
- `action: boolean` — состояние action-режима панели
|
|
8
7
|
|
|
9
8
|
```html
|
|
10
|
-
<
|
|
9
|
+
<script setup>
|
|
10
|
+
import { ref } from 'vue'
|
|
11
|
+
|
|
12
|
+
const isAction = ref(false)
|
|
13
|
+
</script>
|
|
14
|
+
|
|
15
|
+
<template>
|
|
16
|
+
<button @click="isAction = true">Включить action-режим</button>
|
|
17
|
+
|
|
18
|
+
<Bars v-model:action="isAction">
|
|
19
|
+
<template #bars>
|
|
20
|
+
<Button>Обычная кнопка</Button>
|
|
21
|
+
</template>
|
|
22
|
+
<template #actionBars>
|
|
23
|
+
<Button>Action-кнопка</Button>
|
|
24
|
+
<Button @click="isAction = false">Закрыть</Button>
|
|
25
|
+
</template>
|
|
26
|
+
</Bars>
|
|
27
|
+
</template>
|
|
11
28
|
```
|
|
12
|
-
|
|
13
|
-
### Как это работает
|
|
14
|
-
|
|
15
|
-
`v-model:action` — это сокращение для привязки свойства `action` и прослушивания события `update:action`.
|
|
16
|
-
|
|
17
|
-
- **`:action="isAction"`** — Режим действий управляется ref `isAction`.
|
|
18
|
-
- **`@update:action="isAction = $event"`** — Когда внутреннее состояние меняется, компонент генерирует событие для обновления `isAction` у родителя.
|
|
19
|
-
|
|
@@ -4,10 +4,8 @@ import barsEn from './bars.en.mdx'
|
|
|
4
4
|
import barsRu from './bars.ru.mdx'
|
|
5
5
|
import actionEn from './action.en.mdx'
|
|
6
6
|
import actionRu from './action.ru.mdx'
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import slotActionBarsEn from './slot.actionBars.en.mdx'
|
|
10
|
-
import slotActionBarsRu from './slot.actionBars.ru.mdx'
|
|
7
|
+
import slotsEn from './slots.en.mdx'
|
|
8
|
+
import slotsRu from './slots.ru.mdx'
|
|
11
9
|
import vModelEn from './v-model.en.mdx'
|
|
12
10
|
import vModelRu from './v-model.ru.mdx'
|
|
13
11
|
|
|
@@ -27,13 +25,9 @@ export const wikiMdxBars: StorybookComponentsMdxItem = {
|
|
|
27
25
|
en: actionEn,
|
|
28
26
|
ru: actionRu
|
|
29
27
|
},
|
|
30
|
-
'
|
|
31
|
-
en:
|
|
32
|
-
ru:
|
|
33
|
-
},
|
|
34
|
-
'slot.actionBars': {
|
|
35
|
-
en: slotActionBarsEn,
|
|
36
|
-
ru: slotActionBarsRu
|
|
28
|
+
'slots': {
|
|
29
|
+
en: slotsEn,
|
|
30
|
+
ru: slotsRu
|
|
37
31
|
},
|
|
38
32
|
'v-model': {
|
|
39
33
|
en: vModelEn,
|
|
@@ -1,3 +1,91 @@
|
|
|
1
1
|
## Description
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Interactive button component for triggering user actions with support for multiple visual variants, states, and accessibility features.
|
|
4
|
+
|
|
5
|
+
Button provides a comprehensive solution for creating consistent, accessible action elements with built-in support for icons, loading states, ripple effects, and skeleton placeholders. The component integrates visual variants (primary, secondary, outline, text), state management (focus, hover, disabled, selected), and adaptive behavior for responsive interfaces.
|
|
6
|
+
|
|
7
|
+
**Key features:**
|
|
8
|
+
|
|
9
|
+
- Multiple visual variants (primary, secondary, outline, text)
|
|
10
|
+
- Comprehensive state support (focus, hover, active, disabled, selected, readonly)
|
|
11
|
+
- Built-in icon positioning (leading and trailing)
|
|
12
|
+
- Progress indicator integration for loading states
|
|
13
|
+
- Ripple effect for tactile feedback
|
|
14
|
+
- Skeleton system for loading placeholders
|
|
15
|
+
- Adaptive and responsive behavior options
|
|
16
|
+
- Full accessibility support (ARIA, keyboard navigation)
|
|
17
|
+
- Customizable through design tokens
|
|
18
|
+
|
|
19
|
+
**Typical use cases:**
|
|
20
|
+
|
|
21
|
+
- Primary actions in forms and dialogs
|
|
22
|
+
- Navigation and menu items
|
|
23
|
+
- Toolbars and action bars
|
|
24
|
+
- Call-to-action elements
|
|
25
|
+
- Icon-only action buttons
|
|
26
|
+
- Loading state indicators
|
|
27
|
+
- Confirmation and cancellation actions
|
|
28
|
+
|
|
29
|
+
```html
|
|
30
|
+
<script setup>
|
|
31
|
+
import { ref } from 'vue'
|
|
32
|
+
|
|
33
|
+
const loading = ref(false)
|
|
34
|
+
const selected = ref(false)
|
|
35
|
+
|
|
36
|
+
const handleClick = async () => {
|
|
37
|
+
loading.value = true
|
|
38
|
+
// Simulate async operation
|
|
39
|
+
await new Promise(resolve => setTimeout(resolve, 2000))
|
|
40
|
+
loading.value = false
|
|
41
|
+
selected.value = !selected.value
|
|
42
|
+
}
|
|
43
|
+
</script>
|
|
44
|
+
|
|
45
|
+
<template>
|
|
46
|
+
<div class="actions">
|
|
47
|
+
<!-- Primary button with loading state -->
|
|
48
|
+
<Button
|
|
49
|
+
primary
|
|
50
|
+
:progress="loading"
|
|
51
|
+
@click="handleClick"
|
|
52
|
+
>
|
|
53
|
+
Submit
|
|
54
|
+
</Button>
|
|
55
|
+
|
|
56
|
+
<!-- Secondary button with icon -->
|
|
57
|
+
<Button
|
|
58
|
+
secondary
|
|
59
|
+
icon="settings"
|
|
60
|
+
>
|
|
61
|
+
Settings
|
|
62
|
+
</Button>
|
|
63
|
+
|
|
64
|
+
<!-- Outline button with trailing icon -->
|
|
65
|
+
<Button
|
|
66
|
+
outline
|
|
67
|
+
icon-trailing="arrow_forward"
|
|
68
|
+
>
|
|
69
|
+
Next
|
|
70
|
+
</Button>
|
|
71
|
+
|
|
72
|
+
<!-- Text button with selected state -->
|
|
73
|
+
<Button
|
|
74
|
+
text
|
|
75
|
+
:selected="selected"
|
|
76
|
+
@click="selected = !selected"
|
|
77
|
+
>
|
|
78
|
+
Toggle
|
|
79
|
+
</Button>
|
|
80
|
+
|
|
81
|
+
<!-- Icon-only button -->
|
|
82
|
+
<Button
|
|
83
|
+
primary
|
|
84
|
+
icon="favorite"
|
|
85
|
+
adaptive="iconAlways"
|
|
86
|
+
/>
|
|
87
|
+
</div>
|
|
88
|
+
</template>
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
> Button is designed as a universal interactive element with comprehensive state management, visual variants, and accessibility features for creating consistent action interfaces.
|
|
@@ -1,3 +1,91 @@
|
|
|
1
1
|
## Описание
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Интерактивный компонент кнопки для инициирования действий пользователя с поддержкой множественных визуальных вариантов, состояний и функций доступности.
|
|
4
|
+
|
|
5
|
+
Button предоставляет комплексное решение для создания согласованных, доступных элементов действий со встроенной поддержкой иконок, состояний загрузки, эффектов ripple и плейсхолдеров-скелетонов. Компонент интегрирует визуальные варианты (primary, secondary, outline, text), управление состояниями (focus, hover, disabled, selected) и адаптивное поведение для отзывчивых интерфейсов.
|
|
6
|
+
|
|
7
|
+
**Основные возможности:**
|
|
8
|
+
|
|
9
|
+
- Множественные визуальные варианты (primary, secondary, outline, text)
|
|
10
|
+
- Комплексная поддержка состояний (focus, hover, active, disabled, selected, readonly)
|
|
11
|
+
- Встроенное позиционирование иконок (в начале и в конце)
|
|
12
|
+
- Интеграция индикатора прогресса для состояний загрузки
|
|
13
|
+
- Эффект ripple для тактильной обратной связи
|
|
14
|
+
- Система скелетонов для плейсхолдеров загрузки
|
|
15
|
+
- Опции адаптивного и отзывчивого поведения
|
|
16
|
+
- Полная поддержка доступности (ARIA, клавиатурная навигация)
|
|
17
|
+
- Настройка через токены дизайна
|
|
18
|
+
|
|
19
|
+
**Типичные сценарии использования:**
|
|
20
|
+
|
|
21
|
+
- Основные действия в формах и диалогах
|
|
22
|
+
- Элементы навигации и меню
|
|
23
|
+
- Панели инструментов и действий
|
|
24
|
+
- Элементы призыва к действию
|
|
25
|
+
- Кнопки только с иконками
|
|
26
|
+
- Индикаторы состояния загрузки
|
|
27
|
+
- Действия подтверждения и отмены
|
|
28
|
+
|
|
29
|
+
```html
|
|
30
|
+
<script setup>
|
|
31
|
+
import { ref } from 'vue'
|
|
32
|
+
|
|
33
|
+
const loading = ref(false)
|
|
34
|
+
const selected = ref(false)
|
|
35
|
+
|
|
36
|
+
const handleClick = async () => {
|
|
37
|
+
loading.value = true
|
|
38
|
+
// Имитация асинхронной операции
|
|
39
|
+
await new Promise(resolve => setTimeout(resolve, 2000))
|
|
40
|
+
loading.value = false
|
|
41
|
+
selected.value = !selected.value
|
|
42
|
+
}
|
|
43
|
+
</script>
|
|
44
|
+
|
|
45
|
+
<template>
|
|
46
|
+
<div class="actions">
|
|
47
|
+
<!-- Основная кнопка с состоянием загрузки -->
|
|
48
|
+
<Button
|
|
49
|
+
primary
|
|
50
|
+
:progress="loading"
|
|
51
|
+
@click="handleClick"
|
|
52
|
+
>
|
|
53
|
+
Отправить
|
|
54
|
+
</Button>
|
|
55
|
+
|
|
56
|
+
<!-- Второстепенная кнопка с иконкой -->
|
|
57
|
+
<Button
|
|
58
|
+
secondary
|
|
59
|
+
icon="settings"
|
|
60
|
+
>
|
|
61
|
+
Настройки
|
|
62
|
+
</Button>
|
|
63
|
+
|
|
64
|
+
<!-- Контурная кнопка с иконкой справа -->
|
|
65
|
+
<Button
|
|
66
|
+
outline
|
|
67
|
+
icon-trailing="arrow_forward"
|
|
68
|
+
>
|
|
69
|
+
Далее
|
|
70
|
+
</Button>
|
|
71
|
+
|
|
72
|
+
<!-- Текстовая кнопка с выбранным состоянием -->
|
|
73
|
+
<Button
|
|
74
|
+
text
|
|
75
|
+
:selected="selected"
|
|
76
|
+
@click="selected = !selected"
|
|
77
|
+
>
|
|
78
|
+
Переключить
|
|
79
|
+
</Button>
|
|
80
|
+
|
|
81
|
+
<!-- Кнопка только с иконкой -->
|
|
82
|
+
<Button
|
|
83
|
+
primary
|
|
84
|
+
icon="favorite"
|
|
85
|
+
adaptive="iconAlways"
|
|
86
|
+
/>
|
|
87
|
+
</div>
|
|
88
|
+
</template>
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
> Button разработан как универсальный интерактивный элемент с комплексным управлением состояниями, визуальными вариантами и функциями доступности для создания согласованных интерфейсов действий.
|
|
@@ -1,18 +1,16 @@
|
|
|
1
|
-
## Outline
|
|
1
|
+
## Outline buttons
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Button component supports outline mode through the `outline` property. In this mode, buttons have a minimalist visual style with transparent background and colored border:
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
- **Minimalist design** - suitable for interfaces requiring reduced visual load
|
|
6
|
+
- **Transparent background** - maintains clean appearance while remaining interactive
|
|
7
|
+
- **Hover feedback** - background appears on hover for better user interaction
|
|
8
|
+
- **Icon support** - works seamlessly with icons for enhanced clarity
|
|
6
9
|
|
|
7
|
-
|
|
8
|
-
- **Minimalist design** — Suitable for interfaces where minimal visual load is required.
|
|
10
|
+
Outline mode is especially useful for creating tertiary actions, filter controls, and secondary options in cards or lists that need to be accessible without excessive visual noise.
|
|
9
11
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
### Features
|
|
16
|
-
|
|
17
|
-
- **Transparent background** — The button has a transparent background and a colored border.
|
|
18
|
-
- **Hover contrast** — The background appears on hover for better feedback.
|
|
12
|
+
```html
|
|
13
|
+
<Button outline icon="filter">Filter</Button>
|
|
14
|
+
<Button outline icon="sort">Sort</Button>
|
|
15
|
+
<Button outline>More options</Button>
|
|
16
|
+
```
|