@beshkenadze/courtlistener-sdk
Version:
TypeScript SDK and MCP server for CourtListener API
92 lines (88 loc) • 2.91 kB
JavaScript
var __create = Object.create;
var __getProtoOf = Object.getPrototypeOf;
var __defProp = Object.defineProperty;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __toESM = (mod, isNodeMode, target) => {
target = mod != null ? __create(__getProtoOf(mod)) : {};
const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
for (let key of __getOwnPropNames(mod))
if (!__hasOwnProp.call(to, key))
__defProp(to, key, {
get: () => mod[key],
enumerable: true
});
return to;
};
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,
customInstance: () => customInstance,
axiosInstance: () => axiosInstance
});
module.exports = __toCommonJS(exports_src);
// src/api/client.ts
var import_axios = __toESM(require("axios"));
var BASE_URL = "https://www.courtlistener.com/api/rest/v4";
var API_TOKEN = process.env.COURTLISTENER_API_TOKEN;
var axiosInstance = import_axios.default.create({
baseURL: BASE_URL,
timeout: 30000,
headers: {
"Content-Type": "application/json",
"User-Agent": "CourtListener SDK",
...API_TOKEN && { Authorization: `Token ${API_TOKEN}` }
}
});
axiosInstance.interceptors.request.use((config) => {
const token = config.headers?.Authorization || API_TOKEN;
if (token && !config.headers.Authorization) {
config.headers.Authorization = `Token ${token}`;
}
return config;
});
var customInstance = (config, options) => {
const source = import_axios.default.CancelToken.source();
const promise = axiosInstance({
...config,
...options,
cancelToken: source.token
}).then(({ data }) => data);
promise.cancel = () => {
source.cancel("Query was cancelled");
};
return promise;
};
// src/index.ts
var src_default = {
name: "CourtListener SDK",
version: "1.0.0",
description: "TypeScript SDK and MCP server for the CourtListener API"
};
//# debugId=F058FFA53ACB4E1664756E2164756E21
//# sourceMappingURL=index.js.map