izmir-open-data-js 1.0.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 (68) hide show
  1. package/README.md +367 -0
  2. package/dist/client.d.ts +5 -0
  3. package/dist/client.js +12 -0
  4. package/dist/common/types/gun.d.ts +13 -0
  5. package/dist/common/types/gun.js +11 -0
  6. package/dist/common/types/onemliYer.d.ts +18 -0
  7. package/dist/common/types/onemliYer.js +1 -0
  8. package/dist/common/utils/dateUtils.d.ts +1 -0
  9. package/dist/common/utils/dateUtils.js +6 -0
  10. package/dist/endpoints/afetler.d.ts +12 -0
  11. package/dist/endpoints/afetler.js +12 -0
  12. package/dist/endpoints/bisim.d.ts +12 -0
  13. package/dist/endpoints/bisim.js +12 -0
  14. package/dist/endpoints/cografi.d.ts +46 -0
  15. package/dist/endpoints/cografi.js +60 -0
  16. package/dist/endpoints/eczaneler.d.ts +25 -0
  17. package/dist/endpoints/eczaneler.js +20 -0
  18. package/dist/endpoints/egitim.d.ts +66 -0
  19. package/dist/endpoints/egitim.js +88 -0
  20. package/dist/endpoints/eshot.d.ts +55 -0
  21. package/dist/endpoints/eshot.js +40 -0
  22. package/dist/endpoints/etkinlikler.d.ts +29 -0
  23. package/dist/endpoints/etkinlikler.js +20 -0
  24. package/dist/endpoints/hizmet.d.ts +12 -0
  25. package/dist/endpoints/hizmet.js +12 -0
  26. package/dist/endpoints/iklim.d.ts +17 -0
  27. package/dist/endpoints/iklim.js +13 -0
  28. package/dist/endpoints/izban.d.ts +47 -0
  29. package/dist/endpoints/izban.js +34 -0
  30. package/dist/endpoints/izsu.d.ts +167 -0
  31. package/dist/endpoints/izsu.js +76 -0
  32. package/dist/endpoints/iztek.d.ts +18 -0
  33. package/dist/endpoints/iztek.js +13 -0
  34. package/dist/endpoints/kamu.d.ts +86 -0
  35. package/dist/endpoints/kamu.js +116 -0
  36. package/dist/endpoints/kutuphane.d.ts +46 -0
  37. package/dist/endpoints/kutuphane.js +60 -0
  38. package/dist/endpoints/metro.d.ts +17 -0
  39. package/dist/endpoints/metro.js +12 -0
  40. package/dist/endpoints/muhtarliklar.d.ts +12 -0
  41. package/dist/endpoints/muhtarliklar.js +12 -0
  42. package/dist/endpoints/otopark.d.ts +54 -0
  43. package/dist/endpoints/otopark.js +12 -0
  44. package/dist/endpoints/pazarlar.d.ts +41 -0
  45. package/dist/endpoints/pazarlar.js +29 -0
  46. package/dist/endpoints/plaj.d.ts +26 -0
  47. package/dist/endpoints/plaj.js +32 -0
  48. package/dist/endpoints/saglik.d.ts +71 -0
  49. package/dist/endpoints/saglik.js +95 -0
  50. package/dist/endpoints/sosyal.d.ts +36 -0
  51. package/dist/endpoints/sosyal.js +46 -0
  52. package/dist/endpoints/spor.d.ts +29 -0
  53. package/dist/endpoints/spor.js +33 -0
  54. package/dist/endpoints/taksi.d.ts +12 -0
  55. package/dist/endpoints/taksi.js +12 -0
  56. package/dist/endpoints/tarihi.d.ts +41 -0
  57. package/dist/endpoints/tarihi.js +53 -0
  58. package/dist/endpoints/tramvay.d.ts +61 -0
  59. package/dist/endpoints/tramvay.js +41 -0
  60. package/dist/endpoints/tren.d.ts +26 -0
  61. package/dist/endpoints/tren.js +32 -0
  62. package/dist/endpoints/vapur.d.ts +72 -0
  63. package/dist/endpoints/vapur.js +42 -0
  64. package/dist/endpoints/wizmirnet.d.ts +12 -0
  65. package/dist/endpoints/wizmirnet.js +12 -0
  66. package/dist/index.d.ts +182 -0
  67. package/dist/index.js +64 -0
  68. package/package.json +49 -0
package/README.md ADDED
@@ -0,0 +1,367 @@
1
+ # izmir-open-data-js 🌊
2
+
3
+ İzmir Büyükşehir Belediyesi **Açık Veri Portalı** (acikveri.bizizmir.com) API'lerini JavaScript ve TypeScript projelerinizde kolayca kullanmanızı sağlayan hafif ve modern bir kütüphanedir.
4
+
5
+ [![CI](https://github.com/atacan/izmir-open-data-js/actions/workflows/ci.yml/badge.svg)](https://github.com/atacan/izmir-open-data-js/actions/workflows/ci.yml)
6
+ [![npm version](https://img.shields.io/npm/v/izmir-open-data-js.svg)](https://www.npmjs.com/package/izmir-open-data-js)
7
+ [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
8
+
9
+ ---
10
+
11
+ ## ✨ Özellikler
12
+
13
+ * 🚀 **Hızlı Başlangıç:** Karmaşık API uç noktalarıyla uğraşmadan veriye ulaşın.
14
+ * 📊 **Geniş Veri Yelpazesi:** Eczanelerden ulaşım ağlarına kadar birçok veriye erişim.
15
+ * 🔄 **Modern Yapı:** `async/await` desteği ile temiz ve okunabilir kod.
16
+ * 🏗️ **Esnek:** Hem Node.js hem de modern tarayıcı ortamlarında kullanılabilir.
17
+
18
+ ---
19
+
20
+ ## 🚀 Kurulum
21
+
22
+ Projeye dahil etmek için npm veya yarn kullanabilirsiniz:
23
+
24
+ ```bash
25
+ npm install izmir-open-data-js
26
+ # veya
27
+ yarn add izmir-open-data-js
28
+ ```
29
+
30
+ ## 🛠️ Kullanım
31
+
32
+ Kütüphaneyi projenize dahil ettikten sonra `async/await` yapısını kullanarak verilere hızlıca erişebilirsiniz.
33
+
34
+ ### Örnek: Nöbetçi Eczaneleri Listeleme
35
+
36
+ ```javascript
37
+ import { IzmirAPI } from 'izmir-open-data-js';
38
+
39
+ const api = new IzmirAPI();
40
+
41
+ async function verileriGetir() {
42
+ try {
43
+ // Güncel nöbetçi eczane listesini çeker
44
+ const eczaneler = await api.eczaneler.getNobetciList();
45
+ console.log("Nöbetçi Eczaneler:", eczaneler);
46
+ } catch (err) {
47
+ console.error("Veri çekme hatası:", err.message);
48
+ }
49
+ }
50
+
51
+ verileriGetir();
52
+ ```
53
+
54
+ ---
55
+
56
+ ## 📋 Tüm Endpoint'ler
57
+
58
+ ### 🏥 Eczaneler (`api.eczaneler`)
59
+
60
+ | Metot | Açıklama |
61
+ | :--- | :--- |
62
+ | `getNobetciList()` | Nöbetçi eczanelerin listesini döner |
63
+ | `getList()` | Tüm eczanelerin listesini döner |
64
+
65
+ ### 👨‍⚕️ Sağlık (`api.saglik`)
66
+
67
+ | Metot | Açıklama |
68
+ | :--- | :--- |
69
+ | `getAcilYardimIstasyonlariList()` | Acil yardım istasyonlarını listeler |
70
+ | `getAileSagligiMerkezleriList()` | Aile sağlığı merkezlerini listeler |
71
+ | `getAgizDisSagligiMerkezleriList()` | Ağız ve diş sağlığı merkezlerini listeler |
72
+ | `getAnaCocukSagligiMerkezleriList()` | Ana çocuk sağlığı merkezlerini listeler |
73
+ | `getDalMerkezleriList()` | Dal merkezlerini listeler |
74
+ | `getHastanelerList()` | Hastaneleri listeler |
75
+ | `getKanMerkezleriList()` | Kan merkezlerini listeler |
76
+ | `getLaboratuvarlarList()` | Laboratuvarları listeler |
77
+ | `getPolikliniklerList()` | Poliklinikleri listeler |
78
+ | `getTipMerkezleriList()` | Tıp merkezlerini listeler |
79
+ | `getToplumSagligiMerkezleriList()` | Toplum sağlığı merkezlerini listeler |
80
+ | `getVeremSavasDispanserleriList()` | Verem savaş dispanserlerini listeler |
81
+ | `getVeterinerliklerList()` | Veterinerlikleri listeler |
82
+
83
+ ### 💧 İZSU (`api.izsu`)
84
+
85
+ | Metot | Açıklama |
86
+ | :--- | :--- |
87
+ | `getSuUretimiDagilimi()` | Su üretiminin aylara ve kaynaklara göre dağılımını döner |
88
+ | `getGunlukSuUretimi()` | Günlük su üretimi miktarlarını döner |
89
+ | `getBarajDolulukOranlari()` | Barajların doluluk oranlarını döner |
90
+ | `getHaftalikSuAnalizi()` | Haftalık su analiz sonuçlarını döner |
91
+ | `getBarajSuKaliteRaporlari()` | Baraj su kalite raporlarını döner |
92
+ | `getArizaKaynakliKesintiList()` | Arıza kaynaklı su kesintilerini listeler |
93
+ | `getBarajVeKuyuList()` | Baraj ve kuyuları listeler |
94
+ | `getIzsuSubeList()` | İZSU şubelerini listeler |
95
+ | `getIzsuVezneList()` | İZSU veznelerini listeler |
96
+
97
+ ### 🚌 Ulaşım - ESHOT (`api.eshot`)
98
+
99
+ | Metot | Açıklama |
100
+ | :--- | :--- |
101
+ | `getYakinDurakList(enlem, boylam)` | Belirtilen konuma yakın ESHOT duraklarını listeler |
102
+ | `getDuragaYaklasanOtobusList(durakId)` | Bir durağa yaklaşan otobüsleri listeler |
103
+ | `getHattinYaklasanOtobusleri(hatId, durakId)` | Bir hattın durağa yaklaşan otobüslerini listeler |
104
+ | `getHatOtobusKonumlari(hatId)` | Hatta ait otobüslerin anlık konum bilgilerini döner |
105
+
106
+ ### 🚲 Ulaşım - BİSİM (`api.bisim`)
107
+
108
+ | Metot | Açıklama |
109
+ | :--- | :--- |
110
+ | `getIstasyonList()` | BİSİM istasyonlarını listeler |
111
+
112
+ ### 🚃 Ulaşım - Tramvay (`api.tramvay`)
113
+
114
+ | Metot | Açıklama |
115
+ | :--- | :--- |
116
+ | `getHatList()` | Tramvay hatlarını listeler |
117
+ | `getSeferList()` | Tüm tramvay sefer bilgilerini listeler |
118
+ | `getIstasyonList(seferId)` | Sefer numarasına göre tramvay istasyonlarını listeler |
119
+ | `getSeferSiklikList(seferId)` | Sefer numarasına göre sefer sıklıklarını döner |
120
+
121
+ ### 🚇 Ulaşım - Metro (`api.metro`)
122
+
123
+ | Metot | Açıklama |
124
+ | :--- | :--- |
125
+ | `getIstasyonList()` | Metro istasyonlarını listeler |
126
+
127
+ ### 🚆 Ulaşım - İZBAN (`api.izban`)
128
+
129
+ | Metot | Açıklama |
130
+ | :--- | :--- |
131
+ | `getTarife(binisId, inisId, aktarma, httMi)` | İZBAN fiyat tarifesini hesaplar |
132
+ | `getIstasyonList()` | İZBAN istasyonlarını listeler |
133
+ | `getHareketSaatleri(kalkisId, varisId)` | İZBAN hareket saatlerini döner |
134
+
135
+ ### ⛴️ Ulaşım - Vapur (`api.vapur`)
136
+
137
+ | Metot | Açıklama |
138
+ | :--- | :--- |
139
+ | `getHareketSaatleri(kalkis, varis, gunTipi, detay)` | Vapur hareket saatlerini döner |
140
+ | `getCalismaGunleri()` | Vapurların çalışma günlerini döner |
141
+ | `getHareketSaatleriByHat(iskeleId, gunId)` | İskele bazlı hareket saatlerini döner |
142
+ | `getIskeleList()` | Vapur iskelelerini listeler |
143
+
144
+ ### 🚃 Ulaşım - Tren & Diğer (`api.tren`)
145
+
146
+ | Metot | Açıklama |
147
+ | :--- | :--- |
148
+ | `getTrenGarlariList()` | Tren garlarını listeler |
149
+ | `getHavaalaniList()` | Havaalanlarını listeler |
150
+ | `getOtobusTerminalleriList()` | Şehirlerarası otobüs terminallerini listeler |
151
+ | `getAracMuayeneIstasyonlariList()` | Araç muayene istasyonlarını listeler |
152
+
153
+ ### 🅿️ Otopark (`api.otopark`)
154
+
155
+ | Metot | Açıklama |
156
+ | :--- | :--- |
157
+ | `getList()` | Otoparkların doluluk ve konum bilgilerini döner |
158
+
159
+ ### 🚕 Taksi (`api.taksi`)
160
+
161
+ | Metot | Açıklama |
162
+ | :--- | :--- |
163
+ | `getDurakList()` | Taksi duraklarını listeler |
164
+
165
+ ### 🎭 Etkinlikler (`api.etkinlikler`)
166
+
167
+ | Metot | Açıklama |
168
+ | :--- | :--- |
169
+ | `getList()` | Kültür sanat etkinliklerini listeler |
170
+ | `getEtkinlikById(id)` | Belirli bir etkinliğin detaylarını döner |
171
+
172
+ ### 🌡️ İklim (`api.iklim`)
173
+
174
+ | Metot | Açıklama |
175
+ | :--- | :--- |
176
+ | `getGunlukHavaKalitesiOlcumleri(tarih)` | Belirtilen tarihe göre hava kalitesi ölçümlerini döner |
177
+
178
+ ### 🛒 Pazarlar (`api.pazarlar`)
179
+
180
+ | Metot | Açıklama |
181
+ | :--- | :--- |
182
+ | `getList()` | Semt pazar yerlerini listeler |
183
+ | `getBalikHalFiyatlari(tarih)` | Balık hal fiyatlarını döner |
184
+ | `getSebzeMeyveHalFiyatlari(tarih)` | Sebze meyve hal fiyatlarını döner |
185
+
186
+ ### 🏛️ Muhtarlıklar (`api.muhtarliklar`)
187
+
188
+ | Metot | Açıklama |
189
+ | :--- | :--- |
190
+ | `getList()` | Muhtarlıkları listeler |
191
+
192
+ ### 📶 WiFi (`api.wizmirnet`)
193
+
194
+ | Metot | Açıklama |
195
+ | :--- | :--- |
196
+ | `getList()` | Ücretsiz kablosuz internet noktalarını listeler |
197
+
198
+ ### ⚠️ Afetler (`api.afetler`)
199
+
200
+ | Metot | Açıklama |
201
+ | :--- | :--- |
202
+ | `getAcilDurumToplanmaAlanlari()` | Afet ve acil durum toplanma alanlarını listeler |
203
+
204
+ ### 🏢 Hizmet Noktaları (`api.hizmet`)
205
+
206
+ | Metot | Açıklama |
207
+ | :--- | :--- |
208
+ | `getHizmetNoktaList()` | İzBB hizmet noktalarını listeler |
209
+
210
+ ### 📚 Eğitim (`api.egitim`)
211
+
212
+ | Metot | Açıklama |
213
+ | :--- | :--- |
214
+ | `getEngelliOkullariList()` | Engelliler okullarını listeler |
215
+ | `getAnaokullarList()` | Anaokullarını listeler |
216
+ | `getEtutMerkezleriList()` | Etüt merkezlerini listeler |
217
+ | `getHalkEgitimList()` | Halk eğitim merkezlerini listeler |
218
+ | `getIlkokullarList()` | İlkokulları listeler |
219
+ | `getKolejlerList()` | Kolejleri listeler |
220
+ | `getLiselerList()` | Liseleri listeler |
221
+ | `getMeslekLiseleriList()` | Meslek liselerini listeler |
222
+ | `getOrtaokullarList()` | Ortaokulları listeler |
223
+ | `getSanatOkullariList()` | Sanat okullarını listeler |
224
+ | `getUniversitelerList()` | Üniversiteleri listeler |
225
+ | `getMilliEgitimList()` | Milli eğitim müdürlüklerini listeler |
226
+
227
+ ### 📖 Kütüphane & Kültür (`api.kutuphane`)
228
+
229
+ | Metot | Açıklama |
230
+ | :--- | :--- |
231
+ | `getKutuphanelerList()` | Kütüphaneleri listeler |
232
+ | `getKulturMerkezleriList()` | Kültür merkezlerini listeler |
233
+ | `getOperaVeBaleList()` | Opera ve bale mekanlarını listeler |
234
+ | `getGaleriVeSalonlarList()` | Sanat galerisi ve sergi salonlarını listeler |
235
+ | `getSenfoniOrkestrasiList()` | Senfoni orkestrası mekanlarını listeler |
236
+ | `getSinemalarList()` | Sinemaları listeler |
237
+ | `getTiyatrolarList()` | Tiyatroları listeler |
238
+ | `getMuzelerList()` | Müzeleri listeler |
239
+
240
+ ### 🏛️ Tarihi Yerler (`api.tarihi`)
241
+
242
+ | Metot | Açıklama |
243
+ | :--- | :--- |
244
+ | `getAntikKentlerList()` | Antik kentleri listeler |
245
+ | `getAntikKentYapilariList()` | Antik kent yapılarını listeler |
246
+ | `getKoskVeKonaklarList()` | Köşk ve konakları listeler |
247
+ | `getKuleAnitHeykellerList()` | Kule, anıt ve heykelleri listeler |
248
+ | `getTarihiCarsiHanlarList()` | Tarihi çarşı ve hanları listeler |
249
+ | `getTarihiSuYapilariList()` | Tarihi su yapılarını listeler |
250
+ | `getTarihiYapilarList()` | Tarihi yapıları listeler |
251
+
252
+ ### 🏖️ Plaj & Turizm (`api.plaj`)
253
+
254
+ | Metot | Açıklama |
255
+ | :--- | :--- |
256
+ | `getPlajlarList()` | Plajları listeler |
257
+ | `getHamamlarList()` | Hamamları listeler |
258
+ | `getKaplicalarList()` | Kaplıcaları listeler |
259
+ | `getFuarList()` | Fuar alanlarını listeler |
260
+
261
+ ### 🏛️ Kamu Kurumları (`api.kamu`)
262
+
263
+ | Metot | Açıklama |
264
+ | :--- | :--- |
265
+ | `getBankalarList()` | Bankaları listeler |
266
+ | `getBelediyelerList()` | Belediye ve birimleri listeler |
267
+ | `getBolgeMudurlukleriList()` | Bölge müdürlüklerini listeler |
268
+ | `getDefterdarliklarList()` | Defterdarlıkları listeler |
269
+ | `getDerneklerList()` | Dernekleri listeler |
270
+ | `getEvlendirmeDaireleriList()` | Evlendirme dairelerini listeler |
271
+ | `getIlIlceMudurlukleriList()` | İl ve ilçe müdürlüklerini listeler |
272
+ | `getItfaiyeGruplariList()` | İtfaiye gruplarını listeler |
273
+ | `getKonsolosluklarList()` | Konsoloslukları listeler |
274
+ | `getMeslekOdalariList()` | Meslek odalarını listeler |
275
+ | `getNoterlerList()` | Noterleri listeler |
276
+ | `getNufusMudurlukleriList()` | Nüfus müdürlüklerini listeler |
277
+ | `getPttList()` | PTT şubelerini listeler |
278
+ | `getTurizmDanismaList()` | Turizm danışma merkezlerini listeler |
279
+ | `getVergiDaireleriList()` | Vergi dairelerini listeler |
280
+ | `getMaskematikNoktalariList()` | Maskematik istasyonlarını listeler |
281
+
282
+ ### 👨‍👩‍👧‍👦 Sosyal Hizmetler (`api.sosyal`)
283
+
284
+ | Metot | Açıklama |
285
+ | :--- | :--- |
286
+ | `getAileDayanismaMerkezleriList()` | Aile dayanışma merkezlerini listeler |
287
+ | `getCocukGenclikMerkezleriList()` | Çocuk ve gençlik merkezlerini listeler |
288
+ | `getCocukYuvalariList()` | Çocuk yuvalarını listeler |
289
+ | `getHuzurevleriList()` | Huzurevlerini listeler |
290
+ | `getToplumMerkezleriList()` | Toplum merkezlerini listeler |
291
+ | `getYetistirmeYurtlariList()` | Yetiştirme yurtlarını listeler |
292
+
293
+ ### ⚽ Spor (`api.spor`) _(Deneysel)_
294
+
295
+ | Metot | Açıklama |
296
+ | :--- | :--- |
297
+ | `getHipodromList()` | Hipodromları listeler |
298
+ | `getSporSalonlariList()` | Spor salonlarını listeler |
299
+ | `getStadyumlarList()` | Stadyumları listeler |
300
+
301
+ > ⚠️ **Not:** Spor endpoint'leri API'de henüz tam aktif olmayabilir.
302
+
303
+ ### 🗺️ Coğrafi Özellikler (`api.cografi`)
304
+
305
+ | Metot | Açıklama |
306
+ | :--- | :--- |
307
+ | `getAdaYarimadaList()` | Ada ve yarımadaları listeler |
308
+ | `getBurunlarList()` | Burunları listeler |
309
+ | `getDagTepeList()` | Dağ ve tepeleri listeler |
310
+ | `getGollerList()` | Gölleri listeler |
311
+ | `getKorfezKoylarList()` | Körfez ve koyları listeler |
312
+ | `getNehirCaylarList()` | Nehir ve çayları listeler |
313
+ | `getOrmanlarList()` | Ormanları listeler |
314
+ | `getMeydanlarList()` | Meydanları listeler |
315
+
316
+ ### 🎫 İztek - İzmirim Kart (`api.iztek`)
317
+
318
+ | Metot | Açıklama |
319
+ | :--- | :--- |
320
+ | `getAskidaIzmirimKartIstatistik()` | Askıda İzmirim Kart istatistiklerini döner |
321
+
322
+ ---
323
+
324
+ ## 📖 API Kaynağı
325
+
326
+ Bu kütüphane, verileri [İzmir Büyükşehir Belediyesi Açık Veri Portalı](https://acikveri.bizizmir.com/) üzerinden çekmektedir. Veri yapılarındaki herhangi bir değişiklik veya kesinti portal kaynaklı olabilir.
327
+
328
+ ---
329
+
330
+ ## 🤝 Katkıda Bulunma
331
+
332
+ İzmir için geliştirilen bu projeye katkı sağlamak harika olur! Yeni bir özellik eklemek veya bir hatayı düzeltmek için:
333
+
334
+ 1. Bu depoyu (repository) **fork** edin.
335
+ 2. Yeni bir dal (branch) oluşturun: `git checkout -b feature/yeniOzellik`
336
+ 3. Değişikliklerinizi yapın ve **commit** edin: `git commit -m 'Ekle: Yeni API uç noktası'`
337
+ 4. Dalınızı **push** edin: `git push origin feature/yeniOzellik`
338
+ 5. Bir **Pull Request** açın.
339
+
340
+ ---
341
+
342
+ ## 🧪 Test
343
+
344
+ ```bash
345
+ # Unit testleri çalıştır
346
+ npm test
347
+
348
+ # Watch modunda testler
349
+ npm run test:watch
350
+
351
+ # Coverage raporuyla testler
352
+ npm run test:coverage
353
+
354
+ # Canlı API testleri (opsiyonel)
355
+ npm run test:live
356
+ ```
357
+
358
+ ---
359
+
360
+ ## 📄 Lisans
361
+
362
+ Bu proje [MIT Lisansı](LICENSE) ile lisanslanmıştır.
363
+
364
+ ---
365
+
366
+ > [!NOTE]
367
+ > Bu paket, geliştiricilerin İzmir'in açık verilerini projelerine daha hızlı entegre etmesi için hazırlanmış bir topluluk projesidir. Resmi kurumlarla doğrudan bir bağı yoktur.
@@ -0,0 +1,5 @@
1
+ export declare class IzmirClient {
2
+ private readonly baseUrl;
3
+ constructor(baseUrl?: string);
4
+ get(path: string): Promise<any>;
5
+ }
package/dist/client.js ADDED
@@ -0,0 +1,12 @@
1
+ export class IzmirClient {
2
+ constructor(baseUrl = "https://openapi.izmir.bel.tr/api/") {
3
+ this.baseUrl = baseUrl;
4
+ }
5
+ async get(path) {
6
+ const res = await fetch(this.baseUrl + path);
7
+ if (!res.ok) {
8
+ throw new Error(`API response error: ${res.status}`);
9
+ }
10
+ return res.json();
11
+ }
12
+ }
@@ -0,0 +1,13 @@
1
+ export interface GunReferansi {
2
+ GunId: number;
3
+ Gun: string;
4
+ }
5
+ export declare enum Gunler {
6
+ Pazartesi = 1,
7
+ Sali = 2,
8
+ Carsamba = 3,
9
+ Persembe = 4,
10
+ Cuma = 5,
11
+ Cumartesi = 6,
12
+ Pazar = 7
13
+ }
@@ -0,0 +1,11 @@
1
+ // Uygulama genelinde enum olarak kullanmak daha pratiktir:
2
+ export var Gunler;
3
+ (function (Gunler) {
4
+ Gunler[Gunler["Pazartesi"] = 1] = "Pazartesi";
5
+ Gunler[Gunler["Sali"] = 2] = "Sali";
6
+ Gunler[Gunler["Carsamba"] = 3] = "Carsamba";
7
+ Gunler[Gunler["Persembe"] = 4] = "Persembe";
8
+ Gunler[Gunler["Cuma"] = 5] = "Cuma";
9
+ Gunler[Gunler["Cumartesi"] = 6] = "Cumartesi";
10
+ Gunler[Gunler["Pazar"] = 7] = "Pazar";
11
+ })(Gunler || (Gunler = {}));
@@ -0,0 +1,18 @@
1
+ export interface DefaultOnemliYer {
2
+ ILCE: string;
3
+ KAPINO: string;
4
+ ENLEM: number;
5
+ ACIKLAMA: string;
6
+ ILCEID: string;
7
+ MAHALLE: string;
8
+ MAHALLEID: string | null;
9
+ ADI: string;
10
+ BOYLAM: number;
11
+ YOL: string;
12
+ }
13
+ export interface OnemliYerWrapper<T> {
14
+ sayfadaki_kayitsayisi: number;
15
+ kayit_sayisi: number;
16
+ sayfa_numarasi: number;
17
+ onemliyer: T[];
18
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export declare function formatDate(date: Date): string;
@@ -0,0 +1,6 @@
1
+ export function formatDate(date) {
2
+ const year = date.getFullYear();
3
+ const month = String(date.getMonth() + 1).padStart(2, '0');
4
+ const day = String(date.getDate()).padStart(2, '0');
5
+ return `${year}-${month}-${day}`;
6
+ }
@@ -0,0 +1,12 @@
1
+ import { IzmirClient } from "../client";
2
+ import { OnemliYerWrapper, DefaultOnemliYer } from "../common/types/onemliYer";
3
+ export interface AfetToplanmaAlanlari extends DefaultOnemliYer {
4
+ }
5
+ export declare function afetler(client: IzmirClient): {
6
+ /**
7
+ * Afet ve acil durum toplanma alanlarına ait ilçe, mahalle ve konum bilgilerini içeren web servisi.
8
+ *
9
+ * Kaynak: https://acikveri.bizizmir.com/dataset/afet-ve-acil-durum-toplanma-alanlari
10
+ */
11
+ getAcilDurumToplanmaAlanlari(): Promise<OnemliYerWrapper<AfetToplanmaAlanlari>>;
12
+ };
@@ -0,0 +1,12 @@
1
+ export function afetler(client) {
2
+ return {
3
+ /**
4
+ * Afet ve acil durum toplanma alanlarına ait ilçe, mahalle ve konum bilgilerini içeren web servisi.
5
+ *
6
+ * Kaynak: https://acikveri.bizizmir.com/dataset/afet-ve-acil-durum-toplanma-alanlari
7
+ */
8
+ getAcilDurumToplanmaAlanlari() {
9
+ return client.get("ibb/cbs/afetaciltoplanmaalani");
10
+ }
11
+ };
12
+ }
@@ -0,0 +1,12 @@
1
+ import { IzmirClient } from "../client";
2
+ import { DefaultOnemliYer, OnemliYerWrapper } from "../common/types/onemliYer";
3
+ export interface BisimIstasyon extends DefaultOnemliYer {
4
+ }
5
+ export declare function bisim(client: IzmirClient): {
6
+ /**
7
+ * İstasyonların konum, kapasite ve bisiklet sayılarını içeren web servisi.
8
+ *
9
+ * Kaynak: https://acikveri.bizizmir.com/dataset/bisim-istasyonlari
10
+ */
11
+ getIstasyonList(): Promise<OnemliYerWrapper<BisimIstasyon>>;
12
+ };
@@ -0,0 +1,12 @@
1
+ export function bisim(client) {
2
+ return {
3
+ /**
4
+ * İstasyonların konum, kapasite ve bisiklet sayılarını içeren web servisi.
5
+ *
6
+ * Kaynak: https://acikveri.bizizmir.com/dataset/bisim-istasyonlari
7
+ */
8
+ getIstasyonList() {
9
+ return client.get('izulas/bisim/istasyonlar');
10
+ }
11
+ };
12
+ }
@@ -0,0 +1,46 @@
1
+ import { IzmirClient } from "../client";
2
+ import { DefaultOnemliYer, OnemliYerWrapper } from "../common/types/onemliYer";
3
+ export interface CografiYer extends DefaultOnemliYer {
4
+ }
5
+ export declare function cografi(client: IzmirClient): {
6
+ /**
7
+ * Ada ve yarımada konum bilgilerini içeren web servisi.
8
+ * Kaynak: https://openapi.izmir.bel.tr/api/ibb/cbs/adayarimada
9
+ */
10
+ getAdaYarimadaList(): Promise<OnemliYerWrapper<CografiYer>>;
11
+ /**
12
+ * Burun konum bilgilerini içeren web servisi.
13
+ * Kaynak: https://openapi.izmir.bel.tr/api/ibb/cbs/burunlar
14
+ */
15
+ getBurunlarList(): Promise<OnemliYerWrapper<CografiYer>>;
16
+ /**
17
+ * Dağ ve tepelerin konum bilgilerini içeren web servisi.
18
+ * Kaynak: https://openapi.izmir.bel.tr/api/ibb/cbs/dagtepe
19
+ */
20
+ getDagTepeList(): Promise<OnemliYerWrapper<CografiYer>>;
21
+ /**
22
+ * Göl konum bilgilerini içeren web servisi.
23
+ * Kaynak: https://openapi.izmir.bel.tr/api/ibb/cbs/goller
24
+ */
25
+ getGollerList(): Promise<OnemliYerWrapper<CografiYer>>;
26
+ /**
27
+ * Körfez ve koyların konum bilgilerini içeren web servisi.
28
+ * Kaynak: https://openapi.izmir.bel.tr/api/ibb/cbs/korfezvekoylar
29
+ */
30
+ getKorfezKoylarList(): Promise<OnemliYerWrapper<CografiYer>>;
31
+ /**
32
+ * Nehir ve çayların konum bilgilerini içeren web servisi.
33
+ * Kaynak: https://openapi.izmir.bel.tr/api/ibb/cbs/nehirvecaylar
34
+ */
35
+ getNehirCaylarList(): Promise<OnemliYerWrapper<CografiYer>>;
36
+ /**
37
+ * Ormanların konum bilgilerini içeren web servisi.
38
+ * Kaynak: https://openapi.izmir.bel.tr/api/ibb/cbs/ormanlar
39
+ */
40
+ getOrmanlarList(): Promise<OnemliYerWrapper<CografiYer>>;
41
+ /**
42
+ * Meydanların konum bilgilerini içeren web servisi.
43
+ * Kaynak: https://openapi.izmir.bel.tr/api/ibb/cbs/meydanlar
44
+ */
45
+ getMeydanlarList(): Promise<OnemliYerWrapper<CografiYer>>;
46
+ };
@@ -0,0 +1,60 @@
1
+ export function cografi(client) {
2
+ return {
3
+ /**
4
+ * Ada ve yarımada konum bilgilerini içeren web servisi.
5
+ * Kaynak: https://openapi.izmir.bel.tr/api/ibb/cbs/adayarimada
6
+ */
7
+ getAdaYarimadaList() {
8
+ return client.get("ibb/cbs/adayarimada");
9
+ },
10
+ /**
11
+ * Burun konum bilgilerini içeren web servisi.
12
+ * Kaynak: https://openapi.izmir.bel.tr/api/ibb/cbs/burunlar
13
+ */
14
+ getBurunlarList() {
15
+ return client.get("ibb/cbs/burunlar");
16
+ },
17
+ /**
18
+ * Dağ ve tepelerin konum bilgilerini içeren web servisi.
19
+ * Kaynak: https://openapi.izmir.bel.tr/api/ibb/cbs/dagtepe
20
+ */
21
+ getDagTepeList() {
22
+ return client.get("ibb/cbs/dagtepe");
23
+ },
24
+ /**
25
+ * Göl konum bilgilerini içeren web servisi.
26
+ * Kaynak: https://openapi.izmir.bel.tr/api/ibb/cbs/goller
27
+ */
28
+ getGollerList() {
29
+ return client.get("ibb/cbs/goller");
30
+ },
31
+ /**
32
+ * Körfez ve koyların konum bilgilerini içeren web servisi.
33
+ * Kaynak: https://openapi.izmir.bel.tr/api/ibb/cbs/korfezvekoylar
34
+ */
35
+ getKorfezKoylarList() {
36
+ return client.get("ibb/cbs/korfezvekoylar");
37
+ },
38
+ /**
39
+ * Nehir ve çayların konum bilgilerini içeren web servisi.
40
+ * Kaynak: https://openapi.izmir.bel.tr/api/ibb/cbs/nehirvecaylar
41
+ */
42
+ getNehirCaylarList() {
43
+ return client.get("ibb/cbs/nehirvecaylar");
44
+ },
45
+ /**
46
+ * Ormanların konum bilgilerini içeren web servisi.
47
+ * Kaynak: https://openapi.izmir.bel.tr/api/ibb/cbs/ormanlar
48
+ */
49
+ getOrmanlarList() {
50
+ return client.get("ibb/cbs/ormanlar");
51
+ },
52
+ /**
53
+ * Meydanların konum bilgilerini içeren web servisi.
54
+ * Kaynak: https://openapi.izmir.bel.tr/api/ibb/cbs/meydanlar
55
+ */
56
+ getMeydanlarList() {
57
+ return client.get("ibb/cbs/meydanlar");
58
+ }
59
+ };
60
+ }
@@ -0,0 +1,25 @@
1
+ import { IzmirClient } from "../client";
2
+ export interface Eczane {
3
+ Adi: string;
4
+ Telefon: string;
5
+ Adres: string;
6
+ Bolge: string;
7
+ BolgeAciklama: string;
8
+ LokasyonX: string;
9
+ LokasyonY: string;
10
+ Tarih: string;
11
+ }
12
+ export declare function eczaneler(client: IzmirClient): {
13
+ /**
14
+ * Nöbetçi eczanelerin bilgilerini içeren web servisi.
15
+ *
16
+ * Kaynak: https://acikveri.bizizmir.com/dataset/nobetci-eczaneler-ve-eczane-listesi
17
+ */
18
+ getNobetciList(): Promise<Eczane[]>;
19
+ /**
20
+ * Eczanelerin bilgilerini içeren web servisi.
21
+ *
22
+ * Kaynak: https://acikveri.bizizmir.com/dataset/nobetci-eczaneler-ve-eczane-listesi
23
+ */
24
+ getList(): Promise<Eczane[]>;
25
+ };
@@ -0,0 +1,20 @@
1
+ export function eczaneler(client) {
2
+ return {
3
+ /**
4
+ * Nöbetçi eczanelerin bilgilerini içeren web servisi.
5
+ *
6
+ * Kaynak: https://acikveri.bizizmir.com/dataset/nobetci-eczaneler-ve-eczane-listesi
7
+ */
8
+ getNobetciList() {
9
+ return client.get("ibb/nobetcieczaneler");
10
+ },
11
+ /**
12
+ * Eczanelerin bilgilerini içeren web servisi.
13
+ *
14
+ * Kaynak: https://acikveri.bizizmir.com/dataset/nobetci-eczaneler-ve-eczane-listesi
15
+ */
16
+ getList() {
17
+ return client.get("ibb/eczaneler");
18
+ }
19
+ };
20
+ }