mapnests-node-sdk
Version:
TypeScript Node Supported SDK for Mapnests API integration (Distance Matrix, Distance Matrix Details, Geocode, Reverse Geocode)
54 lines (53 loc) • 2.16 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Client = void 0;
const secure_req_1 = require("./secure_req");
class Client {
constructor(apiKey, packageName) {
this.apiKey = apiKey;
this.packageName = packageName;
}
async makeRequest(label, request) {
const { statusCode, response, errorMessage } = await (0, secure_req_1.callSecureRequest)(label, this.apiKey, this.packageName, request);
if (errorMessage) {
throw new Error(`[${label}] native error: ${errorMessage}`);
}
if (statusCode !== 200) {
throw new Error(`[${label}] unexpected status code ${statusCode}`);
}
return response;
}
async distanceMatrix(request) {
console.log("📍 DistanceMatrix request:", request);
const response = await this.makeRequest("distanceMatrix", request);
console.log("📍 DistanceMatrix response:", response);
return response;
}
async distanceMatrixDetails(request) {
console.log("📍 DistanceMatrixDetails request:", request);
const response = await this.makeRequest("distanceMatrixDetails", request);
console.log("📍 DistanceMatrixDetails response:", response);
return response;
}
async reverse(request) {
console.log("📍 Reverse request:", request);
const response = await this.makeRequest("reverse", request);
console.log("📍 Reverse response:", response);
return response;
}
async search(request) {
console.log("📍 Search request:", request);
const response = await this.makeRequest("search", request);
console.log("📍 Search response:", response);
return response;
}
async pairwiseRouteSummary(request) {
console.log("📍 PairwiseRouteSummary request:", request);
return this.makeRequest("pairwiseRouteSummary", request);
}
async multiSourceRouteSummary(request) {
console.log("📍 MultiSourceSummary request:", request);
return this.makeRequest("multiSourceSummary", request);
}
}
exports.Client = Client;