UNPKG

sozlukjs

Version:

An API library for Turkish Dictionary websites.

38 lines (35 loc) 958 B
const fetch = require("node-fetch"); class TDKDictionary { static async getMeaningData(query) { const meaningData = await this.makeRequest("gts", query); return meaningData; } static async getSpellingData(query) { const spellingData = await this.makeRequest("yazim", query); return spellingData; } static async getAudioUrl(query) { const audioData = await this.makeRequest("audio", query); return audioData; } static async makeRequest(dataType, query) { if (dataType !== "audio") { const queryURL = encodeURI( `https://sozluk.gov.tr/${dataType}?ara=${query}` ); const request = await fetch(queryURL); const data = await request.json(); return data; } else { const data = await this.getSpellingData(query); const audioURLData = data.map(e => { return { word: e.sozu, url: `https://sozluk.gov.tr/ses/${e.seskod}.wav` }; }); return audioURLData; } } } module.exports = TDKDictionary;