mihrab-methods 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.
Files changed (51) hide show
  1. package/README.md +5 -3
  2. package/certification.json +30 -7
  3. package/data/corrections/diyanet.json +455 -0
  4. package/data/corrections/turkiyetakvimi.json +120 -0
  5. package/dist/cjs/authorities/turkiyeTakvimi.d.ts +3 -0
  6. package/dist/cjs/authorities/turkiyeTakvimi.js +59 -0
  7. package/dist/cjs/core/compute.js +6 -2
  8. package/dist/cjs/core/types.d.ts +3 -1
  9. package/dist/cjs/core/types.js +1 -1
  10. package/dist/cjs/data/generated/diyanetCertification.js +1 -1
  11. package/dist/cjs/data/generated/diyanetCorrections.js +1 -1
  12. package/dist/cjs/data/generated/diyanetWorldPoints.js +1 -1
  13. package/dist/cjs/data/generated/turkiyeTakvimiCities.d.ts +8 -0
  14. package/dist/cjs/data/generated/turkiyeTakvimiCities.js +5 -0
  15. package/dist/cjs/data/generated/turkiyetakvimiCertification.d.ts +3 -0
  16. package/dist/cjs/data/generated/turkiyetakvimiCertification.js +4 -0
  17. package/dist/cjs/data/generated/turkiyetakvimiCorrections.d.ts +3 -0
  18. package/dist/cjs/data/generated/turkiyetakvimiCorrections.js +4 -0
  19. package/dist/cjs/index.d.ts +1 -0
  20. package/dist/cjs/index.js +1 -0
  21. package/dist/cjs/methods/revisions.d.ts +1 -0
  22. package/dist/cjs/methods/revisions.js +1 -0
  23. package/dist/cjs/methods/turkiyeTakvimi.d.ts +42 -0
  24. package/dist/cjs/methods/turkiyeTakvimi.js +166 -0
  25. package/dist/cjs/turkiyetakvimi.d.ts +4 -0
  26. package/dist/cjs/turkiyetakvimi.js +22 -0
  27. package/dist/esm/authorities/turkiyeTakvimi.d.ts +3 -0
  28. package/dist/esm/authorities/turkiyeTakvimi.js +53 -0
  29. package/dist/esm/core/compute.js +6 -2
  30. package/dist/esm/core/types.d.ts +3 -1
  31. package/dist/esm/core/types.js +1 -1
  32. package/dist/esm/data/generated/diyanetCertification.js +1 -1
  33. package/dist/esm/data/generated/diyanetCorrections.js +1 -1
  34. package/dist/esm/data/generated/diyanetWorldPoints.js +1 -1
  35. package/dist/esm/data/generated/turkiyeTakvimiCities.d.ts +8 -0
  36. package/dist/esm/data/generated/turkiyeTakvimiCities.js +3 -0
  37. package/dist/esm/data/generated/turkiyetakvimiCertification.d.ts +3 -0
  38. package/dist/esm/data/generated/turkiyetakvimiCertification.js +2 -0
  39. package/dist/esm/data/generated/turkiyetakvimiCorrections.d.ts +3 -0
  40. package/dist/esm/data/generated/turkiyetakvimiCorrections.js +2 -0
  41. package/dist/esm/index.d.ts +1 -0
  42. package/dist/esm/index.js +1 -0
  43. package/dist/esm/methods/revisions.d.ts +1 -0
  44. package/dist/esm/methods/revisions.js +1 -0
  45. package/dist/esm/methods/turkiyeTakvimi.d.ts +42 -0
  46. package/dist/esm/methods/turkiyeTakvimi.js +159 -0
  47. package/dist/esm/turkiyetakvimi.d.ts +4 -0
  48. package/dist/esm/turkiyetakvimi.js +4 -0
  49. package/docs/methods.md +39 -0
  50. package/package.json +18 -2
  51. package/schemas/certification.schema.json +2 -1
package/README.md CHANGED
@@ -9,7 +9,7 @@
9
9
  **Prayer times that match the published timetable to the printed minute.**
10
10
  Each national authority's own calculation method, worked out again from its
11
11
  published times and checked day by day against its timetables: <!--fig:total.off-->0<!--/fig--> of
12
- <!--fig:total.times-->72,014,979<!--/fig--> times off the printed minute. Free for any app, site or
12
+ <!--fig:total.times-->73,824,302<!--/fig--> times off the printed minute. Free for any app, site or
13
13
  mosque to use.
14
14
 
15
15
  [![Usage, a day: npm downloads and API requests](docs/stats.svg)](#usage)
@@ -39,12 +39,13 @@ The full API, the HTTP server and the per-authority imports are in
39
39
  |---|---|---:|---:|---:|---:|---:|---|
40
40
  | **Sweden** | Islamiska Förbundet’s tables | 107 | 63,114 | **0** | 99.968 % | 270 | 11 Oct 2026 → 14 Dec 2027 |
41
41
  | | Diyanet’s own tables | 159 | 1,393,794 | **0** | 99.981 % | | 1 Jan 2024 → 31 Dec 2027 |
42
- | **Diyanet** | its tables worldwide | 8,132 | 69,999,603 | **0** | 99.986 % | 9,118 | 1 Jan 2024 → 31 Dec 2027 |
42
+ | **Diyanet** | its tables worldwide | 8,318 | 71,630,078 | **0** | 99.986 % | 9,357 | 1 Jan 2024 → 31 Dec 2027 |
43
43
  | **Morocco** | Habous | 164 | 94,350 | **0** | 99.879 % | 114 | 27 Aug 2026 → 30 Nov 2026 |
44
44
  | **Algeria** | Ministry of Religious Affairs | 68 | 101,184 | **0** | 99.365 % | 642 | 1 Oct 2026 → 5 Jun 2027 |
45
45
  | **Indonesia** | Kemenag | 517 | 362,934 | **0** | 99.935 % | 234 | 7 Oct 2026 → 31 Jan 2027 |
46
+ | **Türkiye Takvimi** | its cities’ years | 81 | 178,848 | **0** | 99.970 % | 52 | 31 Dec 2025 → 2 Jan 2027 |
46
47
 
47
- 5 of 5 methods certified; 0 of 72,014,979 times off the printed minute. Last checked 9 November 2026. Generated from [`certification.json`](certification.json) by `scripts/readme.mjs`.
48
+ 6 of 6 methods certified; 0 of 73,824,302 times off the printed minute. Last checked 9 November 2026. Generated from [`certification.json`](certification.json) by `scripts/readme.mjs`.
48
49
  <!-- certification-table:end -->
49
50
 
50
51
  "By the method alone" is the formula without its correction list. The list
@@ -113,6 +114,7 @@ Counts only, to 2026-11-08, updated weekly (`scripts/stats.mjs`, history in [doc
113
114
  |---|---|
114
115
  | [docs/usage.md](docs/usage.md) | The API, the entry points, the HTTP server, this repository's commands and layout |
115
116
  | [docs/methods.md](docs/methods.md) | Each method in words and formulas, for ports to other languages; `test/vectors.json` to check one |
117
+ | [ports/](ports/README.md) | The methods in Python, Swift, Kotlin and Dart, each held to `test/vectors.json` |
116
118
  | [docs/status.md](docs/status.md) | Per method: what is certified, what was set aside, what is not yet covered |
117
119
  | [docs/diyanet.md](docs/diyanet.md) | What Diyanet's worldwide tables add: Isha by country, midsummer, Türkiye's points, tables on their own clocks |
118
120
  | [docs/feed.md](docs/feed.md) | `certification.json` and the lists as a feed: schemas, hashes, revisions, tags |
@@ -38,15 +38,15 @@
38
38
  },
39
39
  "diyanet": {
40
40
  "certified": true,
41
- "checkedAt": "2026-11-09",
42
- "places": 8132,
41
+ "checkedAt": "2026-11-11",
42
+ "places": 8318,
43
43
  "checks": [
44
44
  {
45
45
  "tables": "Diyanet — its tables worldwide",
46
- "places": 8132,
47
- "times": 69999603,
46
+ "places": 8318,
47
+ "times": 71630078,
48
48
  "off": 0,
49
- "offWithoutCorrections": 9129,
49
+ "offWithoutCorrections": 9368,
50
50
  "from": "2024-01-01",
51
51
  "to": "2027-12-31"
52
52
  }
@@ -54,8 +54,8 @@
54
54
  "corrections": {
55
55
  "from": "2024-01-01",
56
56
  "to": "2027-12-31",
57
- "entries": 9118,
58
- "sha256": "47997767e178ce48babd80f0e4a53460c5d379eb098bff1e7ebbba1e6afdf605"
57
+ "entries": 9357,
58
+ "sha256": "a8c6a7305611f8dcedc04a64efb8dd150d9a588c2b3ac3391bfb776d70a2ec83"
59
59
  },
60
60
  "revision": 1
61
61
  },
@@ -127,5 +127,28 @@
127
127
  "sha256": "a3f1c30576ddddbfda6cadabe442e1bcf3fb476b018b269d7d4783edd4e39d03"
128
128
  },
129
129
  "revision": 2
130
+ },
131
+ "turkiyetakvimi": {
132
+ "certified": true,
133
+ "checkedAt": "2026-11-11",
134
+ "places": 81,
135
+ "checks": [
136
+ {
137
+ "tables": "Türkiye Takvimi — its cities’ years",
138
+ "places": 81,
139
+ "times": 178848,
140
+ "off": 0,
141
+ "offWithoutCorrections": 52,
142
+ "from": "2025-12-31",
143
+ "to": "2027-01-02"
144
+ }
145
+ ],
146
+ "corrections": {
147
+ "from": "2025-12-31",
148
+ "to": "2027-01-02",
149
+ "entries": 52,
150
+ "sha256": "a3059fd5aae0b0f8ddee10a2aaaf93e982ded12e652f6aa21d0a3d347a082b41"
151
+ },
152
+ "revision": 1
130
153
  }
131
154
  }