@sprucelabs/spruce-calendar-components 22.3.20 → 22.4.1

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.
@@ -1033,87 +1033,6 @@ declare module '@sprucelabs/spruce-core-schemas/build/.spruce/schemas/core.schem
1033
1033
  interface CreateCalendarResponsePayloadEntity extends SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.CreateCalendarResponsePayloadSchema> {
1034
1034
  }
1035
1035
  }
1036
- namespace SpruceSchemas.Calendar.v2021_05_19 {
1037
- interface DeleteCalendarEmitTarget {
1038
- 'organizationId': string;
1039
- 'calendarId': string;
1040
- }
1041
- interface DeleteCalendarEmitTargetSchema extends SpruceSchema.Schema {
1042
- id: 'deleteCalendarEmitTarget';
1043
- version: 'v2021_05_19';
1044
- namespace: 'Calendar';
1045
- name: '';
1046
- fields: {
1047
- /** . */
1048
- 'organizationId': {
1049
- type: 'id';
1050
- isRequired: true;
1051
- options: undefined;
1052
- };
1053
- /** . */
1054
- 'calendarId': {
1055
- type: 'id';
1056
- isRequired: true;
1057
- options: undefined;
1058
- };
1059
- };
1060
- }
1061
- interface DeleteCalendarEmitTargetEntity extends SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarEmitTargetSchema> {
1062
- }
1063
- }
1064
- namespace SpruceSchemas.Calendar.v2021_05_19 {
1065
- interface DeleteCalendarEmitTargetAndPayload {
1066
- /** Source. */
1067
- 'source'?: SpruceSchemas.SpruceEventUtils.v2021_09_13.EventSource | undefined | null;
1068
- 'target': SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarEmitTarget;
1069
- }
1070
- interface DeleteCalendarEmitTargetAndPayloadSchema extends SpruceSchema.Schema {
1071
- id: 'deleteCalendarEmitTargetAndPayload';
1072
- version: 'v2021_05_19';
1073
- namespace: 'Calendar';
1074
- name: '';
1075
- fields: {
1076
- /** Source. */
1077
- 'source': {
1078
- label: 'Source';
1079
- type: 'schema';
1080
- options: {
1081
- schema: SpruceSchemas.SpruceEventUtils.v2021_09_13.EventSourceSchema;
1082
- };
1083
- };
1084
- /** . */
1085
- 'target': {
1086
- type: 'schema';
1087
- isRequired: true;
1088
- options: {
1089
- schema: SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarEmitTargetSchema;
1090
- };
1091
- };
1092
- };
1093
- }
1094
- interface DeleteCalendarEmitTargetAndPayloadEntity extends SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarEmitTargetAndPayloadSchema> {
1095
- }
1096
- }
1097
- namespace SpruceSchemas.Calendar.v2021_05_19 {
1098
- interface DeleteCalendarResponsePayload {
1099
- 'totalDeleted'?: number | undefined | null;
1100
- }
1101
- interface DeleteCalendarResponsePayloadSchema extends SpruceSchema.Schema {
1102
- id: 'deleteCalendarResponsePayload';
1103
- version: 'v2021_05_19';
1104
- namespace: 'Calendar';
1105
- name: '';
1106
- fields: {
1107
- /** . */
1108
- 'totalDeleted': {
1109
- type: 'number';
1110
- options: undefined;
1111
- };
1112
- };
1113
- }
1114
- interface DeleteCalendarResponsePayloadEntity extends SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarResponsePayloadSchema> {
1115
- }
1116
- }
1117
1036
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1118
1037
  interface CreateCalendarEventTypeEmitPayload {
1119
1038
  'name': string;
@@ -1623,6 +1542,87 @@ declare module '@sprucelabs/spruce-core-schemas/build/.spruce/schemas/core.schem
1623
1542
  interface CreateCalendarEventTypeResponsePayloadEntity extends SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.CreateCalendarEventTypeResponsePayloadSchema> {
1624
1543
  }
1625
1544
  }
1545
+ namespace SpruceSchemas.Calendar.v2021_05_19 {
1546
+ interface DeleteCalendarEmitTarget {
1547
+ 'organizationId': string;
1548
+ 'calendarId': string;
1549
+ }
1550
+ interface DeleteCalendarEmitTargetSchema extends SpruceSchema.Schema {
1551
+ id: 'deleteCalendarEmitTarget';
1552
+ version: 'v2021_05_19';
1553
+ namespace: 'Calendar';
1554
+ name: '';
1555
+ fields: {
1556
+ /** . */
1557
+ 'organizationId': {
1558
+ type: 'id';
1559
+ isRequired: true;
1560
+ options: undefined;
1561
+ };
1562
+ /** . */
1563
+ 'calendarId': {
1564
+ type: 'id';
1565
+ isRequired: true;
1566
+ options: undefined;
1567
+ };
1568
+ };
1569
+ }
1570
+ interface DeleteCalendarEmitTargetEntity extends SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarEmitTargetSchema> {
1571
+ }
1572
+ }
1573
+ namespace SpruceSchemas.Calendar.v2021_05_19 {
1574
+ interface DeleteCalendarEmitTargetAndPayload {
1575
+ /** Source. */
1576
+ 'source'?: SpruceSchemas.SpruceEventUtils.v2021_09_13.EventSource | undefined | null;
1577
+ 'target': SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarEmitTarget;
1578
+ }
1579
+ interface DeleteCalendarEmitTargetAndPayloadSchema extends SpruceSchema.Schema {
1580
+ id: 'deleteCalendarEmitTargetAndPayload';
1581
+ version: 'v2021_05_19';
1582
+ namespace: 'Calendar';
1583
+ name: '';
1584
+ fields: {
1585
+ /** Source. */
1586
+ 'source': {
1587
+ label: 'Source';
1588
+ type: 'schema';
1589
+ options: {
1590
+ schema: SpruceSchemas.SpruceEventUtils.v2021_09_13.EventSourceSchema;
1591
+ };
1592
+ };
1593
+ /** . */
1594
+ 'target': {
1595
+ type: 'schema';
1596
+ isRequired: true;
1597
+ options: {
1598
+ schema: SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarEmitTargetSchema;
1599
+ };
1600
+ };
1601
+ };
1602
+ }
1603
+ interface DeleteCalendarEmitTargetAndPayloadEntity extends SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarEmitTargetAndPayloadSchema> {
1604
+ }
1605
+ }
1606
+ namespace SpruceSchemas.Calendar.v2021_05_19 {
1607
+ interface DeleteCalendarResponsePayload {
1608
+ 'totalDeleted'?: number | undefined | null;
1609
+ }
1610
+ interface DeleteCalendarResponsePayloadSchema extends SpruceSchema.Schema {
1611
+ id: 'deleteCalendarResponsePayload';
1612
+ version: 'v2021_05_19';
1613
+ namespace: 'Calendar';
1614
+ name: '';
1615
+ fields: {
1616
+ /** . */
1617
+ 'totalDeleted': {
1618
+ type: 'number';
1619
+ options: undefined;
1620
+ };
1621
+ };
1622
+ }
1623
+ interface DeleteCalendarResponsePayloadEntity extends SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarResponsePayloadSchema> {
1624
+ }
1625
+ }
1626
1626
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1627
1627
  interface DidCancelCalendarEventEmitTarget {
1628
1628
  'locationId': string;
@@ -1033,87 +1033,6 @@ declare module '@sprucelabs/spruce-core-schemas/build/.spruce/schemas/core.schem
1033
1033
  interface CreateCalendarResponsePayloadEntity extends SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.CreateCalendarResponsePayloadSchema> {
1034
1034
  }
1035
1035
  }
1036
- namespace SpruceSchemas.Calendar.v2021_05_19 {
1037
- interface DeleteCalendarEmitTarget {
1038
- 'organizationId': string;
1039
- 'calendarId': string;
1040
- }
1041
- interface DeleteCalendarEmitTargetSchema extends SpruceSchema.Schema {
1042
- id: 'deleteCalendarEmitTarget';
1043
- version: 'v2021_05_19';
1044
- namespace: 'Calendar';
1045
- name: '';
1046
- fields: {
1047
- /** . */
1048
- 'organizationId': {
1049
- type: 'id';
1050
- isRequired: true;
1051
- options: undefined;
1052
- };
1053
- /** . */
1054
- 'calendarId': {
1055
- type: 'id';
1056
- isRequired: true;
1057
- options: undefined;
1058
- };
1059
- };
1060
- }
1061
- interface DeleteCalendarEmitTargetEntity extends SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarEmitTargetSchema> {
1062
- }
1063
- }
1064
- namespace SpruceSchemas.Calendar.v2021_05_19 {
1065
- interface DeleteCalendarEmitTargetAndPayload {
1066
- /** Source. */
1067
- 'source'?: SpruceSchemas.SpruceEventUtils.v2021_09_13.EventSource | undefined | null;
1068
- 'target': SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarEmitTarget;
1069
- }
1070
- interface DeleteCalendarEmitTargetAndPayloadSchema extends SpruceSchema.Schema {
1071
- id: 'deleteCalendarEmitTargetAndPayload';
1072
- version: 'v2021_05_19';
1073
- namespace: 'Calendar';
1074
- name: '';
1075
- fields: {
1076
- /** Source. */
1077
- 'source': {
1078
- label: 'Source';
1079
- type: 'schema';
1080
- options: {
1081
- schema: SpruceSchemas.SpruceEventUtils.v2021_09_13.EventSourceSchema;
1082
- };
1083
- };
1084
- /** . */
1085
- 'target': {
1086
- type: 'schema';
1087
- isRequired: true;
1088
- options: {
1089
- schema: SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarEmitTargetSchema;
1090
- };
1091
- };
1092
- };
1093
- }
1094
- interface DeleteCalendarEmitTargetAndPayloadEntity extends SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarEmitTargetAndPayloadSchema> {
1095
- }
1096
- }
1097
- namespace SpruceSchemas.Calendar.v2021_05_19 {
1098
- interface DeleteCalendarResponsePayload {
1099
- 'totalDeleted'?: number | undefined | null;
1100
- }
1101
- interface DeleteCalendarResponsePayloadSchema extends SpruceSchema.Schema {
1102
- id: 'deleteCalendarResponsePayload';
1103
- version: 'v2021_05_19';
1104
- namespace: 'Calendar';
1105
- name: '';
1106
- fields: {
1107
- /** . */
1108
- 'totalDeleted': {
1109
- type: 'number';
1110
- options: undefined;
1111
- };
1112
- };
1113
- }
1114
- interface DeleteCalendarResponsePayloadEntity extends SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarResponsePayloadSchema> {
1115
- }
1116
- }
1117
1036
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1118
1037
  interface CreateCalendarEventTypeEmitPayload {
1119
1038
  'name': string;
@@ -1623,6 +1542,87 @@ declare module '@sprucelabs/spruce-core-schemas/build/.spruce/schemas/core.schem
1623
1542
  interface CreateCalendarEventTypeResponsePayloadEntity extends SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.CreateCalendarEventTypeResponsePayloadSchema> {
1624
1543
  }
1625
1544
  }
1545
+ namespace SpruceSchemas.Calendar.v2021_05_19 {
1546
+ interface DeleteCalendarEmitTarget {
1547
+ 'organizationId': string;
1548
+ 'calendarId': string;
1549
+ }
1550
+ interface DeleteCalendarEmitTargetSchema extends SpruceSchema.Schema {
1551
+ id: 'deleteCalendarEmitTarget';
1552
+ version: 'v2021_05_19';
1553
+ namespace: 'Calendar';
1554
+ name: '';
1555
+ fields: {
1556
+ /** . */
1557
+ 'organizationId': {
1558
+ type: 'id';
1559
+ isRequired: true;
1560
+ options: undefined;
1561
+ };
1562
+ /** . */
1563
+ 'calendarId': {
1564
+ type: 'id';
1565
+ isRequired: true;
1566
+ options: undefined;
1567
+ };
1568
+ };
1569
+ }
1570
+ interface DeleteCalendarEmitTargetEntity extends SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarEmitTargetSchema> {
1571
+ }
1572
+ }
1573
+ namespace SpruceSchemas.Calendar.v2021_05_19 {
1574
+ interface DeleteCalendarEmitTargetAndPayload {
1575
+ /** Source. */
1576
+ 'source'?: SpruceSchemas.SpruceEventUtils.v2021_09_13.EventSource | undefined | null;
1577
+ 'target': SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarEmitTarget;
1578
+ }
1579
+ interface DeleteCalendarEmitTargetAndPayloadSchema extends SpruceSchema.Schema {
1580
+ id: 'deleteCalendarEmitTargetAndPayload';
1581
+ version: 'v2021_05_19';
1582
+ namespace: 'Calendar';
1583
+ name: '';
1584
+ fields: {
1585
+ /** Source. */
1586
+ 'source': {
1587
+ label: 'Source';
1588
+ type: 'schema';
1589
+ options: {
1590
+ schema: SpruceSchemas.SpruceEventUtils.v2021_09_13.EventSourceSchema;
1591
+ };
1592
+ };
1593
+ /** . */
1594
+ 'target': {
1595
+ type: 'schema';
1596
+ isRequired: true;
1597
+ options: {
1598
+ schema: SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarEmitTargetSchema;
1599
+ };
1600
+ };
1601
+ };
1602
+ }
1603
+ interface DeleteCalendarEmitTargetAndPayloadEntity extends SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarEmitTargetAndPayloadSchema> {
1604
+ }
1605
+ }
1606
+ namespace SpruceSchemas.Calendar.v2021_05_19 {
1607
+ interface DeleteCalendarResponsePayload {
1608
+ 'totalDeleted'?: number | undefined | null;
1609
+ }
1610
+ interface DeleteCalendarResponsePayloadSchema extends SpruceSchema.Schema {
1611
+ id: 'deleteCalendarResponsePayload';
1612
+ version: 'v2021_05_19';
1613
+ namespace: 'Calendar';
1614
+ name: '';
1615
+ fields: {
1616
+ /** . */
1617
+ 'totalDeleted': {
1618
+ type: 'number';
1619
+ options: undefined;
1620
+ };
1621
+ };
1622
+ }
1623
+ interface DeleteCalendarResponsePayloadEntity extends SchemaEntity<SpruceSchemas.Calendar.v2021_05_19.DeleteCalendarResponsePayloadSchema> {
1624
+ }
1625
+ }
1626
1626
  namespace SpruceSchemas.Calendar.v2021_05_19 {
1627
1627
  interface DidCancelCalendarEventEmitTarget {
1628
1628
  'locationId': string;
@@ -11,7 +11,7 @@ export default abstract class AbstractCalendarEventToolBeltState implements Tool
11
11
  private toolBeltVc;
12
12
  private vcs;
13
13
  private pendingContextUpdates;
14
- private controlsVc;
14
+ protected controlsVc: EventControlsCardViewController;
15
15
  private isLoaded;
16
16
  private events;
17
17
  load(sm: CalendarToolBeltStateMachine): Promise<void>;
@@ -11,14 +11,19 @@ export default class EventControlsCardViewController extends AbstractViewControl
11
11
  private cardVc;
12
12
  private saveHandler;
13
13
  private cancelHandler;
14
- private getHasPendingContextChangesHandler;
14
+ private getHasPendingContextChanges;
15
15
  private getContext;
16
16
  private cancelEventHandler;
17
+ private isEnableLocked;
17
18
  constructor(options: ViewControllerOptions & EventControlsCardOptions);
18
19
  private CardVc;
19
20
  private handleClickCancel;
20
21
  private handleClickSave;
22
+ lockEnabled(): void;
23
+ unlockEnabled(): void;
24
+ getIsEnableLocked(): boolean;
21
25
  handleUpdateContext(): void;
26
+ private shouldFooterBeEnabled;
22
27
  private optionallyDropInCancelButton;
23
28
  render(): SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Card;
24
29
  }
@@ -13,6 +13,7 @@ import draftEventGenerator from '../utilities/draftGenerator.js';
13
13
  export default class EventControlsCardViewController extends AbstractViewController {
14
14
  constructor(options) {
15
15
  super(options);
16
+ this.isEnableLocked = false;
16
17
  const { onSave, onCancel, getHasPendingContextChanges, getContext, onCancelEvent, } = assertOptions(options, [
17
18
  'onCancel',
18
19
  'onSave',
@@ -23,7 +24,7 @@ export default class EventControlsCardViewController extends AbstractViewControl
23
24
  this.saveHandler = onSave;
24
25
  this.cancelHandler = onCancel;
25
26
  this.cancelEventHandler = onCancelEvent;
26
- this.getHasPendingContextChangesHandler = getHasPendingContextChanges;
27
+ this.getHasPendingContextChanges = getHasPendingContextChanges;
27
28
  this.getContext = getContext;
28
29
  this.cardVc = this.CardVc();
29
30
  this.optionallyDropInCancelButton();
@@ -63,8 +64,19 @@ export default class EventControlsCardViewController extends AbstractViewControl
63
64
  this.cardVc.disableFooter();
64
65
  });
65
66
  }
67
+ lockEnabled() {
68
+ this.isEnableLocked = true;
69
+ this.handleUpdateContext();
70
+ }
71
+ unlockEnabled() {
72
+ this.isEnableLocked = false;
73
+ this.handleUpdateContext();
74
+ }
75
+ getIsEnableLocked() {
76
+ return this.isEnableLocked;
77
+ }
66
78
  handleUpdateContext() {
67
- if (this.getHasPendingContextChangesHandler()) {
79
+ if (this.shouldFooterBeEnabled()) {
68
80
  this.cardVc.enableFooter();
69
81
  }
70
82
  else {
@@ -72,6 +84,9 @@ export default class EventControlsCardViewController extends AbstractViewControl
72
84
  }
73
85
  this.optionallyDropInCancelButton();
74
86
  }
87
+ shouldFooterBeEnabled() {
88
+ return this.getHasPendingContextChanges() || this.isEnableLocked;
89
+ }
75
90
  optionallyDropInCancelButton() {
76
91
  var _a;
77
92
  const { event } = this.getContext();
@@ -11,7 +11,7 @@ export default abstract class AbstractCalendarEventToolBeltState implements Tool
11
11
  private toolBeltVc;
12
12
  private vcs;
13
13
  private pendingContextUpdates;
14
- private controlsVc;
14
+ protected controlsVc: EventControlsCardViewController;
15
15
  private isLoaded;
16
16
  private events;
17
17
  load(sm: CalendarToolBeltStateMachine): Promise<void>;
@@ -11,14 +11,19 @@ export default class EventControlsCardViewController extends AbstractViewControl
11
11
  private cardVc;
12
12
  private saveHandler;
13
13
  private cancelHandler;
14
- private getHasPendingContextChangesHandler;
14
+ private getHasPendingContextChanges;
15
15
  private getContext;
16
16
  private cancelEventHandler;
17
+ private isEnableLocked;
17
18
  constructor(options: ViewControllerOptions & EventControlsCardOptions);
18
19
  private CardVc;
19
20
  private handleClickCancel;
20
21
  private handleClickSave;
22
+ lockEnabled(): void;
23
+ unlockEnabled(): void;
24
+ getIsEnableLocked(): boolean;
21
25
  handleUpdateContext(): void;
26
+ private shouldFooterBeEnabled;
22
27
  private optionallyDropInCancelButton;
23
28
  render(): SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Card;
24
29
  }
@@ -9,6 +9,7 @@ const draftGenerator_1 = __importDefault(require("../utilities/draftGenerator"))
9
9
  class EventControlsCardViewController extends heartwood_view_controllers_1.AbstractViewController {
10
10
  constructor(options) {
11
11
  super(options);
12
+ this.isEnableLocked = false;
12
13
  const { onSave, onCancel, getHasPendingContextChanges, getContext, onCancelEvent, } = (0, schema_1.assertOptions)(options, [
13
14
  'onCancel',
14
15
  'onSave',
@@ -19,7 +20,7 @@ class EventControlsCardViewController extends heartwood_view_controllers_1.Abstr
19
20
  this.saveHandler = onSave;
20
21
  this.cancelHandler = onCancel;
21
22
  this.cancelEventHandler = onCancelEvent;
22
- this.getHasPendingContextChangesHandler = getHasPendingContextChanges;
23
+ this.getHasPendingContextChanges = getHasPendingContextChanges;
23
24
  this.getContext = getContext;
24
25
  this.cardVc = this.CardVc();
25
26
  this.optionallyDropInCancelButton();
@@ -55,8 +56,19 @@ class EventControlsCardViewController extends heartwood_view_controllers_1.Abstr
55
56
  this.cardVc.setFooterIsBusy(false);
56
57
  this.cardVc.disableFooter();
57
58
  }
59
+ lockEnabled() {
60
+ this.isEnableLocked = true;
61
+ this.handleUpdateContext();
62
+ }
63
+ unlockEnabled() {
64
+ this.isEnableLocked = false;
65
+ this.handleUpdateContext();
66
+ }
67
+ getIsEnableLocked() {
68
+ return this.isEnableLocked;
69
+ }
58
70
  handleUpdateContext() {
59
- if (this.getHasPendingContextChangesHandler()) {
71
+ if (this.shouldFooterBeEnabled()) {
60
72
  this.cardVc.enableFooter();
61
73
  }
62
74
  else {
@@ -64,6 +76,9 @@ class EventControlsCardViewController extends heartwood_view_controllers_1.Abstr
64
76
  }
65
77
  this.optionallyDropInCancelButton();
66
78
  }
79
+ shouldFooterBeEnabled() {
80
+ return this.getHasPendingContextChanges() || this.isEnableLocked;
81
+ }
67
82
  optionallyDropInCancelButton() {
68
83
  var _a;
69
84
  const { event } = this.getContext();
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": "22.3.20",
4
+ "version": "22.4.1",
5
5
  "skill": {
6
6
  "namespace": "calendar"
7
7
  },