@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.
- package/build/.spruce/schemas/schemas.types.d.ts +81 -81
- package/build/esm/.spruce/schemas/schemas.types.d.ts +81 -81
- package/build/esm/toolBelt/states/AbstractCalendarEventToolBeltState.d.ts +1 -1
- package/build/esm/viewControllers/EventControlsCard.vc.d.ts +6 -1
- package/build/esm/viewControllers/EventControlsCard.vc.js +17 -2
- package/build/toolBelt/states/AbstractCalendarEventToolBeltState.d.ts +1 -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;
|
|
@@ -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>;
|
|
@@ -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();
|
|
@@ -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>;
|
|
@@ -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();
|