Add support for Buffer in payloads and outputs
This commit is contained in:
@@ -0,0 +1,5 @@
|
|||||||
|
---
|
||||||
|
"@trigger.dev/core": patch
|
||||||
|
---
|
||||||
|
|
||||||
|
Add support for Buffer in payloads and outputs
|
||||||
@@ -366,7 +366,18 @@ function getPacketExtension(outputType: string): string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async function loadSuperJSON() {
|
async function loadSuperJSON() {
|
||||||
return await import("superjson");
|
const superjson = await import("superjson");
|
||||||
|
|
||||||
|
superjson.registerCustom<Buffer, number[]>(
|
||||||
|
{
|
||||||
|
isApplicable: (v): v is Buffer => v instanceof Buffer,
|
||||||
|
serialize: (v) => [...v],
|
||||||
|
deserialize: (v) => Buffer.from(v),
|
||||||
|
},
|
||||||
|
"buffer"
|
||||||
|
);
|
||||||
|
|
||||||
|
return superjson;
|
||||||
}
|
}
|
||||||
|
|
||||||
function safeJsonParse(value: string): any {
|
function safeJsonParse(value: string): any {
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ export const superParentTask = task({
|
|||||||
const result = await superChildTask.triggerAndWait({
|
const result = await superChildTask.triggerAndWait({
|
||||||
foo: "bar",
|
foo: "bar",
|
||||||
whenToDo: new Date(),
|
whenToDo: new Date(),
|
||||||
|
buffer: Buffer.from("foo"),
|
||||||
});
|
});
|
||||||
|
|
||||||
if (result.ok) {
|
if (result.ok) {
|
||||||
@@ -24,10 +25,11 @@ export const superParentTask = task({
|
|||||||
|
|
||||||
export const superChildTask = task({
|
export const superChildTask = task({
|
||||||
id: "super-child-task",
|
id: "super-child-task",
|
||||||
run: async (payload: { whenToDo: Date; foo: string }) => {
|
run: async (payload: { whenToDo: Date; foo: string; buffer: Buffer }) => {
|
||||||
logger.log("super-child-task payload: ", { payload });
|
logger.log("super-child-task payload: ", { payload });
|
||||||
logger.log(`typeof payload.whenToDo = ${typeof payload.whenToDo}`);
|
logger.log(`typeof payload.whenToDo = ${typeof payload.whenToDo}`);
|
||||||
logger.log(`typeof payload.foo = ${typeof payload.foo}`);
|
logger.log(`typeof payload.foo = ${typeof payload.foo}`);
|
||||||
|
logger.log(`typeof payload.buffer = ${payload.buffer.toString("utf-8")}`);
|
||||||
|
|
||||||
return {
|
return {
|
||||||
date: new Date(),
|
date: new Date(),
|
||||||
|
|||||||
Reference in New Issue
Block a user