@zap-wunschlachen/wl-shared-components 1.0.24 → 1.0.26
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/.github/workflows/playwright.yml +205 -205
- package/.github/workflows/static.yml +61 -61
- package/.github/workflows/update-snapshots.yml +37 -37
- package/.prettierrc +5 -5
- package/.storybook/main.ts +18 -18
- package/.storybook/preview.ts +37 -37
- package/.storybook/storyWrapper.vue +18 -18
- package/.storybook/withVuetifyTheme.decorator.ts +21 -21
- package/App.vue +34 -176
- package/README.md +56 -56
- package/heroicons.ts +75 -75
- package/index.html +19 -19
- package/package.json +67 -67
- package/playwright.config.ts +48 -48
- package/public/background.svg +60 -60
- package/public/style.css +187 -187
- package/public/technologies.svg +22 -22
- package/src/assets/css/base.css +235 -235
- package/src/assets/css/variables.css +107 -96
- package/src/components/Accordion/Accordion.css +59 -59
- package/src/components/Accordion/AccordionGroup.vue +51 -51
- package/src/components/Accordion/AccordionItem.vue +66 -66
- package/src/components/Appointment/Card/Actions.css +54 -54
- package/src/components/Appointment/Card/Actions.vue +99 -99
- package/src/components/Appointment/Card/AnamneseNotification.css +15 -15
- package/src/components/Appointment/Card/AnamneseNotification.vue +23 -23
- package/src/components/Appointment/Card/Card.css +80 -80
- package/src/components/Appointment/Card/Card.vue +93 -93
- package/src/components/Appointment/Card/Details.css +50 -50
- package/src/components/Appointment/Card/Details.vue +43 -43
- package/src/components/Audio/Audio.vue +187 -187
- package/src/components/Audio/Waveform.vue +117 -117
- package/src/components/Background/Background.css +39 -0
- package/src/components/Background/Background.vue +19 -0
- package/src/components/Background/WhiteCocoonBackground.vue +9 -0
- package/src/components/Background/WunschlachenBackground.vue +11 -0
- package/src/components/Button/Button.vue +119 -119
- package/src/components/CheckBox/CheckBox.css +185 -185
- package/src/components/CheckBox/Checkbox.vue +130 -130
- package/src/components/DateInput/DateInput.css +2 -2
- package/src/components/DateInput/DateInput.vue +262 -262
- package/src/components/Dialog/Dialog.css +6 -6
- package/src/components/Dialog/Dialog.vue +29 -29
- package/src/components/EditField/EditField.css +19 -19
- package/src/components/EditField/EditField.vue +202 -202
- package/src/components/ErrorPage/ErrorPage.css +124 -0
- package/src/components/ErrorPage/ErrorPage.vue +45 -0
- package/src/components/ErrorPage/ErrorPageLogo.vue +26 -0
- package/src/components/IconBullet/IconBullet.vue +86 -86
- package/src/components/IconBullet/IconBulletList.vue +41 -41
- package/src/components/Icons/AdvanceAppointments.vue +153 -153
- package/src/components/Icons/Audio/CloudFailed.vue +20 -20
- package/src/components/Icons/Audio/CloudSaved.vue +21 -21
- package/src/components/Icons/Audio/Delete.vue +15 -15
- package/src/components/Icons/Audio/Pause.vue +18 -18
- package/src/components/Icons/Audio/Play.vue +15 -15
- package/src/components/Icons/CalendarNotification.vue +126 -126
- package/src/components/Icons/Chair.vue +32 -32
- package/src/components/Icons/ChairNotification.vue +35 -35
- package/src/components/Icons/Circle.vue +66 -66
- package/src/components/Icons/FavIcon.vue +22 -22
- package/src/components/Icons/FilledCircle.vue +11 -11
- package/src/components/Icons/Group3.vue +46 -46
- package/src/components/Icons/Logo.vue +108 -0
- package/src/components/Icons/RingNotification.vue +54 -54
- package/src/components/Icons/SolidArrowRight.vue +14 -14
- package/src/components/Icons/calendar.vue +17 -17
- package/src/components/Icons/checkbox.vue +19 -19
- package/src/components/Icons/outlineChecked.vue +27 -27
- package/src/components/Icons/play.vue +5 -5
- package/src/components/Input/Input.css +187 -187
- package/src/components/Input/Input.vue +247 -247
- package/src/components/Laboratory/AppointmentCard/AppointmentCard.css +7 -7
- package/src/components/Laboratory/AppointmentCard/AppointmentCard.vue +116 -116
- package/src/components/Laboratory/ChatBoxImage/ChatBoxImage.vue +81 -81
- package/src/components/Laboratory/ChatMessage/ChatMessage.vue +113 -113
- package/src/components/Laboratory/ChatMessage/ChatMessageBadge.css +4 -4
- package/src/components/Laboratory/ChatMessage/ChatMessageBadge.vue +99 -99
- package/src/components/Laboratory/ChatNotification/ChatNotification.vue +130 -130
- package/src/components/Laboratory/DocumentCard/DocumentCard.css +3 -3
- package/src/components/Laboratory/DocumentCard/DocumentCard.vue +50 -50
- package/src/components/Laboratory/DocumentCard/DocumentCardItem.vue +53 -53
- package/src/components/Laboratory/InfoCard/InfoCard.vue +162 -162
- package/src/components/Laboratory/MainColumnsBar/MainColumnsBar.vue +102 -102
- package/src/components/Laboratory/ProgressCircle/ProgressCircle.vue +152 -152
- package/src/components/Laboratory/ProgressLinear/ProgressLinear.css +33 -33
- package/src/components/Laboratory/ProgressLinear/ProgressLinear.vue +75 -75
- package/src/components/Laboratory/SelectionColumnBar/SelectionColumnBar.vue +92 -92
- package/src/components/Laboratory/StatusNotification/StatusNotification.vue +49 -49
- package/src/components/Laboratory/TagLabel/TagLabel.vue +126 -126
- package/src/components/Laboratory/TagLabelGroup/TagLabelGroup.vue +97 -97
- package/src/components/Laboratory/TicketCard/TicketCard.css +3 -3
- package/src/components/Laboratory/TicketCard/TicketCard.vue +143 -143
- package/src/components/Laboratory/TimeLine/TimeLineEvent.css +18 -18
- package/src/components/Laboratory/TimeLine/TimeLineEvent.vue +119 -119
- package/src/components/Laboratory/TimeLine/Timeline.css +4 -4
- package/src/components/Laboratory/TimeLine/Timeline.vue +30 -30
- package/src/components/Loader/Loader.css +51 -51
- package/src/components/MaintenanceBanner/MaintenanceBanner.css +289 -0
- package/src/components/MaintenanceBanner/MaintenanceBanner.vue +127 -0
- package/src/components/MaintenanceBanner/MaintenanceIllustration.vue +54 -0
- package/src/components/Modal/Modal.css +5 -5
- package/src/components/Modal/Modal.vue +22 -22
- package/src/components/NotificationBubble/NotificationBubble.css +4 -4
- package/src/components/NotificationBubble/NotificationBubble.vue +90 -90
- package/src/components/OtpInput/OtpInput.css +39 -39
- package/src/components/OtpInput/OtpInput.vue +143 -143
- package/src/components/PhoneInput/PhoneInput.css +31 -31
- package/src/components/PhoneInput/PhoneInput.vue +113 -113
- package/src/components/Select/Select.css +150 -150
- package/src/components/Select/Select.vue +315 -304
- package/src/components/TextArea/TextArea.css +3 -3
- package/src/components/TextArea/TextArea.vue +126 -126
- package/src/components/TickBox/TickBox.css +49 -49
- package/src/components/TickBox/TickBox.vue +126 -126
- package/src/components/index.ts +26 -24
- package/src/constants/iconEnums.ts +3 -3
- package/src/i18n/i18n.ts +15 -15
- package/src/i18n/locales/de.json +30 -30
- package/src/i18n/locales/en.json +30 -30
- package/src/index.ts +34 -34
- package/src/main.ts +11 -11
- package/src/plugins/vuetify.ts +139 -131
- package/src/shims-vue.d.ts +10 -10
- package/src/stories/Accordion.stories.ts +650 -650
- package/src/stories/Audio.stories.ts +28 -28
- package/src/stories/Button.stories.ts +263 -263
- package/src/stories/CheckBox.stories.ts +348 -348
- package/src/stories/DateInput.stories.ts +53 -53
- package/src/stories/Dialog.stories.ts +147 -147
- package/src/stories/EditField.stories.ts +78 -78
- package/src/stories/IconBullet/IconBullet.stories.ts +201 -201
- package/src/stories/IconBullet/IconBulletList.stories.ts +275 -275
- package/src/stories/Input.stories.ts +351 -351
- package/src/stories/Laboratory/Cards/AppointmentCard/AppointmentCard.stories.ts +260 -260
- package/src/stories/Laboratory/Cards/DocumentCard/DocumentCard.stories.ts +176 -176
- package/src/stories/Laboratory/Cards/DocumentCard/DocumentCardItem.stories.ts +119 -119
- package/src/stories/Laboratory/Cards/InfoCard/InfoCard.stories.ts +320 -320
- package/src/stories/Laboratory/Cards/TicketCard/TicketCard.stories.ts +335 -335
- package/src/stories/Laboratory/Chat/ChatBoxImage.stories.ts +82 -82
- package/src/stories/Laboratory/Chat/ChatMessage.stories.ts +198 -198
- package/src/stories/Laboratory/Chat/ChatMessageBadge.stories.ts +204 -204
- package/src/stories/Laboratory/Chat/ChatNotification.stories.ts +144 -144
- package/src/stories/Laboratory/Chat/ProgressLinear.stories.ts +186 -186
- package/src/stories/Laboratory/Chat/StatusNotification.stories.ts +111 -111
- package/src/stories/Laboratory/MainColumnsBar.stories.ts +48 -48
- package/src/stories/Laboratory/ProgressCircle.stories.ts +261 -261
- package/src/stories/Laboratory/SelectionColumnBar.stories.ts +234 -234
- package/src/stories/Laboratory/TagLabel.stories.ts +418 -418
- package/src/stories/Laboratory/TagLabelGroup.stories.ts +234 -234
- package/src/stories/Laboratory/Timeline.stories.ts +403 -403
- package/src/stories/NotificationBubble.stories.ts +194 -194
- package/src/stories/OtpInput.stories.ts +100 -100
- package/src/stories/PhoneInput.stories.ts +52 -52
- package/src/stories/Select.stories.ts +419 -419
- package/src/stories/TextArea.stories.ts +112 -112
- package/src/stories/TickBox.stories.ts +294 -294
- package/src/stories/v-icon.stories.ts +91 -91
- package/src/utils/index.ts +106 -100
- package/src/vite-env.d.ts +1 -1
- package/tests/e2e/README.md +220 -220
- package/tests/e2e/accessibility.spec.ts +638 -638
- package/tests/e2e/accordion.spec.ts +42 -42
- package/tests/e2e/additional-components.spec.ts +437 -437
- package/tests/e2e/all-components.spec.ts +135 -135
- package/tests/e2e/appointment-card.spec.ts +816 -816
- package/tests/e2e/button-fixed.spec.ts +58 -58
- package/tests/e2e/button.spec.ts +76 -76
- package/tests/e2e/checkbox.spec.ts +50 -50
- package/tests/e2e/date-input.spec.ts +46 -46
- package/tests/e2e/debug.spec.ts +51 -51
- package/tests/e2e/dialog.spec.ts +58 -58
- package/tests/e2e/input.spec.ts +55 -55
- package/tests/e2e/laboratory-components.spec.ts +320 -320
- package/tests/e2e/otp-input.spec.ts +50 -50
- package/tests/e2e/select.spec.ts +52 -52
- package/tests/e2e/storybook-utils.ts +59 -59
- package/tests/e2e/test-basic.spec.ts +33 -33
- package/tests/e2e/visual-regression.spec.ts +350 -350
- package/tests/unit/components/Accordion/AccordionGroup.spec.ts.skip +342 -342
- package/tests/unit/components/Accordion/AccordionItem.spec.ts.skip +383 -383
- package/tests/unit/components/Appointment/Card/Actions.spec.ts +407 -407
- package/tests/unit/components/Appointment/Card/Card.spec.ts +485 -485
- package/tests/unit/components/Appointment/Card/Details.spec.ts +397 -397
- package/tests/unit/components/Audio/Audio.spec.ts +403 -403
- package/tests/unit/components/Audio/Waveform.spec.ts +483 -483
- package/tests/unit/components/Core/Button.spec.ts +336 -336
- package/tests/unit/components/Core/Checkbox.spec.ts +544 -544
- package/tests/unit/components/Core/DateInput.spec.ts +690 -690
- package/tests/unit/components/Core/Dialog.spec.ts +485 -485
- package/tests/unit/components/Core/EditField.spec.ts +782 -782
- package/tests/unit/components/Core/Input.spec.ts +512 -512
- package/tests/unit/components/Core/Modal.spec.ts +518 -518
- package/tests/unit/components/Core/NotificationBubble.spec.ts +606 -606
- package/tests/unit/components/Core/OtpInput.spec.ts +708 -708
- package/tests/unit/components/Core/PhoneInput.spec.ts +619 -619
- package/tests/unit/components/Core/Select.spec.ts +712 -712
- package/tests/unit/components/Core/TextArea.spec.ts +565 -565
- package/tests/unit/components/Core/TickBox.spec.ts +779 -779
- package/tests/unit/components/IconBullet/IconBullet.spec.ts +356 -356
- package/tests/unit/components/IconBullet/IconBulletList.spec.ts +371 -371
- package/tests/unit/components/Icons/Audio/CloudFailed.spec.ts +108 -108
- package/tests/unit/components/Icons/Audio/CloudSaved.spec.ts +149 -149
- package/tests/unit/components/Icons/Audio/Delete.spec.ts +158 -158
- package/tests/unit/components/Icons/Audio/Pause.spec.ts +208 -208
- package/tests/unit/components/Icons/Audio/Play.spec.ts +217 -217
- package/tests/unit/components/Icons/CalendarNotification.spec.ts +186 -186
- package/tests/unit/components/Icons/Chair.spec.ts +234 -234
- package/tests/unit/components/Icons/ChairNotification.spec.ts +311 -311
- package/tests/unit/components/Icons/Circle.spec.ts +255 -255
- package/tests/unit/components/Icons/FavIcon.spec.ts +251 -251
- package/tests/unit/components/Icons/FilledCircle.spec.ts +274 -274
- package/tests/unit/components/Icons/Group3.spec.ts +355 -355
- package/tests/unit/components/Icons/RingNotification.spec.ts +393 -393
- package/tests/unit/components/Icons/calendar.spec.ts +286 -286
- package/tests/unit/components/Icons/checkbox.spec.ts +315 -315
- package/tests/unit/components/Icons/outlineChecked.spec.ts +434 -434
- package/tests/unit/components/Icons/play.spec.ts +308 -308
- package/tests/unit/components/Laboratory/AppointmentCard.spec.ts +167 -167
- package/tests/unit/components/Laboratory/ChatBoxImage.spec.ts +179 -179
- package/tests/unit/components/Laboratory/ChatMessage.spec.ts +263 -263
- package/tests/unit/components/Laboratory/ChatMessageBadge.spec.ts +282 -282
- package/tests/unit/components/Laboratory/ChatNotification.spec.ts +256 -256
- package/tests/unit/components/Laboratory/DocumentCard.spec.ts +228 -228
- package/tests/unit/components/Laboratory/DocumentCardItem.spec.ts +236 -236
- package/tests/unit/components/Laboratory/InfoCard.spec.ts +308 -308
- package/tests/unit/components/Laboratory/MainColumnsBar.spec.ts +251 -251
- package/tests/unit/components/Laboratory/ProgressCircle.spec.ts +290 -290
- package/tests/unit/components/Laboratory/ProgressLinear.spec.ts +275 -275
- package/tests/unit/components/Laboratory/SelectionColumnBar.spec.ts +288 -288
- package/tests/unit/components/Laboratory/StatusNotification.spec.ts +296 -296
- package/tests/unit/components/Laboratory/TagLabel.spec.ts +353 -353
- package/tests/unit/components/Laboratory/TagLabelGroup.spec.ts +377 -377
- package/tests/unit/components/Laboratory/TicketCard.spec.ts +351 -351
- package/tests/unit/components/Laboratory/TimeLineEvent.spec.ts +381 -381
- package/tests/unit/components/Laboratory/Timeline.spec.ts +419 -419
- package/tests/unit/constants/iconEnums.spec.ts +39 -39
- package/tests/unit/i18n/i18n.spec.ts +88 -88
- package/tests/unit/plugins/vuetify.spec.ts +220 -220
- package/tests/unit/setup.ts +189 -189
- package/tests/unit/src/components/index.spec.ts.skip +192 -192
- package/tests/unit/src/index.spec.ts.skip +182 -182
- package/tests/unit/src/main.spec.ts +151 -151
- package/tsconfig.json +26 -26
- package/vite.config.ts +29 -29
- package/vitest.config.ts +83 -83
|
@@ -1,418 +1,418 @@
|
|
|
1
|
-
import { Meta, StoryObj } from '@storybook/vue3';
|
|
2
|
-
import TagLabel from '@components/Laboratory/TagLabel/TagLabel.vue';
|
|
3
|
-
|
|
4
|
-
// Meta configuration for the TagLabel component
|
|
5
|
-
const meta: Meta<typeof TagLabel> = {
|
|
6
|
-
title: 'WL/Laboratory/TagLabel',
|
|
7
|
-
component: TagLabel,
|
|
8
|
-
tags: ['autodocs'],
|
|
9
|
-
argTypes: {
|
|
10
|
-
status: {
|
|
11
|
-
control: 'select',
|
|
12
|
-
options: [
|
|
13
|
-
'Draft',
|
|
14
|
-
'Proof',
|
|
15
|
-
'Ready',
|
|
16
|
-
'Design Ready',
|
|
17
|
-
'Production Ready',
|
|
18
|
-
'Ready for Treatment',
|
|
19
|
-
'Started',
|
|
20
|
-
'Dispatched',
|
|
21
|
-
'Design Started',
|
|
22
|
-
'Production Started',
|
|
23
|
-
'Shipping Dispatched',
|
|
24
|
-
'Took',
|
|
25
|
-
'Design Proof',
|
|
26
|
-
'Treatment Took',
|
|
27
|
-
'Treatment Done',
|
|
28
|
-
'Done',
|
|
29
|
-
'Follow-up Case Created',
|
|
30
|
-
'Arrived',
|
|
31
|
-
'Warning',
|
|
32
|
-
],
|
|
33
|
-
description: 'The status label to display.',
|
|
34
|
-
},
|
|
35
|
-
},
|
|
36
|
-
args: {
|
|
37
|
-
status: 'Draft', // Default value
|
|
38
|
-
},
|
|
39
|
-
parameters: {
|
|
40
|
-
docs: {
|
|
41
|
-
description: {
|
|
42
|
-
component: `
|
|
43
|
-
The \`TagLabel\` component displays a styled label representing various statuses.
|
|
44
|
-
|
|
45
|
-
### Props
|
|
46
|
-
|
|
47
|
-
- **\`status\`**: The status label to display. Options include:
|
|
48
|
-
|
|
49
|
-
- 'Draft'
|
|
50
|
-
- 'Proof'
|
|
51
|
-
- 'Ready'
|
|
52
|
-
- 'Design Ready'
|
|
53
|
-
- 'Production Ready'
|
|
54
|
-
- 'Ready for Treatment'
|
|
55
|
-
- 'Started'
|
|
56
|
-
- 'Dispatched'
|
|
57
|
-
- 'Design Started'
|
|
58
|
-
- 'Production Started'
|
|
59
|
-
- 'Shipping Dispatched'
|
|
60
|
-
- 'Took'
|
|
61
|
-
- 'Design Proof'
|
|
62
|
-
- 'Treatment Took'
|
|
63
|
-
- 'Treatment Done'
|
|
64
|
-
- 'Done'
|
|
65
|
-
- 'Follow-up Case Created'
|
|
66
|
-
- 'Arrived'
|
|
67
|
-
|
|
68
|
-
### Usage
|
|
69
|
-
|
|
70
|
-
Use the \`TagLabel\` component to display a status label with appropriate styling based on the provided status.
|
|
71
|
-
|
|
72
|
-
Below are examples of different statuses.
|
|
73
|
-
`,
|
|
74
|
-
},
|
|
75
|
-
},
|
|
76
|
-
},
|
|
77
|
-
};
|
|
78
|
-
|
|
79
|
-
export default meta;
|
|
80
|
-
type Story = StoryObj<typeof meta>;
|
|
81
|
-
|
|
82
|
-
// Define a common render template
|
|
83
|
-
const Template: Story = {
|
|
84
|
-
render: (args) => ({
|
|
85
|
-
components: { TagLabel },
|
|
86
|
-
setup() {
|
|
87
|
-
return { args };
|
|
88
|
-
},
|
|
89
|
-
template: `<div style="padding: 16px;">
|
|
90
|
-
<TagLabel v-bind="args" />
|
|
91
|
-
</div>`,
|
|
92
|
-
}),
|
|
93
|
-
};
|
|
94
|
-
|
|
95
|
-
// Stories for each status
|
|
96
|
-
export const Draft: Story = {
|
|
97
|
-
...Template,
|
|
98
|
-
args: {
|
|
99
|
-
status: 'Draft',
|
|
100
|
-
},
|
|
101
|
-
parameters: {
|
|
102
|
-
docs: {
|
|
103
|
-
source: {
|
|
104
|
-
code: `
|
|
105
|
-
<template>
|
|
106
|
-
<TagLabel status="Draft" />
|
|
107
|
-
</template>
|
|
108
|
-
`,
|
|
109
|
-
},
|
|
110
|
-
},
|
|
111
|
-
},
|
|
112
|
-
};
|
|
113
|
-
|
|
114
|
-
export const Proof: Story = {
|
|
115
|
-
...Template,
|
|
116
|
-
args: {
|
|
117
|
-
status: 'Proof',
|
|
118
|
-
},
|
|
119
|
-
parameters: {
|
|
120
|
-
docs: {
|
|
121
|
-
source: {
|
|
122
|
-
code: `
|
|
123
|
-
<template>
|
|
124
|
-
<TagLabel status="Proof" />
|
|
125
|
-
</template>
|
|
126
|
-
`,
|
|
127
|
-
},
|
|
128
|
-
},
|
|
129
|
-
},
|
|
130
|
-
};
|
|
131
|
-
|
|
132
|
-
export const Ready: Story = {
|
|
133
|
-
...Template,
|
|
134
|
-
args: {
|
|
135
|
-
status: 'Ready',
|
|
136
|
-
},
|
|
137
|
-
parameters: {
|
|
138
|
-
docs: {
|
|
139
|
-
source: {
|
|
140
|
-
code: `
|
|
141
|
-
<template>
|
|
142
|
-
<TagLabel status="Ready" />
|
|
143
|
-
</template>
|
|
144
|
-
`,
|
|
145
|
-
},
|
|
146
|
-
},
|
|
147
|
-
},
|
|
148
|
-
};
|
|
149
|
-
|
|
150
|
-
export const DesignReady: Story = {
|
|
151
|
-
...Template,
|
|
152
|
-
args: {
|
|
153
|
-
status: 'Design Ready',
|
|
154
|
-
},
|
|
155
|
-
parameters: {
|
|
156
|
-
docs: {
|
|
157
|
-
source: {
|
|
158
|
-
code: `
|
|
159
|
-
<template>
|
|
160
|
-
<TagLabel status="Design Ready" />
|
|
161
|
-
</template>
|
|
162
|
-
`,
|
|
163
|
-
},
|
|
164
|
-
},
|
|
165
|
-
},
|
|
166
|
-
};
|
|
167
|
-
|
|
168
|
-
export const ProductionReady: Story = {
|
|
169
|
-
...Template,
|
|
170
|
-
args: {
|
|
171
|
-
status: 'Production Ready',
|
|
172
|
-
},
|
|
173
|
-
parameters: {
|
|
174
|
-
docs: {
|
|
175
|
-
source: {
|
|
176
|
-
code: `
|
|
177
|
-
<template>
|
|
178
|
-
<TagLabel status="Production Ready" />
|
|
179
|
-
</template>
|
|
180
|
-
`,
|
|
181
|
-
},
|
|
182
|
-
},
|
|
183
|
-
},
|
|
184
|
-
};
|
|
185
|
-
|
|
186
|
-
export const ReadyForTreatment: Story = {
|
|
187
|
-
...Template,
|
|
188
|
-
args: {
|
|
189
|
-
status: 'Ready for Treatment',
|
|
190
|
-
},
|
|
191
|
-
parameters: {
|
|
192
|
-
docs: {
|
|
193
|
-
source: {
|
|
194
|
-
code: `
|
|
195
|
-
<template>
|
|
196
|
-
<TagLabel status="Ready for Treatment" />
|
|
197
|
-
</template>
|
|
198
|
-
`,
|
|
199
|
-
},
|
|
200
|
-
},
|
|
201
|
-
},
|
|
202
|
-
};
|
|
203
|
-
|
|
204
|
-
export const Started: Story = {
|
|
205
|
-
...Template,
|
|
206
|
-
args: {
|
|
207
|
-
status: 'Started',
|
|
208
|
-
},
|
|
209
|
-
parameters: {
|
|
210
|
-
docs: {
|
|
211
|
-
source: {
|
|
212
|
-
code: `
|
|
213
|
-
<template>
|
|
214
|
-
<TagLabel status="Started" />
|
|
215
|
-
</template>
|
|
216
|
-
`,
|
|
217
|
-
},
|
|
218
|
-
},
|
|
219
|
-
},
|
|
220
|
-
};
|
|
221
|
-
|
|
222
|
-
export const Dispatched: Story = {
|
|
223
|
-
...Template,
|
|
224
|
-
args: {
|
|
225
|
-
status: 'Dispatched',
|
|
226
|
-
},
|
|
227
|
-
parameters: {
|
|
228
|
-
docs: {
|
|
229
|
-
source: {
|
|
230
|
-
code: `
|
|
231
|
-
<template>
|
|
232
|
-
<TagLabel status="Dispatched" />
|
|
233
|
-
</template>
|
|
234
|
-
`,
|
|
235
|
-
},
|
|
236
|
-
},
|
|
237
|
-
},
|
|
238
|
-
};
|
|
239
|
-
|
|
240
|
-
export const DesignStarted: Story = {
|
|
241
|
-
...Template,
|
|
242
|
-
args: {
|
|
243
|
-
status: 'Design Started',
|
|
244
|
-
},
|
|
245
|
-
parameters: {
|
|
246
|
-
docs: {
|
|
247
|
-
source: {
|
|
248
|
-
code: `
|
|
249
|
-
<template>
|
|
250
|
-
<TagLabel status="Design Started" />
|
|
251
|
-
</template>
|
|
252
|
-
`,
|
|
253
|
-
},
|
|
254
|
-
},
|
|
255
|
-
},
|
|
256
|
-
};
|
|
257
|
-
|
|
258
|
-
export const ProductionStarted: Story = {
|
|
259
|
-
...Template,
|
|
260
|
-
args: {
|
|
261
|
-
status: 'Production Started',
|
|
262
|
-
},
|
|
263
|
-
parameters: {
|
|
264
|
-
docs: {
|
|
265
|
-
source: {
|
|
266
|
-
code: `
|
|
267
|
-
<template>
|
|
268
|
-
<TagLabel status="Production Started" />
|
|
269
|
-
</template>
|
|
270
|
-
`,
|
|
271
|
-
},
|
|
272
|
-
},
|
|
273
|
-
},
|
|
274
|
-
};
|
|
275
|
-
|
|
276
|
-
export const ShippingDispatched: Story = {
|
|
277
|
-
...Template,
|
|
278
|
-
args: {
|
|
279
|
-
status: 'Shipping Dispatched',
|
|
280
|
-
},
|
|
281
|
-
parameters: {
|
|
282
|
-
docs: {
|
|
283
|
-
source: {
|
|
284
|
-
code: `
|
|
285
|
-
<template>
|
|
286
|
-
<TagLabel status="Shipping Dispatched" />
|
|
287
|
-
</template>
|
|
288
|
-
`,
|
|
289
|
-
},
|
|
290
|
-
},
|
|
291
|
-
},
|
|
292
|
-
};
|
|
293
|
-
|
|
294
|
-
export const Took: Story = {
|
|
295
|
-
...Template,
|
|
296
|
-
args: {
|
|
297
|
-
status: 'Took',
|
|
298
|
-
},
|
|
299
|
-
parameters: {
|
|
300
|
-
docs: {
|
|
301
|
-
source: {
|
|
302
|
-
code: `
|
|
303
|
-
<template>
|
|
304
|
-
<TagLabel status="Took" />
|
|
305
|
-
</template>
|
|
306
|
-
`,
|
|
307
|
-
},
|
|
308
|
-
},
|
|
309
|
-
},
|
|
310
|
-
};
|
|
311
|
-
|
|
312
|
-
export const DesignProof: Story = {
|
|
313
|
-
...Template,
|
|
314
|
-
args: {
|
|
315
|
-
status: 'Design Proof',
|
|
316
|
-
},
|
|
317
|
-
parameters: {
|
|
318
|
-
docs: {
|
|
319
|
-
source: {
|
|
320
|
-
code: `
|
|
321
|
-
<template>
|
|
322
|
-
<TagLabel status="Design Proof" />
|
|
323
|
-
</template>
|
|
324
|
-
`,
|
|
325
|
-
},
|
|
326
|
-
},
|
|
327
|
-
},
|
|
328
|
-
};
|
|
329
|
-
|
|
330
|
-
export const TreatmentTook: Story = {
|
|
331
|
-
...Template,
|
|
332
|
-
args: {
|
|
333
|
-
status: 'Treatment Took',
|
|
334
|
-
},
|
|
335
|
-
parameters: {
|
|
336
|
-
docs: {
|
|
337
|
-
source: {
|
|
338
|
-
code: `
|
|
339
|
-
<template>
|
|
340
|
-
<TagLabel status="Treatment Took" />
|
|
341
|
-
</template>
|
|
342
|
-
`,
|
|
343
|
-
},
|
|
344
|
-
},
|
|
345
|
-
},
|
|
346
|
-
};
|
|
347
|
-
|
|
348
|
-
export const TreatmentDone: Story = {
|
|
349
|
-
...Template,
|
|
350
|
-
args: {
|
|
351
|
-
status: 'Treatment Done',
|
|
352
|
-
},
|
|
353
|
-
parameters: {
|
|
354
|
-
docs: {
|
|
355
|
-
source: {
|
|
356
|
-
code: `
|
|
357
|
-
<template>
|
|
358
|
-
<TagLabel status="Treatment Done" />
|
|
359
|
-
</template>
|
|
360
|
-
`,
|
|
361
|
-
},
|
|
362
|
-
},
|
|
363
|
-
},
|
|
364
|
-
};
|
|
365
|
-
|
|
366
|
-
export const Done: Story = {
|
|
367
|
-
...Template,
|
|
368
|
-
args: {
|
|
369
|
-
status: 'Done',
|
|
370
|
-
},
|
|
371
|
-
parameters: {
|
|
372
|
-
docs: {
|
|
373
|
-
source: {
|
|
374
|
-
code: `
|
|
375
|
-
<template>
|
|
376
|
-
<TagLabel status="Done" />
|
|
377
|
-
</template>
|
|
378
|
-
`,
|
|
379
|
-
},
|
|
380
|
-
},
|
|
381
|
-
},
|
|
382
|
-
};
|
|
383
|
-
|
|
384
|
-
export const FollowUpCaseCreated: Story = {
|
|
385
|
-
...Template,
|
|
386
|
-
args: {
|
|
387
|
-
status: 'Follow-up Case Created',
|
|
388
|
-
},
|
|
389
|
-
parameters: {
|
|
390
|
-
docs: {
|
|
391
|
-
source: {
|
|
392
|
-
code: `
|
|
393
|
-
<template>
|
|
394
|
-
<TagLabel status="Follow-up Case Created" />
|
|
395
|
-
</template>
|
|
396
|
-
`,
|
|
397
|
-
},
|
|
398
|
-
},
|
|
399
|
-
},
|
|
400
|
-
};
|
|
401
|
-
|
|
402
|
-
export const Arrived: Story = {
|
|
403
|
-
...Template,
|
|
404
|
-
args: {
|
|
405
|
-
status: 'Arrived',
|
|
406
|
-
},
|
|
407
|
-
parameters: {
|
|
408
|
-
docs: {
|
|
409
|
-
source: {
|
|
410
|
-
code: `
|
|
411
|
-
<template>
|
|
412
|
-
<TagLabel status="Arrived" />
|
|
413
|
-
</template>
|
|
414
|
-
`,
|
|
415
|
-
},
|
|
416
|
-
},
|
|
417
|
-
},
|
|
418
|
-
};
|
|
1
|
+
import { Meta, StoryObj } from '@storybook/vue3';
|
|
2
|
+
import TagLabel from '@components/Laboratory/TagLabel/TagLabel.vue';
|
|
3
|
+
|
|
4
|
+
// Meta configuration for the TagLabel component
|
|
5
|
+
const meta: Meta<typeof TagLabel> = {
|
|
6
|
+
title: 'WL/Laboratory/TagLabel',
|
|
7
|
+
component: TagLabel,
|
|
8
|
+
tags: ['autodocs'],
|
|
9
|
+
argTypes: {
|
|
10
|
+
status: {
|
|
11
|
+
control: 'select',
|
|
12
|
+
options: [
|
|
13
|
+
'Draft',
|
|
14
|
+
'Proof',
|
|
15
|
+
'Ready',
|
|
16
|
+
'Design Ready',
|
|
17
|
+
'Production Ready',
|
|
18
|
+
'Ready for Treatment',
|
|
19
|
+
'Started',
|
|
20
|
+
'Dispatched',
|
|
21
|
+
'Design Started',
|
|
22
|
+
'Production Started',
|
|
23
|
+
'Shipping Dispatched',
|
|
24
|
+
'Took',
|
|
25
|
+
'Design Proof',
|
|
26
|
+
'Treatment Took',
|
|
27
|
+
'Treatment Done',
|
|
28
|
+
'Done',
|
|
29
|
+
'Follow-up Case Created',
|
|
30
|
+
'Arrived',
|
|
31
|
+
'Warning',
|
|
32
|
+
],
|
|
33
|
+
description: 'The status label to display.',
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
args: {
|
|
37
|
+
status: 'Draft', // Default value
|
|
38
|
+
},
|
|
39
|
+
parameters: {
|
|
40
|
+
docs: {
|
|
41
|
+
description: {
|
|
42
|
+
component: `
|
|
43
|
+
The \`TagLabel\` component displays a styled label representing various statuses.
|
|
44
|
+
|
|
45
|
+
### Props
|
|
46
|
+
|
|
47
|
+
- **\`status\`**: The status label to display. Options include:
|
|
48
|
+
|
|
49
|
+
- 'Draft'
|
|
50
|
+
- 'Proof'
|
|
51
|
+
- 'Ready'
|
|
52
|
+
- 'Design Ready'
|
|
53
|
+
- 'Production Ready'
|
|
54
|
+
- 'Ready for Treatment'
|
|
55
|
+
- 'Started'
|
|
56
|
+
- 'Dispatched'
|
|
57
|
+
- 'Design Started'
|
|
58
|
+
- 'Production Started'
|
|
59
|
+
- 'Shipping Dispatched'
|
|
60
|
+
- 'Took'
|
|
61
|
+
- 'Design Proof'
|
|
62
|
+
- 'Treatment Took'
|
|
63
|
+
- 'Treatment Done'
|
|
64
|
+
- 'Done'
|
|
65
|
+
- 'Follow-up Case Created'
|
|
66
|
+
- 'Arrived'
|
|
67
|
+
|
|
68
|
+
### Usage
|
|
69
|
+
|
|
70
|
+
Use the \`TagLabel\` component to display a status label with appropriate styling based on the provided status.
|
|
71
|
+
|
|
72
|
+
Below are examples of different statuses.
|
|
73
|
+
`,
|
|
74
|
+
},
|
|
75
|
+
},
|
|
76
|
+
},
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
export default meta;
|
|
80
|
+
type Story = StoryObj<typeof meta>;
|
|
81
|
+
|
|
82
|
+
// Define a common render template
|
|
83
|
+
const Template: Story = {
|
|
84
|
+
render: (args) => ({
|
|
85
|
+
components: { TagLabel },
|
|
86
|
+
setup() {
|
|
87
|
+
return { args };
|
|
88
|
+
},
|
|
89
|
+
template: `<div style="padding: 16px;">
|
|
90
|
+
<TagLabel v-bind="args" />
|
|
91
|
+
</div>`,
|
|
92
|
+
}),
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
// Stories for each status
|
|
96
|
+
export const Draft: Story = {
|
|
97
|
+
...Template,
|
|
98
|
+
args: {
|
|
99
|
+
status: 'Draft',
|
|
100
|
+
},
|
|
101
|
+
parameters: {
|
|
102
|
+
docs: {
|
|
103
|
+
source: {
|
|
104
|
+
code: `
|
|
105
|
+
<template>
|
|
106
|
+
<TagLabel status="Draft" />
|
|
107
|
+
</template>
|
|
108
|
+
`,
|
|
109
|
+
},
|
|
110
|
+
},
|
|
111
|
+
},
|
|
112
|
+
};
|
|
113
|
+
|
|
114
|
+
export const Proof: Story = {
|
|
115
|
+
...Template,
|
|
116
|
+
args: {
|
|
117
|
+
status: 'Proof',
|
|
118
|
+
},
|
|
119
|
+
parameters: {
|
|
120
|
+
docs: {
|
|
121
|
+
source: {
|
|
122
|
+
code: `
|
|
123
|
+
<template>
|
|
124
|
+
<TagLabel status="Proof" />
|
|
125
|
+
</template>
|
|
126
|
+
`,
|
|
127
|
+
},
|
|
128
|
+
},
|
|
129
|
+
},
|
|
130
|
+
};
|
|
131
|
+
|
|
132
|
+
export const Ready: Story = {
|
|
133
|
+
...Template,
|
|
134
|
+
args: {
|
|
135
|
+
status: 'Ready',
|
|
136
|
+
},
|
|
137
|
+
parameters: {
|
|
138
|
+
docs: {
|
|
139
|
+
source: {
|
|
140
|
+
code: `
|
|
141
|
+
<template>
|
|
142
|
+
<TagLabel status="Ready" />
|
|
143
|
+
</template>
|
|
144
|
+
`,
|
|
145
|
+
},
|
|
146
|
+
},
|
|
147
|
+
},
|
|
148
|
+
};
|
|
149
|
+
|
|
150
|
+
export const DesignReady: Story = {
|
|
151
|
+
...Template,
|
|
152
|
+
args: {
|
|
153
|
+
status: 'Design Ready',
|
|
154
|
+
},
|
|
155
|
+
parameters: {
|
|
156
|
+
docs: {
|
|
157
|
+
source: {
|
|
158
|
+
code: `
|
|
159
|
+
<template>
|
|
160
|
+
<TagLabel status="Design Ready" />
|
|
161
|
+
</template>
|
|
162
|
+
`,
|
|
163
|
+
},
|
|
164
|
+
},
|
|
165
|
+
},
|
|
166
|
+
};
|
|
167
|
+
|
|
168
|
+
export const ProductionReady: Story = {
|
|
169
|
+
...Template,
|
|
170
|
+
args: {
|
|
171
|
+
status: 'Production Ready',
|
|
172
|
+
},
|
|
173
|
+
parameters: {
|
|
174
|
+
docs: {
|
|
175
|
+
source: {
|
|
176
|
+
code: `
|
|
177
|
+
<template>
|
|
178
|
+
<TagLabel status="Production Ready" />
|
|
179
|
+
</template>
|
|
180
|
+
`,
|
|
181
|
+
},
|
|
182
|
+
},
|
|
183
|
+
},
|
|
184
|
+
};
|
|
185
|
+
|
|
186
|
+
export const ReadyForTreatment: Story = {
|
|
187
|
+
...Template,
|
|
188
|
+
args: {
|
|
189
|
+
status: 'Ready for Treatment',
|
|
190
|
+
},
|
|
191
|
+
parameters: {
|
|
192
|
+
docs: {
|
|
193
|
+
source: {
|
|
194
|
+
code: `
|
|
195
|
+
<template>
|
|
196
|
+
<TagLabel status="Ready for Treatment" />
|
|
197
|
+
</template>
|
|
198
|
+
`,
|
|
199
|
+
},
|
|
200
|
+
},
|
|
201
|
+
},
|
|
202
|
+
};
|
|
203
|
+
|
|
204
|
+
export const Started: Story = {
|
|
205
|
+
...Template,
|
|
206
|
+
args: {
|
|
207
|
+
status: 'Started',
|
|
208
|
+
},
|
|
209
|
+
parameters: {
|
|
210
|
+
docs: {
|
|
211
|
+
source: {
|
|
212
|
+
code: `
|
|
213
|
+
<template>
|
|
214
|
+
<TagLabel status="Started" />
|
|
215
|
+
</template>
|
|
216
|
+
`,
|
|
217
|
+
},
|
|
218
|
+
},
|
|
219
|
+
},
|
|
220
|
+
};
|
|
221
|
+
|
|
222
|
+
export const Dispatched: Story = {
|
|
223
|
+
...Template,
|
|
224
|
+
args: {
|
|
225
|
+
status: 'Dispatched',
|
|
226
|
+
},
|
|
227
|
+
parameters: {
|
|
228
|
+
docs: {
|
|
229
|
+
source: {
|
|
230
|
+
code: `
|
|
231
|
+
<template>
|
|
232
|
+
<TagLabel status="Dispatched" />
|
|
233
|
+
</template>
|
|
234
|
+
`,
|
|
235
|
+
},
|
|
236
|
+
},
|
|
237
|
+
},
|
|
238
|
+
};
|
|
239
|
+
|
|
240
|
+
export const DesignStarted: Story = {
|
|
241
|
+
...Template,
|
|
242
|
+
args: {
|
|
243
|
+
status: 'Design Started',
|
|
244
|
+
},
|
|
245
|
+
parameters: {
|
|
246
|
+
docs: {
|
|
247
|
+
source: {
|
|
248
|
+
code: `
|
|
249
|
+
<template>
|
|
250
|
+
<TagLabel status="Design Started" />
|
|
251
|
+
</template>
|
|
252
|
+
`,
|
|
253
|
+
},
|
|
254
|
+
},
|
|
255
|
+
},
|
|
256
|
+
};
|
|
257
|
+
|
|
258
|
+
export const ProductionStarted: Story = {
|
|
259
|
+
...Template,
|
|
260
|
+
args: {
|
|
261
|
+
status: 'Production Started',
|
|
262
|
+
},
|
|
263
|
+
parameters: {
|
|
264
|
+
docs: {
|
|
265
|
+
source: {
|
|
266
|
+
code: `
|
|
267
|
+
<template>
|
|
268
|
+
<TagLabel status="Production Started" />
|
|
269
|
+
</template>
|
|
270
|
+
`,
|
|
271
|
+
},
|
|
272
|
+
},
|
|
273
|
+
},
|
|
274
|
+
};
|
|
275
|
+
|
|
276
|
+
export const ShippingDispatched: Story = {
|
|
277
|
+
...Template,
|
|
278
|
+
args: {
|
|
279
|
+
status: 'Shipping Dispatched',
|
|
280
|
+
},
|
|
281
|
+
parameters: {
|
|
282
|
+
docs: {
|
|
283
|
+
source: {
|
|
284
|
+
code: `
|
|
285
|
+
<template>
|
|
286
|
+
<TagLabel status="Shipping Dispatched" />
|
|
287
|
+
</template>
|
|
288
|
+
`,
|
|
289
|
+
},
|
|
290
|
+
},
|
|
291
|
+
},
|
|
292
|
+
};
|
|
293
|
+
|
|
294
|
+
export const Took: Story = {
|
|
295
|
+
...Template,
|
|
296
|
+
args: {
|
|
297
|
+
status: 'Took',
|
|
298
|
+
},
|
|
299
|
+
parameters: {
|
|
300
|
+
docs: {
|
|
301
|
+
source: {
|
|
302
|
+
code: `
|
|
303
|
+
<template>
|
|
304
|
+
<TagLabel status="Took" />
|
|
305
|
+
</template>
|
|
306
|
+
`,
|
|
307
|
+
},
|
|
308
|
+
},
|
|
309
|
+
},
|
|
310
|
+
};
|
|
311
|
+
|
|
312
|
+
export const DesignProof: Story = {
|
|
313
|
+
...Template,
|
|
314
|
+
args: {
|
|
315
|
+
status: 'Design Proof',
|
|
316
|
+
},
|
|
317
|
+
parameters: {
|
|
318
|
+
docs: {
|
|
319
|
+
source: {
|
|
320
|
+
code: `
|
|
321
|
+
<template>
|
|
322
|
+
<TagLabel status="Design Proof" />
|
|
323
|
+
</template>
|
|
324
|
+
`,
|
|
325
|
+
},
|
|
326
|
+
},
|
|
327
|
+
},
|
|
328
|
+
};
|
|
329
|
+
|
|
330
|
+
export const TreatmentTook: Story = {
|
|
331
|
+
...Template,
|
|
332
|
+
args: {
|
|
333
|
+
status: 'Treatment Took',
|
|
334
|
+
},
|
|
335
|
+
parameters: {
|
|
336
|
+
docs: {
|
|
337
|
+
source: {
|
|
338
|
+
code: `
|
|
339
|
+
<template>
|
|
340
|
+
<TagLabel status="Treatment Took" />
|
|
341
|
+
</template>
|
|
342
|
+
`,
|
|
343
|
+
},
|
|
344
|
+
},
|
|
345
|
+
},
|
|
346
|
+
};
|
|
347
|
+
|
|
348
|
+
export const TreatmentDone: Story = {
|
|
349
|
+
...Template,
|
|
350
|
+
args: {
|
|
351
|
+
status: 'Treatment Done',
|
|
352
|
+
},
|
|
353
|
+
parameters: {
|
|
354
|
+
docs: {
|
|
355
|
+
source: {
|
|
356
|
+
code: `
|
|
357
|
+
<template>
|
|
358
|
+
<TagLabel status="Treatment Done" />
|
|
359
|
+
</template>
|
|
360
|
+
`,
|
|
361
|
+
},
|
|
362
|
+
},
|
|
363
|
+
},
|
|
364
|
+
};
|
|
365
|
+
|
|
366
|
+
export const Done: Story = {
|
|
367
|
+
...Template,
|
|
368
|
+
args: {
|
|
369
|
+
status: 'Done',
|
|
370
|
+
},
|
|
371
|
+
parameters: {
|
|
372
|
+
docs: {
|
|
373
|
+
source: {
|
|
374
|
+
code: `
|
|
375
|
+
<template>
|
|
376
|
+
<TagLabel status="Done" />
|
|
377
|
+
</template>
|
|
378
|
+
`,
|
|
379
|
+
},
|
|
380
|
+
},
|
|
381
|
+
},
|
|
382
|
+
};
|
|
383
|
+
|
|
384
|
+
export const FollowUpCaseCreated: Story = {
|
|
385
|
+
...Template,
|
|
386
|
+
args: {
|
|
387
|
+
status: 'Follow-up Case Created',
|
|
388
|
+
},
|
|
389
|
+
parameters: {
|
|
390
|
+
docs: {
|
|
391
|
+
source: {
|
|
392
|
+
code: `
|
|
393
|
+
<template>
|
|
394
|
+
<TagLabel status="Follow-up Case Created" />
|
|
395
|
+
</template>
|
|
396
|
+
`,
|
|
397
|
+
},
|
|
398
|
+
},
|
|
399
|
+
},
|
|
400
|
+
};
|
|
401
|
+
|
|
402
|
+
export const Arrived: Story = {
|
|
403
|
+
...Template,
|
|
404
|
+
args: {
|
|
405
|
+
status: 'Arrived',
|
|
406
|
+
},
|
|
407
|
+
parameters: {
|
|
408
|
+
docs: {
|
|
409
|
+
source: {
|
|
410
|
+
code: `
|
|
411
|
+
<template>
|
|
412
|
+
<TagLabel status="Arrived" />
|
|
413
|
+
</template>
|
|
414
|
+
`,
|
|
415
|
+
},
|
|
416
|
+
},
|
|
417
|
+
},
|
|
418
|
+
};
|