webs-sdk 0.18.89 → 0.18.90

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.
Files changed (48) hide show
  1. package/dist/components/ArtGenerator.d.ts +101 -0
  2. package/dist/components/ArtGenerator.d.ts.map +1 -0
  3. package/dist/components/ArtGenerator.js +527 -0
  4. package/dist/components/ArtGenerator.js.map +1 -0
  5. package/dist/components/GifsIa.d.ts +84 -0
  6. package/dist/components/GifsIa.d.ts.map +1 -0
  7. package/dist/components/GifsIa.js +463 -0
  8. package/dist/components/GifsIa.js.map +1 -0
  9. package/dist/components/for-you/ForYouPage.d.ts +30 -0
  10. package/dist/components/for-you/ForYouPage.d.ts.map +1 -1
  11. package/dist/components/for-you/ForYouPage.js +14 -0
  12. package/dist/components/for-you/ForYouPage.js.map +1 -1
  13. package/dist/components/for-you/cards/ArtGeneratorCard.d.ts +7 -0
  14. package/dist/components/for-you/cards/ArtGeneratorCard.d.ts.map +1 -0
  15. package/dist/components/for-you/cards/ArtGeneratorCard.js +22 -0
  16. package/dist/components/for-you/cards/ArtGeneratorCard.js.map +1 -0
  17. package/dist/components/for-you/cards/GifsIaCard.d.ts +7 -0
  18. package/dist/components/for-you/cards/GifsIaCard.d.ts.map +1 -0
  19. package/dist/components/for-you/cards/GifsIaCard.js +22 -0
  20. package/dist/components/for-you/cards/GifsIaCard.js.map +1 -0
  21. package/dist/components/for-you/cards/index.d.ts +4 -0
  22. package/dist/components/for-you/cards/index.d.ts.map +1 -1
  23. package/dist/components/for-you/cards/index.js +5 -1
  24. package/dist/components/for-you/cards/index.js.map +1 -1
  25. package/dist/components/for-you/hooks/index.d.ts +4 -0
  26. package/dist/components/for-you/hooks/index.d.ts.map +1 -1
  27. package/dist/components/for-you/hooks/index.js +5 -1
  28. package/dist/components/for-you/hooks/index.js.map +1 -1
  29. package/dist/components/for-you/hooks/useArtGenerator.d.ts +47 -0
  30. package/dist/components/for-you/hooks/useArtGenerator.d.ts.map +1 -0
  31. package/dist/components/for-you/hooks/useArtGenerator.js +261 -0
  32. package/dist/components/for-you/hooks/useArtGenerator.js.map +1 -0
  33. package/dist/components/for-you/hooks/useGifsIa.d.ts +46 -0
  34. package/dist/components/for-you/hooks/useGifsIa.d.ts.map +1 -0
  35. package/dist/components/for-you/hooks/useGifsIa.js +243 -0
  36. package/dist/components/for-you/hooks/useGifsIa.js.map +1 -0
  37. package/dist/components/for-you/i18n/forYouTranslations.d.ts.map +1 -1
  38. package/dist/components/for-you/i18n/forYouTranslations.js +83 -1
  39. package/dist/components/for-you/i18n/forYouTranslations.js.map +1 -1
  40. package/dist/components/for-you/index.d.ts +9 -1
  41. package/dist/components/for-you/index.d.ts.map +1 -1
  42. package/dist/components/for-you/index.js +9 -1
  43. package/dist/components/for-you/index.js.map +1 -1
  44. package/dist/index.d.ts +13 -1
  45. package/dist/index.d.ts.map +1 -1
  46. package/dist/index.js +23 -11
  47. package/dist/index.js.map +1 -1
  48. package/package.json +1 -1
@@ -0,0 +1,84 @@
1
+ import type { ForYouContentPreset } from './for-you/api/forYouFetch';
2
+ export interface GifsIaGalleryItem {
3
+ id: string | number;
4
+ imageUrl: string;
5
+ title?: string;
6
+ }
7
+ export interface GifsIaConfig {
8
+ generateBaseUrl: string;
9
+ apiBaseUrl?: string;
10
+ apiUrl?: string;
11
+ galleryTags?: string | string[];
12
+ galleryContents?: ForYouContentPreset[];
13
+ locale?: string;
14
+ website_id?: string;
15
+ pollInterval?: number;
16
+ maxPollTime?: number;
17
+ userId?: number;
18
+ userLogin?: number;
19
+ wid?: string;
20
+ acceptedFormats?: string;
21
+ maxFileSizeMB?: number;
22
+ }
23
+ export interface GifsIaTheme {
24
+ primaryColor?: string;
25
+ primaryHoverColor?: string;
26
+ backgroundColor?: string;
27
+ cardBackground?: string;
28
+ borderColor?: string;
29
+ textColor?: string;
30
+ textSecondaryColor?: string;
31
+ createButtonColor?: string;
32
+ disabledColor?: string;
33
+ }
34
+ export interface GifsIaTexts {
35
+ galleryTitle?: string;
36
+ photoSectionTitle?: string;
37
+ gifSectionTitle?: string;
38
+ uploadButton?: string;
39
+ createGifButton?: string;
40
+ creatingGifButton?: string;
41
+ copyLinkButton?: string;
42
+ downloadButton?: string;
43
+ emptyPhotoText?: string;
44
+ emptyGifText?: string;
45
+ loadingGalleryText?: string;
46
+ errorText?: string;
47
+ fileTooLargeText?: string;
48
+ invalidFormatText?: string;
49
+ linkCopiedText?: string;
50
+ queueText?: string;
51
+ pasteImageTooltip?: string;
52
+ resetTooltip?: string;
53
+ }
54
+ export interface GifsIaProps {
55
+ config: GifsIaConfig;
56
+ galleryItems?: GifsIaGalleryItem[];
57
+ theme?: GifsIaTheme;
58
+ texts?: GifsIaTexts;
59
+ imageProxyUrl?: string;
60
+ onGifCreated?: (gifUrl: string) => void;
61
+ onDownload?: (gifUrl: string) => void;
62
+ onCopyLink?: (gifUrl: string) => void;
63
+ onError?: (error: string) => void;
64
+ }
65
+ export declare function GifsIa({ config, galleryItems: galleryProp, theme, texts, imageProxyUrl, onGifCreated, onDownload, onCopyLink, onError, }: GifsIaProps): import("react/jsx-runtime").JSX.Element;
66
+ export interface GifsIaForYouCardProps {
67
+ title: string;
68
+ description: string;
69
+ ctaText: string;
70
+ ctaHref: string;
71
+ desktopImage: string;
72
+ mobileImage?: string;
73
+ imageAlt?: string;
74
+ imageOnRight?: boolean;
75
+ titleColor?: string;
76
+ descriptionColor?: string;
77
+ ctaColor?: string;
78
+ ctaHoverColor?: string;
79
+ backgroundColor?: string;
80
+ paddingClass?: string;
81
+ }
82
+ export declare function GifsIaForYouCard({ title, description, ctaText, ctaHref, desktopImage, mobileImage, imageAlt, imageOnRight, titleColor, descriptionColor, ctaColor, ctaHoverColor, backgroundColor, paddingClass, }: GifsIaForYouCardProps): import("react/jsx-runtime").JSX.Element;
83
+ export default GifsIa;
84
+ //# sourceMappingURL=GifsIa.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GifsIa.d.ts","sourceRoot":"","sources":["../../src/components/GifsIa.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,463 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GifsIa = GifsIa;
4
+ exports.GifsIaForYouCard = GifsIaForYouCard;
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const react_1 = require("react");
7
+ const forYouFetch_1 = require("./for-you/api/forYouFetch");
8
+ const GIFSÍA_CSS = `
9
+ .gifsía-layout {
10
+ display: grid;
11
+ grid-template-columns: 1fr;
12
+ gap: 16px;
13
+ }
14
+ @media (min-width: 768px) {
15
+ .gifsía-layout {
16
+ grid-template-columns: 1fr 1fr;
17
+ gap: 20px;
18
+ }
19
+ }
20
+ .gifsía-checker {
21
+ background-image: linear-gradient(45deg, #3a3a4a 25%, transparent 25%),
22
+ linear-gradient(-45deg, #3a3a4a 25%, transparent 25%),
23
+ linear-gradient(45deg, transparent 75%, #3a3a4a 75%),
24
+ linear-gradient(-45deg, transparent 75%, #3a3a4a 75%);
25
+ background-size: 20px 20px;
26
+ background-position: 0 0, 0 10px, 10px -10px, -10px 0px;
27
+ background-color: #2a2a3a;
28
+ }
29
+ @keyframes gifsía-scan {
30
+ 0% { top: 0%; }
31
+ 100% { top: 100%; }
32
+ }
33
+ @keyframes gifsía-spin {
34
+ from { transform: rotate(0deg); }
35
+ to { transform: rotate(360deg); }
36
+ }
37
+ .gifsía-scan-line {
38
+ position: absolute;
39
+ left: 0;
40
+ width: 100%;
41
+ height: 3px;
42
+ background: linear-gradient(90deg, transparent, #6C63FF, transparent);
43
+ animation: gifsía-scan 1.8s linear infinite;
44
+ z-index: 10;
45
+ box-shadow: 0 0 8px 2px rgba(108, 99, 255, 0.6);
46
+ }
47
+ `;
48
+ const defaultTheme = {
49
+ primaryColor: '#6C63FF',
50
+ primaryHoverColor: '#5a52d5',
51
+ backgroundColor: '#1A1A2E',
52
+ cardBackground: '#252540',
53
+ borderColor: '#3A3A5C',
54
+ textColor: '#FFFFFF',
55
+ textSecondaryColor: '#A0A0C0',
56
+ createButtonColor: '#6C63FF',
57
+ disabledColor: '#4A4A6A',
58
+ };
59
+ const defaultTexts = {
60
+ galleryTitle: 'Galería De GIFs',
61
+ photoSectionTitle: 'Foto',
62
+ gifSectionTitle: 'GIF',
63
+ uploadButton: 'Subir imagen',
64
+ createGifButton: 'Crear GIF',
65
+ creatingGifButton: 'Creando GIF...',
66
+ copyLinkButton: 'Copiar enlace',
67
+ downloadButton: 'Descargar',
68
+ emptyPhotoText: 'Sube una foto para crear tu GIF',
69
+ emptyGifText: 'Tu GIF aparecerá aquí',
70
+ loadingGalleryText: 'Cargando galería...',
71
+ errorText: 'Ha ocurrido un error. Inténtalo de nuevo.',
72
+ fileTooLargeText: 'El archivo es demasiado grande. Máximo {size}MB.',
73
+ invalidFormatText: 'Formato de archivo no válido. Por favor, sube una imagen.',
74
+ linkCopiedText: '¡Enlace copiado!',
75
+ queueText: 'En cola',
76
+ pasteImageTooltip: 'Pegar imagen del portapapeles',
77
+ resetTooltip: 'Limpiar y empezar de nuevo',
78
+ };
79
+ function GifBadge({ color = '#6C63FF' }) {
80
+ return ((0, jsx_runtime_1.jsxs)("svg", { width: "28", height: "20", viewBox: "0 0 28 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [(0, jsx_runtime_1.jsx)("rect", { width: "28", height: "20", rx: "4", fill: color }), (0, jsx_runtime_1.jsx)("text", { x: "4", y: "14", fill: "white", fontSize: "10", fontWeight: "700", fontFamily: "monospace", children: "GIF" })] }));
81
+ }
82
+ function CameraBadge({ color = '#6C63FF' }) {
83
+ return ((0, jsx_runtime_1.jsxs)("svg", { width: "18", height: "16", viewBox: "0 0 18 16", fill: "none", stroke: color, strokeWidth: "1.5", children: [(0, jsx_runtime_1.jsx)("path", { d: "M1 5.5A1.5 1.5 0 0 1 2.5 4h1.086a1.5 1.5 0 0 0 1.06-.44l1-1A1.5 1.5 0 0 1 6.706 2h4.588a1.5 1.5 0 0 1 1.06.44l1 1A1.5 1.5 0 0 0 14.414 4H15.5A1.5 1.5 0 0 1 17 5.5v7A1.5 1.5 0 0 1 15.5 14h-13A1.5 1.5 0 0 1 1 12.5v-7z" }), (0, jsx_runtime_1.jsx)("circle", { cx: "9", cy: "9", r: "2.5" })] }));
84
+ }
85
+ function GifsIa({ config, galleryItems: galleryProp, theme = {}, texts = {}, imageProxyUrl, onGifCreated, onDownload, onCopyLink, onError, }) {
86
+ var _a;
87
+ const t = Object.assign(Object.assign({}, defaultTexts), texts);
88
+ const th = Object.assign(Object.assign({}, defaultTheme), theme);
89
+ const createBtnColor = th.createButtonColor || th.primaryColor;
90
+ const maxFileMB = (_a = config.maxFileSizeMB) !== null && _a !== void 0 ? _a : 10;
91
+ (0, react_1.useEffect)(() => {
92
+ const id = 'gifsía-styles';
93
+ if (document.getElementById(id))
94
+ return;
95
+ const style = document.createElement('style');
96
+ style.id = id;
97
+ style.textContent = GIFSÍA_CSS;
98
+ document.head.appendChild(style);
99
+ }, []);
100
+ const [dynamicGallery, setDynamicGallery] = (0, react_1.useState)([]);
101
+ const [loadingGallery, setLoadingGallery] = (0, react_1.useState)(false);
102
+ (0, react_1.useEffect)(() => {
103
+ if (galleryProp && galleryProp.length > 0)
104
+ return;
105
+ const hasFetch = config.galleryTags || config.galleryContents || config.apiBaseUrl || config.apiUrl;
106
+ if (!hasFetch)
107
+ return;
108
+ const load = async () => {
109
+ var _a;
110
+ setLoadingGallery(true);
111
+ try {
112
+ const apiUrl = (_a = config.apiUrl) !== null && _a !== void 0 ? _a : (config.apiBaseUrl ? `${config.apiBaseUrl}/api/get_contents_by_tags` : '/api/get_contents_by_tags');
113
+ const tags = config.galleryTags
114
+ ? (Array.isArray(config.galleryTags) ? config.galleryTags : [config.galleryTags])
115
+ : undefined;
116
+ const items = await (0, forYouFetch_1.forYouFetch)({
117
+ apiUrl,
118
+ apiBaseUrl: config.apiBaseUrl,
119
+ tags,
120
+ contents: config.galleryContents,
121
+ locale: config.locale || 'es',
122
+ website_id: config.website_id,
123
+ });
124
+ const mapped = items
125
+ .map((item, idx) => {
126
+ var _a, _b;
127
+ return ({
128
+ id: (_a = item.id) !== null && _a !== void 0 ? _a : idx,
129
+ imageUrl: item.thumbnail || ((_b = item.images) === null || _b === void 0 ? void 0 : _b.img1) || item.imageUrl || '',
130
+ title: item.title || '',
131
+ });
132
+ })
133
+ .filter((i) => i.imageUrl);
134
+ setDynamicGallery(mapped);
135
+ }
136
+ catch (err) {
137
+ console.error('[GifsIa] Error cargando galería:', err);
138
+ }
139
+ finally {
140
+ setLoadingGallery(false);
141
+ }
142
+ };
143
+ load();
144
+ }, [config.apiUrl, config.apiBaseUrl, config.galleryTags]);
145
+ const gallery = galleryProp && galleryProp.length > 0 ? galleryProp : dynamicGallery;
146
+ const [carouselIndex, setCarouselIndex] = (0, react_1.useState)(0);
147
+ const [selectedGalleryId, setSelectedGalleryId] = (0, react_1.useState)(null);
148
+ const [uploadedImageBase64, setUploadedImageBase64] = (0, react_1.useState)(null);
149
+ const [isGenerating, setIsGenerating] = (0, react_1.useState)(false);
150
+ const [generatedGifUrl, setGeneratedGifUrl] = (0, react_1.useState)(null);
151
+ const [progressPercent, setProgressPercent] = (0, react_1.useState)(null);
152
+ const [queuePosition, setQueuePosition] = (0, react_1.useState)(null);
153
+ const [genError, setGenError] = (0, react_1.useState)(null);
154
+ const [copySuccess, setCopySuccess] = (0, react_1.useState)(false);
155
+ const fileInputRef = (0, react_1.useRef)(null);
156
+ const pollRef = (0, react_1.useRef)(null);
157
+ const timeoutRef = (0, react_1.useRef)(null);
158
+ (0, react_1.useEffect)(() => {
159
+ if (gallery.length > 0 && selectedGalleryId === null) {
160
+ setSelectedGalleryId(gallery[0].id);
161
+ }
162
+ }, [gallery, selectedGalleryId]);
163
+ const clearPolls = (0, react_1.useCallback)(() => {
164
+ if (pollRef.current) {
165
+ clearInterval(pollRef.current);
166
+ pollRef.current = null;
167
+ }
168
+ if (timeoutRef.current) {
169
+ clearTimeout(timeoutRef.current);
170
+ timeoutRef.current = null;
171
+ }
172
+ }, []);
173
+ (0, react_1.useEffect)(() => () => clearPolls(), [clearPolls]);
174
+ const visibleCount = 4;
175
+ const handlePrev = () => setCarouselIndex(prev => Math.max(0, prev - 1));
176
+ const handleNext = () => setCarouselIndex(prev => Math.min(Math.max(0, gallery.length - visibleCount), prev + 1));
177
+ const processFile = (file) => {
178
+ if (!file.type.startsWith('image/')) {
179
+ alert(t.invalidFormatText);
180
+ return;
181
+ }
182
+ if (file.size > maxFileMB * 1024 * 1024) {
183
+ alert(t.fileTooLargeText.replace('{size}', String(maxFileMB)));
184
+ return;
185
+ }
186
+ const reader = new FileReader();
187
+ reader.onloadend = () => {
188
+ setUploadedImageBase64(reader.result);
189
+ };
190
+ reader.readAsDataURL(file);
191
+ };
192
+ const handleFileChange = (e) => {
193
+ var _a;
194
+ const file = (_a = e.target.files) === null || _a === void 0 ? void 0 : _a[0];
195
+ if (file)
196
+ processFile(file);
197
+ };
198
+ const handleUploadClick = () => { var _a; return (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click(); };
199
+ const handleClipboardButtonClick = async () => {
200
+ if (uploadedImageBase64) {
201
+ handleReset();
202
+ return;
203
+ }
204
+ try {
205
+ const items = await navigator.clipboard.read();
206
+ for (const item of items) {
207
+ const imageType = item.types.find(t => t.startsWith('image/'));
208
+ if (imageType) {
209
+ const blob = await item.getType(imageType);
210
+ const file = new File([blob], 'clipboard.png', { type: imageType });
211
+ processFile(file);
212
+ return;
213
+ }
214
+ }
215
+ }
216
+ catch (_a) {
217
+ console.warn('[GifsIa] No hay imagen en el portapapeles o permiso denegado');
218
+ }
219
+ };
220
+ const handleReset = () => {
221
+ clearPolls();
222
+ setUploadedImageBase64(null);
223
+ setGeneratedGifUrl(null);
224
+ setProgressPercent(null);
225
+ setQueuePosition(null);
226
+ setGenError(null);
227
+ setIsGenerating(false);
228
+ if (fileInputRef.current)
229
+ fileInputRef.current.value = '';
230
+ };
231
+ const handleCreateGif = async () => {
232
+ var _a, _b, _c;
233
+ if (!uploadedImageBase64 || isGenerating)
234
+ return;
235
+ clearPolls();
236
+ setIsGenerating(true);
237
+ setGeneratedGifUrl(null);
238
+ setProgressPercent(0);
239
+ setQueuePosition(null);
240
+ setGenError(null);
241
+ const base = config.generateBaseUrl.replace(/\/$/, '');
242
+ const pollInterval = (_a = config.pollInterval) !== null && _a !== void 0 ? _a : 3000;
243
+ const maxPollTime = (_b = config.maxPollTime) !== null && _b !== void 0 ? _b : 120000;
244
+ const selectedItem = gallery.find(g => g.id === selectedGalleryId);
245
+ try {
246
+ const genRes = await fetch(`${base}/get_art_generation`, {
247
+ method: 'POST',
248
+ headers: { 'Content-Type': 'application/json' },
249
+ body: JSON.stringify(Object.assign(Object.assign(Object.assign(Object.assign({ image: uploadedImageBase64 }, (selectedItem && { reference_image: selectedItem.imageUrl })), (config.userId && { us_id: config.userId })), (config.userLogin && { us_login: config.userLogin })), (config.wid && { wid: config.wid }))),
250
+ });
251
+ if (!genRes.ok)
252
+ throw new Error(`Error en generación: ${genRes.status}`);
253
+ const genData = await genRes.json();
254
+ console.log('[GifsIa] gen response:', genData);
255
+ const jobId = ((_c = genData === null || genData === void 0 ? void 0 : genData.data) === null || _c === void 0 ? void 0 : _c.md5) || (genData === null || genData === void 0 ? void 0 : genData.md5) || (genData === null || genData === void 0 ? void 0 : genData.job_id) || (genData === null || genData === void 0 ? void 0 : genData.id);
256
+ if (!jobId)
257
+ throw new Error('No se recibió job ID');
258
+ timeoutRef.current = setTimeout(() => {
259
+ clearPolls();
260
+ setIsGenerating(false);
261
+ setGenError(t.errorText);
262
+ onError === null || onError === void 0 ? void 0 : onError(t.errorText);
263
+ }, maxPollTime);
264
+ const poll = async () => {
265
+ var _a, _b, _c, _d, _e, _f, _g, _h;
266
+ try {
267
+ const queueRes = await fetch(`${base}/get_queue_position`, {
268
+ method: 'POST',
269
+ headers: { 'Content-Type': 'application/json' },
270
+ body: JSON.stringify(Object.assign(Object.assign({ md5: jobId }, (config.userId && { us_id: config.userId })), (config.wid && { wid: config.wid }))),
271
+ });
272
+ if (queueRes.ok) {
273
+ const queueData = await queueRes.json();
274
+ const pos = (_c = (_b = (_a = queueData === null || queueData === void 0 ? void 0 : queueData.data) === null || _a === void 0 ? void 0 : _a.position) !== null && _b !== void 0 ? _b : queueData === null || queueData === void 0 ? void 0 : queueData.position) !== null && _c !== void 0 ? _c : null;
275
+ setQueuePosition(pos);
276
+ }
277
+ const pctRes = await fetch(`${base}/get_arg_pct`, {
278
+ method: 'POST',
279
+ headers: { 'Content-Type': 'application/json' },
280
+ body: JSON.stringify(Object.assign(Object.assign({ md5: jobId }, (config.userId && { us_id: config.userId })), (config.wid && { wid: config.wid }))),
281
+ });
282
+ if (!pctRes.ok)
283
+ return;
284
+ const pctData = await pctRes.json();
285
+ const pct = (_f = (_e = (_d = pctData === null || pctData === void 0 ? void 0 : pctData.data) === null || _d === void 0 ? void 0 : _d.pct) !== null && _e !== void 0 ? _e : pctData === null || pctData === void 0 ? void 0 : pctData.pct) !== null && _f !== void 0 ? _f : 0;
286
+ setProgressPercent(pct);
287
+ if (pct >= 100) {
288
+ clearPolls();
289
+ const jobRes = await fetch(`${base}/get_art_job`, {
290
+ method: 'POST',
291
+ headers: { 'Content-Type': 'application/json' },
292
+ body: JSON.stringify(Object.assign(Object.assign({ md5: jobId }, (config.userId && { us_id: config.userId })), (config.wid && { wid: config.wid }))),
293
+ });
294
+ if (!jobRes.ok)
295
+ throw new Error('Error obteniendo GIF final');
296
+ const jobData = await jobRes.json();
297
+ console.log('[GifsIa] job data:', jobData);
298
+ const gifUrl = ((_g = jobData === null || jobData === void 0 ? void 0 : jobData.data) === null || _g === void 0 ? void 0 : _g.url) || (jobData === null || jobData === void 0 ? void 0 : jobData.url) || (jobData === null || jobData === void 0 ? void 0 : jobData.gif) || ((_h = jobData === null || jobData === void 0 ? void 0 : jobData.data) === null || _h === void 0 ? void 0 : _h.gif);
299
+ if (!gifUrl)
300
+ throw new Error('No se recibió URL del GIF');
301
+ setGeneratedGifUrl(gifUrl);
302
+ setProgressPercent(100);
303
+ setIsGenerating(false);
304
+ onGifCreated === null || onGifCreated === void 0 ? void 0 : onGifCreated(gifUrl);
305
+ }
306
+ }
307
+ catch (err) {
308
+ console.error('[GifsIa] Error en polling:', err);
309
+ }
310
+ };
311
+ poll();
312
+ pollRef.current = setInterval(poll, pollInterval);
313
+ }
314
+ catch (err) {
315
+ clearPolls();
316
+ const msg = err instanceof Error ? err.message : t.errorText;
317
+ setGenError(msg);
318
+ setIsGenerating(false);
319
+ onError === null || onError === void 0 ? void 0 : onError(msg);
320
+ }
321
+ };
322
+ const handleCopyLink = async () => {
323
+ if (!generatedGifUrl)
324
+ return;
325
+ if (onCopyLink) {
326
+ onCopyLink(generatedGifUrl);
327
+ return;
328
+ }
329
+ try {
330
+ await navigator.clipboard.writeText(generatedGifUrl);
331
+ setCopySuccess(true);
332
+ setTimeout(() => setCopySuccess(false), 2000);
333
+ }
334
+ catch (_a) {
335
+ console.warn('[GifsIa] No se pudo copiar al portapapeles');
336
+ }
337
+ };
338
+ const handleDownload = async () => {
339
+ if (!generatedGifUrl)
340
+ return;
341
+ if (onDownload) {
342
+ onDownload(generatedGifUrl);
343
+ return;
344
+ }
345
+ try {
346
+ const fetchUrl = imageProxyUrl ? `${imageProxyUrl}${encodeURIComponent(generatedGifUrl)}` : generatedGifUrl;
347
+ const res = await fetch(fetchUrl);
348
+ const blob = await res.blob();
349
+ const url = URL.createObjectURL(blob);
350
+ const a = document.createElement('a');
351
+ a.href = url;
352
+ a.download = `gif-ia-${Date.now()}.gif`;
353
+ document.body.appendChild(a);
354
+ a.click();
355
+ document.body.removeChild(a);
356
+ URL.revokeObjectURL(url);
357
+ }
358
+ catch (_a) {
359
+ window.open(generatedGifUrl, '_blank');
360
+ }
361
+ };
362
+ const handleDrop = (e) => {
363
+ var _a;
364
+ e.preventDefault();
365
+ const file = (_a = e.dataTransfer.files) === null || _a === void 0 ? void 0 : _a[0];
366
+ if (file)
367
+ processFile(file);
368
+ };
369
+ const handleDragOver = (e) => e.preventDefault();
370
+ return ((0, jsx_runtime_1.jsxs)("div", { style: { backgroundColor: th.backgroundColor, padding: '24px', borderRadius: '12px' }, children: [(0, jsx_runtime_1.jsx)("style", { children: `
371
+ @keyframes gifsía-scan { 0% { top: 0%; } 100% { top: 100%; } }
372
+ @keyframes gifsía-spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
373
+ .gifsía-scan-line { position: absolute; left: 0; width: 100%; height: 3px; background: linear-gradient(90deg, transparent, ${th.primaryColor}, transparent); animation: gifsía-scan 1.8s linear infinite; z-index: 10; box-shadow: 0 0 8px 2px ${th.primaryColor}80; }
374
+ ` }), (0, jsx_runtime_1.jsx)("input", { ref: fileInputRef, type: "file", accept: config.acceptedFormats || 'image/*', onChange: handleFileChange, style: { display: 'none' } }), (0, jsx_runtime_1.jsxs)("div", { style: { marginBottom: '24px' }, children: [(0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', alignItems: 'center', gap: '8px', marginBottom: '12px' }, children: [(0, jsx_runtime_1.jsx)(GifBadge, { color: th.primaryColor }), (0, jsx_runtime_1.jsx)("h3", { style: { margin: 0, fontSize: '18px', fontWeight: 700, color: th.textColor }, children: t.galleryTitle })] }), loadingGallery ? ((0, jsx_runtime_1.jsx)("p", { style: { color: th.textSecondaryColor, fontSize: '14px' }, children: t.loadingGalleryText })) : gallery.length > 0 ? ((0, jsx_runtime_1.jsxs)("div", { style: { position: 'relative', display: 'flex', alignItems: 'center', gap: '8px' }, children: [(0, jsx_runtime_1.jsx)("button", { onClick: handlePrev, disabled: carouselIndex === 0, style: {
375
+ width: '36px', height: '36px', borderRadius: '50%', border: `1px solid ${th.borderColor}`,
376
+ backgroundColor: th.cardBackground, color: th.textColor, cursor: carouselIndex === 0 ? 'not-allowed' : 'pointer',
377
+ opacity: carouselIndex === 0 ? 0.3 : 1, flexShrink: 0,
378
+ display: 'flex', alignItems: 'center', justifyContent: 'center',
379
+ }, children: (0, jsx_runtime_1.jsx)("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: (0, jsx_runtime_1.jsx)("polyline", { points: "15 18 9 12 15 6" }) }) }), (0, jsx_runtime_1.jsx)("div", { style: { display: 'flex', gap: '12px', flex: 1, overflow: 'hidden' }, children: gallery.slice(carouselIndex, carouselIndex + visibleCount).map((item) => {
380
+ const isSelected = selectedGalleryId === item.id;
381
+ return ((0, jsx_runtime_1.jsx)("button", { onClick: () => setSelectedGalleryId(item.id), style: {
382
+ flex: '1', padding: 0, border: `3px solid ${isSelected ? th.primaryColor : 'transparent'}`,
383
+ borderRadius: '10px', overflow: 'hidden', cursor: 'pointer', backgroundColor: 'transparent',
384
+ outline: 'none', minWidth: 0,
385
+ }, children: (0, jsx_runtime_1.jsx)("img", { src: item.imageUrl, alt: item.title || '', style: { width: '100%', aspectRatio: '4/3', objectFit: 'cover', display: 'block' } }) }, item.id));
386
+ }) }), (0, jsx_runtime_1.jsx)("button", { onClick: handleNext, disabled: carouselIndex >= gallery.length - visibleCount, style: {
387
+ width: '36px', height: '36px', borderRadius: '50%', border: `1px solid ${th.borderColor}`,
388
+ backgroundColor: th.cardBackground, color: th.textColor,
389
+ cursor: carouselIndex >= gallery.length - visibleCount ? 'not-allowed' : 'pointer',
390
+ opacity: carouselIndex >= gallery.length - visibleCount ? 0.3 : 1, flexShrink: 0,
391
+ display: 'flex', alignItems: 'center', justifyContent: 'center',
392
+ }, children: (0, jsx_runtime_1.jsx)("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: (0, jsx_runtime_1.jsx)("polyline", { points: "9 18 15 12 9 6" }) }) })] })) : null] }), (0, jsx_runtime_1.jsxs)("div", { className: "gifs\u00EDa-layout", children: [(0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', flexDirection: 'column', gap: '12px' }, children: [(0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', alignItems: 'center', gap: '8px' }, children: [(0, jsx_runtime_1.jsx)(CameraBadge, { color: th.primaryColor }), (0, jsx_runtime_1.jsx)("span", { style: { fontSize: '16px', fontWeight: 700, color: th.primaryColor }, children: t.photoSectionTitle })] }), (0, jsx_runtime_1.jsxs)("div", { className: "gifs\u00EDa-checker", onDrop: handleDrop, onDragOver: handleDragOver, style: {
393
+ position: 'relative', borderRadius: '10px', border: `2px dashed ${th.borderColor}`,
394
+ minHeight: '320px', display: 'flex', alignItems: 'center', justifyContent: 'center',
395
+ overflow: 'hidden', cursor: uploadedImageBase64 ? 'default' : 'pointer',
396
+ }, onClick: !uploadedImageBase64 ? handleUploadClick : undefined, children: [(0, jsx_runtime_1.jsx)("button", { onClick: (e) => { e.stopPropagation(); handleClipboardButtonClick(); }, title: uploadedImageBase64 ? t.resetTooltip : t.pasteImageTooltip, style: {
397
+ position: 'absolute', top: '12px', right: '12px', zIndex: 20,
398
+ width: '40px', height: '40px', borderRadius: '50%', border: 'none',
399
+ backgroundColor: th.primaryColor, color: '#FFFFFF',
400
+ display: 'flex', alignItems: 'center', justifyContent: 'center',
401
+ cursor: 'pointer', boxShadow: '0 2px 8px rgba(0,0,0,0.3)',
402
+ }, children: uploadedImageBase64 ? ((0, jsx_runtime_1.jsxs)("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: [(0, jsx_runtime_1.jsx)("polyline", { points: "1 4 1 10 7 10" }), (0, jsx_runtime_1.jsx)("path", { d: "M3.51 15a9 9 0 1 0 .49-3" })] })) : ((0, jsx_runtime_1.jsxs)("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: [(0, jsx_runtime_1.jsx)("path", { d: "M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2" }), (0, jsx_runtime_1.jsx)("rect", { x: "8", y: "2", width: "8", height: "4", rx: "1", ry: "1" })] })) }), uploadedImageBase64 ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("img", { src: uploadedImageBase64, alt: "Foto subida", style: { width: '100%', height: '100%', objectFit: 'contain', position: 'absolute', inset: 0 } }), isGenerating && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("div", { style: { position: 'absolute', inset: 0, backgroundColor: 'rgba(0,0,0,0.3)', zIndex: 9 } }), (0, jsx_runtime_1.jsx)("div", { className: "gifs\u00EDa-scan-line" })] }))] })) : ((0, jsx_runtime_1.jsxs)("button", { onClick: handleUploadClick, style: {
403
+ padding: '12px 24px', borderRadius: '24px', border: 'none',
404
+ backgroundColor: th.primaryColor, color: '#FFFFFF',
405
+ fontSize: '14px', fontWeight: 600, cursor: 'pointer',
406
+ display: 'flex', alignItems: 'center', gap: '8px',
407
+ }, children: [(0, jsx_runtime_1.jsxs)("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: [(0, jsx_runtime_1.jsx)("rect", { x: "3", y: "3", width: "18", height: "18", rx: "2", ry: "2" }), (0, jsx_runtime_1.jsx)("circle", { cx: "8.5", cy: "8.5", r: "1.5" }), (0, jsx_runtime_1.jsx)("polyline", { points: "21 15 16 10 5 21" })] }), t.uploadButton] }))] }), (0, jsx_runtime_1.jsx)("button", { onClick: handleCreateGif, disabled: !uploadedImageBase64 || isGenerating, style: {
408
+ width: '100%', padding: '14px', borderRadius: '28px', border: 'none',
409
+ backgroundColor: (!uploadedImageBase64 || isGenerating) ? th.disabledColor : createBtnColor,
410
+ color: '#FFFFFF', fontSize: '15px', fontWeight: 700,
411
+ cursor: (!uploadedImageBase64 || isGenerating) ? 'not-allowed' : 'pointer',
412
+ display: 'flex', alignItems: 'center', justifyContent: 'center', gap: '8px',
413
+ transition: 'background-color 0.2s',
414
+ }, onMouseEnter: (e) => { if (uploadedImageBase64 && !isGenerating)
415
+ e.currentTarget.style.backgroundColor = th.primaryHoverColor; }, onMouseLeave: (e) => { if (uploadedImageBase64 && !isGenerating)
416
+ e.currentTarget.style.backgroundColor = createBtnColor; }, children: isGenerating ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("div", { style: { width: '16px', height: '16px', border: '2px solid rgba(255,255,255,0.3)', borderTop: '2px solid #FFFFFF', borderRadius: '50%', animation: 'gifsía-spin 1s linear infinite' } }), t.creatingGifButton] })) : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: (0, jsx_runtime_1.jsx)("polygon", { points: "13 2 3 14 12 14 11 22 21 10 12 10 13 2" }) }), t.createGifButton] })) })] }), (0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', flexDirection: 'column', gap: '12px' }, children: [(0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', alignItems: 'center', gap: '8px' }, children: [(0, jsx_runtime_1.jsx)(GifBadge, { color: th.primaryColor }), (0, jsx_runtime_1.jsx)("span", { style: { fontSize: '16px', fontWeight: 700, color: th.primaryColor }, children: t.gifSectionTitle })] }), (0, jsx_runtime_1.jsx)("div", { className: "gifs\u00EDa-checker", style: {
417
+ position: 'relative', borderRadius: '10px', border: `2px dashed ${th.borderColor}`,
418
+ minHeight: '320px', display: 'flex', alignItems: 'center', justifyContent: 'center',
419
+ overflow: 'hidden', flex: 1,
420
+ }, children: genError ? ((0, jsx_runtime_1.jsx)("p", { style: { color: '#F87171', fontSize: '14px', textAlign: 'center', padding: '24px' }, children: genError })) : generatedGifUrl ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("img", { src: generatedGifUrl, alt: "GIF generado", style: { width: '100%', height: '100%', objectFit: 'contain', position: 'absolute', inset: 0 } }), (0, jsx_runtime_1.jsx)("button", { onClick: () => window.open(generatedGifUrl, '_blank'), style: {
421
+ position: 'absolute', bottom: '12px', right: '12px', zIndex: 20,
422
+ width: '40px', height: '40px', borderRadius: '50%', border: 'none',
423
+ backgroundColor: th.primaryColor, color: '#FFFFFF',
424
+ display: 'flex', alignItems: 'center', justifyContent: 'center',
425
+ cursor: 'pointer', boxShadow: '0 2px 8px rgba(0,0,0,0.3)',
426
+ }, children: (0, jsx_runtime_1.jsx)("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: (0, jsx_runtime_1.jsx)("path", { d: "M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3" }) }) })] })) : isGenerating ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [selectedGalleryId !== null && gallery.find(g => g.id === selectedGalleryId) && ((0, jsx_runtime_1.jsx)("img", { src: gallery.find(g => g.id === selectedGalleryId).imageUrl, alt: "", style: { position: 'absolute', inset: 0, width: '100%', height: '100%', objectFit: 'cover', filter: 'blur(4px)', opacity: 0.5 } })), (0, jsx_runtime_1.jsxs)("div", { style: { position: 'relative', zIndex: 10, width: '80%', textAlign: 'center' }, children: [(0, jsx_runtime_1.jsx)("div", { style: { backgroundColor: 'rgba(0,0,0,0.6)', borderRadius: '8px', padding: '4px 12px', marginBottom: '8px' }, children: (0, jsx_runtime_1.jsx)("span", { style: { fontSize: '14px', color: '#FFFFFF', fontWeight: 600 }, children: queuePosition !== null && queuePosition > 0
427
+ ? `${t.queueText} #${queuePosition}`
428
+ : `${progressPercent !== null && progressPercent !== void 0 ? progressPercent : 0}%` }) }), (0, jsx_runtime_1.jsx)("div", { style: { width: '100%', height: '8px', backgroundColor: 'rgba(255,255,255,0.2)', borderRadius: '4px', overflow: 'hidden' }, children: (0, jsx_runtime_1.jsx)("div", { style: {
429
+ height: '100%', width: `${progressPercent !== null && progressPercent !== void 0 ? progressPercent : 0}%`,
430
+ backgroundColor: th.primaryColor, borderRadius: '4px',
431
+ transition: 'width 0.3s ease',
432
+ } }) })] })] })) : ((0, jsx_runtime_1.jsx)("p", { style: { color: th.textSecondaryColor, fontSize: '14px', textAlign: 'center', padding: '24px' }, children: t.emptyGifText })) }), (0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', gap: '10px' }, children: [(0, jsx_runtime_1.jsx)("button", { onClick: handleCopyLink, disabled: !generatedGifUrl, style: {
433
+ flex: 1, padding: '12px', borderRadius: '24px',
434
+ border: `1px solid ${generatedGifUrl ? th.primaryColor : th.borderColor}`,
435
+ backgroundColor: 'transparent',
436
+ color: generatedGifUrl ? th.primaryColor : th.textSecondaryColor,
437
+ fontSize: '14px', fontWeight: 600,
438
+ cursor: generatedGifUrl ? 'pointer' : 'not-allowed',
439
+ display: 'flex', alignItems: 'center', justifyContent: 'center', gap: '6px',
440
+ opacity: generatedGifUrl ? 1 : 0.5,
441
+ transition: 'all 0.2s',
442
+ }, children: copySuccess ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("svg", { width: "14", height: "14", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: (0, jsx_runtime_1.jsx)("polyline", { points: "20 6 9 17 4 12" }) }), t.linkCopiedText] })) : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)("svg", { width: "14", height: "14", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: [(0, jsx_runtime_1.jsx)("path", { d: "M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71" }), (0, jsx_runtime_1.jsx)("path", { d: "M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71" })] }), t.copyLinkButton] })) }), (0, jsx_runtime_1.jsxs)("button", { onClick: handleDownload, disabled: !generatedGifUrl, style: {
443
+ flex: 1, padding: '12px', borderRadius: '24px',
444
+ border: `1px solid ${generatedGifUrl ? th.primaryColor : th.borderColor}`,
445
+ backgroundColor: generatedGifUrl ? th.primaryColor : 'transparent',
446
+ color: generatedGifUrl ? '#FFFFFF' : th.textSecondaryColor,
447
+ fontSize: '14px', fontWeight: 600,
448
+ cursor: generatedGifUrl ? 'pointer' : 'not-allowed',
449
+ display: 'flex', alignItems: 'center', justifyContent: 'center', gap: '6px',
450
+ opacity: generatedGifUrl ? 1 : 0.5,
451
+ transition: 'all 0.2s',
452
+ }, onMouseEnter: (e) => { if (generatedGifUrl)
453
+ e.currentTarget.style.backgroundColor = th.primaryHoverColor; }, onMouseLeave: (e) => { if (generatedGifUrl)
454
+ e.currentTarget.style.backgroundColor = th.primaryColor; }, children: [(0, jsx_runtime_1.jsxs)("svg", { width: "14", height: "14", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", children: [(0, jsx_runtime_1.jsx)("path", { d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" }), (0, jsx_runtime_1.jsx)("polyline", { points: "7 10 12 15 17 10" }), (0, jsx_runtime_1.jsx)("line", { x1: "12", y1: "15", x2: "12", y2: "3" })] }), t.downloadButton] })] })] })] })] }));
455
+ }
456
+ function GifsIaForYouCard({ title, description, ctaText, ctaHref, desktopImage, mobileImage, imageAlt = '', imageOnRight = true, titleColor = '#001B5E', descriptionColor = '#001B5E', ctaColor = '#6C63FF', ctaHoverColor = '#5a52d5', backgroundColor = '#F9F9F9', paddingClass = 'py-12 md:py-16 lg:py-20', }) {
457
+ const effectiveMobileImage = mobileImage || desktopImage;
458
+ const imageColumn = ((0, jsx_runtime_1.jsxs)("div", { className: `${imageOnRight ? '' : 'order-2 md:order-1'} overflow-hidden`, children: [(0, jsx_runtime_1.jsx)("img", { src: desktopImage, alt: imageAlt, className: "hidden md:block w-full h-auto object-contain" }), (0, jsx_runtime_1.jsx)("img", { src: effectiveMobileImage, alt: imageAlt, className: "block md:hidden w-full h-auto object-contain" })] }));
459
+ const contentColumn = ((0, jsx_runtime_1.jsxs)("div", { className: `${imageOnRight ? '' : 'order-1 md:order-2'} text-center md:text-left`, children: [(0, jsx_runtime_1.jsx)("h3", { className: "text-2xl md:text-3xl font-bold mb-4 md:mb-6", style: { color: titleColor }, children: title }), (0, jsx_runtime_1.jsx)("p", { className: "text-base md:text-lg mb-6 md:mb-8 leading-relaxed", style: { color: descriptionColor }, children: description }), (0, jsx_runtime_1.jsx)("a", { href: ctaHref, className: "inline-block text-white font-bold text-lg px-8 py-4 rounded-full transition-colors duration-300 cursor-pointer", style: { backgroundColor: ctaColor }, onMouseEnter: (e) => { e.currentTarget.style.backgroundColor = ctaHoverColor; }, onMouseLeave: (e) => { e.currentTarget.style.backgroundColor = ctaColor; }, children: ctaText })] }));
460
+ return ((0, jsx_runtime_1.jsx)("section", { className: "w-full", style: { backgroundColor }, children: (0, jsx_runtime_1.jsx)("div", { className: `container mx-auto px-4 ${paddingClass}`, children: (0, jsx_runtime_1.jsx)("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-8 md:gap-12 lg:gap-16 items-start", children: imageOnRight ? (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [contentColumn, imageColumn] }) : (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [imageColumn, contentColumn] }) }) }) }));
461
+ }
462
+ exports.default = GifsIa;
463
+ //# sourceMappingURL=GifsIa.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GifsIa.js","sourceRoot":"","sources":["../../src/components/GifsIa.tsx"],"names":[],"mappings":"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"}