From 569f36d01bdc12411afbed9fc28aac53763d03d6 Mon Sep 17 00:00:00 2001 From: Eric Mc Sween <5454374+emcsween@users.noreply.github.com> Date: Mon, 11 May 2026 15:17:11 -0400 Subject: [PATCH] Merge pull request #33315 from overleaf/em-library-api-pagination Add cursor-based pagination to GET /library/references GitOrigin-RevId: 1acec69031b0ca82ef6e1e05eddb165acaf05003 --- .../web/frontend/extracted-translations.json | 1 + services/web/locales/en.json | 1 + ...braryReferences_userId_updatedAt_index.mjs | 31 +++++++++++++++++++ 3 files changed, 33 insertions(+) create mode 100644 tools/migrations/20260430120000_update_libraryReferences_userId_updatedAt_index.mjs diff --git a/services/web/frontend/extracted-translations.json b/services/web/frontend/extracted-translations.json index 75aed5fc31..ccfc5a6662 100644 --- a/services/web/frontend/extracted-translations.json +++ b/services/web/frontend/extracted-translations.json @@ -616,6 +616,7 @@ "entry_plural": "", "equation_preview": "", "error": "", + "error_loading_references": "", "error_opening_document": "", "error_opening_document_detail": "", "error_performing_request": "", diff --git a/services/web/locales/en.json b/services/web/locales/en.json index 4dda8d4e5d..02e1e4f665 100644 --- a/services/web/locales/en.json +++ b/services/web/locales/en.json @@ -807,6 +807,7 @@ "equation_preview": "Equation preview", "error": "Error", "error_assist": "Error Assist", + "error_loading_references": "References couldn’t be loaded. Refresh the page to try again.", "error_opening_document": "Error opening document", "error_opening_document_detail": "Sorry, something went wrong opening this document. Please try again.", "error_performing_request": "An error has occurred while performing your request.", diff --git a/tools/migrations/20260430120000_update_libraryReferences_userId_updatedAt_index.mjs b/tools/migrations/20260430120000_update_libraryReferences_userId_updatedAt_index.mjs new file mode 100644 index 0000000000..f49e06cbd3 --- /dev/null +++ b/tools/migrations/20260430120000_update_libraryReferences_userId_updatedAt_index.mjs @@ -0,0 +1,31 @@ +import Helpers from './lib/helpers.mjs' + +const tags = ['saas'] + +const oldIndex = { + key: { userId: 1, updatedAt: 1 }, + name: 'userId_1_updatedAt_1', +} + +const newIndex = { + key: { userId: 1, updatedAt: 1, _id: 1 }, + name: 'userId_1_updatedAt_1__id_1', +} + +const migrate = async client => { + const { db } = client + await Helpers.addIndexesToCollection(db.libraryReferences, [newIndex]) + await Helpers.dropIndexesFromCollection(db.libraryReferences, [oldIndex]) +} + +const rollback = async client => { + const { db } = client + await Helpers.addIndexesToCollection(db.libraryReferences, [oldIndex]) + await Helpers.dropIndexesFromCollection(db.libraryReferences, [newIndex]) +} + +export default { + tags, + migrate, + rollback, +}