vue-laravel-crud 2.0.7 → 2.0.8
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.
|
@@ -14435,7 +14435,7 @@ var _sfc_staticRenderFns$3 = [];
|
|
|
14435
14435
|
var __component__$3 = /*#__PURE__*/normalizeComponent(_sfc_main$3, _sfc_render$3, _sfc_staticRenderFns$3, false, null, null, null, null);
|
|
14436
14436
|
var CrudCustom = __component__$3.exports;
|
|
14437
14437
|
|
|
14438
|
-
var css$2 = "\n.export-format-options[data-v-
|
|
14438
|
+
var css$2 = "\n.export-format-options[data-v-a032ebce] {\r\n display: flex;\r\n gap: 1rem;\r\n justify-content: center;\r\n flex-wrap: wrap;\n}\n.export-format-radio[data-v-a032ebce] {\r\n flex: 1;\r\n min-width: 150px;\r\n padding: 1rem;\r\n border: 2px solid #dee2e6;\r\n border-radius: 0.5rem;\r\n cursor: pointer;\r\n transition: all 0.3s ease;\r\n text-align: center;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n background-color: #fff;\n}\n.export-format-radio[data-v-a032ebce]:hover {\r\n border-color: #007bff;\r\n background-color: #f8f9fa;\r\n transform: translateY(-2px);\r\n box-shadow: 0 2px 8px rgba(0, 123, 255, 0.2);\n}\n.export-format-radio[data-v-a032ebce] .custom-control-input:checked ~ .custom-control-label {\r\n color: #007bff;\r\n font-weight: 600;\n}\n.export-format-radio[data-v-a032ebce] .custom-control-input:checked ~ .custom-control-label::before {\r\n border-color: #007bff;\r\n background-color: #007bff;\n}\n.export-format-radio[data-v-a032ebce] .custom-control-label {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n width: 100%;\r\n cursor: pointer;\r\n font-size: 1rem;\n}\n.export-format-radio[data-v-a032ebce] .custom-control-label::before {\r\n margin-right: 0.5rem;\n}\n.export-format-radio[data-v-a032ebce] svg {\r\n font-size: 1.5rem;\r\n color: #495057;\n}\n.export-format-radio[data-v-a032ebce] .custom-control-input:checked ~ .custom-control-label svg {\r\n color: #007bff;\n}\r\n";
|
|
14439
14439
|
n(css$2, {});
|
|
14440
14440
|
|
|
14441
14441
|
const _sfc_main$2 = {
|
|
@@ -14450,6 +14450,10 @@ const _sfc_main$2 = {
|
|
|
14450
14450
|
}
|
|
14451
14451
|
// Si no, usar el item inyectado directamente
|
|
14452
14452
|
return this.item;
|
|
14453
|
+
},
|
|
14454
|
+
// Computed property para manejar loading como objeto reactivo o booleano
|
|
14455
|
+
loadingValue() {
|
|
14456
|
+
return this.loading && this.loading.value !== undefined ? this.loading.value : this.loading;
|
|
14453
14457
|
}
|
|
14454
14458
|
},
|
|
14455
14459
|
watch: {
|
|
@@ -14476,7 +14480,7 @@ var _sfc_render$2 = function render() {
|
|
|
14476
14480
|
}
|
|
14477
14481
|
}, [_c('b-overlay', {
|
|
14478
14482
|
attrs: {
|
|
14479
|
-
"show": _vm.
|
|
14483
|
+
"show": _vm.loadingValue,
|
|
14480
14484
|
"rounded": "sm"
|
|
14481
14485
|
}
|
|
14482
14486
|
}, [_vm.validate ? [_c('form', {
|
|
@@ -14510,9 +14514,9 @@ var _sfc_render$2 = function render() {
|
|
|
14510
14514
|
"block": "",
|
|
14511
14515
|
"type": "submit",
|
|
14512
14516
|
"variant": "success",
|
|
14513
|
-
"disabled": _vm.
|
|
14517
|
+
"disabled": _vm.loadingValue
|
|
14514
14518
|
}
|
|
14515
|
-
}, [_vm.
|
|
14519
|
+
}, [_vm.loadingValue ? _c('b-spinner', {
|
|
14516
14520
|
attrs: {
|
|
14517
14521
|
"small": ""
|
|
14518
14522
|
}
|
|
@@ -14544,14 +14548,14 @@ var _sfc_render$2 = function render() {
|
|
|
14544
14548
|
"block": "",
|
|
14545
14549
|
"type": "submit",
|
|
14546
14550
|
"variant": "success",
|
|
14547
|
-
"disabled": _vm.
|
|
14551
|
+
"disabled": _vm.loadingValue
|
|
14548
14552
|
},
|
|
14549
14553
|
on: {
|
|
14550
14554
|
"click": function ($event) {
|
|
14551
14555
|
return _vm.saveItem();
|
|
14552
14556
|
}
|
|
14553
14557
|
}
|
|
14554
|
-
}, [_vm.
|
|
14558
|
+
}, [_vm.loadingValue ? _c('b-spinner', {
|
|
14555
14559
|
attrs: {
|
|
14556
14560
|
"small": ""
|
|
14557
14561
|
}
|
|
@@ -14591,7 +14595,7 @@ var _sfc_render$2 = function render() {
|
|
|
14591
14595
|
}, [_vm.item ? _vm._t("import", function () {
|
|
14592
14596
|
return [_c('b-overlay', {
|
|
14593
14597
|
attrs: {
|
|
14594
|
-
"show": _vm.
|
|
14598
|
+
"show": _vm.loadingValue,
|
|
14595
14599
|
"rounded": "sm"
|
|
14596
14600
|
}
|
|
14597
14601
|
}, [_c('b-form-file', {
|
|
@@ -14613,14 +14617,14 @@ var _sfc_render$2 = function render() {
|
|
|
14613
14617
|
}, [_c('b-button', {
|
|
14614
14618
|
attrs: {
|
|
14615
14619
|
"variant": "info",
|
|
14616
|
-
"disabled": _vm.
|
|
14620
|
+
"disabled": _vm.loadingValue
|
|
14617
14621
|
},
|
|
14618
14622
|
on: {
|
|
14619
14623
|
"click": function ($event) {
|
|
14620
14624
|
return _vm.importItems();
|
|
14621
14625
|
}
|
|
14622
14626
|
}
|
|
14623
|
-
}, [_c('b-icon-cloud-upload'), _vm._v(" " + _vm._s(_vm.
|
|
14627
|
+
}, [_c('b-icon-cloud-upload'), _vm._v(" " + _vm._s(_vm.loadingValue ? "Cargando..." : "Importar") + " ")], 1)], 1)], 1)];
|
|
14624
14628
|
}, {
|
|
14625
14629
|
"item": _vm.item
|
|
14626
14630
|
}) : _vm._e()], 2) : _vm._e(), _vm.showExport ? _c('b-modal', {
|
|
@@ -14632,7 +14636,7 @@ var _sfc_render$2 = function render() {
|
|
|
14632
14636
|
}, [_vm.item ? _vm._t("export", function () {
|
|
14633
14637
|
return [_c('b-overlay', {
|
|
14634
14638
|
attrs: {
|
|
14635
|
-
"show": _vm.
|
|
14639
|
+
"show": _vm.loadingValue,
|
|
14636
14640
|
"rounded": "sm"
|
|
14637
14641
|
}
|
|
14638
14642
|
}, [_vm.selectedItems.length ? _c('p', [_vm._v("Se exportará " + _vm._s(_vm.selectedItems.length) + " elementos.")]) : _c('p', [_vm._v("Se exportará la consulta actual.")]), _c('b-form-group', {
|
|
@@ -14675,20 +14679,20 @@ var _sfc_render$2 = function render() {
|
|
|
14675
14679
|
}, [_c('b-button', {
|
|
14676
14680
|
attrs: {
|
|
14677
14681
|
"variant": "info",
|
|
14678
|
-
"disabled": _vm.
|
|
14682
|
+
"disabled": _vm.loadingValue
|
|
14679
14683
|
},
|
|
14680
14684
|
on: {
|
|
14681
14685
|
"click": function ($event) {
|
|
14682
14686
|
return _vm.exportItems();
|
|
14683
14687
|
}
|
|
14684
14688
|
}
|
|
14685
|
-
}, [_c('b-icon-cloud-upload'), _vm._v(" " + _vm._s(_vm.
|
|
14689
|
+
}, [_c('b-icon-cloud-upload'), _vm._v(" " + _vm._s(_vm.loadingValue ? "Cargando..." : "Exportar") + " ")], 1)], 1)], 1)];
|
|
14686
14690
|
}, {
|
|
14687
14691
|
"item": _vm.item
|
|
14688
14692
|
}) : _vm._e()], 2) : _vm._e()], 1);
|
|
14689
14693
|
};
|
|
14690
14694
|
var _sfc_staticRenderFns$2 = [];
|
|
14691
|
-
var __component__$2 = /*#__PURE__*/normalizeComponent(_sfc_main$2, _sfc_render$2, _sfc_staticRenderFns$2, false, null, "
|
|
14695
|
+
var __component__$2 = /*#__PURE__*/normalizeComponent(_sfc_main$2, _sfc_render$2, _sfc_staticRenderFns$2, false, null, "a032ebce", null, null);
|
|
14692
14696
|
var CrudModals = __component__$2.exports;
|
|
14693
14697
|
|
|
14694
14698
|
var vueInfiniteLoading = {exports: {}};
|
|
@@ -21422,6 +21426,9 @@ var crudHelpers = {
|
|
|
21422
21426
|
});
|
|
21423
21427
|
},
|
|
21424
21428
|
createItem() {
|
|
21429
|
+
// Asegurar que loading esté en false al abrir el modal
|
|
21430
|
+
this.loading = false;
|
|
21431
|
+
|
|
21425
21432
|
// Hacer copia profunda del objeto para asegurar reactividad
|
|
21426
21433
|
const itemCopy = JSON.parse(JSON.stringify(this.itemDefault));
|
|
21427
21434
|
if (this.useVuexORM && !this.vuexLocalforage) {
|
|
@@ -21458,6 +21465,8 @@ var crudHelpers = {
|
|
|
21458
21465
|
});
|
|
21459
21466
|
},
|
|
21460
21467
|
updateItem(id, itemIndex = null) {
|
|
21468
|
+
// Asegurar que loading esté en false al abrir el modal
|
|
21469
|
+
this.loading = false;
|
|
21461
21470
|
let item;
|
|
21462
21471
|
if (itemIndex == null) {
|
|
21463
21472
|
item = this.items.find(it => it.id == id);
|