mirror of
https://github.com/n8n-io/n8n.git
synced 2024-11-16 01:24:05 -08:00
61e26804ba
* ⚡ enabled array-type * ⚡ await-thenable on * ⚡ ban-types on * ⚡ default-param-last on * ⚡ dot-notation on * ⚡ member-delimiter-style on * ⚡ no-duplicate-imports on * ⚡ no-empty-interface on * ⚡ no-floating-promises on * ⚡ no-for-in-array on * ⚡ no-invalid-void-type on * ⚡ no-loop-func on * ⚡ no-shadow on * ⚡ ban-ts-comment re enabled * ⚡ @typescript-eslint/lines-between-class-members on * address my own comment * @typescript-eslint/return-await on * @typescript-eslint/promise-function-async on * @typescript-eslint/no-unnecessary-boolean-literal-compare on * @typescript-eslint/no-unnecessary-type-assertion on * prefer-const on * @typescript-eslint/prefer-optional-chain on Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
54 lines
1.8 KiB
TypeScript
54 lines
1.8 KiB
TypeScript
import { IExecuteFunctions, ILoadOptionsFunctions } from 'n8n-core';
|
|
|
|
import { IDataObject, IHookFunctions, IWebhookFunctions } from 'n8n-workflow';
|
|
|
|
import { beeminderApiRequest, beeminderApiRequestAllItems } from './GenericFunctions';
|
|
|
|
export async function createDatapoint(
|
|
this: IExecuteFunctions | IWebhookFunctions | IHookFunctions | ILoadOptionsFunctions,
|
|
data: IDataObject,
|
|
) {
|
|
const credentials = await this.getCredentials('beeminderApi');
|
|
|
|
const endpoint = `/users/${credentials.user}/goals/${data.goalName}/datapoints.json`;
|
|
|
|
return beeminderApiRequest.call(this, 'POST', endpoint, data);
|
|
}
|
|
|
|
export async function getAllDatapoints(
|
|
this: IExecuteFunctions | IHookFunctions | ILoadOptionsFunctions,
|
|
data: IDataObject,
|
|
) {
|
|
const credentials = await this.getCredentials('beeminderApi');
|
|
|
|
const endpoint = `/users/${credentials.user}/goals/${data.goalName}/datapoints.json`;
|
|
|
|
if (data.count !== undefined) {
|
|
return beeminderApiRequest.call(this, 'GET', endpoint, {}, data);
|
|
}
|
|
|
|
return beeminderApiRequestAllItems.call(this, 'GET', endpoint, {}, data);
|
|
}
|
|
|
|
export async function updateDatapoint(
|
|
this: IExecuteFunctions | IWebhookFunctions | IHookFunctions | ILoadOptionsFunctions,
|
|
data: IDataObject,
|
|
) {
|
|
const credentials = await this.getCredentials('beeminderApi');
|
|
|
|
const endpoint = `/users/${credentials.user}/goals/${data.goalName}/datapoints/${data.datapointId}.json`;
|
|
|
|
return beeminderApiRequest.call(this, 'PUT', endpoint, data);
|
|
}
|
|
|
|
export async function deleteDatapoint(
|
|
this: IExecuteFunctions | IWebhookFunctions | IHookFunctions | ILoadOptionsFunctions,
|
|
data: IDataObject,
|
|
) {
|
|
const credentials = await this.getCredentials('beeminderApi');
|
|
|
|
const endpoint = `/users/${credentials.user}/goals/${data.goalName}/datapoints/${data.datapointId}.json`;
|
|
|
|
return beeminderApiRequest.call(this, 'DELETE', endpoint);
|
|
}
|