c7861be520
Once this is merged, oxlint is at a pretty sensible baseline. **Enable `no-unused-vars`, `typescript/consistent-type-imports`, and `import/no-duplicates` lint rules** Turns on three previously-disabled oxlint rules across the monorepo and fixes all violations: - **`no-unused-vars`** – enabled as an error with standard ignore patterns: unused function arguments are ignored by default (`args: "none"`), variables/caught errors/destructured array elements prefixed with `_` are allowed, and rest siblings are permitted. - **`typescript/consistent-type-imports`** – enforced as an error; all type-only imports now use the `import type` syntax. - **`import/no-duplicates`** – enforced as an error; duplicate import statements from the same module have been merged. The remaining commits clean up the violations found across the codebase: removing unused variables/imports/type aliases, adding `_` prefixes to intentionally unused bindings, fixing duplicate imports, and converting value imports to `import type` where appropriate.
38 lines
1.0 KiB
TypeScript
38 lines
1.0 KiB
TypeScript
import type { IOPacket } from "@trigger.dev/core/v3/utils/ioSerialization";
|
|
import { ServiceValidationError } from "~/v3/services/common.server";
|
|
|
|
export class MetadataTooLargeError extends ServiceValidationError {
|
|
constructor(message: string) {
|
|
super(message, 413);
|
|
this.name = "MetadataTooLargeError";
|
|
}
|
|
}
|
|
|
|
export function handleMetadataPacket(
|
|
metadata: any,
|
|
metadataType: string,
|
|
maximumSize: number
|
|
): IOPacket | undefined {
|
|
let metadataPacket: IOPacket | undefined = undefined;
|
|
|
|
if (typeof metadata === "string") {
|
|
metadataPacket = { data: metadata, dataType: metadataType };
|
|
}
|
|
|
|
if (metadataType === "application/json") {
|
|
metadataPacket = { data: JSON.stringify(metadata), dataType: "application/json" };
|
|
}
|
|
|
|
if (!metadataPacket || !metadataPacket.data) {
|
|
return;
|
|
}
|
|
|
|
const byteLength = Buffer.byteLength(metadataPacket.data, "utf8");
|
|
|
|
if (byteLength > maximumSize) {
|
|
throw new MetadataTooLargeError(`Metadata exceeds maximum size of ${maximumSize} bytes`);
|
|
}
|
|
|
|
return metadataPacket;
|
|
}
|