google-ads-api 12.0.0 → 12.0.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.
- package/build/src/query.d.ts +5 -1
- package/build/src/query.js +16 -3
- package/build/src/types.d.ts +1 -0
- package/package.json +1 -1
package/build/src/query.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ declare enum QueryKeywords {
|
|
|
6
6
|
WHERE = "WHERE",
|
|
7
7
|
ORDER_BY = "ORDER BY",
|
|
8
8
|
LIMIT = "LIMIT",
|
|
9
|
+
PARAMETERS = "PARAMETERS",
|
|
9
10
|
AND = "AND",
|
|
10
11
|
OR = "OR"
|
|
11
12
|
}
|
|
@@ -16,7 +17,8 @@ declare type FromClause = ` ${QueryKeywords.FROM} ${fields.Resource}`;
|
|
|
16
17
|
declare type WhereClause = ` ${QueryKeywords.WHERE} ${string}` | ``;
|
|
17
18
|
export declare type OrderClause = ` ${QueryKeywords.ORDER_BY} ${string} ${SortOrder}` | ` ${QueryKeywords.ORDER_BY} ${string}` | ``;
|
|
18
19
|
declare type LimitClause = ` ${QueryKeywords.LIMIT} ${number}` | ``;
|
|
19
|
-
declare type
|
|
20
|
+
declare type ParametersClause = ` ${QueryKeywords.PARAMETERS} ${string}` | ``;
|
|
21
|
+
declare type Query = `${SelectClause}${FromClause}${WhereClause}${OrderClause}${LimitClause}${ParametersClause}`;
|
|
20
22
|
export declare const QueryError: {
|
|
21
23
|
INVALID_CONSTRAINTS_FORMAT: string;
|
|
22
24
|
INVALID_CONSTRAINT_KEY: string;
|
|
@@ -26,6 +28,7 @@ export declare const QueryError: {
|
|
|
26
28
|
INVALID_FROM_DATE_TYPE: (fromDate: ReportOptions["from_date"]) => string;
|
|
27
29
|
INVALID_TO_DATE_TYPE: (toDate: ReportOptions["to_date"]) => string;
|
|
28
30
|
INVALID_LIMIT: string;
|
|
31
|
+
INVALID_PARAMETERS: string;
|
|
29
32
|
INVALID_ORDER: string;
|
|
30
33
|
INVALID_ORDERLY: string;
|
|
31
34
|
INVALID_ORDERBY: string;
|
|
@@ -46,6 +49,7 @@ export declare function extractDateConstantConditions(dateConstant: ReportOption
|
|
|
46
49
|
export declare function extractDateConditions(fromDate: ReportOptions["from_date"], toDate: ReportOptions["to_date"]): ConstraintString[];
|
|
47
50
|
export declare function buildWhereClause(constraints: ReportOptions["constraints"], dateConstant: ReportOptions["date_constant"], fromDate: ReportOptions["from_date"], toDate: ReportOptions["to_date"]): WhereClause;
|
|
48
51
|
export declare function buildLimitClause(limit: ReportOptions["limit"]): LimitClause;
|
|
52
|
+
export declare function buildParametersClause(parameters: ReportOptions["parameters"]): ParametersClause;
|
|
49
53
|
export declare function completeOrderly(orderly: string, entity: ReportOptions["entity"]): string;
|
|
50
54
|
export declare function buildOrderClauseOld(orderBy: ReportOptions["order_by"], sortOrder: ReportOptions["sort_order"], entity: ReportOptions["entity"]): OrderClause;
|
|
51
55
|
export declare function buildOrderClauseNew(order: Required<ReportOptions["order"]>, entity: ReportOptions["entity"]): OrderClause;
|
package/build/src/query.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.buildQuery = exports.buildRequestOptions = exports.buildOrderClause = exports.buildOrderClauseNew = exports.buildOrderClauseOld = exports.completeOrderly = exports.buildLimitClause = exports.buildWhereClause = exports.extractDateConditions = exports.extractDateConstantConditions = exports.extractConstraintConditions = exports.convertNumericEnumToString = exports.validateConstraintKeyAndValue = exports.buildFromClause = exports.buildSelectClause = exports.QueryError = void 0;
|
|
3
|
+
exports.buildQuery = exports.buildRequestOptions = exports.buildOrderClause = exports.buildOrderClauseNew = exports.buildOrderClauseOld = exports.completeOrderly = exports.buildParametersClause = exports.buildLimitClause = exports.buildWhereClause = exports.extractDateConditions = exports.extractDateConstantConditions = exports.extractConstraintConditions = exports.convertNumericEnumToString = exports.validateConstraintKeyAndValue = exports.buildFromClause = exports.buildSelectClause = exports.QueryError = void 0;
|
|
4
4
|
const protos_1 = require("./protos");
|
|
5
5
|
const types_1 = require("./types");
|
|
6
6
|
var QueryKeywords;
|
|
@@ -10,6 +10,7 @@ var QueryKeywords;
|
|
|
10
10
|
QueryKeywords["WHERE"] = "WHERE";
|
|
11
11
|
QueryKeywords["ORDER_BY"] = "ORDER BY";
|
|
12
12
|
QueryKeywords["LIMIT"] = "LIMIT";
|
|
13
|
+
QueryKeywords["PARAMETERS"] = "PARAMETERS";
|
|
13
14
|
QueryKeywords["AND"] = "AND";
|
|
14
15
|
QueryKeywords["OR"] = "OR";
|
|
15
16
|
})(QueryKeywords || (QueryKeywords = {}));
|
|
@@ -24,6 +25,7 @@ exports.QueryError = {
|
|
|
24
25
|
INVALID_FROM_DATE_TYPE: (fromDate) => `From date must be a string. Here, typeof from date is ${typeof fromDate}`,
|
|
25
26
|
INVALID_TO_DATE_TYPE: (toDate) => `To date must be a string. Here, typeof to date is ${typeof toDate}`,
|
|
26
27
|
INVALID_LIMIT: "Limit must be a positive integer.",
|
|
28
|
+
INVALID_PARAMETERS: "Parameters must be a string.",
|
|
27
29
|
INVALID_ORDER: "Order must be an array.",
|
|
28
30
|
INVALID_ORDERLY: "OrderBy arrays must only contain strings.",
|
|
29
31
|
INVALID_ORDERBY: "OrderBy must be a string or an array of strings.",
|
|
@@ -194,6 +196,16 @@ function buildLimitClause(limit) {
|
|
|
194
196
|
return ` ${QueryKeywords.LIMIT} ${limit}`;
|
|
195
197
|
}
|
|
196
198
|
exports.buildLimitClause = buildLimitClause;
|
|
199
|
+
function buildParametersClause(parameters) {
|
|
200
|
+
if (typeof parameters === "undefined") {
|
|
201
|
+
return ``;
|
|
202
|
+
}
|
|
203
|
+
if (typeof parameters !== "string") {
|
|
204
|
+
throw new Error(exports.QueryError.INVALID_PARAMETERS);
|
|
205
|
+
}
|
|
206
|
+
return ` ${QueryKeywords.PARAMETERS} ${parameters}`;
|
|
207
|
+
}
|
|
208
|
+
exports.buildParametersClause = buildParametersClause;
|
|
197
209
|
function completeOrderly(orderly, entity) {
|
|
198
210
|
if (!orderly.length) {
|
|
199
211
|
throw new Error(exports.QueryError.INVALID_ORDERLY);
|
|
@@ -277,11 +289,12 @@ function buildQuery(reportOptions) {
|
|
|
277
289
|
const SELECT = buildSelectClause(reportOptions.attributes, reportOptions.metrics, reportOptions.segments);
|
|
278
290
|
const FROM = buildFromClause(reportOptions.entity);
|
|
279
291
|
const WHERE = buildWhereClause(reportOptions.constraints, reportOptions.date_constant, reportOptions.from_date, reportOptions.to_date);
|
|
280
|
-
const LIMIT = buildLimitClause(reportOptions.limit);
|
|
281
292
|
const ORDER = buildOrderClause(reportOptions.order, reportOptions.order_by, reportOptions.sort_order, reportOptions.entity);
|
|
293
|
+
const LIMIT = buildLimitClause(reportOptions.limit);
|
|
294
|
+
const PARAMETERS = buildParametersClause(reportOptions.parameters);
|
|
282
295
|
const requestOptions = buildRequestOptions(reportOptions);
|
|
283
296
|
return {
|
|
284
|
-
gaqlQuery: `${SELECT}${FROM}${WHERE}${ORDER}${LIMIT}`,
|
|
297
|
+
gaqlQuery: `${SELECT}${FROM}${WHERE}${ORDER}${LIMIT}${PARAMETERS}`,
|
|
285
298
|
requestOptions,
|
|
286
299
|
};
|
|
287
300
|
}
|
package/build/src/types.d.ts
CHANGED