@nylas/web-elements 1.4.5 → 2.0.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/dist/cdn/nylas-scheduler-editor/nylas-scheduler-editor.es.js +179 -146
- package/dist/cdn/nylas-scheduling/nylas-scheduling.es.js +4998 -4993
- package/dist/cjs/calendar-agenda-fill-icon_36.cjs.entry.js +4 -4
- package/dist/cjs/checkmark-icon_15.cjs.entry.js +4 -4
- package/dist/cjs/checkmark-icon_15.cjs.entry.js.map +1 -1
- package/dist/cjs/{constants-3b9fb535.js → constants-27331d2d.js} +1 -5
- package/dist/cjs/constants-27331d2d.js.map +1 -0
- package/dist/cjs/{customParseFormat-4dbd51f6.js → customParseFormat-22da9017.js} +2 -2
- package/dist/cjs/{customParseFormat-4dbd51f6.js.map → customParseFormat-22da9017.js.map} +1 -1
- package/dist/cjs/{feedbackSync-670798db.js → feedbackSync-adabe7d6.js} +2 -2
- package/dist/cjs/{feedbackSync-670798db.js.map → feedbackSync-adabe7d6.js.map} +1 -1
- package/dist/cjs/globe-icon_2.cjs.entry.js +3 -3
- package/dist/cjs/google-logo-icon_6.cjs.entry.js +49 -25
- package/dist/cjs/google-logo-icon_6.cjs.entry.js.map +1 -1
- package/dist/cjs/index.cjs.js +2 -2
- package/dist/cjs/{index.es-cbc1ecb6.js → index.es-7848228a.js} +2 -2
- package/dist/cjs/{index.es-cbc1ecb6.js.map → index.es-7848228a.js.map} +1 -1
- package/dist/cjs/input-component.cjs.entry.js +1 -1
- package/dist/cjs/input-dropdown_2.cjs.entry.js +2 -2
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/multi-select-dropdown_2.cjs.entry.js +1 -1
- package/dist/cjs/{nylas-api-request-af6121b4.js → nylas-api-request-976db0f4.js} +2 -2
- package/dist/cjs/{nylas-api-request-af6121b4.js.map → nylas-api-request-976db0f4.js.map} +1 -1
- package/dist/cjs/nylas-booked-event-card_12.cjs.entry.js +3 -3
- package/dist/cjs/nylas-event-calendar_3.cjs.entry.js +4 -4
- package/dist/cjs/nylas-form-card.cjs.entry.js +2 -2
- package/dist/cjs/nylas-scheduler-editor.cjs.entry.js +22 -16
- package/dist/cjs/nylas-scheduler-editor.cjs.entry.js.map +1 -1
- package/dist/cjs/nylas-scheduling.cjs.entry.js +7 -7
- package/dist/cjs/nylas-web-elements.cjs.js +1 -1
- package/dist/cjs/{register-component-5e87c463.js → register-component-d2f37e40.js} +2 -2
- package/dist/cjs/{register-component-5e87c463.js.map → register-component-d2f37e40.js.map} +1 -1
- package/dist/cjs/textarea-component.cjs.entry.js +1 -1
- package/dist/cjs/{utils-0dfca9ec.js → utils-d522ef01.js} +10 -1
- package/dist/cjs/utils-d522ef01.js.map +1 -0
- package/dist/collection/common/constants.js +0 -1
- package/dist/collection/common/constants.js.map +1 -1
- package/dist/collection/components/scheduler/nylas-scheduling/nylas-scheduling.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-editor-tabs-group/nylas-editor-tabs-group.js +6 -7
- package/dist/collection/components/scheduler-editor/nylas-editor-tabs-group/nylas-editor-tabs-group.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-event-description/nylas-event-description.js +1 -1
- package/dist/collection/components/scheduler-editor/nylas-event-description/nylas-event-description.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.js +6 -3
- package/dist/collection/components/scheduler-editor/nylas-list-configurations/nylas-list-configurations.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/ExpressFlow.js +4 -5
- package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/ExpressFlow.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.css +0 -8
- package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js +43 -10
- package/dist/collection/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-select-event-type/nylas-select-event-type.js +52 -7
- package/dist/collection/components/scheduler-editor/nylas-select-event-type/nylas-select-event-type.js.map +1 -1
- package/dist/collection/components/scheduler-editor/nylas-timeslot-interval/nylas-timeslot-interval.js +1 -1
- package/dist/collection/stores/scheduler-config-store.js.map +1 -1
- package/dist/components/constants.js +1 -5
- package/dist/components/constants.js.map +1 -1
- package/dist/components/nylas-editor-tabs-group2.js +8 -9
- package/dist/components/nylas-editor-tabs-group2.js.map +1 -1
- package/dist/components/nylas-editor-tabs2.js +2 -2
- package/dist/components/nylas-event-description2.js +1 -1
- package/dist/components/nylas-event-description2.js.map +1 -1
- package/dist/components/nylas-list-configurations2.js +6 -3
- package/dist/components/nylas-list-configurations2.js.map +1 -1
- package/dist/components/nylas-scheduler-editor.js +22 -14
- package/dist/components/nylas-scheduler-editor.js.map +1 -1
- package/dist/components/nylas-scheduling.js +3 -3
- package/dist/components/nylas-select-event-type2.js +32 -8
- package/dist/components/nylas-select-event-type2.js.map +1 -1
- package/dist/components/nylas-timeslot-interval2.js +1 -1
- package/dist/components/utils.js +9 -0
- package/dist/components/utils.js.map +1 -1
- package/dist/esm/calendar-agenda-fill-icon_36.entry.js +4 -4
- package/dist/esm/checkmark-icon_15.entry.js +4 -4
- package/dist/esm/checkmark-icon_15.entry.js.map +1 -1
- package/dist/esm/{constants-3d8016e3.js → constants-f51538ef.js} +2 -6
- package/dist/esm/constants-f51538ef.js.map +1 -0
- package/dist/esm/{customParseFormat-129be926.js → customParseFormat-d1de5ed0.js} +2 -2
- package/dist/esm/{customParseFormat-129be926.js.map → customParseFormat-d1de5ed0.js.map} +1 -1
- package/dist/esm/{feedbackSync-d943ffc7.js → feedbackSync-172f942c.js} +2 -2
- package/dist/esm/{feedbackSync-d943ffc7.js.map → feedbackSync-172f942c.js.map} +1 -1
- package/dist/esm/globe-icon_2.entry.js +3 -3
- package/dist/esm/google-logo-icon_6.entry.js +49 -25
- package/dist/esm/google-logo-icon_6.entry.js.map +1 -1
- package/dist/esm/{index.es-4615d47c.js → index.es-fc8588de.js} +2 -2
- package/dist/esm/{index.es-4615d47c.js.map → index.es-fc8588de.js.map} +1 -1
- package/dist/esm/index.js +2 -2
- package/dist/esm/input-component.entry.js +1 -1
- package/dist/esm/input-dropdown_2.entry.js +2 -2
- package/dist/esm/loader.js +1 -1
- package/dist/esm/multi-select-dropdown_2.entry.js +1 -1
- package/dist/esm/{nylas-api-request-acf12b47.js → nylas-api-request-3d7ced61.js} +2 -2
- package/dist/esm/{nylas-api-request-acf12b47.js.map → nylas-api-request-3d7ced61.js.map} +1 -1
- package/dist/esm/nylas-booked-event-card_12.entry.js +3 -3
- package/dist/esm/nylas-event-calendar_3.entry.js +4 -4
- package/dist/esm/nylas-form-card.entry.js +2 -2
- package/dist/esm/nylas-scheduler-editor.entry.js +22 -16
- package/dist/esm/nylas-scheduler-editor.entry.js.map +1 -1
- package/dist/esm/nylas-scheduling.entry.js +7 -7
- package/dist/esm/nylas-web-elements.js +1 -1
- package/dist/esm/{register-component-083eb961.js → register-component-62d792d4.js} +2 -2
- package/dist/esm/{register-component-083eb961.js.map → register-component-62d792d4.js.map} +1 -1
- package/dist/esm/textarea-component.entry.js +1 -1
- package/dist/esm/{utils-6c05ecaf.js → utils-bb88dd4d.js} +10 -1
- package/dist/esm/utils-bb88dd4d.js.map +1 -0
- package/dist/nylas-web-elements/index.esm.js +1 -1
- package/dist/nylas-web-elements/nylas-web-elements.esm.js +1 -1
- package/dist/nylas-web-elements/nylas-web-elements.esm.js.map +1 -1
- package/dist/nylas-web-elements/{p-865721fd.entry.js → p-05204c68.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-2b38054f.entry.js → p-0d422938.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-c59787f4.js → p-0d6ecada.js} +2 -2
- package/dist/nylas-web-elements/{p-e2632a60.js → p-198f05a6.js} +2 -2
- package/dist/nylas-web-elements/p-1d8c55c6.entry.js +11 -0
- package/dist/nylas-web-elements/p-1d8c55c6.entry.js.map +1 -0
- package/dist/nylas-web-elements/{p-4e1e01e4.entry.js → p-29f601d9.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-60b48bf7.js → p-3a3c5e17.js} +2 -2
- package/dist/nylas-web-elements/{p-6bb6a0b8.entry.js → p-447837c2.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-faa723fc.entry.js → p-49c8d4d9.entry.js} +2 -2
- package/dist/nylas-web-elements/p-49c8d4d9.entry.js.map +1 -0
- package/dist/nylas-web-elements/p-7e885253.js +2 -0
- package/dist/nylas-web-elements/p-7e885253.js.map +1 -0
- package/dist/nylas-web-elements/{p-3cc1072e.js → p-84109239.js} +2 -2
- package/dist/nylas-web-elements/{p-d16cd88b.entry.js → p-a7d2a211.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-bea31f39.entry.js → p-a9107606.entry.js} +2 -2
- package/dist/nylas-web-elements/p-a9107606.entry.js.map +1 -0
- package/dist/nylas-web-elements/{p-a9a0dd64.entry.js → p-ab96941e.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-6fc7d11b.entry.js → p-af94512e.entry.js} +3 -3
- package/dist/nylas-web-elements/{p-bfe2bdbd.js → p-b3ca5d4d.js} +2 -2
- package/dist/nylas-web-elements/{p-80d57b5a.entry.js → p-cd24a45e.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-6364eb02.entry.js → p-e9369c76.entry.js} +2 -2
- package/dist/nylas-web-elements/{p-b2241c3c.entry.js → p-f00d1bb3.entry.js} +2 -2
- package/dist/nylas-web-elements/p-f73e34dd.js +14 -0
- package/dist/nylas-web-elements/{p-2b97a896.js.map → p-f73e34dd.js.map} +1 -1
- package/dist/types/common/constants.d.ts +216 -1
- package/dist/types/components/scheduler-editor/nylas-editor-tabs-group/nylas-editor-tabs-group.d.ts +0 -2
- package/dist/types/components/scheduler-editor/nylas-scheduler-editor/ExpressFlow.d.ts +1 -2
- package/dist/types/components/scheduler-editor/nylas-scheduler-editor/nylas-scheduler-editor.d.ts +3 -1
- package/dist/types/components/scheduler-editor/nylas-select-event-type/nylas-select-event-type.d.ts +2 -1
- package/dist/types/components.d.ts +18 -2
- package/dist/types/stores/scheduler-config-store.d.ts +2 -1
- package/package.json +1 -1
- package/dist/cjs/constants-3b9fb535.js.map +0 -1
- package/dist/cjs/utils-0dfca9ec.js.map +0 -1
- package/dist/esm/constants-3d8016e3.js.map +0 -1
- package/dist/esm/utils-6c05ecaf.js.map +0 -1
- package/dist/nylas-web-elements/p-2b97a896.js +0 -14
- package/dist/nylas-web-elements/p-35b7d082.entry.js +0 -11
- package/dist/nylas-web-elements/p-35b7d082.entry.js.map +0 -1
- package/dist/nylas-web-elements/p-6f7cb609.js +0 -2
- package/dist/nylas-web-elements/p-6f7cb609.js.map +0 -1
- package/dist/nylas-web-elements/p-bea31f39.entry.js.map +0 -1
- package/dist/nylas-web-elements/p-faa723fc.entry.js.map +0 -1
- /package/dist/nylas-web-elements/{p-865721fd.entry.js.map → p-05204c68.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-2b38054f.entry.js.map → p-0d422938.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-c59787f4.js.map → p-0d6ecada.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-e2632a60.js.map → p-198f05a6.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-4e1e01e4.entry.js.map → p-29f601d9.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-60b48bf7.js.map → p-3a3c5e17.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-6bb6a0b8.entry.js.map → p-447837c2.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-3cc1072e.js.map → p-84109239.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-d16cd88b.entry.js.map → p-a7d2a211.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-a9a0dd64.entry.js.map → p-ab96941e.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-6fc7d11b.entry.js.map → p-af94512e.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-bfe2bdbd.js.map → p-b3ca5d4d.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-80d57b5a.entry.js.map → p-cd24a45e.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-6364eb02.entry.js.map → p-e9369c76.entry.js.map} +0 -0
- /package/dist/nylas-web-elements/{p-b2241c3c.entry.js.map → p-f00d1bb3.entry.js.map} +0 -0
|
@@ -226,7 +226,7 @@ class NylaSchedulerAPIConnector {
|
|
|
226
226
|
async makeAPIRequest(path, method, body, headers = {}) {
|
|
227
227
|
try {
|
|
228
228
|
const schedulerURL = new URL(this.schedulerAPIURL);
|
|
229
|
-
const version = "
|
|
229
|
+
const version = "2.0.0" ;
|
|
230
230
|
schedulerURL.pathname = path;
|
|
231
231
|
const response = await fetch(decodeURIComponent(schedulerURL.toString()), {
|
|
232
232
|
method,
|
|
@@ -934,7 +934,7 @@ const NylasScheduling$1 = proxyCustomElement(class NylasScheduling extends HTMLE
|
|
|
934
934
|
if (this.enableUserFeedback && !isInitialized()) {
|
|
935
935
|
init({
|
|
936
936
|
dsn: 'https://9d5731f1c77ca84c9ed3fb9b3ccf7ee1@o74852.ingest.us.sentry.io/4507889638178816',
|
|
937
|
-
release: "
|
|
937
|
+
release: "2.0.0",
|
|
938
938
|
integrations: integrations => [
|
|
939
939
|
...integrations.filter(_integration => false),
|
|
940
940
|
feedbackSyncIntegration({
|
|
@@ -1263,7 +1263,7 @@ const NylasScheduling$1 = proxyCustomElement(class NylasScheduling extends HTMLE
|
|
|
1263
1263
|
captureContext: {
|
|
1264
1264
|
tags: {
|
|
1265
1265
|
'nylas-web-element': 'nylas-scheduling',
|
|
1266
|
-
'nylas-web-element-version': "
|
|
1266
|
+
'nylas-web-element-version': "2.0.0",
|
|
1267
1267
|
'nylas-config-id': this.configurationId,
|
|
1268
1268
|
'nylas-slug': this.slug,
|
|
1269
1269
|
'host-url': window.location.href,
|
|
@@ -33,6 +33,13 @@ const NylasSelectEventType = proxyCustomElement(class NylasSelectEventType exten
|
|
|
33
33
|
this.participantOptions = undefined;
|
|
34
34
|
this.name = 'select-event-type';
|
|
35
35
|
this.selectedLanguage = undefined;
|
|
36
|
+
this.enableEventTypes = {
|
|
37
|
+
one_on_one: true,
|
|
38
|
+
collective: true,
|
|
39
|
+
max_fairness: true,
|
|
40
|
+
max_availability: true,
|
|
41
|
+
group: true,
|
|
42
|
+
};
|
|
36
43
|
}
|
|
37
44
|
connectedCallback() {
|
|
38
45
|
debug('nylas-select-event-type', 'connectedCallback');
|
|
@@ -57,7 +64,14 @@ const NylasSelectEventType = proxyCustomElement(class NylasSelectEventType exten
|
|
|
57
64
|
instance.changeLanguage(newVal);
|
|
58
65
|
}
|
|
59
66
|
render() {
|
|
60
|
-
const
|
|
67
|
+
const eventTypeKey = {
|
|
68
|
+
'one-on-one': 'one_on_one',
|
|
69
|
+
'collective': 'collective',
|
|
70
|
+
'max-fairness': 'max_fairness',
|
|
71
|
+
'max-availability': 'max_availability',
|
|
72
|
+
'group': 'group',
|
|
73
|
+
};
|
|
74
|
+
const allEventTypes = [
|
|
61
75
|
{
|
|
62
76
|
label: instance.t('nylasSelectEventType.eventTypeOptions.oneOnOne.label'),
|
|
63
77
|
value: CONFIGURATION_EVENT_TYPE.one_on_one,
|
|
@@ -84,19 +98,27 @@ const NylasSelectEventType = proxyCustomElement(class NylasSelectEventType exten
|
|
|
84
98
|
description: instance.t('nylasSelectEventType.eventTypeOptions.group.desc'),
|
|
85
99
|
},
|
|
86
100
|
];
|
|
101
|
+
const conditionalEventTypes = [CONFIGURATION_EVENT_TYPE.collective, CONFIGURATION_EVENT_TYPE.max_availability, CONFIGURATION_EVENT_TYPE.max_fairness];
|
|
87
102
|
const hasAdditionalParticipants = this.participantOptions &&
|
|
88
103
|
this.participantOptions?.length > 0 &&
|
|
89
104
|
!!this.participantOptions[0].email &&
|
|
90
105
|
!!this.participantOptions[0].name &&
|
|
91
106
|
!!this.participantOptions[0].calendars &&
|
|
92
107
|
this.participantOptions[0].calendars.length > 0;
|
|
93
|
-
const
|
|
94
|
-
|
|
95
|
-
|
|
108
|
+
const eventTypes = this.enableEventTypes
|
|
109
|
+
? allEventTypes.filter(eventType => {
|
|
110
|
+
const key = eventType.value;
|
|
111
|
+
const keyType = eventTypeKey[key];
|
|
112
|
+
console.log('key', key, this.enableEventTypes ? this.enableEventTypes[keyType] : 'no enableEventTypes');
|
|
113
|
+
if (conditionalEventTypes.includes(key) && !hasAdditionalParticipants) {
|
|
114
|
+
return false;
|
|
115
|
+
}
|
|
116
|
+
return this.enableEventTypes && this.enableEventTypes[keyType];
|
|
117
|
+
})
|
|
118
|
+
: allEventTypes;
|
|
119
|
+
return (h(Host, null, h("div", { class: "nylas-select-event-type", part: "nset" }, h("div", { class: "header", part: "nset__header" }, h("h2", null, instance.t('nylasSelectEventType.createEventHeaderTitle')), h("button-component", { variant: "invisible", part: "nset__header__back-button", onClick: _event => {
|
|
96
120
|
this.returnToAllSchedulingPagesEvent.emit();
|
|
97
|
-
} }, h("chevron-icon", {
|
|
98
|
-
.filter(e => defaultEventTypes.includes(e.value) || (hasAdditionalParticipants && conditionalEventTypes.includes(e.value)))
|
|
99
|
-
.map(eventType => (h("div", { class: "event-type-option", onClick: _event => {
|
|
121
|
+
} }, h("chevron-icon", { width: "16", height: "16" }), h("span", null, instance.t('nylasSelectEventType.returnToAllSchedulingPages')))), h("div", { class: "content", part: "nset__content" }, h("h3", null, instance.t('nylasSelectEventType.eventTypeHeaderTitle')), h("div", { class: "event-type", part: "nset__content__event-type" }, eventTypes.length === 0 && h("p", null, instance.t('nylasSelectEventType.noEventTypesEnabled')), eventTypes.map(eventType => (h("div", { class: "event-type-option", onClick: _event => {
|
|
100
122
|
this.createEventTypeSelected.emit({ eventType: eventType.value });
|
|
101
123
|
}, part: `nset__content__event-type-option-${eventType.value}` }, h("h4", null, eventType.label), h("p", null, eventType.description)))))))));
|
|
102
124
|
}
|
|
@@ -109,7 +131,8 @@ const NylasSelectEventType = proxyCustomElement(class NylasSelectEventType exten
|
|
|
109
131
|
}, [1, "nylas-select-event-type", {
|
|
110
132
|
"participantOptions": [16],
|
|
111
133
|
"name": [1],
|
|
112
|
-
"selectedLanguage": [1, "selected-language"]
|
|
134
|
+
"selectedLanguage": [1, "selected-language"],
|
|
135
|
+
"enableEventTypes": [16]
|
|
113
136
|
}, undefined, {
|
|
114
137
|
"name": ["elementNameChangedHandler"],
|
|
115
138
|
"selectedLanguage": ["selectedLanguageChangedHandler"]
|
|
@@ -120,6 +143,7 @@ __decorate([
|
|
|
120
143
|
stateToProps: new Map([
|
|
121
144
|
['schedulerConfig.selectedLanguage', 'selectedLanguage'],
|
|
122
145
|
['schedulerConfig.additionalParticipants', 'participantOptions'],
|
|
146
|
+
['schedulerConfig.enableEventTypes', 'enableEventTypes'],
|
|
123
147
|
]),
|
|
124
148
|
eventToProps: {
|
|
125
149
|
returnToAllSchedulingPagesEvent: async (_event, connector) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"nylas-select-event-type2.js","mappings":"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","names":["i18next"],"sources":["src/components/scheduler-editor/nylas-select-event-type/nylas-select-event-type.scss?tag=nylas-select-event-type&encapsulation=shadow","src/components/scheduler-editor/nylas-select-event-type/nylas-select-event-type.tsx"],"sourcesContent":["@import '../../../common/styles/variables.scss';\n@import '../../../common/mixins/buttons.scss';\n\n:host {\n display: block;\n @include default-css-variables;\n width: inherit;\n}\n\n.nylas-select-event-type {\n height: inherit;\n overflow-y: auto;\n\n div.header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n border-bottom: 1px solid var(--nylas-base-200);\n\n h2 {\n font-size: 18px;\n padding: 0 24px;\n line-height: 24px;\n margin: 0;\n font-weight: 600;\n color: var(--nylas-base-800);\n }\n\n button-component {\n button {\n @include invisible-button;\n }\n }\n }\n\n div.content {\n padding: 40px;\n\n h3 {\n margin: 0 0 32px 0;\n font-size: 18px;\n line-height: 24px;\n font-weight: 600;\n }\n\n div.event-type {\n display: flex;\n flex-direction: column;\n gap: 8px;\n\n div.event-type-option {\n padding: 16px;\n border: 1px solid var(--nylas-base-200);\n border-radius: var(--nylas-border-radius-3x);\n width: inherit;\n cursor: pointer;\n display: flex;\n flex-direction: column;\n gap: 8px;\n\n h4 {\n margin: 0;\n font-size: 16px;\n line-height: 24px;\n font-weight: 600;\n color: var(--nylas-base-900);\n }\n\n p {\n margin: 0;\n font-size: 14px;\n line-height: 21px;\n font-weight: 400;\n color: var(--nylas-base-800);\n }\n }\n }\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } from '@/utils/utils';\nimport { Component, Element, Event, EventEmitter, Host, Prop, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport i18next from '@/utils/i18n';\nimport { CONFIGURATION_EVENT_TYPE, LANGUAGE_CODE } from '@/common/constants';\nimport { AdditionalParticipant } from '@nylas/core';\n\n/**\n * The `nylas-select-event-type` component is a UI component that allows users to select the event type for the scheduler configuration.\n */\n@Component({\n tag: 'nylas-select-event-type',\n styleUrl: 'nylas-select-event-type.scss',\n shadow: true,\n})\nexport class NylasSelectEventType {\n @Element() host!: HTMLNylasSelectEventTypeElement;\n\n /**\n * @standalone\n * The participant options passed in the additionalParticipants prop\n * from the nylas-scheduler-editor component.\n */\n @Prop() participantOptions?: AdditionalParticipant[];\n\n /**\n * @standalone\n * The name of the component\n */\n @Prop() name: string = 'select-event-type';\n\n /**\n * The selected language.\n */\n @Prop() selectedLanguage?: LANGUAGE_CODE;\n\n /**\n * This event is fired when the return to all scheduling pages button is clicked.\n */\n @Event() returnToAllSchedulingPagesEvent!: EventEmitter<void>;\n\n /**\n * This event is fired when the event type is selected.\n */\n @Event() createEventTypeSelected!: EventEmitter<{ eventType: CONFIGURATION_EVENT_TYPE }>;\n\n // Lifecycle methods\n connectedCallback() {\n debug('nylas-select-event-type', 'connectedCallback');\n }\n\n disconnectedCallback() {\n debug('nylas-select-event-type', 'disconnectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-select-event-type', 'componentWillLoad');\n // See comment in the @Watch('name') decorator for more information.\n this.host.setAttribute('name', this.name);\n }\n\n componentDidLoad() {\n debug('nylas-select-event-type', 'componentDidLoad');\n }\n\n /**\n * When a name prop is passed, stencil does not automatically set the name attribute on the host element.\n * Since this component is form-associated, the name attribute is required for form submission.\n * This is a workaround to ensure that the name attribute is set on the host element.\n */\n @Watch('name')\n elementNameChangedHandler(newValue: string) {\n debug('nylas-select-event-type', 'elementNameChangedHandler', newValue);\n this.host.setAttribute('name', newValue);\n }\n\n @Watch('selectedLanguage')\n selectedLanguageChangedHandler(newVal: LANGUAGE_CODE, oldVal: LANGUAGE_CODE) {\n if (newVal === oldVal) return;\n i18next.changeLanguage(newVal);\n }\n\n @RegisterComponent<NylasSelectEventType, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-select-event-type',\n stateToProps: new Map([\n ['schedulerConfig.selectedLanguage', 'selectedLanguage'],\n ['schedulerConfig.additionalParticipants', 'participantOptions'],\n ]),\n eventToProps: {\n returnToAllSchedulingPagesEvent: async (_event: CustomEvent<void>, connector: NylasSchedulerConfigConnector) => {\n connector.schedulerConfigStore.state.action = null;\n connector.schedulerConfigStore.set('selectedEventType', undefined);\n },\n createEventTypeSelected: async (event: CustomEvent<{ eventType: CONFIGURATION_EVENT_TYPE }>, connector: NylasSchedulerConfigConnector) => {\n const { eventType } = event.detail;\n connector.schedulerConfigStore.state.action = 'create';\n connector.schedulerConfigStore.state.selectedEventType = eventType;\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n const eventTypes = [\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.oneOnOne.label'),\n value: CONFIGURATION_EVENT_TYPE.one_on_one,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.oneOnOne.desc'),\n },\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.collective.label'),\n value: CONFIGURATION_EVENT_TYPE.collective,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.collective.desc'),\n },\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.maxFairness.label'),\n value: CONFIGURATION_EVENT_TYPE.max_fairness,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.maxFairness.desc'),\n },\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.maxAvailability.label'),\n value: CONFIGURATION_EVENT_TYPE.max_availability,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.maxAvailability.desc'),\n },\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.group.label'),\n value: CONFIGURATION_EVENT_TYPE.group,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.group.desc'),\n },\n ];\n const hasAdditionalParticipants =\n this.participantOptions &&\n this.participantOptions?.length > 0 &&\n !!this.participantOptions[0].email &&\n !!this.participantOptions[0].name &&\n !!this.participantOptions[0].calendars &&\n this.participantOptions[0].calendars.length > 0;\n const conditionalEventTypes = [CONFIGURATION_EVENT_TYPE.collective, CONFIGURATION_EVENT_TYPE.max_availability, CONFIGURATION_EVENT_TYPE.max_fairness];\n const defaultEventTypes = [CONFIGURATION_EVENT_TYPE.one_on_one, CONFIGURATION_EVENT_TYPE.group];\n return (\n <Host>\n <div class=\"nylas-select-event-type\" part=\"nset\">\n <div class=\"header\" part=\"nset__header\">\n <h2>{i18next.t('nylasSelectEventType.createEventHeaderTitle')}</h2>\n <button-component\n variant=\"invisible\"\n part=\"nset__header__back-button\"\n onClick={_event => {\n this.returnToAllSchedulingPagesEvent.emit();\n }}\n >\n <chevron-icon width=\"16\" height=\"16\" />\n <span>{i18next.t('nylasSelectEventType.returnToAllSchedulingPages')}</span>\n </button-component>\n </div>\n <div class=\"content\" part=\"nset__content\">\n <h3>{i18next.t('nylasSelectEventType.eventTypeHeaderTitle')}</h3>\n <div class=\"event-type\" part=\"nset__content__event-type\">\n {eventTypes\n .filter(e => defaultEventTypes.includes(e.value) || (hasAdditionalParticipants && conditionalEventTypes.includes(e.value)))\n .map(eventType => (\n <div\n class=\"event-type-option\"\n onClick={_event => {\n this.createEventTypeSelected.emit({ eventType: eventType.value });\n }}\n part={`nset__content__event-type-option-${eventType.value}`}\n >\n <h4>{eventType.label}</h4>\n <p>{eventType.description}</p>\n </div>\n ))}\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"nylas-select-event-type2.js","mappings":"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","names":["i18next"],"sources":["src/components/scheduler-editor/nylas-select-event-type/nylas-select-event-type.scss?tag=nylas-select-event-type&encapsulation=shadow","src/components/scheduler-editor/nylas-select-event-type/nylas-select-event-type.tsx"],"sourcesContent":["@import '../../../common/styles/variables.scss';\n@import '../../../common/mixins/buttons.scss';\n\n:host {\n display: block;\n @include default-css-variables;\n width: inherit;\n}\n\n.nylas-select-event-type {\n height: inherit;\n overflow-y: auto;\n\n div.header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n border-bottom: 1px solid var(--nylas-base-200);\n\n h2 {\n font-size: 18px;\n padding: 0 24px;\n line-height: 24px;\n margin: 0;\n font-weight: 600;\n color: var(--nylas-base-800);\n }\n\n button-component {\n button {\n @include invisible-button;\n }\n }\n }\n\n div.content {\n padding: 40px;\n\n h3 {\n margin: 0 0 32px 0;\n font-size: 18px;\n line-height: 24px;\n font-weight: 600;\n }\n\n div.event-type {\n display: flex;\n flex-direction: column;\n gap: 8px;\n\n div.event-type-option {\n padding: 16px;\n border: 1px solid var(--nylas-base-200);\n border-radius: var(--nylas-border-radius-3x);\n width: inherit;\n cursor: pointer;\n display: flex;\n flex-direction: column;\n gap: 8px;\n\n h4 {\n margin: 0;\n font-size: 16px;\n line-height: 24px;\n font-weight: 600;\n color: var(--nylas-base-900);\n }\n\n p {\n margin: 0;\n font-size: 14px;\n line-height: 21px;\n font-weight: 400;\n color: var(--nylas-base-800);\n }\n }\n }\n }\n}\n","import { RegisterComponent } from '@/common/register-component';\nimport { NylasSchedulerConfigConnector } from '@/connector/nylas-scheduler-config-connector';\nimport { debug } from '@/utils/utils';\nimport { Component, Element, Event, EventEmitter, Host, Prop, Watch, h } from '@stencil/core';\nimport { NylasSchedulerEditor } from '../nylas-scheduler-editor/nylas-scheduler-editor';\nimport i18next from '@/utils/i18n';\nimport { CONFIGURATION_EVENT_TYPE, LANGUAGE_CODE } from '@/common/constants';\nimport { AdditionalParticipant, EnableEventTypes } from '@nylas/core';\n\n/**\n * The `nylas-select-event-type` component is a UI component that allows users to select the event type for the scheduler configuration.\n */\n@Component({\n tag: 'nylas-select-event-type',\n styleUrl: 'nylas-select-event-type.scss',\n shadow: true,\n})\nexport class NylasSelectEventType {\n @Element() host!: HTMLNylasSelectEventTypeElement;\n\n /**\n * @standalone\n * The participant options passed in the additionalParticipants prop\n * from the nylas-scheduler-editor component.\n */\n @Prop() participantOptions?: AdditionalParticipant[];\n\n /**\n * @standalone\n * The name of the component\n */\n @Prop() name: string = 'select-event-type';\n\n /**\n * The selected language.\n */\n @Prop() selectedLanguage?: LANGUAGE_CODE;\n\n /**\n * The enable event types.\n */\n @Prop() enableEventTypes?: EnableEventTypes = {\n one_on_one: true,\n collective: true,\n max_fairness: true,\n max_availability: true,\n group: true,\n };\n\n /**\n * This event is fired when the return to all scheduling pages button is clicked.\n */\n @Event() returnToAllSchedulingPagesEvent!: EventEmitter<void>;\n\n /**\n * This event is fired when the event type is selected.\n */\n @Event() createEventTypeSelected!: EventEmitter<{ eventType: CONFIGURATION_EVENT_TYPE }>;\n\n // Lifecycle methods\n connectedCallback() {\n debug('nylas-select-event-type', 'connectedCallback');\n }\n\n disconnectedCallback() {\n debug('nylas-select-event-type', 'disconnectedCallback');\n }\n\n componentWillLoad() {\n debug('nylas-select-event-type', 'componentWillLoad');\n // See comment in the @Watch('name') decorator for more information.\n this.host.setAttribute('name', this.name);\n }\n\n componentDidLoad() {\n debug('nylas-select-event-type', 'componentDidLoad');\n }\n\n /**\n * When a name prop is passed, stencil does not automatically set the name attribute on the host element.\n * Since this component is form-associated, the name attribute is required for form submission.\n * This is a workaround to ensure that the name attribute is set on the host element.\n */\n @Watch('name')\n elementNameChangedHandler(newValue: string) {\n debug('nylas-select-event-type', 'elementNameChangedHandler', newValue);\n this.host.setAttribute('name', newValue);\n }\n\n @Watch('selectedLanguage')\n selectedLanguageChangedHandler(newVal: LANGUAGE_CODE, oldVal: LANGUAGE_CODE) {\n if (newVal === oldVal) return;\n i18next.changeLanguage(newVal);\n }\n\n @RegisterComponent<NylasSelectEventType, NylasSchedulerConfigConnector, Exclude<NylasSchedulerEditor['stores'], undefined>>({\n name: 'nylas-select-event-type',\n stateToProps: new Map([\n ['schedulerConfig.selectedLanguage', 'selectedLanguage'],\n ['schedulerConfig.additionalParticipants', 'participantOptions'],\n ['schedulerConfig.enableEventTypes', 'enableEventTypes'],\n ]),\n eventToProps: {\n returnToAllSchedulingPagesEvent: async (_event: CustomEvent<void>, connector: NylasSchedulerConfigConnector) => {\n connector.schedulerConfigStore.state.action = null;\n connector.schedulerConfigStore.set('selectedEventType', undefined);\n },\n createEventTypeSelected: async (event: CustomEvent<{ eventType: CONFIGURATION_EVENT_TYPE }>, connector: NylasSchedulerConfigConnector) => {\n const { eventType } = event.detail;\n connector.schedulerConfigStore.state.action = 'create';\n connector.schedulerConfigStore.state.selectedEventType = eventType;\n },\n },\n fireRegisterEvent: true,\n })\n render() {\n interface EventTypeOption {\n label: string;\n value: CONFIGURATION_EVENT_TYPE;\n description: string;\n }\n\n const eventTypeKey = {\n 'one-on-one': 'one_on_one',\n 'collective': 'collective',\n 'max-fairness': 'max_fairness',\n 'max-availability': 'max_availability',\n 'group': 'group',\n };\n\n const allEventTypes: EventTypeOption[] = [\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.oneOnOne.label'),\n value: CONFIGURATION_EVENT_TYPE.one_on_one,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.oneOnOne.desc'),\n },\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.collective.label'),\n value: CONFIGURATION_EVENT_TYPE.collective,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.collective.desc'),\n },\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.maxFairness.label'),\n value: CONFIGURATION_EVENT_TYPE.max_fairness,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.maxFairness.desc'),\n },\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.maxAvailability.label'),\n value: CONFIGURATION_EVENT_TYPE.max_availability,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.maxAvailability.desc'),\n },\n {\n label: i18next.t('nylasSelectEventType.eventTypeOptions.group.label'),\n value: CONFIGURATION_EVENT_TYPE.group,\n description: i18next.t('nylasSelectEventType.eventTypeOptions.group.desc'),\n },\n ];\n const conditionalEventTypes = [CONFIGURATION_EVENT_TYPE.collective, CONFIGURATION_EVENT_TYPE.max_availability, CONFIGURATION_EVENT_TYPE.max_fairness];\n const hasAdditionalParticipants =\n this.participantOptions &&\n this.participantOptions?.length > 0 &&\n !!this.participantOptions[0].email &&\n !!this.participantOptions[0].name &&\n !!this.participantOptions[0].calendars &&\n this.participantOptions[0].calendars.length > 0;\n\n const eventTypes = this.enableEventTypes\n ? allEventTypes.filter(eventType => {\n const key = eventType.value;\n const keyType = eventTypeKey[key];\n console.log('key', key, this.enableEventTypes ? this.enableEventTypes[keyType] : 'no enableEventTypes');\n if (conditionalEventTypes.includes(key) && !hasAdditionalParticipants) {\n return false;\n }\n return this.enableEventTypes && this.enableEventTypes[keyType];\n })\n : allEventTypes;\n return (\n <Host>\n <div class=\"nylas-select-event-type\" part=\"nset\">\n <div class=\"header\" part=\"nset__header\">\n <h2>{i18next.t('nylasSelectEventType.createEventHeaderTitle')}</h2>\n <button-component\n variant=\"invisible\"\n part=\"nset__header__back-button\"\n onClick={_event => {\n this.returnToAllSchedulingPagesEvent.emit();\n }}\n >\n <chevron-icon width=\"16\" height=\"16\" />\n <span>{i18next.t('nylasSelectEventType.returnToAllSchedulingPages')}</span>\n </button-component>\n </div>\n <div class=\"content\" part=\"nset__content\">\n <h3>{i18next.t('nylasSelectEventType.eventTypeHeaderTitle')}</h3>\n <div class=\"event-type\" part=\"nset__content__event-type\">\n {eventTypes.length === 0 && <p>{i18next.t('nylasSelectEventType.noEventTypesEnabled')}</p>}\n {eventTypes.map(eventType => (\n <div\n class=\"event-type-option\"\n onClick={_event => {\n this.createEventTypeSelected.emit({ eventType: eventType.value });\n }}\n part={`nset__content__event-type-option-${eventType.value}`}\n >\n <h4>{eventType.label}</h4>\n <p>{eventType.description}</p>\n </div>\n ))}\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -150,7 +150,7 @@ const NylasTimeslotInterval = proxyCustomElement(class NylasTimeslotInterval ext
|
|
|
150
150
|
? intervalPreferenceOptions[0]
|
|
151
151
|
: intervalPreferenceOptions.find(op => op.value == this.selectedInterval.toString()) ?? intervalPreferenceOptions[0]
|
|
152
152
|
: undefined;
|
|
153
|
-
return (h(Host, { key: '
|
|
153
|
+
return (h(Host, { key: 'a2922db89671698745b040e04ed4ade53cb97856' }, h("div", { key: '6123febcf83c4f4a6735f704852a0b49ef86b8ae', class: "nylas-timeslot-interval", part: "nti" }, h("div", { key: '28ae252bbb1c197cb2af8c2404868de4eefc3755', class: "header", part: "nti__header" }, h("h3", { key: 'a0fa4565865befb21c24b19b0d6a3d35a2438e6a' }, instance.t('nylasTimeslotInterval.headerTitle'))), h("div", { key: '9afa7b8311718c155c5a67484f75be07ea1a499c', class: "nylas-timeslot-interval__dropdown" }, h("span", { key: '27de62640dc1d5eb143f0b3c2638974e863e7052', class: "label", part: "nti__input-label" }, instance.t('nylasTimeslotInterval.timeslotInterval.label')), defaultSelectedInterval?.label && (h("select-dropdown", { name: "interval-minutes", options: intervalPreferenceOptions, withSearch: false, exportparts: "sd_dropdown: nti__dropdown, sd_dropdown-button: nti__dropdown-button, sd_dropdown-content: nti__dropdown-content", defaultSelectedOption: defaultSelectedInterval })), h("span", { key: '8221c77ef67c8186ce9f32ebf548c49938e2e2e1', slot: "label", class: "label", part: "nti__input-label" }, instance.t('nylasTimeslotInterval.timeslotRounding.label'), h("tooltip-component", { key: '75dc83d75698277295628af454b6129a135c8545' }, h("info-icon", { key: '7a8bd15f2d3579e854af3dadfcf93d2bc2142afb', slot: "tooltip-icon" }), h("span", { key: '0518fc031ef327b8d590e6b29cabdfcfbc473d50', slot: "tooltip-content" }, instance.t('nylasTimeslotInterval.timeslotRounding.tooltip.desc')))), this.componentLoaded && (h("radio-button-group", { name: "interval-preference", defaultSelectedValue: this.selectedRoundTo ? 'rounding' : 'no-rounding', options: [
|
|
154
154
|
{
|
|
155
155
|
value: 'no-rounding',
|
|
156
156
|
label: instance.t('nylasTimeslotInterval.timeslotRoundingOptions.noRounding.label'),
|
package/dist/components/utils.js
CHANGED
|
@@ -8303,6 +8303,7 @@ const nylasSelectEventType$8 = {
|
|
|
8303
8303
|
returnToAllSchedulingPages: "Return to all scheduling pages",
|
|
8304
8304
|
createEventHeaderTitle: "Create an event",
|
|
8305
8305
|
eventTypeHeaderTitle: "Event type",
|
|
8306
|
+
noEventTypesEnabled: "No event types enabled",
|
|
8306
8307
|
eventTypeOptions: {
|
|
8307
8308
|
oneOnOne: {
|
|
8308
8309
|
label: "1:1",
|
|
@@ -9248,6 +9249,7 @@ const nylasSelectEventType$7 = {
|
|
|
9248
9249
|
returnToAllSchedulingPages: "Retour à toutes les pages de planification",
|
|
9249
9250
|
createEventHeaderTitle: "Créer un événement",
|
|
9250
9251
|
eventTypeHeaderTitle: "Type d'événement",
|
|
9252
|
+
noEventTypesEnabled: "Aucun type d'événement activé",
|
|
9251
9253
|
eventTypeOptions: {
|
|
9252
9254
|
oneOnOne: {
|
|
9253
9255
|
label: "1:1",
|
|
@@ -10193,6 +10195,7 @@ const nylasSelectEventType$6 = {
|
|
|
10193
10195
|
returnToAllSchedulingPages: "Volver a todas las páginas de programación",
|
|
10194
10196
|
createEventHeaderTitle: "Crear un evento",
|
|
10195
10197
|
eventTypeHeaderTitle: "Tipo de evento",
|
|
10198
|
+
noEventTypesEnabled: "No hay tipos de evento habilitados",
|
|
10196
10199
|
eventTypeOptions: {
|
|
10197
10200
|
oneOnOne: {
|
|
10198
10201
|
label: "1:1",
|
|
@@ -11138,6 +11141,7 @@ const nylasSelectEventType$5 = {
|
|
|
11138
11141
|
returnToAllSchedulingPages: "すべてのスケジュールページに戻る",
|
|
11139
11142
|
createEventHeaderTitle: "イベントを作成する",
|
|
11140
11143
|
eventTypeHeaderTitle: "イベントの種類",
|
|
11144
|
+
noEventTypesEnabled: "イベントの種類が有効化されていません",
|
|
11141
11145
|
eventTypeOptions: {
|
|
11142
11146
|
oneOnOne: {
|
|
11143
11147
|
label: "1:1",
|
|
@@ -12083,6 +12087,7 @@ const nylasSelectEventType$4 = {
|
|
|
12083
12087
|
returnToAllSchedulingPages: "Zurück zur Planungsseite",
|
|
12084
12088
|
createEventHeaderTitle: "Ereignis erstellen",
|
|
12085
12089
|
eventTypeHeaderTitle: "Ereignisart",
|
|
12090
|
+
noEventTypesEnabled: "Keine Ereignisarten aktiviert",
|
|
12086
12091
|
eventTypeOptions: {
|
|
12087
12092
|
oneOnOne: {
|
|
12088
12093
|
label: "1:1",
|
|
@@ -13026,6 +13031,7 @@ const nylasSelectEventType$3 = {
|
|
|
13026
13031
|
returnToAllSchedulingPages: "Tillbaka till alla schemaläggningssidor",
|
|
13027
13032
|
createEventHeaderTitle: "Skapa ett evenemang",
|
|
13028
13033
|
eventTypeHeaderTitle: "Evenemangstyp",
|
|
13034
|
+
noEventTypesEnabled: "Inga evenemangstyper aktiverade",
|
|
13029
13035
|
eventTypeOptions: {
|
|
13030
13036
|
oneOnOne: {
|
|
13031
13037
|
label: "1:1",
|
|
@@ -13967,6 +13973,7 @@ const nylasSelectEventType$2 = {
|
|
|
13967
13973
|
returnToAllSchedulingPages: "返回所有日程安排页面",
|
|
13968
13974
|
createEventHeaderTitle: "创建活动",
|
|
13969
13975
|
eventTypeHeaderTitle: "活动类型",
|
|
13976
|
+
noEventTypesEnabled: "没有活动类型启用",
|
|
13970
13977
|
eventTypeOptions: {
|
|
13971
13978
|
oneOnOne: {
|
|
13972
13979
|
label: "1:1",
|
|
@@ -14908,6 +14915,7 @@ const nylasSelectEventType$1 = {
|
|
|
14908
14915
|
returnToAllSchedulingPages: "Terug naar alle planningspagina's",
|
|
14909
14916
|
createEventHeaderTitle: "Evenement maken",
|
|
14910
14917
|
eventTypeHeaderTitle: "Evenementtype",
|
|
14918
|
+
noEventTypesEnabled: "Geen evenementtypen ingeschakeld",
|
|
14911
14919
|
eventTypeOptions: {
|
|
14912
14920
|
oneOnOne: {
|
|
14913
14921
|
label: "1:1",
|
|
@@ -15849,6 +15857,7 @@ const nylasSelectEventType = {
|
|
|
15849
15857
|
returnToAllSchedulingPages: "모든 스케줄링 페이지로 돌아가기",
|
|
15850
15858
|
createEventHeaderTitle: "이벤트 만들기",
|
|
15851
15859
|
eventTypeHeaderTitle: "이벤트 유형",
|
|
15860
|
+
noEventTypesEnabled: "이벤트 유형이 활성화되지 않았습니다.",
|
|
15852
15861
|
eventTypeOptions: {
|
|
15853
15862
|
oneOnOne: {
|
|
15854
15863
|
label: "1:1",
|