edvoyui-component-library-test-flight 0.0.170 → 0.0.171
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/library-vue-ts.umd.js +168 -0
- package/dist/selectSearch/EUISelectSearch.vue.d.ts.map +1 -0
- package/package.json +10 -11
- package/src/App.vue +16 -0
- package/src/App.vue.js.map +1 -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/images/search-nodata.png +0 -0
- package/src/assets/scss/body.scss +25 -0
- package/src/assets/svg/CheckTick.vue +21 -0
- package/src/assets/svg/CheckTick.vue.js.map +1 -0
- package/src/assets/svg/ChevronBigDown.vue +22 -0
- package/src/assets/svg/ChevronBigDown.vue.js.map +1 -0
- package/src/assets/svg/ChevronDownSolid.vue +19 -0
- package/src/assets/svg/ChevronDownSolid.vue.js.map +1 -0
- package/src/assets/svg/ChevronDownStroke.vue +22 -0
- package/src/assets/svg/ChevronDownStroke.vue.js.map +1 -0
- package/src/assets/svg/ChevronDownStrokeSolid.vue +19 -0
- package/src/assets/svg/ChevronDownStrokeSolid.vue.js.map +1 -0
- package/src/assets/svg/SearchBigZoomIn.vue +21 -0
- package/src/assets/svg/SearchBigZoomIn.vue.js.map +1 -0
- package/src/assets/svg/SortArrow.vue +24 -0
- package/src/assets/svg/SortArrow.vue.js.map +1 -0
- package/src/assets/svg/Student.vue +30 -0
- package/src/assets/svg/Student.vue.js.map +1 -0
- package/src/assets/svg/partner.vue +33 -0
- package/src/assets/svg/partner.vue.js.map +1 -0
- package/src/assets/svg/people.vue +25 -0
- package/src/assets/svg/people.vue.js.map +1 -0
- package/src/assets/vue.svg +1 -0
- package/src/components/HelloWorld.vue +1974 -0
- package/src/components/HelloWorld.vue.js.map +1 -0
- package/src/components/accordion/EUIAccordion.stories.ts +204 -0
- package/src/components/accordion/EUIAccordion.vue +152 -0
- package/src/components/accordion/EUIAccordion.vue.js.map +1 -0
- package/src/components/alerts/EUIAlerts.stories.ts +217 -0
- package/src/components/alerts/EUIAlerts.vue +194 -0
- package/src/components/alerts/EUIAlerts.vue.js.map +1 -0
- package/src/components/avatar/EUIAvatar.stories.ts +157 -0
- package/src/components/avatar/EUIAvatar.vue +96 -0
- package/src/components/avatar/EUIAvatar.vue.js.map +1 -0
- package/src/components/breadcrumb/EUIBreadcrumb.stories.ts +75 -0
- package/src/components/breadcrumb/EUIBreadcrumb.vue +59 -0
- package/src/components/breadcrumb/EUIBreadcrumb.vue.js.map +1 -0
- package/src/components/button/EUIButton.stories.ts +270 -0
- package/src/components/button/EUIButton.vue +154 -0
- package/src/components/button/EUIButton.vue.js.map +1 -0
- package/src/components/button/EUIButtonGroup.vue +287 -0
- package/src/components/button/EUIButtonGroup.vue.js.map +1 -0
- package/src/components/button/buttonAnimateTab.vue +74 -0
- package/src/components/button/buttonAnimateTab.vue.js.map +1 -0
- package/src/components/checkbox/EUICheckbox.stories.ts +58 -0
- package/src/components/checkbox/EUICheckbox.vue +110 -0
- package/src/components/checkbox/EUICheckbox.vue.js.map +1 -0
- package/src/components/datepicker/EUIDatepicker.stories.ts +492 -0
- package/src/components/datepicker/EUIDatepicker.vue +295 -0
- package/src/components/datepicker/EUIDatepicker.vue.js.map +1 -0
- package/src/components/delete.vue +262 -0
- package/src/components/delete.vue.js.map +1 -0
- package/src/components/dragModal/EUIDrag.vue +179 -0
- package/src/components/dragModal/EUIDrag.vue.js.map +1 -0
- package/src/components/dropdown/EUIMultiDropdown.stories.ts +294 -0
- package/src/components/dropdown/EUIMultiDropdown.vue +174 -0
- package/src/components/dropdown/EUIMultiDropdown.vue.js.map +1 -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/errorMessage/EUIErrorMessage.vue.js.map +1 -0
- package/src/components/index.js.map +1 -0
- package/src/components/index.ts +62 -0
- package/src/components/input/EUIInput.stories.ts +387 -0
- package/src/components/input/EUIInput.vue +223 -0
- package/src/components/input/EUIInput.vue.js.map +1 -0
- package/src/components/input/EUINumberInput.vue +250 -0
- package/src/components/loader/EUICircleLoader.vue +31 -0
- package/src/components/loader/EUICircleLoader.vue.js.map +1 -0
- package/src/components/loader/EUICubeLoader.vue +237 -0
- package/src/components/loader/EUICubeLoader.vue.js.map +1 -0
- package/src/components/loader/EUILoader.stories.ts +99 -0
- package/src/components/loader/EUILoader.vue +17 -0
- package/src/components/loader/EUILoader.vue.js.map +1 -0
- package/src/components/loader/EUISquareLoader.vue +47 -0
- package/src/components/loader/EUISquareLoader.vue.js.map +1 -0
- package/src/components/modal/EUIModal.stories.ts +412 -0
- package/src/components/modal/EUIModal.vue +224 -0
- package/src/components/modal/EUIModal.vue.js.map +1 -0
- package/src/components/pillSelect/EUIPillSelect.stories.ts +74 -0
- package/src/components/pillSelect/EUIPillSelect.vue +149 -0
- package/src/components/pillSelect/EUIPillSelect.vue.js.map +1 -0
- package/src/components/popover/EUIPopover.stories.ts +306 -0
- package/src/components/popover/EUIPopover.vue +297 -0
- package/src/components/popover/EUIPopover.vue.js.map +1 -0
- package/src/components/radio/EUIRadio.stories.ts +54 -0
- package/src/components/radio/EUIRadio.vue +75 -0
- package/src/components/radio/EUIRadio.vue.js.map +1 -0
- package/src/components/searchInput/EUISearch.stories.ts +24 -0
- package/src/components/searchInput/EUISearch.vue +223 -0
- package/src/components/searchInput/EUISearch.vue.js.map +1 -0
- package/src/components/searchTagSelect/EUISearchTagSelect.vue +642 -0
- package/src/components/searchTagSelect/EUISearchTagSelect.vue.js.map +1 -0
- package/src/components/searchTagSelect/SearchInput.vue +167 -0
- package/src/components/searchTagSelect/SearchInput.vue.js.map +1 -0
- package/src/components/searchexpand/EUISearchExpand.vue +148 -0
- package/src/components/searchexpand/EUISearchExpand.vue.js.map +1 -0
- package/src/components/searchexpand/EUISearchToggle.vue +86 -0
- package/src/components/searchexpand/EUISearchToggle.vue.js.map +1 -0
- package/src/components/select/EUISelect.stories.ts +101 -0
- package/src/components/select/EUISelect.vue +1092 -0
- package/src/components/select/EUISelect.vue.js.map +1 -0
- package/src/components/selectSearch/EUISelectSearch.vue +23 -0
- package/src/components/selectSearch/EUISelectSearch.vue.js.map +1 -0
- package/src/components/slideover/EUISlideover.stories.ts +318 -0
- package/src/components/slideover/EUISlideover.vue +207 -0
- package/src/components/slideover/EUISlideover.vue.js.map +1 -0
- package/src/components/stepperTimeline/EUIStepperHorizontal.vue +242 -0
- package/src/components/stepperTimeline/EUIStepperHorizontal.vue.js.map +1 -0
- package/src/components/stepperTimeline/EUIStepperTimeline.stories.ts +54 -0
- package/src/components/stepperTimeline/EUIStepperTimeline.vue +16 -0
- package/src/components/stepperTimeline/EUIStepperTimeline.vue.js.map +1 -0
- package/src/components/stepperTimeline/EUIStepperVertical.vue +112 -0
- package/src/components/stepperTimeline/EUIStepperVertical.vue.js.map +1 -0
- package/src/components/table/ColumnResizeTable.vue +740 -0
- package/src/components/table/ColumnResizeTable.vue.js.map +1 -0
- package/src/components/table/EUIDashboardTable.vue +514 -0
- package/src/components/table/EUIDashboardTable.vue.js.map +1 -0
- package/src/components/table/EUIPageLimit.vue +66 -0
- package/src/components/table/EUIPageLimit.vue.js.map +1 -0
- package/src/components/table/EUIPagination.vue +175 -0
- package/src/components/table/EUIPagination.vue.js.map +1 -0
- package/src/components/table/EUIStudentPagination.vue +172 -0
- package/src/components/table/EUIStudentPagination.vue.js.map +1 -0
- package/src/components/table/EUITable.stories.ts +300 -0
- package/src/components/table/EUITable.vue +559 -0
- package/src/components/table/EUITable.vue.js.map +1 -0
- package/src/components/table/EUITableCheckbox.vue +98 -0
- package/src/components/table/EUITableCheckbox.vue.js.map +1 -0
- package/src/components/table/GrowthTable.vue +575 -0
- package/src/components/table/GrowthTable.vue.js.map +1 -0
- package/src/components/table/GrowthTableView.vue +108 -0
- package/src/components/table/GrowthTableView.vue.js.map +1 -0
- package/src/components/table/ResizeTableview.vue +198 -0
- package/src/components/table/ResizeTableview.vue.js.map +1 -0
- package/src/components/table/UCheckbox.vue +169 -0
- package/src/components/table/UCheckbox.vue.js.map +1 -0
- package/src/components/table/UTable.scss +69 -0
- package/src/components/table/UTable.vue +611 -0
- package/src/components/table/UTable.vue.js.map +1 -0
- package/src/components/table/UTableview.vue +189 -0
- package/src/components/table/UTableview.vue.js.map +1 -0
- package/src/components/tabs/EUITabOutline.vue +263 -0
- package/src/components/tabs/EUITabOutline.vue.js.map +1 -0
- package/src/components/tabs/EUITabs.vue +226 -0
- package/src/components/tabs/EUITabs.vue.js.map +1 -0
- package/src/components/tabs/EUItabs.stories.ts +137 -0
- package/src/components/tag/EUITag.stories.ts +53 -0
- package/src/components/tag/EUITag.vue +88 -0
- package/src/components/tag/EUITag.vue.js.map +1 -0
- package/src/components/telephone/EUITelephone.stories.ts +358 -0
- package/src/components/telephone/EUITelephone.vue +299 -0
- package/src/components/telephone/EUITelephone.vue.js.map +1 -0
- package/src/components/textArea/EUITextArea.stories.ts +134 -0
- package/src/components/textArea/EUITextArea.vue +155 -0
- package/src/components/textArea/EUITextArea.vue.js.map +1 -0
- package/src/components/timeLine/EUITimeLine.stories.ts +247 -0
- package/src/components/timeLine/EUITimeLine.vue +148 -0
- package/src/components/timeLine/EUITimeLine.vue.js.map +1 -0
- package/src/components/toggle/EUIToggle.stories.ts +63 -0
- package/src/components/toggle/EUIToggle.vue +101 -0
- package/src/components/toggle/EUIToggle.vue.js.map +1 -0
- package/src/components/tooltip/EUITooltip.stories.ts +53 -0
- package/src/components/tooltip/EUITooltip.vue +111 -0
- package/src/components/tooltip/EUITooltip.vue.js.map +1 -0
- package/src/components/uidemo/select-com.vue +120 -0
- package/src/components/uidemo/select-com.vue.js.map +1 -0
- package/src/data/books.js.map +1 -0
- package/src/data/books.ts +163 -0
- package/src/data/country.ts +56 -0
- package/src/data/tab.js.map +1 -0
- package/src/data/tab.ts +40 -0
- package/src/data/table.js.map +1 -0
- package/src/data/table.ts +5654 -0
- package/src/main.js.map +1 -0
- package/src/main.ts +5 -0
- package/src/style.scss +186 -0
- package/src/utils/helpers.js.map +1 -0
- package/src/utils/helpers.ts +30 -0
- package/src/utils/lodash.js.map +1 -0
- package/src/utils/lodash.ts +9 -0
- package/src/utils/types.js.map +1 -0
- package/src/utils/types.ts +9 -0
- package/src/vite-env.d.ts +5 -0
- package/dist/EUISelectSearch.vue.d.ts.map +0 -1
- package/dist/edvoy-ui.umd.js +0 -168
- /package/dist/{edvoy-ui.cjs.js → library-vue-ts.cjs.js} +0 -0
- /package/dist/{edvoy-ui.css → library-vue-ts.css} +0 -0
- /package/dist/{edvoy-ui.es.js → library-vue-ts.es.js} +0 -0
- /package/dist/{EUISelectSearch.vue.d.ts → selectSearch/EUISelectSearch.vue.d.ts} +0 -0
|
@@ -0,0 +1,1974 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="max-w-screen-xl mx-auto bg-white">
|
|
3
|
+
<h1
|
|
4
|
+
class="my-10 text-2xl font-bold text-center text-gray-900 underline underline-offset-8 decoration-green-400 decoration-wavy"
|
|
5
|
+
>
|
|
6
|
+
Edvoy User Interface
|
|
7
|
+
</h1>
|
|
8
|
+
</div>
|
|
9
|
+
</template>
|
|
10
|
+
<script setup lang="ts"></script>
|
|
11
|
+
<style lang="scss"></style>
|
|
12
|
+
|
|
13
|
+
<!-- Development code here -->
|
|
14
|
+
|
|
15
|
+
<!--<template>
|
|
16
|
+
<div class="h-[clac(100svh-64px)] w-full px-10 py-8 max-w-screen-xl mx-auto">
|
|
17
|
+
<h1 class="mb-2 font-semibold text-gray-900 tetx-lg">Edvoy UI Componnet</h1>
|
|
18
|
+
<div
|
|
19
|
+
class="flex flex-col max-w-screen-sm gap-4 p-6 mx-auto mb-10 border rounded-xl"
|
|
20
|
+
>
|
|
21
|
+
<pre>{{ inputNumber }} ==> {{ inputNumberPoints }}</pre>
|
|
22
|
+
<EUINumberInput
|
|
23
|
+
v-model.trim="inputNumber"
|
|
24
|
+
name="addnote"
|
|
25
|
+
id="addnote"
|
|
26
|
+
label="Add Note"
|
|
27
|
+
placeholder="Note here..."
|
|
28
|
+
:min="0"
|
|
29
|
+
:max="100"
|
|
30
|
+
:step="1"
|
|
31
|
+
/>
|
|
32
|
+
<EUINumberInput
|
|
33
|
+
v-model.trim="inputNumberPoints"
|
|
34
|
+
name="addnote"
|
|
35
|
+
id="addnote"
|
|
36
|
+
label="Add Note"
|
|
37
|
+
placeholder="Note here..."
|
|
38
|
+
:min="0"
|
|
39
|
+
:max="100"
|
|
40
|
+
:step="0.5"
|
|
41
|
+
/>
|
|
42
|
+
</div>
|
|
43
|
+
|
|
44
|
+
<div class="max-w-xs py-4 mx-auto border border-red-500 rounded-xl">
|
|
45
|
+
<EUISearchTagSelect
|
|
46
|
+
v-model="selectedCity"
|
|
47
|
+
:items="datas"
|
|
48
|
+
:searchIcon="true"
|
|
49
|
+
:required="false"
|
|
50
|
+
itemText="name"
|
|
51
|
+
placeholder="Search Cities"
|
|
52
|
+
select-type="multiple"
|
|
53
|
+
:clearable="true"
|
|
54
|
+
@search="onSearch"
|
|
55
|
+
@on-change="onCitySelect"
|
|
56
|
+
@on-deselect="clear"
|
|
57
|
+
>
|
|
58
|
+
<template #labelhint>
|
|
59
|
+
<div class="my-1 text-xs font-medium text-gray-400">
|
|
60
|
+
Changing the city will affect your university selection
|
|
61
|
+
</div>
|
|
62
|
+
</template>
|
|
63
|
+
</EUISearchTagSelect>
|
|
64
|
+
<pre class="p-2 text-red-500 text-xxs">{{ selectedCity }}--</pre>
|
|
65
|
+
</div>
|
|
66
|
+
|
|
67
|
+
<div class="relative">
|
|
68
|
+
<EUIStepperHorizontal
|
|
69
|
+
:steps="allSteps"
|
|
70
|
+
:step-status="currentStage"
|
|
71
|
+
:history="lifeCycleHistory"
|
|
72
|
+
/>
|
|
73
|
+
</div>
|
|
74
|
+
|
|
75
|
+
<div class="grid max-w-5xl grid-cols-3 gap-6 mx-auto mb-6">
|
|
76
|
+
<EUISelect
|
|
77
|
+
v-model="businessAreaSel"
|
|
78
|
+
:value="businessAreaSel"
|
|
79
|
+
:items="businessArea"
|
|
80
|
+
search-label="name"
|
|
81
|
+
label="Select Label"
|
|
82
|
+
selectedCountLabel="Business Area"
|
|
83
|
+
placeholder="Placeholder"
|
|
84
|
+
:multiple="true"
|
|
85
|
+
:inputFilled="true"
|
|
86
|
+
:searchable="true"
|
|
87
|
+
/>
|
|
88
|
+
|
|
89
|
+
<EUISelect
|
|
90
|
+
v-model="popoverSelect"
|
|
91
|
+
:value="popoverSelect"
|
|
92
|
+
:items="datas"
|
|
93
|
+
search-label="name"
|
|
94
|
+
label="Select Label"
|
|
95
|
+
placeholder="Placeholder"
|
|
96
|
+
:searchable="true"
|
|
97
|
+
:multiple="true"
|
|
98
|
+
:isCheckbox="true"
|
|
99
|
+
:selectedCount="true"
|
|
100
|
+
:inputFilled="true"
|
|
101
|
+
/>
|
|
102
|
+
|
|
103
|
+
<EUISelect
|
|
104
|
+
v-model="popoverSelect"
|
|
105
|
+
:value="popoverSelect"
|
|
106
|
+
:items="countryAll"
|
|
107
|
+
search-label="name"
|
|
108
|
+
label="Country"
|
|
109
|
+
placeholder="select country"
|
|
110
|
+
:searchable="true"
|
|
111
|
+
:multiple="true"
|
|
112
|
+
:isCheckbox="true"
|
|
113
|
+
:selectedCount="true"
|
|
114
|
+
:inputFilled="true"
|
|
115
|
+
:group-select="true"
|
|
116
|
+
/>
|
|
117
|
+
</div>
|
|
118
|
+
|
|
119
|
+
<div class="grid w-full h-48 grid-cols-4 gap-4 mb-20 isolate">
|
|
120
|
+
<div
|
|
121
|
+
class="flex items-center justify-between w-full max-w-2xl gap-4 p-2 mx-auto border rounded-lg h-max"
|
|
122
|
+
>
|
|
123
|
+
<div class="text-base font-semibold leading-loose text-gray-900">
|
|
124
|
+
Popover Click Method
|
|
125
|
+
</div>
|
|
126
|
+
|
|
127
|
+
<div class="inline-flex items-center justify-end flex-none gap-4">
|
|
128
|
+
<EUIPopover
|
|
129
|
+
trigger="click"
|
|
130
|
+
placement="bottom-end"
|
|
131
|
+
className="max-w-80 min-w-80"
|
|
132
|
+
customButton="capitalize box-border border-none inline-flex flex-row gap-x-2 items-center active:scale-[.97] active:shadow-md transition duration-150 ease-in-out active:translate-y-0.5 rounded-lg bg-white hover:bg-gray-100 active:bg-gray-50 text-black cursor-pointer active:shadow-white/50 active:bg-transparent text-base font-semibold p-2"
|
|
133
|
+
>
|
|
134
|
+
<template #referenceButton="{ open }">
|
|
135
|
+
<div class="relative">
|
|
136
|
+
<FunnelIcon class="text-current size-6" />
|
|
137
|
+
<div
|
|
138
|
+
v-if="!open"
|
|
139
|
+
class="absolute bg-purple-600 border-2 border-white -top-1 -right-1 rounded-3xl size-3"
|
|
140
|
+
/>
|
|
141
|
+
</div>
|
|
142
|
+
</template>
|
|
143
|
+
|
|
144
|
+
<div
|
|
145
|
+
class="block p-6 bg-white rounded-lg shadow-lg me-2 ring-1 ring-gray-100 ring-opacity-10"
|
|
146
|
+
>
|
|
147
|
+
<div>
|
|
148
|
+
lorem ipsum dolor sit amet consectetur adipisicing elit.
|
|
149
|
+
</div>
|
|
150
|
+
<div @click.stop>
|
|
151
|
+
<EUISelect
|
|
152
|
+
search-label="name"
|
|
153
|
+
label="Select Label"
|
|
154
|
+
placeholder="Placeholder"
|
|
155
|
+
:items="datas"
|
|
156
|
+
:multiple="true"
|
|
157
|
+
:multiple-limit="3"
|
|
158
|
+
/>
|
|
159
|
+
</div>
|
|
160
|
+
|
|
161
|
+
<div>lorem ipsum dolor sit amet consectetur adipisicing elit</div>
|
|
162
|
+
<div class="flex items-center justify-end gap-4 pt-4">
|
|
163
|
+
<EUIButton
|
|
164
|
+
type="button"
|
|
165
|
+
size="md"
|
|
166
|
+
color="white"
|
|
167
|
+
:loading="isLoading"
|
|
168
|
+
@click="resetFilters()"
|
|
169
|
+
>Reset</EUIButton
|
|
170
|
+
>
|
|
171
|
+
<EUIButton
|
|
172
|
+
type="button"
|
|
173
|
+
size="md"
|
|
174
|
+
color="purple"
|
|
175
|
+
:loading="isLoading"
|
|
176
|
+
@click="applyFilter()"
|
|
177
|
+
>Apply</EUIButton
|
|
178
|
+
>
|
|
179
|
+
</div>
|
|
180
|
+
</div>
|
|
181
|
+
</EUIPopover>
|
|
182
|
+
</div>
|
|
183
|
+
</div>
|
|
184
|
+
|
|
185
|
+
<div
|
|
186
|
+
class="flex items-center justify-between w-full max-w-2xl gap-4 p-2 mx-auto border rounded-lg h-max"
|
|
187
|
+
>
|
|
188
|
+
<div class="text-base font-semibold leading-loose text-gray-900">
|
|
189
|
+
Popover Hover Method
|
|
190
|
+
</div>
|
|
191
|
+
|
|
192
|
+
<div class="inline-flex items-center justify-end flex-none gap-4">
|
|
193
|
+
<EUIPopover
|
|
194
|
+
trigger="hover"
|
|
195
|
+
placement="bottom-end"
|
|
196
|
+
:hover-hide-delay="150"
|
|
197
|
+
className="max-w-80 min-w-80"
|
|
198
|
+
customButton="capitalize box-border border-none inline-flex flex-row gap-x-2 items-center active:scale-[.97] active:shadow-md transition duration-150 ease-in-out active:translate-y-0.5 rounded-lg bg-white hover:bg-gray-100 active:bg-gray-50 text-black cursor-pointer active:shadow-white/50 active:bg-transparent text-base font-semibold p-2"
|
|
199
|
+
>
|
|
200
|
+
<template #referenceButton>
|
|
201
|
+
<div class="relative">
|
|
202
|
+
<FunnelIcon class="text-current size-6" />
|
|
203
|
+
<div
|
|
204
|
+
class="absolute bg-purple-600 border-2 border-white -top-1 -right-1 rounded-3xl size-3"
|
|
205
|
+
/>
|
|
206
|
+
</div>
|
|
207
|
+
</template>
|
|
208
|
+
<div
|
|
209
|
+
class="block p-6 bg-white rounded-lg shadow-lg me-2 ring-1 ring-gray-100 ring-opacity-10"
|
|
210
|
+
>
|
|
211
|
+
<div>
|
|
212
|
+
Lorem ipsum dolor sit amet consectetur adipisicing elit. Ex
|
|
213
|
+
atque sed illo ipsa tenetur dolores minus quis, impedit aliquam
|
|
214
|
+
magni. Animi laborum tenetur culpa aperiam porro nihil eius
|
|
215
|
+
soluta asperiores.
|
|
216
|
+
</div>
|
|
217
|
+
|
|
218
|
+
<div class="flex items-center justify-end gap-4 pt-4">
|
|
219
|
+
<EUIButton
|
|
220
|
+
type="button"
|
|
221
|
+
size="md"
|
|
222
|
+
color="white"
|
|
223
|
+
:loading="isLoading"
|
|
224
|
+
@click="resetFilters()"
|
|
225
|
+
>Reset</EUIButton
|
|
226
|
+
>
|
|
227
|
+
<EUIButton
|
|
228
|
+
type="button"
|
|
229
|
+
size="md"
|
|
230
|
+
color="purple"
|
|
231
|
+
:loading="isLoading"
|
|
232
|
+
@click="applyFilter()"
|
|
233
|
+
>Apply</EUIButton
|
|
234
|
+
>
|
|
235
|
+
</div>
|
|
236
|
+
</div>
|
|
237
|
+
</EUIPopover>
|
|
238
|
+
</div>
|
|
239
|
+
</div>
|
|
240
|
+
|
|
241
|
+
<div
|
|
242
|
+
class="flex items-center justify-between w-full max-w-2xl gap-4 p-2 mx-auto border rounded-lg h-max"
|
|
243
|
+
>
|
|
244
|
+
<div class="text-base font-semibold leading-loose text-gray-900">
|
|
245
|
+
Popover Default Open
|
|
246
|
+
</div>
|
|
247
|
+
|
|
248
|
+
<div class="inline-flex items-center justify-end flex-none gap-4">
|
|
249
|
+
<EUIPopover
|
|
250
|
+
v-model:visible="isInitiallyOpen"
|
|
251
|
+
placement="bottom-end"
|
|
252
|
+
:hover-hide-delay="150"
|
|
253
|
+
className="max-w-80 min-w-80"
|
|
254
|
+
customButton="capitalize box-border border-none inline-flex flex-row gap-x-2 items-center active:scale-[.97] active:shadow-md transition duration-150 ease-in-out active:translate-y-0.5 rounded-lg bg-white hover:bg-gray-100 active:bg-gray-50 text-black cursor-pointer active:shadow-white/50 active:bg-transparent text-base font-semibold p-2"
|
|
255
|
+
>
|
|
256
|
+
<template #referenceButton>
|
|
257
|
+
<div class="relative">
|
|
258
|
+
<FunnelIcon class="text-current size-6" />
|
|
259
|
+
<div
|
|
260
|
+
class="absolute bg-purple-600 border-2 border-white -top-1 -right-1 rounded-3xl size-3"
|
|
261
|
+
/>
|
|
262
|
+
</div>
|
|
263
|
+
</template>
|
|
264
|
+
<div
|
|
265
|
+
class="block p-6 bg-white rounded-lg shadow-lg me-2 ring-1 ring-gray-100 ring-opacity-10"
|
|
266
|
+
>
|
|
267
|
+
<div>
|
|
268
|
+
Lorem ipsum dolor sit amet consectetur adipisicing elit. Ex
|
|
269
|
+
atque sed illo ipsa tenetur dolores minus quis, impedit aliquam
|
|
270
|
+
magni. Animi laborum tenetur culpa aperiam porro nihil eius
|
|
271
|
+
soluta asperiores.
|
|
272
|
+
</div>
|
|
273
|
+
|
|
274
|
+
<div class="flex items-center justify-end gap-4 pt-4">
|
|
275
|
+
<EUIButton
|
|
276
|
+
type="button"
|
|
277
|
+
size="md"
|
|
278
|
+
color="white"
|
|
279
|
+
:loading="isLoading"
|
|
280
|
+
@click="resetFilters()"
|
|
281
|
+
>Reset</EUIButton
|
|
282
|
+
>
|
|
283
|
+
<EUIButton
|
|
284
|
+
type="button"
|
|
285
|
+
size="md"
|
|
286
|
+
color="purple"
|
|
287
|
+
:loading="isLoading"
|
|
288
|
+
@click="onDefaultClose()"
|
|
289
|
+
>Apply</EUIButton
|
|
290
|
+
>
|
|
291
|
+
</div>
|
|
292
|
+
</div>
|
|
293
|
+
</EUIPopover>
|
|
294
|
+
</div>
|
|
295
|
+
</div>
|
|
296
|
+
|
|
297
|
+
<div
|
|
298
|
+
class="flex items-center justify-between w-full max-w-2xl gap-4 p-2 mx-auto border rounded-lg h-max"
|
|
299
|
+
>
|
|
300
|
+
<div class="text-base font-semibold leading-loose text-gray-900">
|
|
301
|
+
Popover Manual
|
|
302
|
+
</div>
|
|
303
|
+
|
|
304
|
+
<div class="inline-flex items-center justify-end flex-none gap-4">
|
|
305
|
+
<EUIPopover
|
|
306
|
+
trigger="manual"
|
|
307
|
+
v-model:visible="popoverVisible"
|
|
308
|
+
placement="top"
|
|
309
|
+
className="max-w-80 min-w-80"
|
|
310
|
+
customButton="capitalize box-border border-none inline-flex flex-row gap-x-2 items-center active:scale-[.97] active:shadow-md transition duration-150 ease-in-out active:translate-y-0.5 rounded-lg bg-white hover:bg-gray-100 active:bg-gray-50 text-black cursor-pointer active:shadow-white/50 active:bg-transparent text-base font-semibold p-2"
|
|
311
|
+
@click="onPopoverToggle"
|
|
312
|
+
>
|
|
313
|
+
<template #referenceButton>
|
|
314
|
+
<div class="relative">
|
|
315
|
+
<FunnelIcon class="text-current size-6" />
|
|
316
|
+
<div
|
|
317
|
+
class="absolute bg-purple-600 border-2 border-white -top-1 -right-1 rounded-3xl size-3"
|
|
318
|
+
/>
|
|
319
|
+
</div>
|
|
320
|
+
</template>
|
|
321
|
+
<div
|
|
322
|
+
class="block p-6 bg-white rounded-lg shadow-lg me-2 ring-1 ring-gray-100 ring-opacity-10"
|
|
323
|
+
>
|
|
324
|
+
<div>
|
|
325
|
+
lorem ipsum dolor sit amet consectetur adipisicing elit.
|
|
326
|
+
</div>
|
|
327
|
+
<div @click.stop>
|
|
328
|
+
<EUISelect
|
|
329
|
+
search-label="name"
|
|
330
|
+
label="Select Label"
|
|
331
|
+
placeholder="Placeholder"
|
|
332
|
+
:items="datas"
|
|
333
|
+
:multiple="true"
|
|
334
|
+
:multiple-limit="3"
|
|
335
|
+
/>
|
|
336
|
+
</div>
|
|
337
|
+
|
|
338
|
+
<div>lorem ipsum dolor sit amet consectetur adipisicing elit</div>
|
|
339
|
+
|
|
340
|
+
<div class="flex items-center justify-end gap-4 pt-4">
|
|
341
|
+
<EUIButton
|
|
342
|
+
type="button"
|
|
343
|
+
size="md"
|
|
344
|
+
color="white"
|
|
345
|
+
:loading="isLoading"
|
|
346
|
+
@click="resetFilters()"
|
|
347
|
+
>Reset</EUIButton
|
|
348
|
+
>
|
|
349
|
+
<EUIButton
|
|
350
|
+
type="button"
|
|
351
|
+
size="md"
|
|
352
|
+
color="purple"
|
|
353
|
+
:loading="isLoading"
|
|
354
|
+
@click="applyFilter()"
|
|
355
|
+
>Apply</EUIButton
|
|
356
|
+
>
|
|
357
|
+
</div>
|
|
358
|
+
</div>
|
|
359
|
+
</EUIPopover>
|
|
360
|
+
</div>
|
|
361
|
+
</div>
|
|
362
|
+
</div>
|
|
363
|
+
|
|
364
|
+
<div class="mb-10">
|
|
365
|
+
<EUITabOutline
|
|
366
|
+
activeColor="purple"
|
|
367
|
+
size="sm"
|
|
368
|
+
:items="allDays"
|
|
369
|
+
:defaultActive="activeTab"
|
|
370
|
+
@update:activeTabItem="onchangeActiveTab"
|
|
371
|
+
>
|
|
372
|
+
<template v-slot:content="{ data, activeName }">
|
|
373
|
+
<div class="space-y-4">
|
|
374
|
+
<span class="text-red-400">{{ data.name }} - {{ activeName }}</span>
|
|
375
|
+
<p>
|
|
376
|
+
Lorem, ipsum dolor sit amet consectetur adipisicing elit. Sit odio
|
|
377
|
+
quia, obcaecati suscipit, praesentium temporibus, non placeat
|
|
378
|
+
reprehenderit commodi ut adipisci consequatur laboriosam? Est
|
|
379
|
+
perspiciatis vero illo repudiandae quis explicabo.
|
|
380
|
+
</p>
|
|
381
|
+
|
|
382
|
+
<p>
|
|
383
|
+
Lorem, ipsum dolor sit amet consectetur adipisicing elit. Sit odio
|
|
384
|
+
quia, obcaecati suscipit, praesentium temporibus, non placeat
|
|
385
|
+
reprehenderit commodi ut adipisci consequatur laboriosam? Est
|
|
386
|
+
perspiciatis vero illo repudiandae quis explicabo.
|
|
387
|
+
</p>
|
|
388
|
+
</div>
|
|
389
|
+
</template>
|
|
390
|
+
</EUITabOutline>
|
|
391
|
+
</div>
|
|
392
|
+
|
|
393
|
+
<div class="p-8 space-x-6 space-y-4">
|
|
394
|
+
<pre class="text-right">{{ activeDays }}--</pre>
|
|
395
|
+
<div class="inline-flex flex-col items-end w-full">
|
|
396
|
+
<EUIButtonGroup
|
|
397
|
+
activeColor="purple"
|
|
398
|
+
size="sm"
|
|
399
|
+
:rounded="false"
|
|
400
|
+
:items="allDays"
|
|
401
|
+
:defaultActive="activeDays"
|
|
402
|
+
@update:activeButton="onchangeDays"
|
|
403
|
+
>
|
|
404
|
+
<template #before>
|
|
405
|
+
<div
|
|
406
|
+
class="px-2 text-sm font-normal leading-tight tracking-wide text-black me-4 font-inter"
|
|
407
|
+
>
|
|
408
|
+
Renewals due in
|
|
409
|
+
</div>
|
|
410
|
+
</template>
|
|
411
|
+
<template #default="{ data, activeName }">
|
|
412
|
+
{{ data.name }}
|
|
413
|
+
<small
|
|
414
|
+
:class="activeName === data.name ? 'opacity-100' : 'opacity-75'"
|
|
415
|
+
>({{ data.count }})</small
|
|
416
|
+
>
|
|
417
|
+
</template>
|
|
418
|
+
</EUIButtonGroup>
|
|
419
|
+
</div>
|
|
420
|
+
|
|
421
|
+
<div class="inline-flex items-center justify-end w-full">
|
|
422
|
+
<EUISearchExpand
|
|
423
|
+
v-model:model-value="searchInput"
|
|
424
|
+
:search-sync="showSearch"
|
|
425
|
+
@input="seachStudent($event?.target?.value)"
|
|
426
|
+
@update:modelValue="seachStudent($event?.target?.value)"
|
|
427
|
+
/>
|
|
428
|
+
</div>
|
|
429
|
+
</div>
|
|
430
|
+
|
|
431
|
+
<div class="grid gap-4 sm:grid-cols-2 place-items-start">
|
|
432
|
+
<div
|
|
433
|
+
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"
|
|
434
|
+
>
|
|
435
|
+
<span
|
|
436
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
437
|
+
>
|
|
438
|
+
Name: Alert
|
|
439
|
+
</span>
|
|
440
|
+
<pre
|
|
441
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
442
|
+
><code><EUIInput label="Firstname" placeholder="Enter your name" /></code></pre>
|
|
443
|
+
|
|
444
|
+
<div class="space-y-4">
|
|
445
|
+
<EUIAlerts
|
|
446
|
+
alert-type="Success"
|
|
447
|
+
heading="Deactivate account"
|
|
448
|
+
textMessage="Are you sure you want to deactivate your account? All of your data will be permanently removed from our servers forever. This action cannot be undone."
|
|
449
|
+
/>
|
|
450
|
+
|
|
451
|
+
<EUIAlerts
|
|
452
|
+
alert-type="Warning"
|
|
453
|
+
heading="Send Icon here"
|
|
454
|
+
:alertIcon="ExclamationTriangleIcon"
|
|
455
|
+
>
|
|
456
|
+
<template #xclose>
|
|
457
|
+
<a
|
|
458
|
+
href="#"
|
|
459
|
+
class="text-sm font-medium text-yellow-700 whitespace-nowrap hover:text-yellow-600"
|
|
460
|
+
>
|
|
461
|
+
Go to Page
|
|
462
|
+
<span aria-hidden="true"> →</span>
|
|
463
|
+
</a>
|
|
464
|
+
</template>
|
|
465
|
+
</EUIAlerts>
|
|
466
|
+
|
|
467
|
+
<EUIAlerts alert-type="Success" heading="Title only show here" />
|
|
468
|
+
|
|
469
|
+
<EUIAlerts
|
|
470
|
+
alert-type="Warning"
|
|
471
|
+
heading="Send Icon here"
|
|
472
|
+
:icon="ExclamationTriangleIcon"
|
|
473
|
+
/>
|
|
474
|
+
|
|
475
|
+
<EUIAlerts
|
|
476
|
+
alert-type="Default"
|
|
477
|
+
heading="Close Icon Boolean enabled"
|
|
478
|
+
close-icon
|
|
479
|
+
/>
|
|
480
|
+
|
|
481
|
+
<EUIAlerts
|
|
482
|
+
alert-type="Error"
|
|
483
|
+
heading="Deactivate account"
|
|
484
|
+
textMessage="Are you sure you want to deactivate your account? All of your data will be permanently removed from our servers forever. This action cannot be undone."
|
|
485
|
+
:showAlert="showAlert"
|
|
486
|
+
:close-icon="true"
|
|
487
|
+
@update:showAlert="showAlert = $event"
|
|
488
|
+
/>
|
|
489
|
+
|
|
490
|
+
<EUIAlerts
|
|
491
|
+
alert-type="Warning"
|
|
492
|
+
heading="Deactivate account"
|
|
493
|
+
textMessage="Are you sure you want to deactivate your account? All of your data will be permanently removed from our servers forever. This action cannot be undone."
|
|
494
|
+
:showAlert="showAlert"
|
|
495
|
+
close-icon
|
|
496
|
+
action-items
|
|
497
|
+
@update:showAlert="showAlert = $event"
|
|
498
|
+
@alertAction="onClickAlert"
|
|
499
|
+
@alertDismiss="showAlert = false"
|
|
500
|
+
/>
|
|
501
|
+
|
|
502
|
+
<EUIAlerts
|
|
503
|
+
alert-type="Warning"
|
|
504
|
+
:showAlert="showAlert"
|
|
505
|
+
@update:showAlert="showAlert = $event"
|
|
506
|
+
>
|
|
507
|
+
<template #icon>
|
|
508
|
+
<ExclamationTriangleIcon
|
|
509
|
+
class="text-current size-4"
|
|
510
|
+
aria-hidden="true"
|
|
511
|
+
/>
|
|
512
|
+
</template>
|
|
513
|
+
<template #title>Use Template here</template>
|
|
514
|
+
<template #content
|
|
515
|
+
>Are you sure you want to deactivate your account? All of your
|
|
516
|
+
data will be permanently removed from our servers forever. This
|
|
517
|
+
action cannot be undone.</template
|
|
518
|
+
>
|
|
519
|
+
|
|
520
|
+
<template #actionButtons>
|
|
521
|
+
<div class="pt-4">
|
|
522
|
+
<button
|
|
523
|
+
type="button"
|
|
524
|
+
class="rounded-md px-3 py-1.5 text-sm font-medium bg-black text-white focus:outline-none focus:ring-2 focus:ring-offset-2"
|
|
525
|
+
>
|
|
526
|
+
View status
|
|
527
|
+
</button>
|
|
528
|
+
<button
|
|
529
|
+
type="button"
|
|
530
|
+
class="ml-3 rounded-md px-3 py-1.5 bg-white text-sm font-medium focus:outline-none focus:ring-2 focus:ring-offset-2"
|
|
531
|
+
>
|
|
532
|
+
Dismiss
|
|
533
|
+
</button>
|
|
534
|
+
</div>
|
|
535
|
+
</template>
|
|
536
|
+
</EUIAlerts>
|
|
537
|
+
</div>
|
|
538
|
+
</div>
|
|
539
|
+
|
|
540
|
+
<div
|
|
541
|
+
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"
|
|
542
|
+
>
|
|
543
|
+
<span
|
|
544
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
545
|
+
>
|
|
546
|
+
Name: Input
|
|
547
|
+
</span>
|
|
548
|
+
<pre
|
|
549
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
550
|
+
><code><EUIInput label="Firstname" placeholder="Enter your name" /></code></pre>
|
|
551
|
+
|
|
552
|
+
<div class="grid grid-cols-3 gap-4 pb-6 mb-4 border-b">
|
|
553
|
+
<EUIInput
|
|
554
|
+
v-model.trim="form.input"
|
|
555
|
+
name="addnote"
|
|
556
|
+
id="addnote"
|
|
557
|
+
placeholder="Note here..."
|
|
558
|
+
/>
|
|
559
|
+
|
|
560
|
+
<EUIInput
|
|
561
|
+
v-model.trim="form.input"
|
|
562
|
+
name="addnote"
|
|
563
|
+
id="addnote"
|
|
564
|
+
label="Add Note"
|
|
565
|
+
placeholder="Note here..."
|
|
566
|
+
/>
|
|
567
|
+
<EUIInput
|
|
568
|
+
v-model.trim="form.input"
|
|
569
|
+
name="addnote"
|
|
570
|
+
id="addnote"
|
|
571
|
+
label="Add Note"
|
|
572
|
+
placeholder="Note here..."
|
|
573
|
+
rounded
|
|
574
|
+
:class-name="['bg-gray-100/50']"
|
|
575
|
+
/>
|
|
576
|
+
<EUIInput
|
|
577
|
+
v-model.trim="form.input"
|
|
578
|
+
name="addnote"
|
|
579
|
+
id="addnote"
|
|
580
|
+
label="Add Note"
|
|
581
|
+
placeholder="Note type here..."
|
|
582
|
+
:icon="MagnifyingGlassIcon"
|
|
583
|
+
icon-type="startIcon"
|
|
584
|
+
/>
|
|
585
|
+
|
|
586
|
+
<EUIInput
|
|
587
|
+
v-model.trim="form.input"
|
|
588
|
+
name="addnote"
|
|
589
|
+
id="addnote"
|
|
590
|
+
label="Add Note"
|
|
591
|
+
placeholder="Note type here..."
|
|
592
|
+
:icon="MagnifyingGlassIcon"
|
|
593
|
+
icon-type="endIcon"
|
|
594
|
+
/>
|
|
595
|
+
|
|
596
|
+
<EUIInput
|
|
597
|
+
v-model.trim="form.input"
|
|
598
|
+
name="addnote"
|
|
599
|
+
id="addnote"
|
|
600
|
+
type="search"
|
|
601
|
+
placeholder="Search here..."
|
|
602
|
+
rounded
|
|
603
|
+
:class-name="['bg-gray-100/50 rounded-3xl']"
|
|
604
|
+
:icon="MagnifyingGlassIcon"
|
|
605
|
+
icon-type="startIcon"
|
|
606
|
+
/>
|
|
607
|
+
|
|
608
|
+
<EUIInput
|
|
609
|
+
v-model.trim="form.input"
|
|
610
|
+
name="addnote"
|
|
611
|
+
id="addnote"
|
|
612
|
+
label="Add note disabled"
|
|
613
|
+
placeholder="Note type here..."
|
|
614
|
+
:icon="MagnifyingGlassIcon"
|
|
615
|
+
icon-type="endIcon"
|
|
616
|
+
disabled
|
|
617
|
+
/>
|
|
618
|
+
|
|
619
|
+
<EUIInput
|
|
620
|
+
v-model.trim="form.input"
|
|
621
|
+
name="addnote"
|
|
622
|
+
id="addnote"
|
|
623
|
+
label="Add note readonly"
|
|
624
|
+
placeholder="Note type here..."
|
|
625
|
+
:icon="MagnifyingGlassIcon"
|
|
626
|
+
icon-type="endIcon"
|
|
627
|
+
readonly
|
|
628
|
+
/>
|
|
629
|
+
</div>
|
|
630
|
+
|
|
631
|
+
<div class="grid grid-cols-3 gap-4">
|
|
632
|
+
<EUIInput
|
|
633
|
+
v-model.trim="form.input"
|
|
634
|
+
label="full name"
|
|
635
|
+
placeholder="Enter your name"
|
|
636
|
+
inputFilled
|
|
637
|
+
/>
|
|
638
|
+
|
|
639
|
+
<EUIInput
|
|
640
|
+
v-model.trim="form.input"
|
|
641
|
+
name="addname"
|
|
642
|
+
id="addname"
|
|
643
|
+
label="Full name"
|
|
644
|
+
placeholder="Enter your name"
|
|
645
|
+
:icon="MagnifyingGlassIcon"
|
|
646
|
+
icon-type="startIcon"
|
|
647
|
+
inputFilled
|
|
648
|
+
/>
|
|
649
|
+
|
|
650
|
+
<EUIInput
|
|
651
|
+
v-model.trim="form.input"
|
|
652
|
+
name="addemail"
|
|
653
|
+
id="addemail"
|
|
654
|
+
label="Email address"
|
|
655
|
+
placeholder="Enter your email"
|
|
656
|
+
:icon="MagnifyingGlassIcon"
|
|
657
|
+
icon-type="endIcon"
|
|
658
|
+
inputFilled
|
|
659
|
+
/>
|
|
660
|
+
|
|
661
|
+
<EUIInput
|
|
662
|
+
v-model.trim="form.input"
|
|
663
|
+
name="search"
|
|
664
|
+
id="search"
|
|
665
|
+
type="search"
|
|
666
|
+
label="Course Search"
|
|
667
|
+
placeholder="Search here..."
|
|
668
|
+
:icon="MagnifyingGlassIcon"
|
|
669
|
+
icon-type="startIcon"
|
|
670
|
+
inputFilled
|
|
671
|
+
/>
|
|
672
|
+
|
|
673
|
+
<EUIInput
|
|
674
|
+
v-model.trim="form.input"
|
|
675
|
+
name="search"
|
|
676
|
+
id="search"
|
|
677
|
+
type="search"
|
|
678
|
+
label="Course search disabled"
|
|
679
|
+
placeholder="Search here..."
|
|
680
|
+
:icon="MagnifyingGlassIcon"
|
|
681
|
+
icon-type="startIcon"
|
|
682
|
+
inputFilled
|
|
683
|
+
disabled
|
|
684
|
+
/>
|
|
685
|
+
|
|
686
|
+
<EUIInput
|
|
687
|
+
v-model.trim="form.input"
|
|
688
|
+
name="search"
|
|
689
|
+
id="search"
|
|
690
|
+
type="search"
|
|
691
|
+
label="Course Search readonly"
|
|
692
|
+
placeholder="Search here..."
|
|
693
|
+
:icon="MagnifyingGlassIcon"
|
|
694
|
+
icon-type="startIcon"
|
|
695
|
+
inputFilled
|
|
696
|
+
readonly
|
|
697
|
+
/>
|
|
698
|
+
</div>
|
|
699
|
+
</div>
|
|
700
|
+
|
|
701
|
+
<div
|
|
702
|
+
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"
|
|
703
|
+
>
|
|
704
|
+
<span
|
|
705
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
706
|
+
>
|
|
707
|
+
Name: Telephone
|
|
708
|
+
</span>
|
|
709
|
+
<pre
|
|
710
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
711
|
+
>
|
|
712
|
+
<code><EUITelephone name="contactNumber" label="Contact Number" placeholder="Your mobile number" tag="Mobile
|
|
713
|
+
input required" tag-color="Error" /></code>
|
|
714
|
+
</pre>
|
|
715
|
+
|
|
716
|
+
<div class="grid grid-cols-2 gap-6">
|
|
717
|
+
<EUITelephone
|
|
718
|
+
v-model="mobileNumber"
|
|
719
|
+
name="contactNumber"
|
|
720
|
+
label="Contact Number"
|
|
721
|
+
placeholder="Your mobile number"
|
|
722
|
+
tag="Mobile input required"
|
|
723
|
+
tag-color="Error"
|
|
724
|
+
:errors="{ name: 'Enter a valid phone number' }"
|
|
725
|
+
icon-type="startIcon"
|
|
726
|
+
:icon="DevicePhoneMobileIcon"
|
|
727
|
+
inputFilled
|
|
728
|
+
/>
|
|
729
|
+
|
|
730
|
+
<EUITelephone
|
|
731
|
+
v-model="mobileNumber"
|
|
732
|
+
name="contactNumber"
|
|
733
|
+
label="Contact Number"
|
|
734
|
+
placeholder="Your mobile number"
|
|
735
|
+
tag="Mobile input required"
|
|
736
|
+
tag-color="Error"
|
|
737
|
+
:errors="{ name: 'Enter a valid phone number' }"
|
|
738
|
+
icon-type="startIcon"
|
|
739
|
+
:icon="DevicePhoneMobileIcon"
|
|
740
|
+
required
|
|
741
|
+
/>
|
|
742
|
+
</div>
|
|
743
|
+
</div>
|
|
744
|
+
|
|
745
|
+
<div
|
|
746
|
+
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"
|
|
747
|
+
>
|
|
748
|
+
<span
|
|
749
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
750
|
+
>
|
|
751
|
+
Name: Select Multiple
|
|
752
|
+
</span>
|
|
753
|
+
<pre
|
|
754
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
755
|
+
>
|
|
756
|
+
<code><EUISelect label="Firstname" placeholder="Enter your name" :items="datas" /></code>
|
|
757
|
+
</pre>
|
|
758
|
+
<div class="grid grid-cols-3 gap-4">
|
|
759
|
+
<EUISelect
|
|
760
|
+
v-model="checkboxData"
|
|
761
|
+
search-label="name"
|
|
762
|
+
placeholder="Placeholder"
|
|
763
|
+
:items="datas"
|
|
764
|
+
:selected-count="true"
|
|
765
|
+
selectedCountLabel="Checkbox"
|
|
766
|
+
:multiple="true"
|
|
767
|
+
:is-checkbox="true"
|
|
768
|
+
/>
|
|
769
|
+
|
|
770
|
+
<EUISelect
|
|
771
|
+
search-label="name"
|
|
772
|
+
label="Select Label"
|
|
773
|
+
placeholder="Placeholder"
|
|
774
|
+
:items="datas"
|
|
775
|
+
:multiple="true"
|
|
776
|
+
:multiple-limit="3"
|
|
777
|
+
/>
|
|
778
|
+
<EUISelect placeholder="Enter your name" :items="datas" />
|
|
779
|
+
<EUISelect
|
|
780
|
+
:is-use-custom-select="true"
|
|
781
|
+
:items="datas"
|
|
782
|
+
name="customselect"
|
|
783
|
+
placeholder="Select multiple"
|
|
784
|
+
:multiple="true"
|
|
785
|
+
customWidth="380px"
|
|
786
|
+
:custom-offset="[0, 10]"
|
|
787
|
+
/>
|
|
788
|
+
</div>
|
|
789
|
+
|
|
790
|
+
<div class="grid grid-cols-3 gap-4">
|
|
791
|
+
<EUISelect
|
|
792
|
+
search-label="name"
|
|
793
|
+
label="Multiple Select width Limiting"
|
|
794
|
+
placeholder="Enter your name"
|
|
795
|
+
:items="datas"
|
|
796
|
+
:multiple="true"
|
|
797
|
+
:multiple-limit="3"
|
|
798
|
+
inputFilled
|
|
799
|
+
/>
|
|
800
|
+
<EUISelect placeholder="Enter your name" :items="datas" inputFilled />
|
|
801
|
+
<EUISelect
|
|
802
|
+
:is-use-custom-select="true"
|
|
803
|
+
:items="datas"
|
|
804
|
+
name="customselect"
|
|
805
|
+
placeholder="Select multiple"
|
|
806
|
+
:multiple="true"
|
|
807
|
+
customWidth="380px"
|
|
808
|
+
:custom-offset="[-20, 10]"
|
|
809
|
+
inputFilled
|
|
810
|
+
/>
|
|
811
|
+
<EUISelectSearch />
|
|
812
|
+
</div>
|
|
813
|
+
</div>
|
|
814
|
+
|
|
815
|
+
<div
|
|
816
|
+
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 z-[calc(infinity)]"
|
|
817
|
+
>
|
|
818
|
+
<span
|
|
819
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
820
|
+
>
|
|
821
|
+
Name: Multi Dropdown
|
|
822
|
+
</span>
|
|
823
|
+
<pre
|
|
824
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
825
|
+
><code><EUIMultiDropdown title="dropdown" :menu-items="menubar" /></code>
|
|
826
|
+
</pre>
|
|
827
|
+
<div class="inline-flex items-center gap-4">
|
|
828
|
+
<EUIMultiDropdown title="dropdown" :menu-items="menubar" />
|
|
829
|
+
|
|
830
|
+
<EUIMultiDropdown
|
|
831
|
+
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"
|
|
832
|
+
@subMenuItem="handleSubMenuItem"
|
|
833
|
+
@menuItem="handleMenuItem"
|
|
834
|
+
@action-item="addAction"
|
|
835
|
+
>
|
|
836
|
+
<template #dropdownName="{ open }">
|
|
837
|
+
<span>My Students</span>
|
|
838
|
+
<ChevronDownStroke
|
|
839
|
+
:class="open ? 'text-gray-900 rotate-180' : 'text-gray-500'"
|
|
840
|
+
class="transition duration-100 ease-in-out transform rotate-0 size-6 group-hover:text-opacity-80"
|
|
841
|
+
aria-hidden="true"
|
|
842
|
+
/>
|
|
843
|
+
</template>
|
|
844
|
+
<template #actionName> + Add Custom Filter </template>
|
|
845
|
+
</EUIMultiDropdown>
|
|
846
|
+
</div>
|
|
847
|
+
</div>
|
|
848
|
+
|
|
849
|
+
<div
|
|
850
|
+
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"
|
|
851
|
+
>
|
|
852
|
+
<span
|
|
853
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
854
|
+
>
|
|
855
|
+
Name: Checkbox
|
|
856
|
+
</span>
|
|
857
|
+
<pre
|
|
858
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
859
|
+
>
|
|
860
|
+
<code><EUICheckbox label="Use checkbox" /></code>
|
|
861
|
+
</pre>
|
|
862
|
+
<EUICheckbox label="Use checkbox" />
|
|
863
|
+
</div>
|
|
864
|
+
|
|
865
|
+
<div
|
|
866
|
+
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"
|
|
867
|
+
>
|
|
868
|
+
<span
|
|
869
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
870
|
+
>
|
|
871
|
+
Name: Tabs
|
|
872
|
+
</span>
|
|
873
|
+
<pre
|
|
874
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
875
|
+
>
|
|
876
|
+
<code><EUITabs :tabs="tabData" :defaultActiveIndex="0" /></code>
|
|
877
|
+
</pre>
|
|
878
|
+
<EUITabs tab-style="border" :tabs="tabData" :defaultActiveIndex="0">
|
|
879
|
+
<template #title="{ tab }">{{ tab.name }}</template>
|
|
880
|
+
<template #content="{ activeTab }">
|
|
881
|
+
{{ activeTab }}
|
|
882
|
+
</template>
|
|
883
|
+
</EUITabs>
|
|
884
|
+
|
|
885
|
+
<div class="bg-white">
|
|
886
|
+
<EUITabs tab-style="design" :tabs="tabData" :defaultActiveIndex="0">
|
|
887
|
+
<template #title="{ tab, tabIndex, activeTab }">
|
|
888
|
+
{{ tab.name }}
|
|
889
|
+
<span
|
|
890
|
+
class="rounded-3xl px-1.5 text-xss font-medium uppercase leading-none inline-flex items-center h-4 transition-colors duration-100 ease-in-out"
|
|
891
|
+
:class="[
|
|
892
|
+
tabIndex === activeTab
|
|
893
|
+
? 'text-gray-100 bg-gray-600'
|
|
894
|
+
: 'bg-gray-300 text-gray-600',
|
|
895
|
+
]"
|
|
896
|
+
>{{ 28399 }}</span
|
|
897
|
+
>
|
|
898
|
+
</template>
|
|
899
|
+
<template #content="{ activeTab }">
|
|
900
|
+
<div class="p-2 text-sm">
|
|
901
|
+
{{ activeTab }}
|
|
902
|
+
</div>
|
|
903
|
+
</template>
|
|
904
|
+
</EUITabs>
|
|
905
|
+
</div>
|
|
906
|
+
</div>
|
|
907
|
+
|
|
908
|
+
<div
|
|
909
|
+
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"
|
|
910
|
+
>
|
|
911
|
+
<span
|
|
912
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
913
|
+
>
|
|
914
|
+
Name: Textarea
|
|
915
|
+
</span>
|
|
916
|
+
<pre
|
|
917
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
918
|
+
>
|
|
919
|
+
<code><EUITextarea label="Office Address" placeholder="Enter offices and location details" /></code>
|
|
920
|
+
</pre>
|
|
921
|
+
<EUITextarea
|
|
922
|
+
placeholder="Enter offices and location details"
|
|
923
|
+
label="Office Address"
|
|
924
|
+
/>
|
|
925
|
+
</div>
|
|
926
|
+
|
|
927
|
+
<div
|
|
928
|
+
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"
|
|
929
|
+
>
|
|
930
|
+
<span
|
|
931
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
932
|
+
>
|
|
933
|
+
Name: Tag
|
|
934
|
+
</span>
|
|
935
|
+
<pre
|
|
936
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
937
|
+
>
|
|
938
|
+
<code><EUITag closeIcon :model-value="tagModal" @remove="handleClose" /></code>
|
|
939
|
+
</pre>
|
|
940
|
+
<EUITag closeIcon :model-value="tagModal" @remove="handleClose"
|
|
941
|
+
>Tag Name</EUITag
|
|
942
|
+
>
|
|
943
|
+
</div>
|
|
944
|
+
|
|
945
|
+
<div
|
|
946
|
+
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"
|
|
947
|
+
>
|
|
948
|
+
<span
|
|
949
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
950
|
+
>
|
|
951
|
+
Name: Switch Toggle
|
|
952
|
+
</span>
|
|
953
|
+
<pre
|
|
954
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
955
|
+
>
|
|
956
|
+
<code><EUIToggle label="toggle switch" /></code>
|
|
957
|
+
</pre>
|
|
958
|
+
<EUIToggle label="toggle switch" />
|
|
959
|
+
</div>
|
|
960
|
+
|
|
961
|
+
<div
|
|
962
|
+
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"
|
|
963
|
+
>
|
|
964
|
+
<span
|
|
965
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
966
|
+
>
|
|
967
|
+
Name: Loader
|
|
968
|
+
</span>
|
|
969
|
+
<pre
|
|
970
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
971
|
+
>
|
|
972
|
+
<code><EUILoader /></code>
|
|
973
|
+
</pre>
|
|
974
|
+
<EUILoader />
|
|
975
|
+
</div>
|
|
976
|
+
|
|
977
|
+
<div
|
|
978
|
+
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"
|
|
979
|
+
>
|
|
980
|
+
<span
|
|
981
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
982
|
+
>
|
|
983
|
+
Name: Avatar
|
|
984
|
+
</span>
|
|
985
|
+
<pre
|
|
986
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
987
|
+
>
|
|
988
|
+
<code><EUIAvatar image-url="https://tinyurl.com/43e5fxh9" :profile="true" full-name="JohnCena"
|
|
989
|
+
:show-status="true" status="Online" size="sm"><template #name>John Cena</template> <template
|
|
990
|
+
#designation>Actor</template> <EUIAvatar/></code>
|
|
991
|
+
</pre>
|
|
992
|
+
<EUIAvatar
|
|
993
|
+
image-url="https://tinyurl.com/43e5fxh9"
|
|
994
|
+
:profile="true"
|
|
995
|
+
full-name="JohnCena"
|
|
996
|
+
:show-status="true"
|
|
997
|
+
status="Online"
|
|
998
|
+
size="sm"
|
|
999
|
+
>
|
|
1000
|
+
<template #name>John Cena</template>
|
|
1001
|
+
<template #designation>Actor</template>
|
|
1002
|
+
</EUIAvatar>
|
|
1003
|
+
</div>
|
|
1004
|
+
|
|
1005
|
+
<div
|
|
1006
|
+
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"
|
|
1007
|
+
>
|
|
1008
|
+
<span
|
|
1009
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
1010
|
+
>
|
|
1011
|
+
Name: Datepicker
|
|
1012
|
+
</span>
|
|
1013
|
+
<pre
|
|
1014
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
1015
|
+
>
|
|
1016
|
+
<code><EUIDatepicker v-model="datepicker" label="Datepicker" placeholder="Select Date here..." /></code>
|
|
1017
|
+
</pre>
|
|
1018
|
+
<EUIDatepicker
|
|
1019
|
+
v-model="datepicker"
|
|
1020
|
+
label="Datepicker"
|
|
1021
|
+
placeholder="Select Date here..."
|
|
1022
|
+
/>
|
|
1023
|
+
</div>
|
|
1024
|
+
|
|
1025
|
+
<div
|
|
1026
|
+
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"
|
|
1027
|
+
>
|
|
1028
|
+
<span
|
|
1029
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
1030
|
+
>
|
|
1031
|
+
Name: Button
|
|
1032
|
+
</span>
|
|
1033
|
+
<pre
|
|
1034
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
1035
|
+
>
|
|
1036
|
+
<code><EUIButton type="button" size="md" color="purple" @click="onClickMethod">Open
|
|
1037
|
+
Modal</EUIButton></code>
|
|
1038
|
+
</pre>
|
|
1039
|
+
|
|
1040
|
+
<div class="space-y-4">
|
|
1041
|
+
<div class="inline-flex flex-row flex-wrap items-center gap-4">
|
|
1042
|
+
<EUIButton type="button" size="xs" color="purple" rounded>
|
|
1043
|
+
XS Button
|
|
1044
|
+
</EUIButton>
|
|
1045
|
+
<EUIButton type="button" size="sm" color="purple" rounded
|
|
1046
|
+
>SM Button</EUIButton
|
|
1047
|
+
>
|
|
1048
|
+
<EUIButton type="button" size="md" color="purple"
|
|
1049
|
+
>MD Button</EUIButton
|
|
1050
|
+
>
|
|
1051
|
+
<EUIButton type="button" size="lg" color="purple"
|
|
1052
|
+
>LG Button</EUIButton
|
|
1053
|
+
>
|
|
1054
|
+
<EUIButton
|
|
1055
|
+
color="primary"
|
|
1056
|
+
rounded
|
|
1057
|
+
size="md"
|
|
1058
|
+
iconType="startIcon"
|
|
1059
|
+
:icon="HomeIcon"
|
|
1060
|
+
>Home</EUIButton
|
|
1061
|
+
>
|
|
1062
|
+
</div>
|
|
1063
|
+
|
|
1064
|
+
<details>
|
|
1065
|
+
<summary class="text-gray-600 cursor-pointer">
|
|
1066
|
+
Primary Gradient
|
|
1067
|
+
</summary>
|
|
1068
|
+
<div class="inline-flex flex-row items-center gap-4">
|
|
1069
|
+
<EUIButton type="button" size="xs" color="primary" rounded>
|
|
1070
|
+
XS Button
|
|
1071
|
+
</EUIButton>
|
|
1072
|
+
<EUIButton type="button" size="sm" color="primary" rounded
|
|
1073
|
+
>SM Button</EUIButton
|
|
1074
|
+
>
|
|
1075
|
+
<EUIButton type="button" size="md" color="primary" rounded
|
|
1076
|
+
>MD Button</EUIButton
|
|
1077
|
+
>
|
|
1078
|
+
<EUIButton type="button" size="lg" color="primary" rounded
|
|
1079
|
+
>LG Button</EUIButton
|
|
1080
|
+
>
|
|
1081
|
+
</div>
|
|
1082
|
+
</details>
|
|
1083
|
+
|
|
1084
|
+
<details>
|
|
1085
|
+
<summary class="text-gray-600 cursor-pointer">white</summary>
|
|
1086
|
+
<div class="inline-flex flex-row items-center gap-4">
|
|
1087
|
+
<EUIButton type="button" size="xs" color="white" rounded>
|
|
1088
|
+
XS Button
|
|
1089
|
+
</EUIButton>
|
|
1090
|
+
<EUIButton type="button" size="sm" color="white" rounded
|
|
1091
|
+
>SM Button</EUIButton
|
|
1092
|
+
>
|
|
1093
|
+
<EUIButton type="button" size="md" color="white"
|
|
1094
|
+
>MD Button</EUIButton
|
|
1095
|
+
>
|
|
1096
|
+
<EUIButton type="button" size="lg" color="white"
|
|
1097
|
+
>LG Button</EUIButton
|
|
1098
|
+
>
|
|
1099
|
+
</div>
|
|
1100
|
+
</details>
|
|
1101
|
+
|
|
1102
|
+
<details>
|
|
1103
|
+
<summary class="text-gray-600 cursor-pointer">Danger</summary>
|
|
1104
|
+
<div class="inline-flex flex-row items-center gap-4">
|
|
1105
|
+
<EUIButton type="button" size="xs" color="danger">
|
|
1106
|
+
XS Button
|
|
1107
|
+
</EUIButton>
|
|
1108
|
+
<EUIButton type="button" size="sm" color="danger"
|
|
1109
|
+
>SM Button</EUIButton
|
|
1110
|
+
>
|
|
1111
|
+
<EUIButton type="button" size="md" color="danger"
|
|
1112
|
+
>MD Button</EUIButton
|
|
1113
|
+
>
|
|
1114
|
+
<EUIButton type="button" size="lg" color="danger"
|
|
1115
|
+
>LG Button</EUIButton
|
|
1116
|
+
>
|
|
1117
|
+
</div>
|
|
1118
|
+
</details>
|
|
1119
|
+
|
|
1120
|
+
<details>
|
|
1121
|
+
<summary class="text-gray-600 cursor-pointer">Success</summary>
|
|
1122
|
+
<div class="inline-flex flex-row items-center gap-4">
|
|
1123
|
+
<EUIButton type="button" size="xs" color="success">
|
|
1124
|
+
XS Button
|
|
1125
|
+
</EUIButton>
|
|
1126
|
+
<EUIButton type="button" size="sm" color="success"
|
|
1127
|
+
>SM Button</EUIButton
|
|
1128
|
+
>
|
|
1129
|
+
<EUIButton type="button" size="md" color="success" rounded
|
|
1130
|
+
>MD Button</EUIButton
|
|
1131
|
+
>
|
|
1132
|
+
<EUIButton type="button" size="lg" color="success" rounded
|
|
1133
|
+
>LG Button</EUIButton
|
|
1134
|
+
>
|
|
1135
|
+
</div>
|
|
1136
|
+
</details>
|
|
1137
|
+
|
|
1138
|
+
<details>
|
|
1139
|
+
<summary class="text-gray-600 cursor-pointer">Black</summary>
|
|
1140
|
+
<div class="inline-flex flex-row items-center gap-4">
|
|
1141
|
+
<EUIButton type="button" size="xs" color="black">
|
|
1142
|
+
XS Button
|
|
1143
|
+
</EUIButton>
|
|
1144
|
+
<EUIButton type="button" size="sm" color="black"
|
|
1145
|
+
>SM Button</EUIButton
|
|
1146
|
+
>
|
|
1147
|
+
<EUIButton type="button" size="md" color="black" rounded
|
|
1148
|
+
>MD Button</EUIButton
|
|
1149
|
+
>
|
|
1150
|
+
<EUIButton type="button" size="lg" color="black" rounded
|
|
1151
|
+
>LG Button</EUIButton
|
|
1152
|
+
>
|
|
1153
|
+
</div>
|
|
1154
|
+
</details>
|
|
1155
|
+
</div>
|
|
1156
|
+
</div>
|
|
1157
|
+
|
|
1158
|
+
<div
|
|
1159
|
+
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"
|
|
1160
|
+
>
|
|
1161
|
+
<span
|
|
1162
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
1163
|
+
>
|
|
1164
|
+
Name: Modal
|
|
1165
|
+
</span>
|
|
1166
|
+
<pre
|
|
1167
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
1168
|
+
>
|
|
1169
|
+
<code>
|
|
1170
|
+
<EUIModal :isVisible="showModal" slim-header @update:isVisible="showModal=$event"
|
|
1171
|
+
@confirm="handleConfirm"> <template #title> Custom Title here</template> <div
|
|
1172
|
+
class="">Lorem, ipsum dolor sit amet consectetur adipisicing elit. Minus quas possimus ea culpa id voluptatum
|
|
1173
|
+
cumque, animi earum sequi, aliquid eius omnis repellendus nihil soluta vitae a temporibus! Perspiciatis,
|
|
1174
|
+
nihil?</div> </EUIModal>
|
|
1175
|
+
</code>
|
|
1176
|
+
</pre>
|
|
1177
|
+
<div class="space-x-4">
|
|
1178
|
+
<EUIButton
|
|
1179
|
+
type="button"
|
|
1180
|
+
size="md"
|
|
1181
|
+
color="primary"
|
|
1182
|
+
rounded
|
|
1183
|
+
@click="showModal = true"
|
|
1184
|
+
>Default Modal</EUIButton
|
|
1185
|
+
>
|
|
1186
|
+
<EUIButton
|
|
1187
|
+
type="button"
|
|
1188
|
+
size="md"
|
|
1189
|
+
color="primary"
|
|
1190
|
+
rounded
|
|
1191
|
+
@click="customModal = true"
|
|
1192
|
+
>Custom Modal
|
|
1193
|
+
</EUIButton>
|
|
1194
|
+
</div>
|
|
1195
|
+
|
|
1196
|
+
<EUIModal
|
|
1197
|
+
:isVisible="showModal"
|
|
1198
|
+
slim-header
|
|
1199
|
+
@update:isVisible="showModal = $event"
|
|
1200
|
+
@confirm="handleConfirm"
|
|
1201
|
+
>
|
|
1202
|
+
<template #title> Custom Title here</template>
|
|
1203
|
+
<div class="">
|
|
1204
|
+
Lorem, ipsum dolor sit amet consectetur adipisicing elit. Minus quas
|
|
1205
|
+
possimus ea culpa id voluptatum cumque, animi earum sequi, aliquid
|
|
1206
|
+
eius omnis repellendus nihil soluta vitae a temporibus!
|
|
1207
|
+
Perspiciatis, nihil?
|
|
1208
|
+
</div>
|
|
1209
|
+
</EUIModal>
|
|
1210
|
+
|
|
1211
|
+
<EUIModal
|
|
1212
|
+
:isVisible="customModal"
|
|
1213
|
+
@update:isVisible="customModal = $event"
|
|
1214
|
+
@confirm="openModal"
|
|
1215
|
+
rounded-class="rounded-3xl"
|
|
1216
|
+
>
|
|
1217
|
+
<template #header>
|
|
1218
|
+
<div
|
|
1219
|
+
class="sticky inset-x-0 top-0 px-6 py-4 text-base font-semibold bg-white border-b"
|
|
1220
|
+
>
|
|
1221
|
+
Custom Header here
|
|
1222
|
+
</div>
|
|
1223
|
+
</template>
|
|
1224
|
+
<template #content>
|
|
1225
|
+
<div
|
|
1226
|
+
class="p-4 max-h-[calc(100svh-10rem)] overflow-y-auto space-y-4"
|
|
1227
|
+
>
|
|
1228
|
+
<div v-for="item in 10" :key="`row-${item}`">
|
|
1229
|
+
Lorem, ipsum dolor sit amet consectetur adipisicing elit. Minus
|
|
1230
|
+
quas possimus ea culpa id voluptatum cumque, animi earum sequi,
|
|
1231
|
+
aliquid eius omnis repellendus nihil soluta vitae a temporibus!
|
|
1232
|
+
Perspiciatis, nihil?
|
|
1233
|
+
</div>
|
|
1234
|
+
</div>
|
|
1235
|
+
</template>
|
|
1236
|
+
<template #footer>
|
|
1237
|
+
<div
|
|
1238
|
+
class="sticky inset-x-0 bottom-0 flex items-center justify-end p-4 bg-white border-t border-gray-200"
|
|
1239
|
+
>
|
|
1240
|
+
<div class="text-base font-semibold">Custom Footer here</div>
|
|
1241
|
+
<button
|
|
1242
|
+
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"
|
|
1243
|
+
@click="customModal = false"
|
|
1244
|
+
>
|
|
1245
|
+
Cancel
|
|
1246
|
+
</button>
|
|
1247
|
+
<button
|
|
1248
|
+
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"
|
|
1249
|
+
>
|
|
1250
|
+
Confirm
|
|
1251
|
+
</button>
|
|
1252
|
+
</div>
|
|
1253
|
+
</template>
|
|
1254
|
+
</EUIModal>
|
|
1255
|
+
</div>
|
|
1256
|
+
|
|
1257
|
+
<div
|
|
1258
|
+
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"
|
|
1259
|
+
>
|
|
1260
|
+
<span
|
|
1261
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
1262
|
+
>
|
|
1263
|
+
Name: Accordion
|
|
1264
|
+
</span>
|
|
1265
|
+
<pre
|
|
1266
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
1267
|
+
>
|
|
1268
|
+
<code><EUIAccordion :datas="accordionData" :defaultOpen="[1]" :collapse="true" /></code>
|
|
1269
|
+
</pre>
|
|
1270
|
+
<EUIAccordion
|
|
1271
|
+
:datas="accordionData"
|
|
1272
|
+
:defaultOpen="[1]"
|
|
1273
|
+
:collapse="true"
|
|
1274
|
+
/>
|
|
1275
|
+
</div>
|
|
1276
|
+
|
|
1277
|
+
<div
|
|
1278
|
+
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"
|
|
1279
|
+
>
|
|
1280
|
+
<span
|
|
1281
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
1282
|
+
>
|
|
1283
|
+
Name: Timeline
|
|
1284
|
+
</span>
|
|
1285
|
+
<pre
|
|
1286
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
1287
|
+
>
|
|
1288
|
+
<code><EUITimeLine :items="timelineData" type="view" /></code>
|
|
1289
|
+
</pre>
|
|
1290
|
+
<EUITimeLine :items="timelineData" type="view" />
|
|
1291
|
+
<EUITimeLine
|
|
1292
|
+
:items="timelineData"
|
|
1293
|
+
type="icon"
|
|
1294
|
+
:icon="ArrowDownCircleIcon"
|
|
1295
|
+
/>
|
|
1296
|
+
<EUITimeLine :items="timelineImage" type="image" :show-more="true" />
|
|
1297
|
+
</div>
|
|
1298
|
+
|
|
1299
|
+
<div
|
|
1300
|
+
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"
|
|
1301
|
+
>
|
|
1302
|
+
<span
|
|
1303
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
1304
|
+
>
|
|
1305
|
+
Name: Stepper Timeline
|
|
1306
|
+
</span>
|
|
1307
|
+
<pre
|
|
1308
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
1309
|
+
>
|
|
1310
|
+
<code><EUIStepperVertical stepStatus="opportunity" /></code>
|
|
1311
|
+
</pre>
|
|
1312
|
+
<EUIStepperTimeline />
|
|
1313
|
+
</div>
|
|
1314
|
+
|
|
1315
|
+
<div
|
|
1316
|
+
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"
|
|
1317
|
+
>
|
|
1318
|
+
<span
|
|
1319
|
+
class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
|
|
1320
|
+
>
|
|
1321
|
+
Name: Dashboard Table
|
|
1322
|
+
</span>
|
|
1323
|
+
<pre
|
|
1324
|
+
class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
|
|
1325
|
+
>
|
|
1326
|
+
<code><EUIDashboardTable :checkable="true"
|
|
1327
|
+
paginated
|
|
1328
|
+
:checked-rows.sync="checkedRows"
|
|
1329
|
+
backend-pagination
|
|
1330
|
+
:per-page="limit"
|
|
1331
|
+
:headers="tableHeaders"
|
|
1332
|
+
:items="tableData"
|
|
1333
|
+
:total="totalCount"
|
|
1334
|
+
:default-sort-direction="defaultSortOrder"
|
|
1335
|
+
default-sort="introducer_details"
|
|
1336
|
+
:current-page="offset"
|
|
1337
|
+
@sort="onSort"
|
|
1338
|
+
@mouseenter="select"
|
|
1339
|
+
@mouseleave=";(selectedIndex = null), (selected = null)" > <template #[`item.introducer_details`]="{ row,
|
|
1340
|
+
rowIndex }">
|
|
1341
|
+
<div class="flex flex-row items-center gap-2">
|
|
1342
|
+
<div
|
|
1343
|
+
class="flex items-center justify-center text-sm font-bold text-gray-900 bg-gray-100 rounded-full size-8"
|
|
1344
|
+
>
|
|
1345
|
+
<img
|
|
1346
|
+
:src="row?.introducer_details?.url"
|
|
1347
|
+
class="size-8 rounded-3xl"
|
|
1348
|
+
alt=""
|
|
1349
|
+
/>
|
|
1350
|
+
</div>
|
|
1351
|
+
<div class="text-sm">{{ row?.introducer_details?.name }}</div>
|
|
1352
|
+
</div>
|
|
1353
|
+
</template>
|
|
1354
|
+
</EUIDashboardTable>
|
|
1355
|
+
</code>
|
|
1356
|
+
</pre>
|
|
1357
|
+
<EUIDashboardTable
|
|
1358
|
+
:checkable="true"
|
|
1359
|
+
paginated
|
|
1360
|
+
:checked-rows.sync="checkedRows"
|
|
1361
|
+
backend-pagination
|
|
1362
|
+
:per-page="limit"
|
|
1363
|
+
:headers="tableHeaders"
|
|
1364
|
+
:items="tableData"
|
|
1365
|
+
:total="totalCount"
|
|
1366
|
+
:default-sort-direction="defaultSortOrder"
|
|
1367
|
+
default-sort="introducer_details"
|
|
1368
|
+
:current-page="offset"
|
|
1369
|
+
@sort="onSort"
|
|
1370
|
+
@mouseenter="select"
|
|
1371
|
+
@mouseleave="(selectedIndex = null), (selected = null)"
|
|
1372
|
+
>
|
|
1373
|
+
<template #[`item.introducer_details`]="{ row, rowIndex }">
|
|
1374
|
+
<div class="flex flex-row items-center gap-2">
|
|
1375
|
+
<div
|
|
1376
|
+
class="flex items-center justify-center text-sm font-bold text-gray-900 bg-gray-100 rounded-full size-8"
|
|
1377
|
+
>
|
|
1378
|
+
<img
|
|
1379
|
+
:src="row?.introducer_details?.url"
|
|
1380
|
+
class="size-8 rounded-3xl"
|
|
1381
|
+
alt=""
|
|
1382
|
+
/>
|
|
1383
|
+
</div>
|
|
1384
|
+
<div class="text-sm">{{ row?.introducer_details?.name }}</div>
|
|
1385
|
+
</div>
|
|
1386
|
+
</template>
|
|
1387
|
+
</EUIDashboardTable>
|
|
1388
|
+
|
|
1389
|
+
<div class="py-4">
|
|
1390
|
+
<EUITable
|
|
1391
|
+
:checkable="true"
|
|
1392
|
+
:table-loading="loading"
|
|
1393
|
+
paginated
|
|
1394
|
+
:checked-rows.sync="checkedRows"
|
|
1395
|
+
backend-pagination
|
|
1396
|
+
:per-page="10"
|
|
1397
|
+
:headers="studentHeader"
|
|
1398
|
+
:items="studentData"
|
|
1399
|
+
:total="studentData.length"
|
|
1400
|
+
:default-sort-direction="defaultSortOrder"
|
|
1401
|
+
default-sort=""
|
|
1402
|
+
:current-page="offset"
|
|
1403
|
+
@changePage="onPageChange"
|
|
1404
|
+
@sort="onSort"
|
|
1405
|
+
@mouseenter="select"
|
|
1406
|
+
@mouseleave="(selectedIndex = null), (selected = null)"
|
|
1407
|
+
>
|
|
1408
|
+
<template #[`item.firstName`]="{ row, rowIndex }">
|
|
1409
|
+
<div class="space-y-0.5">
|
|
1410
|
+
<div class="block text-sm font-medium leading-snug">
|
|
1411
|
+
{{
|
|
1412
|
+
capitalizeText(row?.firstName) +
|
|
1413
|
+
" " +
|
|
1414
|
+
capitalizeText(row?.lastName)
|
|
1415
|
+
}}
|
|
1416
|
+
</div>
|
|
1417
|
+
<div class="text-xs font-medium text-gray-900 leading-[normal]">
|
|
1418
|
+
{{ row?.referenceId }}
|
|
1419
|
+
</div>
|
|
1420
|
+
</div>
|
|
1421
|
+
</template>
|
|
1422
|
+
<template #[`item.activeUser`]="{ row, rowIndex }">
|
|
1423
|
+
{{ row?.activeUser?.user?.firstName }}
|
|
1424
|
+
{{ row?.activeUser?.user?.lastName }}
|
|
1425
|
+
</template>
|
|
1426
|
+
</EUITable>
|
|
1427
|
+
</div>
|
|
1428
|
+
</div>
|
|
1429
|
+
</div>
|
|
1430
|
+
|
|
1431
|
+
<div class="">
|
|
1432
|
+
<pre
|
|
1433
|
+
class="text-[0.5rem] p-2 rounded-lg max-h-72 overflow-y-auto text-red-600 border border-gray-100"
|
|
1434
|
+
>
|
|
1435
|
+
{{ `Total Row:${selectedRows.length}` }}
|
|
1436
|
+
{{ selectedRows.map((x) => x?._id) }}
|
|
1437
|
+
</pre>
|
|
1438
|
+
|
|
1439
|
+
<div class="py-4">
|
|
1440
|
+
<EUITable
|
|
1441
|
+
:checkable="true"
|
|
1442
|
+
:table-loading="loading"
|
|
1443
|
+
paginated
|
|
1444
|
+
v-model:selectedRows.sync="selectedRows"
|
|
1445
|
+
:checked-rows.sync="checkedRows"
|
|
1446
|
+
backend-pagination
|
|
1447
|
+
:per-page="10"
|
|
1448
|
+
:headers="studentHeader"
|
|
1449
|
+
:items="studentData"
|
|
1450
|
+
:total="studentData.length"
|
|
1451
|
+
:default-sort-direction="defaultSortOrder"
|
|
1452
|
+
default-sort=""
|
|
1453
|
+
:current-page="offset"
|
|
1454
|
+
@changePage="onPageChange"
|
|
1455
|
+
@sort="onSort"
|
|
1456
|
+
@mouseenter="select"
|
|
1457
|
+
@mouseleave="(selectedIndex = null), (selected = null)"
|
|
1458
|
+
>
|
|
1459
|
+
<template #[`item.firstName`]="{ row, rowIndex }">
|
|
1460
|
+
<div class="space-y-0.5">
|
|
1461
|
+
<div class="block text-sm font-medium leading-snug">
|
|
1462
|
+
{{
|
|
1463
|
+
capitalizeText(row?.firstName) +
|
|
1464
|
+
" " +
|
|
1465
|
+
capitalizeText(row?.lastName)
|
|
1466
|
+
}}
|
|
1467
|
+
</div>
|
|
1468
|
+
<div class="text-xs font-medium text-gray-900 leading-[normal]">
|
|
1469
|
+
{{ row?.referenceId }}
|
|
1470
|
+
</div>
|
|
1471
|
+
</div>
|
|
1472
|
+
</template>
|
|
1473
|
+
<template #[`item.activeUser`]="{ row, rowIndex }">
|
|
1474
|
+
{{ row?.activeUser?.user?.firstName }}
|
|
1475
|
+
{{ row?.activeUser?.user?.lastName }}
|
|
1476
|
+
</template>
|
|
1477
|
+
</EUITable>
|
|
1478
|
+
</div>
|
|
1479
|
+
</div>
|
|
1480
|
+
<div>
|
|
1481
|
+
<UTableview />
|
|
1482
|
+
<EUIAccordion
|
|
1483
|
+
:datas="accordionData"
|
|
1484
|
+
:defaultOpen="[1]"
|
|
1485
|
+
:collapse="true"
|
|
1486
|
+
accordionStyle="separated"
|
|
1487
|
+
@update:activeItem="handleActiveItem"
|
|
1488
|
+
>
|
|
1489
|
+
<template #title="{ item }">
|
|
1490
|
+
<div>{{ item.title }}</div>
|
|
1491
|
+
</template>
|
|
1492
|
+
<template #right-icon="{ item }">
|
|
1493
|
+
<div
|
|
1494
|
+
:key="item"
|
|
1495
|
+
class="w-10 h-10 bg-red-100 border border-red-500 rounded-full"
|
|
1496
|
+
/>
|
|
1497
|
+
</template>
|
|
1498
|
+
<template #content="{ item }">
|
|
1499
|
+
<div>{{ item.content }}</div>
|
|
1500
|
+
</template>
|
|
1501
|
+
</EUIAccordion>
|
|
1502
|
+
</div>
|
|
1503
|
+
</div>
|
|
1504
|
+
</template>
|
|
1505
|
+
|
|
1506
|
+
<script setup lang="ts">
|
|
1507
|
+
import { computed, reactive, ref } from "vue";
|
|
1508
|
+
import EUIButton from "./button/EUIButton.vue";
|
|
1509
|
+
import EUICheckbox from "./checkbox/EUICheckbox.vue";
|
|
1510
|
+
import EUIInput from "./input/EUIInput.vue";
|
|
1511
|
+
import EUIModal from "./modal/EUIModal.vue";
|
|
1512
|
+
import EUISelect from "./select/EUISelect.vue";
|
|
1513
|
+
import EUITabs from "./tabs/EUITabs.vue";
|
|
1514
|
+
import EUITextarea from "./textArea/EUITextArea.vue";
|
|
1515
|
+
import EUISelectSearch from "./selectSearch/EUISelectSearch.vue";
|
|
1516
|
+
import EUITimeLine from "./timeLine/EUITimeLine.vue";
|
|
1517
|
+
import {
|
|
1518
|
+
ArrowDownCircleIcon,
|
|
1519
|
+
MagnifyingGlassIcon,
|
|
1520
|
+
} from "@heroicons/vue/24/solid";
|
|
1521
|
+
import EUITag from "./tag/EUITag.vue";
|
|
1522
|
+
import EUIToggle from "./toggle/EUIToggle.vue";
|
|
1523
|
+
import EUILoader from "./loader/EUILoader.vue";
|
|
1524
|
+
import EUIAvatar from "./avatar/EUIAvatar.vue";
|
|
1525
|
+
import EUIStepperTimeline from "./stepperTimeline/EUIStepperTimeline.vue";
|
|
1526
|
+
import EUIAccordion from "./accordion/EUIAccordion.vue";
|
|
1527
|
+
import EUITelephone from "./telephone/EUITelephone.vue";
|
|
1528
|
+
import {
|
|
1529
|
+
DevicePhoneMobileIcon,
|
|
1530
|
+
ExclamationTriangleIcon,
|
|
1531
|
+
FunnelIcon,
|
|
1532
|
+
HomeIcon,
|
|
1533
|
+
} from "@heroicons/vue/24/outline";
|
|
1534
|
+
import EUIDatepicker from "./datepicker/EUIDatepicker.vue";
|
|
1535
|
+
import EUIDashboardTable from "./table/EUIDashboardTable.vue";
|
|
1536
|
+
import tabData from "../data/tab";
|
|
1537
|
+
import {
|
|
1538
|
+
studentData,
|
|
1539
|
+
studentHeader,
|
|
1540
|
+
tableData,
|
|
1541
|
+
tableHeaders,
|
|
1542
|
+
} from "../data/table";
|
|
1543
|
+
import EUITable from "./table/EUITable.vue";
|
|
1544
|
+
import { capitalizeText } from "../utils/lodash";
|
|
1545
|
+
import ChevronDownStroke from "../assets/svg/ChevronDownStroke.vue";
|
|
1546
|
+
import EUIMultiDropdown from "./dropdown/EUIMultiDropdown.vue";
|
|
1547
|
+
// import Delete from "./delete.vue";
|
|
1548
|
+
import UTableview from "./table/UTableview.vue";
|
|
1549
|
+
import EUIAlerts from "./alerts/EUIAlerts.vue";
|
|
1550
|
+
import EUIButtonGroup from "./button/EUIButtonGroup.vue";
|
|
1551
|
+
import EUISearchExpand from "./searchexpand/EUISearchExpand.vue";
|
|
1552
|
+
import EUITabOutline from "./tabs/EUITabOutline.vue";
|
|
1553
|
+
import EUIPopover from "./popover/EUIPopover.vue";
|
|
1554
|
+
import EUIStepperHorizontal from "./stepperTimeline/EUIStepperHorizontal.vue";
|
|
1555
|
+
import { debounce } from "lodash";
|
|
1556
|
+
import EUISearchTagSelect from "./searchTagSelect/EUISearchTagSelect.vue";
|
|
1557
|
+
import { countryAll } from "../data/country";
|
|
1558
|
+
import EUINumberInput from "./input/EUINumberInput.vue";
|
|
1559
|
+
|
|
1560
|
+
const checkboxData = ref([]);
|
|
1561
|
+
const businessAreaSel = ref();
|
|
1562
|
+
const popoverSelect = ref();
|
|
1563
|
+
|
|
1564
|
+
const businessArea = ref(["All", "B2B", "B2C", "Accelerator"]);
|
|
1565
|
+
|
|
1566
|
+
const emit = defineEmits(["update:modelValue", "on-select"]);
|
|
1567
|
+
const selectedCity = ref();
|
|
1568
|
+
|
|
1569
|
+
const onSearch = debounce(async (query: string) => query, 350);
|
|
1570
|
+
const onCitySelect = (value: any) => {
|
|
1571
|
+
emit("on-select", value);
|
|
1572
|
+
};
|
|
1573
|
+
|
|
1574
|
+
const clear = (item: any) => {
|
|
1575
|
+
// const currentSelection = props.modelValue;
|
|
1576
|
+
// if (Array.isArray(currentSelection)) {
|
|
1577
|
+
// const updatedSelection = currentSelection.filter(
|
|
1578
|
+
// (selectedItem) => !selectedItem.slug?.includes(item.slug)
|
|
1579
|
+
// );
|
|
1580
|
+
// emit("update:modelValue", updatedSelection);
|
|
1581
|
+
// emit("on-select", updatedSelection);
|
|
1582
|
+
// }
|
|
1583
|
+
};
|
|
1584
|
+
|
|
1585
|
+
// TODO: Popover
|
|
1586
|
+
const isLoading = ref(false);
|
|
1587
|
+
const popoverVisible = ref(false);
|
|
1588
|
+
|
|
1589
|
+
const isInitiallyOpen = ref(true);
|
|
1590
|
+
const onDefaultClose = () => {
|
|
1591
|
+
isInitiallyOpen.value = false;
|
|
1592
|
+
};
|
|
1593
|
+
|
|
1594
|
+
const onPopoverToggle = () => {
|
|
1595
|
+
popoverVisible.value = !popoverVisible.value;
|
|
1596
|
+
};
|
|
1597
|
+
|
|
1598
|
+
const onPopoverHide = () => {
|
|
1599
|
+
popoverVisible.value = false;
|
|
1600
|
+
};
|
|
1601
|
+
|
|
1602
|
+
const applyFilter = () => {
|
|
1603
|
+
onPopoverHide();
|
|
1604
|
+
};
|
|
1605
|
+
|
|
1606
|
+
const resetFilters = () => {};
|
|
1607
|
+
|
|
1608
|
+
const allDays = ref([
|
|
1609
|
+
{ name: "7 days", count: 5 },
|
|
1610
|
+
{ name: "15 days", count: 10 },
|
|
1611
|
+
{ name: "16-30 days", count: 20 },
|
|
1612
|
+
{ name: "31-60 days", count: 121 },
|
|
1613
|
+
{ name: "61-90 days", count: 40 },
|
|
1614
|
+
]);
|
|
1615
|
+
|
|
1616
|
+
const activeDays = ref(allDays.value[0].name);
|
|
1617
|
+
const activeTab = ref(allDays.value[3].name);
|
|
1618
|
+
|
|
1619
|
+
const onchangeActiveTab = (val: any) => {
|
|
1620
|
+
activeTab.value = val.name;
|
|
1621
|
+
};
|
|
1622
|
+
|
|
1623
|
+
const onchangeDays = (val: any) => {
|
|
1624
|
+
activeDays.value = val.name;
|
|
1625
|
+
};
|
|
1626
|
+
|
|
1627
|
+
const searchInput = ref("");
|
|
1628
|
+
const showSearch = ref(false);
|
|
1629
|
+
|
|
1630
|
+
const seachStudent = (e) => {
|
|
1631
|
+
console.log("seachStudent", e);
|
|
1632
|
+
};
|
|
1633
|
+
|
|
1634
|
+
const mobileNumber = ref("+91 8667444951");
|
|
1635
|
+
const datepicker = ref(new Date());
|
|
1636
|
+
const loading = ref(false);
|
|
1637
|
+
|
|
1638
|
+
const inputNumber = ref();
|
|
1639
|
+
const inputNumberPoints = ref()
|
|
1640
|
+
|
|
1641
|
+
const form = reactive({
|
|
1642
|
+
input: "Lorem ipsum dolor sit",
|
|
1643
|
+
mobile: "+918667444951",
|
|
1644
|
+
});
|
|
1645
|
+
|
|
1646
|
+
const showAlert = ref(true);
|
|
1647
|
+
const onClickAlert = () => {
|
|
1648
|
+
alert("Alert action button clicked");
|
|
1649
|
+
};
|
|
1650
|
+
|
|
1651
|
+
//TODO: Dashboard Table
|
|
1652
|
+
const selectedRows = ref([]);
|
|
1653
|
+
const checkedRows = ref([]);
|
|
1654
|
+
const defaultSortOrder = ref("asc");
|
|
1655
|
+
const limit = ref(5);
|
|
1656
|
+
const offset = ref(0);
|
|
1657
|
+
const selectedIndex = ref(null);
|
|
1658
|
+
const selected: { index: string } = { index: "" };
|
|
1659
|
+
|
|
1660
|
+
const totalCount = computed(() => {
|
|
1661
|
+
return tableData.length;
|
|
1662
|
+
});
|
|
1663
|
+
|
|
1664
|
+
const select = (_item: any, index: any) => {
|
|
1665
|
+
selectedIndex.value = index;
|
|
1666
|
+
};
|
|
1667
|
+
|
|
1668
|
+
const onSort = (field: string, order: string) => {
|
|
1669
|
+
const modifier = order === "desc" ? -1 : 1;
|
|
1670
|
+
tableData.sort((a, b) => {
|
|
1671
|
+
if (a[field] < b[field]) return -1 * modifier;
|
|
1672
|
+
if (a[field] > b[field]) return 1 * modifier;
|
|
1673
|
+
return 0;
|
|
1674
|
+
});
|
|
1675
|
+
};
|
|
1676
|
+
|
|
1677
|
+
const onPageChange = (offsetData: number) => {
|
|
1678
|
+
offset.value = offsetData;
|
|
1679
|
+
loading.value = true;
|
|
1680
|
+
console.log("@changePage:", offsetData);
|
|
1681
|
+
setTimeout(() => {
|
|
1682
|
+
loading.value = false;
|
|
1683
|
+
}, 800);
|
|
1684
|
+
};
|
|
1685
|
+
|
|
1686
|
+
// TODO: Multi dropdown menu clicked access
|
|
1687
|
+
const menubar = ref([{ text: "Students" }, { text: "Application" }]);
|
|
1688
|
+
|
|
1689
|
+
const handleMenuItem = (item: any) => {
|
|
1690
|
+
console.log("Menu clicked:", item);
|
|
1691
|
+
};
|
|
1692
|
+
|
|
1693
|
+
const addAction = (e: Event) => {
|
|
1694
|
+
console.log("Action Item clicked:" + e);
|
|
1695
|
+
};
|
|
1696
|
+
|
|
1697
|
+
const handleSubMenuItem = (subItem: any) => {
|
|
1698
|
+
console.log("Submenu item clicked:", subItem);
|
|
1699
|
+
};
|
|
1700
|
+
|
|
1701
|
+
//TODO: TagModal
|
|
1702
|
+
const tagModal = ref(false);
|
|
1703
|
+
const handleClose = () => {
|
|
1704
|
+
tagModal.value = true;
|
|
1705
|
+
};
|
|
1706
|
+
|
|
1707
|
+
//TODO: Modal
|
|
1708
|
+
const showModal = ref(false);
|
|
1709
|
+
const handleConfirm = () => {
|
|
1710
|
+
showModal.value = true;
|
|
1711
|
+
};
|
|
1712
|
+
|
|
1713
|
+
const customModal = ref(false);
|
|
1714
|
+
const openModal = () => {
|
|
1715
|
+
customModal.value = false;
|
|
1716
|
+
};
|
|
1717
|
+
|
|
1718
|
+
// accordion active Index
|
|
1719
|
+
const handleActiveItem = (activeItems: number) => {
|
|
1720
|
+
console.log("Currently active accordion(s):", activeItems);
|
|
1721
|
+
};
|
|
1722
|
+
|
|
1723
|
+
// Stepper dynamic Data
|
|
1724
|
+
const allSteps = ["MQL", "SAL", "PROSPECT", "CUSTOMER"];
|
|
1725
|
+
const currentStage = "PROSPECT";
|
|
1726
|
+
const lifeCycleHistory = [
|
|
1727
|
+
{
|
|
1728
|
+
lifecycleStage: "MQL",
|
|
1729
|
+
updatedAt: "2025-08-25T15:35:55.965Z",
|
|
1730
|
+
updatedBy: {
|
|
1731
|
+
email: "testuser3@edvoy.com",
|
|
1732
|
+
},
|
|
1733
|
+
},
|
|
1734
|
+
{
|
|
1735
|
+
lifecycleStage: "SAL",
|
|
1736
|
+
updatedAt: "2025-08-25T15:36:16.616Z",
|
|
1737
|
+
updatedBy: {
|
|
1738
|
+
email: "testuser3@edvoy.com",
|
|
1739
|
+
},
|
|
1740
|
+
},
|
|
1741
|
+
{
|
|
1742
|
+
lifecycleStage: "PROSPECT",
|
|
1743
|
+
updatedAt: "2025-08-25T15:42:30.195Z",
|
|
1744
|
+
updatedBy: {
|
|
1745
|
+
email: "testuser2@edvoy.com",
|
|
1746
|
+
},
|
|
1747
|
+
},
|
|
1748
|
+
];
|
|
1749
|
+
|
|
1750
|
+
//TODO: Select Data
|
|
1751
|
+
const datas = ref([
|
|
1752
|
+
{
|
|
1753
|
+
value: "ShawnBurke",
|
|
1754
|
+
name: "Shawn Burke",
|
|
1755
|
+
age: 6,
|
|
1756
|
+
},
|
|
1757
|
+
{
|
|
1758
|
+
value: "EmeryNolan",
|
|
1759
|
+
name: "Emery Nolan",
|
|
1760
|
+
age: 4,
|
|
1761
|
+
},
|
|
1762
|
+
{
|
|
1763
|
+
value: "EmbryGrant",
|
|
1764
|
+
name: "Embry Grant",
|
|
1765
|
+
age: 3,
|
|
1766
|
+
},
|
|
1767
|
+
{
|
|
1768
|
+
value: "JesseAustin",
|
|
1769
|
+
name: "Jesse Austin",
|
|
1770
|
+
age: 9,
|
|
1771
|
+
},
|
|
1772
|
+
{
|
|
1773
|
+
value: "TandyChristensen",
|
|
1774
|
+
name: "Tandy Christensen",
|
|
1775
|
+
age: 7,
|
|
1776
|
+
},
|
|
1777
|
+
{
|
|
1778
|
+
value: "ShawnBurkeNew",
|
|
1779
|
+
name: "Shawn Burke New",
|
|
1780
|
+
age: 6,
|
|
1781
|
+
},
|
|
1782
|
+
{
|
|
1783
|
+
value: "EmeryNolanNew",
|
|
1784
|
+
name: "Emery Nolan New",
|
|
1785
|
+
age: 4,
|
|
1786
|
+
},
|
|
1787
|
+
{
|
|
1788
|
+
value: "EmbryGrantNew",
|
|
1789
|
+
name: "Embry Grant New",
|
|
1790
|
+
age: 3,
|
|
1791
|
+
},
|
|
1792
|
+
{
|
|
1793
|
+
value: "JesseAustinNew",
|
|
1794
|
+
name: "Jesse Austin New",
|
|
1795
|
+
age: 9,
|
|
1796
|
+
},
|
|
1797
|
+
{
|
|
1798
|
+
value: "TandyChristensenNew",
|
|
1799
|
+
name: "Tandy Christensen New",
|
|
1800
|
+
age: 7,
|
|
1801
|
+
},
|
|
1802
|
+
]);
|
|
1803
|
+
//TODO: Timeline
|
|
1804
|
+
|
|
1805
|
+
const timelineData = ref([
|
|
1806
|
+
{
|
|
1807
|
+
id: 1,
|
|
1808
|
+
person: { name: "Alex Curren" },
|
|
1809
|
+
date: "2d ago",
|
|
1810
|
+
dateTime: "2023-01-24T09:12",
|
|
1811
|
+
},
|
|
1812
|
+
{
|
|
1813
|
+
id: 2,
|
|
1814
|
+
person: { name: "Alex Curren" },
|
|
1815
|
+
date: "1d ago",
|
|
1816
|
+
dateTime: "2023-01-24T09:20",
|
|
1817
|
+
},
|
|
1818
|
+
{
|
|
1819
|
+
id: 3,
|
|
1820
|
+
person: { name: "Alex Curren" },
|
|
1821
|
+
date: "2d ago",
|
|
1822
|
+
dateTime: "2023-01-24T09:12",
|
|
1823
|
+
},
|
|
1824
|
+
{
|
|
1825
|
+
id: 4,
|
|
1826
|
+
person: { name: "Alex Curren" },
|
|
1827
|
+
date: "1d ago",
|
|
1828
|
+
dateTime: "2023-01-24T09:20",
|
|
1829
|
+
},
|
|
1830
|
+
{
|
|
1831
|
+
id: 5,
|
|
1832
|
+
person: { name: "Alex Curren" },
|
|
1833
|
+
date: "2d ago",
|
|
1834
|
+
dateTime: "2023-01-24T09:12",
|
|
1835
|
+
},
|
|
1836
|
+
{
|
|
1837
|
+
id: 6,
|
|
1838
|
+
person: { name: "Alex Curren" },
|
|
1839
|
+
date: "1d ago",
|
|
1840
|
+
dateTime: "2023-01-24T09:20",
|
|
1841
|
+
},
|
|
1842
|
+
]);
|
|
1843
|
+
|
|
1844
|
+
const timelineImage = ref([
|
|
1845
|
+
{
|
|
1846
|
+
id: 1,
|
|
1847
|
+
person: {
|
|
1848
|
+
name: "Chelsea Hagon",
|
|
1849
|
+
imageUrl:
|
|
1850
|
+
"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",
|
|
1851
|
+
},
|
|
1852
|
+
comment:
|
|
1853
|
+
"Called client, they reassured me the invoice would be paid by the 25th.",
|
|
1854
|
+
date: "3d ago",
|
|
1855
|
+
dateTime: "2023-01-23T15:56",
|
|
1856
|
+
showmore: {
|
|
1857
|
+
title: "More Details",
|
|
1858
|
+
content:
|
|
1859
|
+
"Lorem ipsum dolor sit amet consectetur adipisicing elit. Repellat, dicta quae aliquam provident mollitia nostrum.",
|
|
1860
|
+
},
|
|
1861
|
+
},
|
|
1862
|
+
{
|
|
1863
|
+
id: 2,
|
|
1864
|
+
person: {
|
|
1865
|
+
name: "Chelsea Hagon",
|
|
1866
|
+
imageUrl:
|
|
1867
|
+
"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",
|
|
1868
|
+
},
|
|
1869
|
+
comment:
|
|
1870
|
+
"Called client, they reassured me the invoice would be paid by the 25th.",
|
|
1871
|
+
date: "3d ago",
|
|
1872
|
+
dateTime: "2023-01-23T15:56",
|
|
1873
|
+
showmore: {
|
|
1874
|
+
title: "More Details",
|
|
1875
|
+
content:
|
|
1876
|
+
"Lorem ipsum dolor sit amet consectetur adipisicing elit. Repellat, dicta quae aliquam provident mollitia nostrum.",
|
|
1877
|
+
},
|
|
1878
|
+
},
|
|
1879
|
+
{
|
|
1880
|
+
id: 3,
|
|
1881
|
+
person: {
|
|
1882
|
+
name: "Chelsea Hagon",
|
|
1883
|
+
imageUrl:
|
|
1884
|
+
"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",
|
|
1885
|
+
},
|
|
1886
|
+
comment:
|
|
1887
|
+
"Called client, they reassured me the invoice would be paid by the 25th.",
|
|
1888
|
+
date: "3d ago",
|
|
1889
|
+
dateTime: "2023-01-23T15:56",
|
|
1890
|
+
showmore: {
|
|
1891
|
+
title: "More Details",
|
|
1892
|
+
content:
|
|
1893
|
+
"Lorem ipsum dolor sit amet consectetur adipisicing elit. Repellat, dicta quae aliquam provident mollitia nostrum.",
|
|
1894
|
+
},
|
|
1895
|
+
},
|
|
1896
|
+
{
|
|
1897
|
+
id: 4,
|
|
1898
|
+
person: {
|
|
1899
|
+
name: "Chelsea Hagon",
|
|
1900
|
+
imageUrl:
|
|
1901
|
+
"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",
|
|
1902
|
+
},
|
|
1903
|
+
comment:
|
|
1904
|
+
"Called client, they reassured me the invoice would be paid by the 25th.",
|
|
1905
|
+
date: "3d ago",
|
|
1906
|
+
dateTime: "2023-01-23T15:56",
|
|
1907
|
+
showmore: {
|
|
1908
|
+
title: "More Details",
|
|
1909
|
+
content:
|
|
1910
|
+
"Lorem ipsum dolor sit amet consectetur adipisicing elit. Repellat, dicta quae aliquam provident mollitia nostrum.",
|
|
1911
|
+
},
|
|
1912
|
+
},
|
|
1913
|
+
{
|
|
1914
|
+
id: 5,
|
|
1915
|
+
person: {
|
|
1916
|
+
name: "Chelsea Hagon",
|
|
1917
|
+
imageUrl:
|
|
1918
|
+
"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",
|
|
1919
|
+
},
|
|
1920
|
+
comment:
|
|
1921
|
+
"Called client, they reassured me the invoice would be paid by the 25th.",
|
|
1922
|
+
date: "3d ago",
|
|
1923
|
+
dateTime: "2023-01-23T15:56",
|
|
1924
|
+
showmore: {
|
|
1925
|
+
title: "More Details",
|
|
1926
|
+
content:
|
|
1927
|
+
"Lorem ipsum dolor sit amet consectetur adipisicing elit. Repellat, dicta quae aliquam provident mollitia nostrum.",
|
|
1928
|
+
},
|
|
1929
|
+
},
|
|
1930
|
+
{
|
|
1931
|
+
id: 6,
|
|
1932
|
+
person: {
|
|
1933
|
+
name: "Chelsea Hagon",
|
|
1934
|
+
imageUrl:
|
|
1935
|
+
"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",
|
|
1936
|
+
},
|
|
1937
|
+
comment:
|
|
1938
|
+
"Called client, they reassured me the invoice would be paid by the 25th.",
|
|
1939
|
+
date: "3d ago",
|
|
1940
|
+
dateTime: "2023-01-23T15:56",
|
|
1941
|
+
showmore: {
|
|
1942
|
+
title: "More Details",
|
|
1943
|
+
content:
|
|
1944
|
+
"Lorem ipsum dolor sit amet consectetur adipisicing elit. Repellat, dicta quae aliquam provident mollitia nostrum.",
|
|
1945
|
+
},
|
|
1946
|
+
},
|
|
1947
|
+
]);
|
|
1948
|
+
|
|
1949
|
+
const accordionData = ref([
|
|
1950
|
+
{
|
|
1951
|
+
title: "1.How long does the course take?",
|
|
1952
|
+
content:
|
|
1953
|
+
"The video content takes more than 4.5 hours. In addition, you can test gained knowledge on 30 quizzes and practical tasks.",
|
|
1954
|
+
},
|
|
1955
|
+
{
|
|
1956
|
+
title: "2.How long does the course take?",
|
|
1957
|
+
content:
|
|
1958
|
+
"The video content takes more than 4.5 hours. In addition, you can test gained knowledge on 30 quizzes and practical tasks.",
|
|
1959
|
+
},
|
|
1960
|
+
{
|
|
1961
|
+
title: "3.How long does the course take?",
|
|
1962
|
+
content:
|
|
1963
|
+
"The video content takes more than 4.5 hours. In addition, you can test gained knowledge on 30 quizzes and practical tasks.",
|
|
1964
|
+
},
|
|
1965
|
+
{
|
|
1966
|
+
title: "4.How long does the course take?",
|
|
1967
|
+
content:
|
|
1968
|
+
"The video content takes more than 4.5 hours. In addition, you can test gained knowledge on 30 quizzes and practical tasks.",
|
|
1969
|
+
},
|
|
1970
|
+
]);
|
|
1971
|
+
</script>
|
|
1972
|
+
|
|
1973
|
+
<style lang="scss" scoped></style>
|
|
1974
|
+
-->
|