@corsair-dev/googlecalendar 0.1.2 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -30,7 +30,7 @@ export declare const EventsEndpoints: {
30
30
  colorId?: string | undefined;
31
31
  transparency?: "opaque" | "transparent" | undefined;
32
32
  visibility?: "default" | "public" | "private" | "confidential" | undefined;
33
- eventType?: "default" | "outOfOffice" | "focusTime" | "workingLocation" | undefined;
33
+ eventType?: "default" | "outOfOffice" | "focusTime" | "workingLocation" | "birthday" | "fromGmail" | undefined;
34
34
  status?: "tentative" | "confirmed" | "cancelled" | undefined;
35
35
  reminders?: {
36
36
  useDefault?: boolean | undefined;
@@ -111,7 +111,7 @@ export declare const EventsEndpoints: {
111
111
  colorId?: string | undefined;
112
112
  transparency?: "opaque" | "transparent" | undefined;
113
113
  visibility?: "default" | "public" | "private" | "confidential" | undefined;
114
- eventType?: "default" | "outOfOffice" | "focusTime" | "workingLocation" | undefined;
114
+ eventType?: "default" | "outOfOffice" | "focusTime" | "workingLocation" | "birthday" | "fromGmail" | undefined;
115
115
  status?: "tentative" | "confirmed" | "cancelled" | undefined;
116
116
  reminders?: {
117
117
  useDefault?: boolean | undefined;
@@ -51,6 +51,8 @@ export declare const GoogleCalendarEndpointInputSchemas: {
51
51
  outOfOffice: "outOfOffice";
52
52
  focusTime: "focusTime";
53
53
  workingLocation: "workingLocation";
54
+ birthday: "birthday";
55
+ fromGmail: "fromGmail";
54
56
  }>>;
55
57
  status: z.ZodOptional<z.ZodEnum<{
56
58
  tentative: "tentative";
@@ -164,6 +166,8 @@ export declare const GoogleCalendarEndpointInputSchemas: {
164
166
  outOfOffice: "outOfOffice";
165
167
  focusTime: "focusTime";
166
168
  workingLocation: "workingLocation";
169
+ birthday: "birthday";
170
+ fromGmail: "fromGmail";
167
171
  }>>;
168
172
  status: z.ZodOptional<z.ZodEnum<{
169
173
  tentative: "tentative";
@@ -323,6 +327,8 @@ export declare const GoogleCalendarEndpointOutputSchemas: {
323
327
  outOfOffice: "outOfOffice";
324
328
  focusTime: "focusTime";
325
329
  workingLocation: "workingLocation";
330
+ birthday: "birthday";
331
+ fromGmail: "fromGmail";
326
332
  }>>;
327
333
  }, z.core.$strip>;
328
334
  readonly eventsGet: z.ZodObject<{
@@ -421,6 +427,8 @@ export declare const GoogleCalendarEndpointOutputSchemas: {
421
427
  outOfOffice: "outOfOffice";
422
428
  focusTime: "focusTime";
423
429
  workingLocation: "workingLocation";
430
+ birthday: "birthday";
431
+ fromGmail: "fromGmail";
424
432
  }>>;
425
433
  }, z.core.$strip>;
426
434
  readonly eventsGetMany: z.ZodObject<{
@@ -536,6 +544,8 @@ export declare const GoogleCalendarEndpointOutputSchemas: {
536
544
  outOfOffice: "outOfOffice";
537
545
  focusTime: "focusTime";
538
546
  workingLocation: "workingLocation";
547
+ birthday: "birthday";
548
+ fromGmail: "fromGmail";
539
549
  }>>;
540
550
  }, z.core.$strip>>>;
541
551
  }, z.core.$strip>;
@@ -635,6 +645,8 @@ export declare const GoogleCalendarEndpointOutputSchemas: {
635
645
  outOfOffice: "outOfOffice";
636
646
  focusTime: "focusTime";
637
647
  workingLocation: "workingLocation";
648
+ birthday: "birthday";
649
+ fromGmail: "fromGmail";
638
650
  }>>;
639
651
  }, z.core.$strip>;
640
652
  readonly eventsDelete: z.ZodVoid;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../endpoints/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAwM3E,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOrC,CAAC;AAEX,MAAM,MAAM,4BAA4B,GAAG;KACzC,CAAC,IAAI,MAAM,OAAO,kCAAkC,GAAG,CAAC,CAAC,KAAK,CAC9D,CAAC,OAAO,kCAAkC,CAAC,CAAC,CAAC,CAAC,CAC9C;CACD,CAAC;AAmGF,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOtC,CAAC;AAEX,MAAM,MAAM,6BAA6B,GAAG;IAC3C,YAAY,EAAE,KAAK,CAAC;IACpB,SAAS,EAAE,KAAK,CAAC;IACjB,aAAa,EAAE,iBAAiB,CAAC;IACjC,YAAY,EAAE,KAAK,CAAC;IACpB,YAAY,EAAE,IAAI,CAAC;IACnB,uBAAuB,EAAE,gBAAgB,CAAC;CAC1C,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../endpoints/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AA+M3E,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOrC,CAAC;AAEX,MAAM,MAAM,4BAA4B,GAAG;KACzC,CAAC,IAAI,MAAM,OAAO,kCAAkC,GAAG,CAAC,CAAC,KAAK,CAC9D,CAAC,OAAO,kCAAkC,CAAC,CAAC,CAAC,CAAC,CAC9C;CACD,CAAC;AA0GF,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOtC,CAAC;AAEX,MAAM,MAAM,6BAA6B,GAAG;IAC3C,YAAY,EAAE,KAAK,CAAC;IACpB,SAAS,EAAE,KAAK,CAAC;IACjB,aAAa,EAAE,iBAAiB,CAAC;IACjC,YAAY,EAAE,KAAK,CAAC;IACpB,YAAY,EAAE,IAAI,CAAC;IACnB,uBAAuB,EAAE,gBAAgB,CAAC;CAC1C,CAAC"}
package/dist/index.d.ts CHANGED
@@ -82,6 +82,8 @@ export declare const googlecalendarEndpointSchemas: {
82
82
  outOfOffice: "outOfOffice";
83
83
  focusTime: "focusTime";
84
84
  workingLocation: "workingLocation";
85
+ birthday: "birthday";
86
+ fromGmail: "fromGmail";
85
87
  }>>;
86
88
  status: import("zod").ZodOptional<import("zod").ZodEnum<{
87
89
  tentative: "tentative";
@@ -216,6 +218,8 @@ export declare const googlecalendarEndpointSchemas: {
216
218
  outOfOffice: "outOfOffice";
217
219
  focusTime: "focusTime";
218
220
  workingLocation: "workingLocation";
221
+ birthday: "birthday";
222
+ fromGmail: "fromGmail";
219
223
  }>>;
220
224
  }, import("zod/v4/core").$strip>;
221
225
  };
@@ -322,6 +326,8 @@ export declare const googlecalendarEndpointSchemas: {
322
326
  outOfOffice: "outOfOffice";
323
327
  focusTime: "focusTime";
324
328
  workingLocation: "workingLocation";
329
+ birthday: "birthday";
330
+ fromGmail: "fromGmail";
325
331
  }>>;
326
332
  }, import("zod/v4/core").$strip>;
327
333
  };
@@ -457,6 +463,8 @@ export declare const googlecalendarEndpointSchemas: {
457
463
  outOfOffice: "outOfOffice";
458
464
  focusTime: "focusTime";
459
465
  workingLocation: "workingLocation";
466
+ birthday: "birthday";
467
+ fromGmail: "fromGmail";
460
468
  }>>;
461
469
  }, import("zod/v4/core").$strip>>>;
462
470
  }, import("zod/v4/core").$strip>;
@@ -513,6 +521,8 @@ export declare const googlecalendarEndpointSchemas: {
513
521
  outOfOffice: "outOfOffice";
514
522
  focusTime: "focusTime";
515
523
  workingLocation: "workingLocation";
524
+ birthday: "birthday";
525
+ fromGmail: "fromGmail";
516
526
  }>>;
517
527
  status: import("zod").ZodOptional<import("zod").ZodEnum<{
518
528
  tentative: "tentative";
@@ -647,6 +657,8 @@ export declare const googlecalendarEndpointSchemas: {
647
657
  outOfOffice: "outOfOffice";
648
658
  focusTime: "focusTime";
649
659
  workingLocation: "workingLocation";
660
+ birthday: "birthday";
661
+ fromGmail: "fromGmail";
650
662
  }>>;
651
663
  }, import("zod/v4/core").$strip>;
652
664
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import{request as J}from"corsair/http";var k=class extends Error{constructor(r,a){super(r);this.code=a;this.name="GoogleCalendarAPIError"}},Q="https://www.googleapis.com/calendar/v3";async function X(t,n,r){let a=await fetch("https://oauth2.googleapis.com/token",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({client_id:t,client_secret:n,refresh_token:r,grant_type:"refresh_token"})});if(!a.ok){let c=await a.text();throw new k(`Failed to refresh access token: ${c}`,a.status)}return await a.json()}async function w({accessToken:t,expiresAt:n,clientId:r,clientSecret:a,refreshToken:s,forceRefresh:c=!1}){let d=Math.floor(Date.now()/1e3);if(!c&&t&&n&&Number(n)>d+300)return{accessToken:t,expiresAt:Number(n),refreshed:!1};let p=await X(r,a,s);return{accessToken:p.access_token,expiresAt:d+p.expires_in,refreshed:!0}}async function E(t,n,r={}){let{method:a="GET",body:s,query:c}=r;return await J({BASE:Q,VERSION:"1.0.0",WITH_CREDENTIALS:!1,CREDENTIALS:"omit",TOKEN:n,HEADERS:{"Content-Type":"application/json"}},{method:a,url:t,body:a==="POST"||a==="PUT"||a==="PATCH"?s:void 0,mediaType:"application/json",query:c})}function ee(t){return t instanceof Error&&"status"in t&&t.status===401}async function g(t,n,r={}){try{return await E(t,n.key,r)}catch(a){if(ee(a)&&n._refreshAuth){let s=await n._refreshAuth();return await E(t,s,r)}throw a}}import{logEventFromContext as te}from"corsair/core";var I=async(t,n)=>{let r=await g("/freeBusy",t,{method:"POST",body:{timeMin:n.timeMin,timeMax:n.timeMax,timeZone:n.timeZone,groupExpansionMax:n.groupExpansionMax,calendarExpansionMax:n.calendarExpansionMax,items:n.items}});return await te(t,"googlecalendar.calendar.getAvailability",{...n},"completed"),r};import{logEventFromContext as C}from"corsair/core";var A=async(t,n)=>{let r=n.calendarId||"primary",a=await g(`/calendars/${r}/events`,t,{method:"POST",body:n.event});if(a.id&&t.db.events)try{await t.db.events.upsertByEntityId(a.id,{...a,id:a.id,calendarId:r,createdAt:new Date})}catch(s){console.warn("Failed to save event to database:",s)}return await C(t,"googlecalendar.events.create",{...n},"completed"),a},P=async(t,n)=>{let r=n.calendarId||"primary",a=await g(`/calendars/${r}/events/${n.id}`,t,{method:"GET",query:{timeZone:n.timeZone,maxAttendees:n.maxAttendees}});if(a.id&&t.db.events)try{await t.db.events.upsertByEntityId(a.id,{...a,id:a.id,calendarId:r,createdAt:new Date})}catch(s){console.warn("Failed to save event to database:",s)}return await C(t,"googlecalendar.events.get",{...n},"completed"),a},D=async(t,n)=>{let r=n.calendarId||"primary",a=await g(`/calendars/${r}/events`,t,{method:"GET",query:n});if(a.items&&t.db.events)try{for(let s of a.items)s.id&&await t.db.events.upsertByEntityId(s.id,{...s,id:s.id,calendarId:r,createdAt:new Date})}catch(s){console.warn("Failed to save events to database:",s)}return await C(t,"googlecalendar.events.getMany",{...n},"completed"),a},O=async(t,n)=>{let r=n.calendarId||"primary",a=await g(`/calendars/${r}/events/${n.id}`,t,{method:"PUT",body:n.event,query:{sendUpdates:n.sendUpdates,sendNotifications:n.sendNotifications,conferenceDataVersion:n.conferenceDataVersion,maxAttendees:n.maxAttendees,supportsAttachments:n.supportsAttachments}});if(a.id&&t.db.events)try{await t.db.events.upsertByEntityId(a.id,{...a,id:a.id,calendarId:r,createdAt:new Date})}catch(s){console.warn("Failed to save event to database:",s)}return await C(t,"googlecalendar.events.update",{...n},"completed"),a},M=async(t,n)=>{let r=n.calendarId||"primary";if(await g(`/calendars/${r}/events/${n.id}`,t,{method:"DELETE",query:{sendUpdates:n.sendUpdates,sendNotifications:n.sendNotifications}}),t.db.events)try{await t.db.events.deleteByEntityId(n.id)}catch(a){console.warn("Failed to delete event from database:",a)}await C(t,"googlecalendar.events.delete",{...n},"completed")};import{z as e}from"zod";var y=e.object({date:e.string().optional().describe('All-day event date in "YYYY-MM-DD" format'),dateTime:e.string().optional().describe('RFC 3339 timestamp, e.g. "2024-12-25T10:00:00-07:00". Required for timed events.'),timeZone:e.string().optional().describe('IANA time zone name, e.g. "America/New_York"')}),N=e.object({id:e.string().optional(),email:e.string().optional().describe("Attendee's email address. Required when adding an attendee."),displayName:e.string().optional(),organizer:e.boolean().optional(),self:e.boolean().optional(),resource:e.boolean().optional(),optional:e.boolean().optional(),responseStatus:e.enum(["needsAction","declined","tentative","accepted"]).optional(),comment:e.string().optional(),additionalGuests:e.number().optional()}),R=e.object({id:e.string().optional(),email:e.string().optional(),displayName:e.string().optional(),self:e.boolean().optional()}),U=e.object({method:e.enum(["email","popup"]).optional(),minutes:e.number().optional()}),_=e.object({useDefault:e.boolean().optional().describe("Use the calendar default reminders"),overrides:e.array(U).optional().describe("Custom reminders. Only used when useDefault is false.")}),W=e.object({summary:e.string().optional().describe("Title of the event"),description:e.string().optional().describe("Description of the event. HTML is supported."),location:e.string().optional().describe("Geographic location of the event as free-form text"),start:y.optional().describe('Start time. Use "date" for all-day events, "dateTime" for timed events.'),end:y.optional().describe('End time. Use "date" for all-day events, "dateTime" for timed events.'),attendees:e.array(N).optional().describe("List of attendees. Each attendee must include an email."),recurrence:e.array(e.string()).optional().describe('RRULE / EXDATE lines per RFC 5545, e.g. ["RRULE:FREQ=WEEKLY;COUNT=5"]'),colorId:e.string().optional().describe("Color ID (1\u201311). Use the colors endpoint to see options."),transparency:e.enum(["opaque","transparent"]).optional().describe('"opaque" blocks time on the calendar (default); "transparent" does not'),visibility:e.enum(["default","public","private","confidential"]).optional(),eventType:e.enum(["default","outOfOffice","focusTime","workingLocation"]).optional(),status:e.enum(["confirmed","tentative","cancelled"]).optional(),reminders:_.optional(),guestsCanModify:e.boolean().optional(),guestsCanInviteOthers:e.boolean().optional(),guestsCanSeeOtherGuests:e.boolean().optional(),anyoneCanAddSelf:e.boolean().optional(),sequence:e.number().optional().describe("Sequence number for recurring event updates"),originalStartTime:y.optional().describe("Original start time for a recurring event instance"),recurringEventId:e.string().optional().describe("ID of the recurring event this instance belongs to")}),ae=e.object({calendarId:e.string().optional().describe('Calendar ID. Defaults to "primary".'),event:W.describe('Event body. Provide at minimum "summary", "start", and "end".'),sendUpdates:e.enum(["all","externalOnly","none"]).optional(),sendNotifications:e.boolean().optional(),conferenceDataVersion:e.number().optional(),maxAttendees:e.number().optional(),supportsAttachments:e.boolean().optional()}),re=e.object({calendarId:e.string().optional(),id:e.string(),timeZone:e.string().optional(),maxAttendees:e.number().optional()}),ie=e.object({calendarId:e.string().optional(),timeMin:e.string().optional(),timeMax:e.string().optional(),timeZone:e.string().optional(),updatedMin:e.string().optional(),singleEvents:e.boolean().optional(),maxResults:e.number().optional(),pageToken:e.string().optional(),q:e.string().optional(),orderBy:e.enum(["startTime","updated"]).optional(),iCalUID:e.string().optional(),showDeleted:e.boolean().optional(),showHiddenInvitations:e.boolean().optional()}),se=e.object({calendarId:e.string().optional().describe('Calendar ID. Defaults to "primary".'),id:e.string().describe("Event ID to update"),event:W.describe("Updated event fields"),sendUpdates:e.enum(["all","externalOnly","none"]).optional(),sendNotifications:e.boolean().optional(),conferenceDataVersion:e.number().optional(),maxAttendees:e.number().optional(),supportsAttachments:e.boolean().optional()}),le=e.object({calendarId:e.string().optional(),id:e.string(),sendUpdates:e.enum(["all","externalOnly","none"]).optional(),sendNotifications:e.boolean().optional()}),de=e.object({timeMin:e.string(),timeMax:e.string(),timeZone:e.string().optional(),groupExpansionMax:e.number().optional(),calendarExpansionMax:e.number().optional(),items:e.array(e.object({id:e.string()})).optional()}),m={eventsCreate:ae,eventsGet:re,eventsGetMany:ie,eventsUpdate:se,eventsDelete:le,calendarGetAvailability:de},G=e.object({id:e.string().optional(),status:e.enum(["confirmed","tentative","cancelled"]).optional(),htmlLink:e.string().optional(),created:e.string().optional(),updated:e.string().optional(),summary:e.string().optional(),description:e.string().optional(),location:e.string().optional(),colorId:e.string().optional(),creator:R.optional(),organizer:R.optional(),start:y.optional(),end:y.optional(),endTimeUnspecified:e.boolean().optional(),recurrence:e.array(e.string()).optional(),recurringEventId:e.string().optional(),originalStartTime:y.optional(),transparency:e.enum(["opaque","transparent"]).optional(),visibility:e.enum(["default","public","private","confidential"]).optional(),iCalUID:e.string().optional(),sequence:e.number().optional(),attendees:e.array(N).optional(),attendeesOmitted:e.boolean().optional(),hangoutLink:e.string().optional(),reminders:_.optional(),anyoneCanAddSelf:e.boolean().optional(),guestsCanInviteOthers:e.boolean().optional(),guestsCanModify:e.boolean().optional(),guestsCanSeeOtherGuests:e.boolean().optional(),privateCopy:e.boolean().optional(),locked:e.boolean().optional(),eventType:e.enum(["default","outOfOffice","focusTime","workingLocation"]).optional()}),pe=e.object({kind:e.string().optional(),etag:e.string().optional(),summary:e.string().optional(),description:e.string().optional(),updated:e.string().optional(),timeZone:e.string().optional(),accessRole:e.string().optional(),defaultReminders:e.array(U).optional(),nextPageToken:e.string().optional(),nextSyncToken:e.string().optional(),items:e.array(G).optional()}),ce=e.object({busy:e.array(e.object({start:e.string().optional(),end:e.string().optional()})).optional(),errors:e.array(e.object({domain:e.string().optional(),reason:e.string().optional()})).optional()}),ge=e.object({kind:e.string().optional(),calendars:e.record(e.string(),ce).optional(),groups:e.record(e.string(),e.object({calendars:e.array(e.string()).optional(),errors:e.array(e.object({domain:e.string().optional(),reason:e.string().optional()})).optional()})).optional(),timeMin:e.string().optional(),timeMax:e.string().optional()}),v={eventsCreate:G,eventsGet:G,eventsGetMany:pe,eventsUpdate:G,eventsDelete:e.void(),calendarGetAvailability:ge};var b={create:A,get:P,getMany:D,update:O,delete:M},j={getAvailability:I};import{z as o}from"zod";var S=o.object({date:o.string().optional(),dateTime:o.string().optional(),timeZone:o.string().optional()}),ue=o.object({id:o.string().optional(),email:o.string().optional(),displayName:o.string().optional(),organizer:o.boolean().optional(),self:o.boolean().optional(),resource:o.boolean().optional(),optional:o.boolean().optional(),responseStatus:o.enum(["needsAction","declined","tentative","accepted"]).optional(),comment:o.string().optional(),additionalGuests:o.number().optional()}),q=o.object({id:o.string().optional(),email:o.string().optional(),displayName:o.string().optional(),self:o.boolean().optional()}),me=o.object({method:o.enum(["email","popup"]).optional(),minutes:o.number().optional()}),ve=o.object({useDefault:o.boolean().optional(),overrides:o.array(me).optional()}),B=o.object({id:o.string(),status:o.enum(["confirmed","tentative","cancelled"]).optional(),htmlLink:o.string().optional(),created:o.string().optional(),updated:o.string().optional(),summary:o.string().optional(),description:o.string().optional(),location:o.string().optional(),colorId:o.string().optional(),creator:q.optional(),organizer:q.optional(),start:S.optional(),end:S.optional(),endTimeUnspecified:o.boolean().optional(),recurrence:o.array(o.string()).optional(),recurringEventId:o.string().optional(),originalStartTime:S.optional(),transparency:o.enum(["opaque","transparent"]).optional(),visibility:o.enum(["default","public","private","confidential"]).optional(),iCalUID:o.string().optional(),sequence:o.number().optional(),attendees:o.array(ue).optional(),attendeesOmitted:o.boolean().optional(),hangoutLink:o.string().optional(),reminders:ve.optional(),anyoneCanAddSelf:o.boolean().optional(),guestsCanInviteOthers:o.boolean().optional(),guestsCanModify:o.boolean().optional(),guestsCanSeeOtherGuests:o.boolean().optional(),privateCopy:o.boolean().optional(),locked:o.boolean().optional(),eventType:o.enum(["default","outOfOffice","focusTime","workingLocation"]).optional(),calendarId:o.string().optional(),createdAt:o.coerce.date().optional()}),L=o.object({id:o.string(),summary:o.string().optional(),description:o.string().optional(),location:o.string().optional(),timeZone:o.string().optional(),createdAt:o.coerce.date().optional()});var z={version:"1.0.0",entities:{events:B,calendars:L}};import{logEventFromContext as x}from"corsair/core";import{z as i}from"zod";var fe=i.object({data:i.string().optional(),attributes:i.record(i.string(),i.string()).optional(),messageId:i.string().optional(),publishTime:i.string().optional()}),F=i.object({message:fe.optional(),subscription:i.string().optional(),event:i.unknown().optional()}),Ye=i.object({resourceId:i.string().optional(),resourceState:i.string().optional(),resourceUri:i.string().optional(),channelId:i.string().optional(),channelExpiration:i.string().optional(),channelToken:i.string().optional(),changed:i.string().optional()}),ye=i.object({type:i.literal("eventCreated"),calendarId:i.string(),event:i.custom(),timestamp:i.string()}),be=i.object({type:i.literal("eventUpdated"),calendarId:i.string(),event:i.custom(),timestamp:i.string()}),he=i.object({type:i.literal("eventDeleted"),calendarId:i.string(),eventId:i.string(),timestamp:i.string()}),$=i.union([ye,be,he]);function h(t){let n=Buffer.from(t,"base64").toString("utf-8");return JSON.parse(n)}function T(t){return n=>{let r=n.body;if(!r.message?.data)return!1;try{let a=h(r.message.data);return!!a.channelId&&!!a.resourceId&&!!a.resourceUri&&a.resourceUri.includes("/calendar/")}catch{return!1}}}var Ee=/\/calendars\/([^\/\?]+)/,Ce=/\/calendars\/[^\/]+\/events\/([^\/\?]+)/,Ge=120*1e3,ke=5e3;function we(t){return{calendarId:t.match(Ee)?.[1],eventId:t.match(Ce)?.[1]}}function Se(t){return!t.created||!t.updated?!1:Math.abs(new Date(t.updated).getTime()-new Date(t.created).getTime())<ke}function Te(t,n,r){return E(`/calendars/${n}/events/${r}`,t,{method:"GET"})}async function H(t,n){let r=new Date(Date.now()-Ge).toISOString();return(await E(`/calendars/${n}/events`,t,{method:"GET",query:{maxResults:10,orderBy:"updated",updatedMin:r,showDeleted:!0}})).items??[]}async function xe(t,n,r){return r?Te(t,n,r):(await H(t,n)).at(-1)??null}async function Ie(t,n,r,a){return r||((await H(t,n)).find(d=>d.status==="cancelled")?.id??a.resourceId??"")}async function K(t,n,r){r&&t.db.events&&await t.db.events.deleteByEntityId(r);let a={type:"eventDeleted",calendarId:n,eventId:r,timestamp:new Date().toISOString()};return await x(t,"googlecalendar.webhook.eventDeleted",{...a},"completed"),{eventData:a}}var V={match:T("eventChanged"),handler:async(t,n)=>{let r=n.payload;if(!r.message?.data)return{success:!1,error:"No message data in notification"};let a=h(r.message.data);if(!a.resourceUri)return{success:!1,error:"Invalid push notification format"};let{calendarId:s,eventId:c}=we(a.resourceUri);if(!s)return{success:!1,error:"Could not parse calendar ID from resource URI"};let d=t.key;try{if(a.resourceState==="not_exists"){let u=await Ie(d,s,c,a),{eventData:Y}=await K(t,s,u);return{success:!0,data:Y}}let l=await xe(d,s,c);if(!l)return{success:!1,error:"No recently updated events found in calendar"};if(l.status==="cancelled"){let{eventData:u}=await K(t,s,l.id??"");return{success:!0,data:u}}let p="";if(l.id&&t.db.events&&(p=(await t.db.events.upsertByEntityId(l.id,{...l,id:l.id,calendarId:s,createdAt:new Date}))?.id??""),Se(l)){let u={type:"eventCreated",calendarId:s,event:l,timestamp:new Date().toISOString()};return await x(t,"googlecalendar.webhook.eventCreated",{...u},"completed"),{success:!0,corsairEntityId:p,data:u}}let f={type:"eventUpdated",calendarId:s,event:l,timestamp:new Date().toISOString()};return await x(t,"googlecalendar.webhook.eventUpdated",{...f},"completed"),{success:!0,corsairEntityId:p,data:f}}catch(l){return console.error("Failed to process webhook:",l),{success:!1,error:`Failed to process event: ${l instanceof Error?l.message:"Unknown error"}`}}}};var Z={onEventChanged:V};var Ae={events:{create:b.create,get:b.get,getMany:b.getMany,update:b.update,delete:b.delete},calendar:{getAvailability:j.getAvailability}},Pe={"events.create":{input:m.eventsCreate,output:v.eventsCreate},"events.get":{input:m.eventsGet,output:v.eventsGet},"events.getMany":{input:m.eventsGetMany,output:v.eventsGetMany},"events.update":{input:m.eventsUpdate,output:v.eventsUpdate},"events.delete":{input:m.eventsDelete,output:v.eventsDelete},"calendar.getAvailability":{input:m.calendarGetAvailability,output:v.calendarGetAvailability}},De={onEventChanged:Z.onEventChanged},Oe={onEventChanged:{description:"A Google Calendar event was created, updated, or deleted",payload:F,response:$}},Me="oauth_2",Re={"events.create":{riskLevel:"write",description:"Create a new calendar event"},"events.get":{riskLevel:"read",description:"Get a specific calendar event"},"events.getMany":{riskLevel:"read",description:"List calendar events"},"events.update":{riskLevel:"write",description:"Update an existing calendar event"},"events.delete":{riskLevel:"destructive",description:"Delete a calendar event [DESTRUCTIVE]"},"calendar.getAvailability":{riskLevel:"read",description:"Get free/busy availability for a calendar"}};function ct(t={}){let n={...t,authType:t.authType??Me};return{id:"googlecalendar",schema:z,options:n,oauthConfig:{providerName:"Google",authUrl:"https://accounts.google.com/o/oauth2/v2/auth",tokenUrl:"https://oauth2.googleapis.com/token",scopes:["https://www.googleapis.com/auth/calendar"],authParams:{access_type:"offline",prompt:"consent"}},hooks:n.hooks,webhookHooks:n.webhookHooks,endpoints:Ae,webhooks:De,endpointMeta:Re,endpointSchemas:Pe,webhookSchemas:Oe,keyBuilder:async r=>{let a=r.authType;if(n.key)return n.key;if(r.authType==="oauth_2"){let[s,c,d]=await Promise.all([r.keys.get_access_token(),r.keys.get_expires_at(),r.keys.get_refresh_token()]);if(!d)throw new Error("[auth-missing:googlecalendar:refresh_token]: Google Calendar refresh token is missing");let l=await r.keys.get_integration_credentials();if(!l.client_id||!l.client_secret)throw new Error("[corsair:googlecalendar] No client id or client secret");try{let p=await w({accessToken:s,expiresAt:c,refreshToken:d,clientId:l.client_id,clientSecret:l.client_secret});return p.refreshed&&await Promise.all([r.keys.set_access_token(p.accessToken),r.keys.set_expires_at(String(p.expiresAt))]),r._refreshAuth=async()=>{let f=await w({accessToken:null,expiresAt:null,refreshToken:d,clientId:l.client_id,clientSecret:l.client_secret,forceRefresh:!0});return await r.keys.set_access_token(f.accessToken),await r.keys.set_expires_at(String(f.expiresAt)),f.accessToken},p.accessToken}catch(p){throw console.error("[corsair:googlecalendar] Failed to get valid access token:",p),p}}throw new Error(`[auth-missing:googlecalendar:${a}]: Google Calendar key is missing`)},pluginWebhookMatcher:r=>{let a=r.headers;if(!(a.from==="noreply@google.com"||typeof a["user-agent"]=="string"&&a["user-agent"].includes("APIs-Google")))return!1;let c=r.body;if(!c?.message?.data)return!1;try{let d=h(c.message.data);return!!d.resourceUri&&d.resourceUri.includes("calendar")}catch{return!1}}}}export{T as createGoogleCalendarWebhookMatcher,h as decodePubSubMessage,ct as googlecalendar,Pe as googlecalendarEndpointSchemas};
1
+ import{AuthMissingError as Y}from"corsair/core";import{request as Q}from"corsair/http";var k=class extends Error{constructor(a,r){super(a);this.code=r;this.name="GoogleCalendarAPIError"}},X="https://www.googleapis.com/calendar/v3";async function ee(t,n,a){let r=await fetch("https://oauth2.googleapis.com/token",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({client_id:t,client_secret:n,refresh_token:a,grant_type:"refresh_token"})});if(!r.ok){let c=await r.text();throw new k(`Failed to refresh access token: ${c}`,r.status)}return await r.json()}async function w({accessToken:t,expiresAt:n,clientId:a,clientSecret:r,refreshToken:s,forceRefresh:c=!1}){let d=Math.floor(Date.now()/1e3);if(!c&&t&&n&&Number(n)>d+300)return{accessToken:t,expiresAt:Number(n),refreshed:!1};let p=await ee(a,r,s);return{accessToken:p.access_token,expiresAt:d+p.expires_in,refreshed:!0}}async function E(t,n,a={}){let{method:r="GET",body:s,query:c}=a;return await Q({BASE:X,VERSION:"1.0.0",WITH_CREDENTIALS:!1,CREDENTIALS:"omit",TOKEN:n,HEADERS:{"Content-Type":"application/json"}},{method:r,url:t,body:r==="POST"||r==="PUT"||r==="PATCH"?s:void 0,mediaType:"application/json",query:c})}function te(t){return t instanceof Error&&"status"in t&&t.status===401}async function u(t,n,a={}){try{return await E(t,n.key,a)}catch(r){if(te(r)&&n._refreshAuth){let s=await n._refreshAuth();return await E(t,s,a)}throw r}}import{logEventFromContext as ne}from"corsair/core";var I=async(t,n)=>{let a=await u("/freeBusy",t,{method:"POST",body:{timeMin:n.timeMin,timeMax:n.timeMax,timeZone:n.timeZone,groupExpansionMax:n.groupExpansionMax,calendarExpansionMax:n.calendarExpansionMax,items:n.items}});return await ne(t,"googlecalendar.calendar.getAvailability",{...n},"completed"),a};import{logEventFromContext as C}from"corsair/core";var A=async(t,n)=>{let a=n.calendarId||"primary",r=await u(`/calendars/${a}/events`,t,{method:"POST",body:n.event});if(r.id&&t.db.events)try{await t.db.events.upsertByEntityId(r.id,{...r,id:r.id,calendarId:a,createdAt:new Date})}catch(s){console.warn("Failed to save event to database:",s)}return await C(t,"googlecalendar.events.create",{...n},"completed"),r},P=async(t,n)=>{let a=n.calendarId||"primary",r=await u(`/calendars/${a}/events/${n.id}`,t,{method:"GET",query:{timeZone:n.timeZone,maxAttendees:n.maxAttendees}});if(r.id&&t.db.events)try{await t.db.events.upsertByEntityId(r.id,{...r,id:r.id,calendarId:a,createdAt:new Date})}catch(s){console.warn("Failed to save event to database:",s)}return await C(t,"googlecalendar.events.get",{...n},"completed"),r},D=async(t,n)=>{let a=n.calendarId||"primary",r=await u(`/calendars/${a}/events`,t,{method:"GET",query:n});if(r.items&&t.db.events)try{for(let s of r.items)s.id&&await t.db.events.upsertByEntityId(s.id,{...s,id:s.id,calendarId:a,createdAt:new Date})}catch(s){console.warn("Failed to save events to database:",s)}return await C(t,"googlecalendar.events.getMany",{...n},"completed"),r},O=async(t,n)=>{let a=n.calendarId||"primary",r=await u(`/calendars/${a}/events/${n.id}`,t,{method:"PUT",body:n.event,query:{sendUpdates:n.sendUpdates,sendNotifications:n.sendNotifications,conferenceDataVersion:n.conferenceDataVersion,maxAttendees:n.maxAttendees,supportsAttachments:n.supportsAttachments}});if(r.id&&t.db.events)try{await t.db.events.upsertByEntityId(r.id,{...r,id:r.id,calendarId:a,createdAt:new Date})}catch(s){console.warn("Failed to save event to database:",s)}return await C(t,"googlecalendar.events.update",{...n},"completed"),r},M=async(t,n)=>{let a=n.calendarId||"primary";if(await u(`/calendars/${a}/events/${n.id}`,t,{method:"DELETE",query:{sendUpdates:n.sendUpdates,sendNotifications:n.sendNotifications}}),t.db.events)try{await t.db.events.deleteByEntityId(n.id)}catch(r){console.warn("Failed to delete event from database:",r)}await C(t,"googlecalendar.events.delete",{...n},"completed")};import{z as e}from"zod";var y=e.object({date:e.string().optional().describe('All-day event date in "YYYY-MM-DD" format'),dateTime:e.string().optional().describe('RFC 3339 timestamp, e.g. "2024-12-25T10:00:00-07:00". Required for timed events.'),timeZone:e.string().optional().describe('IANA time zone name, e.g. "America/New_York"')}),N=e.object({id:e.string().optional(),email:e.string().optional().describe("Attendee's email address. Required when adding an attendee."),displayName:e.string().optional(),organizer:e.boolean().optional(),self:e.boolean().optional(),resource:e.boolean().optional(),optional:e.boolean().optional(),responseStatus:e.enum(["needsAction","declined","tentative","accepted"]).optional(),comment:e.string().optional(),additionalGuests:e.number().optional()}),R=e.object({id:e.string().optional(),email:e.string().optional(),displayName:e.string().optional(),self:e.boolean().optional()}),U=e.object({method:e.enum(["email","popup"]).optional(),minutes:e.number().optional()}),_=e.object({useDefault:e.boolean().optional().describe("Use the calendar default reminders"),overrides:e.array(U).optional().describe("Custom reminders. Only used when useDefault is false.")}),W=e.object({summary:e.string().optional().describe("Title of the event"),description:e.string().optional().describe("Description of the event. HTML is supported."),location:e.string().optional().describe("Geographic location of the event as free-form text"),start:y.optional().describe('Start time. Use "date" for all-day events, "dateTime" for timed events.'),end:y.optional().describe('End time. Use "date" for all-day events, "dateTime" for timed events.'),attendees:e.array(N).optional().describe("List of attendees. Each attendee must include an email."),recurrence:e.array(e.string()).optional().describe('RRULE / EXDATE lines per RFC 5545, e.g. ["RRULE:FREQ=WEEKLY;COUNT=5"]'),colorId:e.string().optional().describe("Color ID (1\u201311). Use the colors endpoint to see options."),transparency:e.enum(["opaque","transparent"]).optional().describe('"opaque" blocks time on the calendar (default); "transparent" does not'),visibility:e.enum(["default","public","private","confidential"]).optional(),eventType:e.enum(["default","outOfOffice","focusTime","workingLocation","birthday","fromGmail"]).optional(),status:e.enum(["confirmed","tentative","cancelled"]).optional(),reminders:_.optional(),guestsCanModify:e.boolean().optional(),guestsCanInviteOthers:e.boolean().optional(),guestsCanSeeOtherGuests:e.boolean().optional(),anyoneCanAddSelf:e.boolean().optional(),sequence:e.number().optional().describe("Sequence number for recurring event updates"),originalStartTime:y.optional().describe("Original start time for a recurring event instance"),recurringEventId:e.string().optional().describe("ID of the recurring event this instance belongs to")}),re=e.object({calendarId:e.string().optional().describe('Calendar ID. Defaults to "primary".'),event:W.describe('Event body. Provide at minimum "summary", "start", and "end".'),sendUpdates:e.enum(["all","externalOnly","none"]).optional(),sendNotifications:e.boolean().optional(),conferenceDataVersion:e.number().optional(),maxAttendees:e.number().optional(),supportsAttachments:e.boolean().optional()}),ie=e.object({calendarId:e.string().optional(),id:e.string(),timeZone:e.string().optional(),maxAttendees:e.number().optional()}),se=e.object({calendarId:e.string().optional(),timeMin:e.string().optional(),timeMax:e.string().optional(),timeZone:e.string().optional(),updatedMin:e.string().optional(),singleEvents:e.boolean().optional(),maxResults:e.number().optional(),pageToken:e.string().optional(),q:e.string().optional(),orderBy:e.enum(["startTime","updated"]).optional(),iCalUID:e.string().optional(),showDeleted:e.boolean().optional(),showHiddenInvitations:e.boolean().optional()}),le=e.object({calendarId:e.string().optional().describe('Calendar ID. Defaults to "primary".'),id:e.string().describe("Event ID to update"),event:W.describe("Updated event fields"),sendUpdates:e.enum(["all","externalOnly","none"]).optional(),sendNotifications:e.boolean().optional(),conferenceDataVersion:e.number().optional(),maxAttendees:e.number().optional(),supportsAttachments:e.boolean().optional()}),de=e.object({calendarId:e.string().optional(),id:e.string(),sendUpdates:e.enum(["all","externalOnly","none"]).optional(),sendNotifications:e.boolean().optional()}),pe=e.object({timeMin:e.string(),timeMax:e.string(),timeZone:e.string().optional(),groupExpansionMax:e.number().optional(),calendarExpansionMax:e.number().optional(),items:e.array(e.object({id:e.string()})).optional()}),m={eventsCreate:re,eventsGet:ie,eventsGetMany:se,eventsUpdate:le,eventsDelete:de,calendarGetAvailability:pe},G=e.object({id:e.string().optional(),status:e.enum(["confirmed","tentative","cancelled"]).optional(),htmlLink:e.string().optional(),created:e.string().optional(),updated:e.string().optional(),summary:e.string().optional(),description:e.string().optional(),location:e.string().optional(),colorId:e.string().optional(),creator:R.optional(),organizer:R.optional(),start:y.optional(),end:y.optional(),endTimeUnspecified:e.boolean().optional(),recurrence:e.array(e.string()).optional(),recurringEventId:e.string().optional(),originalStartTime:y.optional(),transparency:e.enum(["opaque","transparent"]).optional(),visibility:e.enum(["default","public","private","confidential"]).optional(),iCalUID:e.string().optional(),sequence:e.number().optional(),attendees:e.array(N).optional(),attendeesOmitted:e.boolean().optional(),hangoutLink:e.string().optional(),reminders:_.optional(),anyoneCanAddSelf:e.boolean().optional(),guestsCanInviteOthers:e.boolean().optional(),guestsCanModify:e.boolean().optional(),guestsCanSeeOtherGuests:e.boolean().optional(),privateCopy:e.boolean().optional(),locked:e.boolean().optional(),eventType:e.enum(["default","outOfOffice","focusTime","workingLocation","birthday","fromGmail"]).optional()}),ce=e.object({kind:e.string().optional(),etag:e.string().optional(),summary:e.string().optional(),description:e.string().optional(),updated:e.string().optional(),timeZone:e.string().optional(),accessRole:e.string().optional(),defaultReminders:e.array(U).optional(),nextPageToken:e.string().optional(),nextSyncToken:e.string().optional(),items:e.array(G).optional()}),ue=e.object({busy:e.array(e.object({start:e.string().optional(),end:e.string().optional()})).optional(),errors:e.array(e.object({domain:e.string().optional(),reason:e.string().optional()})).optional()}),ge=e.object({kind:e.string().optional(),calendars:e.record(e.string(),ue).optional(),groups:e.record(e.string(),e.object({calendars:e.array(e.string()).optional(),errors:e.array(e.object({domain:e.string().optional(),reason:e.string().optional()})).optional()})).optional(),timeMin:e.string().optional(),timeMax:e.string().optional()}),v={eventsCreate:G,eventsGet:G,eventsGetMany:ce,eventsUpdate:G,eventsDelete:e.void(),calendarGetAvailability:ge};var b={create:A,get:P,getMany:D,update:O,delete:M},j={getAvailability:I};import{z as o}from"zod";var S=o.object({date:o.string().optional(),dateTime:o.string().optional(),timeZone:o.string().optional()}),me=o.object({id:o.string().optional(),email:o.string().optional(),displayName:o.string().optional(),organizer:o.boolean().optional(),self:o.boolean().optional(),resource:o.boolean().optional(),optional:o.boolean().optional(),responseStatus:o.enum(["needsAction","declined","tentative","accepted"]).optional(),comment:o.string().optional(),additionalGuests:o.number().optional()}),q=o.object({id:o.string().optional(),email:o.string().optional(),displayName:o.string().optional(),self:o.boolean().optional()}),ve=o.object({method:o.enum(["email","popup"]).optional(),minutes:o.number().optional()}),fe=o.object({useDefault:o.boolean().optional(),overrides:o.array(ve).optional()}),B=o.object({id:o.string(),status:o.enum(["confirmed","tentative","cancelled"]).optional(),htmlLink:o.string().optional(),created:o.string().optional(),updated:o.string().optional(),summary:o.string().optional(),description:o.string().optional(),location:o.string().optional(),colorId:o.string().optional(),creator:q.optional(),organizer:q.optional(),start:S.optional(),end:S.optional(),endTimeUnspecified:o.boolean().optional(),recurrence:o.array(o.string()).optional(),recurringEventId:o.string().optional(),originalStartTime:S.optional(),transparency:o.enum(["opaque","transparent"]).optional(),visibility:o.enum(["default","public","private","confidential"]).optional(),iCalUID:o.string().optional(),sequence:o.number().optional(),attendees:o.array(me).optional(),attendeesOmitted:o.boolean().optional(),hangoutLink:o.string().optional(),reminders:fe.optional(),anyoneCanAddSelf:o.boolean().optional(),guestsCanInviteOthers:o.boolean().optional(),guestsCanModify:o.boolean().optional(),guestsCanSeeOtherGuests:o.boolean().optional(),privateCopy:o.boolean().optional(),locked:o.boolean().optional(),eventType:o.enum(["default","outOfOffice","focusTime","workingLocation","birthday","fromGmail"]).optional(),calendarId:o.string().optional(),createdAt:o.coerce.date().optional()}),L=o.object({id:o.string(),summary:o.string().optional(),description:o.string().optional(),location:o.string().optional(),timeZone:o.string().optional(),createdAt:o.coerce.date().optional()});var z={version:"1.0.0",entities:{events:B,calendars:L}};import{logEventFromContext as x}from"corsair/core";import{z as i}from"zod";var ye=i.object({data:i.string().optional(),attributes:i.record(i.string(),i.string()).optional(),messageId:i.string().optional(),publishTime:i.string().optional()}),F=i.object({message:ye.optional(),subscription:i.string().optional(),event:i.unknown().optional()}),Je=i.object({resourceId:i.string().optional(),resourceState:i.string().optional(),resourceUri:i.string().optional(),channelId:i.string().optional(),channelExpiration:i.string().optional(),channelToken:i.string().optional(),changed:i.string().optional()}),be=i.object({type:i.literal("eventCreated"),calendarId:i.string(),event:i.custom(),timestamp:i.string()}),he=i.object({type:i.literal("eventUpdated"),calendarId:i.string(),event:i.custom(),timestamp:i.string()}),Ee=i.object({type:i.literal("eventDeleted"),calendarId:i.string(),eventId:i.string(),timestamp:i.string()}),K=i.union([be,he,Ee]);function h(t){let n=Buffer.from(t,"base64").toString("utf-8");return JSON.parse(n)}function T(t){return n=>{let a=n.body;if(!a.message?.data)return!1;try{let r=h(a.message.data);return!!r.channelId&&!!r.resourceId&&!!r.resourceUri&&r.resourceUri.includes("/calendar/")}catch{return!1}}}var Ce=/\/calendars\/([^\/\?]+)/,Ge=/\/calendars\/[^\/]+\/events\/([^\/\?]+)/,ke=120*1e3,we=5e3;function Se(t){return{calendarId:t.match(Ce)?.[1],eventId:t.match(Ge)?.[1]}}function Te(t){return!t.created||!t.updated?!1:Math.abs(new Date(t.updated).getTime()-new Date(t.created).getTime())<we}function xe(t,n,a){return E(`/calendars/${n}/events/${a}`,t,{method:"GET"})}async function H(t,n){let a=new Date(Date.now()-ke).toISOString();return(await E(`/calendars/${n}/events`,t,{method:"GET",query:{maxResults:10,orderBy:"updated",updatedMin:a,showDeleted:!0}})).items??[]}async function Ie(t,n,a){return a?xe(t,n,a):(await H(t,n)).at(-1)??null}async function Ae(t,n,a,r){return a||((await H(t,n)).find(d=>d.status==="cancelled")?.id??r.resourceId??"")}async function $(t,n,a){a&&t.db.events&&await t.db.events.deleteByEntityId(a);let r={type:"eventDeleted",calendarId:n,eventId:a,timestamp:new Date().toISOString()};return await x(t,"googlecalendar.webhook.eventDeleted",{...r},"completed"),{eventData:r}}var V={match:T("eventChanged"),handler:async(t,n)=>{let a=n.payload;if(!a.message?.data)return{success:!1,error:"No message data in notification"};let r=h(a.message.data);if(!r.resourceUri)return{success:!1,error:"Invalid push notification format"};let{calendarId:s,eventId:c}=Se(r.resourceUri);if(!s)return{success:!1,error:"Could not parse calendar ID from resource URI"};let d=t.key;try{if(r.resourceState==="not_exists"){let g=await Ae(d,s,c,r),{eventData:J}=await $(t,s,g);return{success:!0,data:J}}let l=await Ie(d,s,c);if(!l)return{success:!1,error:"No recently updated events found in calendar"};if(l.status==="cancelled"){let{eventData:g}=await $(t,s,l.id??"");return{success:!0,data:g}}let p="";if(l.id&&t.db.events&&(p=(await t.db.events.upsertByEntityId(l.id,{...l,id:l.id,calendarId:s,createdAt:new Date}))?.id??""),Te(l)){let g={type:"eventCreated",calendarId:s,event:l,timestamp:new Date().toISOString()};return await x(t,"googlecalendar.webhook.eventCreated",{...g},"completed"),{success:!0,corsairEntityId:p,data:g}}let f={type:"eventUpdated",calendarId:s,event:l,timestamp:new Date().toISOString()};return await x(t,"googlecalendar.webhook.eventUpdated",{...f},"completed"),{success:!0,corsairEntityId:p,data:f}}catch(l){return console.error("Failed to process webhook:",l),{success:!1,error:`Failed to process event: ${l instanceof Error?l.message:"Unknown error"}`}}}};var Z={onEventChanged:V};var Pe={events:{create:b.create,get:b.get,getMany:b.getMany,update:b.update,delete:b.delete},calendar:{getAvailability:j.getAvailability}},De={"events.create":{input:m.eventsCreate,output:v.eventsCreate},"events.get":{input:m.eventsGet,output:v.eventsGet},"events.getMany":{input:m.eventsGetMany,output:v.eventsGetMany},"events.update":{input:m.eventsUpdate,output:v.eventsUpdate},"events.delete":{input:m.eventsDelete,output:v.eventsDelete},"calendar.getAvailability":{input:m.calendarGetAvailability,output:v.calendarGetAvailability}},Oe={onEventChanged:Z.onEventChanged},Me={onEventChanged:{description:"A Google Calendar event was created, updated, or deleted",payload:F,response:K}},Re="oauth_2",Ne={"events.create":{riskLevel:"write",description:"Create a new calendar event"},"events.get":{riskLevel:"read",description:"Get a specific calendar event"},"events.getMany":{riskLevel:"read",description:"List calendar events"},"events.update":{riskLevel:"write",description:"Update an existing calendar event"},"events.delete":{riskLevel:"destructive",description:"Delete a calendar event [DESTRUCTIVE]"},"calendar.getAvailability":{riskLevel:"read",description:"Get free/busy availability for a calendar"}};function gt(t={}){let n={...t,authType:t.authType??Re};return{id:"googlecalendar",schema:z,options:n,oauthConfig:{providerName:"Google",authUrl:"https://accounts.google.com/o/oauth2/v2/auth",tokenUrl:"https://oauth2.googleapis.com/token",scopes:["https://www.googleapis.com/auth/calendar"],authParams:{access_type:"offline",prompt:"consent"}},hooks:n.hooks,webhookHooks:n.webhookHooks,endpoints:Pe,webhooks:Oe,endpointMeta:Ne,endpointSchemas:De,webhookSchemas:Me,keyBuilder:async a=>{let r=a.authType;if(n.key)return n.key;if(a.authType==="oauth_2"){let[s,c,d]=await Promise.all([a.keys.get_access_token(),a.keys.get_expires_at(),a.keys.get_refresh_token()]);if(!d)throw new Y("googlecalendar","oauth_2");let l=await a.keys.get_integration_credentials();if(!l.client_id||!l.client_secret)throw new Error("[corsair:googlecalendar] No client id or client secret");try{let p=await w({accessToken:s,expiresAt:c,refreshToken:d,clientId:l.client_id,clientSecret:l.client_secret});return p.refreshed&&await Promise.all([a.keys.set_access_token(p.accessToken),a.keys.set_expires_at(String(p.expiresAt))]),a._refreshAuth=async()=>{let f=await w({accessToken:null,expiresAt:null,refreshToken:d,clientId:l.client_id,clientSecret:l.client_secret,forceRefresh:!0});return await a.keys.set_access_token(f.accessToken),await a.keys.set_expires_at(String(f.expiresAt)),f.accessToken},p.accessToken}catch(p){throw console.error("[corsair:googlecalendar] Failed to get valid access token:",p),p}}throw new Y("googlecalendar","oauth_2")},pluginWebhookMatcher:a=>{let r=a.headers;if(!(r.from==="noreply@google.com"||typeof r["user-agent"]=="string"&&r["user-agent"].includes("APIs-Google")))return!1;let c=a.body;if(!c?.message?.data)return!1;try{let d=h(c.message.data);return!!d.resourceUri&&d.resourceUri.includes("calendar")}catch{return!1}}}}export{T as createGoogleCalendarWebhookMatcher,h as decodePubSubMessage,gt as googlecalendar,De as googlecalendarEndpointSchemas};
@@ -95,6 +95,8 @@ export declare const GoogleCalendarEvent: z.ZodObject<{
95
95
  outOfOffice: "outOfOffice";
96
96
  focusTime: "focusTime";
97
97
  workingLocation: "workingLocation";
98
+ birthday: "birthday";
99
+ fromGmail: "fromGmail";
98
100
  }>>;
99
101
  calendarId: z.ZodOptional<z.ZodString>;
100
102
  createdAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
@@ -1 +1 @@
1
- {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../schema/database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAwCxB,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAuC9B,CAAC;AAEH,eAAO,MAAM,cAAc;;;;;;;iBAOzB,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AACtE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC"}
1
+ {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../schema/database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAwCxB,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA8C9B,CAAC;AAEH,eAAO,MAAM,cAAc;;;;;;;iBAOzB,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AACtE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC"}
@@ -97,6 +97,8 @@ export declare const GoogleCalendarSchema: {
97
97
  outOfOffice: "outOfOffice";
98
98
  focusTime: "focusTime";
99
99
  workingLocation: "workingLocation";
100
+ birthday: "birthday";
101
+ fromGmail: "fromGmail";
100
102
  }>>;
101
103
  calendarId: import("zod").ZodOptional<import("zod").ZodString>;
102
104
  createdAt: import("zod").ZodOptional<import("zod").ZodCoercedDate<unknown>>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../schema/index.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMvB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../schema/index.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMvB,CAAC"}
package/dist/types.d.ts CHANGED
@@ -114,7 +114,7 @@ export type Event = {
114
114
  iconLink?: string;
115
115
  fileId?: string;
116
116
  }>;
117
- eventType?: 'default' | 'outOfOffice' | 'focusTime' | 'workingLocation';
117
+ eventType?: 'default' | 'outOfOffice' | 'focusTime' | 'workingLocation' | 'birthday' | 'fromGmail';
118
118
  };
119
119
  export type EventListResponse = {
120
120
  kind?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@corsair-dev/googlecalendar",
3
- "version": "0.1.2",
3
+ "version": "0.1.4",
4
4
  "description": "Google calendar plugin for Corsair",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -27,7 +27,7 @@
27
27
  "tsup": "^8.0.1",
28
28
  "typescript": "^5.9.3",
29
29
  "zod": "^4.1.13",
30
- "corsair": "0.1.69"
30
+ "corsair": "0.1.76"
31
31
  },
32
32
  "keywords": [
33
33
  "corsair",