mindee
Version:
Mindee Client Library for Node.js
31 lines (30 loc) • 1.17 kB
JavaScript
import { parseDate } from "../../../parsing/index.js";
import { ErrorResponse } from "../../../v2/index.js";
import { JobWebhook } from "./jobWebhook.js";
/**
* Job information for a V2 polling attempt.
*/
export class Job {
constructor(serverResponse) {
this.id = serverResponse["id"];
if (serverResponse["status"] !== undefined) {
this.status = serverResponse["status"];
}
if (serverResponse["error"]) {
this.error = new ErrorResponse(serverResponse["error"]);
}
this.createdAt = parseDate(serverResponse["created_at"]);
if (!serverResponse["completed_at"]) {
this.completedAt = undefined;
}
else {
this.completedAt = parseDate(serverResponse["completed_at"]);
}
this.modelId = serverResponse["model_id"];
this.pollingUrl = serverResponse["polling_url"];
this.filename = serverResponse["filename"];
this.resultUrl = serverResponse["result_url"];
this.alias = serverResponse["alias"];
this.webhooks = (serverResponse["webhooks"] ?? []).map((webhook) => new JobWebhook(webhook));
}
}