adminforth 2.4.0-next.78 → 2.4.0-next.79
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/modules/configValidator.d.ts.map +1 -1
- package/dist/modules/configValidator.js +0 -1
- package/dist/modules/configValidator.js.map +1 -1
- package/dist/modules/styles.d.ts +411 -16
- package/dist/modules/styles.d.ts.map +1 -1
- package/dist/modules/styles.js +488 -55
- package/dist/modules/styles.js.map +1 -1
- package/dist/spa/src/App.vue +1 -1
- package/dist/spa/src/afcl/Button.vue +3 -3
- package/dist/spa/src/afcl/Dialog.vue +6 -6
- package/dist/spa/src/afcl/Dropzone.vue +10 -10
- package/dist/spa/src/afcl/Input.vue +4 -4
- package/dist/spa/src/afcl/ProgressBar.vue +7 -7
- package/dist/spa/src/afcl/Select.vue +12 -12
- package/dist/spa/src/afcl/Skeleton.vue +6 -6
- package/dist/spa/src/afcl/Table.vue +11 -11
- package/dist/spa/src/afcl/Tooltip.vue +1 -1
- package/dist/spa/src/afcl/VerticalTabs.vue +3 -3
- package/dist/spa/src/components/AcceptModal.vue +6 -6
- package/dist/spa/src/components/Breadcrumbs.vue +5 -5
- package/dist/spa/src/components/ColumnValueInput.vue +5 -5
- package/dist/spa/src/components/ColumnValueInputWrapper.vue +1 -1
- package/dist/spa/src/components/CustomDatePicker.vue +95 -9
- package/dist/spa/src/components/CustomDateRangePicker.vue +8 -8
- package/dist/spa/src/components/CustomRangePicker.vue +32 -3
- package/dist/spa/src/components/Filters.vue +4 -4
- package/dist/spa/src/components/GroupsTable.vue +6 -6
- package/dist/spa/src/components/ResourceListTable.vue +9 -9
- package/dist/spa/src/components/ResourceListTableVirtual.vue +8 -8
- package/dist/spa/src/components/ShowTable.vue +6 -6
- package/dist/spa/src/components/SingleSkeletLoader.vue +6 -6
- package/dist/spa/src/components/SkeleteLoader.vue +1 -1
- package/dist/spa/src/components/ThreeDotsMenu.vue +5 -5
- package/dist/spa/src/components/Toast.vue +2 -7
- package/dist/spa/src/types/Common.ts +2 -5
- package/dist/spa/src/views/CreateView.vue +3 -3
- package/dist/spa/src/views/EditView.vue +2 -2
- package/dist/spa/src/views/ListView.vue +6 -10
- package/dist/spa/src/views/LoginView.vue +9 -9
- package/dist/spa/src/views/ShowView.vue +3 -3
- package/dist/types/Common.d.ts +2 -5
- package/dist/types/Common.d.ts.map +1 -1
- package/dist/types/Common.js.map +1 -1
- package/package.json +1 -1
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
<div>
|
|
3
3
|
<div class="grid w-40 gap-4 mb-2">
|
|
4
4
|
<div>
|
|
5
|
-
<label v-if="label" for="start-time" class="block mb-2 text-sm font-medium text-
|
|
5
|
+
<label v-if="label" for="start-time" class="block mb-2 text-sm font-medium text-lightDatePickerButtonText dark:text-darkDatePickerButtonText">{{ label }}</label>
|
|
6
6
|
|
|
7
7
|
<div class="relative" :class="{hidden: column.type === 'time'}">
|
|
8
8
|
<div class="absolute inset-y-0 end-0 top-0 flex items-center pe-3.5 pointer-events-none">
|
|
9
|
-
<IconCalendar class="w-4 h-4 text-
|
|
9
|
+
<IconCalendar class="w-4 h-4 text-lightDatePickerIcon dark:text-darkDatePickerIcon"/>
|
|
10
10
|
</div>
|
|
11
11
|
|
|
12
12
|
<input ref="datepickerStartEl" type="text"
|
|
13
|
-
class="af-pick-date-button bg-
|
|
13
|
+
class="af-pick-date-button bg-lightDatePickerButtonBackground border border-lightDatePickerButtonBorder text-lightDatePickerButtonText text-sm rounded-lg block w-full p-2.5 dark:bg-darkDatePickerButtonBackground dark:border-darkDatePickerButtonBorder dark:placeholder-darkInputPlaceholderText dark:text-darkDatePickerButtonText focus:ring-lightInputFocusRing focus:border-lightInputFocusBorder dark:focus:ring-darkInputFocusRing dark:focus:border-darkInputFocusBorder"
|
|
14
14
|
:placeholder="$t('Select date')" :disabled="readonly" />
|
|
15
15
|
|
|
16
16
|
</div>
|
|
@@ -22,18 +22,17 @@
|
|
|
22
22
|
<div>
|
|
23
23
|
<div class="relative">
|
|
24
24
|
<div class="absolute inset-y-0 end-0 top-0 flex items-center pe-3.5 pointer-events-none">
|
|
25
|
-
<IconTime class="w-4 h-4 text-
|
|
25
|
+
<IconTime class="w-4 h-4 text-lightDatePickerIcon dark:text-darkDatePickerIcon bg-lightDatePickerButtonBackground dark:bg-darkDatePickerButtonBackground"/>
|
|
26
26
|
</div>
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
class="af-pick-time-button bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white focus:ring-lightPrimary focus:border-lightPrimary dark:focus:ring-darkPrimary dark:focus:border-darkPrimary"
|
|
27
|
+
<input v-model="startTime" type="time" id="start-time" step="1"
|
|
28
|
+
class="af-pick-time-button bg-lightDatePickerButtonBackground border border-lightDatePickerButtonBorder text-lightDatePickerButtonText text-sm rounded-lg block w-full p-2.5 dark:bg-darkInputBackground dark:border-darkInputBorder dark:placeholder-darkInputPlaceholderText dark:text-darkDatePickerButtonText focus:ring-lightInputFocusRing focus:border-lightInputFocusBorder dark:focus:ring-darkInputFocusRing dark:focus:border-darkInputFocusBorder"
|
|
30
29
|
value="00:00" :disabled="readonly" required/>
|
|
31
30
|
</div>
|
|
32
31
|
</div>
|
|
33
32
|
</div>
|
|
34
33
|
|
|
35
34
|
<button type="button"
|
|
36
|
-
class="text-
|
|
35
|
+
class="text-lightDatePickerExpandText dark:text-darkDatePickerExpandText text-base font-medium hover:underline p-0 inline-flex items-center mb-2"
|
|
37
36
|
:class="{hidden: column.type !== 'datetime'}"
|
|
38
37
|
@click="toggleTimeInputs">{{ showTimeInputs ? $t('Hide time') : $t('Show time') }}
|
|
39
38
|
<svg class="w-8 h-8 ms-0.5" :class="{'rotate-180': showTimeInputs}" aria-hidden="true"
|
|
@@ -197,4 +196,91 @@ function focus() {
|
|
|
197
196
|
defineExpose({
|
|
198
197
|
focus,
|
|
199
198
|
});
|
|
200
|
-
</script>
|
|
199
|
+
</script>
|
|
200
|
+
|
|
201
|
+
<style lang="css" scoped>
|
|
202
|
+
|
|
203
|
+
:global(.datepicker-controls button svg),
|
|
204
|
+
:global(.datepicker-controls button) {
|
|
205
|
+
@apply text-lightDatePickerCalendarText;
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
:global( .datepicker-dropdown ),
|
|
209
|
+
:global( .datepicker-picker ) {
|
|
210
|
+
@apply !bg-lightDatePickerCalendarBackground
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
:global(.datepicker-controls button:hover) {
|
|
214
|
+
@apply bg-lightDatePickerCalendarArrowButtonBackgroundHover;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
:global(.datepicker-controls button) {
|
|
218
|
+
@apply ring-lightDatePickerCalendarArrowButtonFocusRing bg-lightDatePickerCalendarArrowButtonBackground;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
:global(.datepicker-controls button:focus) {
|
|
222
|
+
@apply ring-lightDatePickerCalendarArrowButtonFocusRing;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
:global(.days-of-week span) {
|
|
226
|
+
@apply text-lightDatePickerCalendarDaysOfWeekText;
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
:global(.datepicker-grid span) {
|
|
230
|
+
@apply text-lightDatePickerCalendarDateButtonText;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
:global(.datepicker-grid span:hover:not(.selected)) {
|
|
234
|
+
@apply bg-lightDatePickerCalendarDateButtonBackgroundHover;
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
:global(.datepicker-grid .selected ) {
|
|
238
|
+
@apply text-lightDatePickerCalendarDateActiveButtonText bg-lightDatePickerCalendarDateActiveButtonBackground;
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
|
|
242
|
+
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
|
|
246
|
+
|
|
247
|
+
|
|
248
|
+
:global(.dark .datepicker-controls button svg),
|
|
249
|
+
:global(.dark .datepicker-controls button) {
|
|
250
|
+
@apply text-darkDatePickerCalendarMainText;
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
:global(.dark .datepicker-dropdown),
|
|
254
|
+
:global(.dark .datepicker-picker) {
|
|
255
|
+
@apply !bg-darkDatePickerCalendarBackground;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
:global(.dark .datepicker-controls button:hover) {
|
|
259
|
+
@apply bg-darkDatePickerCalendarArrowButtonBackgroundHover;
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
:global(.dark .datepicker-controls button) {
|
|
263
|
+
@apply ring-darkDatePickerCalendarArrowButtonFocusRing bg-darkDatePickerCalendarArrowButtonBackground;
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
:global(.dark .datepicker-controls button) {
|
|
267
|
+
@apply ring-darkDatePickerCalendarArrowButtonFocusRing;
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
:global(.dark .days-of-week span) {
|
|
271
|
+
@apply text-darkDatePickerCalendarDaysOfWeekText;
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
:global(.dark .datepicker-grid span) {
|
|
275
|
+
@apply text-darkDatePickerCalendarDateButtonText;
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
:global(.dark .datepicker-grid span:hover:not(.selected)) {
|
|
279
|
+
@apply bg-darkDatePickerCalendarDateButtonBackgroundHover;
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
:global(.dark .datepicker-grid .selected) {
|
|
283
|
+
@apply text-darkDatePickerCalendarDateActiveButtonText
|
|
284
|
+
bg-darkDatePickerCalendarDateActiveButtonBackground;
|
|
285
|
+
}
|
|
286
|
+
</style>
|
|
@@ -3,21 +3,21 @@
|
|
|
3
3
|
<div class="mx-auto grid grid-cols-2 gap-4 mb-2" :class="{hidden: column.type === 'time'}">
|
|
4
4
|
<div class="relative">
|
|
5
5
|
<div class="absolute inset-y-0 end-0 top-0 flex items-center pe-3.5 pointer-events-none">
|
|
6
|
-
<IconCalendar class="w-4 h-4 text-
|
|
6
|
+
<IconCalendar class="w-4 h-4 text-lightDatePickerIcon dark:text-darkDatePickerIcon"/>
|
|
7
7
|
</div>
|
|
8
8
|
|
|
9
9
|
<input ref="datepickerStartEl" type="text"
|
|
10
|
-
class="bg-
|
|
10
|
+
class="bg-lightDatePickerButtonBackground border leading-none border-lightDatePickerButtonBorder text-lightDatePickerButtonText placeholder-lightDatePickerPlaceHolder text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-darkDatePickerButtonBackground dark:border-darkDatePickerButtonBorder dark:placeholder-darkDatePickerPlaceHolder dark:text-darkDatePickerButtonText dark:focus:ring-blue-500 dark:focus:border-blue-500"
|
|
11
11
|
:placeholder="$t('From')">
|
|
12
12
|
</div>
|
|
13
13
|
|
|
14
14
|
<div class="relative">
|
|
15
15
|
<div class="absolute inset-y-0 end-0 top-0 flex items-center pe-3.5 pointer-events-none">
|
|
16
|
-
<IconCalendar class="w-4 h-4 text-
|
|
16
|
+
<IconCalendar class="w-4 h-4 text-lightDatePickerIcon dark:text-darkDatePickerIcon"/>
|
|
17
17
|
</div>
|
|
18
18
|
|
|
19
19
|
<input ref="datepickerEndEl" type="text"
|
|
20
|
-
class="bg-
|
|
20
|
+
class="bg-lightDatePickerButtonBackground border leading-none border-lightDatePickerButtonBorder text-lightDatePickerButtonText placeholder-lightDatePickerPlaceHolder text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-darkDatePickerButtonBackground dark:border-darkDatePickerButtonBorder dark:placeholder-darkDatePickerPlaceHolder dark:text-darkDatePickerButtonText dark:focus:ring-blue-500 dark:focus:border-blue-500"
|
|
21
21
|
:placeholder="$t('To')">
|
|
22
22
|
</div>
|
|
23
23
|
</div>
|
|
@@ -27,11 +27,11 @@
|
|
|
27
27
|
<div>
|
|
28
28
|
<div class="relative">
|
|
29
29
|
<div class="absolute inset-y-0 end-0 top-0 flex items-center pe-3.5 pointer-events-none">
|
|
30
|
-
<IconTime class="w-4 h-4 text-
|
|
30
|
+
<IconTime class="w-4 h-4 text-lightDatePickerIcon dark:text-darkDatePickerIcon bg-lightDatePickerButtonBackground dark:bg-darkDatePickerButtonBackground"/>
|
|
31
31
|
</div>
|
|
32
32
|
|
|
33
33
|
<input v-model="startTime" type="time" id="start-time"
|
|
34
|
-
class="bg-
|
|
34
|
+
class="bg-lightDatePickerButtonBackground border leading-none border-lightDatePickerButtonBorder text-lightDatePickerButtonText placeholder-lightDatePickerPlaceHolder text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-darkDatePickerButtonBackground dark:border-darkDatePickerButtonBorder dark:placeholder-darkDatePickerPlaceHolder dark:text-darkDatePickerButtonText dark:focus:ring-blue-500 dark:focus:border-blue-500"
|
|
35
35
|
value="00:00" required/>
|
|
36
36
|
</div>
|
|
37
37
|
</div>
|
|
@@ -39,11 +39,11 @@
|
|
|
39
39
|
<div>
|
|
40
40
|
<div class="relative">
|
|
41
41
|
<div class="absolute inset-y-0 end-0 top-0 flex items-center pe-3.5 pointer-events-none">
|
|
42
|
-
<IconTime class="w-4 h-4 text-
|
|
42
|
+
<IconTime class="w-4 h-4 text-lightDatePickerIcon dark:text-darkDatePickerIcon bg-lightDatePickerButtonBackground dark:bg-darkDatePickerButtonBackground"/>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
<input v-model="endTime" type="time" id="end-time"
|
|
46
|
-
class="bg-
|
|
46
|
+
class="bg-lightDatePickerButtonBackground border leading-none border-lightDatePickerButtonBorder text-lightDatePickerButtonText placeholder-lightDatePickerPlaceHolder text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5 dark:bg-darkDatePickerButtonBackground dark:border-darkDatePickerButtonBorder dark:placeholder-darkDatePickerPlaceHolder dark:text-darkDatePickerButtonText dark:focus:ring-blue-500 dark:focus:border-blue-500"
|
|
47
47
|
value="00:00" required/>
|
|
48
48
|
</div>
|
|
49
49
|
</div>
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
:min="minFormatted"
|
|
5
5
|
:max="maxFormatted"
|
|
6
6
|
type="number" aria-describedby="helper-text-explanation"
|
|
7
|
-
class="bg-
|
|
7
|
+
class="bg-lightRangePickerInputBackground border border-lightRangePickerInputBorder text-lightRangePickerInputText placeholder-lightRangePickerInputPlaceholder text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-20 p-2.5 dark:bg-darkRangePickerInputBackground dark:border-darkRangePickerInputBorder dark:placeholder-darkRangePickerInputPlaceholder dark:text-darkRangePickerInputText dark:focus:ring-blue-500 dark:focus:border-blue-500"
|
|
8
8
|
:placeholder="$t('From')"
|
|
9
9
|
v-model="start"
|
|
10
10
|
>
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
:min="minFormatted"
|
|
14
14
|
:max="maxFormatted"
|
|
15
15
|
type="number" aria-describedby="helper-text-explanation"
|
|
16
|
-
class="bg-
|
|
16
|
+
class="bg-lightRangePickerInputBackground border border-lightRangePickerInputBorder text-lightRangePickerInputText placeholder-lightRangePickerInputPlaceholder text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-20 p-2.5 dark:bg-darkRangePickerInputBackground dark:border-darkRangePickerInputBorder dark:placeholder-darkRangePickerInputPlaceholder dark:text-darkRangePickerInputText dark:focus:ring-blue-500 dark:focus:border-blue-500"
|
|
17
17
|
:placeholder="$t('To')"
|
|
18
18
|
v-model="end"
|
|
19
19
|
>
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
<button
|
|
22
22
|
v-if="isChanged"
|
|
23
23
|
type="button"
|
|
24
|
-
class="flex items-center p-0.5 ml-auto px-3 text-sm font-medium text-
|
|
24
|
+
class="flex items-center p-0.5 ml-auto px-3 text-sm font-medium text-lightRangePickerButtonText focus:outline-none bg-lightRangePickerButtonBackground rounded border border-lightRangePickerButtonBorder hover:bg-lightRangePickerButtonBackgroundHover hover:text-lightRangePickerButtonTextHover focus:z-10 focus:ring-4 focus:ring-lightRangePickerFocusRing dark:focus:ring-darkRangePickerFocusRing dark:bg-darkRangePickerButtonBackground dark:text-darkRangePickerButtonText dark:border-darkRangePickerButtonBorder dark:hover:text-darkRangePickerButtonTextHover dark:hover:bg-darkRangePickerButtonBackgroundHover disabled:opacity-50 disabled:cursor-not-allowed"
|
|
25
25
|
@click="clear">Clear
|
|
26
26
|
</button>
|
|
27
27
|
|
|
@@ -153,4 +153,33 @@ function setSliderValues(start, end) {
|
|
|
153
153
|
@apply bg-lightPrimaryOpacity;
|
|
154
154
|
}
|
|
155
155
|
}
|
|
156
|
+
|
|
157
|
+
.dark .custom-slider {
|
|
158
|
+
&:deep(.vue-slider-rail) {
|
|
159
|
+
background-color: rgb(55 65 81); // gray-700
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
&:deep(.vue-slider-dot-handle) {
|
|
163
|
+
@apply bg-darkPrimary;
|
|
164
|
+
border: none;
|
|
165
|
+
box-shadow: none;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
&:deep(.vue-slider-dot-handle:hover) {
|
|
169
|
+
@apply bg-darkPrimary;
|
|
170
|
+
filter: brightness(1.1);
|
|
171
|
+
border: none;
|
|
172
|
+
box-shadow: none;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
&:deep(.vue-slider-process) {
|
|
176
|
+
@apply bg-darkPrimaryOpacity;
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
&:deep(.vue-slider-process:hover) {
|
|
180
|
+
filter: brightness(1.1);
|
|
181
|
+
@apply bg-darkPrimaryOpacity;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
|
|
156
185
|
</style>
|
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
<!-- drawer component -->
|
|
3
3
|
<div id="drawer-navigation"
|
|
4
4
|
|
|
5
|
-
class="af-filters-sidebar fixed right-0 z-50 p-4 overflow-y-auto transition-transform translate-x-full bg-
|
|
5
|
+
class="af-filters-sidebar fixed right-0 z-50 p-4 overflow-y-auto transition-transform translate-x-full bg-lightFiltersBackgroung w-80 dark:bg-darkFiltersBackgroung shadow-xl dark:shadow-gray-900"
|
|
6
6
|
|
|
7
7
|
:class="show ? 'top-0 transform-none' : ''"
|
|
8
8
|
tabindex="-1" aria-labelledby="drawer-navigation-label"
|
|
9
9
|
:style="{ height: `calc(100dvh ` }"
|
|
10
10
|
>
|
|
11
|
-
<h5 id="drawer-navigation-label" class="text-base font-semibold text-
|
|
11
|
+
<h5 id="drawer-navigation-label" class="text-base font-semibold text-lightFiltersHeaderText uppercase dark:text-darkFiltersHeaderText">
|
|
12
12
|
{{ $t('Filters') }}
|
|
13
13
|
|
|
14
|
-
<button type="button" @click="$emit('hide')" class="text-
|
|
14
|
+
<button type="button" @click="$emit('hide')" class="text-lightFiltersCloseIcon bg-transparent hover:bg-lightFiltersCloseIconHoverBackground hover:text-lightFiltersCloseIconHover rounded-lg text-sm p-1.5 absolute end-2.5 inline-flex items-center dark:text-darkFiltersCloseIcon dark:hover:bg-darkFiltersCloseIconHoverBackground dark:hover:text-darkFiltersCloseIconHover" >
|
|
15
15
|
<svg aria-hidden="true" class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path></svg>
|
|
16
16
|
<span class="sr-only">{{ $t('Close menu') }}</span>
|
|
17
17
|
</button>
|
|
@@ -138,7 +138,7 @@
|
|
|
138
138
|
<button
|
|
139
139
|
:disabled="!filtersStore.filters.length"
|
|
140
140
|
type="button"
|
|
141
|
-
class="flex items-center py-1 px-3 text-sm font-medium text-
|
|
141
|
+
class="flex items-center py-1 px-3 text-sm font-medium text-lightFiltersClearAllButtonText focus:outline-none bg-lightFiltersClearAllButtonBackground rounded border border-lightFiltersClearAllButtonBorder hover:bg-lightFiltersClearAllButtonBackgroundHover hover:text-lightFiltersClearAllButtonTextHover focus:z-10 focus:ring-4 focus:ring-lightFiltersClearAllButtonFocus dark:focus:ring-darkFiltersClearAllButtonFocus dark:bg-darkFiltersClearAllButtonBackground dark:text-darkFiltersClearAllButtonText dark:border-darkFiltersClearAllButtonBorder dark:hover:text-darkFiltersClearAllButtonTextHover dark:hover:bg-darkFiltersClearAllButtonBackgroundHover disabled:opacity-50 disabled:cursor-not-allowed"
|
|
142
142
|
@click="clear">{{ $t('Clear all') }}</button>
|
|
143
143
|
|
|
144
144
|
</div>
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="rounded-lg shadow-resourseFormShadow dark:shadow-darkResourseFormShadow dark:shadow-2xl">
|
|
3
|
-
<div v-if="group.groupName && !group.noTitle" class="text-md font-semibold px-6 py-3 flex flex-1 items-center dark:border-darkFormBorder text-
|
|
3
|
+
<div v-if="group.groupName && !group.noTitle" class="text-md font-semibold px-6 py-3 flex flex-1 items-center dark:border-darkFormBorder text-lightListTableHeadingText bg-lightFormHeading dark:bg-darkFormHeading dark:text-darkListTableHeadingText rounded-t-lg">
|
|
4
4
|
{{ group.groupName }}
|
|
5
5
|
</div>
|
|
6
|
-
<table class="w-full text-sm text-left rtl:text-right text-
|
|
7
|
-
<thead v-if="!allColumnsHaveCustomComponent" class="text-xs text-
|
|
6
|
+
<table class="w-full text-sm text-left rtl:text-right text-lightFormFieldTextColor dark:text-darkFormFieldTextColor">
|
|
7
|
+
<thead v-if="!allColumnsHaveCustomComponent" class="text-xs text-lightListTableHeadingText uppercase dark:text-darkListTableHeadingText bg-lightFormHeading dark:bg-darkFormHeading block md:table-row-group ">
|
|
8
8
|
<tr>
|
|
9
9
|
<th scope="col" :class="{'rounded-tl-lg': !group.groupName}" class="px-6 py-3 hidden md:w-52 md:table-cell">
|
|
10
10
|
{{ $t('Field') }}
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
<Tooltip v-if="column.required[mode]">
|
|
30
30
|
|
|
31
31
|
<IconExclamationCircleSolid v-if="column.required[mode]" class="w-4 h-4"
|
|
32
|
-
:class="(columnError(column) && validating) ? 'text-
|
|
32
|
+
:class="(columnError(column) && validating) ? 'text-lightInputErrorColor dark:text-darkInputErrorColor' : 'text-lightRequiredIconColor dark:text-darkRequiredIconColor'"
|
|
33
33
|
/>
|
|
34
34
|
|
|
35
35
|
<template #tooltip>
|
|
@@ -55,8 +55,8 @@
|
|
|
55
55
|
@update:emptiness="customComponentsEmptiness[$event.name] = $event.value"
|
|
56
56
|
:readonly="readonlyColumns?.includes(column.name)"
|
|
57
57
|
/>
|
|
58
|
-
<div v-if="columnError(column) && validating" class="mt-1 text-xs text-
|
|
59
|
-
<div v-if="column.editingNote && column.editingNote[mode]" class="mt-1 text-xs text-
|
|
58
|
+
<div v-if="columnError(column) && validating" class="mt-1 text-xs text-lightInputErrorColor dark:text-darkInputErrorColor">{{ columnError(column) }}</div>
|
|
59
|
+
<div v-if="column.editingNote && column.editingNote[mode]" class="mt-1 text-xs text-lightFormFieldTextColor dark:text-darkFormFieldTextColor">{{ column.editingNote[mode] }}</div>
|
|
60
60
|
</td>
|
|
61
61
|
</tr>
|
|
62
62
|
</tbody>
|
|
@@ -7,14 +7,14 @@
|
|
|
7
7
|
<div role="status" v-if="!resource || !resource.columns"
|
|
8
8
|
class="max-w p-4 space-y-4 divide-y divide-gray-200 rounded shadow animate-pulse dark:divide-gray-700 md:p-6 dark:border-gray-700">
|
|
9
9
|
<div role="status" class="max-w-sm animate-pulse">
|
|
10
|
-
<div class="h-2 bg-
|
|
10
|
+
<div class="h-2 bg-lightListSkeletLoader rounded-full dark:bg-darkListSkeletLoader max-w-[360px]"></div>
|
|
11
11
|
</div>
|
|
12
12
|
</div>
|
|
13
|
-
<table v-else class=" w-full text-sm text-left rtl:text-right text-
|
|
13
|
+
<table v-else class=" w-full text-sm text-left rtl:text-right text-lightListTableText dark:text-darkListTableText rounded-default">
|
|
14
14
|
|
|
15
15
|
<tbody>
|
|
16
16
|
<!-- table header -->
|
|
17
|
-
<tr class="t-header sticky z-10 top-0 text-xs
|
|
17
|
+
<tr class="t-header sticky z-10 top-0 text-xs text-lightListTableHeadingText bg-lightListTableHeading dark:bg-darkListTableHeading dark:text-darkListTableHeadingText">
|
|
18
18
|
<td scope="col" class="p-4">
|
|
19
19
|
<Checkbox
|
|
20
20
|
:modelValue="allFromThisPageChecked"
|
|
@@ -203,7 +203,7 @@
|
|
|
203
203
|
>
|
|
204
204
|
<!-- Buttons -->
|
|
205
205
|
<button
|
|
206
|
-
class="af-pagination-prev-button flex items-center py-1 px-3 gap-1 text-sm font-medium text-
|
|
206
|
+
class="af-pagination-prev-button flex items-center py-1 px-3 gap-1 text-sm font-medium text-lightListTablePaginationText focus:outline-none bg-lightListTablePaginationBackgoround border-r-0 rounded-s border border-lightListTablePaginationBorder hover:bg-lightListTablePaginationBackgoroundHover hover:text-lightListTablePaginationTextHover focus:z-10 focus:ring-4 focus:ring-lightListTablePaginationFocusRing dark:focus:ring-darkListTablePaginationFocusRing dark:bg-darkListTablePaginationBackgoround dark:text-darkListTablePaginationText dark:border-darkListTablePaginationBorder dark:hover:text-darkListTablePaginationTextHover dark:hover:bg-darkListTablePaginationBackgoroundHover disabled:opacity-50"
|
|
207
207
|
@click="page--; pageInput = page.toString();" :disabled="page <= 1">
|
|
208
208
|
<svg class="w-3.5 h-3.5 rtl:rotate-180" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none"
|
|
209
209
|
viewBox="0 0 14 10">
|
|
@@ -215,14 +215,14 @@
|
|
|
215
215
|
</span>
|
|
216
216
|
</button>
|
|
217
217
|
<button
|
|
218
|
-
class="af-pagination-first-page-button flex items-center py-1 px-3 text-sm font-medium text-
|
|
218
|
+
class="af-pagination-first-page-button flex items-center py-1 px-3 text-sm font-medium text-lightListTablePaginationText focus:outline-none bg-lightListTablePaginationBackgoround border-r-0 border border-lightListTablePaginationBorder hover:bg-lightListTablePaginationBackgoroundHover hover:text-lightListTablePaginationTextHover focus:z-10 focus:ring-4 focus:ring-lightListTablePaginationFocusRing dark:focus:ring-darkListTablePaginationFocusRing dark:bg-darkListTablePaginationBackgoround dark:text-darkListTablePaginationText dark:border-darkListTablePaginationBorder dark:hover:text-darkListTablePaginationTextHover dark:hover:bg-darkListTablePaginationBackgoroundHover disabled:opacity-50"
|
|
219
219
|
@click="page = 1; pageInput = page.toString();" :disabled="page <= 1">
|
|
220
220
|
<!-- <IconChevronDoubleLeftOutline class="w-4 h-4" /> -->
|
|
221
221
|
1
|
|
222
222
|
</button>
|
|
223
223
|
<div
|
|
224
224
|
contenteditable="true"
|
|
225
|
-
class="af-pagination-input min-w-10 outline-none inline-block w-auto
|
|
225
|
+
class="af-pagination-input min-w-10 outline-none inline-block w-auto py-1.5 px-3 text-sm text-center text-lightListTablePaginationCurrentPageText border border-lightListTablePaginationBorder dark:border-darkListTablePaginationBorder dark:text-darkListTablePaginationCurrentPageText dark:bg-darkListTablePaginationBackgoround z-10"
|
|
226
226
|
@keydown="onPageKeydown($event)"
|
|
227
227
|
@input="onPageInput($event)"
|
|
228
228
|
@blur="validatePageInput()"
|
|
@@ -231,14 +231,14 @@
|
|
|
231
231
|
</div>
|
|
232
232
|
|
|
233
233
|
<button
|
|
234
|
-
class="af-pagination-last-page-button flex items-center py-1 px-3 text-sm font-medium text-
|
|
234
|
+
class="af-pagination-last-page-button flex items-center py-1 px-3 text-sm font-medium text-lightListTablePaginationText focus:outline-none bg-lightListTablePaginationBackgoround border-l-0 border border-lightListTablePaginationBorder hover:bg-lightListTablePaginationBackgoroundHover hover:text-lightListTablePaginationTextHover focus:z-10 focus:ring-4 focus:ring-lightListTablePaginationFocusRing dark:focus:ring-darkListTablePaginationFocusRing dark:bg-darkListTablePaginationBackgoround dark:text-darkListTablePaginationText dark:border-darkListTablePaginationBorder dark:hover:text-white dark:hover:bg-darkListTablePaginationBackgoroundHover disabled:opacity-50"
|
|
235
235
|
@click="page = totalPages; pageInput = page.toString();" :disabled="page >= totalPages">
|
|
236
236
|
{{ totalPages }}
|
|
237
237
|
|
|
238
238
|
<!-- <IconChevronDoubleRightOutline class="w-4 h-4" /> -->
|
|
239
239
|
</button>
|
|
240
240
|
<button
|
|
241
|
-
class="af-pagination-next-button flex items-center py-1 px-3 gap-1 text-sm font-medium text-
|
|
241
|
+
class="af-pagination-next-button flex items-center py-1 px-3 gap-1 text-sm font-medium text-lightListTablePaginationText focus:outline-none bg-lightListTablePaginationBackgoround border-l-0 rounded-e border border-lightListTablePaginationBorder hover:bg-lightListTablePaginationBackgoroundHover hover:text-lightListTablePaginationTextHover focus:z-10 focus:ring-4 focus:ring-lightListTablePaginationFocusRing dark:focus:ring-darkListTablePaginationFocusRing dark:bg-darkListTablePaginationBackgoround dark:text-darkListTablePaginationText dark:border-darkListTablePaginationBorder dark:hover:text-white dark:hover:bg-darkListTablePaginationBackgoroundHover disabled:opacity-50"
|
|
242
242
|
@click="page++; pageInput = page.toString();" :disabled="page >= totalPages">
|
|
243
243
|
<span class="hidden sm:inline">{{ $t('Next') }}</span>
|
|
244
244
|
<svg class="w-3.5 h-3.5 rtl:rotate-180" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none"
|
|
@@ -250,7 +250,7 @@
|
|
|
250
250
|
</div>
|
|
251
251
|
|
|
252
252
|
<!-- Help text -->
|
|
253
|
-
<span class="text-sm text-
|
|
253
|
+
<span class="text-sm text-lightListTablePaginationHelpText dark:text-darkListTablePaginationHelpText">
|
|
254
254
|
<span v-if="((((page || 1) - 1) * pageSize + 1 > totalRows) && totalRows > 0)">{{ $t('Wrong Page') }} </span>
|
|
255
255
|
<template v-else-if="resource && totalRows > 0">
|
|
256
256
|
|
|
@@ -11,10 +11,10 @@
|
|
|
11
11
|
class="max-w p-4 space-y-4 divide-y divide-gray-200 rounded shadow animate-pulse dark:divide-gray-700 md:p-6 dark:border-gray-700">
|
|
12
12
|
|
|
13
13
|
<div role="status" class="max-w-sm animate-pulse">
|
|
14
|
-
<div class="h-2 bg-
|
|
14
|
+
<div class="h-2 bg-lightListSkeletLoader rounded-full dark:bg-darkListSkeletLoader max-w-[360px]"></div>
|
|
15
15
|
</div>
|
|
16
16
|
</div>
|
|
17
|
-
<table v-else class=" w-full text-sm text-left rtl:text-right text-
|
|
17
|
+
<table v-else class=" w-full text-sm text-left rtl:text-right text-lightListTableText dark:text-darkListTableText rounded-default">
|
|
18
18
|
|
|
19
19
|
<tbody>
|
|
20
20
|
<!-- table header -->
|
|
@@ -220,7 +220,7 @@
|
|
|
220
220
|
>
|
|
221
221
|
<!-- Buttons -->
|
|
222
222
|
<button
|
|
223
|
-
class="flex items-center py-1 px-3 gap-1 text-sm font-medium text-
|
|
223
|
+
class="af-pagination-prev-button flex items-center py-1 px-3 gap-1 text-sm font-medium text-lightListTablePaginationText focus:outline-none bg-lightListTablePaginationBackgoround border-r-0 rounded-s border border-lightListTablePaginationBorder hover:bg-lightListTablePaginationBackgoroundHover hover:text-lightListTablePaginationTextHover focus:z-10 focus:ring-4 focus:ring-lightListTablePaginationFocusRing dark:focus:ring-darkListTablePaginationFocusRing dark:bg-darkListTablePaginationBackgoround dark:text-darkListTablePaginationText dark:border-darkListTablePaginationBorder dark:hover:text-darkListTablePaginationTextHover dark:hover:bg-darkListTablePaginationBackgoroundHover disabled:opacity-50"
|
|
224
224
|
@click="page--; pageInput = page.toString();" :disabled="page <= 1">
|
|
225
225
|
<svg class="w-3.5 h-3.5 rtl:rotate-180" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none"
|
|
226
226
|
viewBox="0 0 14 10">
|
|
@@ -232,14 +232,14 @@
|
|
|
232
232
|
</span>
|
|
233
233
|
</button>
|
|
234
234
|
<button
|
|
235
|
-
class="flex items-center py-1 px-3 text-sm font-medium text-
|
|
235
|
+
class="af-pagination-first-page-button flex items-center py-1 px-3 text-sm font-medium text-lightListTablePaginationText focus:outline-none bg-lightListTablePaginationBackgoround border-r-0 border border-lightListTablePaginationBorder hover:bg-lightListTablePaginationBackgoroundHover hover:text-lightListTablePaginationTextHover focus:z-10 focus:ring-4 focus:ring-lightListTablePaginationFocusRing dark:focus:ring-darkListTablePaginationFocusRing dark:bg-darkListTablePaginationBackgoround dark:text-darkListTablePaginationText dark:border-darkListTablePaginationBorder dark:hover:text-darkListTablePaginationTextHover dark:hover:bg-darkListTablePaginationBackgoroundHover disabled:opacity-50"
|
|
236
236
|
@click="page = 1; pageInput = page.toString();" :disabled="page <= 1">
|
|
237
237
|
<!-- <IconChevronDoubleLeftOutline class="w-4 h-4" /> -->
|
|
238
238
|
1
|
|
239
239
|
</button>
|
|
240
240
|
<div
|
|
241
241
|
contenteditable="true"
|
|
242
|
-
class="min-w-10 outline-none inline-block w-auto
|
|
242
|
+
class="af-pagination-input min-w-10 outline-none inline-block w-auto py-1.5 px-3 text-sm text-center text-lightListTablePaginationCurrentPageText border border-lightListTablePaginationBorder dark:border-darkListTablePaginationBorder dark:text-darkListTablePaginationCurrentPageText dark:bg-darkListTablePaginationBackgoround z-10"
|
|
243
243
|
@keydown="onPageKeydown($event)"
|
|
244
244
|
@input="onPageInput($event)"
|
|
245
245
|
@blur="validatePageInput()"
|
|
@@ -248,14 +248,14 @@
|
|
|
248
248
|
</div>
|
|
249
249
|
|
|
250
250
|
<button
|
|
251
|
-
class="flex items-center py-1 px-3 text-sm font-medium text-
|
|
251
|
+
class="af-pagination-last-page-button flex items-center py-1 px-3 text-sm font-medium text-lightListTablePaginationText focus:outline-none bg-lightListTablePaginationBackgoround border-l-0 border border-lightListTablePaginationBorder hover:bg-lightListTablePaginationBackgoroundHover hover:text-lightListTablePaginationTextHover focus:z-10 focus:ring-4 focus:ring-lightListTablePaginationFocusRing dark:focus:ring-darkListTablePaginationFocusRing dark:bg-darkListTablePaginationBackgoround dark:text-darkListTablePaginationText dark:border-darkListTablePaginationBorder dark:hover:text-white dark:hover:bg-darkListTablePaginationBackgoroundHover disabled:opacity-50"
|
|
252
252
|
@click="page = totalPages; pageInput = page.toString();" :disabled="page >= totalPages">
|
|
253
253
|
{{ totalPages }}
|
|
254
254
|
|
|
255
255
|
<!-- <IconChevronDoubleRightOutline class="w-4 h-4" /> -->
|
|
256
256
|
</button>
|
|
257
257
|
<button
|
|
258
|
-
class="flex items-center py-1 px-3 gap-1 text-sm font-medium text-
|
|
258
|
+
class="af-pagination-next-button flex items-center py-1 px-3 gap-1 text-sm font-medium text-lightListTablePaginationText focus:outline-none bg-lightListTablePaginationBackgoround border-l-0 rounded-e border border-lightListTablePaginationBorder hover:bg-lightListTablePaginationBackgoroundHover hover:text-lightListTablePaginationTextHover focus:z-10 focus:ring-4 focus:ring-lightListTablePaginationFocusRing dark:focus:ring-darkListTablePaginationFocusRing dark:bg-darkListTablePaginationBackgoround dark:text-darkListTablePaginationText dark:border-darkListTablePaginationBorder dark:hover:text-white dark:hover:bg-darkListTablePaginationBackgoroundHover disabled:opacity-50"
|
|
259
259
|
@click="page++; pageInput = page.toString();" :disabled="page >= totalPages">
|
|
260
260
|
<span class="hidden sm:inline">{{ $t('Next') }}</span>
|
|
261
261
|
<svg class="w-3.5 h-3.5 rtl:rotate-180" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none"
|
|
@@ -267,7 +267,7 @@
|
|
|
267
267
|
</div>
|
|
268
268
|
|
|
269
269
|
<!-- Help text -->
|
|
270
|
-
<span class="text-sm text-
|
|
270
|
+
<span class="text-sm text-lightListTablePaginationHelpText dark:text-darkListTablePaginationHelpText">
|
|
271
271
|
<span v-if="((((page || 1) - 1) * pageSize + 1 > totalRows) && totalRows > 0)">{{ $t('Wrong Page') }} </span>
|
|
272
272
|
<template v-else-if="resource && totalRows > 0">
|
|
273
273
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div class="overflow-x-auto shadow-resourseFormShadow dark:shadow-darkResourseFormShadow"
|
|
2
|
+
<div :class="`overflow-x-auto ${isRounded ? 'rounded-default' : ''} shadow-resourseFormShadow dark:shadow-darkResourseFormShadow`"
|
|
3
3
|
:class="{'rounded-default' : isRounded}"
|
|
4
4
|
>
|
|
5
|
-
<div v-if="groupName && !noTitle" class="text-md font-semibold px-6 py-3 flex flex-1 items-center
|
|
5
|
+
<div v-if="groupName && !noTitle" class="text-md font-semibold px-6 py-3 flex flex-1 items-center text-lightShowTableHeadingText bg-lightShowTableHeadingBackground dark:bg-darkShowTableHeadingBackground dark:text-darkShowTableHeadingText rounded-t-lg">
|
|
6
6
|
{{ groupName }}
|
|
7
7
|
</div>
|
|
8
|
-
<table class="w-full text-sm text-left rtl:text-right text-
|
|
9
|
-
<thead v-if="!allColumnsHaveCustomComponent" class="text-
|
|
8
|
+
<table class="w-full text-sm text-left rtl:text-right text-lightShowTableBodyText dark:text-darkShowTableBodyText table-fixed">
|
|
9
|
+
<thead v-if="!allColumnsHaveCustomComponent" class="text-lightShowTableUnderHeadingText dark:text-darkShowTableUnderHeadingText bg-lightShowTableUnderHeadingBackground dark:bg-darkShowTableUnderHeadingBackground dark:border-darkFormBorder block md:table-row-group">
|
|
10
10
|
<tr>
|
|
11
11
|
<th scope="col" class="px-6 py-3 text-xs uppercase hidden md:w-52 md:table-cell">
|
|
12
12
|
{{ $t('Field') }}
|
|
@@ -20,8 +20,8 @@
|
|
|
20
20
|
<tr
|
|
21
21
|
v-for="column in columns"
|
|
22
22
|
:key="column.name"
|
|
23
|
-
class="bg-
|
|
24
|
-
dark:bg-
|
|
23
|
+
class="bg-lightShowTablesBodyBackground border-t border-lightShowTableBodyBorder
|
|
24
|
+
dark:bg-darkShowTablesBodyBackground dark:border-darkShowTableBodyBorder block md:table-row"
|
|
25
25
|
>
|
|
26
26
|
<component
|
|
27
27
|
v-if="column.components?.showRow"
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
<div
|
|
3
3
|
role="status" class="max-w-sm animate-pulse"
|
|
4
4
|
>
|
|
5
|
-
<div class="h-2.5 bg-
|
|
6
|
-
<div class="h-2 bg-
|
|
7
|
-
<div class="h-2 bg-
|
|
8
|
-
<div class="h-2 bg-
|
|
9
|
-
<div class="h-2 bg-
|
|
10
|
-
<div class="h-2 bg-
|
|
5
|
+
<div class="h-2.5 bg-lightSkeletonBackgroundColor rounded-full dark:bg-darkSkeletonBackgroundColor w-48 mb-4"></div>
|
|
6
|
+
<div class="h-2 bg-lightSkeletonBackgroundColor rounded-full dark:bg-darkSkeletonBackgroundColor max-w-[360px] mb-2.5"></div>
|
|
7
|
+
<div class="h-2 bg-lightSkeletonBackgroundColor rounded-full dark:bg-darkSkeletonBackgroundColor mb-2.5"></div>
|
|
8
|
+
<div class="h-2 bg-lightSkeletonBackgroundColor rounded-full dark:bg-darkSkeletonBackgroundColor max-w-[330px] mb-2.5"></div>
|
|
9
|
+
<div class="h-2 bg-lightSkeletonBackgroundColor rounded-full dark:bg-darkSkeletonBackgroundColor max-w-[300px] mb-2.5"></div>
|
|
10
|
+
<div class="h-2 bg-lightSkeletonBackgroundColor rounded-full dark:bg-darkSkeletonBackgroundColor max-w-[360px]"></div>
|
|
11
11
|
<span class="sr-only">{{ $t('Loading...') }}</span>
|
|
12
12
|
</div>
|
|
13
13
|
</template>
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
: '']"
|
|
13
13
|
>
|
|
14
14
|
<div role="status" class="max-w-sm animate-pulse">
|
|
15
|
-
<div class="h-2 bg-
|
|
15
|
+
<div class="h-2 bg-lightSkeletonBackgroundColor rounded-full dark:bg-darkSkeletonBackgroundColor max-w-[360px]"></div>
|
|
16
16
|
</div>
|
|
17
17
|
</td>
|
|
18
18
|
</tr>
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<template v-if="threeDotsDropdownItems?.length || customActions?.length">
|
|
3
3
|
<button
|
|
4
4
|
data-dropdown-toggle="listThreeDotsDropdown"
|
|
5
|
-
class="flex items-center py-2 px-2 text-sm font-medium text-
|
|
5
|
+
class="flex items-center py-2 px-2 text-sm font-medium text-lightThreeDotsMenuIconDots focus:outline-none bg-lightThreeDotsMenuIconBackground rounded border border-lightThreeDotsMenuIconBackgroundBorder hover:bg-lightThreeDotsMenuIconBackgroundHover hover:text-lightThreeDotsMenuIconDotsHover focus:z-10 focus:ring-4 focus:ring-lightThreeDotsMenuIconFocus dark:focus:ring-darkThreeDotsMenuIconFocus dark:bg-darkThreeDotsMenuIconBackground dark:text-darkThreeDotsMenuIconDots dark:border-darkThreeDotsMenuIconBackgroundBorder dark:hover:text-darkThreeDotsMenuIconDotsHover dark:hover:bg-darkThreeDotsMenuIconBackgroundHover rounded-default"
|
|
6
6
|
>
|
|
7
7
|
<svg class="w-3 h-3" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 4 15">
|
|
8
8
|
<path d="M3.5 1.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0Zm0 6.041a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0Zm0 5.959a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0Z"/>
|
|
@@ -12,10 +12,10 @@
|
|
|
12
12
|
<!-- Dropdown menu -->
|
|
13
13
|
<div
|
|
14
14
|
id="listThreeDotsDropdown"
|
|
15
|
-
class="z-20 hidden bg-
|
|
16
|
-
<ul class="py-2 text-sm text-
|
|
15
|
+
class="z-20 hidden bg-lightThreeDotsMenuBodyBackground divide-y divide-gray-100 rounded-lg shadow w-44 dark:bg-darkThreeDotsMenuBodyBackground dark:divide-gray-600">
|
|
16
|
+
<ul class="py-2 text-sm text-lightThreeDotsMenuBodyText dark:text-darkThreeDotsMenuBodyText" aria-labelledby="dropdownMenuIconButton">
|
|
17
17
|
<li v-for="item in threeDotsDropdownItems" :key="`dropdown-item-${item.label}`">
|
|
18
|
-
<a href="#" class="block px-4 py-2 hover:bg-
|
|
18
|
+
<a href="#" class="block px-4 py-2 hover:bg-lightThreeDotsMenuBodyBackgroundHover hover:text-lightThreeDotsMenuBodyTextHover dark:hover:bg-darkThreeDotsMenuBodyBackgroundHover dark:hover:text-darkThreeDotsMenuBodyTextHover">
|
|
19
19
|
<component :is="getCustomComponent(item)"
|
|
20
20
|
:meta="item.meta"
|
|
21
21
|
:resource="coreStore.resource"
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
</a>
|
|
25
25
|
</li>
|
|
26
26
|
<li v-for="action in customActions" :key="action.id">
|
|
27
|
-
<a href="#" @click.prevent="handleActionClick(action)" class="block px-4 py-2 hover:bg-
|
|
27
|
+
<a href="#" @click.prevent="handleActionClick(action)" class="block px-4 py-2 hover:text-lightThreeDotsMenuBodyTextHover hover:bg-lightThreeDotsMenuBodyBackgroundHover dark:hover:bg-darkThreeDotsMenuBodyBackgroundHover dark:hover:text-darkThreeDotsMenuBodyTextHover">
|
|
28
28
|
<div class="flex items-center gap-2">
|
|
29
29
|
<component
|
|
30
30
|
v-if="action.icon"
|
|
@@ -1,13 +1,8 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
<div class="flex items-center w-full p-4
|
|
4
|
+
<div class="flex items-center w-full p-4 rounded-lg shadow-lg dark:text-darkToastText dark:bg-darkToastBackground bg-lightToastBackground text-lightToastText"
|
|
5
5
|
role="alert"
|
|
6
|
-
:class="
|
|
7
|
-
{
|
|
8
|
-
'danger': 'bg-red-100',
|
|
9
|
-
}[toast.variant]
|
|
10
|
-
"
|
|
11
6
|
>
|
|
12
7
|
<div v-if="toast.variant == 'info'" class="inline-flex items-center justify-center flex-shrink-0 w-8 h-8 text-lightPrimary dark:text-darkPrimary bg-lightPrimaryOpacity rounded-lg dark:bg-blue-800 dark:text-blue-200">
|
|
13
8
|
<svg class="w-4 h-4" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 18 20">
|
|
@@ -36,7 +31,7 @@
|
|
|
36
31
|
|
|
37
32
|
<div class="ms-3 text-sm font-normal max-w-xs pr-2" v-if="toast.messageHtml" v-html="toast.messageHtml"></div>
|
|
38
33
|
<div class="ms-3 text-sm font-normal max-w-xs pr-2" v-else>{{toast.message}}</div>
|
|
39
|
-
<button @click="closeToast" type="button" class="ms-auto -mx-1.5 -my-1.5 bg-
|
|
34
|
+
<button @click="closeToast" type="button" class="ms-auto -mx-1.5 -my-1.5 bg-lightToastCloseIconBackground text-lightToastCloseIcon hover:text-lightToastCloseIconHover rounded-lg focus:ring-2 focus:ring-lightToastCloseIconFocusRing p-1.5 hover:bg-lightToastCloseIconBackgroundHover inline-flex items-center justify-center h-8 w-8 dark:text-darkToastCloseIcon dark:hover:text-darkToastCloseIconHover dark:bg-darkToastCloseIconBackground dark:hover:bg-darkToastCloseIconBackgroundHover dark:focus:ring-darkToastCloseIconFocusRing" >
|
|
40
35
|
<svg class="w-3 h-3" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 14 14">
|
|
41
36
|
<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="m1 1 6 6m0 0 6 6M7 7l6-6M7 7l-6 6"/>
|
|
42
37
|
</svg>
|
|
@@ -95,12 +95,9 @@ export interface AdminForthBulkActionCommon {
|
|
|
95
95
|
label: string,
|
|
96
96
|
|
|
97
97
|
/**
|
|
98
|
-
*
|
|
99
|
-
* * 'danger' - red button
|
|
100
|
-
* * 'success' - green button
|
|
101
|
-
* * 'active' - blue button
|
|
98
|
+
* Add custom class
|
|
102
99
|
**/
|
|
103
|
-
|
|
100
|
+
buttonCustomCssClass?: string;
|
|
104
101
|
|
|
105
102
|
/**
|
|
106
103
|
* Optional small badge for button which will be displayed in the list view
|