@dxtmisha/wiki 0.24.3 → 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.
- package/package.json +7 -7
- package/src/classes/WikiStorybookItem.ts +24 -0
- package/src/media/descriptions/wikiDescriptions.ts +28 -0
- package/src/media/descriptions/wikiDescriptionsAccordion.ts +158 -0
- package/src/media/descriptions/wikiDescriptionsActionSheet.ts +211 -0
- package/src/media/descriptions/wikiDescriptionsActions.ts +161 -0
- package/src/media/descriptions/wikiDescriptionsAnchor.ts +42 -0
- package/src/media/descriptions/wikiDescriptionsArrow.ts +181 -0
- package/src/media/descriptions/wikiDescriptionsBlock.ts +97 -0
- package/src/media/descriptions/wikiDescriptionsButton.ts +0 -1
- package/src/media/descriptions/wikiDescriptionsCell.ts +2 -1
- package/src/media/descriptions/wikiDescriptionsChipGroup.ts +168 -0
- package/src/media/descriptions/wikiDescriptionsDialog.ts +182 -0
- package/src/media/descriptions/wikiDescriptionsField.ts +2 -0
- package/src/media/descriptions/wikiDescriptionsImage.ts +41 -6
- package/src/media/descriptions/wikiDescriptionsInput.ts +257 -0
- package/src/media/descriptions/wikiDescriptionsMenu.ts +123 -0
- package/src/media/descriptions/wikiDescriptionsModal.ts +145 -0
- package/src/media/descriptions/wikiDescriptionsMotionTransform.ts +2 -6
- package/src/media/descriptions/wikiDescriptionsSelect.ts +209 -0
- package/src/media/descriptions/wikiDescriptionsSelectValue.ts +78 -0
- package/src/media/descriptions/wikiDescriptionsTextareaAutosize.ts +50 -0
- package/src/media/descriptions/wikiDescriptionsTooltip.ts +89 -0
- package/src/media/functional/en/conversions.mdx +67 -0
- package/src/media/functional/en/dataUtils.mdx +25 -0
- package/src/media/functional/en/datetimeRef.mdx +1 -1
- package/src/media/functional/en/eventRef.mdx +1 -1
- package/src/media/functional/en/executionUtils.mdx +58 -0
- package/src/media/functional/en/geoFlagRef.mdx +1 -1
- package/src/media/functional/en/geoIntlRef.mdx +1 -1
- package/src/media/functional/en/geoRef.mdx +2 -2
- package/src/media/functional/en/meta.mdx +1206 -0
- package/src/media/functional/en/metaManager.mdx +376 -0
- package/src/media/functional/en/metaOg.mdx +694 -0
- package/src/media/functional/en/metaTwitter.mdx +853 -0
- package/src/media/functional/en/reactive.mdx +40 -0
- package/src/media/functional/en/refTypes.mdx +1 -1
- package/src/media/functional/en/useApiRef.mdx +5 -5
- package/src/media/functional/en/useMeta.mdx +431 -0
- package/src/media/functional/en/validationUtils.mdx +11 -0
- package/src/media/functional/ru/conversions.mdx +67 -0
- package/src/media/functional/ru/dataUtils.mdx +25 -0
- package/src/media/functional/ru/datetimeRef.mdx +2 -2
- package/src/media/functional/ru/eventRef.mdx +1 -1
- package/src/media/functional/ru/executionUtils.mdx +58 -0
- package/src/media/functional/ru/geoFlagRef.mdx +1 -1
- package/src/media/functional/ru/geoIntl.mdx +2 -2
- package/src/media/functional/ru/geoIntlRef.mdx +1 -1
- package/src/media/functional/ru/geoRef.mdx +2 -2
- package/src/media/functional/ru/listTypes.mdx +1 -1
- package/src/media/functional/ru/meta.mdx +1330 -0
- package/src/media/functional/ru/metaManager.mdx +376 -0
- package/src/media/functional/ru/metaOg.mdx +694 -0
- package/src/media/functional/ru/metaTwitter.mdx +853 -0
- package/src/media/functional/ru/reactive.mdx +40 -0
- package/src/media/functional/ru/refTypes.mdx +2 -2
- package/src/media/functional/ru/useApiRef.mdx +5 -5
- package/src/media/functional/ru/useMeta.mdx +431 -0
- package/src/media/functional/ru/validationUtils.mdx +11 -0
- package/src/media/mdx/Accordion/accordion.en.mdx +59 -0
- package/src/media/mdx/Accordion/accordion.ru.mdx +59 -0
- package/src/media/mdx/Accordion/slots.en.mdx +6 -0
- package/src/media/mdx/Accordion/slots.ru.mdx +6 -0
- package/src/media/mdx/Accordion/wikiMdxAccordion.ts +25 -0
- package/src/media/mdx/ActionSheet/actionSheet.en.mdx +61 -0
- package/src/media/mdx/ActionSheet/actionSheet.ru.mdx +61 -0
- package/src/media/mdx/ActionSheet/touchClose.en.mdx +21 -0
- package/src/media/mdx/ActionSheet/touchClose.ru.mdx +21 -0
- package/src/media/mdx/ActionSheet/wikiMdxActionSheet.ts +25 -0
- package/src/media/mdx/Actions/actions.en.mdx +48 -0
- package/src/media/mdx/Actions/actions.ru.mdx +48 -0
- package/src/media/mdx/Actions/flexible.en.mdx +19 -0
- package/src/media/mdx/Actions/flexible.ru.mdx +19 -0
- package/src/media/mdx/Actions/list.en.mdx +50 -0
- package/src/media/mdx/Actions/list.ru.mdx +50 -0
- package/src/media/mdx/Actions/wikiMdxActions.ts +31 -0
- package/src/media/mdx/Anchor/anchor.en.mdx +34 -0
- package/src/media/mdx/Anchor/anchor.ru.mdx +34 -0
- package/src/media/mdx/Anchor/expose.go.en.mdx +6 -0
- package/src/media/mdx/Anchor/expose.go.ru.mdx +6 -0
- package/src/media/mdx/Anchor/hide.en.mdx +28 -0
- package/src/media/mdx/Anchor/hide.ru.mdx +28 -0
- package/src/media/mdx/Anchor/isCopy.en.mdx +23 -0
- package/src/media/mdx/Anchor/isCopy.ru.mdx +23 -0
- package/src/media/mdx/Anchor/scroll.en.mdx +34 -0
- package/src/media/mdx/Anchor/scroll.ru.mdx +35 -0
- package/src/media/mdx/Anchor/wikiMdxAnchor.ts +43 -0
- package/src/media/mdx/Arrow/arrow.en.mdx +33 -0
- package/src/media/mdx/Arrow/arrow.ru.mdx +33 -0
- package/src/media/mdx/Arrow/wikiMdxArrow.ts +19 -0
- package/src/media/mdx/Block/block.en.mdx +42 -0
- package/src/media/mdx/Block/block.ru.mdx +42 -0
- package/src/media/mdx/Block/wikiMdxBlock.ts +19 -0
- package/src/media/mdx/ChipGroup/chipGroup.en.mdx +51 -0
- package/src/media/mdx/ChipGroup/chipGroup.ru.mdx +51 -0
- package/src/media/mdx/ChipGroup/selected.en.mdx +50 -0
- package/src/media/mdx/ChipGroup/selected.ru.mdx +50 -0
- package/src/media/mdx/ChipGroup/wikiMdxChipGroup.ts +25 -0
- package/src/media/mdx/Dialog/buttons.en.mdx +45 -0
- package/src/media/mdx/Dialog/buttons.ru.mdx +45 -0
- package/src/media/mdx/Dialog/dialog.en.mdx +66 -0
- package/src/media/mdx/Dialog/dialog.ru.mdx +65 -0
- package/src/media/mdx/Dialog/events.en.mdx +63 -0
- package/src/media/mdx/Dialog/events.ru.mdx +63 -0
- package/src/media/mdx/Dialog/states.en.mdx +58 -0
- package/src/media/mdx/Dialog/states.ru.mdx +57 -0
- package/src/media/mdx/Dialog/wikiMdxDialog.ts +37 -0
- package/src/media/mdx/Field/arrows.en.mdx +22 -6
- package/src/media/mdx/Field/arrows.ru.mdx +22 -6
- package/src/media/mdx/Field/slots.en.mdx +0 -13
- package/src/media/mdx/Field/slots.ru.mdx +0 -13
- package/src/media/mdx/Image/img-tag.en.mdx +105 -0
- package/src/media/mdx/Image/img-tag.ru.mdx +105 -0
- package/src/media/mdx/Image/wikiMdxImage.ts +6 -0
- package/src/media/mdx/Input/currency.en.mdx +38 -0
- package/src/media/mdx/Input/currency.ru.mdx +38 -0
- package/src/media/mdx/Input/date.en.mdx +53 -0
- package/src/media/mdx/Input/date.ru.mdx +53 -0
- package/src/media/mdx/Input/input.en.mdx +143 -0
- package/src/media/mdx/Input/input.ru.mdx +71 -0
- package/src/media/mdx/Input/mask.en.mdx +30 -0
- package/src/media/mdx/Input/mask.ru.mdx +30 -0
- package/src/media/mdx/Input/number.en.mdx +41 -0
- package/src/media/mdx/Input/number.ru.mdx +41 -0
- package/src/media/mdx/Input/type.en.mdx +26 -0
- package/src/media/mdx/Input/type.ru.mdx +26 -0
- package/src/media/mdx/Input/wikiMdxInput.ts +49 -0
- package/src/media/mdx/Menu/event.updateValue.en.mdx +29 -0
- package/src/media/mdx/Menu/event.updateValue.ru.mdx +30 -0
- package/src/media/mdx/Menu/expose.navigation.en.mdx +12 -0
- package/src/media/mdx/Menu/expose.navigation.ru.mdx +12 -0
- package/src/media/mdx/Menu/navigation.en.mdx +56 -0
- package/src/media/mdx/Menu/navigation.ru.mdx +56 -0
- package/src/media/mdx/Menu/slots.control.en.mdx +65 -0
- package/src/media/mdx/Menu/slots.control.ru.mdx +65 -0
- package/src/media/mdx/Menu/slots.en.mdx +2 -24
- package/src/media/mdx/Menu/slots.ru.mdx +2 -24
- package/src/media/mdx/Menu/wikiMdxMenu.ts +27 -3
- package/src/media/mdx/Modal/differences.en.mdx +130 -0
- package/src/media/mdx/Modal/differences.ru.mdx +65 -0
- package/src/media/mdx/Modal/modal.en.mdx +63 -0
- package/src/media/mdx/Modal/modal.ru.mdx +63 -0
- package/src/media/mdx/Modal/wikiMdxModal.ts +25 -0
- package/src/media/mdx/MotionTransform/expose.motionTransformElement.en.mdx +13 -0
- package/src/media/mdx/MotionTransform/expose.motionTransformElement.ru.mdx +14 -0
- package/src/media/mdx/MotionTransform/wikiMdxMotionTransform.ts +6 -0
- package/src/media/mdx/Select/select.en.mdx +69 -0
- package/src/media/mdx/Select/select.ru.mdx +69 -0
- package/src/media/mdx/Select/wikiMdxSelect.ts +19 -0
- package/src/media/mdx/SelectValue/selectValue.en.mdx +64 -0
- package/src/media/mdx/SelectValue/selectValue.ru.mdx +64 -0
- package/src/media/mdx/SelectValue/wikiMdxSelectValue.ts +19 -0
- package/src/media/mdx/TextareaAutosize/textarea-autosize.en.mdx +65 -0
- package/src/media/mdx/TextareaAutosize/textarea-autosize.ru.mdx +65 -0
- package/src/media/mdx/TextareaAutosize/wikiMdxTextareaAutosize.ts +19 -0
- package/src/media/mdx/Tooltip/event.tooltip.en.mdx +7 -0
- package/src/media/mdx/Tooltip/event.tooltip.ru.mdx +8 -0
- package/src/media/mdx/Tooltip/slot.control.en.mdx +14 -0
- package/src/media/mdx/Tooltip/slot.control.ru.mdx +14 -0
- package/src/media/mdx/Tooltip/tooltip.en.mdx +34 -0
- package/src/media/mdx/Tooltip/tooltip.ru.mdx +34 -0
- package/src/media/mdx/Tooltip/wikiMdxTooltip.ts +31 -0
- package/src/media/mdx/Window/classes.ru.mdx +1 -1
- package/src/media/mdx/event/events.actions.en.mdx +44 -0
- package/src/media/mdx/event/events.actions.ru.mdx +44 -0
- package/src/media/mdx/event/events.inputStandard.en.mdx +6 -0
- package/src/media/mdx/event/events.inputStandard.ru.mdx +6 -0
- package/src/media/mdx/event/wikiMdxEvent.ts +20 -8
- package/src/media/mdx/expose/expose.descriptionId.en.mdx +6 -0
- package/src/media/mdx/expose/expose.descriptionId.ru.mdx +6 -0
- package/src/media/mdx/expose/expose.id.en.mdx +6 -0
- package/src/media/mdx/expose/expose.id.ru.mdx +6 -0
- package/src/media/mdx/expose/expose.labelId.en.mdx +6 -0
- package/src/media/mdx/expose/expose.labelId.ru.mdx +6 -0
- package/src/media/mdx/expose/wikiMdxExpose.ts +18 -0
- package/src/media/mdx/slot/body.en.mdx +6 -0
- package/src/media/mdx/slot/body.ru.mdx +6 -0
- package/src/media/mdx/slot/headline.en.mdx +7 -0
- package/src/media/mdx/slot/headline.ru.mdx +6 -0
- package/src/media/mdx/slot/leading.en.mdx +7 -0
- package/src/media/mdx/slot/leading.ru.mdx +7 -0
- package/src/media/mdx/slot/secondary.en.mdx +5 -0
- package/src/media/mdx/slot/secondary.ru.mdx +5 -0
- package/src/media/mdx/slot/trailing.en.mdx +7 -0
- package/src/media/mdx/slot/trailing.ru.mdx +7 -0
- package/src/media/mdx/slot/wikiMdxSlot.ts +30 -0
- package/src/media/mdx/style/isSkeleton.en.mdx +2 -2
- package/src/media/mdx/style/isSkeleton.ru.mdx +2 -2
- package/src/media/mdx/value/v-model-selected.en.mdx +28 -0
- package/src/media/mdx/value/v-model-selected.ru.mdx +28 -0
- package/src/media/mdx/value/v-model.en.mdx +26 -0
- package/src/media/mdx/value/v-model.ru.mdx +26 -0
- package/src/media/mdx/value/wikiMdxValue.ts +24 -3
- package/src/media/mdx/wikiMdx.ts +29 -1
- package/src/media/props/wiki.ts +42 -0
- package/src/media/props/wikiActions.ts +43 -0
- package/src/media/props/wikiActionsInclude.ts +62 -0
- package/src/media/props/wikiAnchor.ts +84 -0
- package/src/media/props/wikiAria.ts +102 -0
- package/src/media/props/wikiArrow.ts +24 -0
- package/src/media/props/wikiArrowInclude.ts +45 -0
- package/src/media/props/wikiBarsInclude.ts +80 -0
- package/src/media/props/wikiChipGroup.ts +39 -0
- package/src/media/props/wikiDialog.ts +34 -0
- package/src/media/props/wikiField.ts +0 -21
- package/src/media/props/wikiFieldCounterInclude.ts +78 -0
- package/src/media/props/wikiForm.ts +248 -0
- package/src/media/props/wikiHook.ts +20 -0
- package/src/media/props/wikiIcon.ts +3 -3
- package/src/media/props/wikiIconInclude.ts +319 -0
- package/src/media/props/wikiImage.ts +71 -19
- package/src/media/props/wikiInformation.ts +160 -0
- package/src/media/props/wikiInput.ts +34 -0
- package/src/media/props/wikiListItem.ts +20 -0
- package/src/media/props/wikiMask.ts +0 -10
- package/src/media/props/wikiMaskInclude.ts +54 -0
- package/src/media/props/wikiMenu.ts +0 -10
- package/src/media/props/wikiMotionTransform.ts +0 -10
- package/src/media/props/wikiOption.ts +113 -0
- package/src/media/props/wikiSelect.ts +68 -0
- package/src/media/props/wikiSelectValue.ts +30 -0
- package/src/media/props/wikiStatus.ts +29 -41
- package/src/media/props/wikiStyle.ts +154 -243
- package/src/media/props/wikiTechnical.ts +65 -0
- package/src/media/props/wikiText.ts +57 -0
- package/src/media/props/wikiTooltip.ts +53 -0
- package/src/media/props/wikiValue.ts +14 -203
- package/src/media/props/wikiWindow.ts +0 -31
- package/src/styles/storybookStyle.scss +3 -1
- package/src/types/storybookTypes.ts +26 -4
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
import type { StorybookComponentsDescriptionItem } from '../../types/storybookTypes'
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Descriptions for Dialog component properties
|
|
5
|
+
*
|
|
6
|
+
* Описания свойств компонента Dialog
|
|
7
|
+
*/
|
|
8
|
+
export const wikiDescriptionsDialog: StorybookComponentsDescriptionItem = {
|
|
9
|
+
name: 'Dialog',
|
|
10
|
+
description: {
|
|
11
|
+
en: 'Modal dialog component for displaying alerts, confirmations, and informational messages with icon and action buttons',
|
|
12
|
+
ru: 'Модальный диалоговый компонент для отображения предупреждений, подтверждений и информационных сообщений с иконкой и кнопками действий'
|
|
13
|
+
},
|
|
14
|
+
possibilities: {
|
|
15
|
+
en: [
|
|
16
|
+
'modal dialog with centered positioning and backdrop',
|
|
17
|
+
'icon support with predefined success and error states',
|
|
18
|
+
'customizable title, description, and content areas',
|
|
19
|
+
'action buttons with OK and Close presets',
|
|
20
|
+
'image positioning (top or left alignment)',
|
|
21
|
+
'integration with Window, Bars, Actions, Icon components',
|
|
22
|
+
'close on ESC key and backdrop click',
|
|
23
|
+
'programmatic control via v-model:open',
|
|
24
|
+
'automatic icon switching based on success/error states',
|
|
25
|
+
'flexible content layout with information block',
|
|
26
|
+
'customizable footer with action buttons',
|
|
27
|
+
'keyboard accessibility and focus management',
|
|
28
|
+
'responsive design with mobile optimization',
|
|
29
|
+
'support for custom button configurations'
|
|
30
|
+
],
|
|
31
|
+
ru: [
|
|
32
|
+
'модальный диалог с центрированием и подложкой',
|
|
33
|
+
'поддержка иконок с предустановленными состояниями успеха и ошибки',
|
|
34
|
+
'настраиваемые области заголовка, описания и контента',
|
|
35
|
+
'кнопки действий с пресетами OK и Закрыть',
|
|
36
|
+
'позиционирование изображения (сверху или слева)',
|
|
37
|
+
'интеграция с компонентами Window, Bars, Actions, Icon',
|
|
38
|
+
'закрытие по ESC и клику на подложку',
|
|
39
|
+
'программное управление через v-model:open',
|
|
40
|
+
'автоматическое переключение иконки на основе состояний успеха/ошибки',
|
|
41
|
+
'гибкая компоновка контента с информационным блоком',
|
|
42
|
+
'настраиваемый футер с кнопками действий',
|
|
43
|
+
'доступность с клавиатуры и управление фокусом',
|
|
44
|
+
'адаптивный дизайн с оптимизацией для мобильных',
|
|
45
|
+
'поддержка пользовательских конфигураций кнопок'
|
|
46
|
+
]
|
|
47
|
+
},
|
|
48
|
+
import: [
|
|
49
|
+
'import { ref } from \'vue\''
|
|
50
|
+
],
|
|
51
|
+
render: `
|
|
52
|
+
<DesignComponent v-bind="args">
|
|
53
|
+
<template #control="{binds}">
|
|
54
|
+
<button class="wiki-storybook-button" v-bind="binds">Open Dialog</button>
|
|
55
|
+
</template>
|
|
56
|
+
</DesignComponent>
|
|
57
|
+
`,
|
|
58
|
+
stories: [
|
|
59
|
+
{
|
|
60
|
+
id: 'DialogStates',
|
|
61
|
+
name: {
|
|
62
|
+
en: 'Success and error states',
|
|
63
|
+
ru: 'Состояния успеха и ошибки'
|
|
64
|
+
},
|
|
65
|
+
setup: `
|
|
66
|
+
return {
|
|
67
|
+
openSuccess: ref(false),
|
|
68
|
+
openError: ref(false)
|
|
69
|
+
}
|
|
70
|
+
`,
|
|
71
|
+
template: `
|
|
72
|
+
<div class="wiki-storybook-flex">
|
|
73
|
+
<DesignComponent
|
|
74
|
+
:success="true"
|
|
75
|
+
label="Operation Successful"
|
|
76
|
+
description="Your changes have been saved successfully."
|
|
77
|
+
>
|
|
78
|
+
<template #control="{binds}">
|
|
79
|
+
<button class="wiki-storybook-button" v-bind="binds">Success Dialog</button>
|
|
80
|
+
</template>
|
|
81
|
+
</DesignComponent>
|
|
82
|
+
|
|
83
|
+
<DesignComponent
|
|
84
|
+
:error="true"
|
|
85
|
+
label="Operation Failed"
|
|
86
|
+
description="An error occurred while processing your request. Please try again."
|
|
87
|
+
>
|
|
88
|
+
<template #control="{binds}">
|
|
89
|
+
<button class="wiki-storybook-button" v-bind="binds">Error Dialog</button>
|
|
90
|
+
</template>
|
|
91
|
+
</DesignComponent>
|
|
92
|
+
</div>
|
|
93
|
+
`
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
id: 'DialogVModel',
|
|
97
|
+
name: {
|
|
98
|
+
en: 'Two-way binding (v-model)',
|
|
99
|
+
ru: 'Двусторонняя привязка (v-model)'
|
|
100
|
+
},
|
|
101
|
+
setup: `
|
|
102
|
+
return {
|
|
103
|
+
open: ref(false)
|
|
104
|
+
}
|
|
105
|
+
`,
|
|
106
|
+
template: `
|
|
107
|
+
<button class="wiki-storybook-button" @click="open = true">Open via v-model ({{ open }})</button>
|
|
108
|
+
|
|
109
|
+
<DesignComponent
|
|
110
|
+
v-model:open="open"
|
|
111
|
+
label="Confirmation"
|
|
112
|
+
description="Are you sure you want to proceed with this action?"
|
|
113
|
+
/>
|
|
114
|
+
`
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
id: 'DialogAllSlots',
|
|
118
|
+
name: {
|
|
119
|
+
en: 'All slots demonstration',
|
|
120
|
+
ru: 'Демонстрация всех слотов'
|
|
121
|
+
},
|
|
122
|
+
template: `
|
|
123
|
+
<DesignComponent>
|
|
124
|
+
<template #control="{binds}">
|
|
125
|
+
<button class="wiki-storybook-button" v-bind="binds">Open Dialog with All Slots</button>
|
|
126
|
+
</template>
|
|
127
|
+
|
|
128
|
+
<template #title>
|
|
129
|
+
Title Slot
|
|
130
|
+
</template>
|
|
131
|
+
|
|
132
|
+
<template #label>
|
|
133
|
+
<strong>Label Slot</strong>
|
|
134
|
+
</template>
|
|
135
|
+
|
|
136
|
+
<template #description>
|
|
137
|
+
<em>Description Slot</em>
|
|
138
|
+
</template>
|
|
139
|
+
|
|
140
|
+
<template #default>
|
|
141
|
+
Default Slot
|
|
142
|
+
</template>
|
|
143
|
+
|
|
144
|
+
<template #footer="{classesWindow}">
|
|
145
|
+
Footer Slot
|
|
146
|
+
</template>
|
|
147
|
+
</DesignComponent>
|
|
148
|
+
`
|
|
149
|
+
}
|
|
150
|
+
],
|
|
151
|
+
documentation: {
|
|
152
|
+
body: `
|
|
153
|
+
<StorybookDescriptions componentName={'Dialog'} type={'dialog'}/>
|
|
154
|
+
|
|
155
|
+
<StorybookDescriptions componentName={'Dialog'} type={'states'}/>
|
|
156
|
+
<Canvas of={Component.DialogStates}/>
|
|
157
|
+
|
|
158
|
+
<StorybookDescriptions componentName={'Dialog'} type={'buttons'}/>
|
|
159
|
+
|
|
160
|
+
<StorybookDescriptions componentName={'Window'} type={'v-model'}/>
|
|
161
|
+
<Canvas of={Component.DialogVModel}/>
|
|
162
|
+
|
|
163
|
+
<StorybookDescriptions componentName={'Modal'} type={'differences'}/>
|
|
164
|
+
`,
|
|
165
|
+
events: `
|
|
166
|
+
<StorybookDescriptions componentName={'Dialog'} type={'events'}/>
|
|
167
|
+
<StorybookDescriptions componentName={'Dialog'} type={'event.dialog'}/>
|
|
168
|
+
<StorybookDescriptions componentName={'Window'} type={'event.window'}/>
|
|
169
|
+
<StorybookDescriptions componentName={'Event'} type={'bars'}/>
|
|
170
|
+
<StorybookDescriptions componentName={'Event'} type={'actions'}/>
|
|
171
|
+
`,
|
|
172
|
+
expose: `
|
|
173
|
+
<StorybookDescriptions componentName={'Window'} type={'expose'}/>
|
|
174
|
+
`,
|
|
175
|
+
slots: `
|
|
176
|
+
<Canvas of={Component.DialogAllSlots}/>
|
|
177
|
+
<StorybookDescriptions componentName={'Slot'} type={'label'}/>
|
|
178
|
+
<StorybookDescriptions componentName={'Slot'} type={'description'}/>
|
|
179
|
+
<StorybookDescriptions componentName={'Window'} type={'slots'}/>
|
|
180
|
+
`
|
|
181
|
+
}
|
|
182
|
+
}
|
|
@@ -230,6 +230,8 @@ export const wikiDescriptionsField: StorybookComponentsDescriptionItem = {
|
|
|
230
230
|
<StorybookDescriptions componentName={'Slot'} type={'prefix'} />
|
|
231
231
|
<StorybookDescriptions componentName={'Slot'} type={'suffix'} />
|
|
232
232
|
<StorybookDescriptions componentName={'Slot'} type={'caption'} />
|
|
233
|
+
<StorybookDescriptions componentName={'Slot'} type={'leading'} />
|
|
234
|
+
<StorybookDescriptions componentName={'Slot'} type={'trailing'} />
|
|
233
235
|
<StorybookDescriptions componentName={'Field'} type={'slots'} />
|
|
234
236
|
`
|
|
235
237
|
}
|
|
@@ -75,23 +75,55 @@ export const wikiDescriptionsImage: StorybookComponentsDescriptionItem = {
|
|
|
75
75
|
<div class="wiki-storybook-group">
|
|
76
76
|
<div class="wiki-storybook-item wiki-storybook-item--squared--md">
|
|
77
77
|
<div class="wiki-storybook-item__label">size: auto (default)</div>
|
|
78
|
-
<DesignComponent :value="image1" size="auto"/>
|
|
78
|
+
<DesignComponent :value="image1" size="auto" tag-img/>
|
|
79
79
|
</div>
|
|
80
80
|
<div class="wiki-storybook-item wiki-storybook-item--squared--md">
|
|
81
81
|
<div class="wiki-storybook-item__label">size: contain</div>
|
|
82
|
-
<DesignComponent :value="image1" size="contain"/>
|
|
82
|
+
<DesignComponent :value="image1" size="contain" tag-img/>
|
|
83
83
|
</div>
|
|
84
84
|
<div class="wiki-storybook-item wiki-storybook-item--squared--md">
|
|
85
85
|
<div class="wiki-storybook-item__label">size: cover</div>
|
|
86
|
-
<DesignComponent :value="image1" size="cover"/>
|
|
86
|
+
<DesignComponent :value="image1" size="cover" tag-img/>
|
|
87
87
|
</div>
|
|
88
88
|
<div class="wiki-storybook-item wiki-storybook-item--squared--md">
|
|
89
89
|
<div class="wiki-storybook-item__label">coordinator</div>
|
|
90
|
-
<DesignComponent :value="image1" :coordinator="[60, 10, 10, 40]"/>
|
|
90
|
+
<DesignComponent :value="image1" :coordinator="[60, 10, 10, 40]" tag-img/>
|
|
91
91
|
</div>
|
|
92
92
|
<div class="wiki-storybook-item wiki-storybook-item--squared--md">
|
|
93
93
|
<div class="wiki-storybook-item__label">x, y</div>
|
|
94
|
-
<DesignComponent :value="image1" x="20" y="-10"/>
|
|
94
|
+
<DesignComponent :value="image1" x="20%" y="-10%" tag-img/>
|
|
95
|
+
</div>
|
|
96
|
+
</div>
|
|
97
|
+
`
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
id: 'ImageTagImg',
|
|
101
|
+
name: {
|
|
102
|
+
en: 'Using img tag',
|
|
103
|
+
ru: 'Использование тега img'
|
|
104
|
+
},
|
|
105
|
+
setup: `
|
|
106
|
+
return {
|
|
107
|
+
image1
|
|
108
|
+
}
|
|
109
|
+
`,
|
|
110
|
+
template: `
|
|
111
|
+
<div class="wiki-storybook-group">
|
|
112
|
+
<div class="wiki-storybook-item wiki-storybook-item--squared--md">
|
|
113
|
+
<div class="wiki-storybook-item__label">Background (default)</div>
|
|
114
|
+
<DesignComponent :value="image1"/>
|
|
115
|
+
</div>
|
|
116
|
+
<div class="wiki-storybook-item wiki-storybook-item--squared--md">
|
|
117
|
+
<div class="wiki-storybook-item__label">tag-img + alt</div>
|
|
118
|
+
<DesignComponent :value="image1" tag-img alt="Example image"/>
|
|
119
|
+
</div>
|
|
120
|
+
<div class="wiki-storybook-item wiki-storybook-item--squared--md">
|
|
121
|
+
<div class="wiki-storybook-item__label">tag-img + lazy + srcset</div>
|
|
122
|
+
<DesignComponent :value="image1" tag-img lazy alt="Responsive image" :srcset="{ '1x': image1, '2x': image1 }"/>
|
|
123
|
+
</div>
|
|
124
|
+
<div class="wiki-storybook-item wiki-storybook-item--squared--md">
|
|
125
|
+
<div class="wiki-storybook-item__label">tag-img + picture</div>
|
|
126
|
+
<DesignComponent :value="image1" tag-img alt="Adaptive image" :picture="{ 768: image1, 1024: image1 }"/>
|
|
95
127
|
</div>
|
|
96
128
|
</div>
|
|
97
129
|
`
|
|
@@ -118,7 +150,7 @@ export const wikiDescriptionsImage: StorybookComponentsDescriptionItem = {
|
|
|
118
150
|
<DesignComponent :value="phone2" adaptive object-width="71.9"/>
|
|
119
151
|
</div>
|
|
120
152
|
<div class="wiki-storybook-item wiki-storybook-item--squared--md">
|
|
121
|
-
<DesignComponent :value="phone3" adaptive object-width="129.9"/>
|
|
153
|
+
<DesignComponent :value="phone3" adaptive object-width="129.9" tag-img/>
|
|
122
154
|
</div>
|
|
123
155
|
</div>
|
|
124
156
|
`
|
|
@@ -130,6 +162,9 @@ export const wikiDescriptionsImage: StorybookComponentsDescriptionItem = {
|
|
|
130
162
|
<StorybookDescriptions componentName={'Image'} type={'value'}/>
|
|
131
163
|
<Canvas of={Component.ImageType}/>
|
|
132
164
|
|
|
165
|
+
<StorybookDescriptions componentName={'Image'} type={'img-tag'}/>
|
|
166
|
+
<Canvas of={Component.ImageTagImg}/>
|
|
167
|
+
|
|
133
168
|
<StorybookDescriptions componentName={'Image'} type={'size'}/>
|
|
134
169
|
<Canvas of={Component.ImageSize}/>
|
|
135
170
|
|
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
import type { StorybookComponentsDescriptionItem } from '../../types/storybookTypes'
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Descriptions for Input component
|
|
5
|
+
*
|
|
6
|
+
* Описания свойств компонента Input
|
|
7
|
+
*/
|
|
8
|
+
export const wikiDescriptionsInput: StorybookComponentsDescriptionItem = {
|
|
9
|
+
name: 'Input',
|
|
10
|
+
description: {
|
|
11
|
+
en: 'Text input field component with validation, masking and formatting support',
|
|
12
|
+
ru: 'Компонент текстового поля ввода с поддержкой валидации, маскирования и форматирования'
|
|
13
|
+
},
|
|
14
|
+
possibilities: {
|
|
15
|
+
en: [
|
|
16
|
+
'multiple input types: text, number, email, password, tel, url, date, time and more',
|
|
17
|
+
'built-in validation with custom messages',
|
|
18
|
+
'mask support for formatted input (phone, date, custom patterns)',
|
|
19
|
+
'currency and number formatting',
|
|
20
|
+
'password visibility toggle',
|
|
21
|
+
'prefix and suffix support',
|
|
22
|
+
'counter for character limits',
|
|
23
|
+
'navigation arrows for numeric and selection inputs',
|
|
24
|
+
'autocomplete, spellcheck and autocorrect support',
|
|
25
|
+
'integrated with Field component for consistent styling'
|
|
26
|
+
],
|
|
27
|
+
ru: [
|
|
28
|
+
'множественные типы ввода: text, number, email, password, tel, url, date, time и другие',
|
|
29
|
+
'встроенная валидация с пользовательскими сообщениями',
|
|
30
|
+
'поддержка маскирования для форматированного ввода (телефон, дата, пользовательские паттерны)',
|
|
31
|
+
'форматирование валюты и чисел',
|
|
32
|
+
'переключатель видимости пароля',
|
|
33
|
+
'поддержка префикса и суффикса',
|
|
34
|
+
'счётчик для ограничения символов',
|
|
35
|
+
'стрелки навигации для числовых и выборочных полей',
|
|
36
|
+
'поддержка автозаполнения, проверки орфографии и автокоррекции',
|
|
37
|
+
'интегрирован с компонентом Field для единообразной стилизации'
|
|
38
|
+
]
|
|
39
|
+
},
|
|
40
|
+
import: [
|
|
41
|
+
'import { ref } from \'vue\''
|
|
42
|
+
],
|
|
43
|
+
render: `
|
|
44
|
+
<DesignComponent v-bind="args" />
|
|
45
|
+
`,
|
|
46
|
+
stories: [
|
|
47
|
+
{
|
|
48
|
+
id: 'InputTypes',
|
|
49
|
+
name: {
|
|
50
|
+
en: 'Input types',
|
|
51
|
+
ru: 'Типы ввода'
|
|
52
|
+
},
|
|
53
|
+
template: `
|
|
54
|
+
<div class="wiki-storybook-flex-column">
|
|
55
|
+
<DesignComponent type="text" label="Text" placeholder="Enter text" />
|
|
56
|
+
<DesignComponent type="email" label="Email" placeholder="email@example.com" />
|
|
57
|
+
<DesignComponent type="password" label="Password" placeholder="Enter password" />
|
|
58
|
+
<DesignComponent type="number" label="Number" placeholder="0" />
|
|
59
|
+
<DesignComponent type="text" label="Phone" mask="+1 (***) ***-****" placeholder="+1 (555) 000-0000" />
|
|
60
|
+
<DesignComponent type="date" label="Date" />
|
|
61
|
+
<DesignComponent type="search" label="Search" placeholder="Search..." />
|
|
62
|
+
</div>
|
|
63
|
+
`
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
id: 'InputNumber',
|
|
67
|
+
name: {
|
|
68
|
+
en: 'Number formatting',
|
|
69
|
+
ru: 'Форматирование чисел'
|
|
70
|
+
},
|
|
71
|
+
template: `
|
|
72
|
+
<div class="wiki-storybook-flex-column">
|
|
73
|
+
<DesignComponent type="number" value="1234567" label="Number" />
|
|
74
|
+
<DesignComponent type="number-format" value="1234567" language="en-US" label="Formatted" />
|
|
75
|
+
<DesignComponent type="number" value="50" :min="0" :max="100" label="From 0 to 100" />
|
|
76
|
+
<DesignComponent type="number" value="10" arrow="stepper" :step="5" :arrow-step="10" label="Step 5/10" />
|
|
77
|
+
<DesignComponent type="number-format" value="1234567.89" align="center" :fraction="2" label="Centered" />
|
|
78
|
+
</div>
|
|
79
|
+
`
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
id: 'InputCurrency',
|
|
83
|
+
name: {
|
|
84
|
+
en: 'Currency & number formatting',
|
|
85
|
+
ru: 'Валюта и форматирование чисел'
|
|
86
|
+
},
|
|
87
|
+
template: `
|
|
88
|
+
<div class="wiki-storybook-flex-column">
|
|
89
|
+
<DesignComponent
|
|
90
|
+
type="currency"
|
|
91
|
+
label="Price (USD)"
|
|
92
|
+
currency="USD"
|
|
93
|
+
/>
|
|
94
|
+
<DesignComponent
|
|
95
|
+
type="currency"
|
|
96
|
+
label="Price (USD)"
|
|
97
|
+
currency="USD"
|
|
98
|
+
value="1234.56"
|
|
99
|
+
/>
|
|
100
|
+
<DesignComponent
|
|
101
|
+
type="currency"
|
|
102
|
+
label="Price (currency-hide)"
|
|
103
|
+
currency="EUR"
|
|
104
|
+
currency-hide
|
|
105
|
+
value="1234.56"
|
|
106
|
+
/>
|
|
107
|
+
</div>
|
|
108
|
+
`
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
id: 'InputDate',
|
|
112
|
+
name: {
|
|
113
|
+
en: 'Date and time',
|
|
114
|
+
ru: 'Дата и время'
|
|
115
|
+
},
|
|
116
|
+
template: `
|
|
117
|
+
<div class="wiki-storybook-flex-column">
|
|
118
|
+
<DesignComponent type="date" label="Date" language="ru-RU" />
|
|
119
|
+
<DesignComponent type="datetime" label="Date and Time" language="en-US" />
|
|
120
|
+
<DesignComponent type="year-month" label="Period" language="ru-RU" />
|
|
121
|
+
<DesignComponent type="time" label="Time" />
|
|
122
|
+
<DesignComponent type="hour-minute" label="Hours:Minutes" />
|
|
123
|
+
<DesignComponent type="date" label="Limited Date" language="ru-RU" min="2024-01-01" max="2024-12-31" />
|
|
124
|
+
</div>
|
|
125
|
+
`
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
id: 'InputMask',
|
|
129
|
+
name: {
|
|
130
|
+
en: 'Masked input',
|
|
131
|
+
ru: 'Маскированный ввод'
|
|
132
|
+
},
|
|
133
|
+
template: `
|
|
134
|
+
<div class="wiki-storybook-flex-column">
|
|
135
|
+
<DesignComponent type="tel" mask="+1 (###) ###-####" placeholder="+1 (555) 000-0000" label="Phone" />
|
|
136
|
+
<DesignComponent type="text" mask="#### #### #### ####" placeholder="0000 0000 0000 0000" label="Card" />
|
|
137
|
+
<DesignComponent type="tel" mask="+1 (###) ###-####" :mask-visible="false" label="No placeholder" />
|
|
138
|
+
</div>
|
|
139
|
+
`
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
id: 'InputVModel',
|
|
143
|
+
name: {
|
|
144
|
+
en: 'Two-way binding (v-model)',
|
|
145
|
+
ru: 'Двусторонняя привязка (v-model)'
|
|
146
|
+
},
|
|
147
|
+
setup: `
|
|
148
|
+
return {
|
|
149
|
+
inputValue: ref('Initial value'),
|
|
150
|
+
maskValue: ref(''),
|
|
151
|
+
numberValue: ref(42)
|
|
152
|
+
}
|
|
153
|
+
`,
|
|
154
|
+
template: `
|
|
155
|
+
<div class="wiki-storybook-flex-column">
|
|
156
|
+
<div class="wiki-storybook-flex">
|
|
157
|
+
<button class="wiki-storybook-button" @click="inputValue = 'Changed value'">Set text</button>
|
|
158
|
+
<button class="wiki-storybook-button" @click="inputValue = ''">Clear</button>
|
|
159
|
+
</div>
|
|
160
|
+
<DesignComponent
|
|
161
|
+
v-model="inputValue"
|
|
162
|
+
type="text"
|
|
163
|
+
label="Text input"
|
|
164
|
+
placeholder="Enter text"
|
|
165
|
+
/>
|
|
166
|
+
<div>Value: {{ inputValue }}</div>
|
|
167
|
+
|
|
168
|
+
<div class="wiki-storybook-flex">
|
|
169
|
+
<button class="wiki-storybook-button" @click="maskValue = '2022-05-13'">Set date</button>
|
|
170
|
+
<button class="wiki-storybook-button" @click="maskValue = ''">Clear</button>
|
|
171
|
+
</div>
|
|
172
|
+
<DesignComponent
|
|
173
|
+
v-model="maskValue"
|
|
174
|
+
type="date"
|
|
175
|
+
label="Date input"
|
|
176
|
+
/>
|
|
177
|
+
<div>Mask: {{ maskValue }}</div>
|
|
178
|
+
|
|
179
|
+
<div class="wiki-storybook-flex">
|
|
180
|
+
<button class="wiki-storybook-button" @click="numberValue += 10">+10</button>
|
|
181
|
+
<button class="wiki-storybook-button" @click="numberValue -= 10">-10</button>
|
|
182
|
+
</div>
|
|
183
|
+
<DesignComponent
|
|
184
|
+
v-model="numberValue"
|
|
185
|
+
type="number"
|
|
186
|
+
label="Number input"
|
|
187
|
+
:step="1"
|
|
188
|
+
/>
|
|
189
|
+
<div>Number: {{ numberValue }}</div>
|
|
190
|
+
</div>
|
|
191
|
+
`
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
id: 'InputSkeleton',
|
|
195
|
+
name: {
|
|
196
|
+
en: 'Skeleton',
|
|
197
|
+
ru: 'Скелетон'
|
|
198
|
+
},
|
|
199
|
+
components: ['Skeleton'],
|
|
200
|
+
template: `
|
|
201
|
+
<DesignSkeleton :active="true" style="max-width:320px">
|
|
202
|
+
<div class="wiki-storybook-flex-column">
|
|
203
|
+
<DesignComponent
|
|
204
|
+
isSkeleton
|
|
205
|
+
label="Loading field"
|
|
206
|
+
helperMessage="This field is loading..."
|
|
207
|
+
/>
|
|
208
|
+
<DesignComponent
|
|
209
|
+
isSkeleton
|
|
210
|
+
label="Another field"
|
|
211
|
+
counterShow
|
|
212
|
+
/>
|
|
213
|
+
</div>
|
|
214
|
+
</DesignSkeleton>
|
|
215
|
+
`
|
|
216
|
+
}
|
|
217
|
+
],
|
|
218
|
+
documentation: {
|
|
219
|
+
body: `
|
|
220
|
+
<StorybookDescriptions componentName={'Input'} type={'input'}/>
|
|
221
|
+
|
|
222
|
+
<StorybookDescriptions componentName={'Input'} type={'type'}/>
|
|
223
|
+
<Canvas of={Component.InputTypes}/>
|
|
224
|
+
|
|
225
|
+
<StorybookDescriptions componentName={'Input'} type={'number'}/>
|
|
226
|
+
<Canvas of={Component.InputNumber}/>
|
|
227
|
+
|
|
228
|
+
<StorybookDescriptions componentName={'Input'} type={'currency'}/>
|
|
229
|
+
<Canvas of={Component.InputCurrency}/>
|
|
230
|
+
|
|
231
|
+
<StorybookDescriptions componentName={'Input'} type={'date'}/>
|
|
232
|
+
<Canvas of={Component.InputDate}/>
|
|
233
|
+
|
|
234
|
+
<StorybookDescriptions componentName={'Input'} type={'mask'}/>
|
|
235
|
+
<Canvas of={Component.InputMask}/>
|
|
236
|
+
|
|
237
|
+
<StorybookDescriptions componentName={'Value'} type={'value'}/>
|
|
238
|
+
<StorybookDescriptions componentName={'Value'} type={'v-model'}/>
|
|
239
|
+
<Canvas of={Component.InputVModel}/>
|
|
240
|
+
|
|
241
|
+
<StorybookDescriptions componentName={'Style'} type={'isSkeleton'}/>
|
|
242
|
+
<Canvas of={Component.InputSkeleton}/>
|
|
243
|
+
`,
|
|
244
|
+
events: `
|
|
245
|
+
<StorybookDescriptions componentName={'Event'} type={'input'}/>
|
|
246
|
+
<StorybookDescriptions componentName={'Event'} type={'change'}/>
|
|
247
|
+
`,
|
|
248
|
+
slots: `
|
|
249
|
+
<StorybookDescriptions componentName={'Slot'} type={'label'} />
|
|
250
|
+
<StorybookDescriptions componentName={'Slot'} type={'prefix'} />
|
|
251
|
+
<StorybookDescriptions componentName={'Slot'} type={'suffix'} />
|
|
252
|
+
<StorybookDescriptions componentName={'Slot'} type={'caption'} />
|
|
253
|
+
<StorybookDescriptions componentName={'Slot'} type={'leading'} />
|
|
254
|
+
<StorybookDescriptions componentName={'Slot'} type={'trailing'} />
|
|
255
|
+
`
|
|
256
|
+
}
|
|
257
|
+
}
|