@sprucelabs/spruce-calendar-components 22.3.19 → 22.4.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/build/.spruce/schemas/schemas.types.d.ts +81 -81
- package/build/esm/.spruce/schemas/schemas.types.d.ts +81 -81
- package/build/esm/skillViewControllers/Root.svc.js +0 -1
- package/build/esm/toolBelt/states/AbstractCalendarEventToolBeltState.d.ts +1 -1
- package/build/esm/utilities/CalendarEventManager.js +4 -1
- package/build/esm/viewControllers/EventControlsCard.vc.d.ts +6 -1
- package/build/esm/viewControllers/EventControlsCard.vc.js +17 -2
- package/build/skillViewControllers/Root.svc.js +0 -1
- package/build/toolBelt/states/AbstractCalendarEventToolBeltState.d.ts +1 -1
- package/build/utilities/CalendarEventManager.js +4 -1
- package/build/viewControllers/EventControlsCard.vc.d.ts +6 -1
- package/build/viewControllers/EventControlsCard.vc.js +17 -2
- package/package.json +1 -1
|
@@ -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;
|
|
@@ -249,7 +249,6 @@ export default class RootSkillViewController extends AbstractSkillViewController
|
|
|
249
249
|
}
|
|
250
250
|
handleDraftEventAdded(event) {
|
|
251
251
|
return __awaiter(this, void 0, void 0, function* () {
|
|
252
|
-
console.log('handle draft event added');
|
|
253
252
|
yield this.events.addDraftEvent(event, !event.eventTypeSlug);
|
|
254
253
|
if (!event.eventTypeSlug) {
|
|
255
254
|
this.toolBeltVc.open({ shouldStayOpen: true });
|
|
@@ -11,7 +11,7 @@ export default abstract class AbstractCalendarEventToolBeltState implements Tool
|
|
|
11
11
|
private toolBeltVc;
|
|
12
12
|
private vcs;
|
|
13
13
|
private pendingContextUpdates;
|
|
14
|
-
|
|
14
|
+
protected controlsVc: EventControlsCardViewController;
|
|
15
15
|
private isLoaded;
|
|
16
16
|
private events;
|
|
17
17
|
load(sm: CalendarToolBeltStateMachine): Promise<void>;
|
|
@@ -90,10 +90,13 @@ export default class CalendarEventManager {
|
|
|
90
90
|
});
|
|
91
91
|
}
|
|
92
92
|
silentlySwapEvent(oldId, event) {
|
|
93
|
+
var _a;
|
|
93
94
|
return __awaiter(this, void 0, void 0, function* () {
|
|
94
95
|
const events = this.getEvents().filter((e) => e.id !== oldId);
|
|
95
96
|
this.allEvents = [...events, event];
|
|
96
|
-
|
|
97
|
+
if (((_a = this.sm.getContext().event) === null || _a === void 0 ? void 0 : _a.id) === oldId) {
|
|
98
|
+
yield this.updateEventInContext(event);
|
|
99
|
+
}
|
|
97
100
|
});
|
|
98
101
|
}
|
|
99
102
|
handleDropEvent(id, updates) {
|
|
@@ -11,14 +11,19 @@ export default class EventControlsCardViewController extends AbstractViewControl
|
|
|
11
11
|
private cardVc;
|
|
12
12
|
private saveHandler;
|
|
13
13
|
private cancelHandler;
|
|
14
|
-
private
|
|
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.
|
|
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.
|
|
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();
|
|
@@ -220,7 +220,6 @@ class RootSkillViewController extends heartwood_view_controllers_1.AbstractSkill
|
|
|
220
220
|
}
|
|
221
221
|
}
|
|
222
222
|
async handleDraftEventAdded(event) {
|
|
223
|
-
console.log('handle draft event added');
|
|
224
223
|
await this.events.addDraftEvent(event, !event.eventTypeSlug);
|
|
225
224
|
if (!event.eventTypeSlug) {
|
|
226
225
|
this.toolBeltVc.open({ shouldStayOpen: true });
|
|
@@ -11,7 +11,7 @@ export default abstract class AbstractCalendarEventToolBeltState implements Tool
|
|
|
11
11
|
private toolBeltVc;
|
|
12
12
|
private vcs;
|
|
13
13
|
private pendingContextUpdates;
|
|
14
|
-
|
|
14
|
+
protected controlsVc: EventControlsCardViewController;
|
|
15
15
|
private isLoaded;
|
|
16
16
|
private events;
|
|
17
17
|
load(sm: CalendarToolBeltStateMachine): Promise<void>;
|
|
@@ -84,9 +84,12 @@ class CalendarEventManager {
|
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
86
|
async silentlySwapEvent(oldId, event) {
|
|
87
|
+
var _a;
|
|
87
88
|
const events = this.getEvents().filter((e) => e.id !== oldId);
|
|
88
89
|
this.allEvents = [...events, event];
|
|
89
|
-
|
|
90
|
+
if (((_a = this.sm.getContext().event) === null || _a === void 0 ? void 0 : _a.id) === oldId) {
|
|
91
|
+
await this.updateEventInContext(event);
|
|
92
|
+
}
|
|
90
93
|
}
|
|
91
94
|
async handleDropEvent(id, updates) {
|
|
92
95
|
const event = Object.assign(Object.assign({}, this.calendarVc.getEvent(id)), updates);
|
|
@@ -11,14 +11,19 @@ export default class EventControlsCardViewController extends AbstractViewControl
|
|
|
11
11
|
private cardVc;
|
|
12
12
|
private saveHandler;
|
|
13
13
|
private cancelHandler;
|
|
14
|
-
private
|
|
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.
|
|
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.
|
|
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();
|