edvoyui-component-library-test-flight 0.0.170 → 0.0.173

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 (223) hide show
  1. package/dist/{edvoy-ui.cjs.js → library-vue-ts.cjs.js} +26 -26
  2. package/dist/{edvoy-ui.css → library-vue-ts.css} +1 -1
  3. package/dist/{edvoy-ui.es.js → library-vue-ts.es.js} +2262 -2249
  4. package/dist/library-vue-ts.umd.js +168 -0
  5. package/dist/selectSearch/EUISelectSearch.vue.d.ts.map +1 -0
  6. package/package.json +10 -11
  7. package/src/App.vue +16 -0
  8. package/src/App.vue.js.map +1 -0
  9. package/src/assets/fonts/gilroy/GilroyBold/font.woff +0 -0
  10. package/src/assets/fonts/gilroy/GilroyBold/font.woff2 +0 -0
  11. package/src/assets/fonts/gilroy/GilroyBoldItalic/font.woff +0 -0
  12. package/src/assets/fonts/gilroy/GilroyBoldItalic/font.woff2 +0 -0
  13. package/src/assets/fonts/gilroy/GilroyExtraBold/font.woff +0 -0
  14. package/src/assets/fonts/gilroy/GilroyExtraBold/font.woff2 +0 -0
  15. package/src/assets/fonts/gilroy/GilroyExtraBoldItalic/font.woff +0 -0
  16. package/src/assets/fonts/gilroy/GilroyExtraBoldItalic/font.woff2 +0 -0
  17. package/src/assets/fonts/gilroy/GilroyMedium/font.woff +0 -0
  18. package/src/assets/fonts/gilroy/GilroyMedium/font.woff2 +0 -0
  19. package/src/assets/fonts/gilroy/GilroyRegular/font.woff +0 -0
  20. package/src/assets/fonts/gilroy/GilroyRegular/font.woff2 +0 -0
  21. package/src/assets/fonts/gilroy/GilroySemiBold/font.woff +0 -0
  22. package/src/assets/fonts/gilroy/GilroySemiBold/font.woff2 +0 -0
  23. package/src/assets/fonts/inter/Inter-Bold.woff +0 -0
  24. package/src/assets/fonts/inter/Inter-Bold.woff2 +0 -0
  25. package/src/assets/fonts/inter/Inter-Italic.woff +0 -0
  26. package/src/assets/fonts/inter/Inter-Italic.woff2 +0 -0
  27. package/src/assets/fonts/inter/Inter-Medium.woff +0 -0
  28. package/src/assets/fonts/inter/Inter-Medium.woff2 +0 -0
  29. package/src/assets/fonts/inter/Inter-MediumItalic.woff +0 -0
  30. package/src/assets/fonts/inter/Inter-MediumItalic.woff2 +0 -0
  31. package/src/assets/fonts/inter/Inter-Regular.woff +0 -0
  32. package/src/assets/fonts/inter/Inter-Regular.woff2 +0 -0
  33. package/src/assets/fonts/inter/Inter-SemiBold.woff +0 -0
  34. package/src/assets/fonts/inter/Inter-SemiBold.woff2 +0 -0
  35. package/src/assets/fonts/inter/Inter-SemiBoldItalic.woff +0 -0
  36. package/src/assets/fonts/inter/Inter-SemiBoldItalic.woff2 +0 -0
  37. package/src/assets/images/search-nodata.png +0 -0
  38. package/src/assets/scss/body.scss +25 -0
  39. package/src/assets/svg/CheckTick.vue +21 -0
  40. package/src/assets/svg/CheckTick.vue.js.map +1 -0
  41. package/src/assets/svg/ChevronBigDown.vue +22 -0
  42. package/src/assets/svg/ChevronBigDown.vue.js.map +1 -0
  43. package/src/assets/svg/ChevronDownSolid.vue +19 -0
  44. package/src/assets/svg/ChevronDownSolid.vue.js.map +1 -0
  45. package/src/assets/svg/ChevronDownStroke.vue +22 -0
  46. package/src/assets/svg/ChevronDownStroke.vue.js.map +1 -0
  47. package/src/assets/svg/ChevronDownStrokeSolid.vue +19 -0
  48. package/src/assets/svg/ChevronDownStrokeSolid.vue.js.map +1 -0
  49. package/src/assets/svg/SearchBigZoomIn.vue +21 -0
  50. package/src/assets/svg/SearchBigZoomIn.vue.js.map +1 -0
  51. package/src/assets/svg/SortArrow.vue +24 -0
  52. package/src/assets/svg/SortArrow.vue.js.map +1 -0
  53. package/src/assets/svg/Student.vue +30 -0
  54. package/src/assets/svg/Student.vue.js.map +1 -0
  55. package/src/assets/svg/partner.vue +33 -0
  56. package/src/assets/svg/partner.vue.js.map +1 -0
  57. package/src/assets/svg/people.vue +25 -0
  58. package/src/assets/svg/people.vue.js.map +1 -0
  59. package/src/assets/vue.svg +1 -0
  60. package/src/components/HelloWorld.vue +1974 -0
  61. package/src/components/HelloWorld.vue.js.map +1 -0
  62. package/src/components/accordion/EUIAccordion.stories.ts +204 -0
  63. package/src/components/accordion/EUIAccordion.vue +152 -0
  64. package/src/components/accordion/EUIAccordion.vue.js.map +1 -0
  65. package/src/components/alerts/EUIAlerts.stories.ts +217 -0
  66. package/src/components/alerts/EUIAlerts.vue +194 -0
  67. package/src/components/alerts/EUIAlerts.vue.js.map +1 -0
  68. package/src/components/avatar/EUIAvatar.stories.ts +157 -0
  69. package/src/components/avatar/EUIAvatar.vue +96 -0
  70. package/src/components/avatar/EUIAvatar.vue.js.map +1 -0
  71. package/src/components/breadcrumb/EUIBreadcrumb.stories.ts +75 -0
  72. package/src/components/breadcrumb/EUIBreadcrumb.vue +59 -0
  73. package/src/components/breadcrumb/EUIBreadcrumb.vue.js.map +1 -0
  74. package/src/components/button/EUIButton.stories.ts +270 -0
  75. package/src/components/button/EUIButton.vue +154 -0
  76. package/src/components/button/EUIButton.vue.js.map +1 -0
  77. package/src/components/button/EUIButtonGroup.vue +287 -0
  78. package/src/components/button/EUIButtonGroup.vue.js.map +1 -0
  79. package/src/components/button/buttonAnimateTab.vue +74 -0
  80. package/src/components/button/buttonAnimateTab.vue.js.map +1 -0
  81. package/src/components/checkbox/EUICheckbox.stories.ts +58 -0
  82. package/src/components/checkbox/EUICheckbox.vue +110 -0
  83. package/src/components/checkbox/EUICheckbox.vue.js.map +1 -0
  84. package/src/components/datepicker/EUIDatepicker.stories.ts +492 -0
  85. package/src/components/datepicker/EUIDatepicker.vue +295 -0
  86. package/src/components/datepicker/EUIDatepicker.vue.js.map +1 -0
  87. package/src/components/delete.vue +262 -0
  88. package/src/components/delete.vue.js.map +1 -0
  89. package/src/components/dragModal/EUIDrag.vue +179 -0
  90. package/src/components/dragModal/EUIDrag.vue.js.map +1 -0
  91. package/src/components/dropdown/EUIMultiDropdown.stories.ts +294 -0
  92. package/src/components/dropdown/EUIMultiDropdown.vue +187 -0
  93. package/src/components/dropdown/EUIMultiDropdown.vue.js.map +1 -0
  94. package/src/components/errorMessage/EUIErrorMessage.scss +0 -0
  95. package/src/components/errorMessage/EUIErrorMessage.stories.ts +41 -0
  96. package/src/components/errorMessage/EUIErrorMessage.vue +25 -0
  97. package/src/components/errorMessage/EUIErrorMessage.vue.js.map +1 -0
  98. package/src/components/index.js.map +1 -0
  99. package/src/components/index.ts +62 -0
  100. package/src/components/input/EUIInput.stories.ts +387 -0
  101. package/src/components/input/EUIInput.vue +223 -0
  102. package/src/components/input/EUIInput.vue.js.map +1 -0
  103. package/src/components/input/EUINumberInput.vue +250 -0
  104. package/src/components/loader/EUICircleLoader.vue +31 -0
  105. package/src/components/loader/EUICircleLoader.vue.js.map +1 -0
  106. package/src/components/loader/EUICubeLoader.vue +237 -0
  107. package/src/components/loader/EUICubeLoader.vue.js.map +1 -0
  108. package/src/components/loader/EUILoader.stories.ts +99 -0
  109. package/src/components/loader/EUILoader.vue +17 -0
  110. package/src/components/loader/EUILoader.vue.js.map +1 -0
  111. package/src/components/loader/EUISquareLoader.vue +47 -0
  112. package/src/components/loader/EUISquareLoader.vue.js.map +1 -0
  113. package/src/components/modal/EUIModal.stories.ts +412 -0
  114. package/src/components/modal/EUIModal.vue +224 -0
  115. package/src/components/modal/EUIModal.vue.js.map +1 -0
  116. package/src/components/pillSelect/EUIPillSelect.stories.ts +74 -0
  117. package/src/components/pillSelect/EUIPillSelect.vue +149 -0
  118. package/src/components/pillSelect/EUIPillSelect.vue.js.map +1 -0
  119. package/src/components/popover/EUIPopover.stories.ts +306 -0
  120. package/src/components/popover/EUIPopover.vue +297 -0
  121. package/src/components/popover/EUIPopover.vue.js.map +1 -0
  122. package/src/components/radio/EUIRadio.stories.ts +54 -0
  123. package/src/components/radio/EUIRadio.vue +75 -0
  124. package/src/components/radio/EUIRadio.vue.js.map +1 -0
  125. package/src/components/searchInput/EUISearch.stories.ts +24 -0
  126. package/src/components/searchInput/EUISearch.vue +223 -0
  127. package/src/components/searchInput/EUISearch.vue.js.map +1 -0
  128. package/src/components/searchTagSelect/EUISearchTagSelect.vue +642 -0
  129. package/src/components/searchTagSelect/EUISearchTagSelect.vue.js.map +1 -0
  130. package/src/components/searchTagSelect/SearchInput.vue +167 -0
  131. package/src/components/searchTagSelect/SearchInput.vue.js.map +1 -0
  132. package/src/components/searchexpand/EUISearchExpand.vue +148 -0
  133. package/src/components/searchexpand/EUISearchExpand.vue.js.map +1 -0
  134. package/src/components/searchexpand/EUISearchToggle.vue +86 -0
  135. package/src/components/searchexpand/EUISearchToggle.vue.js.map +1 -0
  136. package/src/components/select/EUISelect.stories.ts +101 -0
  137. package/src/components/select/EUISelect.vue +1092 -0
  138. package/src/components/select/EUISelect.vue.js.map +1 -0
  139. package/src/components/selectSearch/EUISelectSearch.vue +23 -0
  140. package/src/components/selectSearch/EUISelectSearch.vue.js.map +1 -0
  141. package/src/components/slideover/EUISlideover.stories.ts +318 -0
  142. package/src/components/slideover/EUISlideover.vue +207 -0
  143. package/src/components/slideover/EUISlideover.vue.js.map +1 -0
  144. package/src/components/stepperTimeline/EUIStepperHorizontal.vue +242 -0
  145. package/src/components/stepperTimeline/EUIStepperHorizontal.vue.js.map +1 -0
  146. package/src/components/stepperTimeline/EUIStepperTimeline.stories.ts +54 -0
  147. package/src/components/stepperTimeline/EUIStepperTimeline.vue +16 -0
  148. package/src/components/stepperTimeline/EUIStepperTimeline.vue.js.map +1 -0
  149. package/src/components/stepperTimeline/EUIStepperVertical.vue +112 -0
  150. package/src/components/stepperTimeline/EUIStepperVertical.vue.js.map +1 -0
  151. package/src/components/table/ColumnResizeTable.vue +740 -0
  152. package/src/components/table/ColumnResizeTable.vue.js.map +1 -0
  153. package/src/components/table/EUIDashboardTable.vue +514 -0
  154. package/src/components/table/EUIDashboardTable.vue.js.map +1 -0
  155. package/src/components/table/EUIPageLimit.vue +66 -0
  156. package/src/components/table/EUIPageLimit.vue.js.map +1 -0
  157. package/src/components/table/EUIPagination.vue +175 -0
  158. package/src/components/table/EUIPagination.vue.js.map +1 -0
  159. package/src/components/table/EUIStudentPagination.vue +172 -0
  160. package/src/components/table/EUIStudentPagination.vue.js.map +1 -0
  161. package/src/components/table/EUITable.stories.ts +300 -0
  162. package/src/components/table/EUITable.vue +559 -0
  163. package/src/components/table/EUITable.vue.js.map +1 -0
  164. package/src/components/table/EUITableCheckbox.vue +98 -0
  165. package/src/components/table/EUITableCheckbox.vue.js.map +1 -0
  166. package/src/components/table/GrowthTable.vue +575 -0
  167. package/src/components/table/GrowthTable.vue.js.map +1 -0
  168. package/src/components/table/GrowthTableView.vue +108 -0
  169. package/src/components/table/GrowthTableView.vue.js.map +1 -0
  170. package/src/components/table/ResizeTableview.vue +198 -0
  171. package/src/components/table/ResizeTableview.vue.js.map +1 -0
  172. package/src/components/table/UCheckbox.vue +169 -0
  173. package/src/components/table/UCheckbox.vue.js.map +1 -0
  174. package/src/components/table/UTable.scss +69 -0
  175. package/src/components/table/UTable.vue +611 -0
  176. package/src/components/table/UTable.vue.js.map +1 -0
  177. package/src/components/table/UTableview.vue +189 -0
  178. package/src/components/table/UTableview.vue.js.map +1 -0
  179. package/src/components/tabs/EUITabOutline.vue +263 -0
  180. package/src/components/tabs/EUITabOutline.vue.js.map +1 -0
  181. package/src/components/tabs/EUITabs.vue +226 -0
  182. package/src/components/tabs/EUITabs.vue.js.map +1 -0
  183. package/src/components/tabs/EUItabs.stories.ts +137 -0
  184. package/src/components/tag/EUITag.stories.ts +53 -0
  185. package/src/components/tag/EUITag.vue +88 -0
  186. package/src/components/tag/EUITag.vue.js.map +1 -0
  187. package/src/components/telephone/EUITelephone.stories.ts +358 -0
  188. package/src/components/telephone/EUITelephone.vue +299 -0
  189. package/src/components/telephone/EUITelephone.vue.js.map +1 -0
  190. package/src/components/textArea/EUITextArea.stories.ts +134 -0
  191. package/src/components/textArea/EUITextArea.vue +155 -0
  192. package/src/components/textArea/EUITextArea.vue.js.map +1 -0
  193. package/src/components/timeLine/EUITimeLine.stories.ts +247 -0
  194. package/src/components/timeLine/EUITimeLine.vue +148 -0
  195. package/src/components/timeLine/EUITimeLine.vue.js.map +1 -0
  196. package/src/components/toggle/EUIToggle.stories.ts +63 -0
  197. package/src/components/toggle/EUIToggle.vue +101 -0
  198. package/src/components/toggle/EUIToggle.vue.js.map +1 -0
  199. package/src/components/tooltip/EUITooltip.stories.ts +53 -0
  200. package/src/components/tooltip/EUITooltip.vue +111 -0
  201. package/src/components/tooltip/EUITooltip.vue.js.map +1 -0
  202. package/src/components/uidemo/select-com.vue +120 -0
  203. package/src/components/uidemo/select-com.vue.js.map +1 -0
  204. package/src/data/books.js.map +1 -0
  205. package/src/data/books.ts +163 -0
  206. package/src/data/country.ts +56 -0
  207. package/src/data/tab.js.map +1 -0
  208. package/src/data/tab.ts +40 -0
  209. package/src/data/table.js.map +1 -0
  210. package/src/data/table.ts +5654 -0
  211. package/src/main.js.map +1 -0
  212. package/src/main.ts +5 -0
  213. package/src/style.scss +186 -0
  214. package/src/utils/helpers.js.map +1 -0
  215. package/src/utils/helpers.ts +30 -0
  216. package/src/utils/lodash.js.map +1 -0
  217. package/src/utils/lodash.ts +9 -0
  218. package/src/utils/types.js.map +1 -0
  219. package/src/utils/types.ts +9 -0
  220. package/src/vite-env.d.ts +5 -0
  221. package/dist/EUISelectSearch.vue.d.ts.map +0 -1
  222. package/dist/edvoy-ui.umd.js +0 -168
  223. /package/dist/{EUISelectSearch.vue.d.ts → selectSearch/EUISelectSearch.vue.d.ts} +0 -0
@@ -0,0 +1,66 @@
1
+ <template>
2
+ <div>
3
+ <EUIPopover
4
+ trigger="click"
5
+ placement="top"
6
+ className="max-w-40 min-w-40"
7
+ customButton="px-3 py-2 text-sm font-medium text-gray-900 bg-white rounded-md group hover:text-opacity-100 focus:outline-none focus-visible:ring-2 focus-visible:ring-white focus-visible:ring-opacity-75 gap-x-1"
8
+ >
9
+ <template #referenceButton="{ open }">
10
+ <span class="whitespace-nowrap">{{ pageLimit }}</span>
11
+ <component :is="iconStyle ? ChevronDownSolid : ChevronDownStroke"
12
+ :class="open ? 'text-gray-900 rotate-180' : 'text-gray-500'"
13
+ class="transition duration-100 ease-in-out transform rotate-0 size-6 group-hover:text-opacity-80"
14
+ aria-hidden="true"
15
+ />
16
+ </template>
17
+ <!-- Popper Content Here... -->
18
+ <div
19
+ class="overflow-hidden bg-white rounded-lg shadow-lg ring-1 ring-black ring-opacity-5"
20
+ >
21
+ <ul>
22
+ <li
23
+ v-for="item in pageList"
24
+ :key="item"
25
+ class="block w-full px-4 py-2 text-sm font-medium cursor-pointer hover:bg-gray-50"
26
+ :class="[
27
+ item === pageLimit
28
+ ? 'bg-purple-100 text-purple-600'
29
+ : 'text-gray-700'
30
+ ]"
31
+ role="button"
32
+ aria-roledescription="button"
33
+ @click="changePageLimit(item)"
34
+ >
35
+ {{ item }} per page
36
+ </li>
37
+ </ul>
38
+ </div>
39
+ </EUIPopover>
40
+ </div>
41
+ </template>
42
+
43
+ <script lang="ts" setup>
44
+ import { PropType, ref, toRefs } from 'vue';
45
+ import ChevronDownSolid from '../../assets/svg/ChevronDownSolid.vue';
46
+ import ChevronDownStroke from '../../assets/svg/ChevronDownStroke.vue';
47
+ import EUIPopover from '../popover/EUIPopover.vue';
48
+
49
+ const props = defineProps({
50
+ pageLimit: {
51
+ type: Number as PropType<number>,
52
+ default: 5
53
+ },
54
+ iconStyle: {
55
+ type: Boolean,
56
+ default: false,
57
+ },
58
+ })
59
+ const { pageLimit } = toRefs(props)
60
+ const emit = defineEmits(['updateLimit', 'refetch'])
61
+ const pageList = ref([5, 10, 20, 30, 40, 50, 100])
62
+ const changePageLimit = (data: any) => {
63
+ emit('updateLimit', data)
64
+ emit('refetch')
65
+ }
66
+ </script>
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EUIPageLimit.vue.js","sourceRoot":"","sources":["EUIPageLimit.vue"],"names":[],"mappings":"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"}
@@ -0,0 +1,175 @@
1
+ <template>
2
+
3
+ <div
4
+ class="inline-flex flex-row items-center gap-2 overflow-hidden border-gray-100 rounded"
5
+ >
6
+ <div>
7
+ <button
8
+ :class="[
9
+ 'rounded-md capitalize box-border border-none focus:outline-none inline-flex flex-row gap-x-2 items-center transition duration-150 ease-in-out bg-white text-black cursor-pointer text-sm font-medium px-3 py-2',
10
+ currentPage === 1 && 'opacity-50 pointer-events-none',
11
+ ]"
12
+ :disabled="currentPage === 1 ? true : false"
13
+ @click="prev()"
14
+ >
15
+ <ChevronDownStroke class="text-current transform rotate-90 size-6" />
16
+ <span class="hidden md:block">Back</span>
17
+ </button>
18
+ </div>
19
+ <div v-for="i in displayedPages" :key="i">
20
+ <button
21
+ :class="[
22
+ 'rounded-md capitalize box-border border-none focus:outline-none inline-flex flex-row gap-x-2 items-center transition duration-150 ease-in-out cursor-pointer text-sm font-medium px-3 py-2',
23
+ i == '…'
24
+ ? 'select-none pointer-events-none'
25
+ : currentPage == i
26
+ ? 'text-white bg-violet-600'
27
+ : 'bg-white text-black',
28
+ ]"
29
+ @click="typeof i === 'number' && changePage(i - 1)"
30
+ >
31
+ {{ i }}
32
+ </button>
33
+ </div>
34
+ <div>
35
+ <button
36
+ :class="[
37
+ 'rounded-md capitalize box-border border-none focus:outline-none inline-flex flex-row gap-x-2 items-center transition duration-150 ease-in-out bg-white text-black cursor-pointer text-sm font-medium px-3 py-2',
38
+ totalPages === currentPage && 'opacity-50 pointer-events-none',
39
+ ]"
40
+ :disabled="totalPages === currentPage ? true : false"
41
+ @click="next()"
42
+ >
43
+ <span class="hidden md:block">Next</span>
44
+ <ChevronDownStroke class="text-current transform -rotate-90 size-6" />
45
+ </button>
46
+ </div>
47
+ </div>
48
+ </template>
49
+
50
+ <script setup lang="ts">
51
+ import { computed } from 'vue';
52
+ import ChevronDownStroke from '../../assets/svg/ChevronDownStroke.vue';
53
+
54
+ const props = defineProps({
55
+ totalCount: {
56
+ type: Number, default: 0, required: true
57
+ },
58
+ pageLimit: {
59
+ type: Number, default: 0, required: true
60
+ },
61
+ activePage: {
62
+ type: Number, default: 0
63
+ },
64
+ divider: {
65
+ type: String, default: '…'
66
+ },
67
+ max: {
68
+ type: Number, default: 7,
69
+ validate (value:number) {
70
+ return value >= 5 && value < Number.MAX_VALUE
71
+ }
72
+ }
73
+ })
74
+
75
+ const emit = defineEmits(['changePage'])
76
+ const currentPage = computed(() => props.activePage + 1);
77
+ const totalPages = computed(() => {
78
+ return props.pageLimit > 0 ? Math.ceil(props.totalCount / props.pageLimit) : 1
79
+ });
80
+
81
+ const prev = () => {
82
+ if (props.activePage > 0) {
83
+ const prevPage = props.activePage - 1
84
+ changePage(prevPage)
85
+ }
86
+ }
87
+
88
+ const next = () => {
89
+ if (props.activePage < totalPages.value - 1) {
90
+ const nextPage = props.activePage + 1
91
+ changePage(nextPage)
92
+ }
93
+ }
94
+
95
+ const changePage = (page: Number) => {
96
+ emit('changePage', page)
97
+ }
98
+
99
+ // new pagination count
100
+ const pages = computed(() => Array.from({ length: Math.ceil(props.totalCount / props.pageLimit) },(_, i) => i + 1))
101
+
102
+ const displayedPages = computed(() => {
103
+ const totalPages = pages.value.length
104
+ const current = currentPage.value
105
+ const maxDisplayedPages = Math.max(props.max, 12)
106
+
107
+ const r = Math.floor((Math.min(maxDisplayedPages, totalPages) - 7) / 2)
108
+ const r1 = current - r
109
+ const r2 = current + r
110
+
111
+ const beforeWrapped = r1 - 1 > 1
112
+ const afterWrapped = r2 + 1 < totalPages
113
+
114
+ const items: Array<number | string> = []
115
+
116
+ if (totalPages <= maxDisplayedPages) {
117
+ for (let i = 1; i <= totalPages; i++) {
118
+ items.push(i)
119
+ }
120
+ return items
121
+ }
122
+
123
+ items.push(1)
124
+
125
+ if (beforeWrapped) {
126
+ items.push(props.divider)
127
+ }
128
+
129
+ if (!afterWrapped) {
130
+ const addedItems = current + r + 2 - totalPages
131
+ for (let i = current - r - addedItems; i <= current - r - 1; i++) {
132
+ items.push(i)
133
+ }
134
+ }
135
+
136
+ for (let i = Math.max(2, r1); i <= Math.min(totalPages, r2); i++) {
137
+ items.push(i)
138
+ }
139
+
140
+ if (!beforeWrapped) {
141
+ const addedItems = 1 - (current - r - 2)
142
+ for (let i = current + r + 1; i <= current + r + addedItems; i++) {
143
+ items.push(i)
144
+ }
145
+ }
146
+
147
+ if (afterWrapped) {
148
+ items.push(props.divider)
149
+ }
150
+
151
+ if (r2 < totalPages) {
152
+ items.push(totalPages)
153
+ }
154
+
155
+ // Replace divider by number on start edge case [1, '…', 3, ...]
156
+ if (items.length >= 3 && items[1] === props.divider && items[2] === 3) {
157
+ items[1] = 2
158
+ }
159
+
160
+ // Replace divider by number on end edge case [..., 48, '…', 50]
161
+ if (
162
+ items.length >= 3 &&
163
+ items[items.length - 2] === props.divider &&
164
+ items[items.length - 1] === items.length
165
+ ) {
166
+ items[items.length - 2] = items.length - 1
167
+ }
168
+
169
+ return items
170
+ })
171
+ </script>
172
+
173
+ <style scoped>
174
+
175
+ </style>
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EUIPagination.vue.js","sourceRoot":"","sources":["EUIPagination.vue"],"names":[],"mappings":"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"}
@@ -0,0 +1,172 @@
1
+ <template>
2
+ <div class="inline-flex flex-row items-center overflow-hidden gap-x-1">
3
+ <div>
4
+ <button
5
+ :class="[
6
+ 'rounded-md capitalize box-border border-none focus:outline-none inline-flex flex-row gap-x-2 items-center transition duration-150 ease-in-out bg-white text-black cursor-pointer text-sm font-medium px-3 py-1 leading-6',
7
+ currentPage === 1 && 'opacity-50 pointer-events-none',
8
+ ]"
9
+ :disabled="currentPage === 1 ? true : false"
10
+ @click="prev()"
11
+ >
12
+ <ChevronDownStroke class="text-current transform rotate-90 size-6" />
13
+ <span class="hidden md:block">Prev</span>
14
+ </button>
15
+ </div>
16
+ <div v-for="i in displayedPages" :key="i">
17
+ <button
18
+ :class="[
19
+ 'rounded-md capitalize box-border border-none focus:outline-none inline-flex flex-row gap-x-1 items-center transition-transform duration-100 ease-in-out cursor-pointer text-sm font-medium leading-6 px-3 py-1',
20
+ i === '…'
21
+ ? 'select-none pointer-events-none'
22
+ : currentPage === i
23
+ ? 'text-black bg-purple-50 ring-2 ring-inset ring-purple-600'
24
+ : 'bg-white text-black',
25
+ ]"
26
+ @click="typeof i === 'number' && changePage(i - 1)"
27
+ >
28
+ {{ i }}
29
+ </button>
30
+ </div>
31
+ <div>
32
+ <button
33
+ :class="[
34
+ 'rounded-md capitalize box-border border-none focus:outline-none inline-flex flex-row gap-x-2 items-center transition duration-150 ease-in-out bg-white text-black cursor-pointer text-sm font-medium px-3 py-1 leading-6',
35
+ totalPages === currentPage && 'opacity-50 pointer-events-none',
36
+ ]"
37
+ :disabled="totalPages === currentPage ? true : false"
38
+ @click="next()"
39
+ >
40
+ <span class="hidden md:block">Next</span>
41
+ <ChevronDownStroke class="text-current transform -rotate-90 size-6" />
42
+ </button>
43
+ </div>
44
+ </div>
45
+ </template>
46
+
47
+ <script setup lang="ts">
48
+ import { computed } from 'vue';
49
+ import ChevronDownStroke from '../../assets/svg/ChevronDownStroke.vue';
50
+
51
+ const props = defineProps({
52
+ totalCount: {
53
+ type: Number, default: 0, required: true
54
+ },
55
+ pageLimit: {
56
+ type: Number, default: 0, required: true
57
+ },
58
+ activePage: {
59
+ type: Number, default: 0
60
+ },
61
+ divider: {
62
+ type: String, default: '…'
63
+ },
64
+ max: {
65
+ type: Number, default: 7,
66
+ validate (value:number) {
67
+ return value >= 5 && value < Number.MAX_VALUE
68
+ }
69
+ }
70
+ })
71
+
72
+ const emit = defineEmits(['changePage'])
73
+ const currentPage = computed(() => props.activePage + 1);
74
+
75
+ const totalPages = computed(() => {
76
+ return props.pageLimit > 0 ? Math.ceil(props.totalCount / props.pageLimit) : 1
77
+ });
78
+
79
+ const prev = () => {
80
+ if (props.activePage > 0) {
81
+ const prevPage = props.activePage - 1
82
+ changePage(prevPage)
83
+ }
84
+ }
85
+
86
+ const next = () => {
87
+ if (props.activePage < totalPages.value - 1) {
88
+ const nextPage = props.activePage + 1
89
+ changePage(nextPage)
90
+ }
91
+ }
92
+
93
+ const changePage = (page: Number) => {
94
+ emit('changePage', page)
95
+ }
96
+
97
+ // new pagination count
98
+ const pages = computed(() => Array.from({ length: Math.ceil(props.totalCount / props.pageLimit) },(_, i) => i + 1))
99
+
100
+ const displayedPages = computed(() => {
101
+ const totalPages = pages.value.length
102
+ const current = currentPage.value
103
+ const maxDisplayedPages = Math.max(props.max, 5)
104
+
105
+ const r = Math.floor((Math.min(maxDisplayedPages, totalPages) - 5) / 2)
106
+ const r1 = current - r
107
+ const r2 = current + r
108
+
109
+ const beforeWrapped = r1 - 1 > 1
110
+ const afterWrapped = r2 + 1 < totalPages
111
+
112
+ const items: Array<number | string> = []
113
+
114
+ if (totalPages <= maxDisplayedPages) {
115
+ for (let i = 1; i <= totalPages; i++) {
116
+ items.push(i)
117
+ }
118
+ return items
119
+ }
120
+
121
+ items.push(1)
122
+
123
+ if (beforeWrapped) {
124
+ items.push(props.divider)
125
+ }
126
+
127
+ if (!afterWrapped) {
128
+ const addedItems = current + r + 2 - totalPages
129
+ for (let i = current - r - addedItems; i <= current - r - 1; i++) {
130
+ items.push(i)
131
+ }
132
+ }
133
+
134
+ for (let i = Math.max(2, r1); i <= Math.min(totalPages, r2); i++) {
135
+ items.push(i)
136
+ }
137
+
138
+ if (!beforeWrapped) {
139
+ const addedItems = 1 - (current - r - 2)
140
+ for (let i = current + r + 1; i <= current + r + addedItems; i++) {
141
+ items.push(i)
142
+ }
143
+ }
144
+
145
+ if (afterWrapped) {
146
+ items.push(props.divider)
147
+ }
148
+
149
+ if (r2 < totalPages) {
150
+ items.push(totalPages)
151
+ }
152
+
153
+ // Replace divider by number on start edge case [1, '…', 3, ...]
154
+ if (items.length >= 3 && items[1] === props.divider && items[2] === 3) {
155
+ items[1] = 2
156
+ }
157
+
158
+ // Replace divider by number on end edge case [..., 48, '…', 50]
159
+ if (
160
+ items.length >= 3 &&
161
+ items[items.length - 2] === props.divider &&
162
+ items[items.length - 1] === items.length
163
+ ) {
164
+ items[items.length - 2] = items.length - 1
165
+ }
166
+
167
+ return items
168
+ })
169
+ </script>
170
+
171
+ <style scoped>
172
+ </style>
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EUIStudentPagination.vue.js","sourceRoot":"","sources":["EUIStudentPagination.vue"],"names":[],"mappings":"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"}