contentoh-components-library 21.6.54 → 21.6.55
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/pages/RetailerProductEdition/index.js +29 -10
- package/dist/components/pages/RetailerProductEdition/utils.js +48 -1
- package/package.json +1 -1
- package/src/components/pages/RetailerProductEdition/index.js +23 -3
- package/src/components/pages/RetailerProductEdition/utils.js +34 -0
- package/dist/ai/prompts/attribute.prompt.js +0 -28
- package/dist/ai/prompts/description.prompt.js +0 -33
- package/dist/ai/schemas/attribute.schema.js +0 -35
- package/dist/ai/schemas/description.schema.js +0 -27
- package/dist/components/atoms/AssetPreview/AssetPreview.stories.js +0 -118
- package/dist/components/atoms/AssetPreview/index.js +0 -150
- package/dist/components/atoms/AssetPreview/styles.js +0 -28
- package/dist/components/molecules/GalleryAssetElement/GalleryAssetElement.stories.js +0 -147
- package/dist/components/molecules/GalleryAssetElement/index.js +0 -178
- package/dist/components/molecules/GalleryAssetElement/styles.js +0 -26
- package/dist/components/molecules/GalleryTrayTabs/GalleryTrayTabs.stories.js +0 -56
- package/dist/components/molecules/GalleryTrayTabs/index.js +0 -60
- package/dist/components/molecules/GalleryTrayTabs/styles.js +0 -20
- package/dist/components/organisms/DigitalAssetsTray/DigitalAssetsTray.stories.js +0 -171
- package/dist/components/organisms/DigitalAssetsTray/index.js +0 -211
- package/dist/components/organisms/DigitalAssetsTray/styles.js +0 -22
- package/dist/global-files/digital-assets/assetTypes.js +0 -480
- package/dist/global-files/digital-assets/assets.actions.js +0 -64
- package/dist/global-files/digital-assets/assets.adapter.js +0 -304
- package/dist/global-files/digital-assets/assets.mock.js +0 -136
- package/dist/global-files/digital-assets/assets.reducer.js +0 -220
- package/dist/global-files/digital-assets/uploadAssets.js +0 -179
- package/dist/global-files/digital-assets/useDigitalAssets.js +0 -522
|
@@ -1,171 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.default = exports.Vacia = exports.SoloLectura = exports.PayloadDeGuardado = exports.Cuadricula = exports.ConActivos = void 0;
|
|
9
|
-
|
|
10
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
|
|
11
|
-
|
|
12
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
13
|
-
|
|
14
|
-
var _react = require("react");
|
|
15
|
-
|
|
16
|
-
var _index = require("./index");
|
|
17
|
-
|
|
18
|
-
var _useDigitalAssets = require("../../../global-files/digital-assets/useDigitalAssets");
|
|
19
|
-
|
|
20
|
-
var _assets = require("../../../global-files/digital-assets/assets.reducer");
|
|
21
|
-
|
|
22
|
-
var _assets2 = require("../../../global-files/digital-assets/assets.adapter");
|
|
23
|
-
|
|
24
|
-
var _assets3 = require("../../../global-files/digital-assets/assets.mock");
|
|
25
|
-
|
|
26
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
27
|
-
|
|
28
|
-
var _default = {
|
|
29
|
-
title: "Components/organisms/DigitalAssetsTray",
|
|
30
|
-
component: _index.DigitalAssetsTray
|
|
31
|
-
};
|
|
32
|
-
/*
|
|
33
|
-
Las historias usan EL MISMO reducer que la ficha, no un estado de juguete.
|
|
34
|
-
Así lo que se ve aquí es el comportamiento real: qué queda marcado para
|
|
35
|
-
guardar, qué se anota para borrar y qué payload saldría hacia el backend.
|
|
36
|
-
*/
|
|
37
|
-
|
|
38
|
-
exports.default = _default;
|
|
39
|
-
|
|
40
|
-
var Demo = function Demo(_ref) {
|
|
41
|
-
var _ref$initialAssets = _ref.initialAssets,
|
|
42
|
-
initialAssets = _ref$initialAssets === void 0 ? [] : _ref$initialAssets,
|
|
43
|
-
_ref$gridLayout = _ref.gridLayout,
|
|
44
|
-
gridLayout = _ref$gridLayout === void 0 ? false : _ref$gridLayout,
|
|
45
|
-
_ref$readOnly = _ref.readOnly,
|
|
46
|
-
readOnly = _ref$readOnly === void 0 ? false : _ref$readOnly,
|
|
47
|
-
_ref$showPayload = _ref.showPayload,
|
|
48
|
-
showPayload = _ref$showPayload === void 0 ? false : _ref$showPayload;
|
|
49
|
-
|
|
50
|
-
var _useReducer = (0, _react.useReducer)(_assets.assetsReducer, _assets.assetsInitialState),
|
|
51
|
-
_useReducer2 = (0, _slicedToArray2.default)(_useReducer, 2),
|
|
52
|
-
state = _useReducer2[0],
|
|
53
|
-
dispatch = _useReducer2[1];
|
|
54
|
-
|
|
55
|
-
var _useState = (0, _react.useState)([]),
|
|
56
|
-
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
57
|
-
notices = _useState2[0],
|
|
58
|
-
setNotices = _useState2[1];
|
|
59
|
-
|
|
60
|
-
var tray = (0, _useDigitalAssets.useDigitalAssets)({
|
|
61
|
-
assets: state.assets_values,
|
|
62
|
-
dispatch: dispatch,
|
|
63
|
-
notices: notices,
|
|
64
|
-
setNotices: setNotices
|
|
65
|
-
}); // Carga inicial simulando la respuesta del backend, una sola vez.
|
|
66
|
-
|
|
67
|
-
var _useState3 = (0, _react.useState)(false),
|
|
68
|
-
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
69
|
-
loaded = _useState4[0],
|
|
70
|
-
setLoaded = _useState4[1];
|
|
71
|
-
|
|
72
|
-
if (!loaded && initialAssets.length) {
|
|
73
|
-
tray.replaceAll(initialAssets);
|
|
74
|
-
setLoaded(true);
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
var payload = (0, _assets2.buildSavePayload)((0, _assets.selectAssetsToSave)(state));
|
|
78
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
79
|
-
style: {
|
|
80
|
-
width: 960
|
|
81
|
-
},
|
|
82
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_index.DigitalAssetsTray, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, tray), {}, {
|
|
83
|
-
unsaved: (0, _assets.countUnsavedAssets)(state),
|
|
84
|
-
gridLayout: gridLayout,
|
|
85
|
-
readOnly: readOnly,
|
|
86
|
-
selectedAssets: state.selected_assets,
|
|
87
|
-
setSelectedAssets: function setSelectedAssets(assets) {
|
|
88
|
-
return dispatch({
|
|
89
|
-
type: "SET_SELECTED_ASSETS",
|
|
90
|
-
payload: assets
|
|
91
|
-
});
|
|
92
|
-
},
|
|
93
|
-
setCheckAll: function setCheckAll(checked) {
|
|
94
|
-
return dispatch({
|
|
95
|
-
type: "TOGGLE_CHECK_ALL_ASSETS",
|
|
96
|
-
payload: checked
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
})), /*#__PURE__*/(0, _jsxRuntime.jsxs)("p", {
|
|
100
|
-
style: {
|
|
101
|
-
fontFamily: "Lato",
|
|
102
|
-
fontSize: 12
|
|
103
|
-
},
|
|
104
|
-
children: ["Seleccionados: ", state.selected_assets.length, " \xB7 Sin subir: ", tray.pending.length, " \xB7 Marcados para actualizar: ", state.updated_assets.length, " \xB7 Para borrar:", " ", state.deleted_assets.length, " \xB7 \xBFHay cambios sin guardar?", " ", (0, _assets.hasUnsavedAssets)(state) ? "sí" : "no"]
|
|
105
|
-
}), showPayload && /*#__PURE__*/(0, _jsxRuntime.jsx)("pre", {
|
|
106
|
-
style: {
|
|
107
|
-
fontSize: 11,
|
|
108
|
-
background: "#f7f7fc",
|
|
109
|
-
padding: 12,
|
|
110
|
-
borderRadius: 6,
|
|
111
|
-
maxHeight: 280,
|
|
112
|
-
overflow: "auto"
|
|
113
|
-
},
|
|
114
|
-
children: JSON.stringify(payload, null, 2)
|
|
115
|
-
})]
|
|
116
|
-
});
|
|
117
|
-
};
|
|
118
|
-
/**
|
|
119
|
-
* Estado real de hoy: sin backend, la bandeja arranca vacía. Arrastrar un mp4,
|
|
120
|
-
* un gif, un PDF, un xlsx o un psd lo valida y lo agrega; cualquier otra cosa se
|
|
121
|
-
* rechaza con su motivo. Nada se sube.
|
|
122
|
-
*/
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
var Vacia = function Vacia() {
|
|
126
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Demo, {});
|
|
127
|
-
};
|
|
128
|
-
|
|
129
|
-
exports.Vacia = Vacia;
|
|
130
|
-
|
|
131
|
-
var ConActivos = function ConActivos() {
|
|
132
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Demo, {
|
|
133
|
-
initialAssets: _assets3.backendAssetsMock
|
|
134
|
-
});
|
|
135
|
-
};
|
|
136
|
-
|
|
137
|
-
exports.ConActivos = ConActivos;
|
|
138
|
-
|
|
139
|
-
var Cuadricula = function Cuadricula() {
|
|
140
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Demo, {
|
|
141
|
-
initialAssets: _assets3.backendAssetsMock,
|
|
142
|
-
gridLayout: true
|
|
143
|
-
});
|
|
144
|
-
};
|
|
145
|
-
|
|
146
|
-
exports.Cuadricula = Cuadricula;
|
|
147
|
-
|
|
148
|
-
var SoloLectura = function SoloLectura() {
|
|
149
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Demo, {
|
|
150
|
-
initialAssets: _assets3.backendAssetsMock,
|
|
151
|
-
readOnly: true
|
|
152
|
-
});
|
|
153
|
-
};
|
|
154
|
-
/**
|
|
155
|
-
* Lo que se le enviaría al backend, actualizándose en vivo. Cambia el tipo de un
|
|
156
|
-
* activo y aparece en `updateAssets`; bórralo y su id pasa a `deleteAssets`;
|
|
157
|
-
* suelta un archivo nuevo y aparece en `newAssets` sin `key`, porque todavía no
|
|
158
|
-
* se ha subido a S3.
|
|
159
|
-
*/
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
exports.SoloLectura = SoloLectura;
|
|
163
|
-
|
|
164
|
-
var PayloadDeGuardado = function PayloadDeGuardado() {
|
|
165
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Demo, {
|
|
166
|
-
initialAssets: _assets3.backendAssetsMock,
|
|
167
|
-
showPayload: true
|
|
168
|
-
});
|
|
169
|
-
};
|
|
170
|
-
|
|
171
|
-
exports.PayloadDeGuardado = PayloadDeGuardado;
|
|
@@ -1,211 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.DigitalAssetsTray = void 0;
|
|
9
|
-
|
|
10
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
|
|
11
|
-
|
|
12
|
-
var _reactDropzone = require("react-dropzone");
|
|
13
|
-
|
|
14
|
-
var _styles = require("./styles");
|
|
15
|
-
|
|
16
|
-
var _GalleryAssetElement = require("../../molecules/GalleryAssetElement");
|
|
17
|
-
|
|
18
|
-
var _GalleryHeader = require("../../molecules/GalleryHeader");
|
|
19
|
-
|
|
20
|
-
var _ButtonV = require("../../atoms/ButtonV2");
|
|
21
|
-
|
|
22
|
-
var _assetTypes = require("../../../global-files/digital-assets/assetTypes");
|
|
23
|
-
|
|
24
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
25
|
-
|
|
26
|
-
var CHECK_ALL_ID = "check-all-assets";
|
|
27
|
-
var ITEM_SELECTOR = "[id^='gallery-asset-']";
|
|
28
|
-
/**
|
|
29
|
-
* Bandeja de activos digitales: soltar archivos, verlos, reetiquetarlos y
|
|
30
|
-
* quitarlos.
|
|
31
|
-
*
|
|
32
|
-
* Tiene su propio dropzone en vez de compartir el de las imágenes porque los
|
|
33
|
-
* formatos aceptados son distintos: mezclarlos dejaría soltar un PDF sobre la
|
|
34
|
-
* bandeja de fotos y un JPG sobre la de activos.
|
|
35
|
-
*
|
|
36
|
-
* No guarda ni sube nada. Recibe el estado ya armado por `useDigitalAssets`,
|
|
37
|
-
* así que cuando se defina el contrato del backend solo hay que conectarle las
|
|
38
|
-
* llamadas; la interfaz no cambia.
|
|
39
|
-
*/
|
|
40
|
-
|
|
41
|
-
var DigitalAssetsTray = function DigitalAssetsTray(_ref) {
|
|
42
|
-
var _ref$assets = _ref.assets,
|
|
43
|
-
assets = _ref$assets === void 0 ? [] : _ref$assets,
|
|
44
|
-
_ref$notices = _ref.notices,
|
|
45
|
-
notices = _ref$notices === void 0 ? [] : _ref$notices,
|
|
46
|
-
_ref$unsaved = _ref.unsaved,
|
|
47
|
-
unsaved = _ref$unsaved === void 0 ? {
|
|
48
|
-
nuevos: 0,
|
|
49
|
-
modificados: 0,
|
|
50
|
-
borrados: 0,
|
|
51
|
-
total: 0
|
|
52
|
-
} : _ref$unsaved,
|
|
53
|
-
_ref$remaining = _ref.remaining,
|
|
54
|
-
remaining = _ref$remaining === void 0 ? _assetTypes.MAX_ASSETS_PER_PRODUCT : _ref$remaining,
|
|
55
|
-
addFiles = _ref.addFiles,
|
|
56
|
-
removeAsset = _ref.removeAsset,
|
|
57
|
-
changeAssetType = _ref.changeAssetType,
|
|
58
|
-
clearNotices = _ref.clearNotices,
|
|
59
|
-
_ref$selectedAssets = _ref.selectedAssets,
|
|
60
|
-
selectedAssets = _ref$selectedAssets === void 0 ? [] : _ref$selectedAssets,
|
|
61
|
-
setSelectedAssets = _ref.setSelectedAssets,
|
|
62
|
-
setCheckAll = _ref.setCheckAll,
|
|
63
|
-
_ref$gridLayout = _ref.gridLayout,
|
|
64
|
-
gridLayout = _ref$gridLayout === void 0 ? false : _ref$gridLayout,
|
|
65
|
-
_ref$readOnly = _ref.readOnly,
|
|
66
|
-
readOnly = _ref$readOnly === void 0 ? false : _ref$readOnly,
|
|
67
|
-
_ref$emptyMessage = _ref.emptyMessage,
|
|
68
|
-
emptyMessage = _ref$emptyMessage === void 0 ? "Este producto no tiene activos digitales" : _ref$emptyMessage;
|
|
69
|
-
|
|
70
|
-
var _useDropzone = (0, _reactDropzone.useDropzone)({
|
|
71
|
-
accept: (0, _assetTypes.buildDropzoneAccept)(),
|
|
72
|
-
noKeyboard: true,
|
|
73
|
-
multiple: true,
|
|
74
|
-
noClick: true,
|
|
75
|
-
disabled: readOnly,
|
|
76
|
-
onDrop: function onDrop(acceptedFiles) {
|
|
77
|
-
return addFiles === null || addFiles === void 0 ? void 0 : addFiles(acceptedFiles);
|
|
78
|
-
}
|
|
79
|
-
}),
|
|
80
|
-
getRootProps = _useDropzone.getRootProps,
|
|
81
|
-
getInputProps = _useDropzone.getInputProps,
|
|
82
|
-
isDragActive = _useDropzone.isDragActive,
|
|
83
|
-
open = _useDropzone.open;
|
|
84
|
-
|
|
85
|
-
var noticesBy = function noticesBy(level) {
|
|
86
|
-
return notices.filter(function (item) {
|
|
87
|
-
return item.level === level;
|
|
88
|
-
});
|
|
89
|
-
};
|
|
90
|
-
/*
|
|
91
|
-
Se desglosa en vez de mostrar solo el número: "3 cambios sin guardar" no le
|
|
92
|
-
dice al usuario qué perdería si se va, y no es lo mismo dejar sin guardar un
|
|
93
|
-
borrado que un archivo nuevo.
|
|
94
|
-
*/
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
var detalleSinGuardar = [unsaved.nuevos && "".concat(unsaved.nuevos, " nuevo").concat(unsaved.nuevos > 1 ? "s" : ""), unsaved.modificados && "".concat(unsaved.modificados, " modificado").concat(unsaved.modificados > 1 ? "s" : ""), unsaved.borrados && "".concat(unsaved.borrados, " por borrar")].filter(Boolean).join(" · ");
|
|
98
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_styles.Container, {
|
|
99
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
100
|
-
className: "tray-toolbar",
|
|
101
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("p", {
|
|
102
|
-
className: "tray-hint",
|
|
103
|
-
title: "Formatos permitidos: ".concat((0, _assetTypes.acceptedFormatsLabel)()),
|
|
104
|
-
children: ["Arrastra aqu\xED videos, 360, GIF, documentos, hojas de c\xE1lculo o archivos editables. Quedan ", remaining, " de ", _assetTypes.MAX_ASSETS_PER_PRODUCT, "."]
|
|
105
|
-
}), !readOnly && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ButtonV.ButtonV2, {
|
|
106
|
-
label: "Agregar activos",
|
|
107
|
-
type: "pink",
|
|
108
|
-
size: 12,
|
|
109
|
-
onClick: open
|
|
110
|
-
})]
|
|
111
|
-
}), unsaved.total > 0 && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
112
|
-
className: "tray-unsaved",
|
|
113
|
-
role: "status",
|
|
114
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
115
|
-
className: "tray-unsaved-dot"
|
|
116
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("p", {
|
|
117
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("strong", {
|
|
118
|
-
children: [unsaved.total, " cambio", unsaved.total > 1 ? "s" : "", " sin guardar"]
|
|
119
|
-
}), detalleSinGuardar && /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
|
|
120
|
-
className: "tray-unsaved-detail",
|
|
121
|
-
children: [" \u2014 ", detalleSinGuardar]
|
|
122
|
-
})]
|
|
123
|
-
})]
|
|
124
|
-
}), noticesBy("error").length > 0 && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
125
|
-
className: "tray-notice tray-notice-error",
|
|
126
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
127
|
-
className: "tray-notice-head",
|
|
128
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("p", {
|
|
129
|
-
children: ["No se pudieron agregar ", noticesBy("error").length, " archivo(s):"]
|
|
130
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
|
|
131
|
-
type: "button",
|
|
132
|
-
onClick: clearNotices,
|
|
133
|
-
title: "Cerrar",
|
|
134
|
-
children: "\xD7"
|
|
135
|
-
})]
|
|
136
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("ul", {
|
|
137
|
-
children: noticesBy("error").map(function (item, index) {
|
|
138
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)("li", {
|
|
139
|
-
children: item.message
|
|
140
|
-
}, "err-".concat(item.name, "-").concat(index));
|
|
141
|
-
})
|
|
142
|
-
})]
|
|
143
|
-
}), noticesBy("warning").length > 0 && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
144
|
-
className: "tray-notice tray-notice-warning",
|
|
145
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
146
|
-
className: "tray-notice-head",
|
|
147
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("p", {
|
|
148
|
-
children: "Se agregaron, pero ten en cuenta:"
|
|
149
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
|
|
150
|
-
type: "button",
|
|
151
|
-
onClick: clearNotices,
|
|
152
|
-
title: "Cerrar",
|
|
153
|
-
children: "\xD7"
|
|
154
|
-
})]
|
|
155
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("ul", {
|
|
156
|
-
children: noticesBy("warning").map(function (item, index) {
|
|
157
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)("li", {
|
|
158
|
-
children: item.message
|
|
159
|
-
}, "warn-".concat(item.name, "-").concat(index));
|
|
160
|
-
})
|
|
161
|
-
})]
|
|
162
|
-
}), !gridLayout && assets.length > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_GalleryHeader.GalleryHeader, {
|
|
163
|
-
variant: "asset",
|
|
164
|
-
checkAllId: CHECK_ALL_ID,
|
|
165
|
-
itemSelector: ITEM_SELECTOR,
|
|
166
|
-
setCheckAll: setCheckAll,
|
|
167
|
-
setSelectedImages: setSelectedAssets
|
|
168
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, getRootProps({
|
|
169
|
-
className: "dropzone ".concat(isDragActive ? "drag-active" : "").trim()
|
|
170
|
-
})), {}, {
|
|
171
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("input", (0, _objectSpread2.default)({}, getInputProps())), isDragActive && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
172
|
-
className: "drag-overlay",
|
|
173
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("p", {
|
|
174
|
-
children: "Suelta los activos aqu\xED"
|
|
175
|
-
})
|
|
176
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("aside", {
|
|
177
|
-
className: gridLayout ? "tray-grid" : "tray-rows",
|
|
178
|
-
children: assets.map(function (asset, index) {
|
|
179
|
-
var _asset$id;
|
|
180
|
-
|
|
181
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_GalleryAssetElement.GalleryAssetElement, {
|
|
182
|
-
asset: asset,
|
|
183
|
-
index: index,
|
|
184
|
-
gridLayout: gridLayout,
|
|
185
|
-
checkAllId: CHECK_ALL_ID,
|
|
186
|
-
itemSelector: ITEM_SELECTOR,
|
|
187
|
-
selectedAssets: selectedAssets,
|
|
188
|
-
setSelectedAssets: setSelectedAssets,
|
|
189
|
-
setCheckAll: setCheckAll,
|
|
190
|
-
changeAsset: function changeAsset(_ref2) {
|
|
191
|
-
var value = _ref2.value;
|
|
192
|
-
return changeAssetType === null || changeAssetType === void 0 ? void 0 : changeAssetType(index, value);
|
|
193
|
-
},
|
|
194
|
-
onRemove: removeAsset,
|
|
195
|
-
readOnly: readOnly
|
|
196
|
-
}, (_asset$id = asset.id) !== null && _asset$id !== void 0 ? _asset$id : asset.tempId);
|
|
197
|
-
})
|
|
198
|
-
}), assets.length === 0 && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
199
|
-
className: "tray-empty",
|
|
200
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("p", {
|
|
201
|
-
children: emptyMessage
|
|
202
|
-
}), !readOnly && /*#__PURE__*/(0, _jsxRuntime.jsx)("p", {
|
|
203
|
-
className: "tray-empty-hint",
|
|
204
|
-
children: "Arr\xE1stralos aqu\xED o usa \xABAgregar activos\xBB."
|
|
205
|
-
})]
|
|
206
|
-
})]
|
|
207
|
-
}))]
|
|
208
|
-
});
|
|
209
|
-
};
|
|
210
|
-
|
|
211
|
-
exports.DigitalAssetsTray = DigitalAssetsTray;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.Container = void 0;
|
|
9
|
-
|
|
10
|
-
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/taggedTemplateLiteral"));
|
|
11
|
-
|
|
12
|
-
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
13
|
-
|
|
14
|
-
var _variables = require("../../../global-files/variables");
|
|
15
|
-
|
|
16
|
-
var _templateObject;
|
|
17
|
-
|
|
18
|
-
/* El dropzone replica el de la bandeja de imágenes para que arrastrar se sienta
|
|
19
|
-
igual en las dos. */
|
|
20
|
-
var Container = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n width: 100%;\n display: flex;\n flex-direction: column;\n gap: 8px;\n\n .tray-toolbar {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 12px;\n }\n\n .tray-hint {\n margin: 0;\n font-family: ", ";\n font-size: 12px;\n line-height: 18px;\n color: ", ";\n }\n\n /*\n Aviso de cambios sin guardar. Va arriba del listado y no junto al bot\xF3n de\n guardar, que vive en otra barra: el usuario mira la bandeja, no el men\xFA.\n */\n .tray-unsaved {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 6px 12px;\n border-radius: 6px;\n border: 1px solid ", ";\n background: rgba(237, 154, 77, 0.08);\n\n p {\n margin: 0;\n font-family: ", ";\n font-size: 12px;\n line-height: 18px;\n color: ", ";\n }\n\n strong {\n font-family: ", ";\n color: ", ";\n }\n }\n\n .tray-unsaved-dot {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n background: ", ";\n flex-shrink: 0;\n }\n\n .tray-unsaved-detail {\n color: ", ";\n }\n\n .tray-notice {\n border-radius: 6px;\n padding: 8px 12px;\n border: 1px solid;\n\n .tray-notice-head {\n display: flex;\n align-items: center;\n justify-content: space-between;\n\n p {\n margin: 0;\n font-family: ", ";\n font-size: 12px;\n }\n\n button {\n border: none;\n background: none;\n cursor: pointer;\n font-size: 16px;\n line-height: 1;\n color: inherit;\n }\n }\n\n ul {\n margin: 4px 0 0;\n padding-left: 18px;\n }\n\n li {\n font-family: ", ";\n font-size: 12px;\n line-height: 18px;\n color: ", ";\n }\n }\n\n /* Rojo = no entr\xF3. \xC1mbar = entr\xF3, pero hay algo que saber. */\n .tray-notice-error {\n border-color: ", ";\n background: rgba(", ", 0.05);\n color: ", ";\n }\n\n .tray-notice-warning {\n border-color: ", ";\n background: rgba(237, 154, 77, 0.08);\n color: ", ";\n }\n\n .dropzone {\n position: relative;\n width: 100%;\n min-height: 160px;\n transition: all 0.5s ease;\n\n &.drag-active {\n background-color: rgba(", ", 0.05);\n border: 2px dashed ", ";\n border-radius: 8px;\n\n aside {\n opacity: 0.3;\n pointer-events: none;\n }\n }\n\n .drag-overlay {\n position: absolute;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1;\n\n p {\n font-family: ", ";\n font-size: 16px;\n color: ", ";\n }\n }\n }\n\n .tray-rows {\n display: flex;\n flex-direction: column;\n }\n\n .tray-grid {\n display: flex;\n flex-wrap: wrap;\n gap: 12px;\n }\n\n .tray-empty {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n text-align: center;\n width: 80%;\n\n p {\n margin: 0;\n font-family: ", ";\n font-size: 16px;\n color: ", ";\n }\n\n .tray-empty-hint {\n margin-top: 6px;\n font-size: 13px;\n color: ", ";\n }\n }\n"])), _variables.FontFamily.Lato, _variables.GlobalColors.s4, _variables.GlobalColors.in_progress, _variables.FontFamily.Lato, _variables.GlobalColors.s5, _variables.FontFamily.Raleway_600, _variables.GlobalColors.in_progress, _variables.GlobalColors.in_progress, _variables.GlobalColors.s4, _variables.FontFamily.Raleway_600, _variables.FontFamily.Lato, _variables.GlobalColors.s5, _variables.GlobalColors.secondary_magenta, _variables.GlobalColors.rgb_color_pink, _variables.GlobalColors.secondary_magenta, _variables.GlobalColors.in_progress, _variables.GlobalColors.in_progress, _variables.GlobalColors.rgb_color_pink, _variables.GlobalColors.color_pink, _variables.FontFamily.AvenirNext, _variables.GlobalColors.color_pink, _variables.FontFamily.Lato, _variables.GlobalColors.gray, _variables.GlobalColors.s4);
|
|
21
|
-
|
|
22
|
-
exports.Container = Container;
|