n8n-nodes-base 0.223.2 → 0.224.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/README.md +2 -0
- package/dist/build.tsbuildinfo +1 -1
- package/dist/credentials/GoogleBigQueryOAuth2Api.credentials.js +5 -1
- package/dist/credentials/GoogleBigQueryOAuth2Api.credentials.js.map +1 -1
- package/dist/known/credentials.json +3 -1
- package/dist/methods/defined.json +5 -4
- package/dist/methods/referenced.json +2 -1
- package/dist/nodes/Clockify/ClockifyTrigger.node.js +3 -4
- package/dist/nodes/Clockify/ClockifyTrigger.node.js.map +1 -1
- package/dist/nodes/Clockify/CommonDtos.d.ts +2 -2
- package/dist/nodes/Clockify/CommonDtos.js.map +1 -1
- package/dist/nodes/Clockify/EntryTypeEnum.d.ts +1 -1
- package/dist/nodes/Clockify/EntryTypeEnum.js.map +1 -1
- package/dist/nodes/Clockify/ProjectInterfaces.d.ts +2 -2
- package/dist/nodes/Clockify/ProjectInterfaces.js.map +1 -1
- package/dist/nodes/Clockify/UserDtos.d.ts +1 -1
- package/dist/nodes/Clockify/UserDtos.js.map +1 -1
- package/dist/nodes/Clockify/WorkpaceInterfaces.d.ts +4 -4
- package/dist/nodes/Clockify/WorkpaceInterfaces.js.map +1 -1
- package/dist/nodes/Code/Code.node.js +2 -2
- package/dist/nodes/Code/Code.node.js.map +1 -1
- package/dist/nodes/Cortex/AnalyzerDescriptions.js +4 -5
- package/dist/nodes/Cortex/AnalyzerDescriptions.js.map +1 -1
- package/dist/nodes/Cortex/AnalyzerInterface.d.ts +3 -3
- package/dist/nodes/Cortex/AnalyzerInterface.js.map +1 -1
- package/dist/nodes/Cortex/ResponderDescription.js +12 -13
- package/dist/nodes/Cortex/ResponderDescription.js.map +1 -1
- package/dist/nodes/CrateDb/CrateDb.node.js +4 -0
- package/dist/nodes/CrateDb/CrateDb.node.js.map +1 -1
- package/dist/nodes/EmailSend/v1/EmailSendV1.node.js +0 -6
- package/dist/nodes/EmailSend/v1/EmailSendV1.node.js.map +1 -1
- package/dist/nodes/Formstack/GenericFunctions.d.ts +1 -1
- package/dist/nodes/Formstack/GenericFunctions.js.map +1 -1
- package/dist/nodes/Freshdesk/Freshdesk.node.js.map +1 -1
- package/dist/nodes/Function/Function.node.js +1 -1
- package/dist/nodes/Function/Function.node.js.map +1 -1
- package/dist/nodes/FunctionItem/FunctionItem.node.js +2 -2
- package/dist/nodes/FunctionItem/FunctionItem.node.js.map +1 -1
- package/dist/nodes/Google/Ads/CampaignDescription.js +6 -8
- package/dist/nodes/Google/Ads/CampaignDescription.js.map +1 -1
- package/dist/nodes/Google/BigQuery/GoogleBigQuery.node.d.ts +3 -11
- package/dist/nodes/Google/BigQuery/GoogleBigQuery.node.js +9 -196
- package/dist/nodes/Google/BigQuery/GoogleBigQuery.node.js.map +1 -1
- package/dist/nodes/Google/BigQuery/test/v2/node/executeQuery.workflow.json +62 -0
- package/dist/nodes/Google/BigQuery/test/v2/node/insert.autoMapMode.workflow.json +133 -0
- package/dist/nodes/Google/BigQuery/test/v2/node/insert.manualMode.workflow.json +99 -0
- package/dist/nodes/Google/BigQuery/v1/GenericFunctions.js.map +1 -0
- package/dist/nodes/Google/BigQuery/v1/GoogleBigQueryV1.node.d.ts +14 -0
- package/dist/nodes/Google/BigQuery/v1/GoogleBigQueryV1.node.js +217 -0
- package/dist/nodes/Google/BigQuery/v1/GoogleBigQueryV1.node.js.map +1 -0
- package/dist/nodes/Google/BigQuery/v1/RecordDescription.js.map +1 -0
- package/dist/nodes/Google/BigQuery/v2/GoogleBigQueryV2.node.d.ts +12 -0
- package/dist/nodes/Google/BigQuery/v2/GoogleBigQueryV2.node.js +20 -0
- package/dist/nodes/Google/BigQuery/v2/GoogleBigQueryV2.node.js.map +1 -0
- package/dist/nodes/Google/BigQuery/v2/actions/commonDescriptions/RLC.description.d.ts +4 -0
- package/dist/nodes/Google/BigQuery/v2/actions/commonDescriptions/RLC.description.js +120 -0
- package/dist/nodes/Google/BigQuery/v2/actions/commonDescriptions/RLC.description.js.map +1 -0
- package/dist/nodes/Google/BigQuery/v2/actions/database/Database.resource.d.ts +5 -0
- package/dist/nodes/Google/BigQuery/v2/actions/database/Database.resource.js +89 -0
- package/dist/nodes/Google/BigQuery/v2/actions/database/Database.resource.js.map +1 -0
- package/dist/nodes/Google/BigQuery/v2/actions/database/executeQuery.operation.d.ts +23 -0
- package/dist/nodes/Google/BigQuery/v2/actions/database/executeQuery.operation.js +243 -0
- package/dist/nodes/Google/BigQuery/v2/actions/database/executeQuery.operation.js.map +1 -0
- package/dist/nodes/Google/BigQuery/v2/actions/database/insert.operation.d.ts +23 -0
- package/dist/nodes/Google/BigQuery/v2/actions/database/insert.operation.js +234 -0
- package/dist/nodes/Google/BigQuery/v2/actions/database/insert.operation.js.map +1 -0
- package/dist/nodes/Google/BigQuery/v2/actions/node.type.d.ts +7 -0
- package/dist/nodes/Google/BigQuery/v2/actions/node.type.js +3 -0
- package/dist/nodes/Google/BigQuery/v2/actions/node.type.js.map +1 -0
- package/dist/nodes/Google/BigQuery/v2/actions/router.d.ts +3 -0
- package/dist/nodes/Google/BigQuery/v2/actions/router.js +47 -0
- package/dist/nodes/Google/BigQuery/v2/actions/router.js.map +1 -0
- package/dist/nodes/Google/BigQuery/v2/actions/versionDescription.d.ts +2 -0
- package/dist/nodes/Google/BigQuery/v2/actions/versionDescription.js +95 -0
- package/dist/nodes/Google/BigQuery/v2/actions/versionDescription.js.map +1 -0
- package/dist/nodes/Google/BigQuery/v2/helpers/interfaces.d.ts +28 -0
- package/dist/nodes/Google/BigQuery/v2/helpers/interfaces.js +3 -0
- package/dist/nodes/Google/BigQuery/v2/helpers/interfaces.js.map +1 -0
- package/dist/nodes/Google/BigQuery/v2/helpers/utils.d.ts +9 -0
- package/dist/nodes/Google/BigQuery/v2/helpers/utils.js +110 -0
- package/dist/nodes/Google/BigQuery/v2/helpers/utils.js.map +1 -0
- package/dist/nodes/Google/BigQuery/v2/methods/index.d.ts +2 -0
- package/dist/nodes/Google/BigQuery/v2/methods/index.js +29 -0
- package/dist/nodes/Google/BigQuery/v2/methods/index.js.map +1 -0
- package/dist/nodes/Google/BigQuery/v2/methods/listSearch.d.ts +4 -0
- package/dist/nodes/Google/BigQuery/v2/methods/listSearch.js +71 -0
- package/dist/nodes/Google/BigQuery/v2/methods/listSearch.js.map +1 -0
- package/dist/nodes/Google/BigQuery/v2/methods/loadOptions.d.ts +3 -0
- package/dist/nodes/Google/BigQuery/v2/methods/loadOptions.js +42 -0
- package/dist/nodes/Google/BigQuery/v2/methods/loadOptions.js.map +1 -0
- package/dist/nodes/Google/BigQuery/v2/transport/index.d.ts +4 -0
- package/dist/nodes/Google/BigQuery/v2/transport/index.js +121 -0
- package/dist/nodes/Google/BigQuery/v2/transport/index.js.map +1 -0
- package/dist/nodes/Google/Chat/MessageInterface.d.ts +1 -1
- package/dist/nodes/Google/Chat/MessageInterface.js.map +1 -1
- package/dist/nodes/Google/Sheet/v2/helpers/GoogleSheets.types.d.ts +5 -5
- package/dist/nodes/Google/Sheet/v2/helpers/GoogleSheets.types.js +5 -6
- package/dist/nodes/Google/Sheet/v2/helpers/GoogleSheets.types.js.map +1 -1
- package/dist/nodes/ItemLists/V1/summarize.operation.js +10 -11
- package/dist/nodes/ItemLists/V1/summarize.operation.js.map +1 -1
- package/dist/nodes/ItemLists/V2/summarize.operation.js +10 -11
- package/dist/nodes/ItemLists/V2/summarize.operation.js.map +1 -1
- package/dist/nodes/Mailchimp/Mailchimp.node.js.map +1 -1
- package/dist/nodes/Microsoft/Sql/MicrosoftSql.node.js +4 -0
- package/dist/nodes/Microsoft/Sql/MicrosoftSql.node.js.map +1 -1
- package/dist/nodes/MySql/v1/MySqlV1.node.js +4 -6
- package/dist/nodes/MySql/v1/MySqlV1.node.js.map +1 -1
- package/dist/nodes/MySql/v2/actions/database/executeQuery.operation.js +2 -1
- package/dist/nodes/MySql/v2/actions/database/executeQuery.operation.js.map +1 -1
- package/dist/nodes/N8n/test/node/workflow.n8n.workflows.json +694 -0
- package/dist/nodes/PayPal/PaymentInteface.d.ts +2 -2
- package/dist/nodes/PayPal/PaymentInteface.js.map +1 -1
- package/dist/nodes/Postgres/v1/PostgresV1.node.js +4 -6
- package/dist/nodes/Postgres/v1/PostgresV1.node.js.map +1 -1
- package/dist/nodes/Postgres/v2/actions/database/executeQuery.operation.js +2 -1
- package/dist/nodes/Postgres/v2/actions/database/executeQuery.operation.js.map +1 -1
- package/dist/nodes/QuestDb/QuestDb.node.js +4 -0
- package/dist/nodes/QuestDb/QuestDb.node.js.map +1 -1
- package/dist/nodes/QuickChart/QuickChart.node.js.map +1 -1
- package/dist/nodes/SendInBlue/GenericFunctions.js +6 -6
- package/dist/nodes/SendInBlue/GenericFunctions.js.map +1 -1
- package/dist/nodes/Snowflake/Snowflake.node.js +3 -0
- package/dist/nodes/Snowflake/Snowflake.node.js.map +1 -1
- package/dist/nodes/TheHive/descriptions/AlertDescription.js +12 -13
- package/dist/nodes/TheHive/descriptions/AlertDescription.js.map +1 -1
- package/dist/nodes/TheHive/descriptions/CaseDescription.js +12 -13
- package/dist/nodes/TheHive/descriptions/CaseDescription.js.map +1 -1
- package/dist/nodes/TheHive/descriptions/ObservableDescription.js +12 -13
- package/dist/nodes/TheHive/descriptions/ObservableDescription.js.map +1 -1
- package/dist/nodes/TheHive/interfaces/AlertInterface.d.ts +2 -2
- package/dist/nodes/TheHive/interfaces/AlertInterface.js.map +1 -1
- package/dist/nodes/TheHive/interfaces/CaseInterface.d.ts +3 -3
- package/dist/nodes/TheHive/interfaces/CaseInterface.js.map +1 -1
- package/dist/nodes/TheHive/interfaces/LogInterface.d.ts +1 -1
- package/dist/nodes/TheHive/interfaces/LogInterface.js.map +1 -1
- package/dist/nodes/TheHive/interfaces/ObservableInterface.d.ts +2 -2
- package/dist/nodes/TheHive/interfaces/ObservableInterface.js.map +1 -1
- package/dist/nodes/TheHive/interfaces/TaskInterface.d.ts +1 -1
- package/dist/nodes/TheHive/interfaces/TaskInterface.js.map +1 -1
- package/dist/nodes/TimescaleDb/TimescaleDb.node.js +4 -0
- package/dist/nodes/TimescaleDb/TimescaleDb.node.js.map +1 -1
- package/dist/nodes/Todoist/v1/OperationHandler.d.ts +1 -1
- package/dist/nodes/Todoist/v1/OperationHandler.js +3 -3
- package/dist/nodes/Todoist/v1/OperationHandler.js.map +1 -1
- package/dist/nodes/Todoist/v1/Service.d.ts +1 -11
- package/dist/nodes/Todoist/v1/Service.js +1 -13
- package/dist/nodes/Todoist/v1/Service.js.map +1 -1
- package/dist/nodes/Todoist/v1/TodoistV1.node.js +1 -1
- package/dist/nodes/Todoist/v1/TodoistV1.node.js.map +1 -1
- package/dist/nodes/Todoist/v2/OperationHandler.d.ts +1 -1
- package/dist/nodes/Todoist/v2/OperationHandler.js +3 -3
- package/dist/nodes/Todoist/v2/OperationHandler.js.map +1 -1
- package/dist/nodes/Todoist/v2/Service.d.ts +1 -11
- package/dist/nodes/Todoist/v2/Service.js +1 -13
- package/dist/nodes/Todoist/v2/Service.js.map +1 -1
- package/dist/nodes/Todoist/v2/TodoistV2.node.js +1 -1
- package/dist/nodes/Todoist/v2/TodoistV2.node.js.map +1 -1
- package/dist/types/credentials.json +1 -1
- package/dist/types/nodes.json +13 -12
- package/package.json +4 -4
- package/dist/nodes/Google/BigQuery/GenericFunctions.js.map +0 -1
- package/dist/nodes/Google/BigQuery/RecordDescription.js.map +0 -1
- /package/dist/nodes/Google/BigQuery/{GenericFunctions.d.ts → v1/GenericFunctions.d.ts} +0 -0
- /package/dist/nodes/Google/BigQuery/{GenericFunctions.js → v1/GenericFunctions.js} +0 -0
- /package/dist/nodes/Google/BigQuery/{RecordDescription.d.ts → v1/RecordDescription.d.ts} +0 -0
- /package/dist/nodes/Google/BigQuery/{RecordDescription.js → v1/RecordDescription.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RLC.description.js","sourceRoot":"","sources":["../../../../../../../nodes/Google/BigQuery/v2/actions/commonDescriptions/RLC.description.ts"],"names":[],"mappings":";;;AAEa,QAAA,UAAU,GAAoB;IAC1C,WAAW,EAAE,SAAS;IACtB,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,iBAAiB;IACvB,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;IACpC,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE;QACN;YACC,WAAW,EAAE,WAAW;YACxB,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE;gBACZ,gBAAgB,EAAE,gBAAgB;gBAClC,UAAU,EAAE,IAAI;aAChB;SACD;QACD;YACC,WAAW,EAAE,QAAQ;YACrB,IAAI,EAAE,KAAK;YACX,IAAI,EAAE,QAAQ;YACd,YAAY,EAAE;gBACb,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,mFAAmF;aAC1F;YACD,UAAU,EAAE;gBACX;oBACC,IAAI,EAAE,OAAO;oBACb,UAAU,EAAE;wBACX,KAAK,EACJ,mFAAmF;wBACpF,YAAY,EAAE,kCAAkC;qBAChD;iBACD;aACD;SACD;QACD;YACC,WAAW,EAAE,OAAO;YACpB,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACX;oBACC,IAAI,EAAE,OAAO;oBACb,UAAU,EAAE;wBACX,KAAK,EAAE,qBAAqB;wBAC5B,YAAY,EAAE,iCAAiC;qBAC/C;iBACD;aACD;YACD,GAAG,EAAE,+DAA+D;SACpE;KACD;IACD,WAAW,EAAE,0DAA0D;CACvE,CAAC;AAEW,QAAA,UAAU,GAAoB;IAC1C,WAAW,EAAE,SAAS;IACtB,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,iBAAiB;IACvB,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;IACpC,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE;QACN;YACC,WAAW,EAAE,WAAW;YACxB,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE;gBACZ,gBAAgB,EAAE,gBAAgB;gBAClC,UAAU,EAAE,IAAI;aAChB;SACD;QACD;YACC,WAAW,EAAE,OAAO;YACpB,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACX;oBACC,IAAI,EAAE,OAAO;oBACb,UAAU,EAAE;wBACX,KAAK,EAAE,qBAAqB;wBAC5B,YAAY,EAAE,wBAAwB;qBACtC;iBACD;aACD;SACD;KACD;CACD,CAAC;AAEW,QAAA,QAAQ,GAAoB;IACxC,WAAW,EAAE,OAAO;IACpB,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,iBAAiB;IACvB,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;IACpC,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE;QACN;YACC,WAAW,EAAE,WAAW;YACxB,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE;gBACZ,gBAAgB,EAAE,cAAc;gBAChC,UAAU,EAAE,IAAI;aAChB;SACD;QACD;YACC,WAAW,EAAE,OAAO;YACpB,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACX;oBACC,IAAI,EAAE,OAAO;oBACb,UAAU,EAAE;wBACX,KAAK,EAAE,qBAAqB;wBAC5B,YAAY,EAAE,sBAAsB;qBACpC;iBACD;aACD;SACD;KACD;CACD,CAAC"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.description = exports.insert = exports.executeQuery = void 0;
|
|
27
|
+
const RLC_description_1 = require("../commonDescriptions/RLC.description");
|
|
28
|
+
const insert = __importStar(require("./insert.operation"));
|
|
29
|
+
exports.insert = insert;
|
|
30
|
+
const executeQuery = __importStar(require("./executeQuery.operation"));
|
|
31
|
+
exports.executeQuery = executeQuery;
|
|
32
|
+
exports.description = [
|
|
33
|
+
{
|
|
34
|
+
displayName: 'Operation',
|
|
35
|
+
name: 'operation',
|
|
36
|
+
type: 'options',
|
|
37
|
+
noDataExpression: true,
|
|
38
|
+
displayOptions: {
|
|
39
|
+
show: {
|
|
40
|
+
resource: ['database'],
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
options: [
|
|
44
|
+
{
|
|
45
|
+
name: 'Execute Query',
|
|
46
|
+
value: 'executeQuery',
|
|
47
|
+
description: 'Execute a SQL query',
|
|
48
|
+
action: 'Execute a SQL query',
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
name: 'Insert',
|
|
52
|
+
value: 'insert',
|
|
53
|
+
description: 'Insert rows in a table',
|
|
54
|
+
action: 'Insert rows in a table',
|
|
55
|
+
},
|
|
56
|
+
],
|
|
57
|
+
default: 'executeQuery',
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
...RLC_description_1.projectRLC,
|
|
61
|
+
displayOptions: {
|
|
62
|
+
show: {
|
|
63
|
+
resource: ['database'],
|
|
64
|
+
operation: ['executeQuery', 'insert'],
|
|
65
|
+
},
|
|
66
|
+
},
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
...RLC_description_1.datasetRLC,
|
|
70
|
+
displayOptions: {
|
|
71
|
+
show: {
|
|
72
|
+
resource: ['database'],
|
|
73
|
+
operation: ['insert'],
|
|
74
|
+
},
|
|
75
|
+
},
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
...RLC_description_1.tableRLC,
|
|
79
|
+
displayOptions: {
|
|
80
|
+
show: {
|
|
81
|
+
resource: ['database'],
|
|
82
|
+
operation: ['insert'],
|
|
83
|
+
},
|
|
84
|
+
},
|
|
85
|
+
},
|
|
86
|
+
...executeQuery.description,
|
|
87
|
+
...insert.description,
|
|
88
|
+
];
|
|
89
|
+
//# sourceMappingURL=Database.resource.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Database.resource.js","sourceRoot":"","sources":["../../../../../../../nodes/Google/BigQuery/v2/actions/database/Database.resource.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,2EAAyF;AACzF,2DAA6C;AAGtB,wBAAM;AAF7B,uEAAyD;AAEhD,oCAAY;AAER,QAAA,WAAW,GAAsB;IAC7C;QACC,WAAW,EAAE,WAAW;QACxB,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,SAAS;QACf,gBAAgB,EAAE,IAAI;QACtB,cAAc,EAAE;YACf,IAAI,EAAE;gBACL,QAAQ,EAAE,CAAC,UAAU,CAAC;aACtB;SACD;QACD,OAAO,EAAE;YACR;gBACC,IAAI,EAAE,eAAe;gBACrB,KAAK,EAAE,cAAc;gBACrB,WAAW,EAAE,qBAAqB;gBAClC,MAAM,EAAE,qBAAqB;aAC7B;YACD;gBACC,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,wBAAwB;gBACrC,MAAM,EAAE,wBAAwB;aAChC;SACD;QACD,OAAO,EAAE,cAAc;KACvB;IACD;QACC,GAAG,4BAAU;QACb,cAAc,EAAE;YACf,IAAI,EAAE;gBACL,QAAQ,EAAE,CAAC,UAAU,CAAC;gBACtB,SAAS,EAAE,CAAC,cAAc,EAAE,QAAQ,CAAC;aACrC;SACD;KACD;IACD;QACC,GAAG,4BAAU;QACb,cAAc,EAAE;YACf,IAAI,EAAE;gBACL,QAAQ,EAAE,CAAC,UAAU,CAAC;gBACtB,SAAS,EAAE,CAAC,QAAQ,CAAC;aACrB;SACD;KACD;IACD;QACC,GAAG,0BAAQ;QACX,cAAc,EAAE;YACf,IAAI,EAAE;gBACL,QAAQ,EAAE,CAAC,UAAU,CAAC;gBACtB,SAAS,EAAE,CAAC,QAAQ,CAAC;aACrB;SACD;KACD;IACD,GAAG,YAAY,CAAC,WAAW;IAC3B,GAAG,MAAM,CAAC,WAAW;CACrB,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { IExecuteFunctions } from 'n8n-core';
|
|
2
|
+
import type { INodeExecutionData, INodeProperties } from 'n8n-workflow';
|
|
3
|
+
export declare const description: {
|
|
4
|
+
displayOptions: import("n8n-workflow").IDisplayOptions;
|
|
5
|
+
displayName: string;
|
|
6
|
+
name: string;
|
|
7
|
+
type: import("n8n-workflow").NodePropertyTypes;
|
|
8
|
+
typeOptions?: import("n8n-workflow").INodePropertyTypeOptions | undefined;
|
|
9
|
+
default: import("n8n-workflow").NodeParameterValueType;
|
|
10
|
+
description?: string | undefined;
|
|
11
|
+
hint?: string | undefined;
|
|
12
|
+
options?: (INodeProperties | import("n8n-workflow").INodePropertyOptions | import("n8n-workflow").INodePropertyCollection)[] | undefined;
|
|
13
|
+
placeholder?: string | undefined;
|
|
14
|
+
isNodeSetting?: boolean | undefined;
|
|
15
|
+
noDataExpression?: boolean | undefined;
|
|
16
|
+
required?: boolean | undefined;
|
|
17
|
+
routing?: import("n8n-workflow").INodePropertyRouting | undefined;
|
|
18
|
+
credentialTypes?: ("extends:oAuth2Api" | "extends:oAuth1Api" | "has:authenticate" | "has:genericAuth")[] | undefined;
|
|
19
|
+
extractValue?: import("n8n-workflow").INodePropertyValueExtractorRegex | undefined;
|
|
20
|
+
modes?: import("n8n-workflow").INodePropertyMode[] | undefined;
|
|
21
|
+
requiresDataPath?: "single" | "multiple" | undefined;
|
|
22
|
+
}[];
|
|
23
|
+
export declare function execute(this: IExecuteFunctions): Promise<INodeExecutionData[]>;
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.execute = exports.description = void 0;
|
|
4
|
+
const n8n_workflow_1 = require("n8n-workflow");
|
|
5
|
+
const utilities_1 = require("../../../../../../utils/utilities");
|
|
6
|
+
const utils_1 = require("../../helpers/utils");
|
|
7
|
+
const transport_1 = require("../../transport");
|
|
8
|
+
const properties = [
|
|
9
|
+
{
|
|
10
|
+
displayName: 'SQL Query',
|
|
11
|
+
name: 'sqlQuery',
|
|
12
|
+
type: 'string',
|
|
13
|
+
typeOptions: {
|
|
14
|
+
editor: 'sqlEditor',
|
|
15
|
+
},
|
|
16
|
+
displayOptions: {
|
|
17
|
+
hide: {
|
|
18
|
+
'/options.useLegacySql': [true],
|
|
19
|
+
},
|
|
20
|
+
},
|
|
21
|
+
default: '',
|
|
22
|
+
placeholder: 'SELECT * FROM dataset.table LIMIT 100',
|
|
23
|
+
description: 'SQL query to execute, you can find more information <a href="https://cloud.google.com/bigquery/docs/reference/standard-sql/query-syntax" target="_blank">here</a>. Standard SQL syntax used by default, but you can also use Legacy SQL syntax by using optinon \'Use Legacy SQL\'.',
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
displayName: 'SQL Query',
|
|
27
|
+
name: 'sqlQuery',
|
|
28
|
+
type: 'string',
|
|
29
|
+
typeOptions: {
|
|
30
|
+
editor: 'sqlEditor',
|
|
31
|
+
},
|
|
32
|
+
displayOptions: {
|
|
33
|
+
show: {
|
|
34
|
+
'/options.useLegacySql': [true],
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
default: '',
|
|
38
|
+
placeholder: 'SELECT * FROM [project:dataset.table] LIMIT 100;',
|
|
39
|
+
hint: 'Legacy SQL syntax',
|
|
40
|
+
description: 'SQL query to execute, you can find more information about Legacy SQL syntax <a href="https://cloud.google.com/bigquery/docs/reference/standard-sql/query-syntax" target="_blank">here</a>',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
displayName: 'Options',
|
|
44
|
+
name: 'options',
|
|
45
|
+
type: 'collection',
|
|
46
|
+
placeholder: 'Add Options',
|
|
47
|
+
default: {},
|
|
48
|
+
options: [
|
|
49
|
+
{
|
|
50
|
+
displayName: 'Default Dataset Name or ID',
|
|
51
|
+
name: 'defaultDataset',
|
|
52
|
+
type: 'options',
|
|
53
|
+
typeOptions: {
|
|
54
|
+
loadOptionsMethod: 'getDatasets',
|
|
55
|
+
loadOptionsDependsOn: ['projectId.value'],
|
|
56
|
+
},
|
|
57
|
+
default: '',
|
|
58
|
+
description: 'If not set, all table names in the query string must be qualified in the format \'datasetId.tableId\'. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code-examples/expressions/">expression</a>.',
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
displayName: 'Dry Run',
|
|
62
|
+
name: 'dryRun',
|
|
63
|
+
type: 'boolean',
|
|
64
|
+
default: false,
|
|
65
|
+
description: "Whether set to true BigQuery doesn't run the job. Instead, if the query is valid, BigQuery returns statistics about the job such as how many bytes would be processed. If the query is invalid, an error returns.",
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
displayName: 'Include Schema in Output',
|
|
69
|
+
name: 'includeSchema',
|
|
70
|
+
type: 'boolean',
|
|
71
|
+
default: false,
|
|
72
|
+
description: "Whether to include the schema in the output. If set to true, the output will contain key '_schema' with the schema of the table.",
|
|
73
|
+
displayOptions: {
|
|
74
|
+
hide: {
|
|
75
|
+
rawOutput: [true],
|
|
76
|
+
},
|
|
77
|
+
},
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
displayName: 'Location',
|
|
81
|
+
name: 'location',
|
|
82
|
+
type: 'string',
|
|
83
|
+
default: '',
|
|
84
|
+
placeholder: 'e.g. europe-west3',
|
|
85
|
+
description: 'Location or the region where data would be stored and processed. Pricing for storage and analysis is also defined by location of data and reservations, more information <a href="https://cloud.google.com/bigquery/docs/locations" target="_blank">here</a>.',
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
displayName: 'Maximum Bytes Billed',
|
|
89
|
+
name: 'maximumBytesBilled',
|
|
90
|
+
type: 'string',
|
|
91
|
+
default: '',
|
|
92
|
+
description: 'Limits the bytes billed for this query. Queries with bytes billed above this limit will fail (without incurring a charge). String in <a href="https://developers.google.com/discovery/v1/type-format?utm_source=cloud.google.com&utm_medium=referral" target="_blank">Int64Value</a> format',
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
displayName: 'Max Results',
|
|
96
|
+
name: 'maxResults',
|
|
97
|
+
type: 'number',
|
|
98
|
+
default: 1000,
|
|
99
|
+
description: 'The maximum number of rows of data to return',
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
displayName: 'Timeout',
|
|
103
|
+
name: 'timeoutMs',
|
|
104
|
+
type: 'number',
|
|
105
|
+
default: 10000,
|
|
106
|
+
description: 'How long to wait for the query to complete, in milliseconds',
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
displayName: 'Raw Output',
|
|
110
|
+
name: 'rawOutput',
|
|
111
|
+
type: 'boolean',
|
|
112
|
+
default: false,
|
|
113
|
+
displayOptions: {
|
|
114
|
+
hide: {
|
|
115
|
+
dryRun: [true],
|
|
116
|
+
},
|
|
117
|
+
},
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
displayName: 'Use Legacy SQL',
|
|
121
|
+
name: 'useLegacySql',
|
|
122
|
+
type: 'boolean',
|
|
123
|
+
default: false,
|
|
124
|
+
description: "Whether to use BigQuery's legacy SQL dialect for this query. If set to false, the query will use BigQuery's standard SQL.",
|
|
125
|
+
},
|
|
126
|
+
],
|
|
127
|
+
},
|
|
128
|
+
];
|
|
129
|
+
const displayOptions = {
|
|
130
|
+
show: {
|
|
131
|
+
resource: ['database'],
|
|
132
|
+
operation: ['executeQuery'],
|
|
133
|
+
},
|
|
134
|
+
};
|
|
135
|
+
exports.description = (0, utilities_1.updateDisplayOptions)(displayOptions, properties);
|
|
136
|
+
async function execute() {
|
|
137
|
+
var _a, _b, _c, _d;
|
|
138
|
+
const items = this.getInputData();
|
|
139
|
+
const length = items.length;
|
|
140
|
+
const returnData = [];
|
|
141
|
+
let jobs = [];
|
|
142
|
+
for (let i = 0; i < length; i++) {
|
|
143
|
+
try {
|
|
144
|
+
const sqlQuery = this.getNodeParameter('sqlQuery', i);
|
|
145
|
+
const options = this.getNodeParameter('options', i);
|
|
146
|
+
const projectId = this.getNodeParameter('projectId', i, undefined, {
|
|
147
|
+
extractValue: true,
|
|
148
|
+
});
|
|
149
|
+
let rawOutput = false;
|
|
150
|
+
let includeSchema = false;
|
|
151
|
+
if (options.rawOutput !== undefined) {
|
|
152
|
+
rawOutput = options.rawOutput;
|
|
153
|
+
delete options.rawOutput;
|
|
154
|
+
}
|
|
155
|
+
if (options.includeSchema !== undefined) {
|
|
156
|
+
includeSchema = options.includeSchema;
|
|
157
|
+
delete options.includeSchema;
|
|
158
|
+
}
|
|
159
|
+
const body = { ...options };
|
|
160
|
+
body.query = sqlQuery;
|
|
161
|
+
if (body.defaultDataset) {
|
|
162
|
+
body.defaultDataset = {
|
|
163
|
+
datasetId: options.defaultDataset,
|
|
164
|
+
projectId,
|
|
165
|
+
};
|
|
166
|
+
}
|
|
167
|
+
if (body.useLegacySql === undefined) {
|
|
168
|
+
body.useLegacySql = false;
|
|
169
|
+
}
|
|
170
|
+
const response = await transport_1.googleApiRequest.call(this, 'POST', `/v2/projects/${projectId}/jobs`, {
|
|
171
|
+
configuration: {
|
|
172
|
+
query: body,
|
|
173
|
+
},
|
|
174
|
+
});
|
|
175
|
+
if (!((_a = response === null || response === void 0 ? void 0 : response.jobReference) === null || _a === void 0 ? void 0 : _a.jobId)) {
|
|
176
|
+
throw new n8n_workflow_1.NodeOperationError(this.getNode(), `No job ID returned, item ${i}`, {
|
|
177
|
+
description: `sql: ${sqlQuery}`,
|
|
178
|
+
itemIndex: i,
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
const jobId = (_b = response === null || response === void 0 ? void 0 : response.jobReference) === null || _b === void 0 ? void 0 : _b.jobId;
|
|
182
|
+
const raw = rawOutput || options.dryRun || false;
|
|
183
|
+
if (((_c = response.status) === null || _c === void 0 ? void 0 : _c.state) === 'DONE') {
|
|
184
|
+
const qs = options.location ? { location: options.location } : {};
|
|
185
|
+
const queryResponse = await transport_1.googleApiRequest.call(this, 'GET', `/v2/projects/${projectId}/queries/${jobId}`, undefined, qs);
|
|
186
|
+
returnData.push(...(0, utils_1.prepareOutput)(queryResponse, i, raw, includeSchema));
|
|
187
|
+
}
|
|
188
|
+
else {
|
|
189
|
+
jobs.push({ jobId, projectId, i, raw, includeSchema, location: options.location });
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
catch (error) {
|
|
193
|
+
if (this.continueOnFail()) {
|
|
194
|
+
const executionErrorData = this.helpers.constructExecutionMetaData(this.helpers.returnJsonArray({ error: error.message }), { itemData: { item: i } });
|
|
195
|
+
returnData.push(...executionErrorData);
|
|
196
|
+
continue;
|
|
197
|
+
}
|
|
198
|
+
throw new n8n_workflow_1.NodeOperationError(this.getNode(), error.message, {
|
|
199
|
+
itemIndex: i,
|
|
200
|
+
description: error === null || error === void 0 ? void 0 : error.description,
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
let waitTime = 1000;
|
|
205
|
+
while (jobs.length > 0) {
|
|
206
|
+
const completedJobs = [];
|
|
207
|
+
for (const job of jobs) {
|
|
208
|
+
try {
|
|
209
|
+
const qs = job.location ? { location: job.location } : {};
|
|
210
|
+
const response = await transport_1.googleApiRequest.call(this, 'GET', `/v2/projects/${job.projectId}/queries/${job.jobId}`, undefined, qs);
|
|
211
|
+
if (response.jobComplete) {
|
|
212
|
+
completedJobs.push(job.jobId);
|
|
213
|
+
returnData.push(...(0, utils_1.prepareOutput)(response, job.i, job.raw, job.includeSchema));
|
|
214
|
+
}
|
|
215
|
+
if ((_d = response === null || response === void 0 ? void 0 : response.errors) === null || _d === void 0 ? void 0 : _d.length) {
|
|
216
|
+
const errorMessages = response.errors.map((error) => error.message);
|
|
217
|
+
throw new Error(`Error(s) ocurring while executing query from item ${job.i.toString()}: ${errorMessages.join(', ')}`);
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
catch (error) {
|
|
221
|
+
if (this.continueOnFail()) {
|
|
222
|
+
const executionErrorData = this.helpers.constructExecutionMetaData(this.helpers.returnJsonArray({ error: error.message }), { itemData: { item: job.i } });
|
|
223
|
+
returnData.push(...executionErrorData);
|
|
224
|
+
continue;
|
|
225
|
+
}
|
|
226
|
+
throw new n8n_workflow_1.NodeOperationError(this.getNode(), error.message, {
|
|
227
|
+
itemIndex: job.i,
|
|
228
|
+
description: error === null || error === void 0 ? void 0 : error.description,
|
|
229
|
+
});
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
jobs = jobs.filter((job) => !completedJobs.includes(job.jobId));
|
|
233
|
+
if (jobs.length > 0) {
|
|
234
|
+
await (0, n8n_workflow_1.sleep)(waitTime);
|
|
235
|
+
if (waitTime < 30000) {
|
|
236
|
+
waitTime = waitTime * 2;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
return returnData;
|
|
241
|
+
}
|
|
242
|
+
exports.execute = execute;
|
|
243
|
+
//# sourceMappingURL=executeQuery.operation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"executeQuery.operation.js","sourceRoot":"","sources":["../../../../../../../nodes/Google/BigQuery/v2/actions/database/executeQuery.operation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { IExecuteFunctions } from 'n8n-core';
|
|
2
|
+
import type { INodeExecutionData, INodeProperties } from 'n8n-workflow';
|
|
3
|
+
export declare const description: {
|
|
4
|
+
displayOptions: import("n8n-workflow").IDisplayOptions;
|
|
5
|
+
displayName: string;
|
|
6
|
+
name: string;
|
|
7
|
+
type: import("n8n-workflow").NodePropertyTypes;
|
|
8
|
+
typeOptions?: import("n8n-workflow").INodePropertyTypeOptions | undefined;
|
|
9
|
+
default: import("n8n-workflow").NodeParameterValueType;
|
|
10
|
+
description?: string | undefined;
|
|
11
|
+
hint?: string | undefined;
|
|
12
|
+
options?: (INodeProperties | import("n8n-workflow").INodePropertyOptions | import("n8n-workflow").INodePropertyCollection)[] | undefined;
|
|
13
|
+
placeholder?: string | undefined;
|
|
14
|
+
isNodeSetting?: boolean | undefined;
|
|
15
|
+
noDataExpression?: boolean | undefined;
|
|
16
|
+
required?: boolean | undefined;
|
|
17
|
+
routing?: import("n8n-workflow").INodePropertyRouting | undefined;
|
|
18
|
+
credentialTypes?: ("extends:oAuth2Api" | "extends:oAuth1Api" | "has:authenticate" | "has:genericAuth")[] | undefined;
|
|
19
|
+
extractValue?: import("n8n-workflow").INodePropertyValueExtractorRegex | undefined;
|
|
20
|
+
modes?: import("n8n-workflow").INodePropertyMode[] | undefined;
|
|
21
|
+
requiresDataPath?: "single" | "multiple" | undefined;
|
|
22
|
+
}[];
|
|
23
|
+
export declare function execute(this: IExecuteFunctions): Promise<INodeExecutionData[]>;
|
|
@@ -0,0 +1,234 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.execute = exports.description = void 0;
|
|
4
|
+
const n8n_workflow_1 = require("n8n-workflow");
|
|
5
|
+
const uuid_1 = require("uuid");
|
|
6
|
+
const utilities_1 = require("../../../../../../utils/utilities");
|
|
7
|
+
const utils_1 = require("../../helpers/utils");
|
|
8
|
+
const transport_1 = require("../../transport");
|
|
9
|
+
const properties = [
|
|
10
|
+
{
|
|
11
|
+
displayName: 'Data Mode',
|
|
12
|
+
name: 'dataMode',
|
|
13
|
+
type: 'options',
|
|
14
|
+
options: [
|
|
15
|
+
{
|
|
16
|
+
name: 'Auto-Map Input Data',
|
|
17
|
+
value: 'autoMap',
|
|
18
|
+
description: 'Use when node input properties match destination field names',
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
name: 'Map Each Field Below',
|
|
22
|
+
value: 'define',
|
|
23
|
+
description: 'Set the value for each destination field',
|
|
24
|
+
},
|
|
25
|
+
],
|
|
26
|
+
default: 'autoMap',
|
|
27
|
+
description: 'Whether to insert the input data this node receives in the new row',
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
displayName: "In this mode, make sure the incoming data fields are named the same as the columns in BigQuery. (Use a 'set' node before this node to change them if required.)",
|
|
31
|
+
name: 'info',
|
|
32
|
+
type: 'notice',
|
|
33
|
+
default: '',
|
|
34
|
+
displayOptions: {
|
|
35
|
+
show: {
|
|
36
|
+
dataMode: ['autoMap'],
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
displayName: 'Fields to Send',
|
|
42
|
+
name: 'fieldsUi',
|
|
43
|
+
placeholder: 'Add Field',
|
|
44
|
+
type: 'fixedCollection',
|
|
45
|
+
typeOptions: {
|
|
46
|
+
multipleValueButtonText: 'Add Field',
|
|
47
|
+
multipleValues: true,
|
|
48
|
+
},
|
|
49
|
+
default: {},
|
|
50
|
+
options: [
|
|
51
|
+
{
|
|
52
|
+
displayName: 'Field',
|
|
53
|
+
name: 'values',
|
|
54
|
+
values: [
|
|
55
|
+
{
|
|
56
|
+
displayName: 'Field Name or ID',
|
|
57
|
+
name: 'fieldId',
|
|
58
|
+
type: 'options',
|
|
59
|
+
description: 'Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code-examples/expressions/">expression</a>',
|
|
60
|
+
typeOptions: {
|
|
61
|
+
loadOptionsDependsOn: ['projectId.value', 'datasetId.value', 'tableId.value'],
|
|
62
|
+
loadOptionsMethod: 'getSchema',
|
|
63
|
+
},
|
|
64
|
+
default: '',
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
displayName: 'Field Value',
|
|
68
|
+
name: 'fieldValue',
|
|
69
|
+
type: 'string',
|
|
70
|
+
default: '',
|
|
71
|
+
},
|
|
72
|
+
],
|
|
73
|
+
},
|
|
74
|
+
],
|
|
75
|
+
displayOptions: {
|
|
76
|
+
show: {
|
|
77
|
+
dataMode: ['define'],
|
|
78
|
+
},
|
|
79
|
+
},
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
displayName: 'Options',
|
|
83
|
+
name: 'options',
|
|
84
|
+
type: 'collection',
|
|
85
|
+
placeholder: 'Add Options',
|
|
86
|
+
default: {},
|
|
87
|
+
options: [
|
|
88
|
+
{
|
|
89
|
+
displayName: 'Batch Size',
|
|
90
|
+
name: 'batchSize',
|
|
91
|
+
type: 'number',
|
|
92
|
+
default: 100,
|
|
93
|
+
typeOptions: {
|
|
94
|
+
minValue: 1,
|
|
95
|
+
},
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
displayName: 'Ignore Unknown Values',
|
|
99
|
+
name: 'ignoreUnknownValues',
|
|
100
|
+
type: 'boolean',
|
|
101
|
+
default: false,
|
|
102
|
+
description: 'Whether to gnore row values that do not match the schema',
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
displayName: 'Skip Invalid Rows',
|
|
106
|
+
name: 'skipInvalidRows',
|
|
107
|
+
type: 'boolean',
|
|
108
|
+
default: false,
|
|
109
|
+
description: 'Whether to skip rows with values that do not match the schema',
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
displayName: 'Template Suffix',
|
|
113
|
+
name: 'templateSuffix',
|
|
114
|
+
type: 'string',
|
|
115
|
+
default: '',
|
|
116
|
+
description: 'Create a new table based on the destination table and insert rows into the new table. The new table will be named <code>{destinationTable}{templateSuffix}</code>',
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
displayName: 'Trace ID',
|
|
120
|
+
name: 'traceId',
|
|
121
|
+
type: 'string',
|
|
122
|
+
default: '',
|
|
123
|
+
description: 'Unique ID for the request, for debugging only. It is case-sensitive, limited to up to 36 ASCII characters. A UUID is recommended.',
|
|
124
|
+
},
|
|
125
|
+
],
|
|
126
|
+
},
|
|
127
|
+
];
|
|
128
|
+
const displayOptions = {
|
|
129
|
+
show: {
|
|
130
|
+
resource: ['database'],
|
|
131
|
+
operation: ['insert'],
|
|
132
|
+
},
|
|
133
|
+
};
|
|
134
|
+
exports.description = (0, utilities_1.updateDisplayOptions)(displayOptions, properties);
|
|
135
|
+
async function execute() {
|
|
136
|
+
const projectId = this.getNodeParameter('projectId', 0, undefined, {
|
|
137
|
+
extractValue: true,
|
|
138
|
+
});
|
|
139
|
+
const datasetId = this.getNodeParameter('datasetId', 0, undefined, {
|
|
140
|
+
extractValue: true,
|
|
141
|
+
});
|
|
142
|
+
const tableId = this.getNodeParameter('tableId', 0, undefined, {
|
|
143
|
+
extractValue: true,
|
|
144
|
+
});
|
|
145
|
+
const options = this.getNodeParameter('options', 0);
|
|
146
|
+
const dataMode = this.getNodeParameter('dataMode', 0);
|
|
147
|
+
let batchSize = 100;
|
|
148
|
+
if (options.batchSize) {
|
|
149
|
+
batchSize = options.batchSize;
|
|
150
|
+
delete options.batchSize;
|
|
151
|
+
}
|
|
152
|
+
const items = this.getInputData();
|
|
153
|
+
const length = items.length;
|
|
154
|
+
const returnData = [];
|
|
155
|
+
const rows = [];
|
|
156
|
+
const body = {};
|
|
157
|
+
Object.assign(body, options);
|
|
158
|
+
if (body.traceId === undefined) {
|
|
159
|
+
body.traceId = (0, uuid_1.v4)();
|
|
160
|
+
}
|
|
161
|
+
const schema = (await transport_1.googleApiRequest.call(this, 'GET', `/v2/projects/${projectId}/datasets/${datasetId}/tables/${tableId}`, {})).schema;
|
|
162
|
+
if (schema === undefined) {
|
|
163
|
+
throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'The destination table has no defined schema');
|
|
164
|
+
}
|
|
165
|
+
for (let i = 0; i < length; i++) {
|
|
166
|
+
try {
|
|
167
|
+
const record = {};
|
|
168
|
+
if (dataMode === 'autoMap') {
|
|
169
|
+
schema.fields.forEach(({ name }) => {
|
|
170
|
+
record[name] = items[i].json[name];
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
if (dataMode === 'define') {
|
|
174
|
+
const fields = this.getNodeParameter('fieldsUi.values', i, []);
|
|
175
|
+
fields.forEach(({ fieldId, fieldValue }) => {
|
|
176
|
+
record[`${fieldId}`] = fieldValue;
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
rows.push({ json: utils_1.checkSchema.call(this, schema, record, i) });
|
|
180
|
+
}
|
|
181
|
+
catch (error) {
|
|
182
|
+
if (this.continueOnFail()) {
|
|
183
|
+
const executionErrorData = this.helpers.constructExecutionMetaData(this.helpers.returnJsonArray({ error: error.message }), { itemData: { item: i } });
|
|
184
|
+
returnData.push(...executionErrorData);
|
|
185
|
+
continue;
|
|
186
|
+
}
|
|
187
|
+
throw new n8n_workflow_1.NodeOperationError(this.getNode(), error.message, {
|
|
188
|
+
itemIndex: i,
|
|
189
|
+
description: error === null || error === void 0 ? void 0 : error.description,
|
|
190
|
+
});
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
for (let i = 0; i < rows.length; i += batchSize) {
|
|
194
|
+
const batch = rows.slice(i, i + batchSize);
|
|
195
|
+
body.rows = batch;
|
|
196
|
+
const responseData = await transport_1.googleApiRequest.call(this, 'POST', `/v2/projects/${projectId}/datasets/${datasetId}/tables/${tableId}/insertAll`, body);
|
|
197
|
+
if ((responseData === null || responseData === void 0 ? void 0 : responseData.insertErrors) && !options.skipInvalidRows) {
|
|
198
|
+
const errors = [];
|
|
199
|
+
const failedRows = [];
|
|
200
|
+
const stopedRows = [];
|
|
201
|
+
responseData.insertErrors.forEach((entry) => {
|
|
202
|
+
const invalidRows = entry.errors.filter((error) => error.reason !== 'stopped');
|
|
203
|
+
if (invalidRows.length) {
|
|
204
|
+
const entryIndex = entry.index + i;
|
|
205
|
+
errors.push(`Row ${entryIndex} failed with error: ${invalidRows
|
|
206
|
+
.map((error) => error.message)
|
|
207
|
+
.join(', ')}`);
|
|
208
|
+
failedRows.push(entryIndex);
|
|
209
|
+
}
|
|
210
|
+
else {
|
|
211
|
+
const entryIndex = entry.index + i;
|
|
212
|
+
stopedRows.push(entryIndex);
|
|
213
|
+
}
|
|
214
|
+
});
|
|
215
|
+
if (this.continueOnFail()) {
|
|
216
|
+
const executionErrorData = this.helpers.constructExecutionMetaData(this.helpers.returnJsonArray({ error: errors.join('\n, ') }), { itemData: { item: i } });
|
|
217
|
+
returnData.push(...executionErrorData);
|
|
218
|
+
continue;
|
|
219
|
+
}
|
|
220
|
+
const failedMessage = `Problem inserting item(s) [${failedRows.join(', ')}]`;
|
|
221
|
+
const stoppedMessage = stopedRows.length
|
|
222
|
+
? `, nothing was inserted item(s) [${stopedRows.join(', ')}]`
|
|
223
|
+
: '';
|
|
224
|
+
throw new n8n_workflow_1.NodeOperationError(this.getNode(), `${failedMessage}${stoppedMessage}`, {
|
|
225
|
+
description: errors.join('\n, '),
|
|
226
|
+
});
|
|
227
|
+
}
|
|
228
|
+
const executionData = this.helpers.constructExecutionMetaData((0, utils_1.wrapData)(responseData), { itemData: { item: 0 } });
|
|
229
|
+
returnData.push(...executionData);
|
|
230
|
+
}
|
|
231
|
+
return returnData;
|
|
232
|
+
}
|
|
233
|
+
exports.execute = execute;
|
|
234
|
+
//# sourceMappingURL=insert.operation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"insert.operation.js","sourceRoot":"","sources":["../../../../../../../nodes/Google/BigQuery/v2/actions/database/insert.operation.ts"],"names":[],"mappings":"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"}
|