Rocky_Mountain_Vending/.pnpm-store/v10/files/73/0e7dea4865c5d3130f2f510216b0926589d56ed88da2c65d144b7ceaf4dd8f6e4a5dcd1a2d8e872be53608b3b659209bc87072ea0c6cf259b669cd14f7909f
DMleadgen 46d973904b
Initial commit: Rocky Mountain Vending website
Next.js website for Rocky Mountain Vending company featuring:
- Product catalog with Stripe integration
- Service areas and parts pages
- Admin dashboard with Clerk authentication
- SEO optimized pages with JSON-LD structured data

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-12 16:22:15 -07:00

52 lines
1.4 KiB
Text

export type CacheControl = {
browserTTL: number;
edgeTTL: number;
bypassCache: boolean;
};
export type AssetManifestType = Record<string, string>;
export type Options = {
cacheControl:
| ((req: Request) => Partial<CacheControl>)
| Partial<CacheControl>;
ASSET_NAMESPACE: KVNamespace;
ASSET_MANIFEST: AssetManifestType | string;
mapRequestToAsset?: (req: Request, options?: Partial<Options>) => Request;
defaultMimeType: string;
defaultDocument: string;
pathIsEncoded: boolean;
defaultETag: "strong" | "weak";
};
export class KVError extends Error {
constructor(message?: string, status: number = 500) {
super(message);
// see: typescriptlang.org/docs/handbook/release-notes/typescript-2-2.html
Object.setPrototypeOf(this, new.target.prototype); // restore prototype chain
this.name = KVError.name; // stack traces display correctly now
this.status = status;
}
status: number;
}
export class MethodNotAllowedError extends KVError {
constructor(
message: string = `Not a valid request method`,
status: number = 405
) {
super(message, status);
}
}
export class NotFoundError extends KVError {
constructor(message: string = `Not Found`, status: number = 404) {
super(message, status);
}
}
export class InternalError extends KVError {
constructor(
message: string = `Internal Error in KV Asset Handler`,
status: number = 500
) {
super(message, status);
}
}