@coursebuilder/core
Version:
Core package for Course Builder
53 lines (51 loc) • 1.65 kB
JavaScript
import {
MUX_WEBHOOK_EVENT
} from "./chunk-VDY4BWB4.js";
import {
__name
} from "./chunk-VLQXSCFN.js";
// src/inngest/video-processing/functions/video-processing-error.ts
var videoProcessingErrorConfig = {
id: `mux-video-asset-error`,
name: "Mux Video Asset Errored"
};
var videoProcessingErrorTrigger = {
event: MUX_WEBHOOK_EVENT,
if: 'event.data.muxWebhookEvent.type == "video.asset.errored"'
};
var videoProcessingErrorHandler = /* @__PURE__ */ __name(async ({ event, step, db, partyProvider }) => {
const videoResource = await step.run("Load Video Resource", async () => {
return db.getVideoResource(event.data.muxWebhookEvent.data.passthrough);
});
if (!videoResource) {
throw new Error("Video Resource not found");
}
await step.run("update the video resource in Sanity as errored", async () => {
return db.updateContentResourceFields({
id: videoResource.id,
fields: {
state: "errored"
}
});
});
await step.run("announce asset errored", async () => {
return await partyProvider.broadcastMessage({
body: {
body: `Mux Asset Errored: ${event.data.muxWebhookEvent.data.id}`,
requestId: event.data.muxWebhookEvent.data.passthrough,
name: "video.asset.errored"
},
roomId: event.data.muxWebhookEvent.data.passthrough
});
});
return event.data.muxWebhookEvent.data;
}, "videoProcessingErrorHandler");
var videoProcessingError = {
config: videoProcessingErrorConfig,
trigger: videoProcessingErrorTrigger,
handler: videoProcessingErrorHandler
};
export {
videoProcessingError
};
//# sourceMappingURL=chunk-3FYA45JB.js.map