@sprucelabs/spruce-calendar-components 19.0.7 → 19.1.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.
@@ -1,6 +1,6 @@
1
1
  import { SpruceSchemas } from '@sprucelabs/heartwood-view-controllers';
2
2
  import { MercuryClient } from '@sprucelabs/mercury-client';
3
- import { CalendarEvent } from '../types/calendar.types';
3
+ import { UpdateEvent } from '../types/calendar.types';
4
4
  export interface RemoteEventStoreOptions {
5
5
  client: MercuryClient;
6
6
  calendarId?: string;
@@ -18,7 +18,7 @@ export default class RemoteEventStore {
18
18
  private busyByEvent;
19
19
  private lastSavedById;
20
20
  constructor(options: RemoteEventStoreOptions);
21
- persist(event: CalendarEvent): Promise<FullEvent>;
21
+ persist(event: UpdateEvent): Promise<FullEvent>;
22
22
  private startQueueForEvent;
23
23
  private getId;
24
24
  private updateEvent;
@@ -7,6 +7,7 @@ export interface Schedule {
7
7
  events: SpruceSchemas.CalendarUtils.v2021_05_19.CalendarEvent[];
8
8
  }
9
9
  export declare type CalendarEvent = SpruceSchemas.HeartwoodViewControllers.v2021_02_11.CalendarEvent;
10
+ export declare type UpdateEvent = SpruceSchemas.Calendar.v2021_05_19.UpdateCalendarEventEmitPayload & CalendarEvent;
10
11
  declare type Person = SpruceSchemas.Spruce.v2020_07_22.Person;
11
12
  export declare type DraftEvent = Pick<CalendarEvent, 'id' | 'startDateTimeMs' | 'style' | 'calendarId' | 'target' | 'timeBlocks' | 'isBusy'>;
12
13
  export declare type CalendarPerson = SpruceSchemas.HeartwoodViewControllers.v2021_02_11.CalendarPerson;
@@ -1,9 +1,10 @@
1
1
  import { SpruceSchemas, ViewControllerOptions, CalendarViewController as CoreCalendarViewController, ClickCalendarViewOptions, DropEventOptions, ClickEventOptions } from '@sprucelabs/heartwood-view-controllers';
2
2
  import RemoteEventStore from '../stores/RemoteEventStore';
3
+ import { UpdateEvent } from '../types/calendar.types';
3
4
  declare type Calendar = SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Calendar;
4
5
  declare type Event = SpruceSchemas.HeartwoodViewControllers.v2021_02_11.CalendarEvent;
5
6
  declare type DraftAddedHandler = (event: Event) => void | Promise<void>;
6
- declare type DraftSavedHandler = (event: Event) => void | Promise<void>;
7
+ declare type EventSwappedHandler = (event: Event) => void | Promise<void>;
7
8
  declare type EventDroppedHandler = (updates: Partial<Event>) => void | Promise<void>;
8
9
  declare type DraftRemovedHandler = () => void | Promise<void>;
9
10
  declare type ClickEventHandler = (options: ClickEventOptions) => void | Promise<void>;
@@ -14,7 +15,7 @@ export interface CalendarViewControllerOptions {
14
15
  remoteEventStore?: RemoteEventStore;
15
16
  onAddDraftEvent: DraftAddedHandler;
16
17
  onRemoveDraftEvent?: DraftRemovedHandler;
17
- onSaveDraftEvent?: DraftSavedHandler;
18
+ onEventSwapped?: EventSwappedHandler;
18
19
  onDropEvent?: EventDroppedHandler;
19
20
  onClickEvent?: ClickEventHandler;
20
21
  onChangeStartDate?: StartDateTimeChangeHandler;
@@ -26,7 +27,7 @@ export default class CalendarViewController extends CoreCalendarViewController {
26
27
  private draftAddedHandler;
27
28
  private sorter;
28
29
  private draftRemovedHandler?;
29
- private draftEventSavedHandler?;
30
+ private eventSwappedHandler?;
30
31
  private dropEventHandler?;
31
32
  private isSwapping;
32
33
  constructor(options: ViewControllerOptions & CalendarViewControllerOptions);
@@ -40,7 +41,7 @@ export default class CalendarViewController extends CoreCalendarViewController {
40
41
  private addDraftEvent;
41
42
  getIsSwappingEvent(): boolean;
42
43
  private swapEvent;
43
- updateEvent(id: string, updates: Partial<Event>): SpruceSchemas.HeartwoodViewControllers.v2021_02_11.CalendarEvent;
44
+ updateEvent(id: string, updates: Partial<UpdateEvent>): SpruceSchemas.HeartwoodViewControllers.v2021_02_11.CalendarEvent;
44
45
  private persist;
45
46
  getPeople(): SpruceSchemas.HeartwoodViewControllers.v2021_02_11.CalendarPerson[];
46
47
  render(): {
@@ -30,11 +30,11 @@ export default class CalendarViewController extends CoreCalendarViewController {
30
30
  } }));
31
31
  this.isSwapping = false;
32
32
  assertOptions(options, ['onAddDraftEvent']);
33
- const { onAddDraftEvent, onRemoveDraftEvent, onSaveDraftEvent: onDraftEventSaved, } = rest;
33
+ const { onAddDraftEvent, onRemoveDraftEvent, onEventSwapped: onDraftEventSaved, } = rest;
34
34
  this.sorter = new PeopleSorter();
35
35
  this.draftAddedHandler = onAddDraftEvent;
36
36
  this.draftRemovedHandler = onRemoveDraftEvent;
37
- this.draftEventSavedHandler = onDraftEventSaved;
37
+ this.eventSwappedHandler = onDraftEventSaved;
38
38
  this.dropEventHandler = onDropEvent;
39
39
  this.remoteEventStore = remoteEventStore;
40
40
  this.model.onClick = this.handleClick.bind(this);
@@ -175,7 +175,7 @@ export default class CalendarViewController extends CoreCalendarViewController {
175
175
  if (draftEventGenerator.isDraftId(id) &&
176
176
  !draftEventGenerator.isDraftId(saved.id)) {
177
177
  yield this.swapEvent(event, saved);
178
- yield ((_b = this.draftEventSavedHandler) === null || _b === void 0 ? void 0 : _b.call(this, saved));
178
+ yield ((_b = this.eventSwappedHandler) === null || _b === void 0 ? void 0 : _b.call(this, saved));
179
179
  }
180
180
  else {
181
181
  _super.updateEvent.call(this, saved.id, { isBusy, error: undefined });
@@ -30,7 +30,7 @@ export default class EventDateTimeToolViewController extends AbstractViewControl
30
30
  CardVc() {
31
31
  return this.Controller('card', {
32
32
  header: {
33
- subtitle: 'Starting when?',
33
+ title: 'Starting when?',
34
34
  },
35
35
  body: {
36
36
  sections: [
@@ -43,7 +43,7 @@ export default class EventRepeatingToolViewController extends AbstractViewContro
43
43
  return this.Controller('card', {
44
44
  id: 'repeatingCard',
45
45
  header: {
46
- subtitle: 'Repeating',
46
+ title: 'Repeating',
47
47
  },
48
48
  body: {
49
49
  isBusy: false,
@@ -1,6 +1,6 @@
1
1
  import { SpruceSchemas } from '@sprucelabs/heartwood-view-controllers';
2
2
  import { MercuryClient } from '@sprucelabs/mercury-client';
3
- import { CalendarEvent } from '../types/calendar.types';
3
+ import { UpdateEvent } from '../types/calendar.types';
4
4
  export interface RemoteEventStoreOptions {
5
5
  client: MercuryClient;
6
6
  calendarId?: string;
@@ -18,7 +18,7 @@ export default class RemoteEventStore {
18
18
  private busyByEvent;
19
19
  private lastSavedById;
20
20
  constructor(options: RemoteEventStoreOptions);
21
- persist(event: CalendarEvent): Promise<FullEvent>;
21
+ persist(event: UpdateEvent): Promise<FullEvent>;
22
22
  private startQueueForEvent;
23
23
  private getId;
24
24
  private updateEvent;
@@ -7,6 +7,7 @@ export interface Schedule {
7
7
  events: SpruceSchemas.CalendarUtils.v2021_05_19.CalendarEvent[];
8
8
  }
9
9
  export declare type CalendarEvent = SpruceSchemas.HeartwoodViewControllers.v2021_02_11.CalendarEvent;
10
+ export declare type UpdateEvent = SpruceSchemas.Calendar.v2021_05_19.UpdateCalendarEventEmitPayload & CalendarEvent;
10
11
  declare type Person = SpruceSchemas.Spruce.v2020_07_22.Person;
11
12
  export declare type DraftEvent = Pick<CalendarEvent, 'id' | 'startDateTimeMs' | 'style' | 'calendarId' | 'target' | 'timeBlocks' | 'isBusy'>;
12
13
  export declare type CalendarPerson = SpruceSchemas.HeartwoodViewControllers.v2021_02_11.CalendarPerson;
@@ -1,9 +1,10 @@
1
1
  import { SpruceSchemas, ViewControllerOptions, CalendarViewController as CoreCalendarViewController, ClickCalendarViewOptions, DropEventOptions, ClickEventOptions } from '@sprucelabs/heartwood-view-controllers';
2
2
  import RemoteEventStore from '../stores/RemoteEventStore';
3
+ import { UpdateEvent } from '../types/calendar.types';
3
4
  declare type Calendar = SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Calendar;
4
5
  declare type Event = SpruceSchemas.HeartwoodViewControllers.v2021_02_11.CalendarEvent;
5
6
  declare type DraftAddedHandler = (event: Event) => void | Promise<void>;
6
- declare type DraftSavedHandler = (event: Event) => void | Promise<void>;
7
+ declare type EventSwappedHandler = (event: Event) => void | Promise<void>;
7
8
  declare type EventDroppedHandler = (updates: Partial<Event>) => void | Promise<void>;
8
9
  declare type DraftRemovedHandler = () => void | Promise<void>;
9
10
  declare type ClickEventHandler = (options: ClickEventOptions) => void | Promise<void>;
@@ -14,7 +15,7 @@ export interface CalendarViewControllerOptions {
14
15
  remoteEventStore?: RemoteEventStore;
15
16
  onAddDraftEvent: DraftAddedHandler;
16
17
  onRemoveDraftEvent?: DraftRemovedHandler;
17
- onSaveDraftEvent?: DraftSavedHandler;
18
+ onEventSwapped?: EventSwappedHandler;
18
19
  onDropEvent?: EventDroppedHandler;
19
20
  onClickEvent?: ClickEventHandler;
20
21
  onChangeStartDate?: StartDateTimeChangeHandler;
@@ -26,7 +27,7 @@ export default class CalendarViewController extends CoreCalendarViewController {
26
27
  private draftAddedHandler;
27
28
  private sorter;
28
29
  private draftRemovedHandler?;
29
- private draftEventSavedHandler?;
30
+ private eventSwappedHandler?;
30
31
  private dropEventHandler?;
31
32
  private isSwapping;
32
33
  constructor(options: ViewControllerOptions & CalendarViewControllerOptions);
@@ -40,7 +41,7 @@ export default class CalendarViewController extends CoreCalendarViewController {
40
41
  private addDraftEvent;
41
42
  getIsSwappingEvent(): boolean;
42
43
  private swapEvent;
43
- updateEvent(id: string, updates: Partial<Event>): SpruceSchemas.HeartwoodViewControllers.v2021_02_11.CalendarEvent;
44
+ updateEvent(id: string, updates: Partial<UpdateEvent>): SpruceSchemas.HeartwoodViewControllers.v2021_02_11.CalendarEvent;
44
45
  private persist;
45
46
  getPeople(): SpruceSchemas.HeartwoodViewControllers.v2021_02_11.CalendarPerson[];
46
47
  render(): {
@@ -26,11 +26,11 @@ class CalendarViewController extends heartwood_view_controllers_1.CalendarViewCo
26
26
  } }));
27
27
  this.isSwapping = false;
28
28
  (0, schema_1.assertOptions)(options, ['onAddDraftEvent']);
29
- const { onAddDraftEvent, onRemoveDraftEvent, onSaveDraftEvent: onDraftEventSaved, } = rest;
29
+ const { onAddDraftEvent, onRemoveDraftEvent, onEventSwapped: onDraftEventSaved, } = rest;
30
30
  this.sorter = new calendar_utils_1.PeopleSorter();
31
31
  this.draftAddedHandler = onAddDraftEvent;
32
32
  this.draftRemovedHandler = onRemoveDraftEvent;
33
- this.draftEventSavedHandler = onDraftEventSaved;
33
+ this.eventSwappedHandler = onDraftEventSaved;
34
34
  this.dropEventHandler = onDropEvent;
35
35
  this.remoteEventStore = remoteEventStore;
36
36
  this.model.onClick = this.handleClick.bind(this);
@@ -154,7 +154,7 @@ class CalendarViewController extends heartwood_view_controllers_1.CalendarViewCo
154
154
  if (draftGenerator_1.default.isDraftId(id) &&
155
155
  !draftGenerator_1.default.isDraftId(saved.id)) {
156
156
  await this.swapEvent(event, saved);
157
- await ((_b = this.draftEventSavedHandler) === null || _b === void 0 ? void 0 : _b.call(this, saved));
157
+ await ((_b = this.eventSwappedHandler) === null || _b === void 0 ? void 0 : _b.call(this, saved));
158
158
  }
159
159
  else {
160
160
  super.updateEvent(saved.id, { isBusy, error: undefined });
@@ -23,7 +23,7 @@ class EventDateTimeToolViewController extends heartwood_view_controllers_1.Abstr
23
23
  CardVc() {
24
24
  return this.Controller('card', {
25
25
  header: {
26
- subtitle: 'Starting when?',
26
+ title: 'Starting when?',
27
27
  },
28
28
  body: {
29
29
  sections: [
@@ -36,7 +36,7 @@ class EventRepeatingToolViewController extends heartwood_view_controllers_1.Abst
36
36
  return this.Controller('card', {
37
37
  id: 'repeatingCard',
38
38
  header: {
39
- subtitle: 'Repeating',
39
+ title: 'Repeating',
40
40
  },
41
41
  body: {
42
42
  isBusy: false,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sprucelabs/spruce-calendar-components",
3
3
  "description": "Calendar components for working with calendars and Sprucebot.",
4
- "version": "19.0.7",
4
+ "version": "19.1.0",
5
5
  "skill": {
6
6
  "namespace": "calendar"
7
7
  },