lkt-item-crud 2.0.29 → 2.0.31
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
CHANGED
|
@@ -42,6 +42,7 @@
|
|
|
42
42
|
ableToCreate?: boolean
|
|
43
43
|
ableToUpdate?: boolean
|
|
44
44
|
ableToDrop?: boolean
|
|
45
|
+
canCreate?: boolean
|
|
45
46
|
canUpdate?: boolean
|
|
46
47
|
canDrop?: boolean
|
|
47
48
|
canSwitchEditMode?: boolean
|
|
@@ -129,8 +130,8 @@
|
|
|
129
130
|
&& props.httpSuccessRead;
|
|
130
131
|
}),
|
|
131
132
|
showSaveButton = computed(() => {
|
|
132
|
-
if (props.mode === ItemCrudMode.Create && props.createButton === false) return false;
|
|
133
|
-
if (props.mode === ItemCrudMode.Update && props.updateButton === false) return false;
|
|
133
|
+
if (props.mode === ItemCrudMode.Create && (props.createButton === false || !props.canCreate)) return false;
|
|
134
|
+
if (props.mode === ItemCrudMode.Update && (props.updateButton === false || !props.canUpdate)) return false;
|
|
134
135
|
if (isLoading.value) return false;
|
|
135
136
|
|
|
136
137
|
return props.editing
|
|
@@ -75,6 +75,7 @@
|
|
|
75
75
|
itemCreated = ref(false),
|
|
76
76
|
buttonNav = ref(null),
|
|
77
77
|
formRef = ref(null),
|
|
78
|
+
canCreate = computed(() => createMode.value && props.createButton !== false && Array.isArray(permissions.value) && permissions.value.includes(TablePermission.Create)),
|
|
78
79
|
canUpdate = computed(() => !createMode.value && props.updateButton !== false && Array.isArray(permissions.value) && permissions.value.includes(TablePermission.Update)),
|
|
79
80
|
canDrop = computed(() => !createMode.value && props.dropButton !== false && Array.isArray(permissions.value) && permissions.value.includes(TablePermission.Drop)),
|
|
80
81
|
canSwitchEditMode = computed(() => props.editModeButton !== false && !createMode.value && Array.isArray(permissions.value) && permissions.value.includes(TablePermission.SwitchEditMode));
|
|
@@ -478,7 +479,7 @@
|
|
|
478
479
|
return true;
|
|
479
480
|
}),
|
|
480
481
|
ableToCreate = computed(() => {
|
|
481
|
-
if (props.mode !== ItemCrudMode.Create) return false;
|
|
482
|
+
if (props.mode !== ItemCrudMode.Create || !canCreate.value) return false;
|
|
482
483
|
if (!props.enabledSaveWithoutChanges && !dataChanged.value) return false;
|
|
483
484
|
if (computedHasForm.value && !validForm.value && !changedForm.value) return false;
|
|
484
485
|
|
|
@@ -533,7 +534,7 @@
|
|
|
533
534
|
})
|
|
534
535
|
|
|
535
536
|
const computedHasButtons = computed(() => {
|
|
536
|
-
return
|
|
537
|
+
return canCreate.value || canUpdate.value || canDrop.value;
|
|
537
538
|
})
|
|
538
539
|
|
|
539
540
|
const computedFormSlots = computed(() => {
|
|
@@ -545,6 +546,8 @@
|
|
|
545
546
|
if (typeof props.form === 'function') return props.form({
|
|
546
547
|
mode: props.mode,
|
|
547
548
|
view: pickedModificationView.value,
|
|
549
|
+
item: item.value,
|
|
550
|
+
modifications: itemModifications.value
|
|
548
551
|
});
|
|
549
552
|
return props.form;
|
|
550
553
|
})
|
|
@@ -576,6 +579,7 @@
|
|
|
576
579
|
:group-button="safeGroupButton"
|
|
577
580
|
:data-changed="dataChanged"
|
|
578
581
|
:http-success-read="httpSuccessRead"
|
|
582
|
+
:can-create="canCreate"
|
|
579
583
|
:can-update="canUpdate"
|
|
580
584
|
:can-drop="canDrop"
|
|
581
585
|
:can-switch-edit-mode="canSwitchEditMode"
|
|
@@ -641,6 +645,7 @@
|
|
|
641
645
|
:group-button="safeGroupButton"
|
|
642
646
|
:data-changed="dataChanged"
|
|
643
647
|
:http-success-read="httpSuccessRead"
|
|
648
|
+
:can-create="canCreate"
|
|
644
649
|
:can-update="canUpdate"
|
|
645
650
|
:can-drop="canDrop"
|
|
646
651
|
:can-switch-edit-mode="canSwitchEditMode"
|
|
@@ -744,6 +749,7 @@
|
|
|
744
749
|
:group-button="safeGroupButton"
|
|
745
750
|
:data-changed="dataChanged"
|
|
746
751
|
:http-success-read="httpSuccessRead"
|
|
752
|
+
:can-create="canCreate"
|
|
747
753
|
:can-update="canUpdate"
|
|
748
754
|
:can-drop="canDrop"
|
|
749
755
|
:can-switch-edit-mode="canSwitchEditMode"
|