n8n-nodes-base 0.210.0 → 0.210.1

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.
Files changed (103) hide show
  1. package/dist/credentials/LinearApi.credentials.d.ts +2 -1
  2. package/dist/credentials/LinearApi.credentials.js +8 -0
  3. package/dist/credentials/LinearApi.credentials.js.map +1 -1
  4. package/dist/known/credentials.json +1 -0
  5. package/dist/nodes/ErrorTrigger/ErrorTrigger.node.js +1 -1
  6. package/dist/nodes/ErrorTrigger/ErrorTrigger.node.js.map +1 -1
  7. package/dist/nodes/Google/Analytics/GoogleAnalytics.node.d.ts +3 -11
  8. package/dist/nodes/Google/Analytics/GoogleAnalytics.node.js +10 -211
  9. package/dist/nodes/Google/Analytics/GoogleAnalytics.node.js.map +1 -1
  10. package/dist/nodes/Google/Analytics/{GenericFunctions.d.ts → v1/GenericFunctions.d.ts} +2 -2
  11. package/dist/nodes/Google/Analytics/{GenericFunctions.js → v1/GenericFunctions.js} +21 -6
  12. package/dist/nodes/Google/Analytics/v1/GenericFunctions.js.map +1 -0
  13. package/dist/nodes/Google/Analytics/v1/GoogleAnalyticsV1.node.d.ts +13 -0
  14. package/dist/nodes/Google/Analytics/v1/GoogleAnalyticsV1.node.js +231 -0
  15. package/dist/nodes/Google/Analytics/v1/GoogleAnalyticsV1.node.js.map +1 -0
  16. package/dist/nodes/Google/Analytics/{Interfaces.d.ts → v1/Interfaces.d.ts} +2 -0
  17. package/dist/nodes/Google/Analytics/{Interfaces.js → v1/Interfaces.js} +0 -0
  18. package/dist/nodes/Google/Analytics/v1/Interfaces.js.map +1 -0
  19. package/dist/nodes/Google/Analytics/{ReportDescription.d.ts → v1/ReportDescription.d.ts} +0 -0
  20. package/dist/nodes/Google/Analytics/{ReportDescription.js → v1/ReportDescription.js} +0 -0
  21. package/dist/nodes/Google/Analytics/v1/ReportDescription.js.map +1 -0
  22. package/dist/nodes/Google/Analytics/{UserActivityDescription.d.ts → v1/UserActivityDescription.d.ts} +0 -0
  23. package/dist/nodes/Google/Analytics/{UserActivityDescription.js → v1/UserActivityDescription.js} +0 -0
  24. package/dist/nodes/Google/Analytics/v1/UserActivityDescription.js.map +1 -0
  25. package/dist/nodes/Google/Analytics/v2/GoogleAnalyticsV2.node.d.ts +12 -0
  26. package/dist/nodes/Google/Analytics/v2/GoogleAnalyticsV2.node.js +20 -0
  27. package/dist/nodes/Google/Analytics/v2/GoogleAnalyticsV2.node.js.map +1 -0
  28. package/dist/nodes/Google/Analytics/v2/actions/node.type.d.ts +10 -0
  29. package/dist/nodes/Google/Analytics/v2/actions/node.type.js +3 -0
  30. package/dist/nodes/Google/Analytics/v2/actions/node.type.js.map +1 -0
  31. package/dist/nodes/Google/Analytics/v2/actions/report/FiltersDescription.d.ts +5 -0
  32. package/dist/nodes/Google/Analytics/v2/actions/report/FiltersDescription.js +478 -0
  33. package/dist/nodes/Google/Analytics/v2/actions/report/FiltersDescription.js.map +1 -0
  34. package/dist/nodes/Google/Analytics/v2/actions/report/Report.resource.d.ts +5 -0
  35. package/dist/nodes/Google/Analytics/v2/actions/report/Report.resource.js +79 -0
  36. package/dist/nodes/Google/Analytics/v2/actions/report/Report.resource.js.map +1 -0
  37. package/dist/nodes/Google/Analytics/v2/actions/report/get.ga4.operation.d.ts +4 -0
  38. package/dist/nodes/Google/Analytics/v2/actions/report/get.ga4.operation.js +562 -0
  39. package/dist/nodes/Google/Analytics/v2/actions/report/get.ga4.operation.js.map +1 -0
  40. package/dist/nodes/Google/Analytics/v2/actions/report/get.universal.operation.d.ts +4 -0
  41. package/dist/nodes/Google/Analytics/v2/actions/report/get.universal.operation.js +669 -0
  42. package/dist/nodes/Google/Analytics/v2/actions/report/get.universal.operation.js.map +1 -0
  43. package/dist/nodes/Google/Analytics/v2/actions/router.d.ts +3 -0
  44. package/dist/nodes/Google/Analytics/v2/actions/router.js +68 -0
  45. package/dist/nodes/Google/Analytics/v2/actions/router.js.map +1 -0
  46. package/dist/nodes/Google/Analytics/v2/actions/userActivity/UserActivity.resource.d.ts +4 -0
  47. package/dist/nodes/Google/Analytics/v2/actions/userActivity/UserActivity.resource.js +52 -0
  48. package/dist/nodes/Google/Analytics/v2/actions/userActivity/UserActivity.resource.js.map +1 -0
  49. package/dist/nodes/Google/Analytics/v2/actions/userActivity/search.operation.d.ts +4 -0
  50. package/dist/nodes/Google/Analytics/v2/actions/userActivity/search.operation.js +145 -0
  51. package/dist/nodes/Google/Analytics/v2/actions/userActivity/search.operation.js.map +1 -0
  52. package/dist/nodes/Google/Analytics/v2/actions/versionDescription.d.ts +2 -0
  53. package/dist/nodes/Google/Analytics/v2/actions/versionDescription.js +70 -0
  54. package/dist/nodes/Google/Analytics/v2/actions/versionDescription.js.map +1 -0
  55. package/dist/nodes/Google/Analytics/v2/helpers/Interfaces.d.ts +25 -0
  56. package/dist/nodes/Google/Analytics/v2/helpers/Interfaces.js +3 -0
  57. package/dist/nodes/Google/Analytics/v2/helpers/Interfaces.js.map +1 -0
  58. package/dist/nodes/Google/Analytics/v2/helpers/utils.d.ts +18 -0
  59. package/dist/nodes/Google/Analytics/v2/helpers/utils.js +210 -0
  60. package/dist/nodes/Google/Analytics/v2/helpers/utils.js.map +1 -0
  61. package/dist/nodes/Google/Analytics/v2/methods/index.d.ts +2 -0
  62. package/dist/nodes/Google/Analytics/v2/methods/index.js +29 -0
  63. package/dist/nodes/Google/Analytics/v2/methods/index.js.map +1 -0
  64. package/dist/nodes/Google/Analytics/v2/methods/listSearch.d.ts +3 -0
  65. package/dist/nodes/Google/Analytics/v2/methods/listSearch.js +40 -0
  66. package/dist/nodes/Google/Analytics/v2/methods/listSearch.js.map +1 -0
  67. package/dist/nodes/Google/Analytics/v2/methods/loadOptions.d.ts +7 -0
  68. package/dist/nodes/Google/Analytics/v2/methods/loadOptions.js +97 -0
  69. package/dist/nodes/Google/Analytics/v2/methods/loadOptions.js.map +1 -0
  70. package/dist/nodes/Google/Analytics/v2/transport/index.d.ts +4 -0
  71. package/dist/nodes/Google/Analytics/v2/transport/index.js +84 -0
  72. package/dist/nodes/Google/Analytics/v2/transport/index.js.map +1 -0
  73. package/dist/nodes/Linear/GenericFunctions.js +1 -3
  74. package/dist/nodes/Linear/GenericFunctions.js.map +1 -1
  75. package/dist/nodes/Linear/Linear.node.js +3 -3
  76. package/dist/nodes/Linear/Linear.node.js.map +1 -1
  77. package/dist/nodes/Linear/Queries.js +24 -28
  78. package/dist/nodes/Linear/Queries.js.map +1 -1
  79. package/dist/nodes/Notion/DatabaseDescription.js +0 -12
  80. package/dist/nodes/Notion/DatabaseDescription.js.map +1 -1
  81. package/dist/nodes/Notion/GenericFunctions.d.ts +8 -7
  82. package/dist/nodes/Notion/GenericFunctions.js +18 -2
  83. package/dist/nodes/Notion/GenericFunctions.js.map +1 -1
  84. package/dist/nodes/Notion/Notion.node.js +2 -2
  85. package/dist/nodes/Notion/Notion.node.js.map +1 -1
  86. package/dist/nodes/Notion/NotionTrigger.node.js +2 -2
  87. package/dist/nodes/Notion/NotionTrigger.node.js.map +1 -1
  88. package/dist/nodes/Notion/v1/NotionV1.node.js +2 -2
  89. package/dist/nodes/Notion/v1/NotionV1.node.js.map +1 -1
  90. package/dist/nodes/Notion/v1/VersionDescription.js +3 -3
  91. package/dist/nodes/Notion/v1/VersionDescription.js.map +1 -1
  92. package/dist/nodes/Notion/v2/NotionV2.node.js +2 -2
  93. package/dist/nodes/Notion/v2/NotionV2.node.js.map +1 -1
  94. package/dist/nodes/Notion/v2/VersionDescription.js +3 -3
  95. package/dist/nodes/Notion/v2/VersionDescription.js.map +1 -1
  96. package/dist/tsconfig.tsbuildinfo +1 -1
  97. package/dist/types/credentials.json +1 -1
  98. package/dist/types/nodes.json +5 -4
  99. package/package.json +3 -3
  100. package/dist/nodes/Google/Analytics/GenericFunctions.js.map +0 -1
  101. package/dist/nodes/Google/Analytics/Interfaces.js.map +0 -1
  102. package/dist/nodes/Google/Analytics/ReportDescription.js.map +0 -1
  103. package/dist/nodes/Google/Analytics/UserActivityDescription.js.map +0 -1
@@ -1,7 +1,8 @@
1
- import { ICredentialType, INodeProperties } from 'n8n-workflow';
1
+ import { IAuthenticateGeneric, ICredentialType, INodeProperties } from 'n8n-workflow';
2
2
  export declare class LinearApi implements ICredentialType {
3
3
  name: string;
4
4
  displayName: string;
5
5
  documentationUrl: string;
6
6
  properties: INodeProperties[];
7
+ authenticate: IAuthenticateGeneric;
7
8
  }
@@ -15,6 +15,14 @@ class LinearApi {
15
15
  default: '',
16
16
  },
17
17
  ];
18
+ this.authenticate = {
19
+ type: 'generic',
20
+ properties: {
21
+ headers: {
22
+ Authorization: '={{$credentials.apiKey}}',
23
+ },
24
+ },
25
+ };
18
26
  }
19
27
  }
20
28
  exports.LinearApi = LinearApi;
@@ -1 +1 @@
1
- {"version":3,"file":"LinearApi.credentials.js","sourceRoot":"","sources":["../../credentials/LinearApi.credentials.ts"],"names":[],"mappings":";;;AAEA,MAAa,SAAS;IAAtB;QACC,SAAI,GAAG,WAAW,CAAC;QAEnB,gBAAW,GAAG,YAAY,CAAC;QAE3B,qBAAgB,GAAG,QAAQ,CAAC;QAE5B,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,SAAS;gBACtB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAC/B,OAAO,EAAE,EAAE;aACX;SACD,CAAC;IACH,CAAC;CAAA;AAhBD,8BAgBC"}
1
+ {"version":3,"file":"LinearApi.credentials.js","sourceRoot":"","sources":["../../credentials/LinearApi.credentials.ts"],"names":[],"mappings":";;;AAEA,MAAa,SAAS;IAAtB;QACC,SAAI,GAAG,WAAW,CAAC;QAEnB,gBAAW,GAAG,YAAY,CAAC;QAE3B,qBAAgB,GAAG,QAAQ,CAAC;QAE5B,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,SAAS;gBACtB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAC/B,OAAO,EAAE,EAAE;aACX;SACD,CAAC;QAEF,iBAAY,GAAyB;YACpC,IAAI,EAAE,SAAS;YACf,UAAU,EAAE;gBACX,OAAO,EAAE;oBACR,aAAa,EAAE,0BAA0B;iBACzC;aACD;SACD,CAAC;IACH,CAAC;CAAA;AAzBD,8BAyBC"}
@@ -649,6 +649,7 @@
649
649
  "className": "GoogleAnalyticsOAuth2Api",
650
650
  "sourcePath": "dist/credentials/GoogleAnalyticsOAuth2Api.credentials.js",
651
651
  "nodesToTestWith": [
652
+ "googleAnalytics",
652
653
  "googleAnalytics"
653
654
  ]
654
655
  },
@@ -44,7 +44,7 @@ class ErrorTrigger {
44
44
  items[0].json = {
45
45
  execution: {
46
46
  id,
47
- url: `${urlParts.join('/')}/${id}`,
47
+ url: `${urlParts.join('/')}/workflow/1/${id}`,
48
48
  retryOf: '34',
49
49
  error: {
50
50
  message: 'Example Error Message',
@@ -1 +1 @@
1
- {"version":3,"file":"ErrorTrigger.node.js","sourceRoot":"","sources":["../../../nodes/ErrorTrigger/ErrorTrigger.node.ts"],"names":[],"mappings":";;;AAGA,MAAa,YAAY;IAAzB;QACC,gBAAW,GAAyB;YACnC,WAAW,EAAE,eAAe;YAC5B,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,CAAC,SAAS,CAAC;YAClB,OAAO,EAAE,CAAC;YACV,WAAW,EAAE,0DAA0D;YACvE,uBAAuB,EAAE,EAAE;YAC3B,mBAAmB,EAAE,IAAI;YACzB,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE;gBACT,IAAI,EAAE,eAAe;gBACrB,KAAK,EAAE,SAAS;aAChB;YACD,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,CAAC,MAAM,CAAC;YACjB,UAAU,EAAE;gBACX;oBACC,WAAW,EACV,gOAAgO;oBACjO,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,EAAE;iBACX;aACD;SACD,CAAC;IA6CH,CAAC;IA3CA,KAAK,CAAC,OAAO;QACZ,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAElC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAE5B,IACC,IAAI,KAAK,QAAQ;YACjB,KAAK,CAAC,MAAM,KAAK,CAAC;YAClB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;YACvC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,EAC5B;YAID,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YAExC,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACvC,QAAQ,CAAC,GAAG,EAAE,CAAC;YACf,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAE3B,MAAM,EAAE,GAAG,GAAG,CAAC;YAEf,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG;gBACf,SAAS,EAAE;oBACV,EAAE;oBACF,GAAG,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE;oBAClC,OAAO,EAAE,IAAI;oBACb,KAAK,EAAE;wBACN,OAAO,EAAE,uBAAuB;wBAChC,KAAK,EAAE,YAAY;qBACnB;oBACD,gBAAgB,EAAE,iBAAiB;oBACnC,IAAI,EAAE,QAAQ;iBACd;gBACD,QAAQ,EAAE;oBACT,EAAE,EAAE,GAAG;oBACP,IAAI,EAAE,kBAAkB;iBACxB;aACD,CAAC;SACF;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;CACD;AAvED,oCAuEC"}
1
+ {"version":3,"file":"ErrorTrigger.node.js","sourceRoot":"","sources":["../../../nodes/ErrorTrigger/ErrorTrigger.node.ts"],"names":[],"mappings":";;;AAGA,MAAa,YAAY;IAAzB;QACC,gBAAW,GAAyB;YACnC,WAAW,EAAE,eAAe;YAC5B,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,CAAC,SAAS,CAAC;YAClB,OAAO,EAAE,CAAC;YACV,WAAW,EAAE,0DAA0D;YACvE,uBAAuB,EAAE,EAAE;YAC3B,mBAAmB,EAAE,IAAI;YACzB,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE;gBACT,IAAI,EAAE,eAAe;gBACrB,KAAK,EAAE,SAAS;aAChB;YACD,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,CAAC,MAAM,CAAC;YACjB,UAAU,EAAE;gBACX;oBACC,WAAW,EACV,gOAAgO;oBACjO,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,EAAE;iBACX;aACD;SACD,CAAC;IA6CH,CAAC;IA3CA,KAAK,CAAC,OAAO;QACZ,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAElC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAE5B,IACC,IAAI,KAAK,QAAQ;YACjB,KAAK,CAAC,MAAM,KAAK,CAAC;YAClB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;YACvC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,EAC5B;YAID,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YAExC,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACvC,QAAQ,CAAC,GAAG,EAAE,CAAC;YACf,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAE3B,MAAM,EAAE,GAAG,GAAG,CAAC;YAEf,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG;gBACf,SAAS,EAAE;oBACV,EAAE;oBACF,GAAG,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE;oBAC7C,OAAO,EAAE,IAAI;oBACb,KAAK,EAAE;wBACN,OAAO,EAAE,uBAAuB;wBAChC,KAAK,EAAE,YAAY;qBACnB;oBACD,gBAAgB,EAAE,iBAAiB;oBACnC,IAAI,EAAE,QAAQ;iBACd;gBACD,QAAQ,EAAE;oBACT,EAAE,EAAE,GAAG;oBACP,IAAI,EAAE,kBAAkB;iBACxB;aACD,CAAC;SACF;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;CACD;AAvED,oCAuEC"}
@@ -1,12 +1,4 @@
1
- import { IExecuteFunctions } from 'n8n-core';
2
- import { ILoadOptionsFunctions, INodeExecutionData, INodePropertyOptions, INodeType, INodeTypeDescription } from 'n8n-workflow';
3
- export declare class GoogleAnalytics implements INodeType {
4
- description: INodeTypeDescription;
5
- methods: {
6
- loadOptions: {
7
- getDimensions(this: ILoadOptionsFunctions): Promise<INodePropertyOptions[]>;
8
- getViews(this: ILoadOptionsFunctions): Promise<INodePropertyOptions[]>;
9
- };
10
- };
11
- execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
1
+ import { VersionedNodeType } from 'n8n-workflow';
2
+ export declare class GoogleAnalytics extends VersionedNodeType {
3
+ constructor();
12
4
  }
@@ -1,226 +1,25 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.GoogleAnalytics = void 0;
7
- const ReportDescription_1 = require("./ReportDescription");
8
- const UserActivityDescription_1 = require("./UserActivityDescription");
9
- const GenericFunctions_1 = require("./GenericFunctions");
10
- const moment_timezone_1 = __importDefault(require("moment-timezone"));
11
- class GoogleAnalytics {
4
+ const n8n_workflow_1 = require("n8n-workflow");
5
+ const GoogleAnalyticsV1_node_1 = require("./v1/GoogleAnalyticsV1.node");
6
+ const GoogleAnalyticsV2_node_1 = require("./v2/GoogleAnalyticsV2.node");
7
+ class GoogleAnalytics extends n8n_workflow_1.VersionedNodeType {
12
8
  constructor() {
13
- this.description = {
9
+ const baseDescription = {
14
10
  displayName: 'Google Analytics',
15
11
  name: 'googleAnalytics',
16
12
  icon: 'file:analytics.svg',
17
13
  group: ['transform'],
18
- version: 1,
19
14
  subtitle: '={{$parameter["operation"] + ": " + $parameter["resource"]}}',
20
15
  description: 'Use the Google Analytics API',
21
- defaults: {
22
- name: 'Google Analytics',
23
- },
24
- inputs: ['main'],
25
- outputs: ['main'],
26
- credentials: [
27
- {
28
- name: 'googleAnalyticsOAuth2',
29
- required: true,
30
- },
31
- ],
32
- properties: [
33
- {
34
- displayName: 'Resource',
35
- name: 'resource',
36
- type: 'options',
37
- noDataExpression: true,
38
- options: [
39
- {
40
- name: 'Report',
41
- value: 'report',
42
- },
43
- {
44
- name: 'User Activity',
45
- value: 'userActivity',
46
- },
47
- ],
48
- default: 'report',
49
- },
50
- ...ReportDescription_1.reportOperations,
51
- ...ReportDescription_1.reportFields,
52
- ...UserActivityDescription_1.userActivityOperations,
53
- ...UserActivityDescription_1.userActivityFields,
54
- ],
16
+ defaultVersion: 2,
55
17
  };
56
- this.methods = {
57
- loadOptions: {
58
- async getDimensions() {
59
- const returnData = [];
60
- const { items: dimensions } = await GenericFunctions_1.googleApiRequest.call(this, 'GET', '', {}, {}, 'https://www.googleapis.com/analytics/v3/metadata/ga/columns');
61
- for (const dimesion of dimensions) {
62
- if (dimesion.attributes.type === 'DIMENSION' &&
63
- dimesion.attributes.status !== 'DEPRECATED') {
64
- returnData.push({
65
- name: dimesion.attributes.uiName,
66
- value: dimesion.id,
67
- description: dimesion.attributes.description,
68
- });
69
- }
70
- }
71
- returnData.sort((a, b) => {
72
- const aName = a.name.toLowerCase();
73
- const bName = b.name.toLowerCase();
74
- if (aName < bName) {
75
- return -1;
76
- }
77
- if (aName > bName) {
78
- return 1;
79
- }
80
- return 0;
81
- });
82
- return returnData;
83
- },
84
- async getViews() {
85
- const returnData = [];
86
- const { items } = await GenericFunctions_1.googleApiRequest.call(this, 'GET', '', {}, {}, 'https://www.googleapis.com/analytics/v3/management/accounts/~all/webproperties/~all/profiles');
87
- for (const item of items) {
88
- returnData.push({
89
- name: item.name,
90
- value: item.id,
91
- description: item.websiteUrl,
92
- });
93
- }
94
- return returnData;
95
- },
96
- },
18
+ const nodeVersions = {
19
+ 1: new GoogleAnalyticsV1_node_1.GoogleAnalyticsV1(baseDescription),
20
+ 2: new GoogleAnalyticsV2_node_1.GoogleAnalyticsV2(baseDescription),
97
21
  };
98
- }
99
- async execute() {
100
- const items = this.getInputData();
101
- const returnData = [];
102
- const resource = this.getNodeParameter('resource', 0);
103
- const operation = this.getNodeParameter('operation', 0);
104
- let method = '';
105
- const qs = {};
106
- let endpoint = '';
107
- let responseData;
108
- for (let i = 0; i < items.length; i++) {
109
- try {
110
- if (resource === 'report') {
111
- if (operation === 'get') {
112
- method = 'POST';
113
- endpoint = '/v4/reports:batchGet';
114
- const viewId = this.getNodeParameter('viewId', i);
115
- const returnAll = this.getNodeParameter('returnAll', 0);
116
- const additionalFields = this.getNodeParameter('additionalFields', i);
117
- const simple = this.getNodeParameter('simple', i);
118
- const body = {
119
- viewId,
120
- };
121
- if (additionalFields.useResourceQuotas) {
122
- qs.useResourceQuotas = additionalFields.useResourceQuotas;
123
- }
124
- if (additionalFields.dateRangesUi) {
125
- const dateValues = additionalFields.dateRangesUi
126
- .dateRanges;
127
- if (dateValues) {
128
- const start = dateValues.startDate;
129
- const end = dateValues.endDate;
130
- Object.assign(body, {
131
- dateRanges: [
132
- {
133
- startDate: (0, moment_timezone_1.default)(start).utc().format('YYYY-MM-DD'),
134
- endDate: (0, moment_timezone_1.default)(end).utc().format('YYYY-MM-DD'),
135
- },
136
- ],
137
- });
138
- }
139
- }
140
- if (additionalFields.metricsUi) {
141
- const metrics = additionalFields.metricsUi
142
- .metricValues;
143
- body.metrics = metrics;
144
- }
145
- if (additionalFields.dimensionUi) {
146
- const dimensions = additionalFields.dimensionUi
147
- .dimensionValues;
148
- if (dimensions) {
149
- body.dimensions = dimensions;
150
- }
151
- }
152
- if (additionalFields.dimensionFiltersUi) {
153
- const dimensionFilters = additionalFields.dimensionFiltersUi
154
- .filterValues;
155
- if (dimensionFilters) {
156
- dimensionFilters.forEach((filter) => (filter.expressions = [filter.expressions]));
157
- body.dimensionFilterClauses = { filters: dimensionFilters };
158
- }
159
- }
160
- if (additionalFields.includeEmptyRows) {
161
- Object.assign(body, { includeEmptyRows: additionalFields.includeEmptyRows });
162
- }
163
- if (additionalFields.hideTotals) {
164
- Object.assign(body, { hideTotals: additionalFields.hideTotals });
165
- }
166
- if (additionalFields.hideValueRanges) {
167
- Object.assign(body, { hideTotals: additionalFields.hideTotals });
168
- }
169
- if (returnAll) {
170
- responseData = await GenericFunctions_1.googleApiRequestAllItems.call(this, 'reports', method, endpoint, { reportRequests: [body] }, qs);
171
- }
172
- else {
173
- responseData = await GenericFunctions_1.googleApiRequest.call(this, method, endpoint, { reportRequests: [body] }, qs);
174
- responseData = responseData.reports;
175
- }
176
- if (simple) {
177
- responseData = (0, GenericFunctions_1.simplify)(responseData);
178
- }
179
- else if (returnAll && responseData.length > 1) {
180
- responseData = (0, GenericFunctions_1.merge)(responseData);
181
- }
182
- }
183
- }
184
- if (resource === 'userActivity') {
185
- if (operation === 'search') {
186
- method = 'POST';
187
- endpoint = '/v4/userActivity:search';
188
- const viewId = this.getNodeParameter('viewId', i);
189
- const userId = this.getNodeParameter('userId', i);
190
- const returnAll = this.getNodeParameter('returnAll', 0);
191
- const additionalFields = this.getNodeParameter('additionalFields', i);
192
- const body = {
193
- viewId,
194
- user: {
195
- userId,
196
- },
197
- };
198
- if (additionalFields.activityTypes) {
199
- Object.assign(body, { activityTypes: additionalFields.activityTypes });
200
- }
201
- if (returnAll) {
202
- responseData = await GenericFunctions_1.googleApiRequestAllItems.call(this, 'sessions', method, endpoint, body);
203
- }
204
- else {
205
- body.pageSize = this.getNodeParameter('limit', 0);
206
- responseData = await GenericFunctions_1.googleApiRequest.call(this, method, endpoint, body);
207
- responseData = responseData.sessions;
208
- }
209
- }
210
- }
211
- const executionData = this.helpers.constructExecutionMetaData(this.helpers.returnJsonArray(responseData), { itemData: { item: i } });
212
- returnData.push(...executionData);
213
- }
214
- catch (error) {
215
- if (this.continueOnFail()) {
216
- const executionErrorData = this.helpers.constructExecutionMetaData(this.helpers.returnJsonArray({ error: error.message }), { itemData: { item: i } });
217
- returnData.push(...executionErrorData);
218
- continue;
219
- }
220
- throw error;
221
- }
222
- }
223
- return this.prepareOutputData(returnData);
22
+ super(nodeVersions, baseDescription);
224
23
  }
225
24
  }
226
25
  exports.GoogleAnalytics = GoogleAnalytics;
@@ -1 +1 @@
1
- {"version":3,"file":"GoogleAnalytics.node.js","sourceRoot":"","sources":["../../../../nodes/Google/Analytics/GoogleAnalytics.node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GoogleAnalytics.node.js","sourceRoot":"","sources":["../../../../nodes/Google/Analytics/GoogleAnalytics.node.ts"],"names":[],"mappings":";;;AAAA,+CAA+F;AAE/F,wEAAgE;AAChE,wEAAgE;AAEhE,MAAa,eAAgB,SAAQ,gCAAiB;IACrD;QACC,MAAM,eAAe,GAA6B;YACjD,WAAW,EAAE,kBAAkB;YAC/B,IAAI,EAAE,iBAAiB;YACvB,IAAI,EAAE,oBAAoB;YAC1B,KAAK,EAAE,CAAC,WAAW,CAAC;YACpB,QAAQ,EAAE,8DAA8D;YACxE,WAAW,EAAE,8BAA8B;YAC3C,cAAc,EAAE,CAAC;SACjB,CAAC;QAEF,MAAM,YAAY,GAAuC;YACxD,CAAC,EAAE,IAAI,0CAAiB,CAAC,eAAe,CAAC;YACzC,CAAC,EAAE,IAAI,0CAAiB,CAAC,eAAe,CAAC;SACzC,CAAC;QAEF,KAAK,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;IACtC,CAAC;CACD;AAnBD,0CAmBC"}
@@ -1,7 +1,7 @@
1
1
  import { IExecuteFunctions, IExecuteSingleFunctions, ILoadOptionsFunctions } from 'n8n-core';
2
2
  import { IDataObject } from 'n8n-workflow';
3
- export declare function googleApiRequest(this: IExecuteFunctions | IExecuteSingleFunctions | ILoadOptionsFunctions, method: string, endpoint: string, body?: any, qs?: IDataObject, uri?: string, option?: IDataObject): Promise<any>;
4
- export declare function googleApiRequestAllItems(this: IExecuteFunctions | ILoadOptionsFunctions, propertyName: string, method: string, endpoint: string, body?: any, query?: IDataObject, uri?: string): Promise<any>;
3
+ export declare function googleApiRequest(this: IExecuteFunctions | IExecuteSingleFunctions | ILoadOptionsFunctions, method: string, endpoint: string, body?: IDataObject, qs?: IDataObject, uri?: string, option?: IDataObject): Promise<any>;
4
+ export declare function googleApiRequestAllItems(this: IExecuteFunctions | ILoadOptionsFunctions, propertyName: string, method: string, endpoint: string, body?: IDataObject, query?: IDataObject, uri?: string): Promise<IDataObject[]>;
5
5
  export declare function simplify(responseData: any | [any]): IDataObject[];
6
6
  export declare function merge(responseData: [any]): {
7
7
  columnHeader: IDataObject;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.merge = exports.simplify = exports.googleApiRequestAllItems = exports.googleApiRequest = void 0;
4
4
  const n8n_workflow_1 = require("n8n-workflow");
5
5
  async function googleApiRequest(method, endpoint, body = {}, qs = {}, uri, option = {}) {
6
+ const baseURL = 'https://analyticsreporting.googleapis.com';
6
7
  let options = {
7
8
  headers: {
8
9
  Accept: 'application/json',
@@ -11,7 +12,7 @@ async function googleApiRequest(method, endpoint, body = {}, qs = {}, uri, optio
11
12
  method,
12
13
  body,
13
14
  qs,
14
- uri: uri || `https://analyticsreporting.googleapis.com${endpoint}`,
15
+ uri: uri || `${baseURL}${endpoint}`,
15
16
  json: true,
16
17
  };
17
18
  options = Object.assign({}, options, option);
@@ -25,7 +26,15 @@ async function googleApiRequest(method, endpoint, body = {}, qs = {}, uri, optio
25
26
  return await this.helpers.requestOAuth2.call(this, 'googleAnalyticsOAuth2', options);
26
27
  }
27
28
  catch (error) {
28
- throw new n8n_workflow_1.NodeApiError(this.getNode(), error);
29
+ const errorData = (error.message || '').split(' - ')[1];
30
+ if (errorData) {
31
+ const parsedError = JSON.parse(errorData.trim());
32
+ const [message, ...rest] = parsedError.error.message.split('\n');
33
+ const description = rest.join('\n');
34
+ const httpCode = parsedError.error.code;
35
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), error, { message, description, httpCode });
36
+ }
37
+ throw new n8n_workflow_1.NodeApiError(this.getNode(), error, { message: error.message });
29
38
  }
30
39
  }
31
40
  exports.googleApiRequest = googleApiRequest;
@@ -36,7 +45,8 @@ async function googleApiRequestAllItems(propertyName, method, endpoint, body = {
36
45
  do {
37
46
  responseData = await googleApiRequest.call(this, method, endpoint, body, query, uri);
38
47
  if (body.reportRequests && Array.isArray(body.reportRequests)) {
39
- body.reportRequests[0].pageToken = responseData[propertyName][0].nextPageToken;
48
+ body.reportRequests[0].pageToken =
49
+ responseData[propertyName][0].nextPageToken;
40
50
  }
41
51
  else {
42
52
  body.pageToken = responseData.nextPageToken;
@@ -49,20 +59,25 @@ async function googleApiRequestAllItems(propertyName, method, endpoint, body = {
49
59
  exports.googleApiRequestAllItems = googleApiRequestAllItems;
50
60
  function simplify(responseData) {
51
61
  const response = [];
52
- for (const { columnHeader: { dimensions }, data: { rows }, } of responseData) {
62
+ for (const { columnHeader: { dimensions, metricHeader }, data: { rows }, } of responseData) {
53
63
  if (rows === undefined) {
54
64
  continue;
55
65
  }
66
+ const metrics = metricHeader.metricHeaderEntries.map((entry) => entry.name);
56
67
  for (const row of rows) {
57
68
  const data = {};
58
69
  if (dimensions) {
59
70
  for (let i = 0; i < dimensions.length; i++) {
60
71
  data[dimensions[i]] = row.dimensions[i];
61
- data.total = row.metrics[0].values.join(',');
72
+ for (const [index, metric] of metrics.entries()) {
73
+ data[metric] = row.metrics[0].values[index];
74
+ }
62
75
  }
63
76
  }
64
77
  else {
65
- data.total = row.metrics[0].values.join(',');
78
+ for (const [index, metric] of metrics.entries()) {
79
+ data[metric] = row.metrics[0].values[index];
80
+ }
66
81
  }
67
82
  response.push(data);
68
83
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GenericFunctions.js","sourceRoot":"","sources":["../../../../../nodes/Google/Analytics/v1/GenericFunctions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { IExecuteFunctions } from 'n8n-core';
2
+ import { ILoadOptionsFunctions, INodeExecutionData, INodePropertyOptions, INodeType, INodeTypeBaseDescription, INodeTypeDescription } from 'n8n-workflow';
3
+ export declare class GoogleAnalyticsV1 implements INodeType {
4
+ description: INodeTypeDescription;
5
+ constructor(baseDescription: INodeTypeBaseDescription);
6
+ methods: {
7
+ loadOptions: {
8
+ getDimensions(this: ILoadOptionsFunctions): Promise<INodePropertyOptions[]>;
9
+ getViews(this: ILoadOptionsFunctions): Promise<INodePropertyOptions[]>;
10
+ };
11
+ };
12
+ execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
13
+ }