\x89PNG\r\n\x1a\n\x00\x00\x00\x0DIHDR\x00\x00\x00\x01\x00 \x00\x00\x01\x08\x06\x00\x00\x00\x1F\x15\xC4\x89\x00\x00\x00 \x0AIDATx\x9Ccb\x00\x00\x00\x06\x00\x03\x1A\x05\x9D\x00\x00 \x00\x00IEND\xAE\x42\x60\x82
| Path : /var/www/html/tool-ob/ToolsPortal/shared/ |
|
B-Con CMD Config cPanel C-Rdp D-Log Info Jump Mass Ransom Symlink vHost Zone-H |
| Current File : //var/www/html/tool-ob/ToolsPortal/shared/schema.ts |
import { pgTable, text, serial, integer } from "drizzle-orm/pg-core";
import { createInsertSchema } from "drizzle-zod";
import { z } from "zod";
// Email validation records schema
export const emailValidationSchema = z.object({
id: z.number(),
from: z.string(),
subject: z.string(),
dkimHeader: z.string().nullable(),
dkimSelector: z.string().nullable(),
dmarcResult: z.string().nullable(),
spfResult: z.string().nullable(),
dkimResult: z.string().nullable(),
receivedAt: z.string(),
});
export type EmailValidation = z.infer<typeof emailValidationSchema>;
// No database tables needed for this application
// Only defining validation schemas for the tools
export const ipCheckResponseSchema = z.object({
ip: z.string(),
country: z.string().optional(),
city: z.string().optional(),
});
export const passwordGeneratorSchema = z.object({
length: z.number().min(8).max(128),
includeNumbers: z.boolean(),
includeSymbols: z.boolean(),
includeUppercase: z.boolean(),
});
export const signatureSchema = z.object({
name: z.string().min(1),
style: z.enum(['cursive', 'formal', 'casual']),
color: z.string(),
});
export type IPCheckResponse = z.infer<typeof ipCheckResponseSchema>;
export type PasswordGeneratorOptions = z.infer<typeof passwordGeneratorSchema>;
export type SignatureOptions = z.infer<typeof signatureSchema>;