edvoyui-component-library-test-flight 0.0.107 → 0.0.109

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.
Files changed (106) hide show
  1. package/dist/EUIButton.vue.d.ts +5 -0
  2. package/dist/EUIButton.vue.d.ts.map +1 -0
  3. package/dist/accordion/EUIAccordion.vue.d.ts +2 -2
  4. package/dist/accordion/EUIAccordion.vue.d.ts.map +1 -1
  5. package/dist/alerts/EUIAlerts.vue.d.ts +4 -0
  6. package/dist/alerts/EUIAlerts.vue.d.ts.map +1 -0
  7. package/dist/avatar/EUIAvatar.vue.d.ts +2 -2
  8. package/dist/avatar/EUIAvatar.vue.d.ts.map +1 -1
  9. package/dist/breadcrumb/EUIBreadcrumb.vue.d.ts +2 -2
  10. package/dist/breadcrumb/EUIBreadcrumb.vue.d.ts.map +1 -1
  11. package/dist/checkbox/EUICheckbox.vue.d.ts +3 -3
  12. package/dist/checkbox/EUICheckbox.vue.d.ts.map +1 -1
  13. package/dist/datepicker/EUIDatepicker.vue.d.ts +3 -3
  14. package/dist/datepicker/EUIDatepicker.vue.d.ts.map +1 -1
  15. package/dist/dropdown/EUIMultiDropdown.vue.d.ts +2 -2
  16. package/dist/dropdown/EUIMultiDropdown.vue.d.ts.map +1 -1
  17. package/dist/errorMessage/EUIErrorMessage.vue.d.ts +2 -2
  18. package/dist/errorMessage/EUIErrorMessage.vue.d.ts.map +1 -1
  19. package/dist/input/EUIInput.vue.d.ts +2 -2
  20. package/dist/input/EUIInput.vue.d.ts.map +1 -1
  21. package/dist/library-vue-ts.cjs.js +31 -31
  22. package/dist/library-vue-ts.css +1 -1
  23. package/dist/library-vue-ts.es.js +6147 -5834
  24. package/dist/library-vue-ts.umd.js +32 -32
  25. package/dist/loader/EUICircleLoader.vue.d.ts +1 -1
  26. package/dist/loader/EUICircleLoader.vue.d.ts.map +1 -1
  27. package/dist/loader/EUICubeLoader.vue.d.ts +1 -1
  28. package/dist/loader/EUICubeLoader.vue.d.ts.map +1 -1
  29. package/dist/loader/EUILoader.vue.d.ts +2 -2
  30. package/dist/loader/EUILoader.vue.d.ts.map +1 -1
  31. package/dist/loader/EUISquareLoader.vue.d.ts +1 -1
  32. package/dist/loader/EUISquareLoader.vue.d.ts.map +1 -1
  33. package/dist/modal/EUIModal.vue.d.ts +2 -2
  34. package/dist/modal/EUIModal.vue.d.ts.map +1 -1
  35. package/dist/pillSelect/EUIPillSelect.vue.d.ts +2 -2
  36. package/dist/pillSelect/EUIPillSelect.vue.d.ts.map +1 -1
  37. package/dist/popover/EUIPopover.vue.d.ts +2 -2
  38. package/dist/popover/EUIPopover.vue.d.ts.map +1 -1
  39. package/dist/radio/EUIRadio.vue.d.ts +2 -2
  40. package/dist/radio/EUIRadio.vue.d.ts.map +1 -1
  41. package/dist/searchInput/EUISearch.vue.d.ts +2 -2
  42. package/dist/searchInput/EUISearch.vue.d.ts.map +1 -1
  43. package/dist/searchexpand/EUISearchExpand.vue.d.ts +2 -2
  44. package/dist/searchexpand/EUISearchExpand.vue.d.ts.map +1 -1
  45. package/dist/searchexpand/EUISearchToggle.vue.d.ts +2 -2
  46. package/dist/searchexpand/EUISearchToggle.vue.d.ts.map +1 -1
  47. package/dist/select/EUISelect.vue.d.ts +3 -3
  48. package/dist/select/EUISelect.vue.d.ts.map +1 -1
  49. package/dist/selectSearch/EUISelectSearch.vue.d.ts +4 -0
  50. package/dist/selectSearch/EUISelectSearch.vue.d.ts.map +1 -0
  51. package/dist/slideover/EUISlideover.vue.d.ts +2 -2
  52. package/dist/slideover/EUISlideover.vue.d.ts.map +1 -1
  53. package/dist/stepperTimeline/EUIStepperHorizontal.vue.d.ts +2 -2
  54. package/dist/stepperTimeline/EUIStepperHorizontal.vue.d.ts.map +1 -1
  55. package/dist/stepperTimeline/EUIStepperTimeline.vue.d.ts +2 -2
  56. package/dist/stepperTimeline/EUIStepperTimeline.vue.d.ts.map +1 -1
  57. package/dist/stepperTimeline/EUIStepperVertical.vue.d.ts +2 -2
  58. package/dist/stepperTimeline/EUIStepperVertical.vue.d.ts.map +1 -1
  59. package/dist/table/EUIDashboardTable.vue.d.ts +2 -2
  60. package/dist/table/EUIDashboardTable.vue.d.ts.map +1 -1
  61. package/dist/table/EUIPageLimit.vue.d.ts +2 -2
  62. package/dist/table/EUIPageLimit.vue.d.ts.map +1 -1
  63. package/dist/table/EUIPagination.vue.d.ts +2 -2
  64. package/dist/table/EUIPagination.vue.d.ts.map +1 -1
  65. package/dist/table/EUIStudentPagination.vue.d.ts +2 -2
  66. package/dist/table/EUIStudentPagination.vue.d.ts.map +1 -1
  67. package/dist/table/EUITable.vue.d.ts +2 -2
  68. package/dist/table/EUITable.vue.d.ts.map +1 -1
  69. package/dist/table/EUITableCheckbox.vue.d.ts +3 -3
  70. package/dist/table/EUITableCheckbox.vue.d.ts.map +1 -1
  71. package/dist/table/GrowthTable.vue.d.ts +2 -2
  72. package/dist/table/GrowthTable.vue.d.ts.map +1 -1
  73. package/dist/table/UCheckbox.vue.d.ts +2 -2
  74. package/dist/table/UCheckbox.vue.d.ts.map +1 -1
  75. package/dist/table/UTable.vue.d.ts +2 -2
  76. package/dist/table/UTable.vue.d.ts.map +1 -1
  77. package/dist/tabs/EUITabs.vue.d.ts +2 -2
  78. package/dist/tabs/EUITabs.vue.d.ts.map +1 -1
  79. package/dist/tag/EUITag.vue.d.ts +2 -2
  80. package/dist/tag/EUITag.vue.d.ts.map +1 -1
  81. package/dist/telephone/EUITelephone.vue.d.ts +3 -3
  82. package/dist/telephone/EUITelephone.vue.d.ts.map +1 -1
  83. package/dist/textArea/EUITextArea.vue.d.ts +2 -2
  84. package/dist/textArea/EUITextArea.vue.d.ts.map +1 -1
  85. package/dist/timeLine/EUITimeLine.vue.d.ts +2 -2
  86. package/dist/timeLine/EUITimeLine.vue.d.ts.map +1 -1
  87. package/dist/timeLine/EUITimeLineItem.vue.d.ts +2 -2
  88. package/dist/timeLine/EUITimeLineItem.vue.d.ts.map +1 -1
  89. package/dist/toggle/EUIToggle.vue.d.ts +2 -2
  90. package/dist/toggle/EUIToggle.vue.d.ts.map +1 -1
  91. package/dist/tooltip/EUITooltip.vue.d.ts +2 -2
  92. package/dist/tooltip/EUITooltip.vue.d.ts.map +1 -1
  93. package/package.json +1 -1
  94. package/src/components/HelloWorld.vue +309 -166
  95. package/src/components/alerts/EUIAlerts.stories.ts +217 -0
  96. package/src/components/alerts/EUIAlerts.vue +194 -0
  97. package/src/components/index.ts +1 -0
  98. package/src/components/searchexpand/EUISearchExpand.vue +47 -8
  99. package/src/components/select/EUISelect.vue +54 -19
  100. package/src/components/tabs/EUITabs.vue +6 -0
  101. package/dist/EUISelectSearch.vue.d.ts +0 -4
  102. package/dist/EUISelectSearch.vue.d.ts.map +0 -1
  103. package/dist/button/EUIButton.vue.d.ts +0 -5
  104. package/dist/button/EUIButton.vue.d.ts.map +0 -1
  105. /package/src/components/checkbox/{EUICheckbox.stories.ts → EUIcheckbox.stories.ts} +0 -0
  106. /package/src/components/modal/{EUIModal.stories.ts → EUImodal.stories.ts} +0 -0
@@ -4,83 +4,137 @@
4
4
  >
5
5
  Edvoy User Interface
6
6
  </h1>
7
+ <!-- <div class="ml-[200px]">
8
+ <EUISearchExpand
9
+
10
+ v-model:model-value="searchInput"
11
+ :search-sync="showSearch"
12
+ @input="seachStudent($event?.target?.value)"
13
+ @update:modelValue="seachStudent($event?.target?.value)"
14
+ /></div> -->
7
15
 
8
16
  </template>
9
17
  <script setup lang="ts">
18
+ // import { ref } from 'vue';
10
19
 
20
+ // import EUISearchExpand from './searchexpand/EUISearchExpand.vue'
11
21
 
22
+ // const searchInput =ref('')
23
+ // const showSearch =ref(false)
24
+
25
+ // const seachStudent=(e)=>{
26
+ // console.log('seachStudent',e)
27
+ // }
12
28
  </script>
13
29
  <style lang="scss"></style>
14
30
 
15
- <!-- Development code here -->
31
+ <!-- Development code here -->
16
32
  <!-- <template>
17
33
  <div class="h-[clac(100svh-64px)] w-full px-10 py-8 max-w-screen-xl mx-auto">
18
34
  <h1 class="mb-2 font-semibold text-gray-900 tetx-lg">Edvoy UI Componnet</h1>
19
35
 
20
- <EUIAccordion
21
- :datas="accordionData"
22
- :defaultOpen="[1]"
23
- :collapse="true"
24
- accordionStyle="separated"
25
- @update:activeItem="handleActiveItem"
36
+ <div class="grid gap-4 sm:grid-cols-2 place-items-start">
37
+ <div
38
+ 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"
39
+ >
40
+ <span
41
+ class="px-1 py-1 mb-0 font-mono text-xs leading-none text-gray-500 bg-gray-100 rounded-md"
26
42
  >
27
- <template #title="{ item}">
28
- <div>{{ item.title }}</div>
29
- </template>
30
- <template #right-icon="{item}">
31
- <div :key="item" class="w-10 h-10 bg-red-100 border border-red-500 rounded-full" />
32
- </template>
33
- <template #content="{item}">
34
- <div>{{ item.content }}</div>
43
+ Name: Alert
44
+ </span>
45
+ <pre
46
+ class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
47
+ ><code>&lt;EUIInput label="Firstname" placeholder="Enter your name" /&gt;</code></pre>
48
+
49
+ <div class="space-y-4">
50
+ <EUIAlerts
51
+ alert-type="Success"
52
+ heading="Deactivate account"
53
+ 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."
54
+ />
55
+
56
+ <EUIAlerts
57
+ alert-type="Warning"
58
+ heading="Send Icon here"
59
+ :alertIcon="ExclamationTriangleIcon"
60
+ >
61
+ <template #xclose>
62
+ <a href="#" class="text-sm font-medium text-yellow-700 whitespace-nowrap hover:text-yellow-600">
63
+ Go to Page
64
+ <span aria-hidden="true"> &rarr;</span>
65
+ </a>
35
66
  </template>
36
- </EUIAccordion>
67
+ </EUIAlerts>
37
68
 
38
- <Delete />
39
- <UTableview />
40
- <div class="">
41
- <pre class="text-[0.5rem] p-2 rounded-lg max-h-72 overflow-y-auto text-red-600 border border-gray-100">
42
- {{ `Total Row:${selectedRows.length}` }}
43
- {{ selectedRows.map(x => x?._id)}}
44
- </pre>
45
69
 
46
- <div class="py-4">
47
- <EUITable
48
- :checkable="true"
49
- :table-loading="loading"
50
- paginated
51
- v-model:selectedRows.sync="selectedRows"
52
- :checked-rows.sync="checkedRows"
53
- backend-pagination
54
- :per-page="10"
55
- :headers="studentHeader"
56
- :items="studentData"
57
- :total="studentData.length"
58
- :default-sort-direction="defaultSortOrder"
59
- default-sort=""
60
- :current-page="offset"
61
- @changePage="onPageChange"
62
- @sort="onSort"
63
- @mouseenter="select"
64
- @mouseleave="(selectedIndex = null), (selected = null)"
65
- >
66
- <template #[`item.firstName`]="{ row, rowIndex }">
67
- <div class="space-y-0.5">
68
- <div class="block text-sm font-medium leading-snug">
69
- {{ capitalizeText(row?.firstName) + " " + capitalizeText(row?.lastName) }}
70
- </div>
71
- <div class="text-xs font-medium text-gray-900 leading-[normal]">
72
- {{ row?.referenceId }}
70
+ <EUIAlerts
71
+ alert-type="Success"
72
+ heading="Title only show here"
73
+ />
74
+
75
+ <EUIAlerts
76
+ alert-type="Warning"
77
+ heading="Send Icon here"
78
+ :icon="ExclamationTriangleIcon"
79
+ />
80
+
81
+ <EUIAlerts
82
+ alert-type="Default"
83
+ heading="Close Icon Boolean enabled"
84
+ close-icon
85
+ />
86
+
87
+ <EUIAlerts
88
+ alert-type="Error"
89
+ heading="Deactivate account"
90
+ 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."
91
+ :showAlert="showAlert"
92
+ :close-icon="true"
93
+ @update:showAlert="showAlert = $event"
94
+ />
95
+
96
+ <EUIAlerts
97
+ alert-type="Warning"
98
+ heading="Deactivate account"
99
+ 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."
100
+ :showAlert="showAlert"
101
+ close-icon
102
+ action-items
103
+ @update:showAlert="showAlert = $event"
104
+ @alertAction="onClickAlert"
105
+ @alertDismiss="showAlert = false"
106
+ />
107
+
108
+ <EUIAlerts
109
+ alert-type="Warning"
110
+ :showAlert="showAlert"
111
+ @update:showAlert="showAlert = $event"
112
+ >
113
+ <template #icon>
114
+ <ExclamationTriangleIcon class="text-current size-4" aria-hidden="true" />
115
+ </template>
116
+ <template #title>Use Template here</template>
117
+ <template #content>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.</template>
118
+
119
+ <template #actionButtons>
120
+ <div class="pt-4">
121
+ <button type="button"
122
+ 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"
123
+ >
124
+ View status
125
+ </button>
126
+ <button
127
+ type="button"
128
+ 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"
129
+ >
130
+ Dismiss
131
+ </button>
73
132
  </div>
74
- </div>
75
- </template>
76
- <template #[`item.activeUser`]="{ row, rowIndex }">
77
- {{ row?.activeUser?.user?.firstName }}
78
- {{ row?.activeUser?.user?.lastName }}
79
- </template>
80
- </EUITable>
81
- </div>
82
- </div>
83
- <div class="grid gap-4 sm:grid-cols-2 place-items-start">
133
+ </template>
134
+ </EUIAlerts>
135
+ </div>
136
+ </div>
137
+
84
138
  <div
85
139
  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"
86
140
  >
@@ -89,9 +143,11 @@
89
143
  >
90
144
  Name: Input
91
145
  </span>
92
- <pre class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"><code>&lt;EUIInput label="Firstname" placeholder="Enter your name" /&gt;</code></pre>
146
+ <pre
147
+ class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
148
+ ><code>&lt;EUIInput label="Firstname" placeholder="Enter your name" /&gt;</code></pre>
93
149
 
94
- <div class="grid grid-cols-3 gap-4 pb-6 mb-4 border-b">
150
+ <div class="grid grid-cols-3 gap-4 pb-6 mb-4 border-b">
95
151
  <EUIInput
96
152
  v-model.trim="form.input"
97
153
  name="addnote"
@@ -240,7 +296,7 @@
240
296
  </div>
241
297
  </div>
242
298
 
243
- <div
299
+ <div
244
300
  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"
245
301
  >
246
302
  <span
@@ -255,34 +311,33 @@
255
311
  input required" tag-color="Error" /&gt;</code>
256
312
  </pre>
257
313
 
258
- <div class="grid grid-cols-2 gap-6">
259
- <EUITelephone
260
- v-model="mobileNumber"
261
- name="contactNumber"
262
- label="Contact Number"
263
- placeholder="Your mobile number"
264
- tag="Mobile input required"
265
- tag-color="Error"
266
- :errors="{ name: 'Enter a valid phone number' }"
267
- icon-type="startIcon"
268
- :icon="DevicePhoneMobileIcon"
269
- inputFilled
270
- />
271
-
272
- <EUITelephone
273
- v-model="mobileNumber"
274
- name="contactNumber"
275
- label="Contact Number"
276
- placeholder="Your mobile number"
277
- tag="Mobile input required"
278
- tag-color="Error"
279
- :errors="{ name: 'Enter a valid phone number' }"
280
- icon-type="startIcon"
281
- :icon="DevicePhoneMobileIcon"
282
- required
283
- />
284
- </div>
314
+ <div class="grid grid-cols-2 gap-6">
315
+ <EUITelephone
316
+ v-model="mobileNumber"
317
+ name="contactNumber"
318
+ label="Contact Number"
319
+ placeholder="Your mobile number"
320
+ tag="Mobile input required"
321
+ tag-color="Error"
322
+ :errors="{ name: 'Enter a valid phone number' }"
323
+ icon-type="startIcon"
324
+ :icon="DevicePhoneMobileIcon"
325
+ inputFilled
326
+ />
285
327
 
328
+ <EUITelephone
329
+ v-model="mobileNumber"
330
+ name="contactNumber"
331
+ label="Contact Number"
332
+ placeholder="Your mobile number"
333
+ tag="Mobile input required"
334
+ tag-color="Error"
335
+ :errors="{ name: 'Enter a valid phone number' }"
336
+ icon-type="startIcon"
337
+ :icon="DevicePhoneMobileIcon"
338
+ required
339
+ />
340
+ </div>
286
341
  </div>
287
342
 
288
343
  <div
@@ -299,7 +354,7 @@
299
354
  <code>&lt;EUISelect label="Firstname" placeholder="Enter your name" :items="datas" /&gt;</code>
300
355
  </pre>
301
356
 
302
- <div class="grid grid-cols-3 gap-4">
357
+ <div class="grid grid-cols-3 gap-4">
303
358
  <EUISelect
304
359
  search-label="name"
305
360
  label="Select Label"
@@ -345,7 +400,7 @@
345
400
  </div>
346
401
  </div>
347
402
 
348
- <div
403
+ <div
349
404
  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)]"
350
405
  >
351
406
  <span
@@ -357,22 +412,26 @@
357
412
  class="pb-4 my-4 text-sm font-normal text-gray-700 whitespace-pre-wrap border-b border-gray-100 border-solid"
358
413
  ><code>&lt;EUIMultiDropdown title="dropdown" :menu-items="menubar" /&gt;</code>
359
414
  </pre>
360
- <div class="inline-flex items-center gap-4">
361
- <EUIMultiDropdown title="dropdown" :menu-items="menubar" />
362
-
363
- <EUIMultiDropdown 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" @action-item="addAction">
364
- <template #dropdownName="{ open }">
365
- <span>My Students</span>
366
- <ChevronDownStroke :class="open ? 'text-gray-900 rotate-180' : 'text-gray-500'"
367
- class="transition duration-100 ease-in-out transform rotate-0 size-6 group-hover:text-opacity-80"
368
- aria-hidden="true"
369
- />
370
- </template>
371
- <template #actionName>
372
- + Add Custom Filter
373
- </template>
374
- </EUIMultiDropdown>
375
- </div>
415
+ <div class="inline-flex items-center gap-4">
416
+ <EUIMultiDropdown title="dropdown" :menu-items="menubar" />
417
+
418
+ <EUIMultiDropdown
419
+ 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"
420
+ @subMenuItem="handleSubMenuItem"
421
+ @menuItem="handleMenuItem"
422
+ @action-item="addAction"
423
+ >
424
+ <template #dropdownName="{ open }">
425
+ <span>My Students</span>
426
+ <ChevronDownStroke
427
+ :class="open ? 'text-gray-900 rotate-180' : 'text-gray-500'"
428
+ class="transition duration-100 ease-in-out transform rotate-0 size-6 group-hover:text-opacity-80"
429
+ aria-hidden="true"
430
+ />
431
+ </template>
432
+ <template #actionName> + Add Custom Filter </template>
433
+ </EUIMultiDropdown>
434
+ </div>
376
435
  </div>
377
436
 
378
437
  <div
@@ -861,7 +920,7 @@
861
920
  &lt;/EUIDashboardTable&gt;
862
921
  </code>
863
922
  </pre>
864
- <EUIDashboardTable
923
+ <EUIDashboardTable
865
924
  :checkable="true"
866
925
  paginated
867
926
  :checked-rows.sync="checkedRows"
@@ -893,42 +952,120 @@
893
952
  </template>
894
953
  </EUIDashboardTable>
895
954
 
896
- <div class="py-4">
897
- <EUITable
898
- :checkable="true"
899
- :table-loading="loading"
900
- paginated
901
- :checked-rows.sync="checkedRows"
902
- backend-pagination
903
- :per-page="10"
904
- :headers="studentHeader"
905
- :items="studentData"
906
- :total="studentData.length"
907
- :default-sort-direction="defaultSortOrder"
908
- default-sort=""
909
- :current-page="offset"
910
- @changePage="onPageChange"
911
- @sort="onSort"
912
- @mouseenter="select"
913
- @mouseleave="(selectedIndex = null), (selected = null)"
955
+ <div class="py-4">
956
+ <EUITable
957
+ :checkable="true"
958
+ :table-loading="loading"
959
+ paginated
960
+ :checked-rows.sync="checkedRows"
961
+ backend-pagination
962
+ :per-page="10"
963
+ :headers="studentHeader"
964
+ :items="studentData"
965
+ :total="studentData.length"
966
+ :default-sort-direction="defaultSortOrder"
967
+ default-sort=""
968
+ :current-page="offset"
969
+ @changePage="onPageChange"
970
+ @sort="onSort"
971
+ @mouseenter="select"
972
+ @mouseleave="(selectedIndex = null), (selected = null)"
973
+ >
974
+ <template #[`item.firstName`]="{ row, rowIndex }">
975
+ <div class="space-y-0.5">
976
+ <div class="block text-sm font-medium leading-snug">
977
+ {{
978
+ capitalizeText(row?.firstName) +
979
+ " " +
980
+ capitalizeText(row?.lastName)
981
+ }}
982
+ </div>
983
+ <div class="text-xs font-medium text-gray-900 leading-[normal]">
984
+ {{ row?.referenceId }}
985
+ </div>
986
+ </div>
987
+ </template>
988
+ <template #[`item.activeUser`]="{ row, rowIndex }">
989
+ {{ row?.activeUser?.user?.firstName }}
990
+ {{ row?.activeUser?.user?.lastName }}
991
+ </template>
992
+ </EUITable>
993
+ </div>
994
+ </div>
995
+ </div>
996
+
997
+ <div class="">
998
+ <pre
999
+ class="text-[0.5rem] p-2 rounded-lg max-h-72 overflow-y-auto text-red-600 border border-gray-100"
914
1000
  >
915
- <template #[`item.firstName`]="{ row, rowIndex }">
916
- <div class="space-y-0.5">
917
- <div class="block text-sm font-medium leading-snug">
918
- {{ capitalizeText(row?.firstName) + " " + capitalizeText(row?.lastName) }}
919
- </div>
920
- <div class="text-xs font-medium text-gray-900 leading-[normal]">
921
- {{ row?.referenceId }}
1001
+ {{ `Total Row:${selectedRows.length}` }}
1002
+ {{ selectedRows.map((x) => x?._id) }}
1003
+ </pre>
1004
+
1005
+ <div class="py-4">
1006
+ <EUITable
1007
+ :checkable="true"
1008
+ :table-loading="loading"
1009
+ paginated
1010
+ v-model:selectedRows.sync="selectedRows"
1011
+ :checked-rows.sync="checkedRows"
1012
+ backend-pagination
1013
+ :per-page="10"
1014
+ :headers="studentHeader"
1015
+ :items="studentData"
1016
+ :total="studentData.length"
1017
+ :default-sort-direction="defaultSortOrder"
1018
+ default-sort=""
1019
+ :current-page="offset"
1020
+ @changePage="onPageChange"
1021
+ @sort="onSort"
1022
+ @mouseenter="select"
1023
+ @mouseleave="(selectedIndex = null), (selected = null)"
1024
+ >
1025
+ <template #[`item.firstName`]="{ row, rowIndex }">
1026
+ <div class="space-y-0.5">
1027
+ <div class="block text-sm font-medium leading-snug">
1028
+ {{
1029
+ capitalizeText(row?.firstName) +
1030
+ " " +
1031
+ capitalizeText(row?.lastName)
1032
+ }}
1033
+ </div>
1034
+ <div class="text-xs font-medium text-gray-900 leading-[normal]">
1035
+ {{ row?.referenceId }}
1036
+ </div>
922
1037
  </div>
923
- </div>
1038
+ </template>
1039
+ <template #[`item.activeUser`]="{ row, rowIndex }">
1040
+ {{ row?.activeUser?.user?.firstName }}
1041
+ {{ row?.activeUser?.user?.lastName }}
1042
+ </template>
1043
+ </EUITable>
1044
+ </div>
1045
+ </div>
1046
+ <div>
1047
+ <UTableview />
1048
+ <Delete />
1049
+ <EUIAccordion
1050
+ :datas="accordionData"
1051
+ :defaultOpen="[1]"
1052
+ :collapse="true"
1053
+ accordionStyle="separated"
1054
+ @update:activeItem="handleActiveItem"
1055
+ >
1056
+ <template #title="{ item }">
1057
+ <div>{{ item.title }}</div>
924
1058
  </template>
925
- <template #[`item.activeUser`]="{ row, rowIndex }">
926
- {{ row?.activeUser?.user?.firstName }}
927
- {{ row?.activeUser?.user?.lastName }}
1059
+ <template #right-icon="{ item }">
1060
+ <div
1061
+ :key="item"
1062
+ class="w-10 h-10 bg-red-100 border border-red-500 rounded-full"
1063
+ />
928
1064
  </template>
929
- </EUITable>
930
- </div>
931
- </div>
1065
+ <template #content="{ item }">
1066
+ <div>{{ item.content }}</div>
1067
+ </template>
1068
+ </EUIAccordion>
932
1069
  </div>
933
1070
  </div>
934
1071
  </template>
@@ -944,7 +1081,10 @@ import EUITabs from "./tabs/EUITabs.vue";
944
1081
  import EUITextarea from "./textArea/EUITextArea.vue";
945
1082
  import EUISelectSearch from "./selectSearch/EUISelectSearch.vue";
946
1083
  import EUITimeLine from "./timeLine/EUITimeLine.vue";
947
- import { ArrowDownCircleIcon, MagnifyingGlassIcon } from "@heroicons/vue/24/solid";
1084
+ import {
1085
+ ArrowDownCircleIcon,
1086
+ MagnifyingGlassIcon,
1087
+ } from "@heroicons/vue/24/solid";
948
1088
  import EUITag from "./tag/EUITag.vue";
949
1089
  import EUIToggle from "./toggle/EUIToggle.vue";
950
1090
  import EUILoader from "./loader/EUILoader.vue";
@@ -952,7 +1092,7 @@ import EUIAvatar from "./avatar/EUIAvatar.vue";
952
1092
  import EUIStepperTimeline from "./stepperTimeline/EUIStepperTimeline.vue";
953
1093
  import EUIAccordion from "./accordion/EUIAccordion.vue";
954
1094
  import EUITelephone from "./telephone/EUITelephone.vue";
955
- import { DevicePhoneMobileIcon, HomeIcon } from "@heroicons/vue/24/outline";
1095
+ import { DevicePhoneMobileIcon, ExclamationTriangleIcon, HomeIcon } from "@heroicons/vue/24/outline";
956
1096
  import EUIDatepicker from "./datepicker/EUIDatepicker.vue";
957
1097
  import EUIDashboardTable from "./table/EUIDashboardTable.vue";
958
1098
  import tabData from "../data/tab";
@@ -964,22 +1104,28 @@ import {
964
1104
  } from "../data/table";
965
1105
  import EUITable from "./table/EUITable.vue";
966
1106
  import { capitalizeText } from "../utils/lodash";
967
- import ChevronDownStroke from '../assets/svg/ChevronDownStroke.vue';
968
- import EUIMultiDropdown from './dropdown/EUIMultiDropdown.vue';
1107
+ import ChevronDownStroke from "../assets/svg/ChevronDownStroke.vue";
1108
+ import EUIMultiDropdown from "./dropdown/EUIMultiDropdown.vue";
969
1109
  import Delete from "./delete.vue";
970
- import UTableview from './table/UTableview.vue';
1110
+ import UTableview from "./table/UTableview.vue";
1111
+ import EUIAlerts from "./alerts/EUIAlerts.vue";
971
1112
 
972
1113
  const mobileNumber = ref("+91 8667444951");
973
1114
  const datepicker = ref(new Date());
974
- const loading = ref(false)
1115
+ const loading = ref(false);
975
1116
 
976
1117
  const form = reactive({
977
1118
  input: "Lorem ipsum dolor sit",
978
1119
  mobile: "+918667444951",
979
1120
  });
980
1121
 
1122
+ const showAlert = ref(true);
1123
+ const onClickAlert = () => {
1124
+ alert("Alert action button clicked");
1125
+ };
1126
+
981
1127
  //TODO: Dashboard Table
982
- const selectedRows = ref([])
1128
+ const selectedRows = ref([]);
983
1129
  const checkedRows = ref([]);
984
1130
  const defaultSortOrder = ref("asc");
985
1131
  const limit = ref(5);
@@ -1006,30 +1152,27 @@ const onSort = (field: string, order: string) => {
1006
1152
 
1007
1153
  const onPageChange = (offsetData: number) => {
1008
1154
  offset.value = offsetData;
1009
- loading.value = true
1155
+ loading.value = true;
1010
1156
  console.log("@changePage:", offsetData);
1011
- setTimeout(() => {
1012
- loading.value = false
1157
+ setTimeout(() => {
1158
+ loading.value = false;
1013
1159
  }, 800);
1014
1160
  };
1015
1161
 
1016
1162
  // TODO: Multi dropdown menu clicked access
1017
- const menubar = ref([
1018
- { text: "Students" },
1019
- { text: "Application" },
1020
- ])
1163
+ const menubar = ref([{ text: "Students" }, { text: "Application" }]);
1021
1164
 
1022
- const handleMenuItem = (item:any) => {
1023
- console.log('Menu clicked:', item)
1024
- }
1165
+ const handleMenuItem = (item: any) => {
1166
+ console.log("Menu clicked:", item);
1167
+ };
1025
1168
 
1026
- const addAction = (e:Event) => {
1027
- console.log("Action Item clicked:" + e)
1028
- }
1169
+ const addAction = (e: Event) => {
1170
+ console.log("Action Item clicked:" + e);
1171
+ };
1029
1172
 
1030
- const handleSubMenuItem = (subItem:any) => {
1173
+ const handleSubMenuItem = (subItem: any) => {
1031
1174
  console.log("Submenu item clicked:", subItem);
1032
- }
1175
+ };
1033
1176
 
1034
1177
  //TODO: TagModal
1035
1178
  const tagModal = ref(false);
@@ -1049,9 +1192,9 @@ const openModal = () => {
1049
1192
  };
1050
1193
 
1051
1194
  // accordion active Index
1052
- const handleActiveItem = (activeItems:number) => {
1053
- console.log("Currently active accordion(s):", activeItems)
1054
- }
1195
+ const handleActiveItem = (activeItems: number) => {
1196
+ console.log("Currently active accordion(s):", activeItems);
1197
+ };
1055
1198
 
1056
1199
  //TODO: Select Data
1057
1200
  const datas = ref([