limbo-component 1.0.0

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 (107) hide show
  1. package/CHANGELOG.md +124 -0
  2. package/LICENSE +15 -0
  3. package/README.md +153 -0
  4. package/dist/favicon.ico +0 -0
  5. package/dist/index.d.ts +239 -0
  6. package/dist/limbo.cjs.js +31 -0
  7. package/dist/limbo.cjs.map +1 -0
  8. package/dist/limbo.css +1 -0
  9. package/dist/limbo.es.js +40021 -0
  10. package/dist/limbo.es.map +1 -0
  11. package/dist/limbo.min.js +49 -0
  12. package/dist/limbo.min.js.map +1 -0
  13. package/dist/limbo.umd.js +58 -0
  14. package/dist/limbo.umd.js.map +1 -0
  15. package/dist/types/App.d.ts +18 -0
  16. package/dist/types/App.d.ts.map +1 -0
  17. package/dist/types/components/CropperView.d.ts +10 -0
  18. package/dist/types/components/CropperView.d.ts.map +1 -0
  19. package/dist/types/components/Gallery.d.ts +19 -0
  20. package/dist/types/components/Gallery.d.ts.map +1 -0
  21. package/dist/types/components/ImageCard.d.ts +16 -0
  22. package/dist/types/components/ImageCard.d.ts.map +1 -0
  23. package/dist/types/components/ImageManager.d.ts +5 -0
  24. package/dist/types/components/ImageManager.d.ts.map +1 -0
  25. package/dist/types/components/Loader.d.ts +4 -0
  26. package/dist/types/components/Loader.d.ts.map +1 -0
  27. package/dist/types/components/TabAI.d.ts +7 -0
  28. package/dist/types/components/TabAI.d.ts.map +1 -0
  29. package/dist/types/components/TabPortals.d.ts +6 -0
  30. package/dist/types/components/TabPortals.d.ts.map +1 -0
  31. package/dist/types/components/TabStock.d.ts +7 -0
  32. package/dist/types/components/TabStock.d.ts.map +1 -0
  33. package/dist/types/components/TabUpload.d.ts +10 -0
  34. package/dist/types/components/TabUpload.d.ts.map +1 -0
  35. package/dist/types/components/Tabs.d.ts +6 -0
  36. package/dist/types/components/Tabs.d.ts.map +1 -0
  37. package/dist/types/components/UploadForm.d.ts +7 -0
  38. package/dist/types/components/UploadForm.d.ts.map +1 -0
  39. package/dist/types/core/AutoInputManager.d.ts +221 -0
  40. package/dist/types/core/AutoInputManager.d.ts.map +1 -0
  41. package/dist/types/core/ConfigManager.d.ts +294 -0
  42. package/dist/types/core/ConfigManager.d.ts.map +1 -0
  43. package/dist/types/core/EventManager.d.ts +36 -0
  44. package/dist/types/core/EventManager.d.ts.map +1 -0
  45. package/dist/types/core/InstanceManager.d.ts +48 -0
  46. package/dist/types/core/InstanceManager.d.ts.map +1 -0
  47. package/dist/types/core/LimboCore.d.ts +92 -0
  48. package/dist/types/core/LimboCore.d.ts.map +1 -0
  49. package/dist/types/core/ModalManager.d.ts +140 -0
  50. package/dist/types/core/ModalManager.d.ts.map +1 -0
  51. package/dist/types/hooks/useAiImage.d.ts +10 -0
  52. package/dist/types/hooks/useAiImage.d.ts.map +1 -0
  53. package/dist/types/hooks/useAiServices.d.ts +7 -0
  54. package/dist/types/hooks/useAiServices.d.ts.map +1 -0
  55. package/dist/types/hooks/useContainerQuery.d.ts +28 -0
  56. package/dist/types/hooks/useContainerQuery.d.ts.map +1 -0
  57. package/dist/types/hooks/useCropper.d.ts +43 -0
  58. package/dist/types/hooks/useCropper.d.ts.map +1 -0
  59. package/dist/types/hooks/useDeleteImage.d.ts +7 -0
  60. package/dist/types/hooks/useDeleteImage.d.ts.map +1 -0
  61. package/dist/types/hooks/useExternalImages.d.ts +10 -0
  62. package/dist/types/hooks/useExternalImages.d.ts.map +1 -0
  63. package/dist/types/hooks/useImage.d.ts +6 -0
  64. package/dist/types/hooks/useImage.d.ts.map +1 -0
  65. package/dist/types/hooks/useImageParams.d.ts +8 -0
  66. package/dist/types/hooks/useImageParams.d.ts.map +1 -0
  67. package/dist/types/hooks/useImages.d.ts +8 -0
  68. package/dist/types/hooks/useImages.d.ts.map +1 -0
  69. package/dist/types/hooks/useIsAllowedAll.d.ts +7 -0
  70. package/dist/types/hooks/useIsAllowedAll.d.ts.map +1 -0
  71. package/dist/types/hooks/useMobileDetection.d.ts +32 -0
  72. package/dist/types/hooks/useMobileDetection.d.ts.map +1 -0
  73. package/dist/types/hooks/usePortalSources.d.ts +7 -0
  74. package/dist/types/hooks/usePortalSources.d.ts.map +1 -0
  75. package/dist/types/hooks/useStockImages.d.ts +10 -0
  76. package/dist/types/hooks/useStockImages.d.ts.map +1 -0
  77. package/dist/types/hooks/useStockServices.d.ts +7 -0
  78. package/dist/types/hooks/useStockServices.d.ts.map +1 -0
  79. package/dist/types/hooks/useUploadImage.d.ts +8 -0
  80. package/dist/types/hooks/useUploadImage.d.ts.map +1 -0
  81. package/dist/types/index-refactored.d.ts +9 -0
  82. package/dist/types/index-refactored.d.ts.map +1 -0
  83. package/dist/types/services/aiApi.d.ts +3 -0
  84. package/dist/types/services/aiApi.d.ts.map +1 -0
  85. package/dist/types/services/apiClient.d.ts +31 -0
  86. package/dist/types/services/apiClient.d.ts.map +1 -0
  87. package/dist/types/services/assetsApi.d.ts +48 -0
  88. package/dist/types/services/assetsApi.d.ts.map +1 -0
  89. package/dist/types/services/authService.d.ts +65 -0
  90. package/dist/types/services/authService.d.ts.map +1 -0
  91. package/dist/types/services/imageParamsApi.d.ts +5 -0
  92. package/dist/types/services/imageParamsApi.d.ts.map +1 -0
  93. package/dist/types/services/portalsApi.d.ts +3 -0
  94. package/dist/types/services/portalsApi.d.ts.map +1 -0
  95. package/dist/types/services/responseAdapters.d.ts +43 -0
  96. package/dist/types/services/responseAdapters.d.ts.map +1 -0
  97. package/dist/types/services/stockApi.d.ts +4 -0
  98. package/dist/types/services/stockApi.d.ts.map +1 -0
  99. package/dist/types/utils/ContainerQueryDetector.d.ts +45 -0
  100. package/dist/types/utils/ContainerQueryDetector.d.ts.map +1 -0
  101. package/dist/types/utils/CropperManager.d.ts +88 -0
  102. package/dist/types/utils/CropperManager.d.ts.map +1 -0
  103. package/dist/types/utils/ThemeManager.d.ts +1002 -0
  104. package/dist/types/utils/ThemeManager.d.ts.map +1 -0
  105. package/dist/types/utils/i18n.d.ts +255 -0
  106. package/dist/types/utils/i18n.d.ts.map +1 -0
  107. package/package.json +84 -0
@@ -0,0 +1,18 @@
1
+ export default function App({ apiKey, prod, url, features, modeUI, ui, callbacks, instanceId, }: {
2
+ apiKey: any;
3
+ prod?: boolean;
4
+ url?: boolean;
5
+ features?: string[];
6
+ modeUI?: string;
7
+ ui?: {
8
+ showActions: string[];
9
+ hideActions: any[];
10
+ theme: string;
11
+ language: string;
12
+ compactMode: boolean;
13
+ showTabs: boolean;
14
+ };
15
+ callbacks?: {};
16
+ instanceId?: any;
17
+ }): import("react/jsx-runtime").JSX.Element;
18
+ //# sourceMappingURL=App.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../src/App.jsx"],"names":[],"mappings":"AAUA;;;;;;;;;;;;;;;;4CAqQC"}
@@ -0,0 +1,10 @@
1
+ export default function CropperView({ image, onSave, onCancel, onDelete, deleting, apiKey, prod, }: {
2
+ image: any;
3
+ onSave: any;
4
+ onCancel: any;
5
+ onDelete: any;
6
+ deleting?: boolean;
7
+ apiKey: any;
8
+ prod?: boolean;
9
+ }): import("react/jsx-runtime").JSX.Element;
10
+ //# sourceMappingURL=CropperView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CropperView.d.ts","sourceRoot":"","sources":["../../../src/components/CropperView.jsx"],"names":[],"mappings":"AAMA;;;;;;;;4CA+pCC"}
@@ -0,0 +1,19 @@
1
+ export default function Gallery({ apiKey, prod, onSelect, onCrop, onDelete, deletingId, images, loading, error, allowedActions, }: {
2
+ apiKey: any;
3
+ prod: any;
4
+ onSelect: any;
5
+ onCrop: any;
6
+ onDelete: any;
7
+ deletingId: any;
8
+ images: any;
9
+ loading: any;
10
+ error: any;
11
+ allowedActions?: {
12
+ select: boolean;
13
+ download: boolean;
14
+ copy: boolean;
15
+ delete: boolean;
16
+ crop: boolean;
17
+ };
18
+ }): import("react/jsx-runtime").JSX.Element;
19
+ //# sourceMappingURL=Gallery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Gallery.d.ts","sourceRoot":"","sources":["../../../src/components/Gallery.jsx"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;4CAmMC"}
@@ -0,0 +1,16 @@
1
+ export default function ImageCard({ image, onDelete, onCrop, onSelect, thumbnailSize, isDeleting, allowedActions, }: {
2
+ image: any;
3
+ onDelete: any;
4
+ onCrop: any;
5
+ onSelect: any;
6
+ thumbnailSize?: number;
7
+ isDeleting?: boolean;
8
+ allowedActions?: {
9
+ select: boolean;
10
+ download: boolean;
11
+ copy: boolean;
12
+ delete: boolean;
13
+ crop: boolean;
14
+ };
15
+ }): import("react/jsx-runtime").JSX.Element;
16
+ //# sourceMappingURL=ImageCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImageCard.d.ts","sourceRoot":"","sources":["../../../src/components/ImageCard.jsx"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;4CAiUC"}
@@ -0,0 +1,5 @@
1
+ export default function ImageManager({ apiKey, prod }: {
2
+ apiKey: any;
3
+ prod?: boolean;
4
+ }): import("react/jsx-runtime").JSX.Element;
5
+ //# sourceMappingURL=ImageManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImageManager.d.ts","sourceRoot":"","sources":["../../../src/components/ImageManager.jsx"],"names":[],"mappings":"AAGA;;;4CAOC"}
@@ -0,0 +1,4 @@
1
+ export default function Loader({ text }: {
2
+ text?: string;
3
+ }): import("react/jsx-runtime").JSX.Element;
4
+ //# sourceMappingURL=Loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Loader.d.ts","sourceRoot":"","sources":["../../../src/components/Loader.jsx"],"names":[],"mappings":"AAEA;;4CAgCC"}
@@ -0,0 +1,7 @@
1
+ export default function TabAI({ apiKey, prod, disabled, onGenerated }: {
2
+ apiKey: any;
3
+ prod: any;
4
+ disabled: any;
5
+ onGenerated: any;
6
+ }): import("react/jsx-runtime").JSX.Element;
7
+ //# sourceMappingURL=TabAI.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabAI.d.ts","sourceRoot":"","sources":["../../../src/components/TabAI.jsx"],"names":[],"mappings":"AAKA;;;;;4CA+NC"}
@@ -0,0 +1,6 @@
1
+ export default function TabPortals({ apiKey, prod, disabled }: {
2
+ apiKey: any;
3
+ prod: any;
4
+ disabled: any;
5
+ }): import("react/jsx-runtime").JSX.Element;
6
+ //# sourceMappingURL=TabPortals.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabPortals.d.ts","sourceRoot":"","sources":["../../../src/components/TabPortals.jsx"],"names":[],"mappings":"AAGA;;;;4CA2BC"}
@@ -0,0 +1,7 @@
1
+ export default function TabStock({ apiKey, prod, disabled, onSelected }: {
2
+ apiKey: any;
3
+ prod: any;
4
+ disabled: any;
5
+ onSelected: any;
6
+ }): import("react/jsx-runtime").JSX.Element;
7
+ //# sourceMappingURL=TabStock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabStock.d.ts","sourceRoot":"","sources":["../../../src/components/TabStock.jsx"],"names":[],"mappings":"AAKA;;;;;4CA0OC"}
@@ -0,0 +1,10 @@
1
+ export default function TabUpload({ file, setFile, previewUrl, setPreviewUrl, fileInputRef, onUpload, disabled }: {
2
+ file: any;
3
+ setFile: any;
4
+ previewUrl: any;
5
+ setPreviewUrl: any;
6
+ fileInputRef: any;
7
+ onUpload: any;
8
+ disabled: any;
9
+ }): import("react/jsx-runtime").JSX.Element;
10
+ //# sourceMappingURL=TabUpload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabUpload.d.ts","sourceRoot":"","sources":["../../../src/components/TabUpload.jsx"],"names":[],"mappings":"AAEA;;;;;;;;4CA6FC"}
@@ -0,0 +1,6 @@
1
+ export default function Tabs({ tabs, active, onChange }: {
2
+ tabs: any;
3
+ active: any;
4
+ onChange: any;
5
+ }): import("react/jsx-runtime").JSX.Element;
6
+ //# sourceMappingURL=Tabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../../src/components/Tabs.jsx"],"names":[],"mappings":"AAGA;;;;4CAqGC"}
@@ -0,0 +1,7 @@
1
+ export default function UploadForm({ onUpload, disabled, apiKey, prod, }: {
2
+ onUpload: any;
3
+ disabled?: boolean;
4
+ apiKey: any;
5
+ prod?: boolean;
6
+ }): import("react/jsx-runtime").JSX.Element;
7
+ //# sourceMappingURL=UploadForm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UploadForm.d.ts","sourceRoot":"","sources":["../../../src/components/UploadForm.jsx"],"names":[],"mappings":"AAaA;;;;;4CAwHC"}
@@ -0,0 +1,221 @@
1
+ /**
2
+ * 🔄 GESTIÓN DE INPUTS AUTOMÁTICOS
3
+ * Responsabilidad única: Manejar inputs con datasets automáticamente
4
+ */
5
+ export class AutoInputManager {
6
+ config: any;
7
+ instances: Map<any, any>;
8
+ observer: MutationObserver;
9
+ initialized: boolean;
10
+ /**
11
+ * Configurar sistema de inputs automáticos
12
+ */
13
+ configure(options: any, configManager: any, eventManager: any): this;
14
+ configManager: any;
15
+ eventManager: any;
16
+ /**
17
+ * Limpiar sistema
18
+ */
19
+ cleanup(): void;
20
+ /**
21
+ * Obtener estadísticas
22
+ */
23
+ getStats(): {
24
+ configured: boolean;
25
+ totalInputs: number;
26
+ dataset: any;
27
+ returnType: any;
28
+ };
29
+ /**
30
+ * Inicializar sistema
31
+ */
32
+ _initialize(): void;
33
+ /**
34
+ * Escanear inputs existentes
35
+ */
36
+ _scanExistingInputs(): void;
37
+ /**
38
+ * Procesar input individual
39
+ */
40
+ _processInput(input: any): void;
41
+ /**
42
+ * Crear botón de activación
43
+ */
44
+ _createButton(input: any): HTMLButtonElement;
45
+ /**
46
+ * Aplicar estilos al botón
47
+ */
48
+ _styleButton(button: any, inputConfig: any): void;
49
+ /**
50
+ * Adjuntar eventos al botón
51
+ */
52
+ _attachButtonEvents(button: any, input: any): void;
53
+ /**
54
+ * Manejar click del botón
55
+ */
56
+ _handleButtonClick(input: any): void;
57
+ /**
58
+ * Manejar selección de imagen
59
+ */
60
+ _handleImageSelection(input: any, imageData: any): Promise<void>;
61
+ /**
62
+ * Método legacy para compatibilidad (fallback)
63
+ */
64
+ _handleImageSelectionLegacy(input: any, imageData: any): void;
65
+ /**
66
+ * Crear objeto resultado con múltiples formatos
67
+ */
68
+ _createFormattedResult(imageData: any, inputConfig: any): {
69
+ url: any;
70
+ base64: any;
71
+ assetId: any;
72
+ fileName: any;
73
+ object: {
74
+ url: any;
75
+ assetId: any;
76
+ fileName: any;
77
+ mime: any;
78
+ width: any;
79
+ height: any;
80
+ size: any;
81
+ created: any;
82
+ metadata: any;
83
+ };
84
+ json: string;
85
+ metadata: {
86
+ width: any;
87
+ height: any;
88
+ size: any;
89
+ format: any;
90
+ quality: any;
91
+ aspectRatio: number;
92
+ };
93
+ };
94
+ /**
95
+ * Formatear datos de imagen según configuración
96
+ */
97
+ _formatImageData(imageData: any, inputConfig?: any): Promise<any>;
98
+ /**
99
+ * Crear configuración para modal
100
+ */
101
+ _createModalConfig(inputConfig: any): {
102
+ mode: any;
103
+ modeUI: any;
104
+ features: any;
105
+ modalSize: any;
106
+ title: any;
107
+ cropper: any;
108
+ ui: {
109
+ showActions: string[];
110
+ hideActions: any[];
111
+ showTabs: boolean;
112
+ theme: any;
113
+ compact: any;
114
+ showPreview: any;
115
+ };
116
+ validation: {
117
+ maxSize: any;
118
+ formats: any;
119
+ minWidth: any;
120
+ minHeight: any;
121
+ maxWidth: any;
122
+ maxHeight: any;
123
+ required: any;
124
+ };
125
+ behavior: {
126
+ allowMultiple: any;
127
+ closeOnSelect: boolean;
128
+ autoAssign: any;
129
+ };
130
+ returnConfig: {
131
+ format: any;
132
+ quality: any;
133
+ outputFormat: any;
134
+ };
135
+ inputMeta: {
136
+ inputId: any;
137
+ inputName: any;
138
+ inputType: any;
139
+ placeholder: any;
140
+ };
141
+ };
142
+ /**
143
+ * Obtener configuración del cropper
144
+ */
145
+ _getCropperConfig(inputConfig: any): any;
146
+ /**
147
+ * Determinar si mostrar tabs según la configuración
148
+ */
149
+ _shouldShowTabs(inputConfig: any): boolean;
150
+ /**
151
+ * Obtener acciones de UI permitidas según configuración
152
+ */
153
+ _getUIActions(inputConfig: any): string[];
154
+ /**
155
+ * Obtener ID único del input
156
+ */
157
+ _getInputId(input: any): any;
158
+ /**
159
+ * Validar input
160
+ */
161
+ _validateInput(input: any): input is HTMLInputElement;
162
+ /**
163
+ * Obtener configuración específica del input desde atributos
164
+ */
165
+ _getInputConfig(input: any): {
166
+ return: any;
167
+ mode: any;
168
+ features: any;
169
+ crop: any;
170
+ quality: any;
171
+ format: any;
172
+ modeUI: any;
173
+ modalSize: any;
174
+ theme: any;
175
+ compact: boolean;
176
+ maxSize: number;
177
+ formats: any;
178
+ minWidth: any;
179
+ minHeight: any;
180
+ maxWidth: any;
181
+ maxHeight: any;
182
+ buttonText: any;
183
+ buttonStyle: any;
184
+ buttonClass: any;
185
+ showPreview: boolean;
186
+ allowMultiple: boolean;
187
+ autoAssign: boolean;
188
+ placeholder: any;
189
+ description: any;
190
+ required: boolean;
191
+ disabled: boolean;
192
+ inputId: any;
193
+ inputName: any;
194
+ inputType: any;
195
+ };
196
+ /**
197
+ * Generar ID único para input sin ID
198
+ */
199
+ _generateInputId(): string;
200
+ /**
201
+ * Ocultar input original
202
+ */
203
+ _hideInput(input: any): void;
204
+ /**
205
+ * Insertar botón en el DOM
206
+ */
207
+ _insertButton(input: any, button: any): void;
208
+ /**
209
+ * Restaurar input original
210
+ */
211
+ _restoreInput(input: any, button: any): void;
212
+ /**
213
+ * Configurar observer para elementos dinámicos
214
+ */
215
+ _setupObserver(): void;
216
+ /**
217
+ * Escanear nodo en busca de inputs
218
+ */
219
+ _scanNodeForInputs(node: any): void;
220
+ }
221
+ //# sourceMappingURL=AutoInputManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AutoInputManager.d.ts","sourceRoot":"","sources":["../../../src/core/AutoInputManager.js"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;IAEQ,YAAkB;IAClB,yBAA0B;IAC1B,2BAAoB;IACpB,qBAAwB;IAG5B;;OAEG;IACH,qEA6CC;IALG,mBAAkC;IAClC,kBAAgC;IAMpC;;OAEG;IACH,gBAcC;IAED;;OAEG;IACH;;;;;MAOC;IAED;;OAEG;IACH,oBAWC;IAED;;OAEG;IACH,4BAKC;IAED;;OAEG;IACH,gCA6BC;IAED;;OAEG;IACH,6CA6BC;IAED;;OAEG;IACH,kDAmFC;IAED;;OAEG;IACH,mDAKC;IAEH;;OAEG;IACH,qCAUC;IAEC;;OAEG;IACH,iEA8EC;IAED;;OAEG;IACH,8DA+BC;IAED;;OAEG;IACH;;;;;;;;;;;;;;;;;;;;;;;;;MA0CC;IAED;;OAEG;IACH,kEAyCC;IAED;;OAEG;IACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAsDC;IAED;;OAEG;IACH,yCAqEC;IAED;;OAEG;IACH,2CAWC;IAED;;OAEG;IACH,0CA4BC;IAED;;OAEG;IACH,6BAEC;IAED;;OAEG;IACH,sDAEC;IAED;;OAEG;IACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAgFC;IAED;;OAEG;IACH,2BAIC;IAED;;OAEG;IACH,6BAEC;IAED;;OAEG;IACH,6CAEC;IAED;;OAEG;IACH,6CAKC;IAED;;OAEG;IACH,uBAeC;IAED;;OAEG;IACH,oCAaC;CACJ"}