tmdb-api-js
Version:
JavaScript wrapper for The Movie Database API
88 lines (82 loc) • 2.41 kB
JavaScript
var __defProp = Object.defineProperty;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __moduleCache = /* @__PURE__ */ new WeakMap;
var __toCommonJS = (from) => {
var entry = __moduleCache.get(from), desc;
if (entry)
return entry;
entry = __defProp({}, "__esModule", { value: true });
if (from && typeof from === "object" || typeof from === "function")
__getOwnPropNames(from).map((key) => !__hasOwnProp.call(entry, key) && __defProp(entry, key, {
get: () => from[key],
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
}));
__moduleCache.set(from, entry);
return entry;
};
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, {
get: all[name],
enumerable: true,
configurable: true,
set: (newValue) => all[name] = () => newValue
});
};
// src/index.ts
var exports_src = {};
__export(exports_src, {
default: () => src_default
});
module.exports = __toCommonJS(exports_src);
// src/constants.ts
var TMDB_BASE_API_URL = "https://api.themoviedb.org/3";
var TMDB_LANGUAGE = "en-US";
var CONSTANTS = {
TMDB_BASE_API_URL,
TMDB_LANGUAGE
};
var constants_default = CONSTANTS;
// src/client.ts
class Client {
language;
apiKey;
baseUrl;
constructor(apiKey, baseUrl, language) {
this.language = language ?? constants_default.TMDB_LANGUAGE;
this.apiKey = apiKey;
this.baseUrl = baseUrl ?? constants_default.TMDB_BASE_API_URL;
}
async get(path) {
const response = await fetch(`${this.baseUrl}/${path}?language=${this.language}`, {
headers: {
Authorization: `Bearer ${this.apiKey}`,
"Content-Type": "application/json"
}
});
return response.json();
}
}
var client_default = Client;
// src/tv/tv-client.ts
class TVClient extends client_default {
constructor(apiKey, baseUrl, language) {
super(apiKey, baseUrl, language);
}
async getDetails(showId) {
const response = await this.get(`tv/${showId}`);
return response;
}
}
var tv_client_default = TVClient;
// src/index.ts
class TMDBClient extends client_default {
tv;
constructor(apiKey, baseUrl, language) {
super(apiKey, baseUrl, language);
this.tv = new tv_client_default(apiKey, baseUrl, language);
}
}
var src_default = TMDBClient;