@plotday/tool-google-calendar 0.4.0 → 0.8.0

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.
package/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2025 Plot Technologies Inc.
3
+ Copyright (c) 2026 Plot Technologies Inc.
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -101,3 +101,7 @@ export declare function syncGoogleCalendar(api: GoogleApi, calendarId: string, s
101
101
  events: GoogleEvent[];
102
102
  state: SyncState;
103
103
  }>;
104
+ /**
105
+ * Detects if a string contains HTML tags
106
+ */
107
+ export declare function containsHtml(text: string | null | undefined): boolean;
@@ -199,7 +199,7 @@ export function transformGoogleEvent(event, calendarId) {
199
199
  type: isCancelled ? ActivityType.Note : (isAllDay ? ActivityType.Note : ActivityType.Event),
200
200
  title: isCancelled
201
201
  ? `Cancelled: ${event.summary || "Event"}`
202
- : event.summary || null,
202
+ : event.summary || "",
203
203
  start: isCancelled ? null : start,
204
204
  end: isCancelled ? null : end,
205
205
  meta: {
@@ -281,4 +281,12 @@ export async function syncGoogleCalendar(api, calendarId, state) {
281
281
  state: nextState,
282
282
  };
283
283
  }
284
+ /**
285
+ * Detects if a string contains HTML tags
286
+ */
287
+ export function containsHtml(text) {
288
+ if (!text)
289
+ return false;
290
+ return /<[a-z][\s\S]*>/i.test(text);
291
+ }
284
292
  //# sourceMappingURL=google-api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"google-api.js","sourceRoot":"","sources":["../src/google-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"google-api.js","sourceRoot":"","sources":["../src/google-api.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { type ActivityCommon, type ActivityLink, type ActorId, type NewActivityWithNotes, Tag, Tool, type ToolBuilder } from "@plotday/twister";
1
+ import GoogleContacts from "@plotday/tool-google-contacts";
2
+ import { type Activity, type ActivityLink, ActivityUpdate, type ActorId, type NewActivityWithNotes, Tag, Tool, type ToolBuilder } from "@plotday/twister";
2
3
  import { type Calendar, type CalendarAuth, type CalendarTool } from "@plotday/twister/common/calendar";
3
4
  import { type Callback } from "@plotday/twister/tools/callbacks";
4
5
  import { type Authorization, Integrations } from "@plotday/twister/tools/integrations";
@@ -72,10 +73,12 @@ import { Plot } from "@plotday/twister/tools/plot";
72
73
  * ```
73
74
  */
74
75
  export declare class GoogleCalendar extends Tool<GoogleCalendar> implements CalendarTool {
76
+ static readonly SCOPES: string[];
75
77
  build(build: ToolBuilder): {
76
78
  integrations: Promise<Integrations>;
77
79
  network: Promise<Network>;
78
80
  plot: Promise<Plot>;
81
+ googleContacts: Promise<GoogleContacts>;
79
82
  };
80
83
  requestAuth<TCallback extends (auth: CalendarAuth, ...args: any[]) => any>(callback: TCallback, ...extraArgs: any[]): Promise<ActivityLink>;
81
84
  private getApi;
@@ -85,14 +88,15 @@ export declare class GoogleCalendar extends Tool<GoogleCalendar> implements Cale
85
88
  startSync<TCallback extends (activity: NewActivityWithNotes, ...args: any[]) => any>(authToken: string, calendarId: string, callback: TCallback, ...extraArgs: any[]): Promise<void>;
86
89
  stopSync(_authToken: string, calendarId: string): Promise<void>;
87
90
  private setupCalendarWatch;
88
- syncBatch(_args: any, batchNumber: number, mode: "full" | "incremental", authToken: string, calendarId: string): Promise<void>;
91
+ syncBatch(batchNumber: number, mode: "full" | "incremental", authToken: string, calendarId: string, initialSync: boolean): Promise<void>;
89
92
  private processCalendarEvents;
90
93
  private processEventException;
91
94
  onCalendarWebhook(request: WebhookRequest, calendarId: string, authToken: string): Promise<void>;
92
95
  private startIncrementalSync;
93
96
  onAuthSuccess(authResult: Authorization, authToken: string, callback: Callback): Promise<void>;
94
- onActivityUpdated(activity: ActivityCommon, changes?: {
95
- previous: ActivityCommon;
97
+ onActivityUpdated(activity: Activity, changes: {
98
+ update: ActivityUpdate;
99
+ previous: Activity;
96
100
  tagsAdded: Record<Tag, ActorId[]>;
97
101
  tagsRemoved: Record<Tag, ActorId[]>;
98
102
  }): Promise<void>;
@@ -1,8 +1,11 @@
1
+ import GoogleContacts from "@plotday/tool-google-contacts";
1
2
  import { ActivityLinkType, ConferencingProvider, Tag, Tool, } from "@plotday/twister";
3
+ import { Uuid } from "@plotday/twister/utils/uuid";
4
+ import { quickHash } from "@plotday/twister/utils/hash";
2
5
  import { AuthLevel, AuthProvider, Integrations, } from "@plotday/twister/tools/integrations";
3
6
  import { Network } from "@plotday/twister/tools/network";
4
7
  import { ActivityAccess, ContactAccess, Plot, } from "@plotday/twister/tools/plot";
5
- import { GoogleApi, extractConferencingLinks, syncGoogleCalendar, transformGoogleEvent, } from "./google-api";
8
+ import { GoogleApi, containsHtml, extractConferencingLinks, syncGoogleCalendar, transformGoogleEvent, } from "./google-api";
6
9
  /**
7
10
  * Google Calendar integration tool.
8
11
  *
@@ -86,14 +89,13 @@ export class GoogleCalendar extends Tool {
86
89
  updated: this.onActivityUpdated,
87
90
  },
88
91
  }),
92
+ googleContacts: build(GoogleContacts),
89
93
  };
90
94
  }
91
95
  async requestAuth(callback, ...extraArgs) {
92
96
  console.log("Requesting Google Calendar auth");
93
- const calendarScopes = [
94
- "https://www.googleapis.com/auth/calendar.calendarlist.readonly",
95
- "https://www.googleapis.com/auth/calendar.events",
96
- ];
97
+ // Combine calendar and contacts scopes for single OAuth flow
98
+ const combinedScopes = [...GoogleCalendar.SCOPES, ...GoogleContacts.SCOPES];
97
99
  // Generate opaque token for authorization
98
100
  const authToken = crypto.randomUUID();
99
101
  const callbackToken = await this.tools.callbacks.createFromParent(callback, ...extraArgs);
@@ -101,7 +103,7 @@ export class GoogleCalendar extends Tool {
101
103
  return await this.tools.integrations.request({
102
104
  provider: AuthProvider.Google,
103
105
  level: AuthLevel.User,
104
- scopes: calendarScopes,
106
+ scopes: combinedScopes,
105
107
  }, this.onAuthSuccess, authToken, callbackToken);
106
108
  }
107
109
  async getApi(authToken) {
@@ -169,7 +171,8 @@ export class GoogleCalendar extends Tool {
169
171
  await this.set(`sync_state_${calendarId}`, initialState);
170
172
  console.log("Starting sync");
171
173
  // Start sync batch using run tool for long-running operation
172
- const syncCallback = await this.callback(this.syncBatch, 1, "full", authToken, calendarId);
174
+ const syncCallback = await this.callback(this.syncBatch, 1, "full", authToken, calendarId, true // initialSync = true for initial sync
175
+ );
173
176
  await this.run(syncCallback);
174
177
  }
175
178
  async stopSync(_authToken, calendarId) {
@@ -210,7 +213,7 @@ export class GoogleCalendar extends Tool {
210
213
  });
211
214
  console.log("Calendar watch setup complete", { watchId, calendarId });
212
215
  }
213
- async syncBatch(_args, batchNumber, mode, authToken, calendarId) {
216
+ async syncBatch(batchNumber, mode, authToken, calendarId, initialSync) {
214
217
  console.log(`Starting Google Calendar sync batch ${batchNumber} (${mode}) for calendar ${calendarId}`);
215
218
  try {
216
219
  // Ensure we have the user's identity for RSVP tagging
@@ -231,12 +234,13 @@ export class GoogleCalendar extends Tool {
231
234
  const api = await this.getApi(authToken);
232
235
  const result = await syncGoogleCalendar(api, calendarId, state);
233
236
  if (result.events.length > 0) {
234
- await this.processCalendarEvents(result.events, calendarId);
237
+ await this.processCalendarEvents(result.events, calendarId, initialSync);
235
238
  console.log(`Synced ${result.events.length} events in batch ${batchNumber} for calendar ${calendarId}`);
236
239
  }
237
240
  await this.set(`sync_state_${calendarId}`, result.state);
238
241
  if (result.state.more) {
239
- const syncCallback = await this.callback(this.syncBatch, batchNumber + 1, mode, authToken, calendarId);
242
+ const syncCallback = await this.callback(this.syncBatch, batchNumber + 1, mode, authToken, calendarId, initialSync // Pass through the initialSync boolean
243
+ );
240
244
  await this.run(syncCallback);
241
245
  }
242
246
  else {
@@ -251,7 +255,7 @@ export class GoogleCalendar extends Tool {
251
255
  throw error;
252
256
  }
253
257
  }
254
- async processCalendarEvents(events, calendarId) {
258
+ async processCalendarEvents(events, calendarId, initialSync) {
255
259
  // Get user email for RSVP tagging
256
260
  const userEmail = await this.get("user_email");
257
261
  for (const event of events) {
@@ -260,120 +264,204 @@ export class GoogleCalendar extends Tool {
260
264
  // TODO: Handle event cancellation
261
265
  continue;
262
266
  }
263
- // Extract and create contacts from attendees
264
- let actorIds = [];
267
+ // Extract contacts from organizer and attendees
268
+ let validAttendees = [];
269
+ // Prepare author contact (organizer) - will be passed directly as NewContact
270
+ let authorContact = undefined;
271
+ if (event.organizer?.email) {
272
+ authorContact = {
273
+ email: event.organizer.email,
274
+ name: event.organizer.displayName,
275
+ };
276
+ }
277
+ // Prepare attendee contacts for tags
265
278
  if (event.attendees && event.attendees.length > 0) {
266
- const contacts = event.attendees
267
- .filter((att) => att.email && !att.resource) // Exclude resources
268
- .map((att) => ({
269
- email: att.email,
270
- name: att.displayName,
271
- }));
272
- if (contacts.length > 0) {
273
- const actors = await this.tools.plot.addContacts(contacts);
274
- actorIds = actors.map((actor) => actor.id);
275
- }
279
+ // Filter to get only valid attendees (with email, not resources)
280
+ validAttendees = event.attendees.filter((att) => att.email && !att.resource);
276
281
  }
277
282
  // Check if this is a recurring event instance (exception)
278
283
  if (event.recurringEventId && event.originalStartTime) {
279
- await this.processEventException(event, calendarId);
284
+ await this.processEventException(event, calendarId, initialSync);
280
285
  }
281
286
  else {
282
287
  // Regular or master recurring event
283
288
  const activityData = transformGoogleEvent(event, calendarId);
284
- // Determine user's RSVP status and set tags
289
+ // Determine RSVP status for all attendees and set tags with NewActor[]
285
290
  let tags = null;
286
- if (userEmail && event.attendees) {
287
- const userAttendee = event.attendees.find((att) => att.self === true ||
288
- att.email?.toLowerCase() === userEmail.toLowerCase());
289
- if (userAttendee) {
290
- // Find the user's ActorId from the contacts we just created
291
- const userActorId = actorIds.find((_actorId, index) => {
292
- const attendee = event.attendees[index];
293
- return (attendee.self === true ||
294
- attendee.email?.toLowerCase() === userEmail.toLowerCase());
295
- });
296
- if (userActorId) {
297
- tags = {};
298
- if (userAttendee.responseStatus === "accepted") {
299
- tags[Tag.Attend] = [userActorId];
300
- }
301
- else if (userAttendee.responseStatus === "declined") {
302
- tags[Tag.Skip] = [userActorId];
303
- }
304
- else if (userAttendee.responseStatus === "tentative" ||
305
- userAttendee.responseStatus === "needsAction") {
306
- tags[Tag.Undecided] = [userActorId];
307
- }
291
+ if (validAttendees.length > 0) {
292
+ const attendTags = [];
293
+ const skipTags = [];
294
+ const undecidedTags = [];
295
+ // Iterate through valid attendees and group by response status
296
+ validAttendees.forEach((attendee) => {
297
+ const newActor = {
298
+ email: attendee.email,
299
+ name: attendee.displayName,
300
+ };
301
+ if (attendee.responseStatus === "accepted") {
302
+ attendTags.push(newActor);
308
303
  }
309
- }
310
- }
311
- // Convert to full Activity and call callback
312
- const callbackToken = await this.get("event_callback_token");
313
- if (callbackToken && activityData.type) {
314
- // Build links array for videoconferencing and calendar links
315
- const links = [];
316
- const seenUrls = new Set();
317
- // Extract all conferencing links (Zoom, Teams, Webex, etc.)
318
- const conferencingLinks = extractConferencingLinks(event);
319
- for (const link of conferencingLinks) {
320
- if (!seenUrls.has(link.url)) {
321
- seenUrls.add(link.url);
322
- links.push({
323
- type: ActivityLinkType.conferencing,
324
- url: link.url,
325
- provider: link.provider,
326
- });
304
+ else if (attendee.responseStatus === "declined") {
305
+ skipTags.push(newActor);
306
+ }
307
+ else if (attendee.responseStatus === "tentative" ||
308
+ attendee.responseStatus === "needsAction") {
309
+ undecidedTags.push(newActor);
327
310
  }
311
+ });
312
+ // Only set tags if we have at least one
313
+ if (attendTags.length > 0 ||
314
+ skipTags.length > 0 ||
315
+ undecidedTags.length > 0) {
316
+ tags = {};
317
+ if (attendTags.length > 0)
318
+ tags[Tag.Attend] = attendTags;
319
+ if (skipTags.length > 0)
320
+ tags[Tag.Skip] = skipTags;
321
+ if (undecidedTags.length > 0)
322
+ tags[Tag.Undecided] = undecidedTags;
328
323
  }
329
- // Add Google Meet link from hangoutLink if not already added
330
- if (event.hangoutLink && !seenUrls.has(event.hangoutLink)) {
331
- seenUrls.add(event.hangoutLink);
324
+ }
325
+ // Build links array for videoconferencing and calendar links
326
+ const links = [];
327
+ const seenUrls = new Set();
328
+ // Extract all conferencing links (Zoom, Teams, Webex, etc.)
329
+ const conferencingLinks = extractConferencingLinks(event);
330
+ for (const link of conferencingLinks) {
331
+ if (!seenUrls.has(link.url)) {
332
+ seenUrls.add(link.url);
332
333
  links.push({
333
334
  type: ActivityLinkType.conferencing,
334
- url: event.hangoutLink,
335
- provider: ConferencingProvider.googleMeet,
336
- });
337
- }
338
- // Add calendar link
339
- if (event.htmlLink) {
340
- links.push({
341
- type: ActivityLinkType.external,
342
- title: "View in Calendar",
343
- url: event.htmlLink,
335
+ url: link.url,
336
+ provider: link.provider,
344
337
  });
345
338
  }
339
+ }
340
+ // Add Google Meet link from hangoutLink if not already added
341
+ if (event.hangoutLink && !seenUrls.has(event.hangoutLink)) {
342
+ seenUrls.add(event.hangoutLink);
343
+ links.push({
344
+ type: ActivityLinkType.conferencing,
345
+ url: event.hangoutLink,
346
+ provider: ConferencingProvider.googleMeet,
347
+ });
348
+ }
349
+ // Add calendar link
350
+ if (event.htmlLink) {
351
+ links.push({
352
+ type: ActivityLinkType.external,
353
+ title: "View in Calendar",
354
+ url: event.htmlLink,
355
+ });
356
+ }
357
+ // Prepare description content
358
+ const description = activityData.meta?.description || event.description;
359
+ const hasDescription = description && description.trim().length > 0;
360
+ const hasLinks = links.length > 0;
361
+ const descriptionHash = hasDescription ? quickHash(description) : undefined;
362
+ // Check for existing mapping
363
+ const mappingKey = `sync:${calendarId}:${event.id}`;
364
+ const existingMapping = await this.get(mappingKey);
365
+ const callbackToken = await this.get("event_callback_token");
366
+ if (!callbackToken || !activityData.type) {
367
+ continue;
368
+ }
369
+ if (!existingMapping) {
370
+ // NEW EVENT: Generate UUIDs and create mapping
371
+ const activityId = Uuid.Generate();
372
+ const descriptionNoteId = (hasDescription || hasLinks) ? Uuid.Generate() : undefined;
346
373
  // Create note with description and/or links
347
374
  const notes = [];
348
- const description = activityData.meta?.description || event.description;
349
- const hasDescription = description && description.trim().length > 0;
350
- const hasLinks = links.length > 0;
351
375
  if (hasDescription || hasLinks) {
352
376
  notes.push({
353
- activity: { id: "" }, // Will be filled in by the API
354
- note: hasDescription ? description : null,
377
+ id: descriptionNoteId,
378
+ activity: { id: activityId },
379
+ content: hasDescription ? description : null,
355
380
  links: hasLinks ? links : null,
356
- noteType: "text",
381
+ contentType: containsHtml(description) ? "html" : "text",
357
382
  });
358
383
  }
359
384
  const activity = {
385
+ id: activityId,
360
386
  type: activityData.type,
361
387
  start: activityData.start || null,
362
388
  end: activityData.end || null,
363
389
  recurrenceUntil: activityData.recurrenceUntil || null,
364
390
  recurrenceCount: activityData.recurrenceCount || null,
365
391
  doneAt: null,
366
- title: activityData.title || null,
392
+ title: activityData.title || "",
393
+ author: authorContact,
367
394
  recurrenceRule: activityData.recurrenceRule || null,
368
395
  recurrenceExdates: activityData.recurrenceExdates || null,
369
396
  recurrenceDates: activityData.recurrenceDates || null,
370
397
  recurrence: null,
371
398
  occurrence: null,
372
399
  meta: activityData.meta ?? null,
373
- tags,
400
+ tags: tags || undefined,
374
401
  notes,
402
+ unread: !initialSync, // false for initial sync, true for incremental updates
403
+ };
404
+ // Store mapping
405
+ const mapping = {
406
+ externalId: event.id,
407
+ activityId,
408
+ descriptionNoteId,
409
+ descriptionHash,
410
+ lastSyncedAt: new Date().toISOString(),
375
411
  };
376
- await this.run(callbackToken, activity);
412
+ await this.set(mappingKey, mapping);
413
+ // Send new activity
414
+ await this.tools.callbacks.run(callbackToken, activity);
415
+ }
416
+ else {
417
+ // EXISTING EVENT: Detect changes and send update
418
+ const update = { id: existingMapping.activityId };
419
+ let hasChanges = false;
420
+ const newNotes = [];
421
+ // Check for activity field changes
422
+ if (activityData.title !== undefined) {
423
+ update.title = activityData.title || "";
424
+ hasChanges = true;
425
+ }
426
+ if (activityData.start !== undefined) {
427
+ update.start = activityData.start || null;
428
+ hasChanges = true;
429
+ }
430
+ if (activityData.end !== undefined) {
431
+ update.end = activityData.end || null;
432
+ hasChanges = true;
433
+ }
434
+ if (activityData.meta !== undefined) {
435
+ update.meta = activityData.meta ?? null;
436
+ hasChanges = true;
437
+ }
438
+ // Check for description changes
439
+ if (descriptionHash !== existingMapping.descriptionHash) {
440
+ const newDescriptionNoteId = Uuid.Generate();
441
+ newNotes.push({
442
+ id: newDescriptionNoteId,
443
+ activity: { id: existingMapping.activityId },
444
+ content: hasDescription ? description : null,
445
+ links: hasLinks ? links : null,
446
+ contentType: containsHtml(description) ? "html" : "text",
447
+ });
448
+ // Update mapping with new description note
449
+ existingMapping.descriptionNoteId = newDescriptionNoteId;
450
+ existingMapping.descriptionHash = descriptionHash;
451
+ }
452
+ // Send update if there are changes
453
+ if (hasChanges || newNotes.length > 0) {
454
+ const syncUpdate = {
455
+ activityId: existingMapping.activityId,
456
+ update: hasChanges ? update : undefined,
457
+ notes: newNotes.length > 0 ? newNotes : undefined,
458
+ };
459
+ // Update mapping timestamp
460
+ existingMapping.lastSyncedAt = new Date().toISOString();
461
+ await this.set(mappingKey, existingMapping);
462
+ // Send update
463
+ await this.tools.callbacks.run(callbackToken, syncUpdate);
464
+ }
377
465
  }
378
466
  }
379
467
  }
@@ -383,7 +471,7 @@ export class GoogleCalendar extends Tool {
383
471
  }
384
472
  }
385
473
  }
386
- async processEventException(event, calendarId) {
474
+ async processEventException(event, calendarId, initialSync) {
387
475
  // Similar to processCalendarEvents but for exceptions
388
476
  // This would find the master recurring activity and create an exception
389
477
  const originalStartTime = event.originalStartTime?.dateTime || event.originalStartTime?.date;
@@ -393,60 +481,73 @@ export class GoogleCalendar extends Tool {
393
481
  }
394
482
  const activityData = transformGoogleEvent(event, calendarId);
395
483
  const callbackToken = await this.get("event_callback_token");
396
- if (callbackToken && activityData.type) {
397
- // Build links array for videoconferencing and calendar links
398
- const links = [];
399
- const seenUrls = new Set();
400
- // Extract all conferencing links (Zoom, Teams, Webex, etc.)
401
- const conferencingLinks = extractConferencingLinks(event);
402
- for (const link of conferencingLinks) {
403
- if (!seenUrls.has(link.url)) {
404
- seenUrls.add(link.url);
405
- links.push({
406
- type: ActivityLinkType.conferencing,
407
- url: link.url,
408
- provider: link.provider,
409
- });
410
- }
411
- }
412
- // Add Google Meet link from hangoutLink if not already added
413
- if (event.hangoutLink && !seenUrls.has(event.hangoutLink)) {
414
- seenUrls.add(event.hangoutLink);
484
+ if (!callbackToken || !activityData.type) {
485
+ return;
486
+ }
487
+ // Build links array for videoconferencing and calendar links
488
+ const links = [];
489
+ const seenUrls = new Set();
490
+ // Extract all conferencing links (Zoom, Teams, Webex, etc.)
491
+ const conferencingLinks = extractConferencingLinks(event);
492
+ for (const link of conferencingLinks) {
493
+ if (!seenUrls.has(link.url)) {
494
+ seenUrls.add(link.url);
415
495
  links.push({
416
496
  type: ActivityLinkType.conferencing,
417
- url: event.hangoutLink,
418
- provider: ConferencingProvider.googleMeet,
419
- });
420
- }
421
- // Add calendar link
422
- if (event.htmlLink) {
423
- links.push({
424
- type: ActivityLinkType.external,
425
- title: "View in Calendar",
426
- url: event.htmlLink,
497
+ url: link.url,
498
+ provider: link.provider,
427
499
  });
428
500
  }
501
+ }
502
+ // Add Google Meet link from hangoutLink if not already added
503
+ if (event.hangoutLink && !seenUrls.has(event.hangoutLink)) {
504
+ seenUrls.add(event.hangoutLink);
505
+ links.push({
506
+ type: ActivityLinkType.conferencing,
507
+ url: event.hangoutLink,
508
+ provider: ConferencingProvider.googleMeet,
509
+ });
510
+ }
511
+ // Add calendar link
512
+ if (event.htmlLink) {
513
+ links.push({
514
+ type: ActivityLinkType.external,
515
+ title: "View in Calendar",
516
+ url: event.htmlLink,
517
+ });
518
+ }
519
+ // Prepare description content
520
+ const description = activityData.meta?.description || event.description;
521
+ const hasDescription = description && description.trim().length > 0;
522
+ const hasLinks = links.length > 0;
523
+ const descriptionHash = hasDescription ? quickHash(description) : undefined;
524
+ // Check for existing mapping
525
+ const mappingKey = `sync:${calendarId}:${event.id}`;
526
+ const existingMapping = await this.get(mappingKey);
527
+ if (!existingMapping) {
528
+ // NEW EXCEPTION: Generate UUIDs and create mapping
529
+ const activityId = Uuid.Generate();
530
+ const descriptionNoteId = (hasDescription || hasLinks) ? Uuid.Generate() : undefined;
429
531
  // Create note with description and/or links
430
532
  const notes = [];
431
- const description = activityData.meta?.description || event.description;
432
- const hasDescription = description && description.trim().length > 0;
433
- const hasLinks = links.length > 0;
434
533
  if (hasDescription || hasLinks) {
435
534
  notes.push({
436
- activity: { id: "" }, // Will be filled in by the API
437
- note: hasDescription ? description : null,
535
+ id: descriptionNoteId,
536
+ activity: { id: activityId },
537
+ content: hasDescription ? description : null,
438
538
  links: hasLinks ? links : null,
439
- noteType: "text",
539
+ contentType: containsHtml(description) ? "html" : "text",
440
540
  });
441
541
  }
442
542
  const activity = {
543
+ id: activityId,
443
544
  type: activityData.type,
444
545
  start: activityData.start || null,
445
546
  end: activityData.end || null,
446
547
  recurrenceUntil: activityData.recurrenceUntil || null,
447
548
  recurrenceCount: activityData.recurrenceCount || null,
448
549
  doneAt: null,
449
- title: activityData.title || null,
550
+ title: activityData.title || "",
450
551
  recurrenceRule: null,
451
552
  recurrenceExdates: null,
452
553
  recurrenceDates: null,
@@ -454,8 +555,69 @@ export class GoogleCalendar extends Tool {
454
555
  occurrence: new Date(originalStartTime),
455
556
  meta: activityData.meta ?? null,
456
557
  notes,
558
+ unread: !initialSync, // false for initial sync, true for incremental updates
457
559
  };
458
- await this.run(callbackToken, activity);
560
+ // Store mapping
561
+ const mapping = {
562
+ externalId: event.id,
563
+ activityId,
564
+ descriptionNoteId,
565
+ descriptionHash,
566
+ lastSyncedAt: new Date().toISOString(),
567
+ };
568
+ await this.set(mappingKey, mapping);
569
+ // Send new activity
570
+ await this.tools.callbacks.run(callbackToken, activity);
571
+ }
572
+ else {
573
+ // EXISTING EXCEPTION: Detect changes and send update
574
+ const update = { id: existingMapping.activityId };
575
+ let hasChanges = false;
576
+ const newNotes = [];
577
+ // Check for activity field changes
578
+ if (activityData.title !== undefined) {
579
+ update.title = activityData.title || "";
580
+ hasChanges = true;
581
+ }
582
+ if (activityData.start !== undefined) {
583
+ update.start = activityData.start || null;
584
+ hasChanges = true;
585
+ }
586
+ if (activityData.end !== undefined) {
587
+ update.end = activityData.end || null;
588
+ hasChanges = true;
589
+ }
590
+ if (activityData.meta !== undefined) {
591
+ update.meta = activityData.meta ?? null;
592
+ hasChanges = true;
593
+ }
594
+ // Check for description changes
595
+ if (descriptionHash !== existingMapping.descriptionHash) {
596
+ const newDescriptionNoteId = Uuid.Generate();
597
+ newNotes.push({
598
+ id: newDescriptionNoteId,
599
+ activity: { id: existingMapping.activityId },
600
+ content: hasDescription ? description : null,
601
+ links: hasLinks ? links : null,
602
+ contentType: containsHtml(description) ? "html" : "text",
603
+ });
604
+ // Update mapping with new description note
605
+ existingMapping.descriptionNoteId = newDescriptionNoteId;
606
+ existingMapping.descriptionHash = descriptionHash;
607
+ }
608
+ // Send update if there are changes
609
+ if (hasChanges || newNotes.length > 0) {
610
+ const syncUpdate = {
611
+ activityId: existingMapping.activityId,
612
+ update: hasChanges ? update : undefined,
613
+ notes: newNotes.length > 0 ? newNotes : undefined,
614
+ };
615
+ // Update mapping timestamp
616
+ existingMapping.lastSyncedAt = new Date().toISOString();
617
+ await this.set(mappingKey, existingMapping);
618
+ // Send update
619
+ await this.tools.callbacks.run(callbackToken, syncUpdate);
620
+ }
459
621
  }
460
622
  }
461
623
  async onCalendarWebhook(request, calendarId, authToken) {
@@ -495,12 +657,24 @@ export class GoogleCalendar extends Tool {
495
657
  state: (await this.get(`last_sync_token_${calendarId}`)) || undefined,
496
658
  };
497
659
  await this.set(`sync_state_${calendarId}`, incrementalState);
498
- const syncCallback = await this.callback(this.syncBatch, 1, "incremental", authToken, calendarId);
660
+ const syncCallback = await this.callback(this.syncBatch, 1, "incremental", authToken, calendarId, false // initialSync = false for incremental updates
661
+ );
499
662
  await this.run(syncCallback);
500
663
  }
501
664
  async onAuthSuccess(authResult, authToken, callback) {
502
665
  // Store the actual auth token using opaque token as key
503
666
  await this.set(`authorization:${authToken}`, authResult);
667
+ // Trigger contacts sync with the same authorization
668
+ // This happens automatically when calendar auth succeeds
669
+ try {
670
+ console.log("Triggering Google Contacts sync");
671
+ await this.tools.googleContacts.syncWithAuth(authResult);
672
+ console.log("Google Contacts sync started successfully");
673
+ }
674
+ catch (error) {
675
+ // Log error but don't fail calendar auth
676
+ console.error("Failed to start contacts sync:", error);
677
+ }
504
678
  const authSuccessResult = {
505
679
  authToken,
506
680
  };
@@ -509,13 +683,9 @@ export class GoogleCalendar extends Tool {
509
683
  await this.clear(`auth_callback_token:${authToken}`);
510
684
  }
511
685
  async onActivityUpdated(activity, changes) {
512
- if (!changes)
513
- return;
514
- // Cast to Activity to access Activity-specific fields
515
- const activityFull = activity;
516
686
  // Only process calendar events
517
- if (!activityFull.meta?.source ||
518
- !activityFull.meta.source.startsWith("google-calendar:")) {
687
+ if (!activity.meta?.source ||
688
+ !activity.meta.source.startsWith("google-calendar:")) {
519
689
  return;
520
690
  }
521
691
  // Check if RSVP tags changed
@@ -574,8 +744,8 @@ export class GoogleCalendar extends Tool {
574
744
  newStatus = "needsAction";
575
745
  }
576
746
  // Extract calendar info from metadata
577
- const eventId = activityFull.meta.id;
578
- const calendarId = activityFull.meta.calendarId;
747
+ const eventId = activity.meta.id;
748
+ const calendarId = activity.meta.calendarId;
579
749
  if (!eventId || !calendarId) {
580
750
  console.warn("Missing event or calendar ID in activity metadata");
581
751
  return;
@@ -625,5 +795,9 @@ export class GoogleCalendar extends Tool {
625
795
  await api.call("PATCH", `https://www.googleapis.com/calendar/v3/calendars/${calendarId}/events/${eventId}`, undefined, { attendees });
626
796
  }
627
797
  }
798
+ GoogleCalendar.SCOPES = [
799
+ "https://www.googleapis.com/auth/calendar.calendarlist.readonly",
800
+ "https://www.googleapis.com/auth/calendar.events",
801
+ ];
628
802
  export default GoogleCalendar;
629
803
  //# sourceMappingURL=google-calendar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"google-calendar.js","sourceRoot":"","sources":["../src/google-calendar.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,gBAAgB,EAEhB,oBAAoB,EAIpB,GAAG,EACH,IAAI,GAEL,MAAM,kBAAkB,CAAC;AAO1B,OAAO,EACL,SAAS,EACT,YAAY,EAEZ,YAAY,GACb,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAuB,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EACL,cAAc,EACd,aAAa,EACb,IAAI,GACL,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,SAAS,EAGT,wBAAwB,EACxB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,cAAc,CAAC;AAEtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkEG;AACH,MAAM,OAAO,cACX,SAAQ,IAAoB;IAG5B,KAAK,CAAC,KAAkB;QACtB,OAAO;YACL,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC;YACjC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE;gBACtB,IAAI,EAAE,CAAC,uCAAuC,CAAC;aAChD,CAAC;YACF,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE;gBAChB,OAAO,EAAE;oBACP,MAAM,EAAE,aAAa,CAAC,KAAK;iBAC5B;gBACD,QAAQ,EAAE;oBACR,MAAM,EAAE,cAAc,CAAC,MAAM;oBAC7B,OAAO,EAAE,IAAI,CAAC,iBAAiB;iBAChC;aACF,CAAC;SACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CAEf,QAAmB,EAAE,GAAG,SAAgB;QACxC,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QAC/C,MAAM,cAAc,GAAG;YACrB,gEAAgE;YAChE,iDAAiD;SAClD,CAAC;QAEF,0CAA0C;QAC1C,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QAEtC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAC/D,QAAQ,EACR,GAAG,SAAS,CACb,CAAC;QAEF,4CAA4C;QAC5C,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAC1C;YACE,QAAQ,EAAE,YAAY,CAAC,MAAM;YAC7B,KAAK,EAAE,SAAS,CAAC,IAAI;YACrB,MAAM,EAAE,cAAc;SACvB,EACD,IAAI,CAAC,aAAa,EAClB,SAAS,EACT,aAAa,CACd,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,SAAiB;QACpC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,GAAG,CAClC,iBAAiB,SAAS,EAAE,CAC7B,CAAC;QACF,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC/D,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,SAAiB;QAC1C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAEzC,2DAA2D;QAC3D,MAAM,YAAY,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAClC,KAAK,EACL,sEAAsE,CACvE,CAAmB,CAAC;QAErB,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC,8CAA8C;IACxE,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,SAAiB;QAChD,iDAAiD;QACjD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAS,YAAY,CAAC,CAAC;QACpD,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,+BAA+B;QAC/B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAEjD,uBAAuB;QACvB,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QAEpC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;QACzC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,SAAiB;QAClC,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAC7C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACzC,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAC1B,KAAK,EACL,8DAA8D,CAC/D,CAOA,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAEpD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC/B,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,IAAI,CAAC,OAAO;YAClB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI;YACrC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,KAAK;SAC/B,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,SAAS,CAGb,SAAiB,EACjB,UAAkB,EAClB,QAAmB,EACnB,GAAG,SAAgB;QAEnB,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAE/B,mCAAmC;QACnC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAC/D,QAAQ,EACR,GAAG,SAAS,CACb,CAAC;QACF,MAAM,IAAI,CAAC,GAAG,CAAC,sBAAsB,EAAE,aAAa,CAAC,CAAC;QAEtD,uDAAuD;QACvD,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;QAEtD,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAEhC,kCAAkC;QAClC,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;QAEhE,qBAAqB;QACrB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAClD,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAEpD,MAAM,YAAY,GAAc;YAC9B,UAAU;YACV,GAAG;YACH,GAAG;YACH,QAAQ,EAAE,CAAC;SACZ,CAAC;QAEF,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,UAAU,EAAE,EAAE,YAAY,CAAC,CAAC;QAEzD,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC7B,6DAA6D;QAC7D,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,QAAQ,CACtC,IAAI,CAAC,SAAS,EACd,CAAC,EACD,MAAM,EACN,SAAS,EACT,UAAU,CACX,CAAC;QACF,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,UAAkB,EAAE,UAAkB;QACnD,eAAe;QACf,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAM,kBAAkB,UAAU,EAAE,CAAC,CAAC;QACtE,IAAI,SAAS,EAAE,CAAC;YACd,gDAAgD;YAChD,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,UAAU,EAAE,CAAC,CAAC;QACnD,CAAC;QAED,mBAAmB;QACnB,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,UAAU,EAAE,CAAC,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,SAAiB,EACjB,UAAkB,EAClB,eAAuB;QAEvB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC;YACxD,QAAQ,EAAE,IAAI,CAAC,iBAAiB;YAChC,SAAS,EAAE,CAAC,UAAU,EAAE,eAAe,CAAC;SACzC,CAAC,CAAC;QAEH,oCAAoC;QACpC,IAAI,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,QAAQ,KAAK,WAAW,EAAE,CAAC;YACpD,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;YACxD,OAAO;QACT,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAEzC,2BAA2B;QAC3B,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QAEnC,MAAM,SAAS,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAC/B,MAAM,EACN,oDAAoD,UAAU,eAAe,EAC7E,SAAS,EACT;YACE,EAAE,EAAE,OAAO;YACX,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,UAAU;YACnB,KAAK,EAAE,IAAI,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;SAClD,CACF,CAA2B,CAAC;QAE7B,MAAM,IAAI,CAAC,GAAG,CAAC,kBAAkB,UAAU,EAAE,EAAE;YAC7C,OAAO;YACP,MAAM;YACN,UAAU;YACV,MAAM,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;SACjD,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,SAAS,CACb,KAAU,EACV,WAAmB,EACnB,IAA4B,EAC5B,SAAiB,EACjB,UAAkB;QAElB,OAAO,CAAC,GAAG,CACT,uCAAuC,WAAW,KAAK,IAAI,kBAAkB,UAAU,EAAE,CAC1F,CAAC;QAEF,IAAI,CAAC;YACH,sDAAsD;YACtD,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;YAC3C,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAY,cAAc,UAAU,EAAE,CAAC,CAAC;YACpE,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YACzC,CAAC;YAED,kEAAkE;YAClE,IAAI,KAAK,CAAC,GAAG,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC/C,KAAK,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAClC,CAAC;YACD,IAAI,KAAK,CAAC,GAAG,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC/C,KAAK,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAClC,CAAC;YAED,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACzC,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;YAEhE,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;gBAC5D,OAAO,CAAC,GAAG,CACT,UAAU,MAAM,CAAC,MAAM,CAAC,MAAM,oBAAoB,WAAW,iBAAiB,UAAU,EAAE,CAC3F,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,UAAU,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;YAEzD,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBACtB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,QAAQ,CACtC,IAAI,CAAC,SAAS,EACd,WAAW,GAAG,CAAC,EACf,IAAI,EACJ,SAAS,EACT,UAAU,CACX,CAAC;gBACF,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CACT,mBAAmB,IAAI,yBAAyB,WAAW,yBAAyB,UAAU,EAAE,CACjG,CAAC;gBACF,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;oBACpB,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,UAAU,EAAE,CAAC,CAAC;gBAC/C,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CACX,uBAAuB,WAAW,iBAAiB,UAAU,GAAG,EAChE,KAAK,CACN,CAAC;YAEF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,MAAqB,EACrB,UAAkB;QAElB,kCAAkC;QAClC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAS,YAAY,CAAC,CAAC;QAEvD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC;gBACH,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;oBACjC,kCAAkC;oBAClC,SAAS;gBACX,CAAC;gBAED,6CAA6C;gBAC7C,IAAI,QAAQ,GAAc,EAAE,CAAC;gBAC7B,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClD,MAAM,QAAQ,GAAiB,KAAK,CAAC,SAAS;yBAC3C,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,oBAAoB;yBAChE,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;wBACb,KAAK,EAAE,GAAG,CAAC,KAAM;wBACjB,IAAI,EAAE,GAAG,CAAC,WAAW;qBACtB,CAAC,CAAC,CAAC;oBAEN,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACxB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;wBAC3D,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAC7C,CAAC;gBACH,CAAC;gBAED,0DAA0D;gBAC1D,IAAI,KAAK,CAAC,gBAAgB,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;oBACtD,MAAM,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;gBACtD,CAAC;qBAAM,CAAC;oBACN,oCAAoC;oBACpC,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;oBAE7D,4CAA4C;oBAC5C,IAAI,IAAI,GAA2C,IAAI,CAAC;oBACxD,IAAI,SAAS,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;wBACjC,MAAM,YAAY,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CACvC,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,CAAC,IAAI,KAAK,IAAI;4BACjB,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE,CACvD,CAAC;wBAEF,IAAI,YAAY,EAAE,CAAC;4BACjB,4DAA4D;4BAC5D,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;gCACpD,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAU,CAAC,KAAK,CAAC,CAAC;gCACzC,OAAO,CACL,QAAQ,CAAC,IAAI,KAAK,IAAI;oCACtB,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE,CAC1D,CAAC;4BACJ,CAAC,CAAC,CAAC;4BAEH,IAAI,WAAW,EAAE,CAAC;gCAChB,IAAI,GAAG,EAAE,CAAC;gCACV,IAAI,YAAY,CAAC,cAAc,KAAK,UAAU,EAAE,CAAC;oCAC/C,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gCACnC,CAAC;qCAAM,IAAI,YAAY,CAAC,cAAc,KAAK,UAAU,EAAE,CAAC;oCACtD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gCACjC,CAAC;qCAAM,IACL,YAAY,CAAC,cAAc,KAAK,WAAW;oCAC3C,YAAY,CAAC,cAAc,KAAK,aAAa,EAC7C,CAAC;oCACD,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gCACtC,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,6CAA6C;oBAC7C,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,GAAG,CAAS,sBAAsB,CAAC,CAAC;oBACrE,IAAI,aAAa,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC;wBACvC,6DAA6D;wBAC7D,MAAM,KAAK,GAAmB,EAAE,CAAC;wBACjC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;wBAEnC,4DAA4D;wBAC5D,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;wBAC1D,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE,CAAC;4BACrC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gCAC5B,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gCACvB,KAAK,CAAC,IAAI,CAAC;oCACT,IAAI,EAAE,gBAAgB,CAAC,YAAY;oCACnC,GAAG,EAAE,IAAI,CAAC,GAAG;oCACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;iCACxB,CAAC,CAAC;4BACL,CAAC;wBACH,CAAC;wBAED,6DAA6D;wBAC7D,IAAI,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;4BAC1D,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;4BAChC,KAAK,CAAC,IAAI,CAAC;gCACT,IAAI,EAAE,gBAAgB,CAAC,YAAY;gCACnC,GAAG,EAAE,KAAK,CAAC,WAAW;gCACtB,QAAQ,EAAE,oBAAoB,CAAC,UAAU;6BAC1C,CAAC,CAAC;wBACL,CAAC;wBAED,oBAAoB;wBACpB,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;4BACnB,KAAK,CAAC,IAAI,CAAC;gCACT,IAAI,EAAE,gBAAgB,CAAC,QAAQ;gCAC/B,KAAK,EAAE,kBAAkB;gCACzB,GAAG,EAAE,KAAK,CAAC,QAAQ;6BACpB,CAAC,CAAC;wBACL,CAAC;wBAED,4CAA4C;wBAC5C,MAAM,KAAK,GAAc,EAAE,CAAC;wBAC5B,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,EAAE,WAAW,IAAI,KAAK,CAAC,WAAW,CAAC;wBACxE,MAAM,cAAc,GAAG,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;wBACpE,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;wBAElC,IAAI,cAAc,IAAI,QAAQ,EAAE,CAAC;4BAC/B,KAAK,CAAC,IAAI,CAAC;gCACT,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,+BAA+B;gCACrD,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;gCACzC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;gCAC9B,QAAQ,EAAE,MAAM;6BACjB,CAAC,CAAC;wBACL,CAAC;wBAED,MAAM,QAAQ,GAAyB;4BACrC,IAAI,EAAE,YAAY,CAAC,IAAI;4BACvB,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,IAAI;4BACjC,GAAG,EAAE,YAAY,CAAC,GAAG,IAAI,IAAI;4BAC7B,eAAe,EAAE,YAAY,CAAC,eAAe,IAAI,IAAI;4BACrD,eAAe,EAAE,YAAY,CAAC,eAAe,IAAI,IAAI;4BACrD,MAAM,EAAE,IAAI;4BACZ,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,IAAI;4BACjC,cAAc,EAAE,YAAY,CAAC,cAAc,IAAI,IAAI;4BACnD,iBAAiB,EAAE,YAAY,CAAC,iBAAiB,IAAI,IAAI;4BACzD,eAAe,EAAE,YAAY,CAAC,eAAe,IAAI,IAAI;4BACrD,UAAU,EAAE,IAAI;4BAChB,UAAU,EAAE,IAAI;4BAChB,IAAI,EAAE,YAAY,CAAC,IAAI,IAAI,IAAI;4BAC/B,IAAI;4BACJ,KAAK;yBACN,CAAC;wBAEF,MAAM,IAAI,CAAC,GAAG,CAAC,aAAoB,EAAE,QAAQ,CAAC,CAAC;oBACjD,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,2BAA2B,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;gBAC7D,mCAAmC;YACrC,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,KAAkB,EAClB,UAAkB;QAElB,sDAAsD;QACtD,wEAAwE;QACxE,MAAM,iBAAiB,GACrB,KAAK,CAAC,iBAAiB,EAAE,QAAQ,IAAI,KAAK,CAAC,iBAAiB,EAAE,IAAI,CAAC;QACrE,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,OAAO,CAAC,IAAI,CAAC,yCAAyC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YAClE,OAAO;QACT,CAAC;QAED,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAE7D,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,GAAG,CAAS,sBAAsB,CAAC,CAAC;QACrE,IAAI,aAAa,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC;YACvC,6DAA6D;YAC7D,MAAM,KAAK,GAAmB,EAAE,CAAC;YACjC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;YAEnC,4DAA4D;YAC5D,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;YAC1D,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE,CAAC;gBACrC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC5B,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACvB,KAAK,CAAC,IAAI,CAAC;wBACT,IAAI,EAAE,gBAAgB,CAAC,YAAY;wBACnC,GAAG,EAAE,IAAI,CAAC,GAAG;wBACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;qBACxB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,6DAA6D;YAC7D,IAAI,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC1D,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBAChC,KAAK,CAAC,IAAI,CAAC;oBACT,IAAI,EAAE,gBAAgB,CAAC,YAAY;oBACnC,GAAG,EAAE,KAAK,CAAC,WAAW;oBACtB,QAAQ,EAAE,oBAAoB,CAAC,UAAU;iBAC1C,CAAC,CAAC;YACL,CAAC;YAED,oBAAoB;YACpB,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACnB,KAAK,CAAC,IAAI,CAAC;oBACT,IAAI,EAAE,gBAAgB,CAAC,QAAQ;oBAC/B,KAAK,EAAE,kBAAkB;oBACzB,GAAG,EAAE,KAAK,CAAC,QAAQ;iBACpB,CAAC,CAAC;YACL,CAAC;YAED,4CAA4C;YAC5C,MAAM,KAAK,GAAc,EAAE,CAAC;YAC5B,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,EAAE,WAAW,IAAI,KAAK,CAAC,WAAW,CAAC;YACxE,MAAM,cAAc,GAAG,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;YACpE,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;YAElC,IAAI,cAAc,IAAI,QAAQ,EAAE,CAAC;gBAC/B,KAAK,CAAC,IAAI,CAAC;oBACT,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,+BAA+B;oBACrD,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;oBACzC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;oBAC9B,QAAQ,EAAE,MAAM;iBACjB,CAAC,CAAC;YACL,CAAC;YAED,MAAM,QAAQ,GAAyB;gBACrC,IAAI,EAAE,YAAY,CAAC,IAAI;gBACvB,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,IAAI;gBACjC,GAAG,EAAE,YAAY,CAAC,GAAG,IAAI,IAAI;gBAC7B,eAAe,EAAE,YAAY,CAAC,eAAe,IAAI,IAAI;gBACrD,eAAe,EAAE,YAAY,CAAC,eAAe,IAAI,IAAI;gBACrD,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,IAAI;gBACjC,cAAc,EAAE,IAAI;gBACpB,iBAAiB,EAAE,IAAI;gBACvB,eAAe,EAAE,IAAI;gBACrB,UAAU,EAAE,IAAI,EAAE,qCAAqC;gBACvD,UAAU,EAAE,IAAI,IAAI,CAAC,iBAAiB,CAAC;gBACvC,IAAI,EAAE,YAAY,CAAC,IAAI,IAAI,IAAI;gBAC/B,KAAK;aACN,CAAC;YAEF,MAAM,IAAI,CAAC,GAAG,CAAC,aAAoB,EAAE,QAAQ,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,OAAuB,EACvB,UAAkB,EAClB,SAAiB;QAEjB,OAAO,CAAC,GAAG,CAAC,wCAAwC,EAAE;YACpD,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,UAAU;SACX,CAAC,CAAC;QAEH,gCAAgC;QAChC,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;QACvD,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAE7D,IAAI,CAAC,SAAS,IAAI,CAAC,YAAY,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAM,kBAAkB,UAAU,EAAE,CAAC,CAAC;QAEtE,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAClD,OAAO,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;YACxD,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,YAAY,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEpC,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YACvC,OAAO;QACT,CAAC;QAED,2BAA2B;QAC3B,MAAM,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACzD,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAChC,UAAkB,EAClB,SAAiB;QAEjB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAM,kBAAkB,UAAU,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;YAC9C,OAAO;QACT,CAAC;QAED,MAAM,gBAAgB,GAAc;YAClC,UAAU,EAAE,SAAS,CAAC,UAAU;YAChC,KAAK,EACH,CAAC,MAAM,IAAI,CAAC,GAAG,CAAS,mBAAmB,UAAU,EAAE,CAAC,CAAC,IAAI,SAAS;SACzE,CAAC;QAEF,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,UAAU,EAAE,EAAE,gBAAgB,CAAC,CAAC;QAC7D,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,QAAQ,CACtC,IAAI,CAAC,SAAS,EACd,CAAC,EACD,aAAa,EACb,SAAS,EACT,UAAU,CACX,CAAC;QACF,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,UAAyB,EACzB,SAAiB,EACjB,QAAkB;QAElB,wDAAwD;QACxD,MAAM,IAAI,CAAC,GAAG,CAAC,iBAAiB,SAAS,EAAE,EAAE,UAAU,CAAC,CAAC;QAEzD,MAAM,iBAAiB,GAAiB;YACtC,SAAS;SACV,CAAC;QAEF,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;QAE5C,8BAA8B;QAC9B,MAAM,IAAI,CAAC,KAAK,CAAC,uBAAuB,SAAS,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,QAAwB,EACxB,OAIC;QAED,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,sDAAsD;QACtD,MAAM,YAAY,GAAG,QAAoB,CAAC;QAC1C,+BAA+B;QAC/B,IACE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM;YAC1B,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,EACxD,CAAC;YACD,OAAO;QACT,CAAC;QAED,6BAA6B;QAC7B,MAAM,aAAa,GACjB,GAAG,CAAC,MAAM,IAAI,OAAO,CAAC,SAAS,IAAI,GAAG,CAAC,MAAM,IAAI,OAAO,CAAC,WAAW,CAAC;QACvE,MAAM,WAAW,GACf,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,SAAS,IAAI,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,WAAW,CAAC;QACnE,MAAM,gBAAgB,GACpB,GAAG,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS;YAClC,GAAG,CAAC,SAAS,IAAI,OAAO,CAAC,WAAW,CAAC;QAEvC,IAAI,CAAC,aAAa,IAAI,CAAC,WAAW,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxD,OAAO,CAAC,8BAA8B;QACxC,CAAC;QAED,kDAAkD;QAClD,MAAM,SAAS,GACb,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QACtE,MAAM,OAAO,GACX,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAClE,MAAM,YAAY,GAChB,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAE5E,IAAI,SAAgE,CAAC;QAErE,wEAAwE;QACxE,IAAI,SAAS,IAAI,CAAC,OAAO,IAAI,YAAY,CAAC,EAAE,CAAC;YAC3C,yDAAyD;YACzD,IAAI,GAAG,CAAC,MAAM,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBACpC,SAAS,GAAG,UAAU,CAAC;YACzB,CAAC;iBAAM,IAAI,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBACzC,SAAS,GAAG,UAAU,CAAC;YACzB,CAAC;iBAAM,IAAI,GAAG,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBAC9C,SAAS,GAAG,WAAW,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,gDAAgD;gBAChD,OAAO;YACT,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,IAAI,YAAY,EAAE,CAAC;YACnC,+CAA+C;YAC/C,IAAI,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBAClC,SAAS,GAAG,UAAU,CAAC;YACzB,CAAC;iBAAM,IAAI,GAAG,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBAC9C,SAAS,GAAG,WAAW,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,OAAO;YACT,CAAC;QACH,CAAC;aAAM,IAAI,SAAS,EAAE,CAAC;YACrB,SAAS,GAAG,UAAU,CAAC;QACzB,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YACnB,SAAS,GAAG,UAAU,CAAC;QACzB,CAAC;aAAM,IAAI,YAAY,EAAE,CAAC;YACxB,SAAS,GAAG,WAAW,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,8CAA8C;YAC9C,SAAS,GAAG,aAAa,CAAC;QAC5B,CAAC;QAED,sCAAsC;QACtC,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;QACrC,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC;QAEhD,IAAI,CAAC,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;YAC5B,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;YAClE,OAAO;QACT,CAAC;QAED,uCAAuC;QACvC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAS,cAAc,UAAU,EAAE,CAAC,CAAC;QAErE,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,kCAAkC,EAAE,UAAU,CAAC,CAAC;YAC7D,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;YACtE,OAAO,CAAC,GAAG,CAAC,0BAA0B,OAAO,OAAO,SAAS,EAAE,CAAC,CAAC;QACnE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,mCAAmC,OAAO,GAAG,EAAE,KAAK,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,SAAiB,EACjB,UAAkB,EAClB,OAAe,EACf,MAA6D;QAE7D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAEzC,uDAAuD;QACvD,MAAM,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAC3B,KAAK,EACL,oDAAoD,UAAU,WAAW,OAAO,EAAE,CACnF,CAAuB,CAAC;QAEzB,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,SAAS,OAAO,YAAY,CAAC,CAAC;QAChD,CAAC;QAED,kDAAkD;QAClD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAS,YAAY,CAAC,CAAC;QAEvD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC1C,CAAC;QAED,6CAA6C;QAC7C,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QACxC,MAAM,iBAAiB,GAAG,SAAS,CAAC,SAAS,CAC3C,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,CAAC,IAAI,KAAK,IAAI;YACjB,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE,CACvD,CAAC;QAEF,IAAI,iBAAiB,KAAK,CAAC,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;YACtD,OAAO;QACT,CAAC;QAED,0DAA0D;QAC1D,IAAI,SAAS,CAAC,iBAAiB,CAAC,CAAC,cAAc,KAAK,MAAM,EAAE,CAAC;YAC3D,OAAO,CAAC,GAAG,CAAC,uBAAuB,MAAM,mBAAmB,CAAC,CAAC;YAC9D,OAAO;QACT,CAAC;QAED,wCAAwC;QACxC,SAAS,CAAC,iBAAiB,CAAC,CAAC,cAAc,GAAG,MAAM,CAAC;QAErD,+CAA+C;QAC/C,MAAM,GAAG,CAAC,IAAI,CACZ,OAAO,EACP,oDAAoD,UAAU,WAAW,OAAO,EAAE,EAClF,SAAS,EACT,EAAE,SAAS,EAAE,CACd,CAAC;IACJ,CAAC;CACF;AAED,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"google-calendar.js","sourceRoot":"","sources":["../src/google-calendar.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAGL,gBAAgB,EAGhB,oBAAoB,EAMpB,GAAG,EACH,IAAI,GAEL,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAOxD,OAAO,EACL,SAAS,EACT,YAAY,EAEZ,YAAY,GACb,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAuB,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EACL,cAAc,EACd,aAAa,EACb,IAAI,GACL,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,SAAS,EAGT,YAAY,EACZ,wBAAwB,EACxB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,cAAc,CAAC;AAmBtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkEG;AACH,MAAM,OAAO,cACX,SAAQ,IAAoB;IAQ5B,KAAK,CAAC,KAAkB;QACtB,OAAO;YACL,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC;YACjC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE;gBACtB,IAAI,EAAE,CAAC,uCAAuC,CAAC;aAChD,CAAC;YACF,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE;gBAChB,OAAO,EAAE;oBACP,MAAM,EAAE,aAAa,CAAC,KAAK;iBAC5B;gBACD,QAAQ,EAAE;oBACR,MAAM,EAAE,cAAc,CAAC,MAAM;oBAC7B,OAAO,EAAE,IAAI,CAAC,iBAAiB;iBAChC;aACF,CAAC;YACF,cAAc,EAAE,KAAK,CAAC,cAAc,CAAC;SACtC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CAEf,QAAmB,EAAE,GAAG,SAAgB;QACxC,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QAE/C,6DAA6D;QAC7D,MAAM,cAAc,GAAG,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QAE5E,0CAA0C;QAC1C,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QAEtC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAC/D,QAAQ,EACR,GAAG,SAAS,CACb,CAAC;QAEF,4CAA4C;QAC5C,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAC1C;YACE,QAAQ,EAAE,YAAY,CAAC,MAAM;YAC7B,KAAK,EAAE,SAAS,CAAC,IAAI;YACrB,MAAM,EAAE,cAAc;SACvB,EACD,IAAI,CAAC,aAAa,EAClB,SAAS,EACT,aAAa,CACd,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,SAAiB;QACpC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,GAAG,CAClC,iBAAiB,SAAS,EAAE,CAC7B,CAAC;QACF,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC/D,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,SAAiB;QAC1C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAEzC,2DAA2D;QAC3D,MAAM,YAAY,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAClC,KAAK,EACL,sEAAsE,CACvE,CAAmB,CAAC;QAErB,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC,8CAA8C;IACxE,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,SAAiB;QAChD,iDAAiD;QACjD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAS,YAAY,CAAC,CAAC;QACpD,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,+BAA+B;QAC/B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAEjD,uBAAuB;QACvB,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QAEpC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;QACzC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,SAAiB;QAClC,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAC7C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACzC,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAC1B,KAAK,EACL,8DAA8D,CAC/D,CAOA,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAEpD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC/B,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,IAAI,CAAC,OAAO;YAClB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI;YACrC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,KAAK;SAC/B,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,SAAS,CAGb,SAAiB,EACjB,UAAkB,EAClB,QAAmB,EACnB,GAAG,SAAgB;QAEnB,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAE/B,mCAAmC;QACnC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAC/D,QAAQ,EACR,GAAG,SAAS,CACb,CAAC;QACF,MAAM,IAAI,CAAC,GAAG,CAAC,sBAAsB,EAAE,aAAa,CAAC,CAAC;QAEtD,uDAAuD;QACvD,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;QAEtD,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAEhC,kCAAkC;QAClC,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;QAEhE,qBAAqB;QACrB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAClD,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAEpD,MAAM,YAAY,GAAc;YAC9B,UAAU;YACV,GAAG;YACH,GAAG;YACH,QAAQ,EAAE,CAAC;SACZ,CAAC;QAEF,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,UAAU,EAAE,EAAE,YAAY,CAAC,CAAC;QAEzD,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC7B,6DAA6D;QAC7D,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,QAAQ,CACtC,IAAI,CAAC,SAAS,EACd,CAAC,EACD,MAAM,EACN,SAAS,EACT,UAAU,EACV,IAAI,CAAC,sCAAsC;SAC5C,CAAC;QACF,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,UAAkB,EAAE,UAAkB;QACnD,eAAe;QACf,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAM,kBAAkB,UAAU,EAAE,CAAC,CAAC;QACtE,IAAI,SAAS,EAAE,CAAC;YACd,gDAAgD;YAChD,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,UAAU,EAAE,CAAC,CAAC;QACnD,CAAC;QAED,mBAAmB;QACnB,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,UAAU,EAAE,CAAC,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,SAAiB,EACjB,UAAkB,EAClB,eAAuB;QAEvB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC;YACxD,QAAQ,EAAE,IAAI,CAAC,iBAAiB;YAChC,SAAS,EAAE,CAAC,UAAU,EAAE,eAAe,CAAC;SACzC,CAAC,CAAC;QAEH,oCAAoC;QACpC,IAAI,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,QAAQ,KAAK,WAAW,EAAE,CAAC;YACpD,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;YACxD,OAAO;QACT,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAEzC,2BAA2B;QAC3B,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QAEnC,MAAM,SAAS,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAC/B,MAAM,EACN,oDAAoD,UAAU,eAAe,EAC7E,SAAS,EACT;YACE,EAAE,EAAE,OAAO;YACX,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,UAAU;YACnB,KAAK,EAAE,IAAI,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;SAClD,CACF,CAA2B,CAAC;QAE7B,MAAM,IAAI,CAAC,GAAG,CAAC,kBAAkB,UAAU,EAAE,EAAE;YAC7C,OAAO;YACP,MAAM;YACN,UAAU;YACV,MAAM,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;SACjD,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,SAAS,CACb,WAAmB,EACnB,IAA4B,EAC5B,SAAiB,EACjB,UAAkB,EAClB,WAAoB;QAEpB,OAAO,CAAC,GAAG,CACT,uCAAuC,WAAW,KAAK,IAAI,kBAAkB,UAAU,EAAE,CAC1F,CAAC;QAEF,IAAI,CAAC;YACH,sDAAsD;YACtD,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;YAC3C,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAY,cAAc,UAAU,EAAE,CAAC,CAAC;YACpE,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YACzC,CAAC;YAED,kEAAkE;YAClE,IAAI,KAAK,CAAC,GAAG,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC/C,KAAK,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAClC,CAAC;YACD,IAAI,KAAK,CAAC,GAAG,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC/C,KAAK,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAClC,CAAC;YAED,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACzC,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;YAEhE,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;gBACzE,OAAO,CAAC,GAAG,CACT,UAAU,MAAM,CAAC,MAAM,CAAC,MAAM,oBAAoB,WAAW,iBAAiB,UAAU,EAAE,CAC3F,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,UAAU,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;YAEzD,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBACtB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,QAAQ,CACtC,IAAI,CAAC,SAAS,EACd,WAAW,GAAG,CAAC,EACf,IAAI,EACJ,SAAS,EACT,UAAU,EACV,WAAW,CAAC,uCAAuC;iBACpD,CAAC;gBACF,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CACT,mBAAmB,IAAI,yBAAyB,WAAW,yBAAyB,UAAU,EAAE,CACjG,CAAC;gBACF,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;oBACpB,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,UAAU,EAAE,CAAC,CAAC;gBAC/C,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CACX,uBAAuB,WAAW,iBAAiB,UAAU,GAAG,EAChE,KAAK,CACN,CAAC;YAEF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,MAAqB,EACrB,UAAkB,EAClB,WAAoB;QAEpB,kCAAkC;QAClC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAS,YAAY,CAAC,CAAC;QAEvD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC;gBACH,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;oBACjC,kCAAkC;oBAClC,SAAS;gBACX,CAAC;gBAED,gDAAgD;gBAChD,IAAI,cAAc,GAA2B,EAAE,CAAC;gBAEhD,6EAA6E;gBAC7E,IAAI,aAAa,GAA2B,SAAS,CAAC;gBACtD,IAAI,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC;oBAC3B,aAAa,GAAG;wBACd,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK;wBAC5B,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW;qBAClC,CAAC;gBACJ,CAAC;gBAED,qCAAqC;gBACrC,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClD,iEAAiE;oBACjE,cAAc,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CACrC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,QAAQ,CACpC,CAAC;gBACJ,CAAC;gBAED,0DAA0D;gBAC1D,IAAI,KAAK,CAAC,gBAAgB,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;oBACtD,MAAM,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;gBACnE,CAAC;qBAAM,CAAC;oBACN,oCAAoC;oBACpC,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;oBAE7D,uEAAuE;oBACvE,IAAI,IAAI,GAA4C,IAAI,CAAC;oBACzD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC9B,MAAM,UAAU,GAAe,EAAE,CAAC;wBAClC,MAAM,QAAQ,GAAe,EAAE,CAAC;wBAChC,MAAM,aAAa,GAAe,EAAE,CAAC;wBAErC,+DAA+D;wBAC/D,cAAc,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;4BAClC,MAAM,QAAQ,GAAa;gCACzB,KAAK,EAAE,QAAQ,CAAC,KAAM;gCACtB,IAAI,EAAE,QAAQ,CAAC,WAAW;6BAC3B,CAAC;4BAEF,IAAI,QAAQ,CAAC,cAAc,KAAK,UAAU,EAAE,CAAC;gCAC3C,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;4BAC5B,CAAC;iCAAM,IAAI,QAAQ,CAAC,cAAc,KAAK,UAAU,EAAE,CAAC;gCAClD,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;4BAC1B,CAAC;iCAAM,IACL,QAAQ,CAAC,cAAc,KAAK,WAAW;gCACvC,QAAQ,CAAC,cAAc,KAAK,aAAa,EACzC,CAAC;gCACD,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;4BAC/B,CAAC;wBACH,CAAC,CAAC,CAAC;wBAEH,wCAAwC;wBACxC,IACE,UAAU,CAAC,MAAM,GAAG,CAAC;4BACrB,QAAQ,CAAC,MAAM,GAAG,CAAC;4BACnB,aAAa,CAAC,MAAM,GAAG,CAAC,EACxB,CAAC;4BACD,IAAI,GAAG,EAAE,CAAC;4BACV,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;gCAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC;4BACzD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;gCAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC;4BACnD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC;gCAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,aAAa,CAAC;wBACpE,CAAC;oBACH,CAAC;oBAED,6DAA6D;oBAC7D,MAAM,KAAK,GAAmB,EAAE,CAAC;oBACjC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;oBAEnC,4DAA4D;oBAC5D,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;oBAC1D,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE,CAAC;wBACrC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;4BAC5B,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;4BACvB,KAAK,CAAC,IAAI,CAAC;gCACT,IAAI,EAAE,gBAAgB,CAAC,YAAY;gCACnC,GAAG,EAAE,IAAI,CAAC,GAAG;gCACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;6BACxB,CAAC,CAAC;wBACL,CAAC;oBACH,CAAC;oBAED,6DAA6D;oBAC7D,IAAI,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;wBAC1D,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;wBAChC,KAAK,CAAC,IAAI,CAAC;4BACT,IAAI,EAAE,gBAAgB,CAAC,YAAY;4BACnC,GAAG,EAAE,KAAK,CAAC,WAAW;4BACtB,QAAQ,EAAE,oBAAoB,CAAC,UAAU;yBAC1C,CAAC,CAAC;oBACL,CAAC;oBAED,oBAAoB;oBACpB,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;wBACnB,KAAK,CAAC,IAAI,CAAC;4BACT,IAAI,EAAE,gBAAgB,CAAC,QAAQ;4BAC/B,KAAK,EAAE,kBAAkB;4BACzB,GAAG,EAAE,KAAK,CAAC,QAAQ;yBACpB,CAAC,CAAC;oBACL,CAAC;oBAED,8BAA8B;oBAC9B,MAAM,WAAW,GACf,YAAY,CAAC,IAAI,EAAE,WAAW,IAAI,KAAK,CAAC,WAAW,CAAC;oBACtD,MAAM,cAAc,GAAG,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;oBACpE,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;oBAClC,MAAM,eAAe,GAAG,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;oBAE5E,6BAA6B;oBAC7B,MAAM,UAAU,GAAG,QAAQ,UAAU,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;oBACpD,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,GAAG,CAAc,UAAU,CAAC,CAAC;oBAEhE,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,GAAG,CAAW,sBAAsB,CAAC,CAAC;oBACvE,IAAI,CAAC,aAAa,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;wBACzC,SAAS;oBACX,CAAC;oBAED,IAAI,CAAC,eAAe,EAAE,CAAC;wBACrB,+CAA+C;wBAC/C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACnC,MAAM,iBAAiB,GAAG,CAAC,cAAc,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;wBAErF,4CAA4C;wBAC5C,MAAM,KAAK,GAAc,EAAE,CAAC;wBAC5B,IAAI,cAAc,IAAI,QAAQ,EAAE,CAAC;4BAC/B,KAAK,CAAC,IAAI,CAAC;gCACT,EAAE,EAAE,iBAAkB;gCACtB,QAAQ,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE;gCAC5B,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;gCAC5C,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;gCAC9B,WAAW,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;6BACzD,CAAC,CAAC;wBACL,CAAC;wBAED,MAAM,QAAQ,GAAyB;4BACrC,EAAE,EAAE,UAAU;4BACd,IAAI,EAAE,YAAY,CAAC,IAAI;4BACvB,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,IAAI;4BACjC,GAAG,EAAE,YAAY,CAAC,GAAG,IAAI,IAAI;4BAC7B,eAAe,EAAE,YAAY,CAAC,eAAe,IAAI,IAAI;4BACrD,eAAe,EAAE,YAAY,CAAC,eAAe,IAAI,IAAI;4BACrD,MAAM,EAAE,IAAI;4BACZ,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,EAAE;4BAC/B,MAAM,EAAE,aAAa;4BACrB,cAAc,EAAE,YAAY,CAAC,cAAc,IAAI,IAAI;4BACnD,iBAAiB,EAAE,YAAY,CAAC,iBAAiB,IAAI,IAAI;4BACzD,eAAe,EAAE,YAAY,CAAC,eAAe,IAAI,IAAI;4BACrD,UAAU,EAAE,IAAI;4BAChB,UAAU,EAAE,IAAI;4BAChB,IAAI,EAAE,YAAY,CAAC,IAAI,IAAI,IAAI;4BAC/B,IAAI,EAAE,IAAI,IAAI,SAAS;4BACvB,KAAK;4BACL,MAAM,EAAE,CAAC,WAAW,EAAE,uDAAuD;yBAC9E,CAAC;wBAEF,gBAAgB;wBAChB,MAAM,OAAO,GAAgB;4BAC3B,UAAU,EAAE,KAAK,CAAC,EAAE;4BACpB,UAAU;4BACV,iBAAiB;4BACjB,eAAe;4BACf,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;yBACvC,CAAC;wBACF,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;wBAEpC,oBAAoB;wBACpB,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;oBAC1D,CAAC;yBAAM,CAAC;wBACN,iDAAiD;wBACjD,MAAM,MAAM,GAAmB,EAAE,EAAE,EAAE,eAAe,CAAC,UAAU,EAAE,CAAC;wBAClE,IAAI,UAAU,GAAG,KAAK,CAAC;wBACvB,MAAM,QAAQ,GAAc,EAAE,CAAC;wBAE/B,mCAAmC;wBACnC,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;4BACrC,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC;4BACxC,UAAU,GAAG,IAAI,CAAC;wBACpB,CAAC;wBACD,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;4BACrC,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,IAAI,IAAI,CAAC;4BAC1C,UAAU,GAAG,IAAI,CAAC;wBACpB,CAAC;wBACD,IAAI,YAAY,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;4BACnC,MAAM,CAAC,GAAG,GAAG,YAAY,CAAC,GAAG,IAAI,IAAI,CAAC;4BACtC,UAAU,GAAG,IAAI,CAAC;wBACpB,CAAC;wBACD,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;4BACpC,MAAM,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,IAAI,IAAI,CAAC;4BACxC,UAAU,GAAG,IAAI,CAAC;wBACpB,CAAC;wBAED,gCAAgC;wBAChC,IAAI,eAAe,KAAK,eAAe,CAAC,eAAe,EAAE,CAAC;4BACxD,MAAM,oBAAoB,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;4BAC7C,QAAQ,CAAC,IAAI,CAAC;gCACZ,EAAE,EAAE,oBAAoB;gCACxB,QAAQ,EAAE,EAAE,EAAE,EAAE,eAAe,CAAC,UAAU,EAAE;gCAC5C,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;gCAC5C,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;gCAC9B,WAAW,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;6BACzD,CAAC,CAAC;4BAEH,2CAA2C;4BAC3C,eAAe,CAAC,iBAAiB,GAAG,oBAAoB,CAAC;4BACzD,eAAe,CAAC,eAAe,GAAG,eAAe,CAAC;wBACpD,CAAC;wBAED,mCAAmC;wBACnC,IAAI,UAAU,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACtC,MAAM,UAAU,GAAe;gCAC7B,UAAU,EAAE,eAAe,CAAC,UAAU;gCACtC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;gCACvC,KAAK,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;6BAClD,CAAC;4BAEF,2BAA2B;4BAC3B,eAAe,CAAC,YAAY,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;4BACxD,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;4BAE5C,cAAc;4BACd,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;wBAC5D,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,2BAA2B,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;gBAC7D,mCAAmC;YACrC,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,KAAkB,EAClB,UAAkB,EAClB,WAAoB;QAEpB,sDAAsD;QACtD,wEAAwE;QACxE,MAAM,iBAAiB,GACrB,KAAK,CAAC,iBAAiB,EAAE,QAAQ,IAAI,KAAK,CAAC,iBAAiB,EAAE,IAAI,CAAC;QACrE,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,OAAO,CAAC,IAAI,CAAC,yCAAyC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YAClE,OAAO;QACT,CAAC;QAED,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAE7D,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,GAAG,CAAW,sBAAsB,CAAC,CAAC;QACvE,IAAI,CAAC,aAAa,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;YACzC,OAAO;QACT,CAAC;QAED,6DAA6D;QAC7D,MAAM,KAAK,GAAmB,EAAE,CAAC;QACjC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;QAEnC,4DAA4D;QAC5D,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;QAC1D,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5B,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACvB,KAAK,CAAC,IAAI,CAAC;oBACT,IAAI,EAAE,gBAAgB,CAAC,YAAY;oBACnC,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;iBACxB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,6DAA6D;QAC7D,IAAI,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;YAC1D,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAChC,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,gBAAgB,CAAC,YAAY;gBACnC,GAAG,EAAE,KAAK,CAAC,WAAW;gBACtB,QAAQ,EAAE,oBAAoB,CAAC,UAAU;aAC1C,CAAC,CAAC;QACL,CAAC;QAED,oBAAoB;QACpB,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,gBAAgB,CAAC,QAAQ;gBAC/B,KAAK,EAAE,kBAAkB;gBACzB,GAAG,EAAE,KAAK,CAAC,QAAQ;aACpB,CAAC,CAAC;QACL,CAAC;QAED,8BAA8B;QAC9B,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,EAAE,WAAW,IAAI,KAAK,CAAC,WAAW,CAAC;QACxE,MAAM,cAAc,GAAG,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;QACpE,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAClC,MAAM,eAAe,GAAG,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAE5E,6BAA6B;QAC7B,MAAM,UAAU,GAAG,QAAQ,UAAU,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;QACpD,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,GAAG,CAAc,UAAU,CAAC,CAAC;QAEhE,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,mDAAmD;YACnD,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnC,MAAM,iBAAiB,GAAG,CAAC,cAAc,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YAErF,4CAA4C;YAC5C,MAAM,KAAK,GAAc,EAAE,CAAC;YAC5B,IAAI,cAAc,IAAI,QAAQ,EAAE,CAAC;gBAC/B,KAAK,CAAC,IAAI,CAAC;oBACT,EAAE,EAAE,iBAAkB;oBACtB,QAAQ,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE;oBAC5B,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;oBAC5C,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;oBAC9B,WAAW,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;iBACzD,CAAC,CAAC;YACL,CAAC;YAED,MAAM,QAAQ,GAAyB;gBACrC,EAAE,EAAE,UAAU;gBACd,IAAI,EAAE,YAAY,CAAC,IAAI;gBACvB,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,IAAI;gBACjC,GAAG,EAAE,YAAY,CAAC,GAAG,IAAI,IAAI;gBAC7B,eAAe,EAAE,YAAY,CAAC,eAAe,IAAI,IAAI;gBACrD,eAAe,EAAE,YAAY,CAAC,eAAe,IAAI,IAAI;gBACrD,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,EAAE;gBAC/B,cAAc,EAAE,IAAI;gBACpB,iBAAiB,EAAE,IAAI;gBACvB,eAAe,EAAE,IAAI;gBACrB,UAAU,EAAE,IAAI,EAAE,qCAAqC;gBACvD,UAAU,EAAE,IAAI,IAAI,CAAC,iBAAiB,CAAC;gBACvC,IAAI,EAAE,YAAY,CAAC,IAAI,IAAI,IAAI;gBAC/B,KAAK;gBACL,MAAM,EAAE,CAAC,WAAW,EAAE,uDAAuD;aAC9E,CAAC;YAEF,gBAAgB;YAChB,MAAM,OAAO,GAAgB;gBAC3B,UAAU,EAAE,KAAK,CAAC,EAAE;gBACpB,UAAU;gBACV,iBAAiB;gBACjB,eAAe;gBACf,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACvC,CAAC;YACF,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAEpC,oBAAoB;YACpB,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,qDAAqD;YACrD,MAAM,MAAM,GAAmB,EAAE,EAAE,EAAE,eAAe,CAAC,UAAU,EAAE,CAAC;YAClE,IAAI,UAAU,GAAG,KAAK,CAAC;YACvB,MAAM,QAAQ,GAAc,EAAE,CAAC;YAE/B,mCAAmC;YACnC,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBACrC,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC;gBACxC,UAAU,GAAG,IAAI,CAAC;YACpB,CAAC;YACD,IAAI,YAAY,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBACrC,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,IAAI,IAAI,CAAC;gBAC1C,UAAU,GAAG,IAAI,CAAC;YACpB,CAAC;YACD,IAAI,YAAY,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;gBACnC,MAAM,CAAC,GAAG,GAAG,YAAY,CAAC,GAAG,IAAI,IAAI,CAAC;gBACtC,UAAU,GAAG,IAAI,CAAC;YACpB,CAAC;YACD,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACpC,MAAM,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,IAAI,IAAI,CAAC;gBACxC,UAAU,GAAG,IAAI,CAAC;YACpB,CAAC;YAED,gCAAgC;YAChC,IAAI,eAAe,KAAK,eAAe,CAAC,eAAe,EAAE,CAAC;gBACxD,MAAM,oBAAoB,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC7C,QAAQ,CAAC,IAAI,CAAC;oBACZ,EAAE,EAAE,oBAAoB;oBACxB,QAAQ,EAAE,EAAE,EAAE,EAAE,eAAe,CAAC,UAAU,EAAE;oBAC5C,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;oBAC5C,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;oBAC9B,WAAW,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;iBACzD,CAAC,CAAC;gBAEH,2CAA2C;gBAC3C,eAAe,CAAC,iBAAiB,GAAG,oBAAoB,CAAC;gBACzD,eAAe,CAAC,eAAe,GAAG,eAAe,CAAC;YACpD,CAAC;YAED,mCAAmC;YACnC,IAAI,UAAU,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtC,MAAM,UAAU,GAAe;oBAC7B,UAAU,EAAE,eAAe,CAAC,UAAU;oBACtC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;oBACvC,KAAK,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;iBAClD,CAAC;gBAEF,2BAA2B;gBAC3B,eAAe,CAAC,YAAY,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBACxD,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;gBAE5C,cAAc;gBACd,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,OAAuB,EACvB,UAAkB,EAClB,SAAiB;QAEjB,OAAO,CAAC,GAAG,CAAC,wCAAwC,EAAE;YACpD,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,UAAU;SACX,CAAC,CAAC;QAEH,gCAAgC;QAChC,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;QACvD,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAE7D,IAAI,CAAC,SAAS,IAAI,CAAC,YAAY,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAM,kBAAkB,UAAU,EAAE,CAAC,CAAC;QAEtE,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAClD,OAAO,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;YACxD,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,YAAY,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEpC,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YACvC,OAAO;QACT,CAAC;QAED,2BAA2B;QAC3B,MAAM,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACzD,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAChC,UAAkB,EAClB,SAAiB;QAEjB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAM,kBAAkB,UAAU,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;YAC9C,OAAO;QACT,CAAC;QAED,MAAM,gBAAgB,GAAc;YAClC,UAAU,EAAE,SAAS,CAAC,UAAU;YAChC,KAAK,EACH,CAAC,MAAM,IAAI,CAAC,GAAG,CAAS,mBAAmB,UAAU,EAAE,CAAC,CAAC,IAAI,SAAS;SACzE,CAAC;QAEF,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,UAAU,EAAE,EAAE,gBAAgB,CAAC,CAAC;QAC7D,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,QAAQ,CACtC,IAAI,CAAC,SAAS,EACd,CAAC,EACD,aAAa,EACb,SAAS,EACT,UAAU,EACV,KAAK,CAAC,8CAA8C;SACrD,CAAC;QACF,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,UAAyB,EACzB,SAAiB,EACjB,QAAkB;QAElB,wDAAwD;QACxD,MAAM,IAAI,CAAC,GAAG,CAAC,iBAAiB,SAAS,EAAE,EAAE,UAAU,CAAC,CAAC;QAEzD,oDAAoD;QACpD,yDAAyD;QACzD,IAAI,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;YAC/C,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;YACzD,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,yCAAyC;YACzC,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;QACzD,CAAC;QAED,MAAM,iBAAiB,GAAiB;YACtC,SAAS;SACV,CAAC;QAEF,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;QAE5C,8BAA8B;QAC9B,MAAM,IAAI,CAAC,KAAK,CAAC,uBAAuB,SAAS,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,QAAkB,EAClB,OAKC;QAED,+BAA+B;QAC/B,IACE,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM;YACtB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,EACpD,CAAC;YACD,OAAO;QACT,CAAC;QAED,6BAA6B;QAC7B,MAAM,aAAa,GACjB,GAAG,CAAC,MAAM,IAAI,OAAO,CAAC,SAAS,IAAI,GAAG,CAAC,MAAM,IAAI,OAAO,CAAC,WAAW,CAAC;QACvE,MAAM,WAAW,GACf,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,SAAS,IAAI,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,WAAW,CAAC;QACnE,MAAM,gBAAgB,GACpB,GAAG,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS;YAClC,GAAG,CAAC,SAAS,IAAI,OAAO,CAAC,WAAW,CAAC;QAEvC,IAAI,CAAC,aAAa,IAAI,CAAC,WAAW,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxD,OAAO,CAAC,8BAA8B;QACxC,CAAC;QAED,kDAAkD;QAClD,MAAM,SAAS,GACb,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QACtE,MAAM,OAAO,GACX,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAClE,MAAM,YAAY,GAChB,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAE5E,IAAI,SAAgE,CAAC;QAErE,wEAAwE;QACxE,IAAI,SAAS,IAAI,CAAC,OAAO,IAAI,YAAY,CAAC,EAAE,CAAC;YAC3C,yDAAyD;YACzD,IAAI,GAAG,CAAC,MAAM,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBACpC,SAAS,GAAG,UAAU,CAAC;YACzB,CAAC;iBAAM,IAAI,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBACzC,SAAS,GAAG,UAAU,CAAC;YACzB,CAAC;iBAAM,IAAI,GAAG,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBAC9C,SAAS,GAAG,WAAW,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,gDAAgD;gBAChD,OAAO;YACT,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,IAAI,YAAY,EAAE,CAAC;YACnC,+CAA+C;YAC/C,IAAI,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBAClC,SAAS,GAAG,UAAU,CAAC;YACzB,CAAC;iBAAM,IAAI,GAAG,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBAC9C,SAAS,GAAG,WAAW,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,OAAO;YACT,CAAC;QACH,CAAC;aAAM,IAAI,SAAS,EAAE,CAAC;YACrB,SAAS,GAAG,UAAU,CAAC;QACzB,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YACnB,SAAS,GAAG,UAAU,CAAC;QACzB,CAAC;aAAM,IAAI,YAAY,EAAE,CAAC;YACxB,SAAS,GAAG,WAAW,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,8CAA8C;YAC9C,SAAS,GAAG,aAAa,CAAC;QAC5B,CAAC;QAED,sCAAsC;QACtC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACjC,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;QAE5C,IAAI,CAAC,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;YAC5B,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;YAClE,OAAO;QACT,CAAC;QAED,uCAAuC;QACvC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAS,cAAc,UAAU,EAAE,CAAC,CAAC;QAErE,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,kCAAkC,EAAE,UAAU,CAAC,CAAC;YAC7D,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;YACtE,OAAO,CAAC,GAAG,CAAC,0BAA0B,OAAO,OAAO,SAAS,EAAE,CAAC,CAAC;QACnE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,mCAAmC,OAAO,GAAG,EAAE,KAAK,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,SAAiB,EACjB,UAAkB,EAClB,OAAe,EACf,MAA6D;QAE7D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAEzC,uDAAuD;QACvD,MAAM,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAC3B,KAAK,EACL,oDAAoD,UAAU,WAAW,OAAO,EAAE,CACnF,CAAuB,CAAC;QAEzB,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,SAAS,OAAO,YAAY,CAAC,CAAC;QAChD,CAAC;QAED,kDAAkD;QAClD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAS,YAAY,CAAC,CAAC;QAEvD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC1C,CAAC;QAED,6CAA6C;QAC7C,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QACxC,MAAM,iBAAiB,GAAG,SAAS,CAAC,SAAS,CAC3C,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,CAAC,IAAI,KAAK,IAAI;YACjB,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE,CACvD,CAAC;QAEF,IAAI,iBAAiB,KAAK,CAAC,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;YACtD,OAAO;QACT,CAAC;QAED,0DAA0D;QAC1D,IAAI,SAAS,CAAC,iBAAiB,CAAC,CAAC,cAAc,KAAK,MAAM,EAAE,CAAC;YAC3D,OAAO,CAAC,GAAG,CAAC,uBAAuB,MAAM,mBAAmB,CAAC,CAAC;YAC9D,OAAO;QACT,CAAC;QAED,wCAAwC;QACxC,SAAS,CAAC,iBAAiB,CAAC,CAAC,cAAc,GAAG,MAAM,CAAC;QAErD,+CAA+C;QAC/C,MAAM,GAAG,CAAC,IAAI,CACZ,OAAO,EACP,oDAAoD,UAAU,WAAW,OAAO,EAAE,EAClF,SAAS,EACT,EAAE,SAAS,EAAE,CACd,CAAC;IACJ,CAAC;;AAv8Be,qBAAM,GAAG;IACvB,gEAAgE;IAChE,iDAAiD;CAClD,CAAC;AAu8BJ,eAAe,cAAc,CAAC"}
package/package.json CHANGED
@@ -4,12 +4,13 @@
4
4
  "description": "Sync with Google Calendar",
5
5
  "author": "Plot <team@plot.day> (https://plot.day)",
6
6
  "license": "MIT",
7
- "version": "0.4.0",
7
+ "version": "0.8.0",
8
8
  "type": "module",
9
9
  "main": "./dist/index.js",
10
10
  "types": "./dist/index.d.ts",
11
11
  "exports": {
12
12
  ".": {
13
+ "@plotday/source": "./src/index.ts",
13
14
  "types": "./dist/index.d.ts",
14
15
  "default": "./dist/index.js"
15
16
  }
@@ -20,7 +21,8 @@
20
21
  "LICENSE"
21
22
  ],
22
23
  "dependencies": {
23
- "@plotday/twister": "^0.22.0"
24
+ "@plotday/tool-google-contacts": "^0.4.3",
25
+ "@plotday/twister": "^0.27.0"
24
26
  },
25
27
  "devDependencies": {
26
28
  "typescript": "^5.9.3"