@jesusacd/mediafire 1.2.0 → 1.3.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.
package/README.md CHANGED
@@ -9,7 +9,7 @@ Complete MediaFire SDK for Node.js. **Just use your email and password** to acce
9
9
  - 🔐 **Simple Authentication** - Just email and password, no API keys needed
10
10
  - 📁 **Full Management** - Files and folders (create, move, copy, delete)
11
11
  - 📤 **File Upload** - Supports large files
12
- - 🔍 **Search** - Search files in your account
12
+ - 🔍 **Smart Search** - Advanced search with automatic keyword extraction
13
13
  - 🔗 **Direct Links** - Get download URLs
14
14
  - 📊 **TypeScript** - Full type definitions included
15
15
 
@@ -138,9 +138,25 @@ const fileInfo = await client.files.getInfo("quickKey");
138
138
  const links = await client.files.getLinks("quickKey");
139
139
  // { viewLink, normalDownload, directDownload }
140
140
 
141
- // Search files
141
+ // Search files (basic)
142
142
  const results = await client.files.search("document");
143
- // { files: [...], total }
143
+ // { items: [...], total }
144
+
145
+ // Smart search (recommended for complex names)
146
+ const results = await client.files.smartSearch(
147
+ "La empresa de sillas (2025) Temporada 1 [1080p] {MAX} WEB-DL",
148
+ );
149
+ // Automatically extracts unique keywords and filters results
150
+
151
+ // Smart search with filters
152
+ const folders = await client.files.smartSearch("My Series", {
153
+ filter: "folders", // 'files' | 'folders' | 'everything'
154
+ });
155
+
156
+ // Exact match
157
+ const exact = await client.files.smartSearch("exact name", {
158
+ exactMatch: true,
159
+ });
144
160
 
145
161
  // Change privacy
146
162
  await client.files.setPrivacy("quickKey", "public");
@@ -270,9 +286,12 @@ for (const file of files) {
270
286
  ### Search and download
271
287
 
272
288
  ```javascript
273
- const results = await client.files.search("report");
289
+ // Use smartSearch for complex file names
290
+ const results = await client.files.smartSearch(
291
+ "Prison Break (2005-2017) Temporada 1-5 [Full 1080p]",
292
+ );
274
293
 
275
- for (const file of results.files) {
294
+ for (const file of results.items.filter((i) => !i.isFolder)) {
276
295
  const links = await client.files.getLinks(file.quickKey);
277
296
  console.log(`📄 ${file.name}`);
278
297
  console.log(` Download: ${links.directDownload}`);
@@ -320,44 +339,45 @@ const client = new MediaFireClient({
320
339
 
321
340
  ## 📋 Available Methods
322
341
 
323
- | Module | Method | Description |
324
- | ----------- | ------------------------------- | -------------------- |
325
- | **Auth** | `login(email, password)` | Log in |
326
- | | `logout()` | Log out |
327
- | | `isAuthenticated()` | Check authentication |
328
- | | `getSession()` | Get session data |
329
- | | `setSession(session)` | Restore session |
330
- | **User** | `getInfo()` | User info |
331
- | | `getStorage()` | Storage used |
332
- | **Folders** | `getContent(key, options)` | List contents |
333
- | | `getFiles(key, options)` | List files |
334
- | | `getFolders(key, options)` | List folders |
335
- | | `getInfo(key)` | Folder info |
336
- | | `create(name, parentKey)` | Create folder |
337
- | | `rename(key, newName)` | Rename |
338
- | | `move(key, destKey)` | Move |
339
- | | `copy(key, destKey)` | Copy |
340
- | | `setPrivacy(key, privacy)` | Change privacy |
341
- | | `delete(key)` | Delete (trash) |
342
- | | `purge(key)` | Permanently delete |
343
- | **Files** | `getInfo(quickKey)` | File info |
344
- | | `getLinks(quickKey)` | Get links |
345
- | | `search(query, options)` | Search files |
346
- | | `setPrivacy(quickKey, privacy)` | Change privacy |
347
- | | `makePublic(quickKey)` | Make public |
348
- | | `makePrivate(quickKey)` | Make private |
349
- | | `rename(quickKey, newName)` | Rename |
350
- | | `move(quickKey, folderKey)` | Move |
351
- | | `copy(quickKey, folderKey)` | Copy |
352
- | | `delete(quickKey)` | Delete (trash) |
353
- | | `restore(quickKey)` | Restore |
354
- | | `purge(quickKey)` | Permanently delete |
355
- | | `getVersions(quickKey)` | Version history |
356
- | | `getRecentlyModified()` | Recent files |
357
- | **Upload** | `file(path, options)` | Upload from disk |
358
- | | `buffer(buffer, name, options)` | Upload from buffer |
359
- | | `check(hash, name, size)` | Check existence |
360
- | | `instant(hash, name, size)` | Instant upload |
342
+ | Module | Method | Description |
343
+ | ----------- | ------------------------------- | -------------------------- |
344
+ | **Auth** | `login(email, password)` | Log in |
345
+ | | `logout()` | Log out |
346
+ | | `isAuthenticated()` | Check authentication |
347
+ | | `getSession()` | Get session data |
348
+ | | `setSession(session)` | Restore session |
349
+ | **User** | `getInfo()` | User info |
350
+ | | `getStorage()` | Storage used |
351
+ | **Folders** | `getContent(key, options)` | List contents |
352
+ | | `getFiles(key, options)` | List files |
353
+ | | `getFolders(key, options)` | List folders |
354
+ | | `getInfo(key)` | Folder info |
355
+ | | `create(name, parentKey)` | Create folder |
356
+ | | `rename(key, newName)` | Rename |
357
+ | | `move(key, destKey)` | Move |
358
+ | | `copy(key, destKey)` | Copy |
359
+ | | `setPrivacy(key, privacy)` | Change privacy |
360
+ | | `delete(key)` | Delete (trash) |
361
+ | | `purge(key)` | Permanently delete |
362
+ | **Files** | `getInfo(quickKey)` | File info |
363
+ | | `getLinks(quickKey)` | Get links |
364
+ | | `search(query)` | Basic search |
365
+ | | `smartSearch(query, options)` | Smart search (recommended) |
366
+ | | `setPrivacy(quickKey, privacy)` | Change privacy |
367
+ | | `makePublic(quickKey)` | Make public |
368
+ | | `makePrivate(quickKey)` | Make private |
369
+ | | `rename(quickKey, newName)` | Rename |
370
+ | | `move(quickKey, folderKey)` | Move |
371
+ | | `copy(quickKey, folderKey)` | Copy |
372
+ | | `delete(quickKey)` | Delete (trash) |
373
+ | | `restore(quickKey)` | Restore |
374
+ | | `purge(quickKey)` | Permanently delete |
375
+ | | `getVersions(quickKey)` | Version history |
376
+ | | `getRecentlyModified()` | Recent files |
377
+ | **Upload** | `file(path, options)` | Upload from disk |
378
+ | | `buffer(buffer, name, options)` | Upload from buffer |
379
+ | | `check(hash, name, size)` | Check existence |
380
+ | | `instant(hash, name, size)` | Instant upload |
361
381
 
362
382
  ---
363
383
 
@@ -52,6 +52,56 @@ export declare class FilesModule {
52
52
  * ```
53
53
  */
54
54
  search(query: string): Promise<SearchResults>;
55
+ /**
56
+ * Búsqueda inteligente que extrae palabras clave únicas del query
57
+ * y filtra los resultados para coincidir con el nombre buscado.
58
+ *
59
+ * La API de MediaFire no maneja bien queries con espacios o caracteres
60
+ * especiales, por lo que este método:
61
+ * 1. Extrae las palabras más únicas/distintivas del query
62
+ * 2. Busca usando esas palabras simples
63
+ * 3. Filtra los resultados para encontrar coincidencias reales
64
+ *
65
+ * @param query - Nombre del archivo o carpeta a buscar
66
+ * @param options - Opciones de búsqueda
67
+ * @returns Resultados filtrados que coinciden con el query
68
+ *
69
+ * @example
70
+ * ```typescript
71
+ * // Buscar con nombre completo
72
+ * const results = await client.files.smartSearch(
73
+ * 'La empresa de sillas (2025) Temporada 1 [1080p] {MAX} WEB-DL'
74
+ * );
75
+ *
76
+ * // Buscar solo carpetas
77
+ * const folders = await client.files.smartSearch('Mi Serie', {
78
+ * filter: 'folders'
79
+ * });
80
+ * ```
81
+ */
82
+ smartSearch(query: string, options?: {
83
+ /** Filtrar por tipo: 'files', 'folders', o 'everything' */
84
+ filter?: 'files' | 'folders' | 'everything';
85
+ /** Si es true, requiere coincidencia exacta del nombre (sin case-sensitive) */
86
+ exactMatch?: boolean;
87
+ }): Promise<SearchResults>;
88
+ /**
89
+ * Extrae las palabras clave más distintivas de un query de búsqueda.
90
+ * Filtra palabras comunes, años, resoluciones, etc.
91
+ */
92
+ private extractSearchKeywords;
93
+ /**
94
+ * Calcula un score de unicidad para una palabra
95
+ */
96
+ private calculateWordScore;
97
+ /**
98
+ * Verifica si un nombre contiene todas las palabras clave
99
+ */
100
+ private matchesAllKeywords;
101
+ /**
102
+ * Ordena los resultados por relevancia respecto al query original
103
+ */
104
+ private sortByRelevance;
55
105
  /**
56
106
  * Set file privacy (public or private)
57
107
  *
@@ -1 +1 @@
1
- {"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../src/modules/files.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAW,eAAe,EAAE,MAAM,QAAQ,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAe,aAAa,EAAE,MAAM,UAAU,CAAC;AAG/E;;GAEG;AACH,qBAAa,WAAW;IACV,OAAO,CAAC,UAAU;gBAAV,UAAU,EAAE,MAAM,eAAe,GAAG,IAAI;IAE5D;;;;;;;;;;;;OAYG;IACG,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAqDlD;;;;;;;;;;;;OAYG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA2BxD;;;;;;;;;;;;;OAaG;IACG,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA+DnD;;;;;;;;;;;;;;;;OAgBG;IACG,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;IAkBnF;;;;;;;;;;OAUG;IACG,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIpD;;;;;;;;;;OAUG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIrD;;;;;;;;;;;OAWG;IACG,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAkBnE;;;;;;;;;;OAUG;IACG,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAahD;;;;;;;;;;;OAWG;IACG,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAclE;;;;;;;;;;;OAWG;IACG,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAcjE;;;;;;;;;;OAUG;IACG,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAa/C;;;;;;;;;;OAUG;IACG,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAajD;;;;;;;;;;OAUG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAuBvF;;;;;;;;;OASG;IACG,mBAAmB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;CA0BjD"}
1
+ {"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../src/modules/files.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAW,eAAe,EAAE,MAAM,QAAQ,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAe,aAAa,EAAE,MAAM,UAAU,CAAC;AAG/E;;GAEG;AACH,qBAAa,WAAW;IACV,OAAO,CAAC,UAAU;gBAAV,UAAU,EAAE,MAAM,eAAe,GAAG,IAAI;IAE5D;;;;;;;;;;;;OAYG;IACG,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAqDlD;;;;;;;;;;;;OAYG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA2BxD;;;;;;;;;;;;;OAaG;IACG,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA+DnD;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACG,WAAW,CACf,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;QACP,2DAA2D;QAC3D,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,YAAY,CAAC;QAC5C,+EAA+E;QAC/E,UAAU,CAAC,EAAE,OAAO,CAAC;KACjB,GACL,OAAO,CAAC,aAAa,CAAC;IAoGzB;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAkE7B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAoB1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAe1B;;OAEG;IACH,OAAO,CAAC,eAAe;IAyBvB;;;;;;;;;;;;;;;;OAgBG;IACG,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;IAkBnF;;;;;;;;;;OAUG;IACG,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIpD;;;;;;;;;;OAUG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIrD;;;;;;;;;;;OAWG;IACG,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAkBnE;;;;;;;;;;OAUG;IACG,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAahD;;;;;;;;;;;OAWG;IACG,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAclE;;;;;;;;;;;OAWG;IACG,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAcjE;;;;;;;;;;OAUG;IACG,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAa/C;;;;;;;;;;OAUG;IACG,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAajD;;;;;;;;;;OAUG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAuBvF;;;;;;;;;OASG;IACG,mBAAmB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;CA0BjD"}
@@ -139,6 +139,228 @@ class FilesModule {
139
139
  total: items.length
140
140
  };
141
141
  }
142
+ /**
143
+ * Búsqueda inteligente que extrae palabras clave únicas del query
144
+ * y filtra los resultados para coincidir con el nombre buscado.
145
+ *
146
+ * La API de MediaFire no maneja bien queries con espacios o caracteres
147
+ * especiales, por lo que este método:
148
+ * 1. Extrae las palabras más únicas/distintivas del query
149
+ * 2. Busca usando esas palabras simples
150
+ * 3. Filtra los resultados para encontrar coincidencias reales
151
+ *
152
+ * @param query - Nombre del archivo o carpeta a buscar
153
+ * @param options - Opciones de búsqueda
154
+ * @returns Resultados filtrados que coinciden con el query
155
+ *
156
+ * @example
157
+ * ```typescript
158
+ * // Buscar con nombre completo
159
+ * const results = await client.files.smartSearch(
160
+ * 'La empresa de sillas (2025) Temporada 1 [1080p] {MAX} WEB-DL'
161
+ * );
162
+ *
163
+ * // Buscar solo carpetas
164
+ * const folders = await client.files.smartSearch('Mi Serie', {
165
+ * filter: 'folders'
166
+ * });
167
+ * ```
168
+ */
169
+ async smartSearch(query, options = {}) {
170
+ const session = this.getSession();
171
+ if (!session) {
172
+ throw new Error('Not authenticated. Please call login() first.');
173
+ }
174
+ const { filter = 'everything', exactMatch = false } = options;
175
+ // Extraer palabras clave del query
176
+ const keywords = this.extractSearchKeywords(query);
177
+ if (keywords.length === 0) {
178
+ return { query, items: [], total: 0 };
179
+ }
180
+ // Usar la palabra más única/distintiva para la búsqueda API
181
+ const searchTerm = keywords[0];
182
+ const response = await (0, api_1.apiCall)('folder/search', {
183
+ search_text: searchTerm,
184
+ filter: 'everything'
185
+ }, session);
186
+ const results = response.results || [];
187
+ // Convertir y filtrar resultados
188
+ let items = results.map(item => {
189
+ if (item.type === 'folder') {
190
+ return {
191
+ id: item.folderkey || '',
192
+ folderKey: item.folderkey || '',
193
+ name: item.name || '',
194
+ created: undefined,
195
+ fileCount: 0,
196
+ folderCount: 0,
197
+ parentFolderKey: item.parent_folderkey,
198
+ parentName: item.parent_name,
199
+ isFolder: true
200
+ };
201
+ }
202
+ else {
203
+ const size = parseInt(item.size || '0', 10);
204
+ return {
205
+ id: item.quickkey || '',
206
+ quickKey: item.quickkey || '',
207
+ name: item.filename || item.name || '',
208
+ size,
209
+ sizeFormatted: (0, utils_1.formatBytes)(size),
210
+ mimeType: item.mimetype,
211
+ parentFolderKey: item.parent_folderkey,
212
+ parentName: item.parent_name,
213
+ isFolder: false
214
+ };
215
+ }
216
+ });
217
+ // Filtrar por tipo si es necesario
218
+ if (filter === 'files') {
219
+ items = items.filter(item => !item.isFolder);
220
+ }
221
+ else if (filter === 'folders') {
222
+ items = items.filter(item => item.isFolder);
223
+ }
224
+ // Filtrar por coincidencia con el query original
225
+ if (exactMatch) {
226
+ // Coincidencia exacta (case-insensitive)
227
+ const queryLower = query.toLowerCase().trim();
228
+ items = items.filter(item => item.name.toLowerCase().trim() === queryLower);
229
+ }
230
+ else {
231
+ // Verificar que todas las palabras clave estén en el nombre
232
+ items = items.filter(item => this.matchesAllKeywords(item.name, keywords));
233
+ }
234
+ // Ordenar por relevancia (coincidencia más cercana primero)
235
+ items = this.sortByRelevance(items, query);
236
+ return {
237
+ query,
238
+ items,
239
+ total: items.length
240
+ };
241
+ }
242
+ /**
243
+ * Extrae las palabras clave más distintivas de un query de búsqueda.
244
+ * Filtra palabras comunes, años, resoluciones, etc.
245
+ */
246
+ extractSearchKeywords(query) {
247
+ // Palabras comunes a ignorar (stop words y términos técnicos genéricos)
248
+ const stopWords = new Set([
249
+ // Resoluciones y calidad
250
+ '1080p', '720p', '480p', '2160p', '4k', 'full', 'hd', 'uhd',
251
+ 'web', 'dl', 'webrip', 'bluray', 'brrip', 'bdrip', 'bdremux', 'remux',
252
+ 'hdr', 'hdr10', 'dv', 'dolby', 'vision', 'x264', 'x265', 'hevc', 'avc',
253
+ // Plataformas
254
+ 'netflix', 'ntfx', 'amazon', 'amnz', 'hbo', 'max', 'disney', 'dsny',
255
+ 'apple', 'aptv', 'paramount', 'prmnt', 'peacock', 'hulu', 'vix',
256
+ 'mgm', 'mgm+', 'booh', 'booh!',
257
+ // Idiomas
258
+ 'latino', 'español', 'castellano', 'ingles', 'inglés', 'subtitulado',
259
+ 'dual', 'multi', 'español', 'portugués', 'ruso',
260
+ // Términos comunes
261
+ 'temporada', 'temp', 'season', 'capitulo', 'cap', 'episode', 'ep',
262
+ 'vip', 'hdlatino', 'us', 'com', 'www',
263
+ // Artículos y preposiciones
264
+ 'el', 'la', 'los', 'las', 'un', 'una', 'de', 'del', 'en', 'con', 'por',
265
+ 'para', 'the', 'a', 'an', 'of', 'in', 'on', 'at', 'to', 'for', 'and', 'or'
266
+ ]);
267
+ // Limpiar el query: remover caracteres especiales excepto letras, números y espacios
268
+ let cleaned = query
269
+ .replace(/[\[\]{}()]/g, ' ') // Remover brackets
270
+ .replace(/[^\w\sáéíóúñü-]/gi, ' ') // Mantener solo alfanuméricos y acentos
271
+ .toLowerCase();
272
+ // Dividir en palabras
273
+ const words = cleaned.split(/\s+/).filter(word => word.length > 0);
274
+ // Filtrar palabras
275
+ const filtered = words.filter(word => {
276
+ // Ignorar palabras muy cortas
277
+ if (word.length < 3)
278
+ return false;
279
+ // Ignorar stop words
280
+ if (stopWords.has(word))
281
+ return false;
282
+ // Ignorar años (1900-2099)
283
+ if (/^(19|20)\d{2}$/.test(word))
284
+ return false;
285
+ // Ignorar números puros
286
+ if (/^\d+$/.test(word))
287
+ return false;
288
+ // Ignorar códigos de episodio (S01E01, etc.)
289
+ if (/^s\d+e?\d*$/i.test(word))
290
+ return false;
291
+ return true;
292
+ });
293
+ // Ordenar por unicidad (palabras menos comunes primero)
294
+ // Priorizar palabras más largas y con caracteres especiales
295
+ const scored = filtered.map(word => ({
296
+ word,
297
+ score: this.calculateWordScore(word, filtered)
298
+ }));
299
+ scored.sort((a, b) => b.score - a.score);
300
+ // Retornar palabras únicas
301
+ const unique = [...new Set(scored.map(s => s.word))];
302
+ return unique.slice(0, 5); // Máximo 5 palabras clave
303
+ }
304
+ /**
305
+ * Calcula un score de unicidad para una palabra
306
+ */
307
+ calculateWordScore(word, allWords) {
308
+ let score = 0;
309
+ // Palabras más largas son más únicas
310
+ score += word.length * 2;
311
+ // Palabras con caracteres especiales/acentos son más distintivas
312
+ if (/[áéíóúñü]/.test(word))
313
+ score += 5;
314
+ // Palabras que aparecen una sola vez son más únicas
315
+ const count = allWords.filter(w => w === word).length;
316
+ if (count === 1)
317
+ score += 10;
318
+ // Penalizar palabras muy comunes en nombres de archivos
319
+ const commonWords = ['serie', 'movie', 'film', 'show', 'video'];
320
+ if (commonWords.includes(word))
321
+ score -= 5;
322
+ return score;
323
+ }
324
+ /**
325
+ * Verifica si un nombre contiene todas las palabras clave
326
+ */
327
+ matchesAllKeywords(name, keywords) {
328
+ const nameLower = name.toLowerCase();
329
+ // Verificar que al menos la primera palabra clave (la más única) esté presente
330
+ if (keywords.length > 0 && !nameLower.includes(keywords[0])) {
331
+ return false;
332
+ }
333
+ // Para una coincidencia más flexible, verificar que al menos 60% de las palabras estén
334
+ const matchCount = keywords.filter(kw => nameLower.includes(kw)).length;
335
+ const matchRatio = matchCount / keywords.length;
336
+ return matchRatio >= 0.6;
337
+ }
338
+ /**
339
+ * Ordena los resultados por relevancia respecto al query original
340
+ */
341
+ sortByRelevance(items, query) {
342
+ const queryLower = query.toLowerCase();
343
+ return items.sort((a, b) => {
344
+ const aName = a.name.toLowerCase();
345
+ const bName = b.name.toLowerCase();
346
+ // Coincidencia exacta primero
347
+ if (aName === queryLower && bName !== queryLower)
348
+ return -1;
349
+ if (bName === queryLower && aName !== queryLower)
350
+ return 1;
351
+ // Luego, contiene el query completo
352
+ const aContains = aName.includes(queryLower);
353
+ const bContains = bName.includes(queryLower);
354
+ if (aContains && !bContains)
355
+ return -1;
356
+ if (bContains && !aContains)
357
+ return 1;
358
+ // Luego, por similitud de longitud
359
+ const aDiff = Math.abs(a.name.length - query.length);
360
+ const bDiff = Math.abs(b.name.length - query.length);
361
+ return aDiff - bDiff;
362
+ });
363
+ }
142
364
  /**
143
365
  * Set file privacy (public or private)
144
366
  *
@@ -1 +1 @@
1
- {"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/modules/files.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/modules/files.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jesusacd/mediafire",
3
- "version": "1.2.0",
3
+ "version": "1.3.0",
4
4
  "description": "MediaFire API SDK for Node.js - Upload, download, and manage files on MediaFire",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",