@mozaic-ds/vue 2.12.0 → 2.13.0
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/dist/mozaic-vue.css +1 -1
- package/dist/mozaic-vue.d.ts +702 -361
- package/dist/mozaic-vue.js +2791 -2428
- package/dist/mozaic-vue.js.map +1 -1
- package/dist/mozaic-vue.umd.cjs +5 -5
- package/dist/mozaic-vue.umd.cjs.map +1 -1
- package/package.json +7 -6
- package/src/components/{usingPresets.mdx → BrandPresets.mdx} +2 -2
- package/src/components/Changelog.mdx +19 -0
- package/src/components/Color.mdx +226 -0
- package/src/components/Contributing.mdx +12 -6
- package/src/components/GettingStarted.mdx +1 -1
- package/src/components/Icon.stories.ts +134 -0
- package/src/components/Welcome.mdx +49 -0
- package/src/components/accordionlist/MAccordionList.spec.ts +136 -0
- package/src/components/accordionlist/MAccordionList.stories.ts +123 -0
- package/src/components/accordionlist/MAccordionList.vue +91 -0
- package/src/components/accordionlist/README.md +24 -0
- package/src/components/accordionlist/m-accordion-list.const.ts +9 -0
- package/src/components/accordionlistitem/MAccordionListItem.spec.ts +123 -0
- package/src/components/accordionlistitem/MAccordionListItem.vue +95 -0
- package/src/components/accordionlistitem/README.md +23 -0
- package/src/components/actionbottombar/MActionBottomBar.spec.ts +52 -0
- package/src/components/actionbottombar/MActionBottomBar.stories.ts +162 -0
- package/src/components/actionbottombar/MActionBottomBar.vue +45 -0
- package/src/components/actionbottombar/README.md +31 -0
- package/src/components/actionlistbox/MActionListbox.spec.ts +134 -0
- package/src/components/actionlistbox/MActionListbox.stories.ts +74 -0
- package/src/components/actionlistbox/MActionListbox.vue +89 -0
- package/src/components/actionlistbox/README.md +25 -0
- package/src/components/avatar/MAvatar.stories.ts +1 -1
- package/src/components/breadcrumb/README.md +14 -0
- package/src/components/builtinmenu/MBuiltInMenu.stories.ts +2 -1
- package/src/components/builtinmenu/MBuiltInMenu.vue +1 -1
- package/src/components/builtinmenu/README.md +14 -0
- package/src/components/button/MButton.spec.ts +1 -1
- package/src/components/button/MButton.stories.ts +165 -5
- package/src/components/button/README.md +33 -1
- package/src/components/callout/MCallout.spec.ts +7 -6
- package/src/components/callout/MCallout.stories.ts +1 -2
- package/src/components/carousel/MCarousel.spec.ts +1 -2
- package/src/components/carousel/MCarousel.stories.ts +2 -1
- package/src/components/carousel/MCarousel.vue +1 -2
- package/src/components/carousel/README.md +14 -0
- package/src/components/checkbox/README.md +14 -0
- package/src/components/checkboxgroup/README.md +14 -0
- package/src/components/checklistmenu/MCheckListMenu.spec.ts +1 -1
- package/src/components/checklistmenu/MCheckListMenu.stories.ts +1 -0
- package/src/components/checklistmenu/MCheckListMenu.vue +1 -1
- package/src/components/checklistmenu/README.md +14 -0
- package/src/components/circularprogressbar/README.md +15 -1
- package/src/components/datepicker/MDatepicker.vue +1 -1
- package/src/components/divider/README.md +22 -0
- package/src/components/drawer/MDrawer.vue +1 -2
- package/src/components/drawer/README.md +16 -0
- package/src/components/field/README.md +14 -0
- package/src/components/fileuploader/MFileUploader.spec.ts +304 -0
- package/src/components/fileuploader/MFileUploader.stories.ts +123 -0
- package/src/components/fileuploader/MFileUploader.vue +314 -0
- package/src/components/fileuploader/README.md +58 -0
- package/src/components/fileuploaderitem/MFileUploaderItem.spec.ts +91 -0
- package/src/components/fileuploaderitem/MFileUploaderItem.vue +180 -0
- package/src/components/fileuploaderitem/README.md +58 -0
- package/src/components/flag/README.md +1 -1
- package/src/components/iconbutton/MIconButton.spec.ts +1 -1
- package/src/components/iconbutton/MIconButton.stories.ts +116 -7
- package/src/components/iconbutton/README.md +25 -1
- package/src/components/kpiitem/MKpiItem.vue +5 -3
- package/src/components/linearprogressbarbuffer/README.md +14 -0
- package/src/components/link/MLink.stories.ts +1 -2
- package/src/components/link/README.md +14 -0
- package/src/components/loader/README.md +20 -0
- package/src/components/loadingoverlay/README.md +14 -0
- package/src/components/modal/MModal.stories.ts +1 -2
- package/src/components/modal/MModal.vue +1 -1
- package/src/components/modal/README.md +16 -0
- package/src/components/numberbadge/README.md +17 -1
- package/src/components/overlay/README.md +16 -0
- package/src/components/pagination/MPagination.vue +1 -2
- package/src/components/pagination/README.md +18 -0
- package/src/components/passwordinput/MPasswordInput.vue +1 -1
- package/src/components/passwordinput/README.md +14 -0
- package/src/components/phonenumber/MPhoneNumber.spec.ts +7 -6
- package/src/components/phonenumber/MPhoneNumber.vue +1 -1
- package/src/components/quantityselector/MQuantitySelector.vue +1 -2
- package/src/components/radio/README.md +14 -0
- package/src/components/radiogroup/README.md +14 -0
- package/src/components/select/README.md +14 -0
- package/src/components/starrating/MStarRating.spec.ts +1 -2
- package/src/components/starrating/MStarRating.vue +1 -3
- package/src/components/statusbadge/README.md +14 -0
- package/src/components/statusdot/README.md +14 -0
- package/src/components/statusmessage/MStatusMessage.spec.ts +6 -4
- package/src/components/statusmessage/MStatusMessage.vue +6 -4
- package/src/components/statusmessage/README.md +14 -0
- package/src/components/statusnotification/MStatusNotification.spec.ts +6 -4
- package/src/components/statusnotification/MStatusNotification.stories.ts +1 -1
- package/src/components/statusnotification/MStatusNotification.vue +7 -5
- package/src/components/statusnotification/README.md +14 -0
- package/src/components/stepperbottombar/MStepperBottomBar.spec.ts +134 -0
- package/src/components/stepperbottombar/MStepperBottomBar.stories.ts +72 -0
- package/src/components/stepperbottombar/MStepperBottomBar.vue +131 -0
- package/src/components/stepperbottombar/README.md +40 -0
- package/src/components/steppercompact/README.md +14 -0
- package/src/components/stepperinline/MStepperInline.vue +1 -2
- package/src/components/tabs/MTabs.stories.ts +1 -1
- package/src/components/tabs/README.md +16 -0
- package/src/components/tag/MTag.vue +1 -1
- package/src/components/tag/README.md +14 -0
- package/src/components/textinput/MTextInput.spec.ts +1 -1
- package/src/components/textinput/MTextInput.stories.ts +1 -1
- package/src/components/textinput/MTextInput.vue +1 -1
- package/src/components/toaster/MToaster.spec.ts +6 -4
- package/src/components/toaster/MToaster.vue +7 -5
- package/src/components/toaster/README.md +16 -0
- package/src/components/toggle/README.md +14 -0
- package/src/components/togglegroup/README.md +14 -0
- package/src/main.ts +5 -0
- package/src/components/Introduction.mdx +0 -100
- package/src/components/Support.mdx +0 -18
- package/src/components/usingIcons.mdx +0 -35
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Meta, StoryObj } from '@storybook/vue3-vite';
|
|
2
2
|
|
|
3
3
|
import MButton from './MButton.vue';
|
|
4
|
-
import ChevronRight24 from '@mozaic-ds/icons-vue
|
|
4
|
+
import { ChevronRight24, Edit24, Search24 } from '@mozaic-ds/icons-vue';
|
|
5
5
|
|
|
6
6
|
const meta: Meta<typeof MButton> = {
|
|
7
7
|
title: 'Action/Button',
|
|
@@ -16,7 +16,7 @@ const meta: Meta<typeof MButton> = {
|
|
|
16
16
|
},
|
|
17
17
|
args: { default: 'Button Label' },
|
|
18
18
|
render: (args) => ({
|
|
19
|
-
components: { MButton, ChevronRight24 },
|
|
19
|
+
components: { MButton, ChevronRight24, Edit24, Search24 },
|
|
20
20
|
setup() {
|
|
21
21
|
return { args };
|
|
22
22
|
},
|
|
@@ -33,21 +33,173 @@ const meta: Meta<typeof MButton> = {
|
|
|
33
33
|
export default meta;
|
|
34
34
|
type Story = StoryObj<typeof MButton>;
|
|
35
35
|
|
|
36
|
-
export const Filled: Story = {
|
|
36
|
+
export const Filled: Story = {
|
|
37
|
+
parameters: {
|
|
38
|
+
docs: {
|
|
39
|
+
description: {
|
|
40
|
+
story:
|
|
41
|
+
'Most visible variant, used to emphasize the primary action on a page or a section.',
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
|
+
};
|
|
37
46
|
|
|
38
|
-
export const
|
|
47
|
+
export const Outlined: Story = {
|
|
39
48
|
args: { outlined: true },
|
|
49
|
+
parameters: {
|
|
50
|
+
docs: {
|
|
51
|
+
description: {
|
|
52
|
+
story:
|
|
53
|
+
'Complements the filled button for secondary actions that require less attention. It can also be used when multiple actions are available, without one standing out as more important.',
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
},
|
|
40
57
|
};
|
|
41
58
|
|
|
42
59
|
export const Ghost: Story = {
|
|
43
60
|
args: { ghost: true },
|
|
61
|
+
parameters: {
|
|
62
|
+
docs: {
|
|
63
|
+
description: {
|
|
64
|
+
story:
|
|
65
|
+
'More discreet, should be used exclusively for canceling or ignoring a task or action.',
|
|
66
|
+
},
|
|
67
|
+
},
|
|
68
|
+
},
|
|
44
69
|
};
|
|
45
70
|
|
|
46
|
-
export const
|
|
71
|
+
export const IconLeft: Story = {
|
|
47
72
|
args: {
|
|
48
73
|
iconPosition: 'left',
|
|
74
|
+
icon: '<Edit24/>',
|
|
75
|
+
},
|
|
76
|
+
parameters: {
|
|
77
|
+
docs: {
|
|
78
|
+
description: {
|
|
79
|
+
story:
|
|
80
|
+
'An icon can enhance the action or provide a visual element that helps user understanding.<br/> Used in conjunction with the action verb, reinforcing its meaning.',
|
|
81
|
+
},
|
|
82
|
+
},
|
|
83
|
+
},
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
export const IconRight: Story = {
|
|
87
|
+
args: {
|
|
88
|
+
iconPosition: 'right',
|
|
49
89
|
icon: '<ChevronRight24/>',
|
|
50
90
|
},
|
|
91
|
+
parameters: {
|
|
92
|
+
docs: {
|
|
93
|
+
description: {
|
|
94
|
+
story:
|
|
95
|
+
'An icon can enhance the action or provide a visual element that helps user understanding.<br/> Often emphasizes the concept of navigation, guiding users effectively.',
|
|
96
|
+
},
|
|
97
|
+
},
|
|
98
|
+
},
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
export const IconOnly: Story = {
|
|
102
|
+
args: {
|
|
103
|
+
default: undefined,
|
|
104
|
+
iconPosition: 'only',
|
|
105
|
+
icon: '<Search24/>',
|
|
106
|
+
ariaLabel: 'Search button',
|
|
107
|
+
},
|
|
108
|
+
parameters: {
|
|
109
|
+
docs: {
|
|
110
|
+
description: {
|
|
111
|
+
story:
|
|
112
|
+
'An icon can enhance the action or provide a visual element that helps user understanding.<br/> Used when the action is generic enough to be understood without accompanying text.',
|
|
113
|
+
},
|
|
114
|
+
},
|
|
115
|
+
},
|
|
116
|
+
};
|
|
117
|
+
|
|
118
|
+
export const Standard: Story = {
|
|
119
|
+
args: { appearance: 'standard' },
|
|
120
|
+
parameters: {
|
|
121
|
+
docs: {
|
|
122
|
+
description: {
|
|
123
|
+
story:
|
|
124
|
+
'The standard style is a neutral variant used for general actions that don’t require special attention, ensuring a consistent and accessible look.',
|
|
125
|
+
},
|
|
126
|
+
},
|
|
127
|
+
},
|
|
128
|
+
};
|
|
129
|
+
|
|
130
|
+
export const Accent: Story = {
|
|
131
|
+
args: { appearance: 'accent' },
|
|
132
|
+
parameters: {
|
|
133
|
+
docs: {
|
|
134
|
+
description: {
|
|
135
|
+
story:
|
|
136
|
+
'The accent style is a more prominent variant used for engaging actions that require attention, such as conversions or highlighting specific tasks, ensuring a vibrant and accessible appearance.',
|
|
137
|
+
},
|
|
138
|
+
},
|
|
139
|
+
},
|
|
140
|
+
};
|
|
141
|
+
|
|
142
|
+
export const Danger: Story = {
|
|
143
|
+
args: { appearance: 'danger' },
|
|
144
|
+
parameters: {
|
|
145
|
+
docs: {
|
|
146
|
+
description: {
|
|
147
|
+
story:
|
|
148
|
+
'The danger style is intended for critical or irreversible actions, such as deleting sensitive data (e.g., deleting a profile picture is not considered sensitive), ensuring that users are clearly warned before proceeding.',
|
|
149
|
+
},
|
|
150
|
+
},
|
|
151
|
+
},
|
|
152
|
+
};
|
|
153
|
+
|
|
154
|
+
export const Inverse: Story = {
|
|
155
|
+
globals: {
|
|
156
|
+
backgrounds: { value: 'inverse' },
|
|
157
|
+
},
|
|
158
|
+
args: { appearance: 'inverse' },
|
|
159
|
+
parameters: {
|
|
160
|
+
docs: {
|
|
161
|
+
description: {
|
|
162
|
+
story:
|
|
163
|
+
'The inverse style must be used exclusively on dark backgrounds, providing contrast and clarity.',
|
|
164
|
+
},
|
|
165
|
+
},
|
|
166
|
+
},
|
|
167
|
+
};
|
|
168
|
+
|
|
169
|
+
export const Small: Story = {
|
|
170
|
+
args: { size: 's' },
|
|
171
|
+
parameters: {
|
|
172
|
+
docs: {
|
|
173
|
+
description: {
|
|
174
|
+
story:
|
|
175
|
+
'Exclusively used on desktop interfaces. Ideal for complex interfaces with a high volume of content.',
|
|
176
|
+
},
|
|
177
|
+
},
|
|
178
|
+
},
|
|
179
|
+
};
|
|
180
|
+
|
|
181
|
+
export const Medium: Story = {
|
|
182
|
+
args: { size: 'm' },
|
|
183
|
+
parameters: {
|
|
184
|
+
docs: {
|
|
185
|
+
description: {
|
|
186
|
+
story:
|
|
187
|
+
'This is the minimum size recommended for mobile use, and it is the default size based on standard height. It provides an adequate touch area for mobile devices.',
|
|
188
|
+
},
|
|
189
|
+
},
|
|
190
|
+
},
|
|
191
|
+
};
|
|
192
|
+
|
|
193
|
+
export const Large: Story = {
|
|
194
|
+
args: { size: 'l' },
|
|
195
|
+
parameters: {
|
|
196
|
+
docs: {
|
|
197
|
+
description: {
|
|
198
|
+
story:
|
|
199
|
+
'Primarily used on landing pages or layouts with generous spacing. It may also be applicable in more complex scenarios, such as for small mobile devices used by warehouse employees.',
|
|
200
|
+
},
|
|
201
|
+
},
|
|
202
|
+
},
|
|
51
203
|
};
|
|
52
204
|
|
|
53
205
|
export const Loading: Story = {
|
|
@@ -55,4 +207,12 @@ export const Loading: Story = {
|
|
|
55
207
|
isLoading: true,
|
|
56
208
|
ariaLabel: 'Loading button',
|
|
57
209
|
},
|
|
210
|
+
parameters: {
|
|
211
|
+
docs: {
|
|
212
|
+
description: {
|
|
213
|
+
story:
|
|
214
|
+
'Visually communicates to users that a process or action is in progress. It helps set user expectations during waiting periods by indicating that the system is working. Typically used for actions that require more than a fraction of a second to complete.',
|
|
215
|
+
},
|
|
216
|
+
},
|
|
217
|
+
},
|
|
58
218
|
};
|
|
@@ -7,7 +7,7 @@ Buttons are key interactive elements used to perform actions and can be used as
|
|
|
7
7
|
|
|
8
8
|
| Name | Description | Type | Default |
|
|
9
9
|
| --- | --- | --- | --- |
|
|
10
|
-
| `appearance` | Defines the visual style of the button. | `"standard"` `"
|
|
10
|
+
| `appearance` | Defines the visual style of the button. | `"standard"` `"danger"` `"inverse"` `"accent"` | `"standard"` |
|
|
11
11
|
| `size` | Determines the size of the button. | `"s"` `"m"` `"l"` | `"m"` |
|
|
12
12
|
| `disabled` | If `true`, disables the button, making it non-interactive. | `boolean` | - |
|
|
13
13
|
| `ghost` | If `true`, applies a "ghost" style to the button, typically a transparent background with a border. | `boolean` | - |
|
|
@@ -22,3 +22,35 @@ Buttons are key interactive elements used to perform actions and can be used as
|
|
|
22
22
|
| --- | --- |
|
|
23
23
|
| `default` | The content displayed in the button. |
|
|
24
24
|
| `icon` | Use this slot to insert an icon for the Button. |
|
|
25
|
+
|
|
26
|
+
## Dependencies
|
|
27
|
+
|
|
28
|
+
### Depends on
|
|
29
|
+
|
|
30
|
+
- [MLoader](../loader)
|
|
31
|
+
|
|
32
|
+
### Graph
|
|
33
|
+
|
|
34
|
+
```mermaid
|
|
35
|
+
graph TD;
|
|
36
|
+
MButton --> MLoader
|
|
37
|
+
style MButton fill:#008240,stroke:#333,stroke-width:4px
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### Used By
|
|
41
|
+
|
|
42
|
+
- [MFileUploaderItem](../fileuploaderitem)
|
|
43
|
+
- [MPagination](../pagination)
|
|
44
|
+
- [MPasswordInput](../passwordinput)
|
|
45
|
+
- [MStepperBottomBar](../stepperbottombar)
|
|
46
|
+
|
|
47
|
+
### Graph
|
|
48
|
+
|
|
49
|
+
```mermaid
|
|
50
|
+
graph TD;
|
|
51
|
+
MFileUploaderItem --> MButton
|
|
52
|
+
MPagination --> MButton
|
|
53
|
+
MPasswordInput --> MButton
|
|
54
|
+
MStepperBottomBar --> MButton
|
|
55
|
+
style MButton fill:#008240,stroke:#333,stroke-width:4px
|
|
56
|
+
```
|
|
@@ -2,15 +2,16 @@ import { describe, it, expect, vi } from 'vitest';
|
|
|
2
2
|
import { mount } from '@vue/test-utils';
|
|
3
3
|
import MCallout from './MCallout.vue';
|
|
4
4
|
|
|
5
|
-
vi.mock(
|
|
6
|
-
'@mozaic-ds/icons-vue
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
vi.mock('@mozaic-ds/icons-vue', async () => {
|
|
6
|
+
const actual = await vi.importActual('@mozaic-ds/icons-vue');
|
|
7
|
+
return {
|
|
8
|
+
...actual,
|
|
9
|
+
ImageAlt32: {
|
|
9
10
|
name: 'ImageAlt32',
|
|
10
11
|
template: '<svg class="mock-icon" />',
|
|
11
12
|
},
|
|
12
|
-
}
|
|
13
|
-
);
|
|
13
|
+
};
|
|
14
|
+
});
|
|
14
15
|
|
|
15
16
|
describe('MCallout.vue', () => {
|
|
16
17
|
it('renders title and description correctly', () => {
|
|
@@ -2,8 +2,7 @@ import type { Meta, StoryObj } from '@storybook/vue3-vite';
|
|
|
2
2
|
import MCallout from './MCallout.vue';
|
|
3
3
|
import MButton from '../button/MButton.vue';
|
|
4
4
|
import MLink from '../link/MLink.vue';
|
|
5
|
-
import ArrowNext20 from '@mozaic-ds/icons-vue
|
|
6
|
-
import ImageAlt32 from '@mozaic-ds/icons-vue/src/components/ImageAlt32/ImageAlt32.vue';
|
|
5
|
+
import { ArrowNext20, ImageAlt32 } from '@mozaic-ds/icons-vue';
|
|
7
6
|
|
|
8
7
|
const meta: Meta<typeof MCallout> = {
|
|
9
8
|
title: 'Content/Callout',
|
|
@@ -2,8 +2,7 @@ import { mount } from '@vue/test-utils';
|
|
|
2
2
|
import { describe, it, expect, vi, beforeAll, afterAll } from 'vitest';
|
|
3
3
|
import MCarousel from './MCarousel.vue';
|
|
4
4
|
import MIconButton from '../iconbutton/MIconButton.vue';
|
|
5
|
-
import ChevronLeft20 from '@mozaic-ds/icons-vue
|
|
6
|
-
import ChevronRight20 from '@mozaic-ds/icons-vue/src/components/ChevronRight20/ChevronRight20.vue';
|
|
5
|
+
import { ChevronLeft20, ChevronRight20 } from '@mozaic-ds/icons-vue';
|
|
7
6
|
|
|
8
7
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
9
8
|
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import type { Meta, StoryObj } from '@storybook/vue3-vite';
|
|
2
2
|
import MCarousel from './MCarousel.vue';
|
|
3
3
|
import MLink from '../link/MLink.vue';
|
|
4
|
-
import ArrowNext24 from '@mozaic-ds/icons-vue
|
|
4
|
+
import { ArrowNext24 } from '@mozaic-ds/icons-vue';
|
|
5
5
|
|
|
6
6
|
const meta: Meta<typeof MCarousel> = {
|
|
7
7
|
title: 'Content/Carousel',
|
|
8
8
|
component: MCarousel,
|
|
9
|
+
tags: ['v2'],
|
|
9
10
|
parameters: {
|
|
10
11
|
docs: {
|
|
11
12
|
description: {
|
|
@@ -48,8 +48,7 @@
|
|
|
48
48
|
<script setup lang="ts">
|
|
49
49
|
import { computed, onMounted, ref, type VNode } from 'vue';
|
|
50
50
|
import MIconButton from '../iconbutton/MIconButton.vue';
|
|
51
|
-
import ChevronLeft20 from '@mozaic-ds/icons-vue
|
|
52
|
-
import ChevronRight20 from '@mozaic-ds/icons-vue/src/components/ChevronRight20/ChevronRight20.vue';
|
|
51
|
+
import { ChevronLeft20, ChevronRight20 } from '@mozaic-ds/icons-vue';
|
|
53
52
|
/**
|
|
54
53
|
* A Carousel allows users to browse through multiple items within a horizontal container, using swipe gestures on mobile or navigation controls on desktop. It is primarily used to showcase products, promotions, or visual content, offering an engaging way to explore information in a condensed and interactive format. Carousels help optimize space while keeping content visually appealing and easily accessible.
|
|
55
54
|
*/
|
|
@@ -16,3 +16,17 @@ A Carousel allows users to browse through multiple items within a horizontal con
|
|
|
16
16
|
| --- | --- |
|
|
17
17
|
| `default` | Use this slot to insert a list of components to be displayed in the carousel. |
|
|
18
18
|
| `header` | Use this slot to insert the title, subtitle or link of the carousel. |
|
|
19
|
+
|
|
20
|
+
## Dependencies
|
|
21
|
+
|
|
22
|
+
### Depends on
|
|
23
|
+
|
|
24
|
+
- [MIconButton](../iconbutton)
|
|
25
|
+
|
|
26
|
+
### Graph
|
|
27
|
+
|
|
28
|
+
```mermaid
|
|
29
|
+
graph TD;
|
|
30
|
+
MCarousel --> MIconButton
|
|
31
|
+
style MCarousel fill:#008240,stroke:#333,stroke-width:4px
|
|
32
|
+
```
|
|
@@ -21,3 +21,17 @@ A checkbox is an interactive component used to select or deselect an option, typ
|
|
|
21
21
|
| Name | Description | Type |
|
|
22
22
|
| --- | --- | --- |
|
|
23
23
|
| `update:modelValue` | Emits when the checkbox value changes, updating the modelValue prop. | [value: boolean] |
|
|
24
|
+
|
|
25
|
+
## Dependencies
|
|
26
|
+
|
|
27
|
+
### Used By
|
|
28
|
+
|
|
29
|
+
- [MCheckboxGroup](../checkboxgroup)
|
|
30
|
+
|
|
31
|
+
### Graph
|
|
32
|
+
|
|
33
|
+
```mermaid
|
|
34
|
+
graph TD;
|
|
35
|
+
MCheckboxGroup --> MCheckbox
|
|
36
|
+
style MCheckbox fill:#008240,stroke:#333,stroke-width:4px
|
|
37
|
+
```
|
|
@@ -18,3 +18,17 @@ A checkbox is an interactive component used to select or deselect an option, typ
|
|
|
18
18
|
| Name | Description | Type |
|
|
19
19
|
| --- | --- | --- |
|
|
20
20
|
| `update:modelValue` | Emits when the checkbox group value changes, updating the modelValue prop. | [value: Array<string>] |
|
|
21
|
+
|
|
22
|
+
## Dependencies
|
|
23
|
+
|
|
24
|
+
### Depends on
|
|
25
|
+
|
|
26
|
+
- [MCheckbox](../checkbox)
|
|
27
|
+
|
|
28
|
+
### Graph
|
|
29
|
+
|
|
30
|
+
```mermaid
|
|
31
|
+
graph TD;
|
|
32
|
+
MCheckboxGroup --> MCheckbox
|
|
33
|
+
style MCheckboxGroup fill:#008240,stroke:#333,stroke-width:4px
|
|
34
|
+
```
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { mount } from '@vue/test-utils';
|
|
2
2
|
import { describe, it, expect } from 'vitest';
|
|
3
3
|
import MCheckListMenu, { type CheckListMenuItem } from './MCheckListMenu.vue';
|
|
4
|
-
import CheckCircleFilled24 from '@mozaic-ds/icons-vue
|
|
4
|
+
import { CheckCircleFilled24 } from '@mozaic-ds/icons-vue';
|
|
5
5
|
import type { MenuItem } from '../builtinmenu/MBuiltInMenu.vue';
|
|
6
6
|
|
|
7
7
|
const StubMBuiltInMenu = {
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
import { computed } from 'vue';
|
|
11
11
|
import MBuiltInMenu from '../builtinmenu/MBuiltInMenu.vue';
|
|
12
12
|
import type { MenuItem } from '../builtinmenu/MBuiltInMenu.vue';
|
|
13
|
-
import CheckCircleFilled24 from '@mozaic-ds/icons-vue
|
|
13
|
+
import { CheckCircleFilled24 } from '@mozaic-ds/icons-vue';
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
16
|
* A check-list menu is a structured vertical list where each item represents a distinct section of content. It enables users to navigate through and validate different parts of an interface in any order. Unlike linear steppers, this component offers flexibility by allowing non-sequential completion, making it ideal for user profile setup, application settings, or flexible onboarding processes where users can choose their own path through the experience.
|
|
@@ -16,3 +16,17 @@ A check-list menu is a structured vertical list where each item represents a dis
|
|
|
16
16
|
| Name | Description | Type |
|
|
17
17
|
| --- | --- | --- |
|
|
18
18
|
| `update:modelValue` | Emitted when the selected item changes, providing the updated selected value. | [value: number] |
|
|
19
|
+
|
|
20
|
+
## Dependencies
|
|
21
|
+
|
|
22
|
+
### Depends on
|
|
23
|
+
|
|
24
|
+
- [MBuiltInMenu](../builtinmenu)
|
|
25
|
+
|
|
26
|
+
### Graph
|
|
27
|
+
|
|
28
|
+
```mermaid
|
|
29
|
+
graph TD;
|
|
30
|
+
MCheckListMenu --> MBuiltInMenu
|
|
31
|
+
style MCheckListMenu fill:#008240,stroke:#333,stroke-width:4px
|
|
32
|
+
```
|
|
@@ -9,6 +9,20 @@ A circular progress bar visually represents progress toward a goal or completion
|
|
|
9
9
|
| --- | --- | --- | --- |
|
|
10
10
|
| `size` | Sets the size of the progress bar. | `"s"` `"m"` `"l"` | - |
|
|
11
11
|
| `value` | The current value of the progress bar. | `number` | `0` |
|
|
12
|
-
| `type` | Shows either a percentage or custom content. | `"
|
|
12
|
+
| `type` | Shows either a percentage or custom content. | `"content"` `"percentage"` | `"percentage"` |
|
|
13
13
|
| `contentValue` | Main content shown when `type` is `'content'`. | `string` | - |
|
|
14
14
|
| `additionalInfo` | Additional text shown to define the `contentValue`. | `string` | - |
|
|
15
|
+
|
|
16
|
+
## Dependencies
|
|
17
|
+
|
|
18
|
+
### Used By
|
|
19
|
+
|
|
20
|
+
- [MStepperCompact](../steppercompact)
|
|
21
|
+
|
|
22
|
+
### Graph
|
|
23
|
+
|
|
24
|
+
```mermaid
|
|
25
|
+
graph TD;
|
|
26
|
+
MStepperCompact --> MCircularProgressbar
|
|
27
|
+
style MCircularProgressbar fill:#008240,stroke:#333,stroke-width:4px
|
|
28
|
+
```
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
|
|
37
37
|
<script setup lang="ts">
|
|
38
38
|
import { computed, ref } from 'vue';
|
|
39
|
-
import CrossCircleFilled24 from '@mozaic-ds/icons-vue
|
|
39
|
+
import { CrossCircleFilled24 } from '@mozaic-ds/icons-vue';
|
|
40
40
|
/**
|
|
41
41
|
* A date picker is an input component that allows users to select a date from a calendar interface or manually enter a date value. It enhances usability by providing structured date selection, reducing input errors, and ensuring format consistency. Date Pickers are commonly used in forms, booking systems, scheduling tools, and data filtering interfaces to facilitate accurate date entry.<br><br> To put a label, requierement text, help text or to apply a valid or invalid message, the examples are available in the [Field section](/docs/form-elements-field--docs#input).
|
|
42
42
|
*/
|
|
@@ -16,3 +16,25 @@ A divider is a visual element used to separate content or sections within an int
|
|
|
16
16
|
| Name | Description |
|
|
17
17
|
| --- | --- |
|
|
18
18
|
| `default` | Use this slot to insert the content who need a vertical divider |
|
|
19
|
+
|
|
20
|
+
## Dependencies
|
|
21
|
+
|
|
22
|
+
### Used By
|
|
23
|
+
|
|
24
|
+
- [MActionBottomBar](../actionbottombar)
|
|
25
|
+
- [MActionListbox](../actionlistbox)
|
|
26
|
+
- [MFileUploaderItem](../fileuploaderitem)
|
|
27
|
+
- [MStepperBottomBar](../stepperbottombar)
|
|
28
|
+
- [MTabs](../tabs)
|
|
29
|
+
|
|
30
|
+
### Graph
|
|
31
|
+
|
|
32
|
+
```mermaid
|
|
33
|
+
graph TD;
|
|
34
|
+
MActionBottomBar --> MDivider
|
|
35
|
+
MActionListbox --> MDivider
|
|
36
|
+
MFileUploaderItem --> MDivider
|
|
37
|
+
MStepperBottomBar --> MDivider
|
|
38
|
+
MTabs --> MDivider
|
|
39
|
+
style MDivider fill:#008240,stroke:#333,stroke-width:4px
|
|
40
|
+
```
|
|
@@ -66,8 +66,7 @@
|
|
|
66
66
|
|
|
67
67
|
<script setup lang="ts">
|
|
68
68
|
import { computed, watch, type VNode, ref, onMounted, onUnmounted } from 'vue';
|
|
69
|
-
import ArrowBack24 from '@mozaic-ds/icons-vue
|
|
70
|
-
import Cross24 from '@mozaic-ds/icons-vue/src/components/Cross24/Cross24.vue';
|
|
69
|
+
import { ArrowBack24, Cross24 } from '@mozaic-ds/icons-vue';
|
|
71
70
|
import MIconButton from '../iconbutton/MIconButton.vue';
|
|
72
71
|
import MOverlay from '../overlay/MOverlay.vue';
|
|
73
72
|
/**
|
|
@@ -29,3 +29,19 @@ A drawer is a sliding panel that appears from the side of the screen, providing
|
|
|
29
29
|
| --- | --- | --- |
|
|
30
30
|
| `back` | Emits when click back button of the drawer. | [] |
|
|
31
31
|
| `update:open` | Emits when the drawer open state changes, updating the modelValue prop. | [value: boolean] |
|
|
32
|
+
|
|
33
|
+
## Dependencies
|
|
34
|
+
|
|
35
|
+
### Depends on
|
|
36
|
+
|
|
37
|
+
- [MIconButton](../iconbutton)
|
|
38
|
+
- [MOverlay](../overlay)
|
|
39
|
+
|
|
40
|
+
### Graph
|
|
41
|
+
|
|
42
|
+
```mermaid
|
|
43
|
+
graph TD;
|
|
44
|
+
MDrawer --> MIconButton
|
|
45
|
+
MDrawer --> MOverlay
|
|
46
|
+
style MDrawer fill:#008240,stroke:#333,stroke-width:4px
|
|
47
|
+
```
|
|
@@ -23,3 +23,17 @@ A field label is a text element that identifies the purpose of an input field, p
|
|
|
23
23
|
| Name | Description |
|
|
24
24
|
| --- | --- |
|
|
25
25
|
| `default` | Use this slot to insert the form element of your choice |
|
|
26
|
+
|
|
27
|
+
## Dependencies
|
|
28
|
+
|
|
29
|
+
### Depends on
|
|
30
|
+
|
|
31
|
+
- [MLoader](../loader)
|
|
32
|
+
|
|
33
|
+
### Graph
|
|
34
|
+
|
|
35
|
+
```mermaid
|
|
36
|
+
graph TD;
|
|
37
|
+
MField --> MLoader
|
|
38
|
+
style MField fill:#008240,stroke:#333,stroke-width:4px
|
|
39
|
+
```
|