zotero-bridge 1.1.3 → 1.1.5

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/database.js CHANGED
@@ -279,6 +279,88 @@ export class ZoteroDatabase {
279
279
  lastInsertRowid: lastId?.id || 0
280
280
  };
281
281
  }
282
+ /**
283
+ * Begin a transaction for batch operations
284
+ * IMPORTANT: Always use try-finally to ensure commit/rollback
285
+ */
286
+ beginTransaction() {
287
+ if (!this.db) {
288
+ throw new Error('Database not connected');
289
+ }
290
+ this.db.run('BEGIN TRANSACTION');
291
+ }
292
+ /**
293
+ * Commit the current transaction
294
+ */
295
+ commitTransaction() {
296
+ if (!this.db) {
297
+ throw new Error('Database not connected');
298
+ }
299
+ this.db.run('COMMIT');
300
+ }
301
+ /**
302
+ * Rollback the current transaction
303
+ */
304
+ rollbackTransaction() {
305
+ if (!this.db) {
306
+ throw new Error('Database not connected');
307
+ }
308
+ try {
309
+ this.db.run('ROLLBACK');
310
+ }
311
+ catch (e) {
312
+ // Ignore if no transaction is active
313
+ }
314
+ }
315
+ /**
316
+ * Execute a function within a transaction
317
+ * Automatically commits on success, rolls back on error
318
+ */
319
+ withTransaction(fn) {
320
+ this.beginTransaction();
321
+ try {
322
+ const result = fn();
323
+ this.commitTransaction();
324
+ return result;
325
+ }
326
+ catch (error) {
327
+ this.rollbackTransaction();
328
+ throw error;
329
+ }
330
+ }
331
+ // ============================================
332
+ // Trash / Deleted Items Operations
333
+ // ============================================
334
+ /**
335
+ * Check if an item is in the trash (deletedItems table)
336
+ */
337
+ isItemDeleted(itemID) {
338
+ const result = this.queryOne('SELECT 1 FROM deletedItems WHERE itemID = ?', [itemID]);
339
+ return !!result;
340
+ }
341
+ /**
342
+ * Get all items in trash with details
343
+ */
344
+ getDeletedItems() {
345
+ return this.queryAll(`
346
+ SELECT d.itemID, d.dateDeleted, i.key, i.itemTypeID, it.typeName,
347
+ (SELECT iv.value FROM itemData id
348
+ JOIN itemDataValues iv ON id.valueID = iv.valueID
349
+ JOIN fields f ON id.fieldID = f.fieldID
350
+ WHERE id.itemID = i.itemID AND f.fieldName = 'title') as title
351
+ FROM deletedItems d
352
+ JOIN items i ON d.itemID = i.itemID
353
+ JOIN itemTypes it ON i.itemTypeID = it.itemTypeID
354
+ ORDER BY d.dateDeleted DESC
355
+ `);
356
+ }
357
+ /**
358
+ * Get count of items in trash
359
+ */
360
+ getDeletedItemsCount() {
361
+ const result = this.queryOne('SELECT COUNT(*) as count FROM deletedItems');
362
+ return result?.count || 0;
363
+ }
282
364
  // ============================================
283
365
  // Collection (Directory) Operations
284
366
  // ============================================
@@ -419,6 +501,7 @@ export class ZoteroDatabase {
419
501
  * Add tag to item
420
502
  *
421
503
  * Following Zotero's pattern: modifying item tags should update item metadata
504
+ * Note: itemTags.type is required (NOT NULL) - 0=user tag, 1=automatic
422
505
  */
423
506
  addTagToItem(itemID, tagName, type = 0) {
424
507
  // Get or create tag
@@ -430,7 +513,8 @@ export class ZoteroDatabase {
430
513
  if (existing) {
431
514
  return false;
432
515
  }
433
- this.execute('INSERT INTO itemTags (itemID, tagID) VALUES (?, ?)', [itemID, tagID]);
516
+ // itemTags.type is NOT NULL, must provide value
517
+ this.execute('INSERT INTO itemTags (itemID, tagID, type) VALUES (?, ?, ?)', [itemID, tagID, type]);
434
518
  // CRITICAL: Update item metadata for Zotero compatibility
435
519
  this.updateItemMetadata(itemID);
436
520
  if (!this.readonly) {
@@ -522,18 +606,25 @@ export class ZoteroDatabase {
522
606
  }
523
607
  /**
524
608
  * Get item by key
609
+ * Optionally include deleted items
525
610
  */
526
- getItemByKey(key) {
527
- return this.queryOne(`
528
- SELECT itemID, key, itemTypeID, dateAdded, dateModified, libraryID
529
- FROM items
530
- WHERE key = ?
531
- `, [key]);
611
+ getItemByKey(key, includeDeleted = false) {
612
+ const sql = includeDeleted
613
+ ? `SELECT itemID, key, itemTypeID, dateAdded, dateModified, libraryID
614
+ FROM items WHERE key = ?`
615
+ : `SELECT itemID, key, itemTypeID, dateAdded, dateModified, libraryID
616
+ FROM items WHERE key = ? AND itemID NOT IN (SELECT itemID FROM deletedItems)`;
617
+ return this.queryOne(sql, [key]);
532
618
  }
533
619
  /**
534
620
  * Search items by title
621
+ * Excludes deleted items and non-searchable types (attachments, notes)
535
622
  */
536
623
  searchItems(query, limit = 50, libraryID = 1) {
624
+ // Get note and attachment type IDs dynamically
625
+ const noteType = this.queryOne("SELECT itemTypeID FROM itemTypes WHERE typeName = 'note'");
626
+ const attachType = this.queryOne("SELECT itemTypeID FROM itemTypes WHERE typeName = 'attachment'");
627
+ const excludeTypes = [noteType?.itemTypeID || 28, attachType?.itemTypeID || 3];
537
628
  return this.queryAll(`
538
629
  SELECT DISTINCT i.itemID, i.key, i.itemTypeID, i.dateAdded, i.dateModified,
539
630
  iv.value as title
@@ -544,12 +635,15 @@ export class ZoteroDatabase {
544
635
  WHERE f.fieldName = 'title'
545
636
  AND iv.value LIKE ?
546
637
  AND i.libraryID = ?
638
+ AND i.itemTypeID NOT IN (?, ?)
639
+ AND i.itemID NOT IN (SELECT itemID FROM deletedItems)
547
640
  ORDER BY i.dateModified DESC
548
641
  LIMIT ?
549
- `, [`%${query}%`, libraryID, limit]);
642
+ `, [`%${query}%`, libraryID, excludeTypes[0], excludeTypes[1], limit]);
550
643
  }
551
644
  /**
552
645
  * Get item details with all fields
646
+ * Includes isDeleted flag to indicate if item is in trash
553
647
  */
554
648
  getItemDetails(itemID) {
555
649
  // Get item basic info
@@ -560,6 +654,10 @@ export class ZoteroDatabase {
560
654
  if (!item) {
561
655
  return {};
562
656
  }
657
+ // Check if item is in trash
658
+ const deletedInfo = this.queryOne(`
659
+ SELECT dateDeleted FROM deletedItems WHERE itemID = ?
660
+ `, [itemID]);
563
661
  // Get all item data fields
564
662
  const fields = this.queryAll(`
565
663
  SELECT f.fieldName, iv.value
@@ -579,14 +677,17 @@ export class ZoteroDatabase {
579
677
  `, [itemID]);
580
678
  // Get tags
581
679
  const tags = this.getItemTags(itemID);
582
- // Get attachments
680
+ // Get attachments (exclude deleted attachments)
583
681
  const attachments = this.queryAll(`
584
682
  SELECT ia.itemID, ia.path, ia.contentType
585
683
  FROM itemAttachments ia
586
684
  WHERE ia.parentItemID = ?
685
+ AND ia.itemID NOT IN (SELECT itemID FROM deletedItems)
587
686
  `, [itemID]);
588
687
  const result = {
589
688
  ...item,
689
+ isDeleted: !!deletedInfo,
690
+ dateDeleted: deletedInfo?.dateDeleted || null,
590
691
  creators,
591
692
  tags,
592
693
  attachments
@@ -749,46 +850,78 @@ export class ZoteroDatabase {
749
850
  // ============================================
750
851
  /**
751
852
  * Find item by DOI
853
+ * Returns the most recently modified item if duplicates exist
854
+ * Excludes items in trash
752
855
  */
753
856
  findItemByDOI(doi) {
754
857
  // Normalize DOI (remove common prefixes)
755
858
  const normalizedDOI = doi.replace(/^https?:\/\/doi\.org\//i, '').replace(/^doi:/i, '').trim();
756
- const result = this.queryOne(`
859
+ // Find all matches, excluding deleted items
860
+ const allMatches = this.queryAll(`
757
861
  SELECT DISTINCT i.itemID, i.key, i.itemTypeID, i.dateAdded, i.dateModified,
758
862
  iv.value as doi
759
863
  FROM items i
760
864
  JOIN itemData id ON i.itemID = id.itemID
761
865
  JOIN itemDataValues iv ON id.valueID = iv.valueID
762
866
  JOIN fields f ON id.fieldID = f.fieldID
763
- WHERE f.fieldName = 'DOI' AND LOWER(iv.value) = LOWER(?)
867
+ WHERE f.fieldName = 'DOI'
868
+ AND LOWER(iv.value) = LOWER(?)
869
+ AND i.itemID NOT IN (SELECT itemID FROM deletedItems)
870
+ ORDER BY i.dateModified DESC
764
871
  `, [normalizedDOI]);
765
- if (result) {
766
- return this.getItemDetails(result.itemID);
872
+ if (allMatches.length === 0) {
873
+ return null;
767
874
  }
768
- return null;
875
+ const result = this.getItemDetails(allMatches[0].itemID);
876
+ // Warn about duplicates
877
+ if (allMatches.length > 1) {
878
+ result._duplicateWarning = {
879
+ message: `Found ${allMatches.length} items with same DOI`,
880
+ duplicateItemIDs: allMatches.map((m) => m.itemID),
881
+ usingItemID: allMatches[0].itemID
882
+ };
883
+ }
884
+ return result;
769
885
  }
770
886
  /**
771
887
  * Find item by ISBN
888
+ * Returns the most recently modified item if duplicates exist
889
+ * Excludes items in trash
772
890
  */
773
891
  findItemByISBN(isbn) {
774
892
  // Normalize ISBN (remove hyphens and spaces)
775
893
  const normalizedISBN = isbn.replace(/[-\s]/g, '').trim();
776
- const result = this.queryOne(`
894
+ // Find all matches, excluding deleted items
895
+ const allMatches = this.queryAll(`
777
896
  SELECT DISTINCT i.itemID, i.key, i.itemTypeID, i.dateAdded, i.dateModified,
778
897
  iv.value as isbn
779
898
  FROM items i
780
899
  JOIN itemData id ON i.itemID = id.itemID
781
900
  JOIN itemDataValues iv ON id.valueID = iv.valueID
782
901
  JOIN fields f ON id.fieldID = f.fieldID
783
- WHERE f.fieldName = 'ISBN' AND REPLACE(REPLACE(iv.value, '-', ''), ' ', '') = ?
902
+ WHERE f.fieldName = 'ISBN'
903
+ AND REPLACE(REPLACE(iv.value, '-', ''), ' ', '') = ?
904
+ AND i.itemID NOT IN (SELECT itemID FROM deletedItems)
905
+ ORDER BY i.dateModified DESC
784
906
  `, [normalizedISBN]);
785
- if (result) {
786
- return this.getItemDetails(result.itemID);
907
+ if (allMatches.length === 0) {
908
+ return null;
787
909
  }
788
- return null;
910
+ const result = this.getItemDetails(allMatches[0].itemID);
911
+ // Warn about duplicates
912
+ if (allMatches.length > 1) {
913
+ result._duplicateWarning = {
914
+ message: `Found ${allMatches.length} items with same ISBN`,
915
+ duplicateItemIDs: allMatches.map((m) => m.itemID),
916
+ usingItemID: allMatches[0].itemID
917
+ };
918
+ }
919
+ return result;
789
920
  }
790
921
  /**
791
922
  * Find item by any identifier (DOI, ISBN, PMID, arXiv, etc.)
923
+ * Returns the most recently modified item if duplicates exist
924
+ * Excludes items in trash
792
925
  */
793
926
  findItemByIdentifier(identifier, type) {
794
927
  const fieldMap = {
@@ -806,16 +939,28 @@ export class ZoteroDatabase {
806
939
  else if (type.toLowerCase() === 'isbn') {
807
940
  return this.findItemByISBN(identifier);
808
941
  }
809
- const result = this.queryOne(`
942
+ // For other identifier types, also check for duplicates (excluding deleted items)
943
+ const allMatches = this.queryAll(`
810
944
  SELECT DISTINCT i.itemID, i.key
811
945
  FROM items i
812
946
  JOIN itemData id ON i.itemID = id.itemID
813
947
  JOIN itemDataValues iv ON id.valueID = iv.valueID
814
948
  JOIN fields f ON id.fieldID = f.fieldID
815
- WHERE f.fieldName = ? AND iv.value LIKE ?
949
+ WHERE f.fieldName = ?
950
+ AND iv.value LIKE ?
951
+ AND i.itemID NOT IN (SELECT itemID FROM deletedItems)
952
+ ORDER BY i.dateModified DESC
816
953
  `, [fieldName, `%${identifier}%`]);
817
- if (result) {
818
- return this.getItemDetails(result.itemID);
954
+ if (allMatches.length > 0) {
955
+ const result = this.getItemDetails(allMatches[0].itemID);
956
+ if (allMatches.length > 1) {
957
+ result._duplicateWarning = {
958
+ message: `Found ${allMatches.length} items with same ${fieldName}`,
959
+ duplicateItemIDs: allMatches.map((m) => m.itemID),
960
+ usingItemID: allMatches[0].itemID
961
+ };
962
+ }
963
+ return result;
819
964
  }
820
965
  }
821
966
  // Try all identifier types
@@ -1205,8 +1350,17 @@ export class ZoteroDatabase {
1205
1350
  // ============================================
1206
1351
  /**
1207
1352
  * Find duplicate items based on title, DOI, or ISBN
1353
+ *
1354
+ * Note: itemTypeID values vary by Zotero version:
1355
+ * - attachment = 3
1356
+ * - note = 28 (in newer versions) or 1 (in older versions)
1357
+ * We exclude both attachments and notes from duplicate detection
1208
1358
  */
1209
1359
  findDuplicates(field = 'title', libraryID = 1) {
1360
+ // Get note and attachment type IDs dynamically
1361
+ const noteType = this.queryOne("SELECT itemTypeID FROM itemTypes WHERE typeName = 'note'");
1362
+ const attachType = this.queryOne("SELECT itemTypeID FROM itemTypes WHERE typeName = 'attachment'");
1363
+ const excludeTypes = [noteType?.itemTypeID || 28, attachType?.itemTypeID || 3].join(',');
1210
1364
  if (field === 'title') {
1211
1365
  // Find items with the same title
1212
1366
  return this.queryAll(`
@@ -1220,7 +1374,8 @@ export class ZoteroDatabase {
1220
1374
  JOIN fields f ON id.fieldID = f.fieldID
1221
1375
  WHERE f.fieldName = 'title'
1222
1376
  AND i.libraryID = ?
1223
- AND i.itemTypeID NOT IN (1, 14) -- Exclude notes and attachments
1377
+ AND i.itemTypeID NOT IN (${excludeTypes})
1378
+ AND i.itemID NOT IN (SELECT itemID FROM deletedItems)
1224
1379
  GROUP BY iv.value
1225
1380
  HAVING COUNT(*) > 1
1226
1381
  ORDER BY count DESC
@@ -1239,6 +1394,7 @@ export class ZoteroDatabase {
1239
1394
  WHERE f.fieldName = 'DOI'
1240
1395
  AND i.libraryID = ?
1241
1396
  AND iv.value != ''
1397
+ AND i.itemID NOT IN (SELECT itemID FROM deletedItems)
1242
1398
  GROUP BY LOWER(iv.value)
1243
1399
  HAVING COUNT(*) > 1
1244
1400
  ORDER BY count DESC
@@ -1257,6 +1413,7 @@ export class ZoteroDatabase {
1257
1413
  WHERE f.fieldName = 'ISBN'
1258
1414
  AND i.libraryID = ?
1259
1415
  AND iv.value != ''
1416
+ AND i.itemID NOT IN (SELECT itemID FROM deletedItems)
1260
1417
  GROUP BY REPLACE(REPLACE(iv.value, '-', ''), ' ', '')
1261
1418
  HAVING COUNT(*) > 1
1262
1419
  ORDER BY count DESC
@@ -1450,51 +1607,101 @@ export class ZoteroDatabase {
1450
1607
  }
1451
1608
  /**
1452
1609
  * Merge items by transferring notes and tags from source items to target
1610
+ * Uses transaction to ensure data consistency
1453
1611
  */
1454
1612
  mergeItems(targetItemID, sourceItemIDs) {
1455
1613
  const errors = [];
1456
1614
  let notesTransferred = 0;
1457
1615
  let tagsTransferred = 0;
1458
- // Verify target exists
1616
+ let attachmentsTransferred = 0;
1617
+ // Verify target exists and is not deleted
1459
1618
  const target = this.getItemDetails(targetItemID);
1460
1619
  if (!target) {
1461
1620
  return {
1462
1621
  success: false,
1463
- transferred: { notes: 0, tags: 0 },
1622
+ transferred: { notes: 0, tags: 0, attachments: 0 },
1464
1623
  errors: ['Target item not found']
1465
1624
  };
1466
1625
  }
1467
- for (const sourceID of sourceItemIDs) {
1468
- if (sourceID === targetItemID)
1469
- continue;
1470
- // Transfer notes
1471
- try {
1472
- const notes = this.getItemNotes(sourceID);
1473
- for (const note of notes) {
1474
- this.addItemNote(targetItemID, note.note, `[Merged] ${note.title || ''}`);
1475
- notesTransferred++;
1626
+ // Check if target is in deletedItems
1627
+ const targetDeleted = this.queryOne('SELECT 1 FROM deletedItems WHERE itemID = ?', [targetItemID]);
1628
+ if (targetDeleted) {
1629
+ return {
1630
+ success: false,
1631
+ transferred: { notes: 0, tags: 0, attachments: 0 },
1632
+ errors: ['Target item is in trash']
1633
+ };
1634
+ }
1635
+ // Use transaction for atomic operation
1636
+ this.beginTransaction();
1637
+ try {
1638
+ for (const sourceID of sourceItemIDs) {
1639
+ if (sourceID === targetItemID)
1640
+ continue;
1641
+ // Verify source exists
1642
+ const source = this.queryOne('SELECT itemID FROM items WHERE itemID = ?', [sourceID]);
1643
+ if (!source) {
1644
+ errors.push(`Source item ${sourceID} not found`);
1645
+ continue;
1476
1646
  }
1477
- }
1478
- catch (error) {
1479
- errors.push(`Failed to transfer notes from ${sourceID}: ${error}`);
1480
- }
1481
- // Transfer tags
1482
- try {
1483
- const tags = this.getItemTags(sourceID);
1484
- for (const tag of tags) {
1485
- this.addTagToItem(targetItemID, tag.name, tag.type);
1486
- tagsTransferred++;
1647
+ // Transfer notes
1648
+ try {
1649
+ const notes = this.getItemNotes(sourceID);
1650
+ for (const note of notes) {
1651
+ this.addItemNote(targetItemID, note.note, `[Merged] ${note.title || ''}`);
1652
+ notesTransferred++;
1653
+ }
1654
+ }
1655
+ catch (error) {
1656
+ errors.push(`Failed to transfer notes from ${sourceID}: ${error}`);
1657
+ }
1658
+ // Transfer tags
1659
+ try {
1660
+ const tags = this.getItemTags(sourceID);
1661
+ for (const tag of tags) {
1662
+ this.addTagToItem(targetItemID, tag.name, tag.type);
1663
+ tagsTransferred++;
1664
+ }
1665
+ }
1666
+ catch (error) {
1667
+ errors.push(`Failed to transfer tags from ${sourceID}: ${error}`);
1668
+ }
1669
+ // Transfer attachments (update parentItemID)
1670
+ try {
1671
+ const attachments = this.queryAll(`
1672
+ SELECT itemID FROM itemAttachments WHERE parentItemID = ?
1673
+ `, [sourceID]);
1674
+ for (const att of attachments) {
1675
+ this.execute(`
1676
+ UPDATE itemAttachments SET parentItemID = ? WHERE itemID = ?
1677
+ `, [targetItemID, att.itemID]);
1678
+ attachmentsTransferred++;
1679
+ }
1680
+ }
1681
+ catch (error) {
1682
+ errors.push(`Failed to transfer attachments from ${sourceID}: ${error}`);
1487
1683
  }
1488
1684
  }
1489
- catch (error) {
1490
- errors.push(`Failed to transfer tags from ${sourceID}: ${error}`);
1685
+ this.commitTransaction();
1686
+ if (!this.readonly) {
1687
+ this.save();
1491
1688
  }
1492
1689
  }
1690
+ catch (error) {
1691
+ this.rollbackTransaction();
1692
+ errors.push(`Transaction failed: ${error}`);
1693
+ return {
1694
+ success: false,
1695
+ transferred: { notes: 0, tags: 0, attachments: 0 },
1696
+ errors
1697
+ };
1698
+ }
1493
1699
  return {
1494
1700
  success: errors.length === 0,
1495
1701
  transferred: {
1496
1702
  notes: notesTransferred,
1497
- tags: tagsTransferred
1703
+ tags: tagsTransferred,
1704
+ attachments: attachmentsTransferred
1498
1705
  },
1499
1706
  errors
1500
1707
  };
@@ -1 +1 @@
1
- {"version":3,"file":"database.js","sourceRoot":"","sources":["../src/database.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"database.js","sourceRoot":"","sources":["../src/database.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zotero-bridge",
3
- "version": "1.1.3",
3
+ "version": "1.1.5",
4
4
  "mcpName": "io.github.Combjellyshen/zotero-bridge",
5
5
  "description": "ZoteroBridge - MCP Server for Zotero SQLite Database Integration",
6
6
  "author": "Combjellyshen",