{"version":3,"sources":["../../pilot/index.ts"],"sourcesContent":["import { z } from \"zod\";\nimport type { Medal } from \"../src/index.js\";\n\nconst SendEmailSchema = z.object({\n  template_slug: z.string(),\n  to: z.email(),\n  name: z.string().optional(),\n  locale: z.string().optional(),\n  variables: z.record(z.string(), z.string()).optional(),\n});\n\nconst CreateContactSchema = z.object({\n  email: z.email(),\n  first_name: z.string().optional(),\n  last_name: z.string().optional(),\n  phone: z.string().optional(),\n  company: z.string().optional(),\n  job_title: z.string().optional(),\n  status: z.enum([\"lead\", \"prospect\", \"customer\", \"churned\", \"archived\"]).optional(),\n  notes: z.string().optional(),\n});\n\nconst AddContactNoteSchema = z.object({\n  contactId: z.string(),\n  content: z.string(),\n});\n\nconst CookieConsentSchema = z.object({\n  domain: z.string(),\n  consentStatus: z.enum([\"granted\", \"denied\", \"partial\"]),\n  consentTimestamp: z.string(),\n  ipAddress: z.string().optional(),\n  userAgent: z.string().optional(),\n  cookiePreferences: z.object({\n    necessary: z.object({ allowed: z.boolean() }).optional(),\n    analytics: z.object({ allowed: z.boolean() }).optional(),\n    marketing: z.object({ allowed: z.boolean() }).optional(),\n    functional: z.object({ allowed: z.boolean() }).optional(),\n  }),\n});\n\nconst RecordConsentSchema = z.object({\n  email: z.email(),\n  consent_type: z.enum([\"marketing_email\", \"analytics_tracking\", \"third_party_sharing\"]),\n  granted: z.boolean(),\n  source: z.string().optional(),\n  ip_address: z.string().optional(),\n});\n\nconst CreateDealSchema = z.object({\n  title: z.string(),\n  description: z.string().optional(),\n  value: z.number().optional(),\n  currency: z.string().optional(),\n  contact_email: z.email().optional(),\n  notes: z.string().optional(),\n});\n\nexport function createMedalTools(client: Medal) {\n  return {\n    sendEmail: {\n      description: \"Send a transactional email using a template\",\n      parameters: SendEmailSchema,\n      execute: async (args: z.infer<typeof SendEmailSchema>) => client.emails.send(args),\n    },\n    createContact: {\n      description: \"Create a new contact in Medal Social CRM\",\n      parameters: CreateContactSchema,\n      execute: async (args: z.infer<typeof CreateContactSchema>) => client.contacts.create(args),\n    },\n    addContactNote: {\n      description: \"Add a note to a contact's timeline\",\n      parameters: AddContactNoteSchema,\n      execute: async (args: z.infer<typeof AddContactNoteSchema>) =>\n        client.contacts.addNote(args.contactId, { content: args.content }),\n    },\n    recordCookieConsent: {\n      description: \"Record a user's cookie consent preferences\",\n      parameters: CookieConsentSchema,\n      execute: async (args: z.infer<typeof CookieConsentSchema>) => client.gdpr.cookieConsent(args),\n    },\n    recordConsent: {\n      description: \"Record a GDPR consent decision for a contact by email\",\n      parameters: RecordConsentSchema,\n      execute: async (args: z.infer<typeof RecordConsentSchema>) => client.gdpr.recordConsent(args),\n    },\n    createDeal: {\n      description: \"Create a new deal in Medal Social CRM\",\n      parameters: CreateDealSchema,\n      execute: async (args: z.infer<typeof CreateDealSchema>) => client.deals.create(args),\n    },\n  };\n}\n"],"mappings":"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","names":[]}