@quranjs/api 1.5.1 → 1.6.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.
@@ -60,6 +60,18 @@ declare const quran: {
60
60
  page: number;
61
61
  perPage: number;
62
62
  }> | undefined) => Promise<import("..").Verse[]>;
63
+ findByHizb: (hizb: import("..").HizbNumber, options?: Partial<{
64
+ language: import("..").Language;
65
+ reciter: string | number;
66
+ words: boolean;
67
+ translations: string[] | number[];
68
+ tafsirs: string[] | number[];
69
+ wordFields: Partial<Record<import("..").WordField, boolean>>;
70
+ translationFields: Partial<Record<import("..").TranslationField, boolean>>;
71
+ fields: Partial<Record<import("..").VerseField, boolean>>;
72
+ page: number;
73
+ perPage: number;
74
+ }> | undefined) => Promise<import("..").Verse[]>;
63
75
  findRandom: (options?: Partial<{
64
76
  language: import("..").Language;
65
77
  reciter: string | number;
@@ -59,6 +59,18 @@ declare const v4: {
59
59
  page: number;
60
60
  perPage: number;
61
61
  }> | undefined) => Promise<import("../..").Verse[]>;
62
+ findByHizb: (hizb: import("../..").HizbNumber, options?: Partial<{
63
+ language: import("../..").Language;
64
+ reciter: string | number;
65
+ words: boolean;
66
+ translations: string[] | number[];
67
+ tafsirs: string[] | number[];
68
+ wordFields: Partial<Record<import("../..").WordField, boolean>>;
69
+ translationFields: Partial<Record<import("../..").TranslationField, boolean>>;
70
+ fields: Partial<Record<import("../..").VerseField, boolean>>;
71
+ page: number;
72
+ perPage: number;
73
+ }> | undefined) => Promise<import("../..").Verse[]>;
62
74
  findRandom: (options?: Partial<{
63
75
  language: import("../..").Language;
64
76
  reciter: string | number;
@@ -1,4 +1,4 @@
1
- import { ChapterId, JuzNumber, Language, PageNumber, TranslationField, Verse, VerseField, VerseKey, WordField } from '../../types';
1
+ import { ChapterId, HizbNumber, JuzNumber, Language, PageNumber, TranslationField, Verse, VerseField, VerseKey, WordField } from '../../types';
2
2
  declare const verses: {
3
3
  findByKey: (key: VerseKey, options?: Partial<{
4
4
  language: Language;
@@ -48,6 +48,18 @@ declare const verses: {
48
48
  page: number;
49
49
  perPage: number;
50
50
  }> | undefined) => Promise<Verse[]>;
51
+ findByHizb: (hizb: HizbNumber, options?: Partial<{
52
+ language: Language;
53
+ reciter: string | number;
54
+ words: boolean;
55
+ translations: string[] | number[];
56
+ tafsirs: string[] | number[];
57
+ wordFields: Partial<Record<WordField, boolean>>;
58
+ translationFields: Partial<Record<TranslationField, boolean>>;
59
+ fields: Partial<Record<VerseField, boolean>>;
60
+ page: number;
61
+ perPage: number;
62
+ }> | undefined) => Promise<Verse[]>;
51
63
  findRandom: (options?: Partial<{
52
64
  language: Language;
53
65
  reciter: string | number;
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
8
- "version": "1.5.1",
8
+ "version": "1.6.0",
9
9
  "license": "MIT",
10
10
  "main": "dist/index.js",
11
11
  "typings": "dist/index.d.ts",
@@ -28,6 +28,7 @@
28
28
  "@size-limit/preset-small-lib": "^7.0.8",
29
29
  "@types/humps": "^2.0.1",
30
30
  "dts-cli": "^1.4.0",
31
+ "fast-check": "^3.3.0",
31
32
  "husky": "^7.0.4",
32
33
  "msw": "^0.39.2",
33
34
  "rollup-plugin-analyzer": "^4.0.0",
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  ChapterId,
3
- // HizbNumber,
3
+ HizbNumber,
4
4
  JuzNumber,
5
5
  Language,
6
6
  PageNumber,
@@ -146,7 +146,6 @@ const findByJuz = async (juz: JuzNumber, options?: GetVerseOptions) => {
146
146
  return verses;
147
147
  };
148
148
 
149
- // TODO: uncomment when API is fixed
150
149
  /**
151
150
  * Get all ayahs for a Hizb.
152
151
  * @description https://quran.api-docs.io/v4/verses/by-hizb-number
@@ -156,15 +155,15 @@ const findByJuz = async (juz: JuzNumber, options?: GetVerseOptions) => {
156
155
  * quran.v4.verses.findByHizb('1')
157
156
  * quran.v4.verses.findByHizb('29')
158
157
  */
159
- // const findByHizb = async (hizb: HizbNumber, options?: GetVerseOptions) => {
160
- // if (!Utils.isValidHizb(hizb)) throw new Error('Invalid hizb');
158
+ const findByHizb = async (hizb: HizbNumber, options?: GetVerseOptions) => {
159
+ if (!Utils.isValidHizb(hizb)) throw new Error('Invalid hizb');
161
160
 
162
- // const params = getVerseOptions(options);
163
- // const url = `/verses/by_hizb/${hizb}`;
164
- // const { verses } = await fetcher<{ verses: Verse[] }>(url, params);
161
+ const params = getVerseOptions(options);
162
+ const url = `/verses/by_hizb/${hizb}`;
163
+ const { verses } = await fetcher<{ verses: Verse[] }>(url, params);
165
164
 
166
- // return verses;
167
- // };
165
+ return verses;
166
+ };
168
167
 
169
168
  // TODO: uncomment when API is fixed
170
169
  /**
@@ -205,7 +204,7 @@ const verses = {
205
204
  findByChapter,
206
205
  findByPage,
207
206
  findByJuz,
208
- // findByHizb,
207
+ findByHizb,
209
208
  // findByRub,
210
209
  findRandom,
211
210
  };