refactor(core): Introduce overload for record-type node parameter (no-changelog) (#4648)

* 📘 Set up overload

* 🔥 Remove inferrable record assertions

* 👕 Fix semicolon

* 👕 Fix another semicolon
This commit is contained in:
Iván Ovejero
2022-11-18 16:29:44 +01:00
committed by GitHub
parent 0565194473
commit 0d9eeea024
202 changed files with 1003 additions and 985 deletions

View File

@@ -196,7 +196,7 @@ export class MicrosoftDynamicsCrm implements INodeType {
if (operation === 'get') {
//https://docs.microsoft.com/en-us/powerapps/developer/data-platform/webapi/retrieve-entity-using-web-api
const accountId = this.getNodeParameter('accountId', i) as string;
const options = this.getNodeParameter('options', i) as IDataObject;
const options = this.getNodeParameter('options', i);
if (options.returnFields) {
qs['$select'] = (options.returnFields as string[]).join(',');
}
@@ -215,8 +215,8 @@ export class MicrosoftDynamicsCrm implements INodeType {
if (operation === 'getAll') {
//https://docs.microsoft.com/en-us/powerapps/developer/data-platform/webapi/query-data-web-api
const returnAll = this.getNodeParameter('returnAll', i);
const options = this.getNodeParameter('options', i) as IDataObject;
const filters = this.getNodeParameter('filters', i) as IDataObject;
const options = this.getNodeParameter('options', i);
const filters = this.getNodeParameter('filters', i);
if (options.returnFields) {
qs['$select'] = (options.returnFields as string[]).join(',');
}

View File

@@ -180,7 +180,7 @@ export class MicrosoftExcel implements INodeType {
const workbookId = this.getNodeParameter('workbook', 0) as string;
const worksheetId = this.getNodeParameter('worksheet', 0) as string;
const tableId = this.getNodeParameter('table', 0) as string;
const additionalFields = this.getNodeParameter('additionalFields', 0) as IDataObject;
const additionalFields = this.getNodeParameter('additionalFields', 0);
const body: IDataObject = {};
if (additionalFields.index) {
@@ -263,7 +263,7 @@ export class MicrosoftExcel implements INodeType {
const returnAll = this.getNodeParameter('returnAll', i);
const rawData = this.getNodeParameter('rawData', i);
if (rawData) {
const filters = this.getNodeParameter('filters', i) as IDataObject;
const filters = this.getNodeParameter('filters', i);
if (filters.fields) {
qs['$select'] = filters.fields;
}
@@ -325,7 +325,7 @@ export class MicrosoftExcel implements INodeType {
const returnAll = this.getNodeParameter('returnAll', i);
const rawData = this.getNodeParameter('rawData', i);
if (rawData) {
const filters = this.getNodeParameter('filters', i) as IDataObject;
const filters = this.getNodeParameter('filters', i);
if (filters.fields) {
qs['$select'] = filters.fields;
}
@@ -408,7 +408,7 @@ export class MicrosoftExcel implements INodeType {
const tableId = this.getNodeParameter('table', i) as string;
const lookupColumn = this.getNodeParameter('lookupColumn', i) as string;
const lookupValue = this.getNodeParameter('lookupValue', i) as string;
const options = this.getNodeParameter('options', i) as IDataObject;
const options = this.getNodeParameter('options', i);
responseData = await microsoftApiRequestAllItemsSkip.call(
this,
@@ -488,7 +488,7 @@ export class MicrosoftExcel implements INodeType {
//https://docs.microsoft.com/en-us/graph/api/worksheetcollection-add?view=graph-rest-1.0&tabs=http
if (operation === 'addWorksheet') {
const workbookId = this.getNodeParameter('workbook', i) as string;
const additionalFields = this.getNodeParameter('additionalFields', i) as IDataObject;
const additionalFields = this.getNodeParameter('additionalFields', i);
const body: IDataObject = {};
if (additionalFields.name) {
body.name = additionalFields.name;
@@ -520,7 +520,7 @@ export class MicrosoftExcel implements INodeType {
}
if (operation === 'getAll') {
const returnAll = this.getNodeParameter('returnAll', i);
const filters = this.getNodeParameter('filters', i) as IDataObject;
const filters = this.getNodeParameter('filters', i);
if (filters.fields) {
qs['$select'] = filters.fields;
}
@@ -582,7 +582,7 @@ export class MicrosoftExcel implements INodeType {
if (operation === 'getAll') {
const returnAll = this.getNodeParameter('returnAll', i);
const workbookId = this.getNodeParameter('workbook', i) as string;
const filters = this.getNodeParameter('filters', i) as IDataObject;
const filters = this.getNodeParameter('filters', i);
if (filters.fields) {
qs['$select'] = filters.fields;
}
@@ -614,7 +614,7 @@ export class MicrosoftExcel implements INodeType {
const range = this.getNodeParameter('range', i) as string;
const rawData = this.getNodeParameter('rawData', i);
if (rawData) {
const filters = this.getNodeParameter('filters', i) as IDataObject;
const filters = this.getNodeParameter('filters', i);
if (filters.fields) {
qs['$select'] = filters.fields;
}

View File

@@ -185,7 +185,7 @@ export class MicrosoftGraphSecurity implements INodeType {
},
};
const updateFields = this.getNodeParameter('updateFields', i) as IDataObject;
const updateFields = this.getNodeParameter('updateFields', i);
if (!Object.keys(updateFields).length) {
throwOnEmptyUpdate.call(this);

View File

@@ -74,7 +74,7 @@ export class MicrosoftOneDrive implements INodeType {
//https://docs.microsoft.com/en-us/onedrive/developer/rest-api/api/driveitem_copy?view=odsp-graph-online
if (operation === 'copy') {
const fileId = this.getNodeParameter('fileId', i) as string;
const additionalFields = this.getNodeParameter('additionalFields', i) as IDataObject;
const additionalFields = this.getNodeParameter('additionalFields', i);
const parentReference = this.getNodeParameter('parentReference', i) as IDataObject;
const body: IDataObject = {};
if (parentReference) {
@@ -265,7 +265,7 @@ export class MicrosoftOneDrive implements INodeType {
const names = (this.getNodeParameter('name', i) as string)
.split('/')
.filter((s) => s.trim() !== '');
const options = this.getNodeParameter('options', i) as IDataObject;
const options = this.getNodeParameter('options', i);
let parentFolderId = options.parentFolderId ? options.parentFolderId : null;
for (const name of names) {
const body: IDataObject = {

View File

@@ -161,7 +161,7 @@ export class MicrosoftOutlook implements INodeType {
for (let i = 0; i < length; i++) {
try {
const messageId = this.getNodeParameter('messageId', i) as string;
const additionalFields = this.getNodeParameter('additionalFields', i) as IDataObject;
const additionalFields = this.getNodeParameter('additionalFields', i);
if (additionalFields.fields) {
qs['$select'] = additionalFields.fields;
@@ -205,7 +205,7 @@ export class MicrosoftOutlook implements INodeType {
try {
const messageId = this.getNodeParameter('messageId', i) as string;
const updateFields = this.getNodeParameter('updateFields', i) as IDataObject;
const updateFields = this.getNodeParameter('updateFields', i);
// Create message from optional fields
const body: IDataObject = createMessage(updateFields);
@@ -233,7 +233,7 @@ export class MicrosoftOutlook implements INodeType {
if (operation === 'create') {
for (let i = 0; i < length; i++) {
try {
const additionalFields = this.getNodeParameter('additionalFields', i) as IDataObject;
const additionalFields = this.getNodeParameter('additionalFields', i);
const subject = this.getNodeParameter('subject', i) as string;
@@ -479,7 +479,7 @@ export class MicrosoftOutlook implements INodeType {
for (let i = 0; i < length; i++) {
try {
const returnAll = this.getNodeParameter('returnAll', i);
additionalFields = this.getNodeParameter('additionalFields', i) as IDataObject;
additionalFields = this.getNodeParameter('additionalFields', i);
if (additionalFields.fields) {
qs['$select'] = additionalFields.fields;
@@ -556,7 +556,7 @@ export class MicrosoftOutlook implements INodeType {
if (operation === 'send') {
for (let i = 0; i < length; i++) {
try {
const additionalFields = this.getNodeParameter('additionalFields', i) as IDataObject;
const additionalFields = this.getNodeParameter('additionalFields', i);
const toRecipients = this.getNodeParameter('toRecipients', i) as string;
@@ -634,7 +634,7 @@ export class MicrosoftOutlook implements INodeType {
try {
const messageId = this.getNodeParameter('messageId', i) as string;
const binaryPropertyName = this.getNodeParameter('binaryPropertyName', 0) as string;
const additionalFields = this.getNodeParameter('additionalFields', i) as IDataObject;
const additionalFields = this.getNodeParameter('additionalFields', i);
if (items[i].binary === undefined) {
throw new NodeOperationError(this.getNode(), 'No binary data exists on item!');
@@ -808,7 +808,7 @@ export class MicrosoftOutlook implements INodeType {
try {
const messageId = this.getNodeParameter('messageId', i) as string;
const attachmentId = this.getNodeParameter('attachmentId', i) as string;
const additionalFields = this.getNodeParameter('additionalFields', i) as IDataObject;
const additionalFields = this.getNodeParameter('additionalFields', i);
// Have sane defaults so we don't fetch attachment data in this operation
qs['$select'] = 'id,lastModifiedDateTime,name,contentType,size,isInline';
@@ -839,7 +839,7 @@ export class MicrosoftOutlook implements INodeType {
try {
const messageId = this.getNodeParameter('messageId', i) as string;
const returnAll = this.getNodeParameter('returnAll', i);
const additionalFields = this.getNodeParameter('additionalFields', i) as IDataObject;
const additionalFields = this.getNodeParameter('additionalFields', i);
// Have sane defaults so we don't fetch attachment data in this operation
qs['$select'] = 'id,lastModifiedDateTime,name,contentType,size,isInline';
@@ -939,7 +939,7 @@ export class MicrosoftOutlook implements INodeType {
for (let i = 0; i < length; i++) {
try {
const folderId = this.getNodeParameter('folderId', i) as string;
const additionalFields = this.getNodeParameter('additionalFields', i) as IDataObject;
const additionalFields = this.getNodeParameter('additionalFields', i);
if (additionalFields.fields) {
qs['$select'] = additionalFields.fields;
@@ -970,7 +970,7 @@ export class MicrosoftOutlook implements INodeType {
for (let i = 0; i < length; i++) {
try {
const returnAll = this.getNodeParameter('returnAll', i);
const additionalFields = this.getNodeParameter('additionalFields', i) as IDataObject;
const additionalFields = this.getNodeParameter('additionalFields', i);
if (additionalFields.fields) {
qs['$select'] = additionalFields.fields;
@@ -1010,7 +1010,7 @@ export class MicrosoftOutlook implements INodeType {
try {
const folderId = this.getNodeParameter('folderId', i) as string;
const returnAll = this.getNodeParameter('returnAll', i);
const additionalFields = this.getNodeParameter('additionalFields', i) as IDataObject;
const additionalFields = this.getNodeParameter('additionalFields', i);
if (additionalFields.fields) {
qs['$select'] = additionalFields.fields;
@@ -1054,7 +1054,7 @@ export class MicrosoftOutlook implements INodeType {
for (let i = 0; i < length; i++) {
try {
const folderId = this.getNodeParameter('folderId', i) as string;
const updateFields = this.getNodeParameter('updateFields', i) as IDataObject;
const updateFields = this.getNodeParameter('updateFields', i);
const body: IDataObject = {
...updateFields,
@@ -1084,7 +1084,7 @@ export class MicrosoftOutlook implements INodeType {
if (operation === 'getAll') {
const folderId = this.getNodeParameter('folderId', i) as string;
const returnAll = this.getNodeParameter('returnAll', i);
const additionalFields = this.getNodeParameter('additionalFields', i) as IDataObject;
const additionalFields = this.getNodeParameter('additionalFields', i);
if (additionalFields.fields) {
qs['$select'] = additionalFields.fields;

View File

@@ -272,7 +272,7 @@ export class MicrosoftTeams implements INodeType {
if (operation === 'create') {
const teamId = this.getNodeParameter('teamId', i) as string;
const name = this.getNodeParameter('name', i) as string;
const options = this.getNodeParameter('options', i) as IDataObject;
const options = this.getNodeParameter('options', i);
const body: IDataObject = {
displayName: name,
};
@@ -337,7 +337,7 @@ export class MicrosoftTeams implements INodeType {
if (operation === 'update') {
const teamId = this.getNodeParameter('teamId', i) as string;
const channelId = this.getNodeParameter('channelId', i) as string;
const updateFields = this.getNodeParameter('updateFields', i) as IDataObject;
const updateFields = this.getNodeParameter('updateFields', i);
const body: IDataObject = {};
if (updateFields.name) {
body.displayName = updateFields.name as string;
@@ -362,7 +362,7 @@ export class MicrosoftTeams implements INodeType {
const channelId = this.getNodeParameter('channelId', i) as string;
const messageType = this.getNodeParameter('messageType', i) as string;
const message = this.getNodeParameter('message', i) as string;
const options = this.getNodeParameter('options', i) as IDataObject;
const options = this.getNodeParameter('options', i);
const body: IDataObject = {
body: {
@@ -472,7 +472,7 @@ export class MicrosoftTeams implements INodeType {
const planId = this.getNodeParameter('planId', i) as string;
const bucketId = this.getNodeParameter('bucketId', i) as string;
const title = this.getNodeParameter('title', i) as string;
const additionalFields = this.getNodeParameter('additionalFields', i) as IDataObject;
const additionalFields = this.getNodeParameter('additionalFields', i);
const body: IDataObject = {
planId,
bucketId,
@@ -581,7 +581,7 @@ export class MicrosoftTeams implements INodeType {
//https://docs.microsoft.com/en-us/graph/api/plannertask-update?view=graph-rest-1.0&tabs=http
if (operation === 'update') {
const taskId = this.getNodeParameter('taskId', i) as string;
const updateFields = this.getNodeParameter('updateFields', i) as IDataObject;
const updateFields = this.getNodeParameter('updateFields', i);
const body: IDataObject = {};
Object.assign(body, updateFields);

View File

@@ -108,7 +108,7 @@ export class MicrosoftToDo implements INodeType {
const body: IDataObject = {
applicationName: this.getNodeParameter('applicationName', i) as string,
displayName: this.getNodeParameter('displayName', i) as string,
...(this.getNodeParameter('additionalFields', i) as IDataObject[]),
...(this.getNodeParameter('additionalFields', i)),
};
responseData = await microsoftApiRequest.call(
@@ -182,7 +182,7 @@ export class MicrosoftToDo implements INodeType {
const linkedResourceId = this.getNodeParameter('linkedResourceId', i) as string;
const body: IDataObject = {
...(this.getNodeParameter('updateFields', i) as IDataObject[]),
...this.getNodeParameter('updateFields', i),
};
responseData = await microsoftApiRequest.call(
@@ -205,7 +205,7 @@ export class MicrosoftToDo implements INodeType {
const taskListId = this.getNodeParameter('taskListId', i) as string;
const body: IDataObject = {
title: this.getNodeParameter('title', i) as string,
...(this.getNodeParameter('additionalFields', i) as IDataObject[]),
...this.getNodeParameter('additionalFields', i),
};
if (body.content) {
@@ -288,7 +288,7 @@ export class MicrosoftToDo implements INodeType {
const taskListId = this.getNodeParameter('taskListId', i) as string;
const taskId = this.getNodeParameter('taskId', i) as string;
const body: IDataObject = {
...(this.getNodeParameter('updateFields', i) as IDataObject[]),
...this.getNodeParameter('updateFields', i),
};
if (body.content) {