edvoyui-component-library-test-flight 0.0.168 → 0.0.170
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/package.json +10 -3
- package/src/App.vue +0 -16
- package/src/assets/svg/CheckTick.vue +0 -21
- package/src/assets/svg/ChevronBigDown.vue +0 -22
- package/src/assets/svg/ChevronDownSolid.vue +0 -19
- package/src/assets/svg/ChevronDownStroke.vue +0 -22
- package/src/assets/svg/ChevronDownStrokeSolid.vue +0 -19
- package/src/assets/svg/SearchBigZoomIn.vue +0 -21
- package/src/assets/svg/SortArrow.vue +0 -24
- package/src/assets/svg/Student.vue +0 -30
- package/src/assets/svg/partner.vue +0 -33
- package/src/assets/svg/people.vue +0 -25
- package/src/components/HelloWorld.vue +0 -1974
- package/src/components/accordion/EUIAccordion.vue +0 -152
- package/src/components/alerts/EUIAlerts.vue +0 -194
- package/src/components/avatar/EUIAvatar.vue +0 -96
- package/src/components/breadcrumb/EUIBreadcrumb.vue +0 -59
- package/src/components/button/EUIButton.vue +0 -154
- package/src/components/button/EUIButtonGroup.vue +0 -287
- package/src/components/button/buttonAnimateTab.vue +0 -74
- package/src/components/checkbox/EUICheckbox.vue +0 -110
- package/src/components/datepicker/EUIDatepicker.vue +0 -295
- package/src/components/delete.vue +0 -262
- package/src/components/dragModal/EUIDrag.vue +0 -179
- package/src/components/dropdown/EUIMultiDropdown.vue +0 -174
- package/src/components/errorMessage/EUIErrorMessage.vue +0 -25
- package/src/components/input/EUIInput.vue +0 -223
- package/src/components/input/EUINumberInput.vue +0 -250
- package/src/components/loader/EUICircleLoader.vue +0 -31
- package/src/components/loader/EUICubeLoader.vue +0 -237
- package/src/components/loader/EUILoader.vue +0 -17
- package/src/components/loader/EUISquareLoader.vue +0 -47
- package/src/components/modal/EUIModal.vue +0 -224
- package/src/components/pillSelect/EUIPillSelect.vue +0 -149
- package/src/components/popover/EUIPopover.vue +0 -297
- package/src/components/radio/EUIRadio.vue +0 -75
- package/src/components/searchInput/EUISearch.vue +0 -223
- package/src/components/searchTagSelect/EUISearchTagSelect.vue +0 -642
- package/src/components/searchTagSelect/SearchInput.vue +0 -167
- package/src/components/searchexpand/EUISearchExpand.vue +0 -148
- package/src/components/searchexpand/EUISearchToggle.vue +0 -86
- package/src/components/select/EUISelect.vue +0 -1092
- package/src/components/selectSearch/EUISelectSearch.vue +0 -23
- package/src/components/slideover/EUISlideover.vue +0 -207
- package/src/components/stepperTimeline/EUIStepperHorizontal.vue +0 -242
- package/src/components/stepperTimeline/EUIStepperTimeline.vue +0 -16
- package/src/components/stepperTimeline/EUIStepperVertical.vue +0 -112
- package/src/components/table/ColumnResizeTable.vue +0 -740
- package/src/components/table/EUIDashboardTable.vue +0 -514
- package/src/components/table/EUIPageLimit.vue +0 -66
- package/src/components/table/EUIPagination.vue +0 -175
- package/src/components/table/EUIStudentPagination.vue +0 -172
- package/src/components/table/EUITable.vue +0 -559
- package/src/components/table/EUITableCheckbox.vue +0 -98
- package/src/components/table/GrowthTable.vue +0 -575
- package/src/components/table/GrowthTableView.vue +0 -108
- package/src/components/table/ResizeTableview.vue +0 -198
- package/src/components/table/UCheckbox.vue +0 -169
- package/src/components/table/UTable.vue +0 -611
- package/src/components/table/UTableview.vue +0 -189
- package/src/components/tabs/EUITabOutline.vue +0 -263
- package/src/components/tabs/EUITabs.vue +0 -226
- package/src/components/tag/EUITag.vue +0 -88
- package/src/components/telephone/EUITelephone.vue +0 -299
- package/src/components/textArea/EUITextArea.vue +0 -155
- package/src/components/timeLine/EUITimeLine.vue +0 -148
- package/src/components/toggle/EUIToggle.vue +0 -101
- package/src/components/tooltip/EUITooltip.vue +0 -111
- package/src/components/uidemo/select-com.vue +0 -120
|
@@ -1,175 +0,0 @@
|
|
|
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>
|
|
@@ -1,172 +0,0 @@
|
|
|
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>
|