Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(Google Calendar Node): Updates and fixes #10715

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
5fda7ac
fix
michael-radency Sep 6, 2024
3f27176
Merge branch 'master' of https://github.com/n8n-io/n8n into node-1597…
michael-radency Sep 11, 2024
fb4ae61
get event instances
michael-radency Sep 12, 2024
5311caf
Merge branch 'master' of https://github.com/n8n-io/n8n into node-1597…
michael-radency Sep 12, 2024
57ad8dd
target selector for instance update
michael-radency Sep 12, 2024
a8eced5
display options update
michael-radency Sep 12, 2024
a660f6a
Merge branch 'master' of https://github.com/n8n-io/n8n into node-1597…
michael-radency Oct 11, 2024
29c900c
Merge branch 'master' of https://github.com/n8n-io/n8n into node-1597…
michael-radency Oct 11, 2024
1084c72
Merge branch 'master' of https://github.com/n8n-io/n8n into node-1597…
michael-radency Oct 14, 2024
b0c2c59
update
michael-radency Oct 14, 2024
e00141a
Merge branch 'master' of https://github.com/n8n-io/n8n into node-1597…
michael-radency Dec 20, 2024
62e6667
review update
michael-radency Dec 20, 2024
61e47a2
hint update
michael-radency Dec 20, 2024
4e3c189
hint refactoring
michael-radency Dec 20, 2024
aec9489
tests
michael-radency Dec 20, 2024
050ec1e
Merge branch 'master' of https://github.com/n8n-io/n8n into node-1597…
michael-radency Dec 20, 2024
59efaad
Merge branch 'master' of https://github.com/n8n-io/n8n into node-1597…
michael-radency Jan 2, 2025
c2185c8
fix
michael-radency Jan 3, 2025
2128c02
tests
michael-radency Jan 3, 2025
c1f7ff0
Merge branch 'master' of https://github.com/n8n-io/n8n into node-2015…
michael-radency Jan 3, 2025
d187b11
Merge branch 'master' of https://github.com/n8n-io/n8n into node-2015…
michael-radency Jan 6, 2025
948aced
review update
michael-radency Jan 6, 2025
85cb052
Merge branch 'master' of https://github.com/n8n-io/n8n into node-2015…
michael-radency Jan 6, 2025
66880f8
Merge branch 'master' of https://github.com/n8n-io/n8n into node-1597…
michael-radency Jan 6, 2025
a31e759
review fixes
michael-radency Jan 6, 2025
5a0120b
Merge branch 'master' of https://github.com/n8n-io/n8n into node-1597…
michael-radency Jan 6, 2025
93fc144
Merge branch 'master' of https://github.com/n8n-io/n8n into node-1597…
michael-radency Jan 7, 2025
0c26099
tests
michael-radency Jan 7, 2025
59b09bd
Merge branch 'master' of https://github.com/n8n-io/n8n into node-2015…
michael-radency Jan 7, 2025
0c07ace
dateTime required parameter validation fix
michael-radency Jan 7, 2025
501c58e
Merge branch 'master' of https://github.com/n8n-io/n8n into node-2015…
michael-radency Jan 7, 2025
468cf7f
Merge branch 'master' of https://github.com/n8n-io/n8n into node-1597…
michael-radency Jan 8, 2025
e33db24
defaults update, js Date support, reorder keys in return item, tests
michael-radency Jan 8, 2025
f20e023
Merge branch 'master' of https://github.com/n8n-io/n8n into node-1597…
michael-radency Jan 8, 2025
07aabfd
Merge branch 'node-2015-google-calendar-confusing-errors' of https://…
michael-radency Jan 8, 2025
0d20f80
Merge branch 'master' of https://github.com/n8n-io/n8n into node-1597…
michael-radency Jan 8, 2025
8241f4d
parameters versions update
michael-radency Jan 8, 2025
94d2908
Merge branch 'master' of https://github.com/n8n-io/n8n into node-1597…
michael-radency Jan 8, 2025
3042749
Update packages/nodes-base/nodes/Google/Calendar/EventDescription.ts
michael-radency Jan 9, 2025
8a69d62
Update packages/nodes-base/nodes/Google/Calendar/EventDescription.ts
michael-radency Jan 9, 2025
64a5129
Merge branch 'master' of https://github.com/n8n-io/n8n into node-1597…
michael-radency Jan 9, 2025
d8fd569
Merge branch 'node-1597-google-calendar-next-occurrence-of-recurring-…
michael-radency Jan 9, 2025
2f4adb2
lint fix
michael-radency Jan 9, 2025
6ba3489
spelling fixes
michael-radency Jan 9, 2025
be0714b
Merge branch 'master' of https://github.com/n8n-io/n8n into node-1597…
michael-radency Jan 9, 2025
106829f
Merge branch 'master' of https://github.com/n8n-io/n8n into node-1597…
michael-radency Jan 10, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions packages/nodes-base/nodes/Google/Calendar/CalendarDescription.ts
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,7 @@ export const calendarFields: INodeProperties[] = [
show: {
operation: ['availability'],
resource: ['calendar'],
'@version': [{ _cnd: { lt: 1.3 } }],
},
},
default: '',
Expand All @@ -98,11 +99,44 @@ export const calendarFields: INodeProperties[] = [
show: {
operation: ['availability'],
resource: ['calendar'],
'@version': [{ _cnd: { lt: 1.3 } }],
},
},
default: '',
description: 'End of the interval',
},
{
displayName: 'Start Time',
name: 'timeMin',
type: 'dateTime',
required: true,
displayOptions: {
show: {
operation: ['availability'],
resource: ['calendar'],
'@version': [{ _cnd: { gte: 1.3 } }],
},
},
default: '={{ $now }}',
description:
'Start of the interval, use <a href="https://docs.n8n.io/code/cookbook/luxon/" target="_blank">expression</a> to set a date, or switch to fixed mode to choose date from widget',
},
{
displayName: 'End Time',
name: 'timeMax',
type: 'dateTime',
required: true,
displayOptions: {
show: {
operation: ['availability'],
resource: ['calendar'],
'@version': [{ _cnd: { gte: 1.3 } }],
},
},
default: "={{ $now.plus(1, 'hour') }}",
description:
'End of the interval, use <a href="https://docs.n8n.io/code/cookbook/luxon/" target="_blank">expression</a> to set a date, or switch to fixed mode to choose date from widget',
},
{
displayName: 'Options',
name: 'options',
Expand Down
167 changes: 157 additions & 10 deletions packages/nodes-base/nodes/Google/Calendar/EventDescription.ts
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,7 @@ export const eventFields: INodeProperties[] = [
show: {
operation: ['create'],
resource: ['event'],
'@version': [{ _cnd: { lt: 1.3 } }],
},
},
default: '',
Expand All @@ -126,11 +127,44 @@ export const eventFields: INodeProperties[] = [
show: {
operation: ['create'],
resource: ['event'],
'@version': [{ _cnd: { lt: 1.3 } }],
},
},
default: '',
description: 'End time of the event',
},
{
displayName: 'Start',
name: 'start',
type: 'dateTime',
required: true,
displayOptions: {
show: {
operation: ['create'],
resource: ['event'],
'@version': [{ _cnd: { gte: 1.3 } }],
},
},
default: '={{ $now }}',
description:
'Start time of the event, use <a href="https://docs.n8n.io/code/cookbook/luxon/" target="_blank">expression</a> to set a date, or switch to fixed mode to choose date from widget',
},
{
displayName: 'End',
name: 'end',
type: 'dateTime',
required: true,
displayOptions: {
show: {
operation: ['create'],
resource: ['event'],
'@version': [{ _cnd: { gte: 1.3 } }],
},
},
default: "={{ $now.plus(1, 'hour') }}",
description:
'End time of the event, use <a href="https://docs.n8n.io/code/cookbook/luxon/" target="_blank">expression</a> to set a date, or switch to fixed mode to choose date from widget',
},
{
displayName: 'Use Default Reminders',
name: 'useDefaultReminders',
Expand Down Expand Up @@ -553,6 +587,19 @@ export const eventFields: INodeProperties[] = [
description:
'The maximum number of attendees to include in the response. If there are more than the specified number of attendees, only the participant is returned.',
},
{
displayName: 'Return Next Instance of Recurring Event',
name: 'returnNextInstance',
type: 'boolean',
default: false,
description:
'Whether to return the next instance of a recurring event instead of the event itself',
displayOptions: {
show: {
'@version': [{ _cnd: { gte: 1.3 } }],
},
},
},
{
displayName: 'Timezone',
name: 'timeZone',
Expand Down Expand Up @@ -629,6 +676,36 @@ export const eventFields: INodeProperties[] = [
default: 50,
description: 'Max number of results to return',
},
{
displayName: 'After',
name: 'timeMin',
type: 'dateTime',
default: '={{ $now }}',
description:
'At least some part of the event must be after this time, use <a href="https://docs.n8n.io/code/cookbook/luxon/" target="_blank">expression</a> to set a date, or switch to fixed mode to choose date from widget',
displayOptions: {
show: {
'@version': [{ _cnd: { gte: 1.3 } }],
operation: ['getAll'],
resource: ['event'],
},
},
},
{
displayName: 'Before',
name: 'timeMax',
type: 'dateTime',
default: '={{ $now.plus({ week: 1 }) }}',
description:
'At least some part of the event must be before this time, use <a href="https://docs.n8n.io/code/cookbook/luxon/" target="_blank">expression</a> to set a date, or switch to fixed mode to choose date from widget',
displayOptions: {
show: {
'@version': [{ _cnd: { gte: 1.3 } }],
operation: ['getAll'],
resource: ['event'],
},
},
},
{
displayName: 'Options',
name: 'options',
Expand All @@ -647,14 +724,39 @@ export const eventFields: INodeProperties[] = [
name: 'timeMin',
type: 'dateTime',
default: '',
description: 'At least some part of the event must be after this time',
description:
'At least some part of the event must be after this time, use <a href="https://docs.n8n.io/code/cookbook/luxon/" target="_blank">expression</a> to set a date, or switch to fixed mode to choose date from widget',
displayOptions: {
hide: {
'@version': [{ _cnd: { gte: 1.3 } }],
},
},
},
{
displayName: 'Before',
name: 'timeMax',
type: 'dateTime',
default: '',
description: 'At least some part of the event must be before this time',
description:
'At least some part of the event must be before this time, use <a href="https://docs.n8n.io/code/cookbook/luxon/" target="_blank">expression</a> to set a date, or switch to fixed mode to choose date from widget',
displayOptions: {
hide: {
'@version': [{ _cnd: { gte: 1.3 } }],
},
},
},
{
displayName: 'Expand Events',
name: 'singleEvents',
type: 'boolean',
default: false,
description:
'Whether to expand recurring events into instances and only return single one-off events and instances of recurring events, but not the underlying recurring events themselves',
displayOptions: {
hide: {
'@version': [{ _cnd: { gte: 1.3 } }],
},
},
},
{
displayName: 'Fields',
Expand Down Expand Up @@ -708,6 +810,34 @@ export const eventFields: INodeProperties[] = [
description:
'Free text search terms to find events that match these terms in any field, except for extended properties',
},
{
displayName: 'Recurring Event Handling',
name: 'recurringEventHandling',
type: 'options',
default: 'expand',
options: [
{
name: 'All Occurrences',
value: 'expand',
description: 'Return all instances of recurring event for specified time range',
},
{
name: 'First Occurrence',
value: 'first',
description: 'Return event with specified recurrence rule',
},
{
name: 'Next Occurrence',
value: 'next',
description: 'Return next instance of recurring event',
},
],
displayOptions: {
show: {
'@version': [{ _cnd: { gte: 1.3 } }],
},
},
},
{
displayName: 'Show Deleted',
name: 'showDeleted',
Expand All @@ -723,14 +853,7 @@ export const eventFields: INodeProperties[] = [
default: false,
description: 'Whether to include hidden invitations in the result',
},
{
displayName: 'Single Events',
name: 'singleEvents',
type: 'boolean',
default: false,
description:
'Whether to expand recurring events into instances and only return single one-off events and instances of recurring events, but not the underlying recurring events themselves',
},

{
displayName: 'Timezone',
name: 'timeZone',
Expand Down Expand Up @@ -797,6 +920,30 @@ export const eventFields: INodeProperties[] = [
},
default: '',
},
{
displayName: 'Modify',
name: 'modifyTarget',
type: 'options',
options: [
{
name: 'Recurring Event Instance',
value: 'instance',
},
{
name: 'Recurring Event',
value: 'event',
},
],
default: 'instance',
displayOptions: {
show: {
'@version': [{ _cnd: { gte: 1.3 } }],
resource: ['event'],
operation: ['update'],
eventId: [{ _cnd: { includes: '_' } }],
},
},
},
{
displayName: 'Use Default Reminders',
name: 'useDefaultReminders',
Expand Down
5 changes: 5 additions & 0 deletions packages/nodes-base/nodes/Google/Calendar/EventInterface.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,3 +34,8 @@ export interface IEvent {
visibility?: string;
conferenceData?: IConferenceData;
}

export type RecurringEventInstance = {
recurringEventId?: string;
start: { dateTime: string; date: string };
};
Loading
Loading