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,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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"}
|