@8ms/helpers 3.2.9 → 3.2.10
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/dist/adverity/server/getJobs.cjs +1 -1
- package/dist/adverity/server/getJobs.mjs +1 -1
- package/dist/api/_shared/index.cjs +1 -1
- package/dist/api/_shared/index.mjs +1 -1
- package/dist/api/client/index.cjs +1 -1
- package/dist/api/client/index.mjs +1 -1
- package/dist/api/server/index.cjs +1 -1
- package/dist/api/server/index.mjs +1 -1
- package/dist/googleCloud/bigquery/_shared/types.d.cts +3 -6
- package/dist/googleCloud/bigquery/_shared/types.d.mts +3 -6
- package/dist/googleCloud/bigquery/server/GoogleCloudBigquery.cjs +24 -27
- package/dist/googleCloud/bigquery/server/GoogleCloudBigquery.d.cts +1 -1
- package/dist/googleCloud/bigquery/server/GoogleCloudBigquery.d.mts +1 -1
- package/dist/googleCloud/bigquery/server/GoogleCloudBigquery.mjs +24 -27
- package/dist/lodash/_shared/index.cjs +4 -4
- package/dist/lodash/_shared/index.mjs +4 -4
- package/dist/lodash/client/index.cjs +4 -4
- package/dist/lodash/client/index.mjs +4 -4
- package/dist/lodash/server/index.cjs +4 -4
- package/dist/lodash/server/index.mjs +4 -4
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_api__shared_get = require("../../api/_shared/get.cjs");
|
|
2
3
|
const require_date__shared_calculation = require("../../date/_shared/calculation.cjs");
|
|
3
4
|
const require_date__shared_format = require("../../date/_shared/format.cjs");
|
|
4
|
-
const require_api__shared_get = require("../../api/_shared/get.cjs");
|
|
5
5
|
//#region src/adverity/server/getJobs.ts
|
|
6
6
|
/**
|
|
7
7
|
* Fetch all the jobs that ran yesterday by default.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { get } from "../../api/_shared/get.mjs";
|
|
1
2
|
import { getLuxonDate, getToday, getYesterday } from "../../date/_shared/calculation.mjs";
|
|
2
3
|
import { getYmdString } from "../../date/_shared/format.mjs";
|
|
3
|
-
import { get } from "../../api/_shared/get.mjs";
|
|
4
4
|
//#region src/adverity/server/getJobs.ts
|
|
5
5
|
/**
|
|
6
6
|
* Fetch all the jobs that ran yesterday by default.
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
const require_api__shared_api = require("./api.cjs");
|
|
3
3
|
const require_api__shared_ApiResponseClass = require("./ApiResponseClass.cjs");
|
|
4
|
-
const require_api__shared_get = require("./get.cjs");
|
|
5
4
|
const require_api__shared_deleteRequest = require("./deleteRequest.cjs");
|
|
6
5
|
const require_api__shared_functions = require("./functions.cjs");
|
|
6
|
+
const require_api__shared_get = require("./get.cjs");
|
|
7
7
|
const require_api__shared_httpMethod = require("./httpMethod.cjs");
|
|
8
8
|
const require_api__shared_post = require("./post.cjs");
|
|
9
9
|
exports.ApiResponseClass = require_api__shared_ApiResponseClass.ApiResponseClass;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { apiState, defaultResponse, unexpectedError } from "./api.mjs";
|
|
2
2
|
import { ApiResponseClass } from "./ApiResponseClass.mjs";
|
|
3
|
-
import { get } from "./get.mjs";
|
|
4
3
|
import { deleteRequest } from "./deleteRequest.mjs";
|
|
5
4
|
import { isCancelled, isError, isIdle, isPending, isSuccess, isValidationError } from "./functions.mjs";
|
|
5
|
+
import { get } from "./get.mjs";
|
|
6
6
|
import { httpMethod } from "./httpMethod.mjs";
|
|
7
7
|
import { post } from "./post.mjs";
|
|
8
8
|
export { ApiResponseClass, apiState, defaultResponse, deleteRequest, get, httpMethod, isCancelled, isError, isIdle, isPending, isSuccess, isValidationError, post, unexpectedError };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
const require_api__shared_api = require("../_shared/api.cjs");
|
|
3
3
|
const require_api__shared_ApiResponseClass = require("../_shared/ApiResponseClass.cjs");
|
|
4
|
-
const require_api__shared_get = require("../_shared/get.cjs");
|
|
5
4
|
const require_api__shared_deleteRequest = require("../_shared/deleteRequest.cjs");
|
|
6
5
|
const require_api__shared_functions = require("../_shared/functions.cjs");
|
|
6
|
+
const require_api__shared_get = require("../_shared/get.cjs");
|
|
7
7
|
const require_api__shared_httpMethod = require("../_shared/httpMethod.cjs");
|
|
8
8
|
const require_api__shared_post = require("../_shared/post.cjs");
|
|
9
9
|
require("../_shared/index.cjs");
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { apiState, defaultResponse, unexpectedError } from "../_shared/api.mjs";
|
|
2
2
|
import { ApiResponseClass } from "../_shared/ApiResponseClass.mjs";
|
|
3
|
-
import { get } from "../_shared/get.mjs";
|
|
4
3
|
import { deleteRequest } from "../_shared/deleteRequest.mjs";
|
|
5
4
|
import { isCancelled, isError, isIdle, isPending, isSuccess, isValidationError } from "../_shared/functions.mjs";
|
|
5
|
+
import { get } from "../_shared/get.mjs";
|
|
6
6
|
import { httpMethod } from "../_shared/httpMethod.mjs";
|
|
7
7
|
import { post } from "../_shared/post.mjs";
|
|
8
8
|
import "../_shared/index.mjs";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
const require_api__shared_api = require("../_shared/api.cjs");
|
|
3
3
|
const require_api__shared_ApiResponseClass = require("../_shared/ApiResponseClass.cjs");
|
|
4
|
-
const require_api__shared_get = require("../_shared/get.cjs");
|
|
5
4
|
const require_api__shared_deleteRequest = require("../_shared/deleteRequest.cjs");
|
|
6
5
|
const require_api__shared_functions = require("../_shared/functions.cjs");
|
|
6
|
+
const require_api__shared_get = require("../_shared/get.cjs");
|
|
7
7
|
const require_api__shared_httpMethod = require("../_shared/httpMethod.cjs");
|
|
8
8
|
const require_api__shared_post = require("../_shared/post.cjs");
|
|
9
9
|
require("../_shared/index.cjs");
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { apiState, defaultResponse, unexpectedError } from "../_shared/api.mjs";
|
|
2
2
|
import { ApiResponseClass } from "../_shared/ApiResponseClass.mjs";
|
|
3
|
-
import { get } from "../_shared/get.mjs";
|
|
4
3
|
import { deleteRequest } from "../_shared/deleteRequest.mjs";
|
|
5
4
|
import { isCancelled, isError, isIdle, isPending, isSuccess, isValidationError } from "../_shared/functions.mjs";
|
|
5
|
+
import { get } from "../_shared/get.mjs";
|
|
6
6
|
import { httpMethod } from "../_shared/httpMethod.mjs";
|
|
7
7
|
import { post } from "../_shared/post.mjs";
|
|
8
8
|
import "../_shared/index.mjs";
|
|
@@ -10,7 +10,7 @@ export type BigqueryLoadFormat = typeof fileType.CSV | typeof fileType.JSON_NEWL
|
|
|
10
10
|
export type TableDefinition = {
|
|
11
11
|
projectId?: string;
|
|
12
12
|
datasetId: string;
|
|
13
|
-
tableId
|
|
13
|
+
tableId?: string;
|
|
14
14
|
options?: {
|
|
15
15
|
location?: string;
|
|
16
16
|
schema: BQField[];
|
|
@@ -45,11 +45,8 @@ export type LoadData<TData> = {
|
|
|
45
45
|
sourceFormat?: BigqueryLoadFormat;
|
|
46
46
|
region?: string;
|
|
47
47
|
};
|
|
48
|
-
table: {
|
|
49
|
-
|
|
50
|
-
tableId?: string;
|
|
51
|
-
region?: string;
|
|
52
|
-
definition?: TableDefinition;
|
|
48
|
+
table: TableDefinition & {
|
|
49
|
+
tableId: string;
|
|
53
50
|
};
|
|
54
51
|
};
|
|
55
52
|
export type LoadTableProps = LoadData<any[]>;
|
|
@@ -10,7 +10,7 @@ export type BigqueryLoadFormat = typeof fileType.CSV | typeof fileType.JSON_NEWL
|
|
|
10
10
|
export type TableDefinition = {
|
|
11
11
|
projectId?: string;
|
|
12
12
|
datasetId: string;
|
|
13
|
-
tableId
|
|
13
|
+
tableId?: string;
|
|
14
14
|
options?: {
|
|
15
15
|
location?: string;
|
|
16
16
|
schema: BQField[];
|
|
@@ -45,11 +45,8 @@ export type LoadData<TData> = {
|
|
|
45
45
|
sourceFormat?: BigqueryLoadFormat;
|
|
46
46
|
region?: string;
|
|
47
47
|
};
|
|
48
|
-
table: {
|
|
49
|
-
|
|
50
|
-
tableId?: string;
|
|
51
|
-
region?: string;
|
|
52
|
-
definition?: TableDefinition;
|
|
48
|
+
table: TableDefinition & {
|
|
49
|
+
tableId: string;
|
|
53
50
|
};
|
|
54
51
|
};
|
|
55
52
|
export type LoadTableProps = LoadData<any[]>;
|
|
@@ -147,11 +147,9 @@ var GoogleCloudBigquery = class extends require__class__shared_BaseNamespace.Bas
|
|
|
147
147
|
* pre-checking existence and silently skipping the load if it isn't there.
|
|
148
148
|
*/
|
|
149
149
|
loadData = async (props) => {
|
|
150
|
-
const
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
await this.createTable(props.table.datasetId, {}, finalTableId, props.table.definition?.options);
|
|
154
|
-
await this.client.dataset(props.table.datasetId, { location: finalRegion }).table(finalTableId).load(props.googleCloudStorage.client.bucket(props.file.bucket).file(props.file.key), {
|
|
150
|
+
const finalRegion = props.table.options?.location ?? this.region;
|
|
151
|
+
await this.createTable(props.table.datasetId, {}, props.table.tableId, props.table.options);
|
|
152
|
+
await this.client.dataset(props.table.datasetId, { location: finalRegion }).table(props.table.tableId).load(props.googleCloudStorage.client.bucket(props.file.bucket).file(props.file.key), {
|
|
155
153
|
autodetect: true,
|
|
156
154
|
sourceFormat: bigQuerySourceFormat[props.file.sourceFormat ?? require_file__shared_fileType.fileType.JSON_NEWLINE],
|
|
157
155
|
schemaUpdateOptions: ["ALLOW_FIELD_ADDITION"],
|
|
@@ -165,8 +163,14 @@ var GoogleCloudBigquery = class extends require__class__shared_BaseNamespace.Bas
|
|
|
165
163
|
* this library has no Parquet encoder.
|
|
166
164
|
*/
|
|
167
165
|
loadTable = async (props) => {
|
|
168
|
-
const
|
|
169
|
-
|
|
166
|
+
const finalSourceFormat = props.file?.sourceFormat ?? require_file__shared_fileType.fileType.JSON_NEWLINE;
|
|
167
|
+
let finalData;
|
|
168
|
+
switch (finalSourceFormat) {
|
|
169
|
+
case require_file__shared_fileType.fileType.JSON_NEWLINE:
|
|
170
|
+
finalData = require_json__shared_getJsonNewline.getJsonNewline(props.file.data);
|
|
171
|
+
break;
|
|
172
|
+
default: finalData = props.file.data;
|
|
173
|
+
}
|
|
170
174
|
await props.googleCloudStorage.writeFile(props.file.bucket, props.file.key, finalData);
|
|
171
175
|
await this.loadData(props);
|
|
172
176
|
};
|
|
@@ -198,12 +202,12 @@ var GoogleCloudBigquery = class extends require__class__shared_BaseNamespace.Bas
|
|
|
198
202
|
* Partitioning is immutable on an existing BigQuery table - changing it requires recreating the
|
|
199
203
|
* table and backfilling data, which this method deliberately does not attempt.
|
|
200
204
|
*/
|
|
201
|
-
|
|
202
|
-
const [metadata] = await this.client.dataset(datasetId).table(tableId).getMetadata();
|
|
205
|
+
updateTableClustering = async (table) => {
|
|
206
|
+
const [metadata] = await this.client.dataset(table.datasetId).table(table.tableId).getMetadata();
|
|
203
207
|
const currentFields = metadata?.clustering?.fields ?? [];
|
|
204
|
-
const desiredFields = clustering?.fields ?? [];
|
|
208
|
+
const desiredFields = table.options?.clustering?.fields ?? [];
|
|
205
209
|
if (currentFields.length === desiredFields.length && currentFields.every((field, index) => field === desiredFields[index])) return;
|
|
206
|
-
await this.client.dataset(datasetId).table(tableId).setMetadata(desiredFields.length > 0 ? { clustering: { fields: desiredFields } } : { clustering: void 0 });
|
|
210
|
+
await this.client.dataset(table.datasetId).table(table.tableId).setMetadata(desiredFields.length > 0 ? { clustering: { fields: desiredFields } } : { clustering: void 0 });
|
|
207
211
|
};
|
|
208
212
|
/**
|
|
209
213
|
* Upsert rows into a table via a staging table + a single MERGE statement.
|
|
@@ -214,18 +218,16 @@ var GoogleCloudBigquery = class extends require__class__shared_BaseNamespace.Bas
|
|
|
214
218
|
*/
|
|
215
219
|
mergeTable = async (props) => {
|
|
216
220
|
if (0 === props.file.data.length) return;
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
if (await this.tableExists(props.table.datasetId, finalTableId)) await this.syncTableClustering(props.table.datasetId, finalTableId, props.table.definition?.options?.clustering);
|
|
220
|
-
const stagingTableId = `${finalTableId}_staging_${require_date__shared_format.getYmdHisNumber()}`;
|
|
221
|
+
if (await this.tableExists(props.table.datasetId, props.table.tableId)) await this.updateTableClustering(props.table);
|
|
222
|
+
const stagingTableId = `${props.table.tableId}_staging_${require_date__shared_format.getYmdHisNumber()}`;
|
|
221
223
|
const stagingTableRef = `\`${props.table.datasetId}.${stagingTableId}\``;
|
|
222
224
|
try {
|
|
225
|
+
const { mergeKey: _mergeKey, updateColumns: _updateColumns, ...tableDefinition } = props.table;
|
|
223
226
|
const stagingDefinition = {
|
|
224
|
-
...
|
|
225
|
-
datasetId: props.table.datasetId,
|
|
227
|
+
...tableDefinition,
|
|
226
228
|
tableId: stagingTableId,
|
|
227
|
-
options: props.table.
|
|
228
|
-
...props.table.
|
|
229
|
+
options: props.table.options ? {
|
|
230
|
+
...props.table.options,
|
|
229
231
|
timePartitioning: void 0,
|
|
230
232
|
clustering: void 0
|
|
231
233
|
} : void 0
|
|
@@ -233,16 +235,11 @@ var GoogleCloudBigquery = class extends require__class__shared_BaseNamespace.Bas
|
|
|
233
235
|
await this.loadTable({
|
|
234
236
|
googleCloudStorage: props.googleCloudStorage,
|
|
235
237
|
file: props.file,
|
|
236
|
-
table:
|
|
237
|
-
datasetId: props.table.datasetId,
|
|
238
|
-
definition: stagingDefinition,
|
|
239
|
-
tableId: stagingTableId,
|
|
240
|
-
region: props.table.region
|
|
241
|
-
}
|
|
238
|
+
table: stagingDefinition
|
|
242
239
|
});
|
|
243
|
-
const mainTableRef = `\`${props.table.datasetId}.${
|
|
240
|
+
const mainTableRef = `\`${props.table.datasetId}.${props.table.tableId}\``;
|
|
244
241
|
const updateSet = props.table.updateColumns.map((column) => `${column} = S.${column}`).join(", ");
|
|
245
|
-
const allColumns = props.table.
|
|
242
|
+
const allColumns = props.table.options?.schema.map((field) => field.name) ?? [];
|
|
246
243
|
const mergeQuery = `
|
|
247
244
|
MERGE ${mainTableRef} AS T
|
|
248
245
|
USING ${stagingTableRef} AS S
|
|
@@ -79,7 +79,7 @@ export declare class GoogleCloudBigquery extends BaseNamespace {
|
|
|
79
79
|
* Partitioning is immutable on an existing BigQuery table - changing it requires recreating the
|
|
80
80
|
* table and backfilling data, which this method deliberately does not attempt.
|
|
81
81
|
*/
|
|
82
|
-
private
|
|
82
|
+
private updateTableClustering;
|
|
83
83
|
/**
|
|
84
84
|
* Upsert rows into a table via a staging table + a single MERGE statement.
|
|
85
85
|
*
|
|
@@ -79,7 +79,7 @@ export declare class GoogleCloudBigquery extends BaseNamespace {
|
|
|
79
79
|
* Partitioning is immutable on an existing BigQuery table - changing it requires recreating the
|
|
80
80
|
* table and backfilling data, which this method deliberately does not attempt.
|
|
81
81
|
*/
|
|
82
|
-
private
|
|
82
|
+
private updateTableClustering;
|
|
83
83
|
/**
|
|
84
84
|
* Upsert rows into a table via a staging table + a single MERGE statement.
|
|
85
85
|
*
|
|
@@ -146,11 +146,9 @@ var GoogleCloudBigquery = class extends BaseNamespace {
|
|
|
146
146
|
* pre-checking existence and silently skipping the load if it isn't there.
|
|
147
147
|
*/
|
|
148
148
|
loadData = async (props) => {
|
|
149
|
-
const
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
await this.createTable(props.table.datasetId, {}, finalTableId, props.table.definition?.options);
|
|
153
|
-
await this.client.dataset(props.table.datasetId, { location: finalRegion }).table(finalTableId).load(props.googleCloudStorage.client.bucket(props.file.bucket).file(props.file.key), {
|
|
149
|
+
const finalRegion = props.table.options?.location ?? this.region;
|
|
150
|
+
await this.createTable(props.table.datasetId, {}, props.table.tableId, props.table.options);
|
|
151
|
+
await this.client.dataset(props.table.datasetId, { location: finalRegion }).table(props.table.tableId).load(props.googleCloudStorage.client.bucket(props.file.bucket).file(props.file.key), {
|
|
154
152
|
autodetect: true,
|
|
155
153
|
sourceFormat: bigQuerySourceFormat[props.file.sourceFormat ?? fileType.JSON_NEWLINE],
|
|
156
154
|
schemaUpdateOptions: ["ALLOW_FIELD_ADDITION"],
|
|
@@ -164,8 +162,14 @@ var GoogleCloudBigquery = class extends BaseNamespace {
|
|
|
164
162
|
* this library has no Parquet encoder.
|
|
165
163
|
*/
|
|
166
164
|
loadTable = async (props) => {
|
|
167
|
-
const
|
|
168
|
-
|
|
165
|
+
const finalSourceFormat = props.file?.sourceFormat ?? fileType.JSON_NEWLINE;
|
|
166
|
+
let finalData;
|
|
167
|
+
switch (finalSourceFormat) {
|
|
168
|
+
case fileType.JSON_NEWLINE:
|
|
169
|
+
finalData = getJsonNewline(props.file.data);
|
|
170
|
+
break;
|
|
171
|
+
default: finalData = props.file.data;
|
|
172
|
+
}
|
|
169
173
|
await props.googleCloudStorage.writeFile(props.file.bucket, props.file.key, finalData);
|
|
170
174
|
await this.loadData(props);
|
|
171
175
|
};
|
|
@@ -197,12 +201,12 @@ var GoogleCloudBigquery = class extends BaseNamespace {
|
|
|
197
201
|
* Partitioning is immutable on an existing BigQuery table - changing it requires recreating the
|
|
198
202
|
* table and backfilling data, which this method deliberately does not attempt.
|
|
199
203
|
*/
|
|
200
|
-
|
|
201
|
-
const [metadata] = await this.client.dataset(datasetId).table(tableId).getMetadata();
|
|
204
|
+
updateTableClustering = async (table) => {
|
|
205
|
+
const [metadata] = await this.client.dataset(table.datasetId).table(table.tableId).getMetadata();
|
|
202
206
|
const currentFields = metadata?.clustering?.fields ?? [];
|
|
203
|
-
const desiredFields = clustering?.fields ?? [];
|
|
207
|
+
const desiredFields = table.options?.clustering?.fields ?? [];
|
|
204
208
|
if (currentFields.length === desiredFields.length && currentFields.every((field, index) => field === desiredFields[index])) return;
|
|
205
|
-
await this.client.dataset(datasetId).table(tableId).setMetadata(desiredFields.length > 0 ? { clustering: { fields: desiredFields } } : { clustering: void 0 });
|
|
209
|
+
await this.client.dataset(table.datasetId).table(table.tableId).setMetadata(desiredFields.length > 0 ? { clustering: { fields: desiredFields } } : { clustering: void 0 });
|
|
206
210
|
};
|
|
207
211
|
/**
|
|
208
212
|
* Upsert rows into a table via a staging table + a single MERGE statement.
|
|
@@ -213,18 +217,16 @@ var GoogleCloudBigquery = class extends BaseNamespace {
|
|
|
213
217
|
*/
|
|
214
218
|
mergeTable = async (props) => {
|
|
215
219
|
if (0 === props.file.data.length) return;
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
if (await this.tableExists(props.table.datasetId, finalTableId)) await this.syncTableClustering(props.table.datasetId, finalTableId, props.table.definition?.options?.clustering);
|
|
219
|
-
const stagingTableId = `${finalTableId}_staging_${getYmdHisNumber()}`;
|
|
220
|
+
if (await this.tableExists(props.table.datasetId, props.table.tableId)) await this.updateTableClustering(props.table);
|
|
221
|
+
const stagingTableId = `${props.table.tableId}_staging_${getYmdHisNumber()}`;
|
|
220
222
|
const stagingTableRef = `\`${props.table.datasetId}.${stagingTableId}\``;
|
|
221
223
|
try {
|
|
224
|
+
const { mergeKey: _mergeKey, updateColumns: _updateColumns, ...tableDefinition } = props.table;
|
|
222
225
|
const stagingDefinition = {
|
|
223
|
-
...
|
|
224
|
-
datasetId: props.table.datasetId,
|
|
226
|
+
...tableDefinition,
|
|
225
227
|
tableId: stagingTableId,
|
|
226
|
-
options: props.table.
|
|
227
|
-
...props.table.
|
|
228
|
+
options: props.table.options ? {
|
|
229
|
+
...props.table.options,
|
|
228
230
|
timePartitioning: void 0,
|
|
229
231
|
clustering: void 0
|
|
230
232
|
} : void 0
|
|
@@ -232,16 +234,11 @@ var GoogleCloudBigquery = class extends BaseNamespace {
|
|
|
232
234
|
await this.loadTable({
|
|
233
235
|
googleCloudStorage: props.googleCloudStorage,
|
|
234
236
|
file: props.file,
|
|
235
|
-
table:
|
|
236
|
-
datasetId: props.table.datasetId,
|
|
237
|
-
definition: stagingDefinition,
|
|
238
|
-
tableId: stagingTableId,
|
|
239
|
-
region: props.table.region
|
|
240
|
-
}
|
|
237
|
+
table: stagingDefinition
|
|
241
238
|
});
|
|
242
|
-
const mainTableRef = `\`${props.table.datasetId}.${
|
|
239
|
+
const mainTableRef = `\`${props.table.datasetId}.${props.table.tableId}\``;
|
|
243
240
|
const updateSet = props.table.updateColumns.map((column) => `${column} = S.${column}`).join(", ");
|
|
244
|
-
const allColumns = props.table.
|
|
241
|
+
const allColumns = props.table.options?.schema.map((field) => field.name) ?? [];
|
|
245
242
|
const mergeQuery = `
|
|
246
243
|
MERGE ${mainTableRef} AS T
|
|
247
244
|
USING ${stagingTableRef} AS S
|
|
@@ -2,16 +2,16 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
|
2
2
|
const require_lodash__shared_set = require("./set.cjs");
|
|
3
3
|
const require_lodash__shared_isObject = require("./isObject.cjs");
|
|
4
4
|
const require_lodash__shared_isDate = require("./isDate.cjs");
|
|
5
|
+
const require_lodash__shared_merge = require("./merge.cjs");
|
|
6
|
+
const require_lodash__shared_unescape = require("./unescape.cjs");
|
|
7
|
+
const require_lodash__shared_trim = require("./trim.cjs");
|
|
5
8
|
const require_lodash__shared_chunk = require("./chunk.cjs");
|
|
6
|
-
const require_lodash__shared_findKey = require("./findKey.cjs");
|
|
7
9
|
const require_lodash__shared_flatten = require("./flatten.cjs");
|
|
8
|
-
const
|
|
10
|
+
const require_lodash__shared_findKey = require("./findKey.cjs");
|
|
9
11
|
const require_lodash__shared_isEmpty = require("./isEmpty.cjs");
|
|
10
12
|
const require_lodash__shared_isEqual = require("./isEqual.cjs");
|
|
11
13
|
const require_lodash__shared_isFunction = require("./isFunction.cjs");
|
|
12
|
-
const require_lodash__shared_merge = require("./merge.cjs");
|
|
13
14
|
const require_lodash__shared_orderBy = require("./orderBy.cjs");
|
|
14
|
-
const require_lodash__shared_unescape = require("./unescape.cjs");
|
|
15
15
|
const require_lodash__shared_uniq = require("./uniq.cjs");
|
|
16
16
|
const require_lodash__shared_uniqBy = require("./uniqBy.cjs");
|
|
17
17
|
exports.chunk = require_lodash__shared_chunk.chunk;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { set } from "./set.mjs";
|
|
2
2
|
import { isObject } from "./isObject.mjs";
|
|
3
3
|
import { isDate } from "./isDate.mjs";
|
|
4
|
+
import { merge } from "./merge.mjs";
|
|
5
|
+
import { unescape } from "./unescape.mjs";
|
|
6
|
+
import { trim } from "./trim.mjs";
|
|
4
7
|
import { chunk } from "./chunk.mjs";
|
|
5
|
-
import { findKey } from "./findKey.mjs";
|
|
6
8
|
import { flatten } from "./flatten.mjs";
|
|
7
|
-
import {
|
|
9
|
+
import { findKey } from "./findKey.mjs";
|
|
8
10
|
import { isEmpty } from "./isEmpty.mjs";
|
|
9
11
|
import { isEqual } from "./isEqual.mjs";
|
|
10
12
|
import { isFunction } from "./isFunction.mjs";
|
|
11
|
-
import { merge } from "./merge.mjs";
|
|
12
13
|
import { orderBy } from "./orderBy.mjs";
|
|
13
|
-
import { unescape } from "./unescape.mjs";
|
|
14
14
|
import { uniq } from "./uniq.mjs";
|
|
15
15
|
import { uniqBy } from "./uniqBy.mjs";
|
|
16
16
|
export { chunk, findKey, flatten, isDate, isEmpty, isEqual, isFunction, isObject, merge, orderBy, set, trim, unescape, uniq, uniqBy };
|
|
@@ -2,16 +2,16 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
|
2
2
|
const require_lodash__shared_set = require("../_shared/set.cjs");
|
|
3
3
|
const require_lodash__shared_isObject = require("../_shared/isObject.cjs");
|
|
4
4
|
const require_lodash__shared_isDate = require("../_shared/isDate.cjs");
|
|
5
|
+
const require_lodash__shared_merge = require("../_shared/merge.cjs");
|
|
6
|
+
const require_lodash__shared_unescape = require("../_shared/unescape.cjs");
|
|
7
|
+
const require_lodash__shared_trim = require("../_shared/trim.cjs");
|
|
5
8
|
const require_lodash__shared_chunk = require("../_shared/chunk.cjs");
|
|
6
|
-
const require_lodash__shared_findKey = require("../_shared/findKey.cjs");
|
|
7
9
|
const require_lodash__shared_flatten = require("../_shared/flatten.cjs");
|
|
8
|
-
const
|
|
10
|
+
const require_lodash__shared_findKey = require("../_shared/findKey.cjs");
|
|
9
11
|
const require_lodash__shared_isEmpty = require("../_shared/isEmpty.cjs");
|
|
10
12
|
const require_lodash__shared_isEqual = require("../_shared/isEqual.cjs");
|
|
11
13
|
const require_lodash__shared_isFunction = require("../_shared/isFunction.cjs");
|
|
12
|
-
const require_lodash__shared_merge = require("../_shared/merge.cjs");
|
|
13
14
|
const require_lodash__shared_orderBy = require("../_shared/orderBy.cjs");
|
|
14
|
-
const require_lodash__shared_unescape = require("../_shared/unescape.cjs");
|
|
15
15
|
const require_lodash__shared_uniq = require("../_shared/uniq.cjs");
|
|
16
16
|
const require_lodash__shared_uniqBy = require("../_shared/uniqBy.cjs");
|
|
17
17
|
exports.chunk = require_lodash__shared_chunk.chunk;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { set } from "../_shared/set.mjs";
|
|
2
2
|
import { isObject } from "../_shared/isObject.mjs";
|
|
3
3
|
import { isDate } from "../_shared/isDate.mjs";
|
|
4
|
+
import { merge } from "../_shared/merge.mjs";
|
|
5
|
+
import { unescape } from "../_shared/unescape.mjs";
|
|
6
|
+
import { trim } from "../_shared/trim.mjs";
|
|
4
7
|
import { chunk } from "../_shared/chunk.mjs";
|
|
5
|
-
import { findKey } from "../_shared/findKey.mjs";
|
|
6
8
|
import { flatten } from "../_shared/flatten.mjs";
|
|
7
|
-
import {
|
|
9
|
+
import { findKey } from "../_shared/findKey.mjs";
|
|
8
10
|
import { isEmpty } from "../_shared/isEmpty.mjs";
|
|
9
11
|
import { isEqual } from "../_shared/isEqual.mjs";
|
|
10
12
|
import { isFunction } from "../_shared/isFunction.mjs";
|
|
11
|
-
import { merge } from "../_shared/merge.mjs";
|
|
12
13
|
import { orderBy } from "../_shared/orderBy.mjs";
|
|
13
|
-
import { unescape } from "../_shared/unescape.mjs";
|
|
14
14
|
import { uniq } from "../_shared/uniq.mjs";
|
|
15
15
|
import { uniqBy } from "../_shared/uniqBy.mjs";
|
|
16
16
|
export { chunk, findKey, flatten, isDate, isEmpty, isEqual, isFunction, isObject, merge, orderBy, set, trim, unescape, uniq, uniqBy };
|
|
@@ -2,16 +2,16 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
|
2
2
|
const require_lodash__shared_set = require("../_shared/set.cjs");
|
|
3
3
|
const require_lodash__shared_isObject = require("../_shared/isObject.cjs");
|
|
4
4
|
const require_lodash__shared_isDate = require("../_shared/isDate.cjs");
|
|
5
|
+
const require_lodash__shared_merge = require("../_shared/merge.cjs");
|
|
6
|
+
const require_lodash__shared_unescape = require("../_shared/unescape.cjs");
|
|
7
|
+
const require_lodash__shared_trim = require("../_shared/trim.cjs");
|
|
5
8
|
const require_lodash__shared_chunk = require("../_shared/chunk.cjs");
|
|
6
|
-
const require_lodash__shared_findKey = require("../_shared/findKey.cjs");
|
|
7
9
|
const require_lodash__shared_flatten = require("../_shared/flatten.cjs");
|
|
8
|
-
const
|
|
10
|
+
const require_lodash__shared_findKey = require("../_shared/findKey.cjs");
|
|
9
11
|
const require_lodash__shared_isEmpty = require("../_shared/isEmpty.cjs");
|
|
10
12
|
const require_lodash__shared_isEqual = require("../_shared/isEqual.cjs");
|
|
11
13
|
const require_lodash__shared_isFunction = require("../_shared/isFunction.cjs");
|
|
12
|
-
const require_lodash__shared_merge = require("../_shared/merge.cjs");
|
|
13
14
|
const require_lodash__shared_orderBy = require("../_shared/orderBy.cjs");
|
|
14
|
-
const require_lodash__shared_unescape = require("../_shared/unescape.cjs");
|
|
15
15
|
const require_lodash__shared_uniq = require("../_shared/uniq.cjs");
|
|
16
16
|
const require_lodash__shared_uniqBy = require("../_shared/uniqBy.cjs");
|
|
17
17
|
exports.chunk = require_lodash__shared_chunk.chunk;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { set } from "../_shared/set.mjs";
|
|
2
2
|
import { isObject } from "../_shared/isObject.mjs";
|
|
3
3
|
import { isDate } from "../_shared/isDate.mjs";
|
|
4
|
+
import { merge } from "../_shared/merge.mjs";
|
|
5
|
+
import { unescape } from "../_shared/unescape.mjs";
|
|
6
|
+
import { trim } from "../_shared/trim.mjs";
|
|
4
7
|
import { chunk } from "../_shared/chunk.mjs";
|
|
5
|
-
import { findKey } from "../_shared/findKey.mjs";
|
|
6
8
|
import { flatten } from "../_shared/flatten.mjs";
|
|
7
|
-
import {
|
|
9
|
+
import { findKey } from "../_shared/findKey.mjs";
|
|
8
10
|
import { isEmpty } from "../_shared/isEmpty.mjs";
|
|
9
11
|
import { isEqual } from "../_shared/isEqual.mjs";
|
|
10
12
|
import { isFunction } from "../_shared/isFunction.mjs";
|
|
11
|
-
import { merge } from "../_shared/merge.mjs";
|
|
12
13
|
import { orderBy } from "../_shared/orderBy.mjs";
|
|
13
|
-
import { unescape } from "../_shared/unescape.mjs";
|
|
14
14
|
import { uniq } from "../_shared/uniq.mjs";
|
|
15
15
|
import { uniqBy } from "../_shared/uniqBy.mjs";
|
|
16
16
|
export { chunk, findKey, flatten, isDate, isEmpty, isEqual, isFunction, isObject, merge, orderBy, set, trim, unescape, uniq, uniqBy };
|