feat(Google BigQuery Node): Node improvements (#4877)
* :zap: setup
* :zap: finished v2 setup
* :zap: fix return all, fix simplify with nested schema
* :zap: fix for external tables, updated scopes
* :zap: query operation
* :zap: linter fixes
* :zap: fixed not processed errors when inserting, move main loop to execute function to allow bulk request
* :zap: customizible batch size when inserting, improoved errors
* :zap: options for mapping input
* :zap: fix for inserting RECORD type
* :zap: updated simplify logic
* :zap: fix for return with selected fields
* :zap: option to return table schema
* :zap: linter fixes
* :zap: fix imports
* :zap: query resource and fixes, rlc for projects
* :zap: removed simplify, added raw output option
* :zap: rlc for tables and datasets, no urls option
* :zap: updated hints and description of query parameter, fix getMany VIEW, multioptions fo fields
* :zap: added case when rows are empty
* :zap: linter fixes
* :zap: UI update, one resource
* :zap: fix for output with field named json
* :zap: using jobs instead queries
* :zap: added error message
* :zap: search for RLCs, fixes
* :zap: json processing
* :zap: removed getAll operation
* :zap: executeQuery update
* :zap: unit test
* :zap: tests setup, fixes
* :zap: tests
* Remove script for checking unused loadOptions
---------
Co-authored-by: agobrech <ael.gobrecht@gmail.com>
2023-04-19 05:55:01 -07:00
|
|
|
import type { INodeTypeBaseDescription, IVersionedNodeType } from 'n8n-workflow';
|
|
|
|
import { VersionedNodeType } from 'n8n-workflow';
|
|
|
|
|
|
|
|
import { GoogleBigQueryV1 } from './v1/GoogleBigQueryV1.node';
|
|
|
|
import { GoogleBigQueryV2 } from './v2/GoogleBigQueryV2.node';
|
|
|
|
|
|
|
|
export class GoogleBigQuery extends VersionedNodeType {
|
|
|
|
constructor() {
|
|
|
|
const baseDescription: INodeTypeBaseDescription = {
|
|
|
|
displayName: 'Google BigQuery',
|
|
|
|
name: 'googleBigQuery',
|
|
|
|
icon: 'file:googleBigQuery.svg',
|
|
|
|
group: ['input'],
|
|
|
|
subtitle: '={{$parameter["operation"] + ": " + $parameter["resource"]}}',
|
|
|
|
description: 'Consume Google BigQuery API',
|
|
|
|
defaultVersion: 2,
|
|
|
|
};
|
|
|
|
|
|
|
|
const nodeVersions: IVersionedNodeType['nodeVersions'] = {
|
|
|
|
1: new GoogleBigQueryV1(baseDescription),
|
|
|
|
2: new GoogleBigQueryV2(baseDescription),
|
|
|
|
};
|
|
|
|
|
|
|
|
super(nodeVersions, baseDescription);
|
2021-04-17 06:04:25 -07:00
|
|
|
}
|
|
|
|
}
|