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.
- package/README.md +367 -0
- package/dist/client.d.ts +5 -0
- package/dist/client.js +12 -0
- package/dist/common/types/gun.d.ts +13 -0
- package/dist/common/types/gun.js +11 -0
- package/dist/common/types/onemliYer.d.ts +18 -0
- package/dist/common/types/onemliYer.js +1 -0
- package/dist/common/utils/dateUtils.d.ts +1 -0
- package/dist/common/utils/dateUtils.js +6 -0
- package/dist/endpoints/afetler.d.ts +12 -0
- package/dist/endpoints/afetler.js +12 -0
- package/dist/endpoints/bisim.d.ts +12 -0
- package/dist/endpoints/bisim.js +12 -0
- package/dist/endpoints/cografi.d.ts +46 -0
- package/dist/endpoints/cografi.js +60 -0
- package/dist/endpoints/eczaneler.d.ts +25 -0
- package/dist/endpoints/eczaneler.js +20 -0
- package/dist/endpoints/egitim.d.ts +66 -0
- package/dist/endpoints/egitim.js +88 -0
- package/dist/endpoints/eshot.d.ts +55 -0
- package/dist/endpoints/eshot.js +40 -0
- package/dist/endpoints/etkinlikler.d.ts +29 -0
- package/dist/endpoints/etkinlikler.js +20 -0
- package/dist/endpoints/hizmet.d.ts +12 -0
- package/dist/endpoints/hizmet.js +12 -0
- package/dist/endpoints/iklim.d.ts +17 -0
- package/dist/endpoints/iklim.js +13 -0
- package/dist/endpoints/izban.d.ts +47 -0
- package/dist/endpoints/izban.js +34 -0
- package/dist/endpoints/izsu.d.ts +167 -0
- package/dist/endpoints/izsu.js +76 -0
- package/dist/endpoints/iztek.d.ts +18 -0
- package/dist/endpoints/iztek.js +13 -0
- package/dist/endpoints/kamu.d.ts +86 -0
- package/dist/endpoints/kamu.js +116 -0
- package/dist/endpoints/kutuphane.d.ts +46 -0
- package/dist/endpoints/kutuphane.js +60 -0
- package/dist/endpoints/metro.d.ts +17 -0
- package/dist/endpoints/metro.js +12 -0
- package/dist/endpoints/muhtarliklar.d.ts +12 -0
- package/dist/endpoints/muhtarliklar.js +12 -0
- package/dist/endpoints/otopark.d.ts +54 -0
- package/dist/endpoints/otopark.js +12 -0
- package/dist/endpoints/pazarlar.d.ts +41 -0
- package/dist/endpoints/pazarlar.js +29 -0
- package/dist/endpoints/plaj.d.ts +26 -0
- package/dist/endpoints/plaj.js +32 -0
- package/dist/endpoints/saglik.d.ts +71 -0
- package/dist/endpoints/saglik.js +95 -0
- package/dist/endpoints/sosyal.d.ts +36 -0
- package/dist/endpoints/sosyal.js +46 -0
- package/dist/endpoints/spor.d.ts +29 -0
- package/dist/endpoints/spor.js +33 -0
- package/dist/endpoints/taksi.d.ts +12 -0
- package/dist/endpoints/taksi.js +12 -0
- package/dist/endpoints/tarihi.d.ts +41 -0
- package/dist/endpoints/tarihi.js +53 -0
- package/dist/endpoints/tramvay.d.ts +61 -0
- package/dist/endpoints/tramvay.js +41 -0
- package/dist/endpoints/tren.d.ts +26 -0
- package/dist/endpoints/tren.js +32 -0
- package/dist/endpoints/vapur.d.ts +72 -0
- package/dist/endpoints/vapur.js +42 -0
- package/dist/endpoints/wizmirnet.d.ts +12 -0
- package/dist/endpoints/wizmirnet.js +12 -0
- package/dist/index.d.ts +182 -0
- package/dist/index.js +64 -0
- 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
|
+
[](https://github.com/atacan/izmir-open-data-js/actions/workflows/ci.yml)
|
|
6
|
+
[](https://www.npmjs.com/package/izmir-open-data-js)
|
|
7
|
+
[](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.
|
package/dist/client.d.ts
ADDED
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,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,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
|
+
}
|