contentoh-components-library 21.6.55 → 21.6.56
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/.claude/launch.json +14 -0
- package/.env.test +1 -0
- package/dist/ai/prompts/attribute.prompt.js +28 -0
- package/dist/ai/prompts/description.prompt.js +33 -0
- package/dist/ai/schemas/attribute.schema.js +35 -0
- package/dist/ai/schemas/description.schema.js +27 -0
- package/dist/components/atoms/AssetPreview/AssetPreview.stories.js +118 -0
- package/dist/components/atoms/AssetPreview/index.js +150 -0
- package/dist/components/atoms/AssetPreview/styles.js +28 -0
- package/dist/components/atoms/IconFile/index.js +85 -2
- package/dist/components/atoms/IconFile/styles.js +1 -1
- package/dist/components/atoms/ProductImage/ProductImage.stories.js +70 -2
- package/dist/components/atoms/ProductImage/index.js +100 -27
- package/dist/components/atoms/ProductImage/styles.js +3 -1
- package/dist/components/molecules/EditionActiveImage/index.js +4 -2
- package/dist/components/molecules/GalleryAssetElement/GalleryAssetElement.stories.js +147 -0
- package/dist/components/molecules/GalleryAssetElement/index.js +178 -0
- package/dist/components/molecules/GalleryAssetElement/styles.js +26 -0
- package/dist/components/molecules/GalleryElement/index.js +13 -4
- package/dist/components/molecules/GalleryHeader/index.js +96 -24
- package/dist/components/molecules/GalleryHeader/styles.js +4 -1
- package/dist/components/molecules/GalleryTrayTabs/GalleryTrayTabs.stories.js +56 -0
- package/dist/components/molecules/GalleryTrayTabs/index.js +60 -0
- package/dist/components/molecules/GalleryTrayTabs/styles.js +20 -0
- package/dist/components/molecules/ImageSelector/index.js +1 -0
- package/dist/components/organisms/DigitalAssetsTray/DigitalAssetsTray.stories.js +171 -0
- package/dist/components/organisms/DigitalAssetsTray/index.js +211 -0
- package/dist/components/organisms/DigitalAssetsTray/styles.js +22 -0
- package/dist/components/organisms/ImagePreviewer/index.js +1 -0
- package/dist/components/organisms/ProductImageModal/index.js +3 -2
- package/dist/components/pages/RetailerProductEdition/context/provider-product-edition.context.js +330 -15
- package/dist/components/pages/RetailerProductEdition/context/provider-product-edition.reducer.js +12 -2
- package/dist/components/pages/RetailerProductEdition/index.js +606 -425
- package/dist/components/pages/RetailerProductEdition/stories/ImageEditor.stories.js +1 -0
- package/dist/global-files/data.js +16 -3
- package/dist/global-files/digital-assets/assetTypes.js +480 -0
- package/dist/global-files/digital-assets/assets.actions.js +64 -0
- package/dist/global-files/digital-assets/assets.adapter.js +304 -0
- package/dist/global-files/digital-assets/assets.mock.js +136 -0
- package/dist/global-files/digital-assets/assets.reducer.js +220 -0
- package/dist/global-files/digital-assets/uploadAssets.js +179 -0
- package/dist/global-files/digital-assets/useDigitalAssets.js +522 -0
- package/dist/index.js +142 -90
- package/docs/activos-digitales.md +273 -0
- package/package.json +1 -1
- package/src/components/atoms/AssetPreview/AssetPreview.stories.js +78 -0
- package/src/components/atoms/AssetPreview/index.js +119 -0
- package/src/components/atoms/AssetPreview/styles.js +190 -0
- package/src/components/atoms/IconFile/index.js +28 -1
- package/src/components/atoms/IconFile/styles.js +8 -0
- package/src/components/atoms/ProductImage/ProductImage.stories.js +38 -0
- package/src/components/atoms/ProductImage/index.js +95 -20
- package/src/components/atoms/ProductImage/styles.js +92 -7
- package/src/components/molecules/EditionActiveImage/index.js +2 -2
- package/src/components/molecules/GalleryAssetElement/GalleryAssetElement.stories.js +102 -0
- package/src/components/molecules/GalleryAssetElement/index.js +162 -0
- package/src/components/molecules/GalleryAssetElement/styles.js +159 -0
- package/src/components/molecules/GalleryElement/index.js +9 -0
- package/src/components/molecules/GalleryHeader/index.js +65 -13
- package/src/components/molecules/GalleryHeader/styles.js +2 -1
- package/src/components/molecules/GalleryTrayTabs/GalleryTrayTabs.stories.js +32 -0
- package/src/components/molecules/GalleryTrayTabs/index.js +41 -0
- package/src/components/molecules/GalleryTrayTabs/styles.js +52 -0
- package/src/components/molecules/ImageSelector/index.js +1 -0
- package/src/components/organisms/DigitalAssetsTray/DigitalAssetsTray.stories.js +101 -0
- package/src/components/organisms/DigitalAssetsTray/index.js +189 -0
- package/src/components/organisms/DigitalAssetsTray/styles.js +183 -0
- package/src/components/organisms/ImagePreviewer/index.js +1 -0
- package/src/components/organisms/ProductImageModal/index.js +1 -0
- package/src/components/pages/RetailerProductEdition/context/provider-product-edition.context.jsx +201 -0
- package/src/components/pages/RetailerProductEdition/context/provider-product-edition.reducer.js +12 -0
- package/src/components/pages/RetailerProductEdition/index.js +356 -139
- package/src/components/pages/RetailerProductEdition/stories/ImageEditor.stories.js +1 -0
- package/src/global-files/data.js +17 -2
- package/src/global-files/digital-assets/assetTypes.js +419 -0
- package/src/global-files/digital-assets/assets.actions.js +50 -0
- package/src/global-files/digital-assets/assets.adapter.js +229 -0
- package/src/global-files/digital-assets/assets.mock.js +122 -0
- package/src/global-files/digital-assets/assets.reducer.js +197 -0
- package/src/global-files/digital-assets/uploadAssets.js +109 -0
- package/src/global-files/digital-assets/useDigitalAssets.js +329 -0
- package/src/index.js +4 -0
|
@@ -19,10 +19,10 @@ var _objectSpread5 = _interopRequireDefault(require("@babel/runtime/helpers/esm/
|
|
|
19
19
|
|
|
20
20
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/toConsumableArray"));
|
|
21
21
|
|
|
22
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
23
|
-
|
|
24
22
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
|
|
25
23
|
|
|
24
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
25
|
+
|
|
26
26
|
var _react = require("react");
|
|
27
27
|
|
|
28
28
|
var _axios = _interopRequireDefault(require("axios"));
|
|
@@ -41,6 +41,10 @@ var _data = require("../../../global-files/data");
|
|
|
41
41
|
|
|
42
42
|
var _customHooks = require("../../../global-files/customHooks");
|
|
43
43
|
|
|
44
|
+
var _useDigitalAssets = require("../../../global-files/digital-assets/useDigitalAssets");
|
|
45
|
+
|
|
46
|
+
var _assets = require("../../../global-files/digital-assets/assets.reducer");
|
|
47
|
+
|
|
44
48
|
var _GeneralButton = require("../../atoms/GeneralButton");
|
|
45
49
|
|
|
46
50
|
var _GenericModal = require("../../atoms/GenericModal");
|
|
@@ -55,6 +59,8 @@ var _GalleryElement = require("../../molecules/GalleryElement");
|
|
|
55
59
|
|
|
56
60
|
var _GalleryHeader = require("../../molecules/GalleryHeader");
|
|
57
61
|
|
|
62
|
+
var _GalleryTrayTabs = require("../../molecules/GalleryTrayTabs");
|
|
63
|
+
|
|
58
64
|
var _HeaderTop = require("../../molecules/HeaderTop");
|
|
59
65
|
|
|
60
66
|
var _index = require("../../molecules/TagAndInput/index");
|
|
@@ -65,6 +71,8 @@ var _FullTabsMenu = require("../../organisms/FullTabsMenu");
|
|
|
65
71
|
|
|
66
72
|
var _ImageDataTable = require("../../organisms/ImageDataTable");
|
|
67
73
|
|
|
74
|
+
var _DigitalAssetsTray = require("../../organisms/DigitalAssetsTray");
|
|
75
|
+
|
|
68
76
|
var _ImagePreviewer = require("../../organisms/ImagePreviewer");
|
|
69
77
|
|
|
70
78
|
var _InputGroup = require("../../organisms/InputGroup");
|
|
@@ -132,118 +140,8 @@ function obtenerDuracionVideoBase64(base64Data) {
|
|
|
132
140
|
});
|
|
133
141
|
}
|
|
134
142
|
|
|
135
|
-
function convertirVideoABase64(url) {
|
|
136
|
-
return new Promise(function (resolve, reject) {
|
|
137
|
-
var xhr = new XMLHttpRequest();
|
|
138
|
-
xhr.open("GET", url, true);
|
|
139
|
-
xhr.responseType = "blob";
|
|
140
|
-
|
|
141
|
-
xhr.onload = function () {
|
|
142
|
-
if (xhr.status === 200) {
|
|
143
|
-
var blob = xhr.response;
|
|
144
|
-
var reader = new FileReader();
|
|
145
|
-
|
|
146
|
-
reader.onloadend = function () {
|
|
147
|
-
resolve(reader.result);
|
|
148
|
-
};
|
|
149
|
-
|
|
150
|
-
reader.readAsDataURL(blob);
|
|
151
|
-
} else {
|
|
152
|
-
reject(new Error("Error al cargar el video"));
|
|
153
|
-
}
|
|
154
|
-
};
|
|
155
|
-
|
|
156
|
-
xhr.onerror = function () {
|
|
157
|
-
reject(new Error("Error de red al cargar el video"));
|
|
158
|
-
};
|
|
159
|
-
|
|
160
|
-
xhr.send();
|
|
161
|
-
});
|
|
162
|
-
} // Para videos ya guardados, `getImage` deja en `src` una URL del
|
|
163
|
-
// redimensionador de imágenes que no sirve para mp4. Descargamos el video
|
|
164
|
-
// desde S3 (srcDB) y generamos un thumbnail JPEG para mostrarlo en la galería.
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
function regenerateVideoThumbnails(_x) {
|
|
168
|
-
return _regenerateVideoThumbnails.apply(this, arguments);
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
function _regenerateVideoThumbnails() {
|
|
172
|
-
_regenerateVideoThumbnails = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee21(values) {
|
|
173
|
-
return _regenerator.default.wrap(function _callee21$(_context21) {
|
|
174
|
-
while (1) {
|
|
175
|
-
switch (_context21.prev = _context21.next) {
|
|
176
|
-
case 0:
|
|
177
|
-
if (Array.isArray(values)) {
|
|
178
|
-
_context21.next = 2;
|
|
179
|
-
break;
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
return _context21.abrupt("return", values);
|
|
183
|
-
|
|
184
|
-
case 2:
|
|
185
|
-
return _context21.abrupt("return", Promise.all(values.map( /*#__PURE__*/function () {
|
|
186
|
-
var _ref25 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee20(value) {
|
|
187
|
-
var base64, videoSrc, thumbnail;
|
|
188
|
-
return _regenerator.default.wrap(function _callee20$(_context20) {
|
|
189
|
-
while (1) {
|
|
190
|
-
switch (_context20.prev = _context20.next) {
|
|
191
|
-
case 0:
|
|
192
|
-
if (!((value === null || value === void 0 ? void 0 : value.ext) !== "mp4" || !(value !== null && value !== void 0 && value.srcDB))) {
|
|
193
|
-
_context20.next = 2;
|
|
194
|
-
break;
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
return _context20.abrupt("return", value);
|
|
198
|
-
|
|
199
|
-
case 2:
|
|
200
|
-
_context20.prev = 2;
|
|
201
|
-
_context20.next = 5;
|
|
202
|
-
return convertirVideoABase64("https://" + process.env.REACT_APP_IMAGES_BUCKET + ".s3.amazonaws.com/" + value.srcDB);
|
|
203
|
-
|
|
204
|
-
case 5:
|
|
205
|
-
base64 = _context20.sent;
|
|
206
|
-
videoSrc = "data:video/mp4;base64," + base64.split(",")[1];
|
|
207
|
-
_context20.next = 9;
|
|
208
|
-
return (0, _generateThumnail.default)(videoSrc, 2);
|
|
209
|
-
|
|
210
|
-
case 9:
|
|
211
|
-
thumbnail = _context20.sent;
|
|
212
|
-
return _context20.abrupt("return", (0, _objectSpread5.default)((0, _objectSpread5.default)({}, value), {}, {
|
|
213
|
-
src: thumbnail
|
|
214
|
-
}));
|
|
215
|
-
|
|
216
|
-
case 13:
|
|
217
|
-
_context20.prev = 13;
|
|
218
|
-
_context20.t0 = _context20["catch"](2);
|
|
219
|
-
console.error("Error al generar thumbnail del video:", _context20.t0);
|
|
220
|
-
return _context20.abrupt("return", value);
|
|
221
|
-
|
|
222
|
-
case 17:
|
|
223
|
-
case "end":
|
|
224
|
-
return _context20.stop();
|
|
225
|
-
}
|
|
226
|
-
}
|
|
227
|
-
}, _callee20, null, [[2, 13]]);
|
|
228
|
-
}));
|
|
229
|
-
|
|
230
|
-
return function (_x10) {
|
|
231
|
-
return _ref25.apply(this, arguments);
|
|
232
|
-
};
|
|
233
|
-
}())));
|
|
234
|
-
|
|
235
|
-
case 3:
|
|
236
|
-
case "end":
|
|
237
|
-
return _context21.stop();
|
|
238
|
-
}
|
|
239
|
-
}
|
|
240
|
-
}, _callee21);
|
|
241
|
-
}));
|
|
242
|
-
return _regenerateVideoThumbnails.apply(this, arguments);
|
|
243
|
-
}
|
|
244
|
-
|
|
245
143
|
var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
246
|
-
var _state$
|
|
144
|
+
var _state$product$id_art, _state$product, _state$product11, _family$variants, _state$product12, _state$product16, _state$errors, _pendingPropagation$k, _family$variants2, _variantGroup$members3, _variantGroup$group, _state$product20, _state$product21, _state$product22, _state$active_retaile7, _state$product23, _state$product24, _state$product25, _variantGroup$group2, _location$state, _location$state2, _state$active_retaile8, _state$active_retaile9, _state$images_values$2, _state$images_values10, _state$images_values11, _state$images_values12, _state$images_values13, _state$product26, _state$active_retaile10, _family$variants3, _family$variants4, _variantGroup$members4, _variantGroup$members5, _state$active_percent, _state$active_percent2, _state$active_percent3, _state$active_retaile11, _state$active_retaile12, _state$active_retaile13, _state$product32, _state$services3, _state$services3$data, _state$product33, _state$product34, _state$datasheets_inp, _state$datasheets_inp2, _state$product35, _state$images_values$3, _state$images_values14, _state$images_values15, _state$images_values16, _state$images_values17, _state$comment;
|
|
247
145
|
|
|
248
146
|
var tabsSections = _ref.tabsSections,
|
|
249
147
|
_ref$productSelected = _ref.productSelected,
|
|
@@ -251,7 +149,9 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
251
149
|
_ref$user = _ref.user,
|
|
252
150
|
user = _ref$user === void 0 ? {} : _ref$user,
|
|
253
151
|
token = _ref.token,
|
|
254
|
-
location = _ref.location
|
|
152
|
+
location = _ref.location,
|
|
153
|
+
_ref$enableDigitalAss = _ref.enableDigitalAssets,
|
|
154
|
+
enableDigitalAssets = _ref$enableDigitalAss === void 0 ? false : _ref$enableDigitalAss;
|
|
255
155
|
|
|
256
156
|
var _useProviderProductEd = (0, _providerProductEdition.useProviderProductEdition)(),
|
|
257
157
|
state = _useProviderProductEd.state,
|
|
@@ -260,6 +160,8 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
260
160
|
saveDescriptions = _useProviderProductEd.saveDescriptions,
|
|
261
161
|
updateImages = _useProviderProductEd.updateImages,
|
|
262
162
|
deleteImages = _useProviderProductEd.deleteImages,
|
|
163
|
+
saveAssets = _useProviderProductEd.saveAssets,
|
|
164
|
+
registerUploadedAssets = _useProviderProductEd.registerUploadedAssets,
|
|
263
165
|
handleOnDownloadImages = _useProviderProductEd.handleOnDownloadImages,
|
|
264
166
|
createComment = _useProviderProductEd.createComment;
|
|
265
167
|
|
|
@@ -526,7 +428,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
526
428
|
}, _callee, null, [[5, 18]]);
|
|
527
429
|
}));
|
|
528
430
|
|
|
529
|
-
return function (
|
|
431
|
+
return function (_x) {
|
|
530
432
|
return _ref2.apply(this, arguments);
|
|
531
433
|
};
|
|
532
434
|
}();
|
|
@@ -549,6 +451,66 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
549
451
|
_useState54 = (0, _slicedToArray2.default)(_useState53, 2),
|
|
550
452
|
openChangeStatusModal = _useState54[0],
|
|
551
453
|
setOpenChangeStatusModal = _useState54[1];
|
|
454
|
+
/*
|
|
455
|
+
Bandeja de activos digitales. La lista vive en el reducer de la ficha
|
|
456
|
+
(`state.assets_values`), igual que las imágenes, para que el guardado del
|
|
457
|
+
contexto pueda leerla. El hook solo aporta validación y ciclo de vida.
|
|
458
|
+
Sigue vacía porque todavía no hay de dónde leerla: cuando exista el endpoint
|
|
459
|
+
se llama a `replaceAll` desde `loadData` y el resto de la pantalla no cambia.
|
|
460
|
+
*/
|
|
461
|
+
|
|
462
|
+
|
|
463
|
+
var _useState55 = (0, _react.useState)([]),
|
|
464
|
+
_useState56 = (0, _slicedToArray2.default)(_useState55, 2),
|
|
465
|
+
assetNotices = _useState56[0],
|
|
466
|
+
setAssetNotices = _useState56[1];
|
|
467
|
+
|
|
468
|
+
var digitalAssets = (0, _useDigitalAssets.useDigitalAssets)({
|
|
469
|
+
assets: state.assets_values,
|
|
470
|
+
dispatch: dispatch,
|
|
471
|
+
notices: assetNotices,
|
|
472
|
+
setNotices: setAssetNotices,
|
|
473
|
+
// Con los dos, la subida a S3 arranca sola al soltar los archivos. Sin
|
|
474
|
+
// ellos —en Storybook, por ejemplo— la bandeja funciona igual pero no sube.
|
|
475
|
+
articleId: (_state$product$id_art = (_state$product = state.product) === null || _state$product === void 0 ? void 0 : _state$product.id_article) !== null && _state$product$id_art !== void 0 ? _state$product$id_art : null,
|
|
476
|
+
token: token,
|
|
477
|
+
// Al terminar la subida el activo queda registrado solo, sin esperar al
|
|
478
|
+
// botón de guardar: con la barra llena, nadie supone que falta un paso.
|
|
479
|
+
onUploaded: function onUploaded(uploaded) {
|
|
480
|
+
return registerUploadedAssets(token, uploaded);
|
|
481
|
+
}
|
|
482
|
+
});
|
|
483
|
+
|
|
484
|
+
var _useState57 = (0, _react.useState)(_GalleryTrayTabs.TRAYS.IMAGES),
|
|
485
|
+
_useState58 = (0, _slicedToArray2.default)(_useState57, 2),
|
|
486
|
+
activeTray = _useState58[0],
|
|
487
|
+
setActiveTray = _useState58[1];
|
|
488
|
+
|
|
489
|
+
var currentTray = enableDigitalAssets ? activeTray : _GalleryTrayTabs.TRAYS.IMAGES;
|
|
490
|
+
/*
|
|
491
|
+
De qué artículo se cargaron ya los activos.
|
|
492
|
+
`loadData` se vuelve a ejecutar cada vez que cambia la cadena activa, pero los
|
|
493
|
+
activos son generales: no dependen de la cadena ni de la versión, así que la
|
|
494
|
+
respuesta sería idéntica. Volver a cargarlos borraría los archivos que el
|
|
495
|
+
usuario acaba de soltar y todavía no guarda —sin aviso y sin forma de
|
|
496
|
+
recuperarlos—. Por eso se cargan una sola vez por artículo.
|
|
497
|
+
*/
|
|
498
|
+
|
|
499
|
+
var assetsLoadedFor = (0, _react.useRef)(null);
|
|
500
|
+
|
|
501
|
+
var handleOnSetSelectedAssets = function handleOnSetSelectedAssets(assets) {
|
|
502
|
+
return dispatch({
|
|
503
|
+
type: "SET_SELECTED_ASSETS",
|
|
504
|
+
payload: assets
|
|
505
|
+
});
|
|
506
|
+
};
|
|
507
|
+
|
|
508
|
+
var handleOnSetAllAssetsChecked = function handleOnSetAllAssetsChecked(isChecked) {
|
|
509
|
+
return dispatch({
|
|
510
|
+
type: "TOGGLE_CHECK_ALL_ASSETS",
|
|
511
|
+
payload: isChecked
|
|
512
|
+
});
|
|
513
|
+
};
|
|
552
514
|
|
|
553
515
|
var thumbs = function thumbs() {
|
|
554
516
|
var _state$images_values, _state$images_values$, _state$images_values4, _state$images_values5, _state$images_values6, _state$images_values7, _state$images_values8, _state$images_values9;
|
|
@@ -603,6 +565,9 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
603
565
|
},
|
|
604
566
|
updateApprovedInputsImages: function updateApprovedInputsImages(item) {
|
|
605
567
|
return console.log("updateApprovedInputsImages", item);
|
|
568
|
+
},
|
|
569
|
+
onSelect: function onSelect() {
|
|
570
|
+
return handleOnChangeCurrentImage(index);
|
|
606
571
|
}
|
|
607
572
|
}, index);
|
|
608
573
|
});
|
|
@@ -719,7 +684,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
719
684
|
|
|
720
685
|
var loadAuditableData = /*#__PURE__*/function () {
|
|
721
686
|
var _ref4 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {
|
|
722
|
-
var _state$
|
|
687
|
+
var _state$product2, _state$product3, _state$product4;
|
|
723
688
|
|
|
724
689
|
var auditServices;
|
|
725
690
|
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
@@ -727,7 +692,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
727
692
|
switch (_context3.prev = _context3.next) {
|
|
728
693
|
case 0:
|
|
729
694
|
_context3.next = 2;
|
|
730
|
-
return (0, _data.getRetailerServices)((_state$
|
|
695
|
+
return (0, _data.getRetailerServices)((_state$product2 = state.product) === null || _state$product2 === void 0 ? void 0 : _state$product2.id_article, (_state$product3 = state.product) === null || _state$product3 === void 0 ? void 0 : _state$product3.categoryName, parseInt((_state$product4 = state.product) === null || _state$product4 === void 0 ? void 0 : _state$product4.id_category), auditableVersion.version, token);
|
|
731
696
|
|
|
732
697
|
case 2:
|
|
733
698
|
auditServices = _context3.sent;
|
|
@@ -771,7 +736,9 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
771
736
|
_services$,
|
|
772
737
|
_retailerDatasheets$d,
|
|
773
738
|
_state$active_retaile2,
|
|
774
|
-
|
|
739
|
+
_services$0$inputs,
|
|
740
|
+
_services$2,
|
|
741
|
+
_state$product5,
|
|
775
742
|
id_article,
|
|
776
743
|
version,
|
|
777
744
|
id_order,
|
|
@@ -800,8 +767,6 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
800
767
|
descriptionsActiveRetailer,
|
|
801
768
|
activeRetailerId,
|
|
802
769
|
filteredValues,
|
|
803
|
-
orderedValuesWithThumbs,
|
|
804
|
-
filteredValuesWithThumbs,
|
|
805
770
|
_args4 = arguments;
|
|
806
771
|
|
|
807
772
|
return _regenerator.default.wrap(function _callee4$(_context4) {
|
|
@@ -819,7 +784,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
819
784
|
type: "SET_ERRORS",
|
|
820
785
|
payload: []
|
|
821
786
|
});
|
|
822
|
-
_state$
|
|
787
|
+
_state$product5 = state.product, id_article = _state$product5.id_article, version = _state$product5.version, id_order = _state$product5.id_order;
|
|
823
788
|
_state$active_retaile = state.active_retailer, category = _state$active_retaile.category, id_category = _state$active_retaile.id_category, id_retailer = _state$active_retaile.id_retailer; // Payloads y headers
|
|
824
789
|
|
|
825
790
|
data = [{
|
|
@@ -959,26 +924,15 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
959
924
|
return Number(input.id_retailer) === Number(activeRetailerId) && Number(input.id_image) === Number(value.image_id);
|
|
960
925
|
});
|
|
961
926
|
});
|
|
962
|
-
}); //
|
|
963
|
-
|
|
964
|
-
_context4.next = 35;
|
|
965
|
-
return regenerateVideoThumbnails(orderedValues);
|
|
966
|
-
|
|
967
|
-
case 35:
|
|
968
|
-
orderedValuesWithThumbs = _context4.sent;
|
|
969
|
-
_context4.next = 38;
|
|
970
|
-
return regenerateVideoThumbnails(filteredValues);
|
|
927
|
+
}); // Dispatch consolidado
|
|
971
928
|
|
|
972
|
-
case 38:
|
|
973
|
-
filteredValuesWithThumbs = _context4.sent;
|
|
974
|
-
// Dispatch consolidado
|
|
975
929
|
dispatch({
|
|
976
930
|
type: "SET_SERVICES",
|
|
977
931
|
payload: {
|
|
978
932
|
datasheets: services[0],
|
|
979
933
|
descriptions: services[1],
|
|
980
934
|
images: (0, _objectSpread5.default)((0, _objectSpread5.default)({}, services[2]), {}, {
|
|
981
|
-
values:
|
|
935
|
+
values: orderedValues
|
|
982
936
|
})
|
|
983
937
|
}
|
|
984
938
|
});
|
|
@@ -1000,7 +954,12 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1000
954
|
|
|
1001
955
|
dispatch({
|
|
1002
956
|
type: "SET_DATASHEETS_INPUTS",
|
|
1003
|
-
|
|
957
|
+
// `services[0]?` por lo mismo que el fallback de arriba: la lectura de
|
|
958
|
+
// fichas puede volver sin datos para esa cadena y categoría. Arriba ya
|
|
959
|
+
// se contemplaba; aquí no, y como este dispatch va ANTES de
|
|
960
|
+
// SET_IMAGES_VALUES, reventar aquí dejaba la ficha cargando para
|
|
961
|
+
// siempre — con las imágenes ya traídas y sin pintar.
|
|
962
|
+
payload: [datasheetsActiveRetailer, (_services$0$inputs = (_services$2 = services[0]) === null || _services$2 === void 0 ? void 0 : _services$2.inputs) !== null && _services$0$inputs !== void 0 ? _services$0$inputs : {}]
|
|
1004
963
|
});
|
|
1005
964
|
dispatch({
|
|
1006
965
|
type: "SET_DESCRIPTIONS_INPUTS",
|
|
@@ -1009,9 +968,20 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1009
968
|
dispatch({
|
|
1010
969
|
type: "SET_IMAGES_VALUES",
|
|
1011
970
|
payload: (0, _objectSpread5.default)((0, _objectSpread5.default)({}, services[2]), {}, {
|
|
1012
|
-
values:
|
|
971
|
+
values: filteredValues
|
|
1013
972
|
})
|
|
1014
|
-
});
|
|
973
|
+
});
|
|
974
|
+
/*
|
|
975
|
+
Activos digitales. `services[2].assets` todavía no existe en la
|
|
976
|
+
respuesta del backend: hasta que exista, esto no hace nada, y el día que
|
|
977
|
+
llegue la bandeja se llena sola sin tocar nada más.
|
|
978
|
+
*/
|
|
979
|
+
|
|
980
|
+
if (Array.isArray(services[2].assets) && assetsLoadedFor.current !== id_article) {
|
|
981
|
+
assetsLoadedFor.current = id_article;
|
|
982
|
+
digitalAssets.replaceAll(services[2].assets);
|
|
983
|
+
} // Calcular campos requeridos sin valor
|
|
984
|
+
|
|
1015
985
|
|
|
1016
986
|
dispatch({
|
|
1017
987
|
type: "SET_MISSING_REQUIRED_FIELDS",
|
|
@@ -1022,11 +992,11 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1022
992
|
loadAuditableData();
|
|
1023
993
|
}
|
|
1024
994
|
|
|
1025
|
-
_context4.next =
|
|
995
|
+
_context4.next = 49;
|
|
1026
996
|
break;
|
|
1027
997
|
|
|
1028
|
-
case
|
|
1029
|
-
_context4.prev =
|
|
998
|
+
case 45:
|
|
999
|
+
_context4.prev = 45;
|
|
1030
1000
|
_context4.t0 = _context4["catch"](2);
|
|
1031
1001
|
console.log("Error loading data: ", _context4.t0);
|
|
1032
1002
|
dispatch({
|
|
@@ -1034,20 +1004,20 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1034
1004
|
payload: [_context4.t0.message]
|
|
1035
1005
|
});
|
|
1036
1006
|
|
|
1037
|
-
case
|
|
1038
|
-
_context4.prev =
|
|
1007
|
+
case 49:
|
|
1008
|
+
_context4.prev = 49;
|
|
1039
1009
|
dispatch({
|
|
1040
1010
|
type: "SET_LOADING",
|
|
1041
1011
|
payload: false
|
|
1042
1012
|
});
|
|
1043
|
-
return _context4.finish(
|
|
1013
|
+
return _context4.finish(49);
|
|
1044
1014
|
|
|
1045
|
-
case
|
|
1015
|
+
case 52:
|
|
1046
1016
|
case "end":
|
|
1047
1017
|
return _context4.stop();
|
|
1048
1018
|
}
|
|
1049
1019
|
}
|
|
1050
|
-
}, _callee4, null, [[2,
|
|
1020
|
+
}, _callee4, null, [[2, 45, 49, 52]]);
|
|
1051
1021
|
}));
|
|
1052
1022
|
|
|
1053
1023
|
return function loadData() {
|
|
@@ -1110,9 +1080,9 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1110
1080
|
};
|
|
1111
1081
|
|
|
1112
1082
|
var isAuditorAssigned = function isAuditorAssigned() {
|
|
1113
|
-
var _state$
|
|
1083
|
+
var _state$product6;
|
|
1114
1084
|
|
|
1115
|
-
return ((_state$
|
|
1085
|
+
return ((_state$product6 = state.product) === null || _state$product6 === void 0 ? void 0 : _state$product6.id_auditor) === (user === null || user === void 0 ? void 0 : user.id_user);
|
|
1116
1086
|
};
|
|
1117
1087
|
/**
|
|
1118
1088
|
* ¿Ocupo este slot EN ESTE producto?
|
|
@@ -1125,9 +1095,9 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1125
1095
|
|
|
1126
1096
|
|
|
1127
1097
|
var isAssignedAs = function isAssignedAs(rol, concept) {
|
|
1128
|
-
var _state$
|
|
1098
|
+
var _state$product7;
|
|
1129
1099
|
|
|
1130
|
-
var assigned = (_state$
|
|
1100
|
+
var assigned = (_state$product7 = state.product) === null || _state$product7 === void 0 ? void 0 : _state$product7["id_".concat(concept, "_").concat(rol)];
|
|
1131
1101
|
return !!assigned && assigned === (user === null || user === void 0 ? void 0 : user.id_user);
|
|
1132
1102
|
};
|
|
1133
1103
|
|
|
@@ -1203,28 +1173,42 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1203
1173
|
})[0]) === null || _statusByRetailer$fil === void 0 ? void 0 : _statusByRetailer$fil.status) || "-";
|
|
1204
1174
|
return currentStatus;
|
|
1205
1175
|
};
|
|
1176
|
+
/*
|
|
1177
|
+
Guarda los activos y recarga si algo se escribió.
|
|
1178
|
+
La recarga no es opcional: un activo recién creado sigue en memoria con su
|
|
1179
|
+
id temporal y sin el id de la base. Sin volver a leer, el siguiente guardado
|
|
1180
|
+
lo mandaría otra vez como nuevo y se duplicaría. Poner el ref en `null` es
|
|
1181
|
+
lo que permite que `loadData` lo vuelva a traer —normalmente los activos se
|
|
1182
|
+
cargan una sola vez por artículo—.
|
|
1183
|
+
*/
|
|
1206
1184
|
|
|
1207
|
-
var handleOnClickSaveImages = /*#__PURE__*/function () {
|
|
1208
|
-
var _ref9 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5() {
|
|
1209
|
-
var _state$product7, _state$product7$servi;
|
|
1210
1185
|
|
|
1186
|
+
var handleOnSaveAssets = /*#__PURE__*/function () {
|
|
1187
|
+
var _ref9 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5() {
|
|
1188
|
+
var guardado;
|
|
1211
1189
|
return _regenerator.default.wrap(function _callee5$(_context5) {
|
|
1212
1190
|
while (1) {
|
|
1213
1191
|
switch (_context5.prev = _context5.next) {
|
|
1214
1192
|
case 0:
|
|
1215
|
-
|
|
1193
|
+
_context5.next = 2;
|
|
1194
|
+
return saveAssets(token);
|
|
1195
|
+
|
|
1196
|
+
case 2:
|
|
1197
|
+
guardado = _context5.sent;
|
|
1198
|
+
|
|
1199
|
+
if (guardado) {
|
|
1216
1200
|
_context5.next = 5;
|
|
1217
1201
|
break;
|
|
1218
1202
|
}
|
|
1219
1203
|
|
|
1220
|
-
_context5.
|
|
1221
|
-
return updateImages(token);
|
|
1204
|
+
return _context5.abrupt("return");
|
|
1222
1205
|
|
|
1223
|
-
case
|
|
1224
|
-
|
|
1206
|
+
case 5:
|
|
1207
|
+
assetsLoadedFor.current = null;
|
|
1208
|
+
_context5.next = 8;
|
|
1225
1209
|
return loadData(false);
|
|
1226
1210
|
|
|
1227
|
-
case
|
|
1211
|
+
case 8:
|
|
1228
1212
|
case "end":
|
|
1229
1213
|
return _context5.stop();
|
|
1230
1214
|
}
|
|
@@ -1232,10 +1216,55 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1232
1216
|
}, _callee5);
|
|
1233
1217
|
}));
|
|
1234
1218
|
|
|
1235
|
-
return function
|
|
1219
|
+
return function handleOnSaveAssets() {
|
|
1236
1220
|
return _ref9.apply(this, arguments);
|
|
1237
1221
|
};
|
|
1238
1222
|
}();
|
|
1223
|
+
|
|
1224
|
+
var handleOnClickSaveImages = /*#__PURE__*/function () {
|
|
1225
|
+
var _ref10 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6() {
|
|
1226
|
+
var _state$product8, _state$product8$servi;
|
|
1227
|
+
|
|
1228
|
+
return _regenerator.default.wrap(function _callee6$(_context6) {
|
|
1229
|
+
while (1) {
|
|
1230
|
+
switch (_context6.prev = _context6.next) {
|
|
1231
|
+
case 0:
|
|
1232
|
+
if (!(currentTray === _GalleryTrayTabs.TRAYS.ASSETS)) {
|
|
1233
|
+
_context6.next = 4;
|
|
1234
|
+
break;
|
|
1235
|
+
}
|
|
1236
|
+
|
|
1237
|
+
_context6.next = 3;
|
|
1238
|
+
return handleOnSaveAssets();
|
|
1239
|
+
|
|
1240
|
+
case 3:
|
|
1241
|
+
return _context6.abrupt("return");
|
|
1242
|
+
|
|
1243
|
+
case 4:
|
|
1244
|
+
if (!(((_state$product8 = state.product) === null || _state$product8 === void 0 ? void 0 : (_state$product8$servi = _state$product8.services) === null || _state$product8$servi === void 0 ? void 0 : _state$product8$servi.images) === 1)) {
|
|
1245
|
+
_context6.next = 9;
|
|
1246
|
+
break;
|
|
1247
|
+
}
|
|
1248
|
+
|
|
1249
|
+
_context6.next = 7;
|
|
1250
|
+
return updateImages(token);
|
|
1251
|
+
|
|
1252
|
+
case 7:
|
|
1253
|
+
_context6.next = 9;
|
|
1254
|
+
return loadData(false);
|
|
1255
|
+
|
|
1256
|
+
case 9:
|
|
1257
|
+
case "end":
|
|
1258
|
+
return _context6.stop();
|
|
1259
|
+
}
|
|
1260
|
+
}
|
|
1261
|
+
}, _callee6);
|
|
1262
|
+
}));
|
|
1263
|
+
|
|
1264
|
+
return function handleOnClickSaveImages() {
|
|
1265
|
+
return _ref10.apply(this, arguments);
|
|
1266
|
+
};
|
|
1267
|
+
}();
|
|
1239
1268
|
/*
|
|
1240
1269
|
Trae la familia: los hijos del producto, o sus hermanos si el abierto es
|
|
1241
1270
|
una de ellas. Se pide al abrir la sección y no al montar la pantalla: la
|
|
@@ -1244,31 +1273,31 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1244
1273
|
|
|
1245
1274
|
|
|
1246
1275
|
var loadFamily = /*#__PURE__*/function () {
|
|
1247
|
-
var
|
|
1276
|
+
var _ref11 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7() {
|
|
1248
1277
|
var forzar,
|
|
1249
|
-
_state$
|
|
1278
|
+
_state$product9,
|
|
1250
1279
|
res,
|
|
1251
1280
|
data,
|
|
1252
|
-
|
|
1281
|
+
_args7 = arguments;
|
|
1253
1282
|
|
|
1254
|
-
return _regenerator.default.wrap(function
|
|
1283
|
+
return _regenerator.default.wrap(function _callee7$(_context7) {
|
|
1255
1284
|
while (1) {
|
|
1256
|
-
switch (
|
|
1285
|
+
switch (_context7.prev = _context7.next) {
|
|
1257
1286
|
case 0:
|
|
1258
|
-
forzar =
|
|
1287
|
+
forzar = _args7.length > 0 && _args7[0] !== undefined ? _args7[0] : false;
|
|
1259
1288
|
|
|
1260
1289
|
if (!(family && !forzar)) {
|
|
1261
|
-
|
|
1290
|
+
_context7.next = 3;
|
|
1262
1291
|
break;
|
|
1263
1292
|
}
|
|
1264
1293
|
|
|
1265
|
-
return
|
|
1294
|
+
return _context7.abrupt("return", family);
|
|
1266
1295
|
|
|
1267
1296
|
case 3:
|
|
1268
|
-
|
|
1269
|
-
|
|
1297
|
+
_context7.prev = 3;
|
|
1298
|
+
_context7.next = 6;
|
|
1270
1299
|
return _axios.default.post("".concat(process.env.REACT_APP_VARIANTS_ENDPOINT, "/family"), {
|
|
1271
|
-
articleId: (_state$
|
|
1300
|
+
articleId: (_state$product9 = state.product) === null || _state$product9 === void 0 ? void 0 : _state$product9.id_article
|
|
1272
1301
|
}, {
|
|
1273
1302
|
headers: {
|
|
1274
1303
|
Authorization: token
|
|
@@ -1276,32 +1305,32 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1276
1305
|
});
|
|
1277
1306
|
|
|
1278
1307
|
case 6:
|
|
1279
|
-
res =
|
|
1308
|
+
res = _context7.sent;
|
|
1280
1309
|
data = (0, _api.readPayload)(res);
|
|
1281
1310
|
setFamily(data);
|
|
1282
|
-
return
|
|
1311
|
+
return _context7.abrupt("return", data);
|
|
1283
1312
|
|
|
1284
1313
|
case 12:
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
console.error("loadFamily: ",
|
|
1314
|
+
_context7.prev = 12;
|
|
1315
|
+
_context7.t0 = _context7["catch"](3);
|
|
1316
|
+
console.error("loadFamily: ", _context7.t0);
|
|
1288
1317
|
setFamily({
|
|
1289
1318
|
variants: [],
|
|
1290
1319
|
parent: null,
|
|
1291
1320
|
error: true
|
|
1292
1321
|
});
|
|
1293
|
-
return
|
|
1322
|
+
return _context7.abrupt("return", null);
|
|
1294
1323
|
|
|
1295
1324
|
case 17:
|
|
1296
1325
|
case "end":
|
|
1297
|
-
return
|
|
1326
|
+
return _context7.stop();
|
|
1298
1327
|
}
|
|
1299
1328
|
}
|
|
1300
|
-
},
|
|
1329
|
+
}, _callee7, null, [[3, 12]]);
|
|
1301
1330
|
}));
|
|
1302
1331
|
|
|
1303
1332
|
return function loadFamily() {
|
|
1304
|
-
return
|
|
1333
|
+
return _ref11.apply(this, arguments);
|
|
1305
1334
|
};
|
|
1306
1335
|
}();
|
|
1307
1336
|
/*
|
|
@@ -1318,16 +1347,16 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1318
1347
|
|
|
1319
1348
|
|
|
1320
1349
|
(0, _react.useEffect)(function () {
|
|
1321
|
-
var _state$
|
|
1350
|
+
var _state$product10;
|
|
1322
1351
|
|
|
1323
|
-
if (!((_state$
|
|
1352
|
+
if (!((_state$product10 = state.product) !== null && _state$product10 !== void 0 && _state$product10.id_article)) return;
|
|
1324
1353
|
loadFamily(true); // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
1325
|
-
}, [(_state$
|
|
1354
|
+
}, [(_state$product11 = state.product) === null || _state$product11 === void 0 ? void 0 : _state$product11.id_article]); // El conteo sale de la familia recién consultada, no del producto.
|
|
1326
1355
|
|
|
1327
1356
|
var hijosDelProducto = family !== null && family !== void 0 && family.error ? 0 : ((_family$variants = family === null || family === void 0 ? void 0 : family.variants) !== null && _family$variants !== void 0 ? _family$variants : []).filter(function (v) {
|
|
1328
1357
|
return !v.isCurrent;
|
|
1329
1358
|
}).length;
|
|
1330
|
-
var esHijoDeOtro = family !== null && family !== void 0 && family.error ? !!((_state$
|
|
1359
|
+
var esHijoDeOtro = family !== null && family !== void 0 && family.error ? !!((_state$product12 = state.product) !== null && _state$product12 !== void 0 && _state$product12.parentArticleId) : !!(family !== null && family !== void 0 && family.parent);
|
|
1331
1360
|
/*
|
|
1332
1361
|
Un hijo no se agrupa como variante (decisión de producto, 2026-09-25).
|
|
1333
1362
|
Agrupar declara «estos son el mismo producto en otra presentación», y un
|
|
@@ -1369,14 +1398,14 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1369
1398
|
*/
|
|
1370
1399
|
|
|
1371
1400
|
var handleOnUnlinked = function handleOnUnlinked(result) {
|
|
1372
|
-
var _state$product$varian, _state$
|
|
1401
|
+
var _state$product$varian, _state$product13, _updatedProduct$varia;
|
|
1373
1402
|
|
|
1374
1403
|
if (!result) return;
|
|
1375
1404
|
var updatedProduct = result.mode === "self" ? (0, _objectSpread5.default)((0, _objectSpread5.default)({}, state.product), {}, {
|
|
1376
1405
|
parentArticleId: null,
|
|
1377
1406
|
variantsCount: 0
|
|
1378
1407
|
}) : (0, _objectSpread5.default)((0, _objectSpread5.default)({}, state.product), {}, {
|
|
1379
|
-
variantsCount: Math.max(((_state$product$varian = (_state$
|
|
1408
|
+
variantsCount: Math.max(((_state$product$varian = (_state$product13 = state.product) === null || _state$product13 === void 0 ? void 0 : _state$product13.variantsCount) !== null && _state$product$varian !== void 0 ? _state$product$varian : 1) - 1, 0)
|
|
1380
1409
|
});
|
|
1381
1410
|
dispatch({
|
|
1382
1411
|
type: "SET_PRODUCT",
|
|
@@ -1428,31 +1457,31 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1428
1457
|
|
|
1429
1458
|
|
|
1430
1459
|
var loadVariantGroup = /*#__PURE__*/function () {
|
|
1431
|
-
var
|
|
1460
|
+
var _ref12 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8() {
|
|
1432
1461
|
var forzar,
|
|
1433
|
-
_state$
|
|
1462
|
+
_state$product14,
|
|
1434
1463
|
res,
|
|
1435
1464
|
data,
|
|
1436
|
-
|
|
1465
|
+
_args8 = arguments;
|
|
1437
1466
|
|
|
1438
|
-
return _regenerator.default.wrap(function
|
|
1467
|
+
return _regenerator.default.wrap(function _callee8$(_context8) {
|
|
1439
1468
|
while (1) {
|
|
1440
|
-
switch (
|
|
1469
|
+
switch (_context8.prev = _context8.next) {
|
|
1441
1470
|
case 0:
|
|
1442
|
-
forzar =
|
|
1471
|
+
forzar = _args8.length > 0 && _args8[0] !== undefined ? _args8[0] : false;
|
|
1443
1472
|
|
|
1444
1473
|
if (!(variantGroup && !forzar)) {
|
|
1445
|
-
|
|
1474
|
+
_context8.next = 3;
|
|
1446
1475
|
break;
|
|
1447
1476
|
}
|
|
1448
1477
|
|
|
1449
|
-
return
|
|
1478
|
+
return _context8.abrupt("return", variantGroup);
|
|
1450
1479
|
|
|
1451
1480
|
case 3:
|
|
1452
|
-
|
|
1453
|
-
|
|
1481
|
+
_context8.prev = 3;
|
|
1482
|
+
_context8.next = 6;
|
|
1454
1483
|
return _axios.default.post("".concat(process.env.REACT_APP_VARIANTS_ENDPOINT, "/group"), {
|
|
1455
|
-
articleId: (_state$
|
|
1484
|
+
articleId: (_state$product14 = state.product) === null || _state$product14 === void 0 ? void 0 : _state$product14.id_article
|
|
1456
1485
|
}, {
|
|
1457
1486
|
headers: {
|
|
1458
1487
|
Authorization: token
|
|
@@ -1460,54 +1489,54 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1460
1489
|
});
|
|
1461
1490
|
|
|
1462
1491
|
case 6:
|
|
1463
|
-
res =
|
|
1492
|
+
res = _context8.sent;
|
|
1464
1493
|
data = (0, _api.readPayload)(res);
|
|
1465
1494
|
setVariantGroup(data);
|
|
1466
|
-
return
|
|
1495
|
+
return _context8.abrupt("return", data);
|
|
1467
1496
|
|
|
1468
1497
|
case 12:
|
|
1469
|
-
|
|
1470
|
-
|
|
1471
|
-
console.error("loadVariantGroup: ",
|
|
1498
|
+
_context8.prev = 12;
|
|
1499
|
+
_context8.t0 = _context8["catch"](3);
|
|
1500
|
+
console.error("loadVariantGroup: ", _context8.t0);
|
|
1472
1501
|
setVariantGroup({
|
|
1473
1502
|
group: null,
|
|
1474
1503
|
members: [],
|
|
1475
1504
|
error: true
|
|
1476
1505
|
});
|
|
1477
|
-
return
|
|
1506
|
+
return _context8.abrupt("return", null);
|
|
1478
1507
|
|
|
1479
1508
|
case 17:
|
|
1480
1509
|
case "end":
|
|
1481
|
-
return
|
|
1510
|
+
return _context8.stop();
|
|
1482
1511
|
}
|
|
1483
1512
|
}
|
|
1484
|
-
},
|
|
1513
|
+
}, _callee8, null, [[3, 12]]);
|
|
1485
1514
|
}));
|
|
1486
1515
|
|
|
1487
1516
|
return function loadVariantGroup() {
|
|
1488
|
-
return
|
|
1517
|
+
return _ref12.apply(this, arguments);
|
|
1489
1518
|
};
|
|
1490
1519
|
}();
|
|
1491
1520
|
|
|
1492
1521
|
(0, _react.useEffect)(function () {
|
|
1493
|
-
var _state$
|
|
1522
|
+
var _state$product15;
|
|
1494
1523
|
|
|
1495
|
-
if (!((_state$
|
|
1524
|
+
if (!((_state$product15 = state.product) !== null && _state$product15 !== void 0 && _state$product15.id_article)) return;
|
|
1496
1525
|
loadVariantGroup(true); // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
1497
|
-
}, [(_state$
|
|
1526
|
+
}, [(_state$product16 = state.product) === null || _state$product16 === void 0 ? void 0 : _state$product16.id_article]);
|
|
1498
1527
|
|
|
1499
1528
|
var handleOnLeaveGroup = /*#__PURE__*/function () {
|
|
1500
|
-
var
|
|
1501
|
-
var _state$
|
|
1529
|
+
var _ref13 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9() {
|
|
1530
|
+
var _state$product17, res;
|
|
1502
1531
|
|
|
1503
|
-
return _regenerator.default.wrap(function
|
|
1532
|
+
return _regenerator.default.wrap(function _callee9$(_context9) {
|
|
1504
1533
|
while (1) {
|
|
1505
|
-
switch (
|
|
1534
|
+
switch (_context9.prev = _context9.next) {
|
|
1506
1535
|
case 0:
|
|
1507
|
-
|
|
1508
|
-
|
|
1536
|
+
_context9.prev = 0;
|
|
1537
|
+
_context9.next = 3;
|
|
1509
1538
|
return _axios.default.post("".concat(process.env.REACT_APP_VARIANTS_ENDPOINT, "/leave"), {
|
|
1510
|
-
articleId: (_state$
|
|
1539
|
+
articleId: (_state$product17 = state.product) === null || _state$product17 === void 0 ? void 0 : _state$product17.id_article
|
|
1511
1540
|
}, {
|
|
1512
1541
|
headers: {
|
|
1513
1542
|
Authorization: token
|
|
@@ -1515,16 +1544,16 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1515
1544
|
});
|
|
1516
1545
|
|
|
1517
1546
|
case 3:
|
|
1518
|
-
res =
|
|
1547
|
+
res = _context9.sent;
|
|
1519
1548
|
setVariantGroup((0, _api.readPayload)(res));
|
|
1520
1549
|
setShowGroup(false);
|
|
1521
|
-
|
|
1550
|
+
_context9.next = 12;
|
|
1522
1551
|
break;
|
|
1523
1552
|
|
|
1524
1553
|
case 8:
|
|
1525
|
-
|
|
1526
|
-
|
|
1527
|
-
console.error("leaveVariantGroup: ",
|
|
1554
|
+
_context9.prev = 8;
|
|
1555
|
+
_context9.t0 = _context9["catch"](0);
|
|
1556
|
+
console.error("leaveVariantGroup: ", _context9.t0);
|
|
1528
1557
|
dispatch({
|
|
1529
1558
|
type: "SET_MODAL",
|
|
1530
1559
|
payload: {
|
|
@@ -1549,29 +1578,29 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1549
1578
|
|
|
1550
1579
|
case 12:
|
|
1551
1580
|
case "end":
|
|
1552
|
-
return
|
|
1581
|
+
return _context9.stop();
|
|
1553
1582
|
}
|
|
1554
1583
|
}
|
|
1555
|
-
},
|
|
1584
|
+
}, _callee9, null, [[0, 8]]);
|
|
1556
1585
|
}));
|
|
1557
1586
|
|
|
1558
1587
|
return function handleOnLeaveGroup() {
|
|
1559
|
-
return
|
|
1588
|
+
return _ref13.apply(this, arguments);
|
|
1560
1589
|
};
|
|
1561
1590
|
}();
|
|
1562
1591
|
|
|
1563
1592
|
var openFamilyMember = /*#__PURE__*/function () {
|
|
1564
|
-
var
|
|
1565
|
-
var _readPayload, res,
|
|
1593
|
+
var _ref14 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee10(articleId) {
|
|
1594
|
+
var _readPayload, res, _ref15, data, encontrado;
|
|
1566
1595
|
|
|
1567
|
-
return _regenerator.default.wrap(function
|
|
1596
|
+
return _regenerator.default.wrap(function _callee10$(_context10) {
|
|
1568
1597
|
while (1) {
|
|
1569
|
-
switch (
|
|
1598
|
+
switch (_context10.prev = _context10.next) {
|
|
1570
1599
|
case 0:
|
|
1571
1600
|
setLoadingVariant(articleId);
|
|
1572
1601
|
setAvisoFamilia(null);
|
|
1573
|
-
|
|
1574
|
-
|
|
1602
|
+
_context10.prev = 2;
|
|
1603
|
+
_context10.next = 5;
|
|
1575
1604
|
return _axios.default.get("".concat(process.env.REACT_APP_ORDERED_SERVICES_ENDPOINT), {
|
|
1576
1605
|
params: {
|
|
1577
1606
|
filterByIdArticle: articleId,
|
|
@@ -1583,11 +1612,11 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1583
1612
|
});
|
|
1584
1613
|
|
|
1585
1614
|
case 5:
|
|
1586
|
-
res =
|
|
1615
|
+
res = _context10.sent;
|
|
1587
1616
|
// read-order-services responde { total, data: [...] }. La vista trae una
|
|
1588
1617
|
// fila por orden, así que puede haber varias del mismo artículo; llegan
|
|
1589
1618
|
// ordenadas por order_id DESC y la primera es la orden más reciente.
|
|
1590
|
-
|
|
1619
|
+
_ref15 = (_readPayload = (0, _api.readPayload)(res)) !== null && _readPayload !== void 0 ? _readPayload : {}, data = _ref15.data;
|
|
1591
1620
|
encontrado = (data !== null && data !== void 0 ? data : []).find(function (item) {
|
|
1592
1621
|
var _item$article;
|
|
1593
1622
|
|
|
@@ -1595,12 +1624,12 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1595
1624
|
});
|
|
1596
1625
|
|
|
1597
1626
|
if (encontrado) {
|
|
1598
|
-
|
|
1627
|
+
_context10.next = 11;
|
|
1599
1628
|
break;
|
|
1600
1629
|
}
|
|
1601
1630
|
|
|
1602
1631
|
setAvisoFamilia("Ese producto no está en ninguna orden de trabajo, así que no se puede abrir desde aquí.");
|
|
1603
|
-
return
|
|
1632
|
+
return _context10.abrupt("return");
|
|
1604
1633
|
|
|
1605
1634
|
case 11:
|
|
1606
1635
|
sessionStorage.setItem("productSelected", JSON.stringify(encontrado));
|
|
@@ -1611,30 +1640,30 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1611
1640
|
product: [encontrado]
|
|
1612
1641
|
}));
|
|
1613
1642
|
window.location.assign("/EditProducts");
|
|
1614
|
-
|
|
1643
|
+
_context10.next = 21;
|
|
1615
1644
|
break;
|
|
1616
1645
|
|
|
1617
1646
|
case 17:
|
|
1618
|
-
|
|
1619
|
-
|
|
1620
|
-
console.error("openFamilyMember: ",
|
|
1647
|
+
_context10.prev = 17;
|
|
1648
|
+
_context10.t0 = _context10["catch"](2);
|
|
1649
|
+
console.error("openFamilyMember: ", _context10.t0);
|
|
1621
1650
|
setAvisoFamilia("No se pudo abrir ese producto. Intenta de nuevo.");
|
|
1622
1651
|
|
|
1623
1652
|
case 21:
|
|
1624
|
-
|
|
1653
|
+
_context10.prev = 21;
|
|
1625
1654
|
setLoadingVariant(null);
|
|
1626
|
-
return
|
|
1655
|
+
return _context10.finish(21);
|
|
1627
1656
|
|
|
1628
1657
|
case 24:
|
|
1629
1658
|
case "end":
|
|
1630
|
-
return
|
|
1659
|
+
return _context10.stop();
|
|
1631
1660
|
}
|
|
1632
1661
|
}
|
|
1633
|
-
},
|
|
1662
|
+
}, _callee10, null, [[2, 17, 21, 24]]);
|
|
1634
1663
|
}));
|
|
1635
1664
|
|
|
1636
|
-
return function openFamilyMember(
|
|
1637
|
-
return
|
|
1665
|
+
return function openFamilyMember(_x2) {
|
|
1666
|
+
return _ref14.apply(this, arguments);
|
|
1638
1667
|
};
|
|
1639
1668
|
}();
|
|
1640
1669
|
/*
|
|
@@ -1645,11 +1674,11 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1645
1674
|
|
|
1646
1675
|
|
|
1647
1676
|
var handleOnLinkedVariants = function handleOnLinkedVariants(result) {
|
|
1648
|
-
var _state$product$varian2, _state$
|
|
1677
|
+
var _state$product$varian2, _state$product18, _result$linked, _result$parentArticle;
|
|
1649
1678
|
|
|
1650
1679
|
if (!result) return;
|
|
1651
1680
|
var updatedProduct = result.mode === "children" ? (0, _objectSpread5.default)((0, _objectSpread5.default)({}, state.product), {}, {
|
|
1652
|
-
variantsCount: ((_state$product$varian2 = (_state$
|
|
1681
|
+
variantsCount: ((_state$product$varian2 = (_state$product18 = state.product) === null || _state$product18 === void 0 ? void 0 : _state$product18.variantsCount) !== null && _state$product$varian2 !== void 0 ? _state$product$varian2 : 0) + ((_result$linked = result.linked) !== null && _result$linked !== void 0 ? _result$linked : []).length
|
|
1653
1682
|
}) : (0, _objectSpread5.default)((0, _objectSpread5.default)({}, state.product), {}, {
|
|
1654
1683
|
parentArticleId: (_result$parentArticle = result.parentArticleId) !== null && _result$parentArticle !== void 0 ? _result$parentArticle : null,
|
|
1655
1684
|
variantsCount: 0
|
|
@@ -1723,31 +1752,31 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1723
1752
|
|
|
1724
1753
|
|
|
1725
1754
|
var handleOnRestoreInheritance = /*#__PURE__*/function () {
|
|
1726
|
-
var
|
|
1727
|
-
var _state$
|
|
1755
|
+
var _ref16 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee11(attributeId) {
|
|
1756
|
+
var _state$product19;
|
|
1728
1757
|
|
|
1729
1758
|
var kind,
|
|
1730
1759
|
esDescripcion,
|
|
1731
1760
|
res,
|
|
1732
1761
|
data,
|
|
1733
|
-
|
|
1734
|
-
return _regenerator.default.wrap(function
|
|
1762
|
+
_args11 = arguments;
|
|
1763
|
+
return _regenerator.default.wrap(function _callee11$(_context11) {
|
|
1735
1764
|
while (1) {
|
|
1736
|
-
switch (
|
|
1765
|
+
switch (_context11.prev = _context11.next) {
|
|
1737
1766
|
case 0:
|
|
1738
|
-
kind =
|
|
1767
|
+
kind = _args11.length > 1 && _args11[1] !== undefined ? _args11[1] : "attribute";
|
|
1739
1768
|
|
|
1740
|
-
if (!(!attributeId || !((_state$
|
|
1741
|
-
|
|
1769
|
+
if (!(!attributeId || !((_state$product19 = state.product) !== null && _state$product19 !== void 0 && _state$product19.id_article))) {
|
|
1770
|
+
_context11.next = 3;
|
|
1742
1771
|
break;
|
|
1743
1772
|
}
|
|
1744
1773
|
|
|
1745
|
-
return
|
|
1774
|
+
return _context11.abrupt("return");
|
|
1746
1775
|
|
|
1747
1776
|
case 3:
|
|
1748
1777
|
esDescripcion = kind === "description";
|
|
1749
|
-
|
|
1750
|
-
|
|
1778
|
+
_context11.prev = 4;
|
|
1779
|
+
_context11.next = 7;
|
|
1751
1780
|
return _axios.default.post("".concat(process.env.REACT_APP_VARIANTS_ENDPOINT, "/restore"), (0, _objectSpread5.default)({
|
|
1752
1781
|
articleId: state.product.id_article
|
|
1753
1782
|
}, esDescripcion ? {
|
|
@@ -1761,11 +1790,11 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1761
1790
|
});
|
|
1762
1791
|
|
|
1763
1792
|
case 7:
|
|
1764
|
-
res =
|
|
1793
|
+
res = _context11.sent;
|
|
1765
1794
|
data = (0, _api.readPayload)(res);
|
|
1766
1795
|
|
|
1767
1796
|
if (!esDescripcion) {
|
|
1768
|
-
|
|
1797
|
+
_context11.next = 12;
|
|
1769
1798
|
break;
|
|
1770
1799
|
}
|
|
1771
1800
|
|
|
@@ -1779,7 +1808,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1779
1808
|
};
|
|
1780
1809
|
})
|
|
1781
1810
|
});
|
|
1782
|
-
return
|
|
1811
|
+
return _context11.abrupt("return");
|
|
1783
1812
|
|
|
1784
1813
|
case 12:
|
|
1785
1814
|
dispatch({
|
|
@@ -1792,24 +1821,24 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1792
1821
|
};
|
|
1793
1822
|
})
|
|
1794
1823
|
});
|
|
1795
|
-
|
|
1824
|
+
_context11.next = 18;
|
|
1796
1825
|
break;
|
|
1797
1826
|
|
|
1798
1827
|
case 15:
|
|
1799
|
-
|
|
1800
|
-
|
|
1801
|
-
console.error("restoreInheritance: ",
|
|
1828
|
+
_context11.prev = 15;
|
|
1829
|
+
_context11.t0 = _context11["catch"](4);
|
|
1830
|
+
console.error("restoreInheritance: ", _context11.t0);
|
|
1802
1831
|
|
|
1803
1832
|
case 18:
|
|
1804
1833
|
case "end":
|
|
1805
|
-
return
|
|
1834
|
+
return _context11.stop();
|
|
1806
1835
|
}
|
|
1807
1836
|
}
|
|
1808
|
-
},
|
|
1837
|
+
}, _callee11, null, [[4, 15]]);
|
|
1809
1838
|
}));
|
|
1810
1839
|
|
|
1811
|
-
return function handleOnRestoreInheritance(
|
|
1812
|
-
return
|
|
1840
|
+
return function handleOnRestoreInheritance(_x3) {
|
|
1841
|
+
return _ref16.apply(this, arguments);
|
|
1813
1842
|
};
|
|
1814
1843
|
}();
|
|
1815
1844
|
/*
|
|
@@ -1868,23 +1897,23 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1868
1897
|
};
|
|
1869
1898
|
|
|
1870
1899
|
var handleOnClickSave = /*#__PURE__*/function () {
|
|
1871
|
-
var
|
|
1900
|
+
var _ref17 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee12() {
|
|
1872
1901
|
var _variantGroup$members, _familiaDesc$variants, _familiaDesc, cambiosDesc, companerasDesc, familiaDesc, hijosDesc, _familia, _familia$variants, _variantGroup$members2, cambios, familia, esHijo, hijos, companeras;
|
|
1873
1902
|
|
|
1874
|
-
return _regenerator.default.wrap(function
|
|
1903
|
+
return _regenerator.default.wrap(function _callee12$(_context12) {
|
|
1875
1904
|
while (1) {
|
|
1876
|
-
switch (
|
|
1905
|
+
switch (_context12.prev = _context12.next) {
|
|
1877
1906
|
case 0:
|
|
1878
1907
|
if (!(state.saving || preparandoPropagacion)) {
|
|
1879
|
-
|
|
1908
|
+
_context12.next = 2;
|
|
1880
1909
|
break;
|
|
1881
1910
|
}
|
|
1882
1911
|
|
|
1883
|
-
return
|
|
1912
|
+
return _context12.abrupt("return");
|
|
1884
1913
|
|
|
1885
1914
|
case 2:
|
|
1886
|
-
|
|
1887
|
-
|
|
1915
|
+
_context12.t0 = state.active_tab;
|
|
1916
|
+
_context12.next = _context12.t0 === "Descripción" ? 5 : _context12.t0 === "Ficha técnica" ? 27 : _context12.t0 === "Imágenes" ? 53 : 60;
|
|
1888
1917
|
break;
|
|
1889
1918
|
|
|
1890
1919
|
case 5:
|
|
@@ -1900,30 +1929,30 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1900
1929
|
});
|
|
1901
1930
|
|
|
1902
1931
|
if (!(esHijoDeOtro || cambiosDesc.length === 0)) {
|
|
1903
|
-
|
|
1932
|
+
_context12.next = 11;
|
|
1904
1933
|
break;
|
|
1905
1934
|
}
|
|
1906
1935
|
|
|
1907
|
-
|
|
1936
|
+
_context12.next = 10;
|
|
1908
1937
|
return saveDescriptions(token);
|
|
1909
1938
|
|
|
1910
1939
|
case 10:
|
|
1911
|
-
return
|
|
1940
|
+
return _context12.abrupt("break", 61);
|
|
1912
1941
|
|
|
1913
1942
|
case 11:
|
|
1914
1943
|
setPreparandoPropagacion(true);
|
|
1915
1944
|
familiaDesc = null;
|
|
1916
|
-
|
|
1917
|
-
|
|
1945
|
+
_context12.prev = 13;
|
|
1946
|
+
_context12.next = 16;
|
|
1918
1947
|
return loadFamily(true);
|
|
1919
1948
|
|
|
1920
1949
|
case 16:
|
|
1921
|
-
familiaDesc =
|
|
1950
|
+
familiaDesc = _context12.sent;
|
|
1922
1951
|
|
|
1923
1952
|
case 17:
|
|
1924
|
-
|
|
1953
|
+
_context12.prev = 17;
|
|
1925
1954
|
setPreparandoPropagacion(false);
|
|
1926
|
-
return
|
|
1955
|
+
return _context12.finish(17);
|
|
1927
1956
|
|
|
1928
1957
|
case 20:
|
|
1929
1958
|
hijosDesc = ((_familiaDesc$variants = (_familiaDesc = familiaDesc) === null || _familiaDesc === void 0 ? void 0 : _familiaDesc.variants) !== null && _familiaDesc$variants !== void 0 ? _familiaDesc$variants : []).filter(function (v) {
|
|
@@ -1931,7 +1960,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1931
1960
|
});
|
|
1932
1961
|
|
|
1933
1962
|
if (!(hijosDesc.length > 0 || companerasDesc.length > 0)) {
|
|
1934
|
-
|
|
1963
|
+
_context12.next = 24;
|
|
1935
1964
|
break;
|
|
1936
1965
|
}
|
|
1937
1966
|
|
|
@@ -1939,28 +1968,28 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1939
1968
|
cambios: cambiosDesc,
|
|
1940
1969
|
kind: "description"
|
|
1941
1970
|
});
|
|
1942
|
-
return
|
|
1971
|
+
return _context12.abrupt("return");
|
|
1943
1972
|
|
|
1944
1973
|
case 24:
|
|
1945
|
-
|
|
1974
|
+
_context12.next = 26;
|
|
1946
1975
|
return saveDescriptions(token);
|
|
1947
1976
|
|
|
1948
1977
|
case 26:
|
|
1949
|
-
return
|
|
1978
|
+
return _context12.abrupt("break", 61);
|
|
1950
1979
|
|
|
1951
1980
|
case 27:
|
|
1952
1981
|
cambios = cambiosDeFichaTecnica();
|
|
1953
1982
|
|
|
1954
1983
|
if (!(cambios.length === 0)) {
|
|
1955
|
-
|
|
1984
|
+
_context12.next = 32;
|
|
1956
1985
|
break;
|
|
1957
1986
|
}
|
|
1958
1987
|
|
|
1959
|
-
|
|
1988
|
+
_context12.next = 31;
|
|
1960
1989
|
return saveDatasheets(token);
|
|
1961
1990
|
|
|
1962
1991
|
case 31:
|
|
1963
|
-
return
|
|
1992
|
+
return _context12.abrupt("break", 61);
|
|
1964
1993
|
|
|
1965
1994
|
case 32:
|
|
1966
1995
|
/*
|
|
@@ -1979,21 +2008,21 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
1979
2008
|
*/
|
|
1980
2009
|
setPreparandoPropagacion(true);
|
|
1981
2010
|
familia = null;
|
|
1982
|
-
|
|
1983
|
-
|
|
2011
|
+
_context12.prev = 34;
|
|
2012
|
+
_context12.next = 37;
|
|
1984
2013
|
return loadFamily(true);
|
|
1985
2014
|
|
|
1986
2015
|
case 37:
|
|
1987
|
-
familia =
|
|
2016
|
+
familia = _context12.sent;
|
|
1988
2017
|
|
|
1989
2018
|
case 38:
|
|
1990
|
-
|
|
2019
|
+
_context12.prev = 38;
|
|
1991
2020
|
setPreparandoPropagacion(false);
|
|
1992
|
-
return
|
|
2021
|
+
return _context12.finish(38);
|
|
1993
2022
|
|
|
1994
2023
|
case 41:
|
|
1995
2024
|
if (!(!familia || familia.error)) {
|
|
1996
|
-
|
|
2025
|
+
_context12.next = 44;
|
|
1997
2026
|
break;
|
|
1998
2027
|
}
|
|
1999
2028
|
|
|
@@ -2030,7 +2059,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2030
2059
|
}]
|
|
2031
2060
|
}
|
|
2032
2061
|
});
|
|
2033
|
-
return
|
|
2062
|
+
return _context12.abrupt("return");
|
|
2034
2063
|
|
|
2035
2064
|
case 44:
|
|
2036
2065
|
/*
|
|
@@ -2058,7 +2087,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2058
2087
|
// él no queda ningún destino posible.
|
|
2059
2088
|
|
|
2060
2089
|
if (!(!esHijo && (hijos.length > 0 || companeras.length > 0))) {
|
|
2061
|
-
|
|
2090
|
+
_context12.next = 50;
|
|
2062
2091
|
break;
|
|
2063
2092
|
}
|
|
2064
2093
|
|
|
@@ -2066,39 +2095,51 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2066
2095
|
cambios: cambios,
|
|
2067
2096
|
kind: "datasheet"
|
|
2068
2097
|
});
|
|
2069
|
-
return
|
|
2098
|
+
return _context12.abrupt("return");
|
|
2070
2099
|
|
|
2071
2100
|
case 50:
|
|
2072
|
-
|
|
2101
|
+
_context12.next = 52;
|
|
2073
2102
|
return saveDatasheets(token);
|
|
2074
2103
|
|
|
2075
2104
|
case 52:
|
|
2076
|
-
return
|
|
2105
|
+
return _context12.abrupt("break", 61);
|
|
2077
2106
|
|
|
2078
2107
|
case 53:
|
|
2079
|
-
|
|
2080
|
-
|
|
2108
|
+
if (!(currentTray === _GalleryTrayTabs.TRAYS.ASSETS)) {
|
|
2109
|
+
_context12.next = 57;
|
|
2110
|
+
break;
|
|
2111
|
+
}
|
|
2081
2112
|
|
|
2082
|
-
|
|
2083
|
-
return
|
|
2113
|
+
_context12.next = 56;
|
|
2114
|
+
return handleOnSaveAssets();
|
|
2084
2115
|
|
|
2085
2116
|
case 56:
|
|
2086
|
-
return
|
|
2117
|
+
return _context12.abrupt("return");
|
|
2087
2118
|
|
|
2088
2119
|
case 57:
|
|
2089
|
-
|
|
2090
|
-
return
|
|
2120
|
+
_context12.next = 59;
|
|
2121
|
+
return updateImages(token);
|
|
2091
2122
|
|
|
2092
2123
|
case 59:
|
|
2124
|
+
return _context12.abrupt("break", 61);
|
|
2125
|
+
|
|
2126
|
+
case 60:
|
|
2127
|
+
return _context12.abrupt("break", 61);
|
|
2128
|
+
|
|
2129
|
+
case 61:
|
|
2130
|
+
_context12.next = 63;
|
|
2131
|
+
return loadData(false);
|
|
2132
|
+
|
|
2133
|
+
case 63:
|
|
2093
2134
|
case "end":
|
|
2094
|
-
return
|
|
2135
|
+
return _context12.stop();
|
|
2095
2136
|
}
|
|
2096
2137
|
}
|
|
2097
|
-
},
|
|
2138
|
+
}, _callee12, null, [[13,, 17, 20], [34,, 38, 41]]);
|
|
2098
2139
|
}));
|
|
2099
2140
|
|
|
2100
2141
|
return function handleOnClickSave() {
|
|
2101
|
-
return
|
|
2142
|
+
return _ref17.apply(this, arguments);
|
|
2102
2143
|
};
|
|
2103
2144
|
}();
|
|
2104
2145
|
|
|
@@ -2115,8 +2156,106 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2115
2156
|
payload: items
|
|
2116
2157
|
});
|
|
2117
2158
|
};
|
|
2159
|
+
/*
|
|
2160
|
+
Descarga de activos: los seleccionados, o todos si no hay selección — el
|
|
2161
|
+
mismo criterio que usa la descarga de imágenes.
|
|
2162
|
+
Solo se descarga lo que ya está en S3. Un activo recién soltado vive como
|
|
2163
|
+
referencia al archivo del disco del usuario: "descargarlo" le devolvería el
|
|
2164
|
+
archivo que él mismo acaba de elegir, lo cual no tiene sentido.
|
|
2165
|
+
*/
|
|
2166
|
+
|
|
2167
|
+
|
|
2168
|
+
var handleOnDownloadAssets = function handleOnDownloadAssets() {
|
|
2169
|
+
var seleccion = state.selected_assets.length ? state.selected_assets : state.assets_values;
|
|
2170
|
+
var descargables = seleccion.filter(function (asset) {
|
|
2171
|
+
return asset.id && asset.url;
|
|
2172
|
+
});
|
|
2173
|
+
|
|
2174
|
+
if (descargables.length === 0) {
|
|
2175
|
+
dispatch({
|
|
2176
|
+
type: "SET_MODAL",
|
|
2177
|
+
payload: {
|
|
2178
|
+
show: true,
|
|
2179
|
+
title: "Nada que descargar",
|
|
2180
|
+
message: "Los activos seleccionados todavía no se han guardado. Guárdalos primero.",
|
|
2181
|
+
image: _genericModalWarning.default
|
|
2182
|
+
}
|
|
2183
|
+
});
|
|
2184
|
+
return;
|
|
2185
|
+
}
|
|
2186
|
+
|
|
2187
|
+
descargables.forEach(function (asset) {
|
|
2188
|
+
return (0, _fileSaver.saveAs)(asset.url, asset.name);
|
|
2189
|
+
});
|
|
2190
|
+
};
|
|
2191
|
+
/*
|
|
2192
|
+
Borrado en lote de activos.
|
|
2193
|
+
A diferencia de las imágenes, que se borran contra el backend en el momento,
|
|
2194
|
+
los activos se quitan de la bandeja y su baja viaja en el mismo PUT del
|
|
2195
|
+
guardado (`deleteAssets`). Es lo que permite al usuario deshacerse de un
|
|
2196
|
+
borrado por error: basta con no guardar. El mensaje lo dice, para que nadie
|
|
2197
|
+
se quede pensando que ya se aplicó.
|
|
2198
|
+
*/
|
|
2199
|
+
|
|
2200
|
+
|
|
2201
|
+
var handleOnAskToDeleteAssets = function handleOnAskToDeleteAssets() {
|
|
2202
|
+
if (state.selected_assets.length === 0) {
|
|
2203
|
+
dispatch({
|
|
2204
|
+
type: "SET_MODAL",
|
|
2205
|
+
payload: {
|
|
2206
|
+
show: true,
|
|
2207
|
+
title: "Eliminar activos digitales",
|
|
2208
|
+
message: "No has seleccionado ningún activo para eliminar.",
|
|
2209
|
+
image: _genericModalWarning.default
|
|
2210
|
+
}
|
|
2211
|
+
});
|
|
2212
|
+
return;
|
|
2213
|
+
}
|
|
2214
|
+
|
|
2215
|
+
var seleccionados = state.selected_assets;
|
|
2216
|
+
dispatch({
|
|
2217
|
+
type: "SET_MODAL",
|
|
2218
|
+
payload: {
|
|
2219
|
+
show: true,
|
|
2220
|
+
title: "Eliminar activos digitales",
|
|
2221
|
+
message: "Se quitar\xE1n ".concat(seleccionados.length, " activo(s) de la bandeja. El borrado se aplica al guardar."),
|
|
2222
|
+
image: _genericModalWarning.default,
|
|
2223
|
+
buttons: [{
|
|
2224
|
+
text: "Cancelar",
|
|
2225
|
+
buttonType: "general-white-button",
|
|
2226
|
+
action: function action() {
|
|
2227
|
+
return dispatch({
|
|
2228
|
+
type: "SET_MODAL",
|
|
2229
|
+
payload: {
|
|
2230
|
+
show: false
|
|
2231
|
+
}
|
|
2232
|
+
});
|
|
2233
|
+
}
|
|
2234
|
+
}, {
|
|
2235
|
+
text: "Eliminar",
|
|
2236
|
+
buttonType: "general-button-default",
|
|
2237
|
+
action: function action() {
|
|
2238
|
+
dispatch({
|
|
2239
|
+
type: "SET_MODAL",
|
|
2240
|
+
payload: {
|
|
2241
|
+
show: false
|
|
2242
|
+
}
|
|
2243
|
+
});
|
|
2244
|
+
seleccionados.forEach(function (asset) {
|
|
2245
|
+
return digitalAssets.removeAsset(asset);
|
|
2246
|
+
});
|
|
2247
|
+
}
|
|
2248
|
+
}]
|
|
2249
|
+
}
|
|
2250
|
+
});
|
|
2251
|
+
};
|
|
2118
2252
|
|
|
2119
2253
|
var handleOnAskToDeleteImages = function handleOnAskToDeleteImages() {
|
|
2254
|
+
if (currentTray === _GalleryTrayTabs.TRAYS.ASSETS) {
|
|
2255
|
+
handleOnAskToDeleteAssets();
|
|
2256
|
+
return;
|
|
2257
|
+
}
|
|
2258
|
+
|
|
2120
2259
|
if (state.selected_images.length === 0) {
|
|
2121
2260
|
dispatch({
|
|
2122
2261
|
type: "SET_MODAL",
|
|
@@ -2166,24 +2305,24 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2166
2305
|
};
|
|
2167
2306
|
|
|
2168
2307
|
var handleOnApproveSingleService = /*#__PURE__*/function () {
|
|
2169
|
-
var
|
|
2170
|
-
return _regenerator.default.wrap(function
|
|
2308
|
+
var _ref18 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee13() {
|
|
2309
|
+
return _regenerator.default.wrap(function _callee13$(_context13) {
|
|
2171
2310
|
while (1) {
|
|
2172
|
-
switch (
|
|
2311
|
+
switch (_context13.prev = _context13.next) {
|
|
2173
2312
|
case 0:
|
|
2174
|
-
|
|
2313
|
+
_context13.next = 2;
|
|
2175
2314
|
return sendSingleEvaluation("A");
|
|
2176
2315
|
|
|
2177
2316
|
case 2:
|
|
2178
2317
|
case "end":
|
|
2179
|
-
return
|
|
2318
|
+
return _context13.stop();
|
|
2180
2319
|
}
|
|
2181
2320
|
}
|
|
2182
|
-
},
|
|
2321
|
+
}, _callee13);
|
|
2183
2322
|
}));
|
|
2184
2323
|
|
|
2185
2324
|
return function handleOnApproveSingleService() {
|
|
2186
|
-
return
|
|
2325
|
+
return _ref18.apply(this, arguments);
|
|
2187
2326
|
};
|
|
2188
2327
|
}();
|
|
2189
2328
|
|
|
@@ -2192,21 +2331,21 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2192
2331
|
};
|
|
2193
2332
|
|
|
2194
2333
|
var sendSingleEvaluation = /*#__PURE__*/function () {
|
|
2195
|
-
var
|
|
2334
|
+
var _ref19 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee14(result) {
|
|
2196
2335
|
var _state$product$id_ord, _state$active_retaile6;
|
|
2197
2336
|
|
|
2198
2337
|
var concept, articleId, orderId, sectionStatusKey, evalStatus, retailerId, data, res, message, icon, activeTab, newStatuses, serviceStatus, articleStatus, updatedStatusByRetailer, updatedProduct, specialistDone, _objectSpread2, _state$services_data2, _JSON$parse2, newStatus, newOrderStatus, newArticleStatus, _articleStatus, updatedStatusByRetailerForSend, _updatedProduct, updatedServicesData, sessionProduct, _objectSpread3, productInSession, updatedProductInSession;
|
|
2199
2338
|
|
|
2200
|
-
return _regenerator.default.wrap(function
|
|
2339
|
+
return _regenerator.default.wrap(function _callee14$(_context14) {
|
|
2201
2340
|
while (1) {
|
|
2202
|
-
switch (
|
|
2341
|
+
switch (_context14.prev = _context14.next) {
|
|
2203
2342
|
case 0:
|
|
2204
2343
|
if (!state.saving) {
|
|
2205
|
-
|
|
2344
|
+
_context14.next = 2;
|
|
2206
2345
|
break;
|
|
2207
2346
|
}
|
|
2208
2347
|
|
|
2209
|
-
return
|
|
2348
|
+
return _context14.abrupt("return");
|
|
2210
2349
|
|
|
2211
2350
|
case 2:
|
|
2212
2351
|
dispatch({
|
|
@@ -2227,16 +2366,16 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2227
2366
|
retailerId: retailerId
|
|
2228
2367
|
};
|
|
2229
2368
|
activeTab = state.active_tab;
|
|
2230
|
-
|
|
2369
|
+
_context14.prev = 11;
|
|
2231
2370
|
|
|
2232
2371
|
if (!result) {
|
|
2233
|
-
|
|
2372
|
+
_context14.next = 28;
|
|
2234
2373
|
break;
|
|
2235
2374
|
}
|
|
2236
2375
|
|
|
2237
2376
|
data.result = result;
|
|
2238
2377
|
data.retailerId = retailerId;
|
|
2239
|
-
|
|
2378
|
+
_context14.next = 17;
|
|
2240
2379
|
return _axios.default.put("".concat(process.env.REACT_APP_EVALUATION_ENDPOINT), data, {
|
|
2241
2380
|
headers: {
|
|
2242
2381
|
Authorization: token
|
|
@@ -2244,7 +2383,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2244
2383
|
});
|
|
2245
2384
|
|
|
2246
2385
|
case 17:
|
|
2247
|
-
res =
|
|
2386
|
+
res = _context14.sent;
|
|
2248
2387
|
newStatuses = JSON.parse(res.data.body);
|
|
2249
2388
|
serviceStatus = newStatuses.newServiceStatus[articleId]["".concat(concept, "Status")];
|
|
2250
2389
|
articleStatus = newStatuses.newArticleStatus[articleId];
|
|
@@ -2275,7 +2414,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2275
2414
|
image: _genericModalCheck.default
|
|
2276
2415
|
}
|
|
2277
2416
|
});
|
|
2278
|
-
|
|
2417
|
+
_context14.next = 33;
|
|
2279
2418
|
break;
|
|
2280
2419
|
|
|
2281
2420
|
case 28:
|
|
@@ -2291,7 +2430,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2291
2430
|
icon = _genericModalCheck.default;
|
|
2292
2431
|
}
|
|
2293
2432
|
|
|
2294
|
-
|
|
2433
|
+
_context14.next = 32;
|
|
2295
2434
|
return _axios.default.put("".concat(process.env.REACT_APP_SEND_EVAL), data, {
|
|
2296
2435
|
headers: {
|
|
2297
2436
|
Authorization: token
|
|
@@ -2299,7 +2438,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2299
2438
|
});
|
|
2300
2439
|
|
|
2301
2440
|
case 32:
|
|
2302
|
-
res =
|
|
2441
|
+
res = _context14.sent;
|
|
2303
2442
|
|
|
2304
2443
|
case 33:
|
|
2305
2444
|
if (res.data.statusCode === 200) {
|
|
@@ -2384,13 +2523,13 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2384
2523
|
});
|
|
2385
2524
|
}
|
|
2386
2525
|
|
|
2387
|
-
|
|
2526
|
+
_context14.next = 40;
|
|
2388
2527
|
break;
|
|
2389
2528
|
|
|
2390
2529
|
case 36:
|
|
2391
|
-
|
|
2392
|
-
|
|
2393
|
-
console.error("Error sending evaluation:",
|
|
2530
|
+
_context14.prev = 36;
|
|
2531
|
+
_context14.t0 = _context14["catch"](11);
|
|
2532
|
+
console.error("Error sending evaluation:", _context14.t0);
|
|
2394
2533
|
dispatch({
|
|
2395
2534
|
type: "SET_MODAL",
|
|
2396
2535
|
payload: {
|
|
@@ -2402,45 +2541,45 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2402
2541
|
});
|
|
2403
2542
|
|
|
2404
2543
|
case 40:
|
|
2405
|
-
|
|
2544
|
+
_context14.prev = 40;
|
|
2406
2545
|
dispatch({
|
|
2407
2546
|
type: "SET_SAVING",
|
|
2408
2547
|
payload: false
|
|
2409
2548
|
});
|
|
2410
|
-
return
|
|
2549
|
+
return _context14.finish(40);
|
|
2411
2550
|
|
|
2412
2551
|
case 43:
|
|
2413
2552
|
case "end":
|
|
2414
|
-
return
|
|
2553
|
+
return _context14.stop();
|
|
2415
2554
|
}
|
|
2416
2555
|
}
|
|
2417
|
-
},
|
|
2556
|
+
}, _callee14, null, [[11, 36, 40, 43]]);
|
|
2418
2557
|
}));
|
|
2419
2558
|
|
|
2420
|
-
return function sendSingleEvaluation(
|
|
2421
|
-
return
|
|
2559
|
+
return function sendSingleEvaluation(_x4) {
|
|
2560
|
+
return _ref19.apply(this, arguments);
|
|
2422
2561
|
};
|
|
2423
2562
|
}();
|
|
2424
2563
|
|
|
2425
2564
|
var handleOnApproveAllServices = /*#__PURE__*/function () {
|
|
2426
|
-
var
|
|
2427
|
-
return _regenerator.default.wrap(function
|
|
2565
|
+
var _ref20 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee15() {
|
|
2566
|
+
return _regenerator.default.wrap(function _callee15$(_context15) {
|
|
2428
2567
|
while (1) {
|
|
2429
|
-
switch (
|
|
2568
|
+
switch (_context15.prev = _context15.next) {
|
|
2430
2569
|
case 0:
|
|
2431
|
-
|
|
2570
|
+
_context15.next = 2;
|
|
2432
2571
|
return sendBulkEvaluation("A");
|
|
2433
2572
|
|
|
2434
2573
|
case 2:
|
|
2435
2574
|
case "end":
|
|
2436
|
-
return
|
|
2575
|
+
return _context15.stop();
|
|
2437
2576
|
}
|
|
2438
2577
|
}
|
|
2439
|
-
},
|
|
2578
|
+
}, _callee15);
|
|
2440
2579
|
}));
|
|
2441
2580
|
|
|
2442
2581
|
return function handleOnApproveAllServices() {
|
|
2443
|
-
return
|
|
2582
|
+
return _ref20.apply(this, arguments);
|
|
2444
2583
|
};
|
|
2445
2584
|
}();
|
|
2446
2585
|
|
|
@@ -2450,18 +2589,18 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2450
2589
|
};
|
|
2451
2590
|
|
|
2452
2591
|
var sendBulkEvaluation = /*#__PURE__*/function () {
|
|
2453
|
-
var
|
|
2592
|
+
var _ref21 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee16(result) {
|
|
2454
2593
|
var _state$services_data3, evaluationArray, conceptArray, status, updatedStatusByRetailer, updatedProduct, updatedServicesData;
|
|
2455
2594
|
|
|
2456
|
-
return _regenerator.default.wrap(function
|
|
2595
|
+
return _regenerator.default.wrap(function _callee16$(_context16) {
|
|
2457
2596
|
while (1) {
|
|
2458
|
-
switch (
|
|
2597
|
+
switch (_context16.prev = _context16.next) {
|
|
2459
2598
|
case 0:
|
|
2460
2599
|
dispatch({
|
|
2461
2600
|
type: "SET_SAVING",
|
|
2462
2601
|
payload: true
|
|
2463
2602
|
});
|
|
2464
|
-
|
|
2603
|
+
_context16.prev = 1;
|
|
2465
2604
|
evaluationArray = [];
|
|
2466
2605
|
conceptArray = (0, _utils.getConceptsByRole)(user.id_role);
|
|
2467
2606
|
(_state$services_data3 = state.services_data) === null || _state$services_data3 === void 0 ? void 0 : _state$services_data3.forEach(function (ret, idx) {
|
|
@@ -2486,12 +2625,12 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2486
2625
|
}));
|
|
2487
2626
|
}
|
|
2488
2627
|
});
|
|
2489
|
-
|
|
2628
|
+
_context16.next = 7;
|
|
2490
2629
|
return Promise.all(evaluationArray);
|
|
2491
2630
|
|
|
2492
2631
|
case 7:
|
|
2493
2632
|
if (!(evaluationArray.length === 0)) {
|
|
2494
|
-
|
|
2633
|
+
_context16.next = 10;
|
|
2495
2634
|
break;
|
|
2496
2635
|
}
|
|
2497
2636
|
|
|
@@ -2504,7 +2643,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2504
2643
|
image: _errorModal.default
|
|
2505
2644
|
}
|
|
2506
2645
|
});
|
|
2507
|
-
return
|
|
2646
|
+
return _context16.abrupt("return");
|
|
2508
2647
|
|
|
2509
2648
|
case 10:
|
|
2510
2649
|
status = "".concat(result, "A"); // Actualizar el statusByRetailer para todos los retailers y conceptos
|
|
@@ -2558,41 +2697,41 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2558
2697
|
image: _genericModalCheck.default
|
|
2559
2698
|
}
|
|
2560
2699
|
});
|
|
2561
|
-
|
|
2700
|
+
_context16.next = 22;
|
|
2562
2701
|
break;
|
|
2563
2702
|
|
|
2564
2703
|
case 19:
|
|
2565
|
-
|
|
2566
|
-
|
|
2567
|
-
console.error("Error in bulk evaluation:",
|
|
2704
|
+
_context16.prev = 19;
|
|
2705
|
+
_context16.t0 = _context16["catch"](1);
|
|
2706
|
+
console.error("Error in bulk evaluation:", _context16.t0);
|
|
2568
2707
|
|
|
2569
2708
|
case 22:
|
|
2570
|
-
|
|
2709
|
+
_context16.prev = 22;
|
|
2571
2710
|
dispatch({
|
|
2572
2711
|
type: "SET_SAVING",
|
|
2573
2712
|
payload: false
|
|
2574
2713
|
});
|
|
2575
|
-
return
|
|
2714
|
+
return _context16.finish(22);
|
|
2576
2715
|
|
|
2577
2716
|
case 25:
|
|
2578
2717
|
case "end":
|
|
2579
|
-
return
|
|
2718
|
+
return _context16.stop();
|
|
2580
2719
|
}
|
|
2581
2720
|
}
|
|
2582
|
-
},
|
|
2721
|
+
}, _callee16, null, [[1, 19, 22, 25]]);
|
|
2583
2722
|
}));
|
|
2584
2723
|
|
|
2585
|
-
return function sendBulkEvaluation(
|
|
2586
|
-
return
|
|
2724
|
+
return function sendBulkEvaluation(_x5) {
|
|
2725
|
+
return _ref21.apply(this, arguments);
|
|
2587
2726
|
};
|
|
2588
2727
|
}();
|
|
2589
2728
|
|
|
2590
2729
|
var handleOnChangeAssignations = /*#__PURE__*/function () {
|
|
2591
|
-
var
|
|
2730
|
+
var _ref22 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee17(assignationType, assignationId) {
|
|
2592
2731
|
var concept, data, updatedProduct;
|
|
2593
|
-
return _regenerator.default.wrap(function
|
|
2732
|
+
return _regenerator.default.wrap(function _callee17$(_context17) {
|
|
2594
2733
|
while (1) {
|
|
2595
|
-
switch (
|
|
2734
|
+
switch (_context17.prev = _context17.next) {
|
|
2596
2735
|
case 0:
|
|
2597
2736
|
concept = (0, _utils.getConceptByTab)(state.active_tab);
|
|
2598
2737
|
data = {
|
|
@@ -2603,7 +2742,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2603
2742
|
concept: concept,
|
|
2604
2743
|
userId: assignationId
|
|
2605
2744
|
};
|
|
2606
|
-
|
|
2745
|
+
_context17.next = 4;
|
|
2607
2746
|
return (0, _axios.default)({
|
|
2608
2747
|
method: "post",
|
|
2609
2748
|
url: process.env.REACT_APP_ASSIGNATIONS_ENDPOINT,
|
|
@@ -2622,14 +2761,14 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2622
2761
|
|
|
2623
2762
|
case 6:
|
|
2624
2763
|
case "end":
|
|
2625
|
-
return
|
|
2764
|
+
return _context17.stop();
|
|
2626
2765
|
}
|
|
2627
2766
|
}
|
|
2628
|
-
},
|
|
2767
|
+
}, _callee17);
|
|
2629
2768
|
}));
|
|
2630
2769
|
|
|
2631
|
-
return function handleOnChangeAssignations(
|
|
2632
|
-
return
|
|
2770
|
+
return function handleOnChangeAssignations(_x6, _x7) {
|
|
2771
|
+
return _ref22.apply(this, arguments);
|
|
2633
2772
|
};
|
|
2634
2773
|
}();
|
|
2635
2774
|
|
|
@@ -2664,16 +2803,16 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2664
2803
|
};
|
|
2665
2804
|
|
|
2666
2805
|
var handleOnSubmitComment = /*#__PURE__*/function () {
|
|
2667
|
-
var
|
|
2806
|
+
var _ref23 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee18(e) {
|
|
2668
2807
|
var commentText;
|
|
2669
|
-
return _regenerator.default.wrap(function
|
|
2808
|
+
return _regenerator.default.wrap(function _callee18$(_context18) {
|
|
2670
2809
|
while (1) {
|
|
2671
|
-
switch (
|
|
2810
|
+
switch (_context18.prev = _context18.next) {
|
|
2672
2811
|
case 0:
|
|
2673
2812
|
e.preventDefault();
|
|
2674
2813
|
commentText = document.querySelector("#commentary-box .ql-container .ql-editor > p").innerHTML;
|
|
2675
|
-
|
|
2676
|
-
|
|
2814
|
+
_context18.prev = 2;
|
|
2815
|
+
_context18.next = 5;
|
|
2677
2816
|
return createComment(commentText, token);
|
|
2678
2817
|
|
|
2679
2818
|
case 5:
|
|
@@ -2686,13 +2825,13 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2686
2825
|
image: _genericModalCheck.default
|
|
2687
2826
|
}
|
|
2688
2827
|
});
|
|
2689
|
-
|
|
2828
|
+
_context18.next = 12;
|
|
2690
2829
|
break;
|
|
2691
2830
|
|
|
2692
2831
|
case 8:
|
|
2693
|
-
|
|
2694
|
-
|
|
2695
|
-
console.error("Error saving comment:",
|
|
2832
|
+
_context18.prev = 8;
|
|
2833
|
+
_context18.t0 = _context18["catch"](2);
|
|
2834
|
+
console.error("Error saving comment:", _context18.t0);
|
|
2696
2835
|
dispatch({
|
|
2697
2836
|
type: "SET_MODAL",
|
|
2698
2837
|
payload: {
|
|
@@ -2705,14 +2844,14 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
2705
2844
|
|
|
2706
2845
|
case 12:
|
|
2707
2846
|
case "end":
|
|
2708
|
-
return
|
|
2847
|
+
return _context18.stop();
|
|
2709
2848
|
}
|
|
2710
2849
|
}
|
|
2711
|
-
},
|
|
2850
|
+
}, _callee18, null, [[2, 8]]);
|
|
2712
2851
|
}));
|
|
2713
2852
|
|
|
2714
|
-
return function handleOnSubmitComment(
|
|
2715
|
-
return
|
|
2853
|
+
return function handleOnSubmitComment(_x8) {
|
|
2854
|
+
return _ref23.apply(this, arguments);
|
|
2716
2855
|
};
|
|
2717
2856
|
}();
|
|
2718
2857
|
|
|
@@ -3024,7 +3163,19 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
3024
3163
|
})]
|
|
3025
3164
|
})
|
|
3026
3165
|
});
|
|
3027
|
-
|
|
3166
|
+
/*
|
|
3167
|
+
`images_values` entra al guard junto a `services` y `product`.
|
|
3168
|
+
React 17 no agrupa los dispatch que van después de un `await`: cada uno
|
|
3169
|
+
re-renderiza al instante. En `loadData` el orden es SET_SERVICES →
|
|
3170
|
+
…_INPUTS → SET_IMAGES_VALUES, así que había renders intermedios con
|
|
3171
|
+
`services` ya puesto —el guard los dejaba pasar— y el resto todavía en null.
|
|
3172
|
+
El cuerpo de abajo lee `datasheets_inputs[1]`, `descriptions_inputs[0]` y
|
|
3173
|
+
`images_values.values` sin protección, y tumbaba la pantalla entera.
|
|
3174
|
+
Se comprueba `images_values` y no cada uno: es el ÚLTIMO que `loadData`
|
|
3175
|
+
despacha, así que si ya está, los anteriores también.
|
|
3176
|
+
*/
|
|
3177
|
+
|
|
3178
|
+
if (state.loading || !state.services || !state.product || !state.images_values) return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
|
|
3028
3179
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(ProductEditionSkeleton, {})
|
|
3029
3180
|
});
|
|
3030
3181
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_AiProductEdition.AiProductEditionProvider, {
|
|
@@ -3076,9 +3227,9 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
3076
3227
|
}
|
|
3077
3228
|
}
|
|
3078
3229
|
}), showLinkVariants && /*#__PURE__*/(0, _jsxRuntime.jsx)(_LinkVariantsModal.LinkVariantsModal, {
|
|
3079
|
-
articleId: (_state$
|
|
3080
|
-
articleName: (_state$
|
|
3081
|
-
articleUpc: (_state$
|
|
3230
|
+
articleId: (_state$product20 = state.product) === null || _state$product20 === void 0 ? void 0 : _state$product20.id_article,
|
|
3231
|
+
articleName: (_state$product21 = state.product) === null || _state$product21 === void 0 ? void 0 : _state$product21.name,
|
|
3232
|
+
articleUpc: (_state$product22 = state.product) === null || _state$product22 === void 0 ? void 0 : _state$product22.upc,
|
|
3082
3233
|
activeRetailerId: (_state$active_retaile7 = state.active_retailer) === null || _state$active_retaile7 === void 0 ? void 0 : _state$active_retaile7.id_retailer,
|
|
3083
3234
|
token: token,
|
|
3084
3235
|
onClose: function onClose() {
|
|
@@ -3086,9 +3237,9 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
3086
3237
|
},
|
|
3087
3238
|
onLinked: handleOnLinkedVariants
|
|
3088
3239
|
}), showGroupModal && /*#__PURE__*/(0, _jsxRuntime.jsx)(_VariantGroupModal.VariantGroupModal, {
|
|
3089
|
-
articleId: (_state$
|
|
3090
|
-
articleName: (_state$
|
|
3091
|
-
articleUpc: (_state$
|
|
3240
|
+
articleId: (_state$product23 = state.product) === null || _state$product23 === void 0 ? void 0 : _state$product23.id_article,
|
|
3241
|
+
articleName: (_state$product24 = state.product) === null || _state$product24 === void 0 ? void 0 : _state$product24.name,
|
|
3242
|
+
articleUpc: (_state$product25 = state.product) === null || _state$product25 === void 0 ? void 0 : _state$product25.upc,
|
|
3092
3243
|
currentGroup: (_variantGroup$group2 = variantGroup === null || variantGroup === void 0 ? void 0 : variantGroup.group) !== null && _variantGroup$group2 !== void 0 ? _variantGroup$group2 : null,
|
|
3093
3244
|
token: token,
|
|
3094
3245
|
onClose: function onClose() {
|
|
@@ -3124,21 +3275,21 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
3124
3275
|
type: "pink",
|
|
3125
3276
|
label: "Aceptar",
|
|
3126
3277
|
size: 12,
|
|
3127
|
-
onClick: /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
3278
|
+
onClick: /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee19() {
|
|
3128
3279
|
var elements, isMessageEmpty, container, existingAlert, alert, fullMessage;
|
|
3129
|
-
return _regenerator.default.wrap(function
|
|
3280
|
+
return _regenerator.default.wrap(function _callee19$(_context19) {
|
|
3130
3281
|
while (1) {
|
|
3131
|
-
switch (
|
|
3282
|
+
switch (_context19.prev = _context19.next) {
|
|
3132
3283
|
case 0:
|
|
3133
3284
|
elements = document.querySelectorAll("#modal-message-box .ql-container .ql-editor > p");
|
|
3134
3285
|
|
|
3135
3286
|
if (!(!elements || elements.length === 0)) {
|
|
3136
|
-
|
|
3287
|
+
_context19.next = 4;
|
|
3137
3288
|
break;
|
|
3138
3289
|
}
|
|
3139
3290
|
|
|
3140
3291
|
console.error("Elemento no encontrado");
|
|
3141
|
-
return
|
|
3292
|
+
return _context19.abrupt("return");
|
|
3142
3293
|
|
|
3143
3294
|
case 4:
|
|
3144
3295
|
isMessageEmpty = Array.from(elements).every(function (el) {
|
|
@@ -3147,7 +3298,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
3147
3298
|
});
|
|
3148
3299
|
|
|
3149
3300
|
if (!isMessageEmpty) {
|
|
3150
|
-
|
|
3301
|
+
_context19.next = 10;
|
|
3151
3302
|
break;
|
|
3152
3303
|
}
|
|
3153
3304
|
|
|
@@ -3162,13 +3313,13 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
3162
3313
|
container.appendChild(alert);
|
|
3163
3314
|
}
|
|
3164
3315
|
|
|
3165
|
-
return
|
|
3316
|
+
return _context19.abrupt("return");
|
|
3166
3317
|
|
|
3167
3318
|
case 10:
|
|
3168
3319
|
fullMessage = Array.from(elements).map(function (element) {
|
|
3169
3320
|
return element.innerHTML;
|
|
3170
3321
|
}).join("").replace(/<br\s*\/?>/gi, "\n");
|
|
3171
|
-
|
|
3322
|
+
_context19.next = 13;
|
|
3172
3323
|
return createComment(fullMessage, token);
|
|
3173
3324
|
|
|
3174
3325
|
case 13:
|
|
@@ -3177,10 +3328,10 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
3177
3328
|
|
|
3178
3329
|
case 15:
|
|
3179
3330
|
case "end":
|
|
3180
|
-
return
|
|
3331
|
+
return _context19.stop();
|
|
3181
3332
|
}
|
|
3182
3333
|
}
|
|
3183
|
-
},
|
|
3334
|
+
}, _callee19);
|
|
3184
3335
|
}))
|
|
3185
3336
|
}, "btn-Aceptar")]
|
|
3186
3337
|
}), state.modal.show && /*#__PURE__*/(0, _jsxRuntime.jsx)(_GenericModal.GenericModal, {
|
|
@@ -3248,17 +3399,27 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
3248
3399
|
className: "data-container",
|
|
3249
3400
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
3250
3401
|
className: "image-data-panel",
|
|
3251
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ImagePreviewer.ImagePreviewer
|
|
3252
|
-
|
|
3402
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_ImagePreviewer.ImagePreviewer
|
|
3403
|
+
/*
|
|
3404
|
+
`images_values` puede ser null en pleno render.
|
|
3405
|
+
React 17 no agrupa los dispatch que van después de un `await`:
|
|
3406
|
+
cada uno re-renderiza al instante. En `loadData`, `SET_SERVICES`
|
|
3407
|
+
se despacha antes que `SET_IMAGES_VALUES`, así que hay un render
|
|
3408
|
+
en el que `services` ya existe —y por eso el guard de arriba deja
|
|
3409
|
+
pasar— pero las imágenes todavía no. Sin las interrogaciones,
|
|
3410
|
+
ese render intermedio tumba la pantalla entera.
|
|
3411
|
+
*/
|
|
3412
|
+
, {
|
|
3413
|
+
activeImage: (_state$images_values$2 = (_state$images_values10 = state.images_values) === null || _state$images_values10 === void 0 ? void 0 : (_state$images_values11 = _state$images_values10.values) === null || _state$images_values11 === void 0 ? void 0 : _state$images_values11[state.current_image]) !== null && _state$images_values$2 !== void 0 ? _state$images_values$2 : {},
|
|
3253
3414
|
imagesArray: state.images_values || [],
|
|
3254
3415
|
setActiveImage: handleOnChangeCurrentImage,
|
|
3255
3416
|
setShowModal: handleOnShowModalGallery
|
|
3256
3417
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ImageDataTable.ImageDataTable // states
|
|
3257
3418
|
, {
|
|
3258
3419
|
lists: state.images_values || [],
|
|
3259
|
-
activeImage: (_state$
|
|
3420
|
+
activeImage: (_state$images_values12 = state.images_values) !== null && _state$images_values12 !== void 0 && _state$images_values12.values ? (_state$images_values13 = state.images_values) === null || _state$images_values13 === void 0 ? void 0 : _state$images_values13.values[state.current_image] : {},
|
|
3260
3421
|
assignationsImages: state.collaborator_assignations["Imágenes"],
|
|
3261
|
-
imagesStatus: ((_state$
|
|
3422
|
+
imagesStatus: ((_state$product26 = state.product) === null || _state$product26 === void 0 ? void 0 : _state$product26.images_status) || "-",
|
|
3262
3423
|
retailerSelected: (_state$active_retaile10 = state.active_retailer) === null || _state$active_retaile10 === void 0 ? void 0 : _state$active_retaile10.id_retailer,
|
|
3263
3424
|
isRetailer: isRetailer,
|
|
3264
3425
|
version: state.product.version,
|
|
@@ -3346,13 +3507,13 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
3346
3507
|
className: "desvincular",
|
|
3347
3508
|
title: "Dejar de ser hijo de este producto",
|
|
3348
3509
|
onClick: function onClick() {
|
|
3349
|
-
var _state$
|
|
3510
|
+
var _state$product27, _state$product28, _state$product29;
|
|
3350
3511
|
|
|
3351
3512
|
return setPorDesvincular({
|
|
3352
3513
|
mode: "self",
|
|
3353
|
-
childArticleId: (_state$
|
|
3354
|
-
childName: (_state$
|
|
3355
|
-
childUpc: (_state$
|
|
3514
|
+
childArticleId: (_state$product27 = state.product) === null || _state$product27 === void 0 ? void 0 : _state$product27.id_article,
|
|
3515
|
+
childName: (_state$product28 = state.product) === null || _state$product28 === void 0 ? void 0 : _state$product28.name,
|
|
3516
|
+
childUpc: (_state$product29 = state.product) === null || _state$product29 === void 0 ? void 0 : _state$product29.upc,
|
|
3356
3517
|
parentName: family.parent.name,
|
|
3357
3518
|
parentUpc: family.parent.upc
|
|
3358
3519
|
});
|
|
@@ -3384,15 +3545,15 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
3384
3545
|
className: "desvincular",
|
|
3385
3546
|
title: "Desvincular este hijo",
|
|
3386
3547
|
onClick: function onClick() {
|
|
3387
|
-
var _state$
|
|
3548
|
+
var _state$product30, _state$product31;
|
|
3388
3549
|
|
|
3389
3550
|
return setPorDesvincular({
|
|
3390
3551
|
mode: "child",
|
|
3391
3552
|
childArticleId: variant.articleId,
|
|
3392
3553
|
childName: variant.name,
|
|
3393
3554
|
childUpc: variant.upc,
|
|
3394
|
-
parentName: (_state$
|
|
3395
|
-
parentUpc: (_state$
|
|
3555
|
+
parentName: (_state$product30 = state.product) === null || _state$product30 === void 0 ? void 0 : _state$product30.name,
|
|
3556
|
+
parentUpc: (_state$product31 = state.product) === null || _state$product31 === void 0 ? void 0 : _state$product31.upc
|
|
3396
3557
|
});
|
|
3397
3558
|
},
|
|
3398
3559
|
children: "Desvincular"
|
|
@@ -3513,8 +3674,10 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
3513
3674
|
,
|
|
3514
3675
|
setShowVersionSelector: setShowVersionSelector // setSelectedImages={setSelectedImages} prop pasada asi: FullTabsMenu -> TabsMenu Pero en TabsMenu no se espera ninguna prop setSelectedImages
|
|
3515
3676
|
// actions
|
|
3677
|
+
// El botón actúa sobre la bandeja visible: en activos descargaba
|
|
3678
|
+
// las imágenes del producto, que no es lo que el usuario pidió.
|
|
3516
3679
|
,
|
|
3517
|
-
downloadImages: handleOnDownloadImages,
|
|
3680
|
+
downloadImages: currentTray === _GalleryTrayTabs.TRAYS.ASSETS ? handleOnDownloadAssets : handleOnDownloadImages,
|
|
3518
3681
|
askToDeleteImages: handleOnAskToDeleteImages,
|
|
3519
3682
|
showSaveButton: isAuditorAssigned() || isUserAssignedToService(),
|
|
3520
3683
|
onClickSave: handleOnClickSave // validations
|
|
@@ -3524,7 +3687,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
3524
3687
|
className: "services-information-container " + (imageLayout && state.active_tab === "Imágenes" ? "image-services" : ""),
|
|
3525
3688
|
id: "services-information-container",
|
|
3526
3689
|
children: state.saving ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Loading.Loading, {}) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
3527
|
-
children: [state.active_tab === "Descripción" && (((_state$
|
|
3690
|
+
children: [state.active_tab === "Descripción" && (((_state$product32 = state.product) === null || _state$product32 === void 0 ? void 0 : _state$product32.description_status) !== "NS" ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_InputGroup.InputGroup, {
|
|
3528
3691
|
activeSection: state.active_tab,
|
|
3529
3692
|
inputGroup: state.descriptions_inputs[0],
|
|
3530
3693
|
updatedDescriptions: state.updated_descriptions_inputs
|
|
@@ -3533,7 +3696,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
3533
3696
|
,
|
|
3534
3697
|
variant: (_state$services3 = state.services) === null || _state$services3 === void 0 ? void 0 : (_state$services3$data = _state$services3.datasheets) === null || _state$services3$data === void 0 ? void 0 : _state$services3$data.variant,
|
|
3535
3698
|
onRestoreInheritance: handleOnRestoreInheritance,
|
|
3536
|
-
articleId: (_state$
|
|
3699
|
+
articleId: (_state$product33 = state.product) === null || _state$product33 === void 0 ? void 0 : _state$product33.id_article,
|
|
3537
3700
|
version: state.product.version,
|
|
3538
3701
|
auditInputGroup: auditDescriptions[0],
|
|
3539
3702
|
setUpdatedDescriptions: handleOnSetUpdatedDescriptions,
|
|
@@ -3542,7 +3705,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
3542
3705
|
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_ScreenHeader.ScreenHeader, {
|
|
3543
3706
|
text: "No cuentas con este servicio",
|
|
3544
3707
|
headerType: "input-name-header"
|
|
3545
|
-
})), state.active_tab === "Ficha técnica" && (((_state$
|
|
3708
|
+
})), state.active_tab === "Ficha técnica" && (((_state$product34 = state.product) === null || _state$product34 === void 0 ? void 0 : _state$product34.datasheet_status) !== "NS" ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
|
|
3546
3709
|
children: (_state$datasheets_inp = state.datasheets_inputs[0]) === null || _state$datasheets_inp === void 0 ? void 0 : (_state$datasheets_inp2 = _state$datasheets_inp.data) === null || _state$datasheets_inp2 === void 0 ? void 0 : _state$datasheets_inp2.map(function (dataGroup, index) {
|
|
3547
3710
|
var _state$services4, _state$services4$data;
|
|
3548
3711
|
|
|
@@ -3563,15 +3726,33 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
3563
3726
|
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_ScreenHeader.ScreenHeader, {
|
|
3564
3727
|
text: "No cuentas con este servicio",
|
|
3565
3728
|
headerType: "input-name-header"
|
|
3566
|
-
})), state.active_tab === "Imágenes" && (((_state$
|
|
3567
|
-
children: [
|
|
3729
|
+
})), state.active_tab === "Imágenes" && (((_state$product35 = state.product) === null || _state$product35 === void 0 ? void 0 : _state$product35.images_status) !== "NS" ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
3730
|
+
children: [enableDigitalAssets && /*#__PURE__*/(0, _jsxRuntime.jsx)(_GalleryTrayTabs.GalleryTrayTabs, {
|
|
3731
|
+
activeTray: currentTray,
|
|
3732
|
+
setActiveTray: setActiveTray,
|
|
3733
|
+
imagesCount: (_state$images_values$3 = (_state$images_values14 = state.images_values) === null || _state$images_values14 === void 0 ? void 0 : (_state$images_values15 = _state$images_values14.values) === null || _state$images_values15 === void 0 ? void 0 : _state$images_values15.length) !== null && _state$images_values$3 !== void 0 ? _state$images_values$3 : 0,
|
|
3734
|
+
assetsCount: digitalAssets.assets.length
|
|
3735
|
+
}), currentTray === _GalleryTrayTabs.TRAYS.ASSETS && /*#__PURE__*/(0, _jsxRuntime.jsx)("section", {
|
|
3736
|
+
className: "container",
|
|
3737
|
+
style: {
|
|
3738
|
+
position: "relative"
|
|
3739
|
+
},
|
|
3740
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_DigitalAssetsTray.DigitalAssetsTray, (0, _objectSpread5.default)((0, _objectSpread5.default)({}, digitalAssets), {}, {
|
|
3741
|
+
unsaved: (0, _assets.countUnsavedAssets)(state),
|
|
3742
|
+
gridLayout: imageLayout,
|
|
3743
|
+
readOnly: !isAuditorAssigned() && !isUserAssignedToService(),
|
|
3744
|
+
selectedAssets: state.selected_assets,
|
|
3745
|
+
setSelectedAssets: handleOnSetSelectedAssets,
|
|
3746
|
+
setCheckAll: handleOnSetAllAssetsChecked
|
|
3747
|
+
}))
|
|
3748
|
+
}), currentTray === _GalleryTrayTabs.TRAYS.IMAGES && !imageLayout && /*#__PURE__*/(0, _jsxRuntime.jsx)(_GalleryHeader.GalleryHeader, {
|
|
3568
3749
|
checkAll: state.all_image_checked // Determina si el checkbox "Seleccionar todo" está marcado
|
|
3569
3750
|
,
|
|
3570
3751
|
setCheckAll: handleOnSetCheckAll // Toggler de true o false para el checkbox "Seleccionar todo"
|
|
3571
3752
|
,
|
|
3572
3753
|
setSelectedImages: handleOnSetSelectedImages // shotThd={shotThd} // No se usa?
|
|
3573
3754
|
|
|
3574
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("section", {
|
|
3755
|
+
}), currentTray === _GalleryTrayTabs.TRAYS.IMAGES && /*#__PURE__*/(0, _jsxRuntime.jsxs)("section", {
|
|
3575
3756
|
className: "container",
|
|
3576
3757
|
style: {
|
|
3577
3758
|
position: "relative"
|
|
@@ -3587,7 +3768,7 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
3587
3768
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("aside", {
|
|
3588
3769
|
children: thumbs()
|
|
3589
3770
|
})]
|
|
3590
|
-
})), ((_state$
|
|
3771
|
+
})), ((_state$images_values16 = state.images_values) === null || _state$images_values16 === void 0 ? void 0 : (_state$images_values17 = _state$images_values16.values) === null || _state$images_values17 === void 0 ? void 0 : _state$images_values17.length) === 0 && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
3591
3772
|
style: {
|
|
3592
3773
|
position: "absolute",
|
|
3593
3774
|
top: "50%",
|
|
@@ -3655,20 +3836,20 @@ var RetailerProductEditionView = function RetailerProductEditionView(_ref) {
|
|
|
3655
3836
|
reviewed: crossComment
|
|
3656
3837
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_GeneralButton.Button, {
|
|
3657
3838
|
buttonType: "circular-button accept-button",
|
|
3658
|
-
onClick: /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
3659
|
-
return _regenerator.default.wrap(function
|
|
3839
|
+
onClick: /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee20() {
|
|
3840
|
+
return _regenerator.default.wrap(function _callee20$(_context20) {
|
|
3660
3841
|
while (1) {
|
|
3661
|
-
switch (
|
|
3842
|
+
switch (_context20.prev = _context20.next) {
|
|
3662
3843
|
case 0:
|
|
3663
3844
|
setCrossComment(true);
|
|
3664
3845
|
commentRevised();
|
|
3665
3846
|
|
|
3666
3847
|
case 2:
|
|
3667
3848
|
case "end":
|
|
3668
|
-
return
|
|
3849
|
+
return _context20.stop();
|
|
3669
3850
|
}
|
|
3670
3851
|
}
|
|
3671
|
-
},
|
|
3852
|
+
}, _callee20);
|
|
3672
3853
|
}))
|
|
3673
3854
|
})]
|
|
3674
3855
|
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|