From 4f31bfdfb71d369e4f8cc6b11800ab5a35cbefac Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 5 Nov 2026 03:55:17 +0000 Subject: [PATCH] =?UTF-8?q?chore(release):=20=F0=9F=93=A6=20version=20pack?= =?UTF-8?q?ages?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .changeset/field-list-query-params.md | 5 ----- .changeset/user-sync-409-message.md | 5 ----- .changeset/verse-audio-param.md | 5 ----- packages/api/CHANGELOG.md | 8 ++++++++ packages/api/package.json | 2 +- 5 files changed, 9 insertions(+), 16 deletions(-) delete mode 100644 .changeset/field-list-query-params.md delete mode 100644 .changeset/user-sync-409-message.md delete mode 100644 .changeset/verse-audio-param.md diff --git a/.changeset/field-list-query-params.md b/.changeset/field-list-query-params.md deleted file mode 100644 index d9d7f01..0000000 --- a/.changeset/field-list-query-params.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@quranjs/api": patch ---- - -Send `fields`, `wordFields` and `translationFields` unchanged when they are given as a comma-separated string or an array. They were always read as `{ field: true }` maps, so `fields: "text_uthmani,chapter_id"` went out as `fields=0,1,2,…,22` (the string's character indexes) and the API answered without the requested fields. This affected the `client.content.v4` helpers, raw catalog operations such as `client.content.v4.raw.translation()`, and `QuranClient`. `tafsirFields` maps are now sent as `tafsir_fields` like the other field lists, instead of being dropped. diff --git a/.changeset/user-sync-409-message.md b/.changeset/user-sync-409-message.md deleted file mode 100644 index 3c3f28a..0000000 --- a/.changeset/user-sync-409-message.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@quranjs/api": patch ---- - -User Sync errors now carry the service's error code and message. A 409 `OutOfSyncError` from `client.auth.v1.sync` has `code: "OutOfSyncError"` and a message such as `409: Invalid lastMutationAt, please re-sync your data and try again.` instead of `409 `, for both the Gateway and direct backend response shapes. `isUserSyncOutOfSyncError` is unchanged. diff --git a/.changeset/verse-audio-param.md b/.changeset/verse-audio-param.md deleted file mode 100644 index 893136b..0000000 --- a/.changeset/verse-audio-param.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@quranjs/api": patch ---- - -Add an `audio` option to the verses methods for the ayah-by-ayah recitation ID, which is the parameter the Content API v4 verses endpoints read. The existing `reciter` option was sent as `reciter`, which those endpoints ignore, so verses never came back with `audio`. `reciter` is now deprecated and sent as `audio`; when both are set, `audio` wins. diff --git a/packages/api/CHANGELOG.md b/packages/api/CHANGELOG.md index ab3cdc2..5149477 100644 --- a/packages/api/CHANGELOG.md +++ b/packages/api/CHANGELOG.md @@ -1,5 +1,13 @@ # @quranjs/api +## 3.17.1 + +### Patch Changes + +- 0bdd30c: Send `fields`, `wordFields` and `translationFields` unchanged when they are given as a comma-separated string or an array. They were always read as `{ field: true }` maps, so `fields: "text_uthmani,chapter_id"` went out as `fields=0,1,2,…,22` (the string's character indexes) and the API answered without the requested fields. This affected the `client.content.v4` helpers, raw catalog operations such as `client.content.v4.raw.translation()`, and `QuranClient`. `tafsirFields` maps are now sent as `tafsir_fields` like the other field lists, instead of being dropped. +- f9465d6: User Sync errors now carry the service's error code and message. A 409 `OutOfSyncError` from `client.auth.v1.sync` has `code: "OutOfSyncError"` and a message such as `409: Invalid lastMutationAt, please re-sync your data and try again.` instead of `409 `, for both the Gateway and direct backend response shapes. `isUserSyncOutOfSyncError` is unchanged. +- 8e9012c: Add an `audio` option to the verses methods for the ayah-by-ayah recitation ID, which is the parameter the Content API v4 verses endpoints read. The existing `reciter` option was sent as `reciter`, which those endpoints ignore, so verses never came back with `audio`. `reciter` is now deprecated and sent as `audio`; when both are set, `audio` wins. + ## 3.17.0 ### Minor Changes diff --git a/packages/api/package.json b/packages/api/package.json index 7ab1036..e12f006 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -11,7 +11,7 @@ "publishConfig": { "access": "public" }, - "version": "3.17.0", + "version": "3.17.1", "main": "dist/index.min.js", "module": "dist/index.min.mjs", "types": "dist/index.d.ts",