lkt-table 1.3.2 → 1.3.3
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/build.d.ts +50 -50
- package/dist/build.js +519 -472
- package/package.json +1 -1
- package/src/lib-components/LktTable.vue +46 -2
package/package.json
CHANGED
|
@@ -14,6 +14,7 @@ import TableHeader from "../components/TableHeader.vue";
|
|
|
14
14
|
import {__} from "lkt-i18n";
|
|
15
15
|
import {time} from "lkt-date-tools";
|
|
16
16
|
import {Settings} from "../settings/Settings";
|
|
17
|
+
import {TypeOfTable} from "@/enums/TypeOfTable";
|
|
17
18
|
|
|
18
19
|
const emit = defineEmits(['update:modelValue', 'update:perms', 'sort', 'click', 'save', 'error', 'before-save', 'read-response', 'click-create']);
|
|
19
20
|
|
|
@@ -21,6 +22,7 @@ const slots = useSlots();
|
|
|
21
22
|
|
|
22
23
|
const props = withDefaults(defineProps<{
|
|
23
24
|
modelValue: LktObject[]
|
|
25
|
+
type?: TypeOfTable,
|
|
24
26
|
columns: Column[]
|
|
25
27
|
sorter?: Function
|
|
26
28
|
draggableChecker?: Function
|
|
@@ -81,6 +83,7 @@ const props = withDefaults(defineProps<{
|
|
|
81
83
|
slotItemVar: string
|
|
82
84
|
}>(), {
|
|
83
85
|
modelValue: () => [],
|
|
86
|
+
type: TypeOfTable.Table,
|
|
84
87
|
columns: () => [],
|
|
85
88
|
sorter: defaultTableSorter,
|
|
86
89
|
draggableChecker: (item: any) => true,
|
|
@@ -160,6 +163,11 @@ const Page = ref(props.page),
|
|
|
160
163
|
updateTimeStamp = ref(0)
|
|
161
164
|
;
|
|
162
165
|
|
|
166
|
+
const Type = ref(props.type);
|
|
167
|
+
if (props.itemMode && Type.value === TypeOfTable.Table) {
|
|
168
|
+
Type.value = TypeOfTable.Item;
|
|
169
|
+
}
|
|
170
|
+
|
|
163
171
|
const onResults = (r: any) => {
|
|
164
172
|
//@ts-ignore
|
|
165
173
|
if (Array.isArray(r)) Items.value = r;
|
|
@@ -540,7 +548,7 @@ const hasEmptySlot = computed(() => {
|
|
|
540
548
|
<lkt-loader v-if="loading"/>
|
|
541
549
|
|
|
542
550
|
<div v-show="!loading && Items.length > 0" class="lkt-table" :data-sortable="sortable">
|
|
543
|
-
<table v-if="
|
|
551
|
+
<table v-if="Type === TypeOfTable.Table">
|
|
544
552
|
<thead>
|
|
545
553
|
<tr>
|
|
546
554
|
<th v-if="sortable && editModeEnabled" data-role="drag-indicator"/>
|
|
@@ -644,7 +652,7 @@ const hasEmptySlot = computed(() => {
|
|
|
644
652
|
</tbody>
|
|
645
653
|
</table>
|
|
646
654
|
|
|
647
|
-
<div v-else class="lkt-table-items-container" :class="itemsContainerClass">
|
|
655
|
+
<div v-else-if="Type === TypeOfTable.Item" class="lkt-table-items-container" :class="itemsContainerClass">
|
|
648
656
|
<template
|
|
649
657
|
v-for="(item, i) in Items">
|
|
650
658
|
<div class="lkt-table-item" v-if="canDisplayItem(item)">
|
|
@@ -661,6 +669,42 @@ const hasEmptySlot = computed(() => {
|
|
|
661
669
|
</div>
|
|
662
670
|
</template>
|
|
663
671
|
</div>
|
|
672
|
+
|
|
673
|
+
<ul v-else-if="TypeOfTable.Ul" class="lkt-table-items-container" :class="itemsContainerClass">
|
|
674
|
+
<template
|
|
675
|
+
v-for="(item, i) in Items">
|
|
676
|
+
<li class="lkt-table-item" v-if="canDisplayItem(item)">
|
|
677
|
+
<slot name="item"
|
|
678
|
+
v-bind:[slotItemVar]="item"
|
|
679
|
+
v-bind:index="i"
|
|
680
|
+
v-bind:can-create="hasCreatePerm"
|
|
681
|
+
v-bind:can-read="hasReadPerm"
|
|
682
|
+
v-bind:can-update="hasUpdatePerm"
|
|
683
|
+
v-bind:can-drop="hasDropPerm"
|
|
684
|
+
v-bind:is-loading="loading"
|
|
685
|
+
v-bind:do-drop="() => onItemDrop(i)"
|
|
686
|
+
/>
|
|
687
|
+
</li>
|
|
688
|
+
</template>
|
|
689
|
+
</ul>
|
|
690
|
+
|
|
691
|
+
<ol v-else-if="TypeOfTable.Ul" class="lkt-table-items-container" :class="itemsContainerClass">
|
|
692
|
+
<template
|
|
693
|
+
v-for="(item, i) in Items">
|
|
694
|
+
<li class="lkt-table-item" v-if="canDisplayItem(item)">
|
|
695
|
+
<slot name="item"
|
|
696
|
+
v-bind:[slotItemVar]="item"
|
|
697
|
+
v-bind:index="i"
|
|
698
|
+
v-bind:can-create="hasCreatePerm"
|
|
699
|
+
v-bind:can-read="hasReadPerm"
|
|
700
|
+
v-bind:can-update="hasUpdatePerm"
|
|
701
|
+
v-bind:can-drop="hasDropPerm"
|
|
702
|
+
v-bind:is-loading="loading"
|
|
703
|
+
v-bind:do-drop="() => onItemDrop(i)"
|
|
704
|
+
/>
|
|
705
|
+
</li>
|
|
706
|
+
</template>
|
|
707
|
+
</ol>
|
|
664
708
|
</div>
|
|
665
709
|
|
|
666
710
|
<div class="lkt-table-empty" v-if="!loading && Items.length === 0">
|