lkt-item-crud 2.0.29 → 2.0.30
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(() => {
|
|
@@ -576,6 +577,7 @@
|
|
|
576
577
|
:group-button="safeGroupButton"
|
|
577
578
|
:data-changed="dataChanged"
|
|
578
579
|
:http-success-read="httpSuccessRead"
|
|
580
|
+
:can-create="canCreate"
|
|
579
581
|
:can-update="canUpdate"
|
|
580
582
|
:can-drop="canDrop"
|
|
581
583
|
:can-switch-edit-mode="canSwitchEditMode"
|
|
@@ -641,6 +643,7 @@
|
|
|
641
643
|
:group-button="safeGroupButton"
|
|
642
644
|
:data-changed="dataChanged"
|
|
643
645
|
:http-success-read="httpSuccessRead"
|
|
646
|
+
:can-create="canCreate"
|
|
644
647
|
:can-update="canUpdate"
|
|
645
648
|
:can-drop="canDrop"
|
|
646
649
|
:can-switch-edit-mode="canSwitchEditMode"
|
|
@@ -744,6 +747,7 @@
|
|
|
744
747
|
:group-button="safeGroupButton"
|
|
745
748
|
:data-changed="dataChanged"
|
|
746
749
|
:http-success-read="httpSuccessRead"
|
|
750
|
+
:can-create="canCreate"
|
|
747
751
|
:can-update="canUpdate"
|
|
748
752
|
:can-drop="canDrop"
|
|
749
753
|
:can-switch-edit-mode="canSwitchEditMode"
|