edvoyui-component-library-test-flight 0.0.21 → 0.0.23
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/EUIButton.vue.d.ts.map +1 -0
- package/dist/library-vue-ts.cjs.js +4 -3
- package/dist/library-vue-ts.es.js +3 -8
- package/dist/library-vue-ts.umd.js +4 -3
- package/dist/select/EUISelect.vue.d.ts.map +1 -0
- package/package.json +4 -2
- package/src/App.vue +16 -0
- package/src/assets/fonts/gilroy/GilroyBold/font.woff +0 -0
- package/src/assets/fonts/gilroy/GilroyBold/font.woff2 +0 -0
- package/src/assets/fonts/gilroy/GilroyBoldItalic/font.woff +0 -0
- package/src/assets/fonts/gilroy/GilroyBoldItalic/font.woff2 +0 -0
- package/src/assets/fonts/gilroy/GilroyExtraBold/font.woff +0 -0
- package/src/assets/fonts/gilroy/GilroyExtraBold/font.woff2 +0 -0
- package/src/assets/fonts/gilroy/GilroyExtraBoldItalic/font.woff +0 -0
- package/src/assets/fonts/gilroy/GilroyExtraBoldItalic/font.woff2 +0 -0
- package/src/assets/fonts/gilroy/GilroyMedium/font.woff +0 -0
- package/src/assets/fonts/gilroy/GilroyMedium/font.woff2 +0 -0
- package/src/assets/fonts/gilroy/GilroyRegular/font.woff +0 -0
- package/src/assets/fonts/gilroy/GilroyRegular/font.woff2 +0 -0
- package/src/assets/fonts/gilroy/GilroySemiBold/font.woff +0 -0
- package/src/assets/fonts/gilroy/GilroySemiBold/font.woff2 +0 -0
- package/src/assets/fonts/inter/Inter-Bold.woff +0 -0
- package/src/assets/fonts/inter/Inter-Bold.woff2 +0 -0
- package/src/assets/fonts/inter/Inter-Italic.woff +0 -0
- package/src/assets/fonts/inter/Inter-Italic.woff2 +0 -0
- package/src/assets/fonts/inter/Inter-Medium.woff +0 -0
- package/src/assets/fonts/inter/Inter-Medium.woff2 +0 -0
- package/src/assets/fonts/inter/Inter-MediumItalic.woff +0 -0
- package/src/assets/fonts/inter/Inter-MediumItalic.woff2 +0 -0
- package/src/assets/fonts/inter/Inter-Regular.woff +0 -0
- package/src/assets/fonts/inter/Inter-Regular.woff2 +0 -0
- package/src/assets/fonts/inter/Inter-SemiBold.woff +0 -0
- package/src/assets/fonts/inter/Inter-SemiBold.woff2 +0 -0
- package/src/assets/fonts/inter/Inter-SemiBoldItalic.woff +0 -0
- package/src/assets/fonts/inter/Inter-SemiBoldItalic.woff2 +0 -0
- package/src/assets/scss/body.scss +15 -0
- package/src/assets/svg/ChevronDownSolid.vue +19 -0
- package/src/assets/svg/ChevronDownStroke.vue +22 -0
- package/src/assets/svg/SortArrow.vue +24 -0
- package/src/assets/svg/Student.vue +30 -0
- package/src/assets/svg/partner.vue +33 -0
- package/src/assets/svg/people.vue +25 -0
- package/src/assets/vue.svg +1 -0
- package/src/components/HelloWorld.vue +999 -0
- package/src/components/accordion/EUIAccordion.stories.ts +157 -0
- package/src/components/accordion/EUIAccordion.vue +90 -0
- package/src/components/avatar/EUIAvatar.stories.ts +157 -0
- package/src/components/avatar/EUIAvatar.vue +96 -0
- package/src/components/button/EUIButton.stories.ts +252 -0
- package/src/components/button/EUIButton.vue +151 -0
- package/src/components/checkbox/EUICheckbox.stories.ts +58 -0
- package/src/components/checkbox/EUICheckbox.vue +103 -0
- package/src/components/datepicker/EUIDatepicker.stories.ts +236 -0
- package/src/components/datepicker/EUIDatepicker.vue +185 -0
- package/src/components/delete.vue +108 -0
- package/src/components/dropdown/EUIMultiDropdown.stories.ts +187 -0
- package/src/components/dropdown/EUIMultiDropdown.vue +129 -0
- package/src/components/errorMessage/EUIErrorMessage.scss +0 -0
- package/src/components/errorMessage/EUIErrorMessage.stories.ts +41 -0
- package/src/components/errorMessage/EUIErrorMessage.vue +25 -0
- package/src/components/index.ts +46 -0
- package/src/components/input/EUIInput.stories.ts +174 -0
- package/src/components/input/EUIInput.vue +169 -0
- package/src/components/inputNormal/EUIInputNormal.stories.ts +164 -0
- package/src/components/inputNormal/EUIInputNormal.vue +161 -0
- package/src/components/loader/EUICircleLoader.vue +31 -0
- package/src/components/loader/EUICubeLoader.vue +237 -0
- package/src/components/loader/EUILoader.stories.ts +99 -0
- package/src/components/loader/EUILoader.vue +17 -0
- package/src/components/loader/EUISquareLoader.vue +47 -0
- package/src/components/modal/EUIModal.stories.ts +372 -0
- package/src/components/modal/EUIModal.vue +163 -0
- package/src/components/pillSelect/EUIPillSelect.stories.ts +74 -0
- package/src/components/pillSelect/EUIPillSelect.vue +149 -0
- package/src/components/popover/EUIPopover.stories.ts +247 -0
- package/src/components/popover/EUIPopover.vue +159 -0
- package/src/components/radio/EUIRadio.stories.ts +54 -0
- package/src/components/radio/EUIRadio.vue +78 -0
- package/src/components/searchInput/EUISearch.stories.ts +24 -0
- package/src/components/searchInput/EUISearch.vue +215 -0
- package/src/components/select/EUISelect.scss +0 -0
- package/src/components/select/EUISelect.stories.ts +49 -0
- package/src/components/select/EUISelect.vue +682 -0
- package/src/components/selectSearch/EUISelectSearch.vue +23 -0
- package/src/components/slideover/EUISlideover.stories.ts +318 -0
- package/src/components/slideover/EUISlideover.vue +207 -0
- package/src/components/stepperTimeline/EUIStepperHorizontal.vue +112 -0
- package/src/components/stepperTimeline/EUIStepperTimeline.stories.ts +54 -0
- package/src/components/stepperTimeline/EUIStepperTimeline.vue +16 -0
- package/src/components/stepperTimeline/EUIStepperVertical.vue +112 -0
- package/src/components/table/EUIDashboardTable.vue +482 -0
- package/src/components/table/EUIPageLimit.vue +66 -0
- package/src/components/table/EUIPagination.vue +175 -0
- package/src/components/table/EUIStudentPagination.vue +172 -0
- package/src/components/table/EUITable.stories.ts +190 -0
- package/src/components/table/EUITable.vue +508 -0
- package/src/components/table/EUITableCheckbox.vue +97 -0
- package/src/components/tabs/EUITabs.vue +128 -0
- package/src/components/tabs/EUItabs.stories.ts +123 -0
- package/src/components/tag/EUITag.stories.ts +46 -0
- package/src/components/tag/EUITag.vue +46 -0
- package/src/components/telephone/EUITelephone.stories.ts +202 -0
- package/src/components/telephone/EUITelephone.vue +280 -0
- package/src/components/textArea/EUITextArea.stories.ts +82 -0
- package/src/components/textArea/EUITextArea.vue +122 -0
- package/src/components/timeLine/EUITimeLine.stories.ts +247 -0
- package/src/components/timeLine/EUITimeLine.vue +43 -0
- package/src/components/timeLine/EUITimeLineItem.vue +124 -0
- package/src/components/toggle/EUIToggle.stories.ts +63 -0
- package/src/components/toggle/EUIToggle.vue +99 -0
- package/src/components/tooltip/EUITooltip.stories.ts +53 -0
- package/src/components/tooltip/EUITooltip.vue +108 -0
- package/src/data/books.ts +163 -0
- package/src/data/tab.ts +33 -0
- package/src/data/table.ts +5392 -0
- package/src/main.ts +5 -0
- package/src/utils/lodash.ts +9 -0
- package/src/utils/types.ts +9 -0
- package/src/vite-env.d.ts +5 -0
- package/dist/EUISelect.vue.d.ts.map +0 -1
- package/dist/button/EUIButton.vue.d.ts.map +0 -1
- package/dist/library-vue-ts.css +0 -1
- package/dist/style.scss +0 -118
- /package/dist/{button/EUIButton.vue.d.ts → EUIButton.vue.d.ts} +0 -0
- /package/dist/{EUISelect.vue.d.ts → select/EUISelect.vue.d.ts} +0 -0
|
@@ -0,0 +1,999 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<h1 class="my-10 text-2xl font-bold text-center text-gray-900 underline underline-offset-2 decoration-green-400 decoration-wavy">
|
|
3
|
+
Edvoy User Interface
|
|
4
|
+
</h1>
|
|
5
|
+
|
|
6
|
+
</template>
|
|
7
|
+
<script setup lang="ts">
|
|
8
|
+
</script>
|
|
9
|
+
<style lang="scss"></style>
|
|
10
|
+
|
|
11
|
+
<!-- Development code here -->
|
|
12
|
+
<!-- <template>
|
|
13
|
+
<div class="h-[clac(100svh-64px)] w-full px-10 py-8 max-w-screen-xl mx-auto">
|
|
14
|
+
<h1 class="mb-2 font-semibold text-gray-900 tetx-lg">Edvoy UI Componnet</h1>
|
|
15
|
+
<div class="grid gap-4 sm:grid- cols-2 place-items-start">
|
|
16
|
+
<div
|
|
17
|
+
class="w-full max-w-screen-xl col-span-2 p-4 bg-white border border-gray-200 border-solid rounded-lg hover:ring-2 ring-purple-500 ring-offset-1"
|
|
18
|
+
>
|
|
19
|
+
<span
|
|
20
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
21
|
+
>
|
|
22
|
+
Name: Select Multiple
|
|
23
|
+
</span>
|
|
24
|
+
<pre
|
|
25
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
26
|
+
>
|
|
27
|
+
<code><EUISelect label="Firstname" placeholder="Enter your name" :items="datas" /></code>
|
|
28
|
+
</pre>
|
|
29
|
+
|
|
30
|
+
<div class="grid grid-cols-3 gap-4">
|
|
31
|
+
<EUISelect
|
|
32
|
+
search-label="name"
|
|
33
|
+
label="Multiple Select width Limiting"
|
|
34
|
+
placeholder="Enter your name"
|
|
35
|
+
:items="datas"
|
|
36
|
+
:multiple="true"
|
|
37
|
+
:multiple-limit="3"
|
|
38
|
+
/>
|
|
39
|
+
<EUISelect placeholder="Enter your name" :items="datas" />
|
|
40
|
+
<EUISelect
|
|
41
|
+
:is-use-custom-select="true"
|
|
42
|
+
:items="datas"
|
|
43
|
+
name="customselect"
|
|
44
|
+
placeholder="Select multiple"
|
|
45
|
+
:multiple="true"
|
|
46
|
+
customWidth="500px"
|
|
47
|
+
:custom-offset="[-200, 100]"
|
|
48
|
+
/>
|
|
49
|
+
|
|
50
|
+
<EUISelectSearch />
|
|
51
|
+
</div>
|
|
52
|
+
</div>
|
|
53
|
+
|
|
54
|
+
<div
|
|
55
|
+
class="w-full max-w-xl p-4 bg-white border border-gray-200 border-solid rounded-lg hover:ring-2 ring-purple-500 ring-offset-1"
|
|
56
|
+
>
|
|
57
|
+
<span
|
|
58
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
59
|
+
>
|
|
60
|
+
Name: Multi Dropdown
|
|
61
|
+
</span>
|
|
62
|
+
<pre
|
|
63
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
64
|
+
><code><EUIMultiDropdown title="dropdown" :menu-items="menubar" /></code>
|
|
65
|
+
</pre>
|
|
66
|
+
<div class="inline-flex items-center gap-4">
|
|
67
|
+
<EUIMultiDropdown title="dropdown" :menu-items="menubar" />
|
|
68
|
+
<EUIMultiDropdown title="dropdown" class-name="px-3 py-2 text-gray-700 hover:text-gray-900 bg-white rounded-md focus:bg-violet-100 group focus:outline-none focus:ring-2 focus:ring-violet-400 focus:ring-opacity-100 hover:bg-gray-100 active:bg-violet-200" @subMenuItem="handleSubMenuItem" @menuItem="handleMenuItem">
|
|
69
|
+
<template #dropdownName="{ open }">
|
|
70
|
+
<span>My Students</span>
|
|
71
|
+
<ChevronDownStroke :class="open ? 'text-gray-900 rotate-180' : 'text-gray-500'"
|
|
72
|
+
class="transition duration-100 ease-in-out transform rotate-0 size-6 group-hover:text-opacity-80"
|
|
73
|
+
aria-hidden="true"
|
|
74
|
+
/>
|
|
75
|
+
</template>
|
|
76
|
+
</EUIMultiDropdown>
|
|
77
|
+
</div>
|
|
78
|
+
</div>
|
|
79
|
+
|
|
80
|
+
<div
|
|
81
|
+
class="w-full max-w-xl p-4 bg-white border border-gray-200 border-solid rounded-lg hover:ring-2 ring-purple-500 ring-offset-1"
|
|
82
|
+
>
|
|
83
|
+
<span
|
|
84
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
85
|
+
>
|
|
86
|
+
Name: Telephone
|
|
87
|
+
</span>
|
|
88
|
+
<pre
|
|
89
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
90
|
+
>
|
|
91
|
+
<code><EUITelephone name="contactNumber" label="Contact Number" placeholder="Your mobile number" tag="Mobile
|
|
92
|
+
input required" tag-color="Error" /></code>
|
|
93
|
+
</pre>
|
|
94
|
+
<EUITelephone
|
|
95
|
+
v-model="mobileNumber"
|
|
96
|
+
name="contactNumber"
|
|
97
|
+
label="Contact Number"
|
|
98
|
+
placeholder="Your mobile number"
|
|
99
|
+
tag="Mobile input required"
|
|
100
|
+
tag-color="Error"
|
|
101
|
+
:errors="{ name: 'Enter a valid phone number' }"
|
|
102
|
+
icon-type="startIcon"
|
|
103
|
+
/>
|
|
104
|
+
</div>
|
|
105
|
+
|
|
106
|
+
<div
|
|
107
|
+
class="w-full max-w-xl p-4 bg-white border border-gray-200 border-solid rounded-lg hover:ring-2 ring-purple-500 ring-offset-1"
|
|
108
|
+
>
|
|
109
|
+
<span
|
|
110
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
111
|
+
>
|
|
112
|
+
Name: Input Normal
|
|
113
|
+
</span>
|
|
114
|
+
<pre
|
|
115
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
116
|
+
>
|
|
117
|
+
<code><EUIInputNormal label="Firstname" placeholder="Enter your name" rounded :class-name="['bg-gray-100/50']
|
|
118
|
+
/></code>
|
|
119
|
+
</pre>
|
|
120
|
+
<EUIInputNormal
|
|
121
|
+
v-model.trim="form.input"
|
|
122
|
+
name="addnote"
|
|
123
|
+
id="addnote"
|
|
124
|
+
label="Add Note"
|
|
125
|
+
placeholder="Note here..."
|
|
126
|
+
rounded
|
|
127
|
+
:class-name="['bg-gray-100/50']"
|
|
128
|
+
/>
|
|
129
|
+
</div>
|
|
130
|
+
|
|
131
|
+
<div
|
|
132
|
+
class="w-full max-w-xl p-4 bg-white border border-gray-200 border-solid rounded-lg hover:ring-2 ring-purple-500 ring-offset-1"
|
|
133
|
+
>
|
|
134
|
+
<span
|
|
135
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
136
|
+
>
|
|
137
|
+
Name: Input
|
|
138
|
+
</span>
|
|
139
|
+
<pre
|
|
140
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
141
|
+
>
|
|
142
|
+
<code><EUIInput label="Firstname" placeholder="Enter your name" /></code>
|
|
143
|
+
</pre>
|
|
144
|
+
<EUIInput
|
|
145
|
+
v-model.trim="form.input"
|
|
146
|
+
label="Firstname"
|
|
147
|
+
placeholder="Enter your name"
|
|
148
|
+
/>
|
|
149
|
+
</div>
|
|
150
|
+
|
|
151
|
+
<div
|
|
152
|
+
class="w-full max-w-xl p-4 bg-white border border-gray-200 border-solid rounded-lg hover:ring-2 ring-purple-500 ring-offset-1"
|
|
153
|
+
>
|
|
154
|
+
<span
|
|
155
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
156
|
+
>
|
|
157
|
+
Name: Checkbox
|
|
158
|
+
</span>
|
|
159
|
+
<pre
|
|
160
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
161
|
+
>
|
|
162
|
+
<code><EUICheckbox label="Use checkbox" /></code>
|
|
163
|
+
</pre>
|
|
164
|
+
<EUICheckbox label="Use checkbox" />
|
|
165
|
+
</div>
|
|
166
|
+
|
|
167
|
+
<div
|
|
168
|
+
class="w-full max-w-xl p-4 bg-white border border-gray-200 border-solid rounded-lg hover:ring-2 ring-purple-500 ring-offset-1"
|
|
169
|
+
>
|
|
170
|
+
<span
|
|
171
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
172
|
+
>
|
|
173
|
+
Name: Tabs
|
|
174
|
+
</span>
|
|
175
|
+
<pre
|
|
176
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
177
|
+
>
|
|
178
|
+
<code><EUITabs :tabs="tabData" :defaultActiveIndex="0" /></code>
|
|
179
|
+
</pre>
|
|
180
|
+
<EUITabs tab-style="border" :tabs="tabData" :defaultActiveIndex="0">
|
|
181
|
+
<template #title="{ tab }">{{ tab.name }}</template>
|
|
182
|
+
<template #content="{ activeTab }">
|
|
183
|
+
{{ activeTab }}
|
|
184
|
+
</template>
|
|
185
|
+
</EUITabs>
|
|
186
|
+
</div>
|
|
187
|
+
|
|
188
|
+
<div
|
|
189
|
+
class="w-full max-w-xl p-4 bg-white border border-gray-200 border-solid rounded-lg hover:ring-2 ring-purple-500 ring-offset-1"
|
|
190
|
+
>
|
|
191
|
+
<span
|
|
192
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
193
|
+
>
|
|
194
|
+
Name: Textarea
|
|
195
|
+
</span>
|
|
196
|
+
<pre
|
|
197
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
198
|
+
>
|
|
199
|
+
<code><EUITextarea label="Office Address" placeholder="Enter offices and location details" /></code>
|
|
200
|
+
</pre>
|
|
201
|
+
<EUITextarea
|
|
202
|
+
placeholder="Enter offices and location details"
|
|
203
|
+
label="Office Address"
|
|
204
|
+
/>
|
|
205
|
+
</div>
|
|
206
|
+
|
|
207
|
+
<div
|
|
208
|
+
class="w-full max-w-xl p-4 bg-white border border-gray-200 border-solid rounded-lg hover:ring-2 ring-purple-500 ring-offset-1"
|
|
209
|
+
>
|
|
210
|
+
<span
|
|
211
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
212
|
+
>
|
|
213
|
+
Name: Tag
|
|
214
|
+
</span>
|
|
215
|
+
<pre
|
|
216
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
217
|
+
>
|
|
218
|
+
<code><EUITag closeIcon :model-value="tagModal" @remove="handleClose" /></code>
|
|
219
|
+
</pre>
|
|
220
|
+
<EUITag closeIcon :model-value="tagModal" @remove="handleClose"
|
|
221
|
+
>Tag Name</EUITag
|
|
222
|
+
>
|
|
223
|
+
</div>
|
|
224
|
+
|
|
225
|
+
<div
|
|
226
|
+
class="w-full max-w-xl p-4 bg-white border border-gray-200 border-solid rounded-lg hover:ring-2 ring-purple-500 ring-offset-1"
|
|
227
|
+
>
|
|
228
|
+
<span
|
|
229
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
230
|
+
>
|
|
231
|
+
Name: Switch Toggle
|
|
232
|
+
</span>
|
|
233
|
+
<pre
|
|
234
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
235
|
+
>
|
|
236
|
+
<code><EUIToggle label="toggle switch" /></code>
|
|
237
|
+
</pre>
|
|
238
|
+
<EUIToggle label="toggle switch" />
|
|
239
|
+
</div>
|
|
240
|
+
|
|
241
|
+
<div
|
|
242
|
+
class="w-full max-w-screen-xl col-span-2 p-4 bg-white border border-gray-200 border-solid rounded-lg hover:ring-2 ring-purple-500 ring-offset-1"
|
|
243
|
+
>
|
|
244
|
+
<span
|
|
245
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
246
|
+
>
|
|
247
|
+
Name: Loader
|
|
248
|
+
</span>
|
|
249
|
+
<pre
|
|
250
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
251
|
+
>
|
|
252
|
+
<code><EUILoader /></code>
|
|
253
|
+
</pre>
|
|
254
|
+
<EUILoader />
|
|
255
|
+
</div>
|
|
256
|
+
|
|
257
|
+
<div
|
|
258
|
+
class="w-full max-w-xl p-4 bg-white border border-gray-200 border-solid rounded-lg hover:ring-2 ring-purple-500 ring-offset-1"
|
|
259
|
+
>
|
|
260
|
+
<span
|
|
261
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
262
|
+
>
|
|
263
|
+
Name: Avatar
|
|
264
|
+
</span>
|
|
265
|
+
<pre
|
|
266
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
267
|
+
>
|
|
268
|
+
<code><EUIAvatar image-url="https://tinyurl.com/43e5fxh9" :profile="true" full-name="JohnCena"
|
|
269
|
+
:show-status="true" status="Online" size="sm"><template #name>John Cena</template> <template
|
|
270
|
+
#designation>Actor</template> <EUIAvatar/></code>
|
|
271
|
+
</pre>
|
|
272
|
+
<EUIAvatar
|
|
273
|
+
image-url="https://tinyurl.com/43e5fxh9"
|
|
274
|
+
:profile="true"
|
|
275
|
+
full-name="JohnCena"
|
|
276
|
+
:show-status="true"
|
|
277
|
+
status="Online"
|
|
278
|
+
size="sm"
|
|
279
|
+
>
|
|
280
|
+
<template #name>John Cena</template>
|
|
281
|
+
<template #designation>Actor</template>
|
|
282
|
+
</EUIAvatar>
|
|
283
|
+
</div>
|
|
284
|
+
|
|
285
|
+
<div
|
|
286
|
+
class="w-full max-w-xl p-4 bg-white border border-gray-200 border-solid rounded-lg hover:ring-2 ring-purple-500 ring-offset-1"
|
|
287
|
+
>
|
|
288
|
+
<span
|
|
289
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
290
|
+
>
|
|
291
|
+
Name: Datepicker
|
|
292
|
+
</span>
|
|
293
|
+
<pre
|
|
294
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
295
|
+
>
|
|
296
|
+
<code><EUIDatepicker v-model="datepicker" label="Datepicker" placeholder="Select Date here..." /></code>
|
|
297
|
+
</pre>
|
|
298
|
+
<EUIDatepicker
|
|
299
|
+
v-model="datepicker"
|
|
300
|
+
label="Datepicker"
|
|
301
|
+
placeholder="Select Date here..."
|
|
302
|
+
/>
|
|
303
|
+
</div>
|
|
304
|
+
|
|
305
|
+
<div
|
|
306
|
+
class="w-full max-w-xl p-4 bg-white border border-gray-200 border-solid rounded-lg hover:ring-2 ring-purple-500 ring-offset-1"
|
|
307
|
+
>
|
|
308
|
+
<span
|
|
309
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
310
|
+
>
|
|
311
|
+
Name: Button
|
|
312
|
+
</span>
|
|
313
|
+
<pre
|
|
314
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
315
|
+
>
|
|
316
|
+
<code><EUIButton type="button" size="md" color="purple" @click="onClickMethod">Open
|
|
317
|
+
Modal</EUIButton></code>
|
|
318
|
+
</pre>
|
|
319
|
+
|
|
320
|
+
<div class="space-y-4">
|
|
321
|
+
<div class="inline-flex flex-row flex-wrap items-center gap-4">
|
|
322
|
+
<EUIButton type="button" size="xs" color="purple" rounded>
|
|
323
|
+
XS Button
|
|
324
|
+
</EUIButton>
|
|
325
|
+
<EUIButton type="button" size="sm" color="purple" rounded
|
|
326
|
+
>SM Button</EUIButton
|
|
327
|
+
>
|
|
328
|
+
<EUIButton type="button" size="md" color="purple"
|
|
329
|
+
>MD Button</EUIButton
|
|
330
|
+
>
|
|
331
|
+
<EUIButton type="button" size="lg" color="purple"
|
|
332
|
+
>LG Button</EUIButton
|
|
333
|
+
>
|
|
334
|
+
<EUIButton
|
|
335
|
+
color="primary"
|
|
336
|
+
rounded
|
|
337
|
+
size="md"
|
|
338
|
+
iconType="startIcon"
|
|
339
|
+
:icon="HomeIcon"
|
|
340
|
+
>Home</EUIButton
|
|
341
|
+
>
|
|
342
|
+
</div>
|
|
343
|
+
|
|
344
|
+
<details>
|
|
345
|
+
<summary class="text-gray-600 cursor-pointer">
|
|
346
|
+
Primary Gradient
|
|
347
|
+
</summary>
|
|
348
|
+
<div class="inline-flex flex-row items-center gap-4">
|
|
349
|
+
<EUIButton type="button" size="xs" color="primary" rounded>
|
|
350
|
+
XS Button
|
|
351
|
+
</EUIButton>
|
|
352
|
+
<EUIButton type="button" size="sm" color="primary" rounded
|
|
353
|
+
>SM Button</EUIButton
|
|
354
|
+
>
|
|
355
|
+
<EUIButton type="button" size="md" color="primary" rounded
|
|
356
|
+
>MD Button</EUIButton
|
|
357
|
+
>
|
|
358
|
+
<EUIButton type="button" size="lg" color="primary" rounded
|
|
359
|
+
>LG Button</EUIButton
|
|
360
|
+
>
|
|
361
|
+
</div>
|
|
362
|
+
</details>
|
|
363
|
+
|
|
364
|
+
<details>
|
|
365
|
+
<summary class="text-gray-600 cursor-pointer">white</summary>
|
|
366
|
+
<div class="inline-flex flex-row items-center gap-4">
|
|
367
|
+
<EUIButton type="button" size="xs" color="white" rounded>
|
|
368
|
+
XS Button
|
|
369
|
+
</EUIButton>
|
|
370
|
+
<EUIButton type="button" size="sm" color="white" rounded
|
|
371
|
+
>SM Button</EUIButton
|
|
372
|
+
>
|
|
373
|
+
<EUIButton type="button" size="md" color="white"
|
|
374
|
+
>MD Button</EUIButton
|
|
375
|
+
>
|
|
376
|
+
<EUIButton type="button" size="lg" color="white"
|
|
377
|
+
>LG Button</EUIButton
|
|
378
|
+
>
|
|
379
|
+
</div>
|
|
380
|
+
</details>
|
|
381
|
+
|
|
382
|
+
<details>
|
|
383
|
+
<summary class="text-gray-600 cursor-pointer">Danger</summary>
|
|
384
|
+
<div class="inline-flex flex-row items-center gap-4">
|
|
385
|
+
<EUIButton type="button" size="xs" color="danger">
|
|
386
|
+
XS Button
|
|
387
|
+
</EUIButton>
|
|
388
|
+
<EUIButton type="button" size="sm" color="danger"
|
|
389
|
+
>SM Button</EUIButton
|
|
390
|
+
>
|
|
391
|
+
<EUIButton type="button" size="md" color="danger"
|
|
392
|
+
>MD Button</EUIButton
|
|
393
|
+
>
|
|
394
|
+
<EUIButton type="button" size="lg" color="danger"
|
|
395
|
+
>LG Button</EUIButton
|
|
396
|
+
>
|
|
397
|
+
</div>
|
|
398
|
+
</details>
|
|
399
|
+
|
|
400
|
+
<details>
|
|
401
|
+
<summary class="text-gray-600 cursor-pointer">Success</summary>
|
|
402
|
+
<div class="inline-flex flex-row items-center gap-4">
|
|
403
|
+
<EUIButton type="button" size="xs" color="success">
|
|
404
|
+
XS Button
|
|
405
|
+
</EUIButton>
|
|
406
|
+
<EUIButton type="button" size="sm" color="success"
|
|
407
|
+
>SM Button</EUIButton
|
|
408
|
+
>
|
|
409
|
+
<EUIButton type="button" size="md" color="success" rounded
|
|
410
|
+
>MD Button</EUIButton
|
|
411
|
+
>
|
|
412
|
+
<EUIButton type="button" size="lg" color="success" rounded
|
|
413
|
+
>LG Button</EUIButton
|
|
414
|
+
>
|
|
415
|
+
</div>
|
|
416
|
+
</details>
|
|
417
|
+
|
|
418
|
+
<details>
|
|
419
|
+
<summary class="text-gray-600 cursor-pointer">Black</summary>
|
|
420
|
+
<div class="inline-flex flex-row items-center gap-4">
|
|
421
|
+
<EUIButton type="button" size="xs" color="black">
|
|
422
|
+
XS Button
|
|
423
|
+
</EUIButton>
|
|
424
|
+
<EUIButton type="button" size="sm" color="black"
|
|
425
|
+
>SM Button</EUIButton
|
|
426
|
+
>
|
|
427
|
+
<EUIButton type="button" size="md" color="black" rounded
|
|
428
|
+
>MD Button</EUIButton
|
|
429
|
+
>
|
|
430
|
+
<EUIButton type="button" size="lg" color="black" rounded
|
|
431
|
+
>LG Button</EUIButton
|
|
432
|
+
>
|
|
433
|
+
</div>
|
|
434
|
+
</details>
|
|
435
|
+
</div>
|
|
436
|
+
</div>
|
|
437
|
+
|
|
438
|
+
<div
|
|
439
|
+
class="w-full max-w-xl p-4 bg-white border border-gray-200 border-solid rounded-lg hover:ring-2 ring-purple-500 ring-offset-1"
|
|
440
|
+
>
|
|
441
|
+
<span
|
|
442
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
443
|
+
>
|
|
444
|
+
Name: Modal
|
|
445
|
+
</span>
|
|
446
|
+
<pre
|
|
447
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
448
|
+
>
|
|
449
|
+
<code>
|
|
450
|
+
<EUIModal :isVisible="showModal" slim-header @update:isVisible="showModal=$event"
|
|
451
|
+
@confirm="handleConfirm"> <template #title> Custom Title here</template> <div
|
|
452
|
+
class="">Lorem, ipsum dolor sit amet consectetur adipisicing elit. Minus quas possimus ea culpa id voluptatum
|
|
453
|
+
cumque, animi earum sequi, aliquid eius omnis repellendus nihil soluta vitae a temporibus! Perspiciatis,
|
|
454
|
+
nihil?</div> </EUIModal>
|
|
455
|
+
</code>
|
|
456
|
+
</pre>
|
|
457
|
+
<div class="space-x-4">
|
|
458
|
+
<EUIButton
|
|
459
|
+
type="button"
|
|
460
|
+
size="md"
|
|
461
|
+
color="primary"
|
|
462
|
+
rounded
|
|
463
|
+
@click="showModal = true"
|
|
464
|
+
>Default Modal</EUIButton
|
|
465
|
+
>
|
|
466
|
+
<EUIButton
|
|
467
|
+
type="button"
|
|
468
|
+
size="md"
|
|
469
|
+
color="primary"
|
|
470
|
+
rounded
|
|
471
|
+
@click="customModal = true"
|
|
472
|
+
>Custom Modal
|
|
473
|
+
</EUIButton>
|
|
474
|
+
</div>
|
|
475
|
+
|
|
476
|
+
<EUIModal
|
|
477
|
+
:isVisible="showModal"
|
|
478
|
+
slim-header
|
|
479
|
+
@update:isVisible="showModal = $event"
|
|
480
|
+
@confirm="handleConfirm"
|
|
481
|
+
>
|
|
482
|
+
<template #title> Custom Title here</template>
|
|
483
|
+
<div class="">
|
|
484
|
+
Lorem, ipsum dolor sit amet consectetur adipisicing elit. Minus quas
|
|
485
|
+
possimus ea culpa id voluptatum cumque, animi earum sequi, aliquid
|
|
486
|
+
eius omnis repellendus nihil soluta vitae a temporibus!
|
|
487
|
+
Perspiciatis, nihil?
|
|
488
|
+
</div>
|
|
489
|
+
</EUIModal>
|
|
490
|
+
|
|
491
|
+
<EUIModal
|
|
492
|
+
:isVisible="customModal"
|
|
493
|
+
@update:isVisible="customModal = $event"
|
|
494
|
+
@confirm="openModal"
|
|
495
|
+
rounded-class="rounded-3xl"
|
|
496
|
+
>
|
|
497
|
+
<template #header>
|
|
498
|
+
<div
|
|
499
|
+
class="sticky inset-x-0 top-0 px-6 py-4 text-base font-semibold bg-white border-b"
|
|
500
|
+
>
|
|
501
|
+
Custom Header here
|
|
502
|
+
</div>
|
|
503
|
+
</template>
|
|
504
|
+
<template #content>
|
|
505
|
+
<div
|
|
506
|
+
class="p-4 max-h-[calc(100svh-10rem)] overflow-y-auto space-y-4"
|
|
507
|
+
>
|
|
508
|
+
<div v-for="item in 10" :key="`row-${item}`">
|
|
509
|
+
Lorem, ipsum dolor sit amet consectetur adipisicing elit. Minus
|
|
510
|
+
quas possimus ea culpa id voluptatum cumque, animi earum sequi,
|
|
511
|
+
aliquid eius omnis repellendus nihil soluta vitae a temporibus!
|
|
512
|
+
Perspiciatis, nihil?
|
|
513
|
+
</div>
|
|
514
|
+
</div>
|
|
515
|
+
</template>
|
|
516
|
+
<template #footer>
|
|
517
|
+
<div
|
|
518
|
+
class="sticky inset-x-0 bottom-0 flex items-center justify-end p-4 bg-white border-t border-gray-200"
|
|
519
|
+
>
|
|
520
|
+
<div class="text-base font-semibold">Custom Footer here</div>
|
|
521
|
+
<button
|
|
522
|
+
class="px-4 py-2 text-base font-semibold tracking-wide text-gray-600 transition-colors duration-75 bg-white rounded-md hover:bg-gray-100"
|
|
523
|
+
@click="customModal = false"
|
|
524
|
+
>
|
|
525
|
+
Cancel
|
|
526
|
+
</button>
|
|
527
|
+
<button
|
|
528
|
+
class="px-4 py-2 text-base font-semibold tracking-wide text-white transition-colors duration-75 bg-purple-600 rounded-md hover:bg-purple-700"
|
|
529
|
+
>
|
|
530
|
+
Confirm
|
|
531
|
+
</button>
|
|
532
|
+
</div>
|
|
533
|
+
</template>
|
|
534
|
+
</EUIModal>
|
|
535
|
+
</div>
|
|
536
|
+
|
|
537
|
+
<div
|
|
538
|
+
class="w-full max-w-xl p-4 bg-white border border-gray-200 border-solid rounded-lg hover:ring-2 ring-purple-500 ring-offset-1"
|
|
539
|
+
>
|
|
540
|
+
<span
|
|
541
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
542
|
+
>
|
|
543
|
+
Name: Accordion
|
|
544
|
+
</span>
|
|
545
|
+
<pre
|
|
546
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
547
|
+
>
|
|
548
|
+
<code><EUIAccordion :datas="accordionData" :defaultOpen="[1]" :collapse="true" /></code>
|
|
549
|
+
</pre>
|
|
550
|
+
<EUIAccordion
|
|
551
|
+
:datas="accordionData"
|
|
552
|
+
:defaultOpen="[1]"
|
|
553
|
+
:collapse="true"
|
|
554
|
+
/>
|
|
555
|
+
</div>
|
|
556
|
+
|
|
557
|
+
<div
|
|
558
|
+
class="w-full max-w-xl p-4 overflow-y-auto bg-white border border-gray-200 border-solid rounded-lg max-h-96 hover:ring-2 ring-purple-500 ring-offset-1"
|
|
559
|
+
>
|
|
560
|
+
<span
|
|
561
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
562
|
+
>
|
|
563
|
+
Name: Timeline
|
|
564
|
+
</span>
|
|
565
|
+
<pre
|
|
566
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
567
|
+
>
|
|
568
|
+
<code><EUITimeLine :items="timelineData" type="view" /></code>
|
|
569
|
+
</pre>
|
|
570
|
+
<EUITimeLine :items="timelineData" type="view" />
|
|
571
|
+
<EUITimeLine
|
|
572
|
+
:items="timelineData"
|
|
573
|
+
type="icon"
|
|
574
|
+
:icon="ArrowDownCircleIcon"
|
|
575
|
+
/>
|
|
576
|
+
<EUITimeLine :items="timelineImage" type="image" :show-more="true" />
|
|
577
|
+
</div>
|
|
578
|
+
|
|
579
|
+
<div
|
|
580
|
+
class="w-full max-w-screen-xl col-span-2 p-4 bg-white border border-gray-200 border-solid rounded-lg hover:ring-2 ring-purple-500 ring-offset-1"
|
|
581
|
+
>
|
|
582
|
+
<span
|
|
583
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
584
|
+
>
|
|
585
|
+
Name: Stepper Timeline
|
|
586
|
+
</span>
|
|
587
|
+
<pre
|
|
588
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
589
|
+
>
|
|
590
|
+
<code><EUIStepperVertical stepStatus="opportunity" /></code>
|
|
591
|
+
</pre>
|
|
592
|
+
<EUIStepperTimeline />
|
|
593
|
+
</div>
|
|
594
|
+
|
|
595
|
+
<div
|
|
596
|
+
class="w-full max-w-screen-xl col-span-2 p-4 overflow-auto bg-white border border-gray-200 border-solid rounded-lg hover:ring-2 ring-purple-500 ring-offset-1 max-h-svh"
|
|
597
|
+
>
|
|
598
|
+
<span
|
|
599
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
600
|
+
>
|
|
601
|
+
Name: Dashboard Table
|
|
602
|
+
</span>
|
|
603
|
+
<pre
|
|
604
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
605
|
+
>
|
|
606
|
+
<code><EUIDashboardTable :checkable="true"
|
|
607
|
+
paginated
|
|
608
|
+
:checked-rows.sync="checkedRows"
|
|
609
|
+
backend-pagination
|
|
610
|
+
:per-page="limit"
|
|
611
|
+
:headers="tableHeaders"
|
|
612
|
+
:items="tableData"
|
|
613
|
+
:total="totalCount"
|
|
614
|
+
:default-sort-direction="defaultSortOrder"
|
|
615
|
+
default-sort="introducer_details"
|
|
616
|
+
:current-page="offset"
|
|
617
|
+
@sort="onSort"
|
|
618
|
+
@mouseenter="select"
|
|
619
|
+
@mouseleave=";(selectedIndex = null), (selected = null)" > <template #[`item.introducer_details`]="{ row,
|
|
620
|
+
rowIndex }">
|
|
621
|
+
<div class="flex flex-row items-center gap-2">
|
|
622
|
+
<div
|
|
623
|
+
class="flex items-center justify-center text-sm font-bold text-gray-900 bg-gray-100 rounded-full size-8"
|
|
624
|
+
>
|
|
625
|
+
<img
|
|
626
|
+
:src="row?.introducer_details?.url"
|
|
627
|
+
class="size-8 rounded-3xl"
|
|
628
|
+
alt=""
|
|
629
|
+
/>
|
|
630
|
+
</div>
|
|
631
|
+
<div class="text-sm">{{ row?.introducer_details?.name }}</div>
|
|
632
|
+
</div>
|
|
633
|
+
</template>
|
|
634
|
+
</EUIDashboardTable>
|
|
635
|
+
</code>
|
|
636
|
+
</pre>
|
|
637
|
+
<EUIDashboardTable
|
|
638
|
+
:checkable="true"
|
|
639
|
+
paginated
|
|
640
|
+
:checked-rows.sync="checkedRows"
|
|
641
|
+
backend-pagination
|
|
642
|
+
:per-page="limit"
|
|
643
|
+
:headers="tableHeaders"
|
|
644
|
+
:items="tableData"
|
|
645
|
+
:total="totalCount"
|
|
646
|
+
:default-sort-direction="defaultSortOrder"
|
|
647
|
+
default-sort="introducer_details"
|
|
648
|
+
:current-page="offset"
|
|
649
|
+
@sort="onSort"
|
|
650
|
+
@mouseenter="select"
|
|
651
|
+
@mouseleave="(selectedIndex = null), (selected = null)"
|
|
652
|
+
>
|
|
653
|
+
<template #[`item.introducer_details`]="{ row, rowIndex }">
|
|
654
|
+
<div class="flex flex-row items-center gap-2">
|
|
655
|
+
<div
|
|
656
|
+
class="flex items-center justify-center text-sm font-bold text-gray-900 bg-gray-100 rounded-full size-8"
|
|
657
|
+
>
|
|
658
|
+
<img
|
|
659
|
+
:src="row?.introducer_details?.url"
|
|
660
|
+
class="size-8 rounded-3xl"
|
|
661
|
+
alt=""
|
|
662
|
+
/>
|
|
663
|
+
</div>
|
|
664
|
+
<div class="text-sm">{{ row?.introducer_details?.name }}</div>
|
|
665
|
+
</div>
|
|
666
|
+
</template>
|
|
667
|
+
</EUIDashboardTable>
|
|
668
|
+
|
|
669
|
+
<div class="py-4">
|
|
670
|
+
<EUITable
|
|
671
|
+
:checkable="true"
|
|
672
|
+
paginated
|
|
673
|
+
:checked-rows.sync="checkedRows"
|
|
674
|
+
backend-pagination
|
|
675
|
+
:per-page="10"
|
|
676
|
+
:headers="studentHeader"
|
|
677
|
+
:items="studentData"
|
|
678
|
+
:total="studentData.length"
|
|
679
|
+
:default-sort-direction="defaultSortOrder"
|
|
680
|
+
default-sort=""
|
|
681
|
+
:current-page="offset"
|
|
682
|
+
@sort="onSort"
|
|
683
|
+
@mouseenter="select"
|
|
684
|
+
@mouseleave="(selectedIndex = null), (selected = null)"
|
|
685
|
+
>
|
|
686
|
+
<template #[`item.firstName`]="{ row, rowIndex }">
|
|
687
|
+
<div class="space-y-0.5">
|
|
688
|
+
<div class="block text-sm font-medium leading-snug">
|
|
689
|
+
{{ capitalizeText(row?.firstName) + " " + capitalizeText(row?.lastName) }}
|
|
690
|
+
</div>
|
|
691
|
+
<div class="text-xs font-medium text-gray-900 leading-[normal]">
|
|
692
|
+
{{ row?.referenceId }}
|
|
693
|
+
</div>
|
|
694
|
+
</div>
|
|
695
|
+
</template>
|
|
696
|
+
<template #[`item.activeUser`]="{ row, rowIndex }">
|
|
697
|
+
{{ row?.activeUser?.user?.firstName }}
|
|
698
|
+
{{ row?.activeUser?.user?.lastName }}
|
|
699
|
+
</template>
|
|
700
|
+
</EUITable>
|
|
701
|
+
</div>
|
|
702
|
+
</div>
|
|
703
|
+
</div>
|
|
704
|
+
</div>
|
|
705
|
+
</template>
|
|
706
|
+
|
|
707
|
+
<script setup lang="ts">
|
|
708
|
+
import { computed, reactive, ref } from "vue";
|
|
709
|
+
import EUIButton from "./button/EUIButton.vue";
|
|
710
|
+
import EUICheckbox from "./checkbox/EUICheckbox.vue";
|
|
711
|
+
import EUIInput from "./input/EUIInput.vue";
|
|
712
|
+
import EUIInputNormal from "./inputNormal/EUIInputNormal.vue";
|
|
713
|
+
import EUIModal from "./modal/EUIModal.vue";
|
|
714
|
+
import EUISelect from "./select/EUISelect.vue";
|
|
715
|
+
import EUITabs from "./tabs/EUITabs.vue";
|
|
716
|
+
import EUITextarea from "./textArea/EUITextArea.vue";
|
|
717
|
+
import EUISelectSearch from "./selectSearch/EUISelectSearch.vue";
|
|
718
|
+
import EUITimeLine from "./timeLine/EUITimeLine.vue";
|
|
719
|
+
import { ArrowDownCircleIcon } from "@heroicons/vue/24/solid";
|
|
720
|
+
import EUITag from "./tag/EUITag.vue";
|
|
721
|
+
import EUIToggle from "./toggle/EUIToggle.vue";
|
|
722
|
+
import EUILoader from "./loader/EUILoader.vue";
|
|
723
|
+
import EUIAvatar from "./avatar/EUIAvatar.vue";
|
|
724
|
+
import EUIStepperTimeline from "./stepperTimeline/EUIStepperTimeline.vue";
|
|
725
|
+
import EUIAccordion from "./accordion/EUIAccordion.vue";
|
|
726
|
+
import EUITelephone from "./telephone/EUITelephone.vue";
|
|
727
|
+
import { HomeIcon } from "@heroicons/vue/24/outline";
|
|
728
|
+
import EUIDatepicker from "./datepicker/EUIDatepicker.vue";
|
|
729
|
+
import EUIDashboardTable from "./table/EUIDashboardTable.vue";
|
|
730
|
+
import tabData from "../data/tab";
|
|
731
|
+
import {
|
|
732
|
+
studentData,
|
|
733
|
+
studentHeader,
|
|
734
|
+
tableData,
|
|
735
|
+
tableHeaders,
|
|
736
|
+
} from "../data/table";
|
|
737
|
+
import EUITable from "./table/EUITable.vue";
|
|
738
|
+
import { capitalizeText } from "../utils/lodash";
|
|
739
|
+
import ChevronDownStroke from '../assets/svg/ChevronDownStroke.vue';
|
|
740
|
+
import EUIMultiDropdown from './dropdown/EUIMultiDropdown.vue';
|
|
741
|
+
|
|
742
|
+
const mobileNumber = ref("+91 8667444951");
|
|
743
|
+
const datepicker = ref(new Date());
|
|
744
|
+
|
|
745
|
+
const form = reactive({
|
|
746
|
+
input: "",
|
|
747
|
+
mobile: "+918667444951",
|
|
748
|
+
});
|
|
749
|
+
|
|
750
|
+
//TODO: Dashboard Table
|
|
751
|
+
const checkedRows = ref([]);
|
|
752
|
+
const defaultSortOrder = ref("asc");
|
|
753
|
+
const limit = ref(5);
|
|
754
|
+
const offset = ref(1);
|
|
755
|
+
const selectedIndex = ref(null);
|
|
756
|
+
const selected: { index: string } = { index: "" };
|
|
757
|
+
|
|
758
|
+
const totalCount = computed(() => {
|
|
759
|
+
return tableData.length;
|
|
760
|
+
});
|
|
761
|
+
|
|
762
|
+
const select = (_item: any, index: any) => {
|
|
763
|
+
selectedIndex.value = index;
|
|
764
|
+
};
|
|
765
|
+
|
|
766
|
+
const onSort = (field: string, order: string) => {
|
|
767
|
+
const modifier = order === "desc" ? -1 : 1;
|
|
768
|
+
tableData.sort((a, b) => {
|
|
769
|
+
if (a[field] < b[field]) return -1 * modifier;
|
|
770
|
+
if (a[field] > b[field]) return 1 * modifier;
|
|
771
|
+
return 0;
|
|
772
|
+
});
|
|
773
|
+
};
|
|
774
|
+
|
|
775
|
+
// TODO: Multi dropdown menu clicked access
|
|
776
|
+
const menubar = ref([
|
|
777
|
+
{ text: "Students" },
|
|
778
|
+
{ text: "Application" },
|
|
779
|
+
])
|
|
780
|
+
|
|
781
|
+
const handleMenuItem = (item:any) => {
|
|
782
|
+
console.log('Menu clicked:', item)
|
|
783
|
+
}
|
|
784
|
+
|
|
785
|
+
const handleSubMenuItem = (subItem:any) => {
|
|
786
|
+
console.log("Submenu item clicked:", subItem);
|
|
787
|
+
}
|
|
788
|
+
|
|
789
|
+
//TODO: TagModal
|
|
790
|
+
const tagModal = ref(false);
|
|
791
|
+
const handleClose = () => {
|
|
792
|
+
tagModal.value = true;
|
|
793
|
+
};
|
|
794
|
+
|
|
795
|
+
//TODO: Modal
|
|
796
|
+
const showModal = ref(false);
|
|
797
|
+
const handleConfirm = () => {
|
|
798
|
+
showModal.value = true;
|
|
799
|
+
};
|
|
800
|
+
|
|
801
|
+
const customModal = ref(false);
|
|
802
|
+
const openModal = () => {
|
|
803
|
+
customModal.value = false;
|
|
804
|
+
};
|
|
805
|
+
|
|
806
|
+
//TODO: Select Data
|
|
807
|
+
const datas = ref([
|
|
808
|
+
{
|
|
809
|
+
name: "Shawn Burke",
|
|
810
|
+
age: 6,
|
|
811
|
+
},
|
|
812
|
+
{
|
|
813
|
+
name: "Emery Nolan",
|
|
814
|
+
age: 4,
|
|
815
|
+
},
|
|
816
|
+
{
|
|
817
|
+
name: "Embry Grant",
|
|
818
|
+
age: 3,
|
|
819
|
+
},
|
|
820
|
+
{
|
|
821
|
+
name: "Jesse Austin",
|
|
822
|
+
age: 9,
|
|
823
|
+
},
|
|
824
|
+
{
|
|
825
|
+
name: "Tandy Christensen",
|
|
826
|
+
age: 7,
|
|
827
|
+
},
|
|
828
|
+
]);
|
|
829
|
+
//TODO: Timeline
|
|
830
|
+
|
|
831
|
+
const timelineData = ref([
|
|
832
|
+
{
|
|
833
|
+
id: 1,
|
|
834
|
+
person: { name: "Alex Curren" },
|
|
835
|
+
date: "2d ago",
|
|
836
|
+
dateTime: "2023-01-24T09:12",
|
|
837
|
+
},
|
|
838
|
+
{
|
|
839
|
+
id: 2,
|
|
840
|
+
person: { name: "Alex Curren" },
|
|
841
|
+
date: "1d ago",
|
|
842
|
+
dateTime: "2023-01-24T09:20",
|
|
843
|
+
},
|
|
844
|
+
{
|
|
845
|
+
id: 3,
|
|
846
|
+
person: { name: "Alex Curren" },
|
|
847
|
+
date: "2d ago",
|
|
848
|
+
dateTime: "2023-01-24T09:12",
|
|
849
|
+
},
|
|
850
|
+
{
|
|
851
|
+
id: 4,
|
|
852
|
+
person: { name: "Alex Curren" },
|
|
853
|
+
date: "1d ago",
|
|
854
|
+
dateTime: "2023-01-24T09:20",
|
|
855
|
+
},
|
|
856
|
+
{
|
|
857
|
+
id: 5,
|
|
858
|
+
person: { name: "Alex Curren" },
|
|
859
|
+
date: "2d ago",
|
|
860
|
+
dateTime: "2023-01-24T09:12",
|
|
861
|
+
},
|
|
862
|
+
{
|
|
863
|
+
id: 6,
|
|
864
|
+
person: { name: "Alex Curren" },
|
|
865
|
+
date: "1d ago",
|
|
866
|
+
dateTime: "2023-01-24T09:20",
|
|
867
|
+
},
|
|
868
|
+
]);
|
|
869
|
+
|
|
870
|
+
const timelineImage = ref([
|
|
871
|
+
{
|
|
872
|
+
id: 1,
|
|
873
|
+
person: {
|
|
874
|
+
name: "Chelsea Hagon",
|
|
875
|
+
imageUrl:
|
|
876
|
+
"https://images.unsplash.com/photo-1550525811-e5869dd03032?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=facearea&facepad=2&w=256&h=256&q=80",
|
|
877
|
+
},
|
|
878
|
+
comment:
|
|
879
|
+
"Called client, they reassured me the invoice would be paid by the 25th.",
|
|
880
|
+
date: "3d ago",
|
|
881
|
+
dateTime: "2023-01-23T15:56",
|
|
882
|
+
showmore: {
|
|
883
|
+
title: "More Details",
|
|
884
|
+
content:
|
|
885
|
+
"Lorem ipsum dolor sit amet consectetur adipisicing elit. Repellat, dicta quae aliquam provident mollitia nostrum.",
|
|
886
|
+
},
|
|
887
|
+
},
|
|
888
|
+
{
|
|
889
|
+
id: 2,
|
|
890
|
+
person: {
|
|
891
|
+
name: "Chelsea Hagon",
|
|
892
|
+
imageUrl:
|
|
893
|
+
"https://images.unsplash.com/photo-1550525811-e5869dd03032?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=facearea&facepad=2&w=256&h=256&q=80",
|
|
894
|
+
},
|
|
895
|
+
comment:
|
|
896
|
+
"Called client, they reassured me the invoice would be paid by the 25th.",
|
|
897
|
+
date: "3d ago",
|
|
898
|
+
dateTime: "2023-01-23T15:56",
|
|
899
|
+
showmore: {
|
|
900
|
+
title: "More Details",
|
|
901
|
+
content:
|
|
902
|
+
"Lorem ipsum dolor sit amet consectetur adipisicing elit. Repellat, dicta quae aliquam provident mollitia nostrum.",
|
|
903
|
+
},
|
|
904
|
+
},
|
|
905
|
+
{
|
|
906
|
+
id: 3,
|
|
907
|
+
person: {
|
|
908
|
+
name: "Chelsea Hagon",
|
|
909
|
+
imageUrl:
|
|
910
|
+
"https://images.unsplash.com/photo-1550525811-e5869dd03032?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=facearea&facepad=2&w=256&h=256&q=80",
|
|
911
|
+
},
|
|
912
|
+
comment:
|
|
913
|
+
"Called client, they reassured me the invoice would be paid by the 25th.",
|
|
914
|
+
date: "3d ago",
|
|
915
|
+
dateTime: "2023-01-23T15:56",
|
|
916
|
+
showmore: {
|
|
917
|
+
title: "More Details",
|
|
918
|
+
content:
|
|
919
|
+
"Lorem ipsum dolor sit amet consectetur adipisicing elit. Repellat, dicta quae aliquam provident mollitia nostrum.",
|
|
920
|
+
},
|
|
921
|
+
},
|
|
922
|
+
{
|
|
923
|
+
id: 4,
|
|
924
|
+
person: {
|
|
925
|
+
name: "Chelsea Hagon",
|
|
926
|
+
imageUrl:
|
|
927
|
+
"https://images.unsplash.com/photo-1550525811-e5869dd03032?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=facearea&facepad=2&w=256&h=256&q=80",
|
|
928
|
+
},
|
|
929
|
+
comment:
|
|
930
|
+
"Called client, they reassured me the invoice would be paid by the 25th.",
|
|
931
|
+
date: "3d ago",
|
|
932
|
+
dateTime: "2023-01-23T15:56",
|
|
933
|
+
showmore: {
|
|
934
|
+
title: "More Details",
|
|
935
|
+
content:
|
|
936
|
+
"Lorem ipsum dolor sit amet consectetur adipisicing elit. Repellat, dicta quae aliquam provident mollitia nostrum.",
|
|
937
|
+
},
|
|
938
|
+
},
|
|
939
|
+
{
|
|
940
|
+
id: 5,
|
|
941
|
+
person: {
|
|
942
|
+
name: "Chelsea Hagon",
|
|
943
|
+
imageUrl:
|
|
944
|
+
"https://images.unsplash.com/photo-1550525811-e5869dd03032?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=facearea&facepad=2&w=256&h=256&q=80",
|
|
945
|
+
},
|
|
946
|
+
comment:
|
|
947
|
+
"Called client, they reassured me the invoice would be paid by the 25th.",
|
|
948
|
+
date: "3d ago",
|
|
949
|
+
dateTime: "2023-01-23T15:56",
|
|
950
|
+
showmore: {
|
|
951
|
+
title: "More Details",
|
|
952
|
+
content:
|
|
953
|
+
"Lorem ipsum dolor sit amet consectetur adipisicing elit. Repellat, dicta quae aliquam provident mollitia nostrum.",
|
|
954
|
+
},
|
|
955
|
+
},
|
|
956
|
+
{
|
|
957
|
+
id: 6,
|
|
958
|
+
person: {
|
|
959
|
+
name: "Chelsea Hagon",
|
|
960
|
+
imageUrl:
|
|
961
|
+
"https://images.unsplash.com/photo-1550525811-e5869dd03032?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=facearea&facepad=2&w=256&h=256&q=80",
|
|
962
|
+
},
|
|
963
|
+
comment:
|
|
964
|
+
"Called client, they reassured me the invoice would be paid by the 25th.",
|
|
965
|
+
date: "3d ago",
|
|
966
|
+
dateTime: "2023-01-23T15:56",
|
|
967
|
+
showmore: {
|
|
968
|
+
title: "More Details",
|
|
969
|
+
content:
|
|
970
|
+
"Lorem ipsum dolor sit amet consectetur adipisicing elit. Repellat, dicta quae aliquam provident mollitia nostrum.",
|
|
971
|
+
},
|
|
972
|
+
},
|
|
973
|
+
]);
|
|
974
|
+
|
|
975
|
+
const accordionData = ref([
|
|
976
|
+
{
|
|
977
|
+
title: "1.How long does the course take?",
|
|
978
|
+
content:
|
|
979
|
+
"The video content takes more than 4.5 hours. In addition, you can test gained knowledge on 30 quizzes and practical tasks.",
|
|
980
|
+
},
|
|
981
|
+
{
|
|
982
|
+
title: "2.How long does the course take?",
|
|
983
|
+
content:
|
|
984
|
+
"The video content takes more than 4.5 hours. In addition, you can test gained knowledge on 30 quizzes and practical tasks.",
|
|
985
|
+
},
|
|
986
|
+
{
|
|
987
|
+
title: "3.How long does the course take?",
|
|
988
|
+
content:
|
|
989
|
+
"The video content takes more than 4.5 hours. In addition, you can test gained knowledge on 30 quizzes and practical tasks.",
|
|
990
|
+
},
|
|
991
|
+
{
|
|
992
|
+
title: "4.How long does the course take?",
|
|
993
|
+
content:
|
|
994
|
+
"The video content takes more than 4.5 hours. In addition, you can test gained knowledge on 30 quizzes and practical tasks.",
|
|
995
|
+
},
|
|
996
|
+
]);
|
|
997
|
+
</script>
|
|
998
|
+
|
|
999
|
+
<style lang="scss" scoped></style> -->
|