@checkfirst/nestjs-outlook 7.0.1 → 7.0.3

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.
@@ -45,13 +45,8 @@ export interface ExpansionWindow {
45
45
  startDate: Date;
46
46
  endDate: Date;
47
47
  }
48
- export interface ExpandRecurringSeriesOptions {
49
- existingExternalIds?: string[];
50
- existingWindowEnd?: Date;
51
- }
52
48
  export interface RecurringEventExpansionResult {
53
49
  seriesMaster: ProcessedOutlookEvent;
54
50
  instances: ProcessedOutlookEvent[];
55
51
  expansionWindow: ExpansionWindow;
56
- staleExternalIds: string[];
57
52
  }
@@ -1,14 +1,13 @@
1
1
  import { Event } from '../../types';
2
2
  import { CalendarService } from './calendar.service';
3
- import { RecurrenceRule, ProcessedOutlookEvent, ExpansionWindow, ExpandRecurringSeriesOptions, RecurringEventExpansionResult } from '../../interfaces/recurrence.interfaces';
3
+ import { RecurrenceRule, ProcessedOutlookEvent, ExpansionWindow, RecurringEventExpansionResult } from '../../interfaces/recurrence.interfaces';
4
4
  export declare class RecurrenceService {
5
5
  private readonly calendarService;
6
6
  private readonly logger;
7
7
  constructor(calendarService: CalendarService);
8
8
  processEvent(event: Event): ProcessedOutlookEvent;
9
- expandRecurringSeries(seriesMasterId: string, externalUserId: string, options?: ExpandRecurringSeriesOptions): Promise<RecurringEventExpansionResult>;
10
- calculateExpansionWindow(recurrenceRule?: RecurrenceRule, existingWindowEnd?: Date): ExpansionWindow;
11
- detectStaleOccurrences(fetchedExternalIds: string[], existingExternalIds: string[]): string[];
9
+ expandRecurringSeries(seriesMasterId: string, externalUserId: string): Promise<RecurringEventExpansionResult>;
10
+ calculateExpansionWindow(recurrenceRule?: RecurrenceRule): ExpansionWindow;
12
11
  isSeriesMaster(event: Event): boolean;
13
12
  private extractRecurrenceRule;
14
13
  }
@@ -58,7 +58,7 @@ let RecurrenceService = RecurrenceService_1 = class RecurrenceService {
58
58
  }
59
59
  return processed;
60
60
  }
61
- async expandRecurringSeries(seriesMasterId, externalUserId, options) {
61
+ async expandRecurringSeries(seriesMasterId, externalUserId) {
62
62
  var _a, e_1, _b, _c;
63
63
  this.logger.log(`[expandRecurringSeries] Expanding series ${seriesMasterId} for user ${externalUserId}`);
64
64
  const masterEvents = await this.calendarService.getEventsBatch([seriesMasterId], externalUserId);
@@ -66,7 +66,7 @@ let RecurrenceService = RecurrenceService_1 = class RecurrenceService {
66
66
  throw new Error(`Series master ${seriesMasterId} not found in Outlook for user ${externalUserId}`);
67
67
  }
68
68
  const seriesMaster = this.processEvent(masterEvents[0]);
69
- const expansionWindow = this.calculateExpansionWindow(seriesMaster.recurrenceRule, options === null || options === void 0 ? void 0 : options.existingWindowEnd);
69
+ const expansionWindow = this.calculateExpansionWindow(seriesMaster.recurrenceRule);
70
70
  this.logger.log(`[expandRecurringSeries] Window: ${expansionWindow.startDate.toISOString()} → ${expansionWindow.endDate.toISOString()}`);
71
71
  const instances = [];
72
72
  try {
@@ -91,45 +91,29 @@ let RecurrenceService = RecurrenceService_1 = class RecurrenceService {
91
91
  finally { if (e_1) throw e_1.error; }
92
92
  }
93
93
  this.logger.log(`[expandRecurringSeries] Fetched ${instances.length} instances for series ${seriesMasterId}`);
94
- const staleExternalIds = (options === null || options === void 0 ? void 0 : options.existingExternalIds)
95
- ? this.detectStaleOccurrences(instances.map((i) => i.externalId), options.existingExternalIds)
96
- : [];
97
- if (staleExternalIds.length > 0) {
98
- this.logger.log(`[expandRecurringSeries] Detected ${staleExternalIds.length} stale occurrences`);
99
- }
100
94
  return {
101
95
  seriesMaster,
102
96
  instances,
103
97
  expansionWindow,
104
- staleExternalIds,
105
98
  };
106
99
  }
107
- calculateExpansionWindow(recurrenceRule, existingWindowEnd) {
100
+ calculateExpansionWindow(recurrenceRule) {
108
101
  const now = new Date();
109
102
  const startDate = new Date(now);
110
- startDate.setMonth(startDate.getMonth() - 1);
103
+ startDate.setMonth(startDate.getMonth());
111
104
  let endDate;
105
+ endDate = new Date(startDate);
106
+ endDate.setFullYear(endDate.getFullYear() + 5);
107
+ endDate.setDate(endDate.getDate() - 2);
112
108
  if ((recurrenceRule === null || recurrenceRule === void 0 ? void 0 : recurrenceRule.range.type) === 'endDate' &&
113
109
  recurrenceRule.range.endDate) {
114
110
  const seriesEnd = new Date(recurrenceRule.range.endDate);
115
- const maxEnd = new Date(now);
116
- maxEnd.setFullYear(maxEnd.getFullYear() + 5);
117
- endDate = seriesEnd < maxEnd ? seriesEnd : maxEnd;
118
- }
119
- else if (existingWindowEnd) {
120
- endDate = new Date(existingWindowEnd);
121
- endDate.setMonth(endDate.getMonth() + 6);
122
- }
123
- else {
124
- endDate = new Date(now);
125
- endDate.setMonth(endDate.getMonth() + 6);
111
+ if (seriesEnd < endDate) {
112
+ endDate = seriesEnd;
113
+ }
126
114
  }
127
115
  return { startDate, endDate };
128
116
  }
129
- detectStaleOccurrences(fetchedExternalIds, existingExternalIds) {
130
- const fetchedSet = new Set(fetchedExternalIds);
131
- return existingExternalIds.filter((id) => !fetchedSet.has(id));
132
- }
133
117
  isSeriesMaster(event) {
134
118
  return event.type === 'seriesMaster' || event.recurrence != null;
135
119
  }
@@ -1 +1 @@
1
- {"version":3,"file":"recurrence.service.js","sourceRoot":"","sources":["../../../src/services/calendar/recurrence.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recurrence.service.js","sourceRoot":"","sources":["../../../src/services/calendar/recurrence.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,2CAAoD;AAGpD,yDAAqD;AAU9C,IAAM,iBAAiB,yBAAvB,MAAM,iBAAiB;IAG5B,YAA6B,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;QAF5C,WAAM,GAAG,IAAI,eAAM,CAAC,mBAAiB,CAAC,IAAI,CAAC,CAAC;IAEG,CAAC;IAQjE,YAAY,CAAC,KAAY;;QACvB,MAAM,SAAS,GAAqB,MAAA,KAAK,CAAC,IAAI,mCAAI,gBAAgB,CAAC;QAEnE,MAAM,SAAS,GAA0B;YACvC,UAAU,EAAE,MAAA,KAAK,CAAC,EAAE,mCAAI,EAAE;YAC1B,SAAS;YACT,KAAK,EAAE;gBACL,QAAQ,EAAE,MAAA,MAAA,KAAK,CAAC,KAAK,0CAAE,QAAQ,mCAAI,EAAE;gBACrC,QAAQ,EAAE,MAAA,MAAA,KAAK,CAAC,KAAK,0CAAE,QAAQ,mCAAI,EAAE;aACtC;YACD,GAAG,EAAE;gBACH,QAAQ,EAAE,MAAA,MAAA,KAAK,CAAC,GAAG,0CAAE,QAAQ,mCAAI,EAAE;gBACnC,QAAQ,EAAE,MAAA,MAAA,KAAK,CAAC,GAAG,0CAAE,QAAQ,mCAAI,EAAE;aACpC;YACD,OAAO,EAAE,MAAA,KAAK,CAAC,OAAO,mCAAI,EAAE;YAC5B,WAAW,EAAE,MAAA,KAAK,CAAC,WAAW,mCAAI,EAAE;YACpC,QAAQ,EAAE,MAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,WAAW,mCAAI,SAAS;YAClD,MAAM,EAAE,MAAA,KAAK,CAAC,MAAM,mCAAI,SAAS;YACjC,SAAS,EAAE,MAAA,KAAK,CAAC,SAAS,mCAAI,SAAS;YACvC,cAAc,EAAE,MAAA,KAAK,CAAC,cAAc,mCAAI,SAAS;YACjD,aAAa,EAAE,MAAA,KAAK,CAAC,aAAa,mCAAI,SAAS;SAChD,CAAC;QAGF,IAAI,SAAS,KAAK,cAAc,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrD,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC1E,CAAC;QAGD,IAAI,SAAS,KAAK,WAAW,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;YACrD,SAAS,CAAC,aAAa,GAAG;gBACxB,QAAQ,EAAE,KAAK,CAAC,aAAa;gBAC7B,QAAQ,EACN,MAAA,MAAA,KAAK,CAAC,qBAAqB,mCAAI,MAAA,KAAK,CAAC,KAAK,0CAAE,QAAQ,mCAAI,EAAE;aAC7D,CAAC;QACJ,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAUD,KAAK,CAAC,qBAAqB,CACzB,cAAsB,EACtB,cAAsB;;QAEtB,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,4CAA4C,cAAc,aAAa,cAAc,EAAE,CACxF,CAAC;QAGF,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,cAAc,CAC5D,CAAC,cAAc,CAAC,EAChB,cAAc,CACf,CAAC;QAEF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CACb,iBAAiB,cAAc,kCAAkC,cAAc,EAAE,CAClF,CAAC;QACJ,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAGxD,MAAM,eAAe,GAAG,IAAI,CAAC,wBAAwB,CACnD,YAAY,CAAC,cAAc,CAC5B,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,mCAAmC,eAAe,CAAC,SAAS,CAAC,WAAW,EAAE,MAAM,eAAe,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CACxH,CAAC;QAGF,MAAM,SAAS,GAA4B,EAAE,CAAC;;YAE9C,KAA0B,eAAA,KAAA,cAAA,IAAI,CAAC,eAAe,CAAC,0BAA0B,CACvE,cAAc,EACd,cAAc,EACd;gBACE,SAAS,EAAE,eAAe,CAAC,SAAS;gBACpC,OAAO,EAAE,eAAe,CAAC,OAAO;gBAChC,SAAS,EAAE,GAAG;aACf,CACF,CAAA,IAAA,sDAAE,CAAC;gBARsB,cAQzB;gBARyB,WAQzB;gBARU,MAAM,KAAK,KAAA,CAAA;gBASpB,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;oBAC1B,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC3C,CAAC;YACH,CAAC;;;;;;;;;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,mCAAmC,SAAS,CAAC,MAAM,yBAAyB,cAAc,EAAE,CAC7F,CAAC;QAEF,OAAO;YACL,YAAY;YACZ,SAAS;YACT,eAAe;SAChB,CAAC;IACJ,CAAC;IASD,wBAAwB,CACtB,cAA+B;QAE/B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QAEvB,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;QAChC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEzC,IAAI,OAAa,CAAC;QAIlB,OAAO,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9B,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;QAC/C,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QAGvC,IACE,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK,CAAC,IAAI,MAAK,SAAS;YACxC,cAAc,CAAC,KAAK,CAAC,OAAO,EAC5B,CAAC;YACD,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACzD,IAAI,SAAS,GAAG,OAAO,EAAE,CAAC;gBACxB,OAAO,GAAG,SAAS,CAAC;YACtB,CAAC;QACH,CAAC;QAED,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;IAChC,CAAC;IAKD,cAAc,CAAC,KAAY;QACzB,OAAO,KAAK,CAAC,IAAI,KAAK,cAAc,IAAI,KAAK,CAAC,UAAU,IAAI,IAAI,CAAC;IACnE,CAAC;IAKO,qBAAqB,CAC3B,UAA+B;;QAE/B,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;QACnC,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAE/B,OAAO;YACL,OAAO,EAAE;gBACP,IAAI,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,OAAO;gBAC9B,QAAQ,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,mCAAI,CAAC;gBAChC,UAAU,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,mCAAI,SAAS;gBAC5C,UAAU,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,mCAAI,SAAS;gBAC5C,KAAK,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,mCAAI,SAAS;gBAClC,cAAc,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,mCAAI,SAAS;gBACpD,KAAK,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,mCAAI,SAAS;aACnC;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,mCAAI,OAAO;gBAC5B,SAAS,EAAE,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,SAAS,mCAAI,EAAE;gBACjC,OAAO,EAAE,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,mCAAI,SAAS;gBACpC,mBAAmB,EAAE,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,mBAAmB,mCAAI,SAAS;gBAC5D,kBAAkB,EAAE,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,kBAAkB,mCAAI,SAAS;aAC3D;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AA9LY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,mBAAU,GAAE;qCAImC,kCAAe;GAHlD,iBAAiB,CA8L7B"}