@cubicweb/client 3.0.0-alpha.5 → 3.0.0-alpha.7
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 +1 -1
- package/lib/api/Api.d.ts +2 -4
- package/lib/api/Api.d.ts.map +1 -1
- package/lib/api/Api.js +3 -12
- package/lib/api/Api.js.map +1 -1
- package/lib/api/Client.js +2 -2
- package/lib/api/Client.js.map +1 -1
- package/lib/api/Transaction.d.ts +31 -15
- package/lib/api/Transaction.d.ts.map +1 -1
- package/lib/api/Transaction.js +37 -20
- package/lib/api/Transaction.js.map +1 -1
- package/lib/schema/raw/Constraints.d.ts +4 -4
- package/lib/schema/raw/Constraints.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/api/Api.ts +9 -18
- package/src/api/Client.ts +2 -2
- package/src/api/Transaction.ts +45 -30
- package/src/schema/raw/Constraints.ts +7 -3
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@ library.
|
|
|
7
7
|
|
|
8
8
|
The full documentation is available [here](https://cubicweb.pages.logilab.fr/cubicwebjs/client).
|
|
9
9
|
|
|
10
|
-
**Compatible with [API cube](https://forge.extranet.logilab.fr/cubicweb/cubes/api) version 0.
|
|
10
|
+
**Compatible with [API cube](https://forge.extranet.logilab.fr/cubicweb/cubes/api) version 0.12 only.**
|
|
11
11
|
|
|
12
12
|
## Installation
|
|
13
13
|
|
package/lib/api/Api.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { RawSchema } from "../schema/raw/Schema";
|
|
2
|
-
import { TransactionResult, Transaction } from "./Transaction";
|
|
2
|
+
import { TransactionResult, Transaction, TransactionQueryScalarRef, TransactionQueryBinaryRef } from "./Transaction";
|
|
3
3
|
/**
|
|
4
4
|
* Type representing an RQL request and its associated parameters.
|
|
5
5
|
*
|
|
@@ -12,9 +12,7 @@ export type RQLParamValue = string | number | boolean | null;
|
|
|
12
12
|
*
|
|
13
13
|
* @category Api
|
|
14
14
|
*/
|
|
15
|
-
export
|
|
16
|
-
[key: string]: RQLParamValue;
|
|
17
|
-
}
|
|
15
|
+
export type RQLParams = Record<string, RQLParamValue | TransactionQueryScalarRef | TransactionQueryBinaryRef>;
|
|
18
16
|
/**
|
|
19
17
|
* Type representing a row returned in a result set.
|
|
20
18
|
*
|
package/lib/api/Api.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Api.d.ts","sourceRoot":"","sources":["../../src/api/Api.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EACL,iBAAiB,EACjB,WAAW,
|
|
1
|
+
{"version":3,"file":"Api.d.ts","sourceRoot":"","sources":["../../src/api/Api.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EACL,iBAAiB,EACjB,WAAW,EACX,yBAAyB,EACzB,yBAAyB,EAC1B,MAAM,eAAe,CAAC;AAEvB;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAE3C,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAC7D;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAC5B,MAAM,EACN,aAAa,GAAG,yBAAyB,GAAG,yBAAyB,CACtE,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC;AAE7D;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;AAEtC;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,KAAK,QAAQ,GAAG;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,QAAQ,CAAC;AAEb;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,OAAO,GAAG;IACtB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,aAAa,CAAS;IAE9B;;;;;;;;;OASG;gBACS,MAAM,EAAE,MAAM;IAS1B,IAAI,MAAM,WAET;IAED,OAAO,CAAC,WAAW;IAInB;;;;OAIG;IACG,MAAM,IAAI,OAAO,CAAC,SAAS,CAAC;IAOlC;;;;;;OAMG;IACG,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgB9D;;;;OAIG;IACG,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC;IAOzC;;;;OAIG;IACG,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWrD,GAAG,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAY/D,OAAO,CAAC,oBAAoB;YAOd,oBAAoB;YAmBpB,eAAe;IAY7B,OAAO,CAAC,gBAAgB;CAgBzB"}
|
package/lib/api/Api.js
CHANGED
|
@@ -131,16 +131,7 @@ class Api {
|
|
|
131
131
|
getTransactionParams(transaction) {
|
|
132
132
|
return transaction.queries.map((transactionQuery) => ({
|
|
133
133
|
query: transactionQuery.query,
|
|
134
|
-
params:
|
|
135
|
-
key,
|
|
136
|
-
(0, Transaction_1.isTransactionQueryRef)(value)
|
|
137
|
-
? {
|
|
138
|
-
queryIndex: value.queryIndex,
|
|
139
|
-
row: value.row,
|
|
140
|
-
column: value.column,
|
|
141
|
-
}
|
|
142
|
-
: value,
|
|
143
|
-
])),
|
|
134
|
+
params: transactionQuery.params,
|
|
144
135
|
}));
|
|
145
136
|
}
|
|
146
137
|
multipartTransaction(transaction) {
|
|
@@ -220,10 +211,10 @@ function nonNullFetchApi(input, init) {
|
|
|
220
211
|
function fetchApi(input, init) {
|
|
221
212
|
return __awaiter(this, void 0, void 0, function* () {
|
|
222
213
|
let headers = init === null || init === void 0 ? void 0 : init.headers;
|
|
223
|
-
if ((init === null || init === void 0 ? void 0 : init.method) && init.method !== "GET"
|
|
214
|
+
if ((init === null || init === void 0 ? void 0 : init.method) && init.method !== "GET") {
|
|
224
215
|
headers = Object.assign({ "Content-Type": "application/json;charset=UTF-8",
|
|
225
216
|
// CSRF custom header necessary for POST requests
|
|
226
|
-
"X-
|
|
217
|
+
"X-Client-Name": "XMLHttpRequest" }, init === null || init === void 0 ? void 0 : init.headers);
|
|
227
218
|
}
|
|
228
219
|
const response = yield fetch(input, Object.assign(Object.assign({}, init), { headers }));
|
|
229
220
|
const status = response.status;
|
package/lib/api/Api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Api.js","sourceRoot":"","sources":["../../src/api/Api.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,sCAA4C;AAE5C,+
|
|
1
|
+
{"version":3,"file":"Api.js","sourceRoot":"","sources":["../../src/api/Api.ts"],"names":[],"mappings":"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"}
|
package/lib/api/Client.js
CHANGED
|
@@ -44,10 +44,10 @@ class Client {
|
|
|
44
44
|
execute(query, params = {}, binaries) {
|
|
45
45
|
return __awaiter(this, void 0, void 0, function* () {
|
|
46
46
|
const transaction = new Transaction_1.Transaction();
|
|
47
|
-
transaction.push(query, params);
|
|
47
|
+
const transactionQuery = transaction.push(query, params);
|
|
48
48
|
transaction.setBinaries(binaries);
|
|
49
49
|
const result = yield this.executeTransaction(transaction);
|
|
50
|
-
return result.
|
|
50
|
+
return result.resolveQuery(transactionQuery.ref());
|
|
51
51
|
});
|
|
52
52
|
}
|
|
53
53
|
/**
|
package/lib/api/Client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Client.js","sourceRoot":"","sources":["../../src/api/Client.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,qDAAkD;AAClD,gDAA+D;AAC/D,+CAA8E;AAE9E;;;;GAIG;AACH,MAAqB,MAAM;IAGzB;;;;;;OAMG;IACH,YAAY,MAAc;QACxB,IAAI,CAAC,GAAG,GAAG,IAAI,aAAG,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;IACzB,CAAC;IAED;;;;;;OAMG;IACG,OAAO,CACX,KAAa,EACb,SAAoB,EAAE,EACtB,QAAwB;;YAExB,MAAM,WAAW,GAAG,IAAI,yBAAW,EAAE,CAAC;YACtC,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"Client.js","sourceRoot":"","sources":["../../src/api/Client.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,qDAAkD;AAClD,gDAA+D;AAC/D,+CAA8E;AAE9E;;;;GAIG;AACH,MAAqB,MAAM;IAGzB;;;;;;OAMG;IACH,YAAY,MAAc;QACxB,IAAI,CAAC,GAAG,GAAG,IAAI,aAAG,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;IACzB,CAAC;IAED;;;;;;OAMG;IACG,OAAO,CACX,KAAa,EACb,SAAoB,EAAE,EACtB,QAAwB;;YAExB,MAAM,WAAW,GAAG,IAAI,yBAAW,EAAE,CAAC;YACtC,MAAM,gBAAgB,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACzD,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAClC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;YAC1D,OAAO,MAAM,CAAC,YAAY,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,CAAC;QACrD,CAAC;KAAA;IAED;;;;OAIG;IACG,MAAM;;YACV,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;YACvC,OAAO,IAAI,eAAM,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC;KAAA;IAED;;;;;;OAMG;IACG,KAAK,CAAC,KAAa,EAAE,QAAgB;;YACzC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC/C,CAAC;KAAA;IAED;;;;OAIG;IACG,WAAW;;YACf,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QACtC,CAAC;KAAA;IAED;;;OAGG;IACG,kBAAkB,CACtB,WAAwB;;YAExB,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACzC,CAAC;KAAA;IAED;;;;OAIG;IACG,SAAS,CAAC,GAAW,EAAE,SAAiB;;YAC5C,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAC/C,CAAC;KAAA;CACF;AArFD,yBAqFC"}
|
package/lib/api/Transaction.d.ts
CHANGED
|
@@ -1,30 +1,46 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { RQLParams, ResultSet } from "./Api";
|
|
2
2
|
export type BinariesParam = Record<string, Blob>;
|
|
3
3
|
export declare class Transaction {
|
|
4
4
|
private _queries;
|
|
5
5
|
private _binaries;
|
|
6
|
-
push(query: string, params:
|
|
6
|
+
push(query: string, params: RQLParams): TransactionQuery;
|
|
7
7
|
setBinaries(binaries?: BinariesParam): void;
|
|
8
8
|
get binaries(): BinariesParam;
|
|
9
9
|
get queries(): ReadonlyArray<TransactionQuery>;
|
|
10
10
|
}
|
|
11
|
+
export declare class TransactionQuery {
|
|
12
|
+
readonly query: string;
|
|
13
|
+
readonly params: RQLParams;
|
|
14
|
+
readonly index: number;
|
|
15
|
+
constructor(query: string, params: RQLParams, index: number);
|
|
16
|
+
ref(): TransactionQueryRef;
|
|
17
|
+
}
|
|
11
18
|
export declare class TransactionResult {
|
|
12
19
|
private resultSets;
|
|
13
20
|
constructor(resultSets: ReadonlyArray<ResultSet>);
|
|
14
|
-
|
|
15
|
-
|
|
21
|
+
resolveQuery(ref: TransactionQueryRef): ResultSet;
|
|
22
|
+
resolveRow(ref: TransactionQueryRowRef): import("./Api").RqlRow;
|
|
23
|
+
resolveScalar(ref: TransactionQueryScalarRef): string | number | boolean | null;
|
|
16
24
|
}
|
|
17
|
-
export
|
|
18
|
-
queryIndex: number;
|
|
19
|
-
|
|
20
|
-
|
|
25
|
+
export declare class TransactionQueryRef {
|
|
26
|
+
readonly queryIndex: number;
|
|
27
|
+
constructor(queryIndex: number);
|
|
28
|
+
row(r: number): TransactionQueryRowRef;
|
|
21
29
|
}
|
|
22
|
-
export declare class
|
|
23
|
-
readonly
|
|
24
|
-
readonly
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
30
|
+
export declare class TransactionQueryRowRef {
|
|
31
|
+
readonly queryIndex: number;
|
|
32
|
+
readonly row: number;
|
|
33
|
+
constructor(queryIndex: number, row: number);
|
|
34
|
+
column(c: number): TransactionQueryScalarRef;
|
|
35
|
+
}
|
|
36
|
+
export interface TransactionQueryScalarRef {
|
|
37
|
+
readonly queryIndex: number;
|
|
38
|
+
readonly row: number;
|
|
39
|
+
readonly column: number;
|
|
40
|
+
readonly type: "query_reference";
|
|
41
|
+
}
|
|
42
|
+
export interface TransactionQueryBinaryRef {
|
|
43
|
+
readonly ref: string;
|
|
44
|
+
readonly type: "binary_reference";
|
|
28
45
|
}
|
|
29
|
-
export declare function isTransactionQueryRef(value: RQLParamValue | TransactionQueryRef): value is TransactionQueryRef;
|
|
30
46
|
//# sourceMappingURL=Transaction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Transaction.d.ts","sourceRoot":"","sources":["../../src/api/Transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"Transaction.d.ts","sourceRoot":"","sources":["../../src/api/Transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAE7C,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAEjD,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,SAAS,CAAqB;IAEtC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,gBAAgB;IAUxD,WAAW,CAAC,QAAQ,CAAC,EAAE,aAAa;IAIpC,IAAI,QAAQ,IAAI,aAAa,CAE5B;IAED,IAAI,OAAO,IAAI,aAAa,CAAC,gBAAgB,CAAC,CAE7C;CACF;AAED,qBAAa,gBAAgB;aAET,KAAK,EAAE,MAAM;aACb,MAAM,EAAE,SAAS;aACjB,KAAK,EAAE,MAAM;gBAFb,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,MAAM;IAG/B,GAAG,IAAI,mBAAmB;CAG3B;AAED,qBAAa,iBAAiB;IAChB,OAAO,CAAC,UAAU;gBAAV,UAAU,EAAE,aAAa,CAAC,SAAS,CAAC;IAExD,YAAY,CAAC,GAAG,EAAE,mBAAmB;IAIrC,UAAU,CAAC,GAAG,EAAE,sBAAsB;IAItC,aAAa,CAAC,GAAG,EAAE,yBAAyB;CAG7C;AAED,qBAAa,mBAAmB;aACF,UAAU,EAAE,MAAM;gBAAlB,UAAU,EAAE,MAAM;IAE9C,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,sBAAsB;CAGvC;AAED,qBAAa,sBAAsB;aAEf,UAAU,EAAE,MAAM;aAClB,GAAG,EAAE,MAAM;gBADX,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM;IAG7B,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,yBAAyB;CAQ7C;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;CAClC;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;CACnC"}
|
package/lib/api/Transaction.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.TransactionQueryRowRef = exports.TransactionQueryRef = exports.TransactionResult = exports.TransactionQuery = exports.Transaction = void 0;
|
|
4
4
|
class Transaction {
|
|
5
5
|
constructor() {
|
|
6
6
|
this._queries = [];
|
|
@@ -22,37 +22,54 @@ class Transaction {
|
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
exports.Transaction = Transaction;
|
|
25
|
+
class TransactionQuery {
|
|
26
|
+
constructor(query, params, index) {
|
|
27
|
+
this.query = query;
|
|
28
|
+
this.params = params;
|
|
29
|
+
this.index = index;
|
|
30
|
+
}
|
|
31
|
+
ref() {
|
|
32
|
+
return new TransactionQueryRef(this.index);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
exports.TransactionQuery = TransactionQuery;
|
|
25
36
|
class TransactionResult {
|
|
26
37
|
constructor(resultSets) {
|
|
27
38
|
this.resultSets = resultSets;
|
|
28
39
|
}
|
|
29
|
-
|
|
30
|
-
return this.resultSets[queryIndex];
|
|
40
|
+
resolveQuery(ref) {
|
|
41
|
+
return this.resultSets[ref.queryIndex];
|
|
42
|
+
}
|
|
43
|
+
resolveRow(ref) {
|
|
44
|
+
return this.resultSets[ref.queryIndex][ref.row];
|
|
31
45
|
}
|
|
32
|
-
|
|
46
|
+
resolveScalar(ref) {
|
|
33
47
|
return this.resultSets[ref.queryIndex][ref.row][ref.column];
|
|
34
48
|
}
|
|
35
49
|
}
|
|
36
50
|
exports.TransactionResult = TransactionResult;
|
|
37
|
-
class
|
|
38
|
-
constructor(
|
|
39
|
-
this.
|
|
40
|
-
this.params = params;
|
|
41
|
-
this.index = index;
|
|
51
|
+
class TransactionQueryRef {
|
|
52
|
+
constructor(queryIndex) {
|
|
53
|
+
this.queryIndex = queryIndex;
|
|
42
54
|
}
|
|
43
|
-
|
|
55
|
+
row(r) {
|
|
56
|
+
return new TransactionQueryRowRef(this.queryIndex, r);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
exports.TransactionQueryRef = TransactionQueryRef;
|
|
60
|
+
class TransactionQueryRowRef {
|
|
61
|
+
constructor(queryIndex, row) {
|
|
62
|
+
this.queryIndex = queryIndex;
|
|
63
|
+
this.row = row;
|
|
64
|
+
}
|
|
65
|
+
column(c) {
|
|
44
66
|
return {
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
67
|
+
type: "query_reference",
|
|
68
|
+
queryIndex: this.queryIndex,
|
|
69
|
+
row: this.row,
|
|
70
|
+
column: c,
|
|
48
71
|
};
|
|
49
72
|
}
|
|
50
73
|
}
|
|
51
|
-
exports.
|
|
52
|
-
function isTransactionQueryRef(value) {
|
|
53
|
-
return (typeof value === "object" &&
|
|
54
|
-
value !== null &&
|
|
55
|
-
["queryIndex", "row", "column"].every((key) => Object.keys(value).includes(key)));
|
|
56
|
-
}
|
|
57
|
-
exports.isTransactionQueryRef = isTransactionQueryRef;
|
|
74
|
+
exports.TransactionQueryRowRef = TransactionQueryRowRef;
|
|
58
75
|
//# sourceMappingURL=Transaction.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Transaction.js","sourceRoot":"","sources":["../../src/api/Transaction.ts"],"names":[],"mappings":";;;AAIA,MAAa,WAAW;IAAxB;QACU,aAAQ,GAA4B,EAAE,CAAC;QACvC,cAAS,GAAkB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"Transaction.js","sourceRoot":"","sources":["../../src/api/Transaction.ts"],"names":[],"mappings":";;;AAIA,MAAa,WAAW;IAAxB;QACU,aAAQ,GAA4B,EAAE,CAAC;QACvC,cAAS,GAAkB,EAAE,CAAC;IAuBxC,CAAC;IArBC,IAAI,CAAC,KAAa,EAAE,MAAiB;QACnC,MAAM,YAAY,GAAG,IAAI,gBAAgB,CACvC,KAAK,EACL,MAAM,EACN,IAAI,CAAC,QAAQ,CAAC,MAAM,CACrB,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACjC,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,WAAW,CAAC,QAAwB;QAClC,IAAI,CAAC,SAAS,GAAG,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,EAAE,CAAC;IAClC,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;CACF;AAzBD,kCAyBC;AAED,MAAa,gBAAgB;IAC3B,YACkB,KAAa,EACb,MAAiB,EACjB,KAAa;QAFb,UAAK,GAAL,KAAK,CAAQ;QACb,WAAM,GAAN,MAAM,CAAW;QACjB,UAAK,GAAL,KAAK,CAAQ;IAC5B,CAAC;IAEJ,GAAG;QACD,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;CACF;AAVD,4CAUC;AAED,MAAa,iBAAiB;IAC5B,YAAoB,UAAoC;QAApC,eAAU,GAAV,UAAU,CAA0B;IAAG,CAAC;IAE5D,YAAY,CAAC,GAAwB;QACnC,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IAED,UAAU,CAAC,GAA2B;QACpC,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClD,CAAC;IAED,aAAa,CAAC,GAA8B;QAC1C,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC;CACF;AAdD,8CAcC;AAED,MAAa,mBAAmB;IAC9B,YAA4B,UAAkB;QAAlB,eAAU,GAAV,UAAU,CAAQ;IAAG,CAAC;IAElD,GAAG,CAAC,CAAS;QACX,OAAO,IAAI,sBAAsB,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IACxD,CAAC;CACF;AAND,kDAMC;AAED,MAAa,sBAAsB;IACjC,YACkB,UAAkB,EAClB,GAAW;QADX,eAAU,GAAV,UAAU,CAAQ;QAClB,QAAG,GAAH,GAAG,CAAQ;IAC1B,CAAC;IAEJ,MAAM,CAAC,CAAS;QACd,OAAO;YACL,IAAI,EAAE,iBAAiB;YACvB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,MAAM,EAAE,CAAC;SACV,CAAC;IACJ,CAAC;CACF;AAdD,wDAcC"}
|
|
@@ -61,7 +61,7 @@ export interface Today {
|
|
|
61
61
|
*/
|
|
62
62
|
export interface Now {
|
|
63
63
|
__now__: true;
|
|
64
|
-
offset: TimeDelta;
|
|
64
|
+
offset: TimeDelta | null;
|
|
65
65
|
}
|
|
66
66
|
/**
|
|
67
67
|
* All the possible operators inside a constraint.
|
|
@@ -70,13 +70,13 @@ export interface Now {
|
|
|
70
70
|
*/
|
|
71
71
|
export type ConstraintOperator = ">" | ">=" | "<" | "<=";
|
|
72
72
|
export type BoundaryConstraint = ConstraintBase<"BoundaryConstraint", {
|
|
73
|
-
boundary: Attribute | Today | Now | number | null;
|
|
73
|
+
boundary: Attribute | Today | Now | number | string | null;
|
|
74
74
|
op: ConstraintOperator;
|
|
75
75
|
msg: ConstraintMessage;
|
|
76
76
|
}>;
|
|
77
77
|
export type IntervalBoundConstraint = ConstraintBase<"IntervalBoundConstraint", {
|
|
78
|
-
minvalue: number | null;
|
|
79
|
-
maxvalue: number | null;
|
|
78
|
+
minvalue: number | string | null;
|
|
79
|
+
maxvalue: number | string | null;
|
|
80
80
|
msg: ConstraintMessage;
|
|
81
81
|
}>;
|
|
82
82
|
export type StaticVocabularyConstraint = ConstraintBase<"StaticVocabularyConstraint", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Constraints.d.ts","sourceRoot":"","sources":["../../../src/schema/raw/Constraints.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,KAAK,cAAc,CACjB,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,IACtC;IACF,IAAI,EAAE,CAAC,CAAC;IACR,KAAK,EAAE,CAAC,CAAC;CACV,CAAC;AAEF;;GAEG;AACH,KAAK,iBAAiB,GAAG,MAAM,GAAG,IAAI,CAAC;AAEvC,MAAM,MAAM,gBAAgB,GAAG,cAAc,CAC3C,kBAAkB,EAClB;IAAE,GAAG,EAAE,iBAAiB,CAAA;CAAE,CAC3B,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,cAAc,CACzC,gBAAgB,EAChB;IAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,GAAG,EAAE,iBAAiB,CAAA;CAAE,CACnE,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,cAAc,CAC3C,kBAAkB,EAClB;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,iBAAiB,CAAA;CAAE,CAC1D,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,WAAW,SAAS;IACxB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,KAAK;IACpB,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;IACzB,IAAI,EAAE,UAAU,GAAG,YAAY,GAAG,MAAM,CAAC;CAC1C;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,GAAG;IAClB,OAAO,EAAE,IAAI,CAAC;IACd,MAAM,EAAE,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"Constraints.d.ts","sourceRoot":"","sources":["../../../src/schema/raw/Constraints.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/api/Api.ts
CHANGED
|
@@ -3,7 +3,8 @@ import { RawSchema } from "../schema/raw/Schema";
|
|
|
3
3
|
import {
|
|
4
4
|
TransactionResult,
|
|
5
5
|
Transaction,
|
|
6
|
-
|
|
6
|
+
TransactionQueryScalarRef,
|
|
7
|
+
TransactionQueryBinaryRef,
|
|
7
8
|
} from "./Transaction";
|
|
8
9
|
|
|
9
10
|
/**
|
|
@@ -19,9 +20,10 @@ export type RQLParamValue = string | number | boolean | null;
|
|
|
19
20
|
*
|
|
20
21
|
* @category Api
|
|
21
22
|
*/
|
|
22
|
-
export
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
export type RQLParams = Record<
|
|
24
|
+
string,
|
|
25
|
+
RQLParamValue | TransactionQueryScalarRef | TransactionQueryBinaryRef
|
|
26
|
+
>;
|
|
25
27
|
|
|
26
28
|
/**
|
|
27
29
|
* Type representing a row returned in a result set.
|
|
@@ -190,18 +192,7 @@ export default class Api {
|
|
|
190
192
|
private getTransactionParams(transaction: Transaction) {
|
|
191
193
|
return transaction.queries.map((transactionQuery) => ({
|
|
192
194
|
query: transactionQuery.query,
|
|
193
|
-
params:
|
|
194
|
-
Object.entries(transactionQuery.params).map(([key, value]) => [
|
|
195
|
-
key,
|
|
196
|
-
isTransactionQueryRef(value)
|
|
197
|
-
? {
|
|
198
|
-
queryIndex: value.queryIndex,
|
|
199
|
-
row: value.row,
|
|
200
|
-
column: value.column,
|
|
201
|
-
}
|
|
202
|
-
: value,
|
|
203
|
-
])
|
|
204
|
-
),
|
|
195
|
+
params: transactionQuery.params,
|
|
205
196
|
}));
|
|
206
197
|
}
|
|
207
198
|
|
|
@@ -293,11 +284,11 @@ async function fetchApi<R = unknown>(
|
|
|
293
284
|
init?: RequestInit
|
|
294
285
|
): Promise<R | null> {
|
|
295
286
|
let headers = init?.headers;
|
|
296
|
-
if (init?.method && init.method !== "GET"
|
|
287
|
+
if (init?.method && init.method !== "GET") {
|
|
297
288
|
headers = {
|
|
298
289
|
"Content-Type": "application/json;charset=UTF-8",
|
|
299
290
|
// CSRF custom header necessary for POST requests
|
|
300
|
-
"X-
|
|
291
|
+
"X-Client-Name": "XMLHttpRequest",
|
|
301
292
|
...init?.headers,
|
|
302
293
|
};
|
|
303
294
|
}
|
package/src/api/Client.ts
CHANGED
|
@@ -38,10 +38,10 @@ export default class Client {
|
|
|
38
38
|
binaries?: BinariesParam
|
|
39
39
|
): Promise<ResultSet> {
|
|
40
40
|
const transaction = new Transaction();
|
|
41
|
-
transaction.push(query, params);
|
|
41
|
+
const transactionQuery = transaction.push(query, params);
|
|
42
42
|
transaction.setBinaries(binaries);
|
|
43
43
|
const result = await this.executeTransaction(transaction);
|
|
44
|
-
return result.
|
|
44
|
+
return result.resolveQuery(transactionQuery.ref());
|
|
45
45
|
}
|
|
46
46
|
|
|
47
47
|
/**
|
package/src/api/Transaction.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { RQLParams, ResultSet } from "./Api";
|
|
2
2
|
|
|
3
3
|
export type BinariesParam = Record<string, Blob>;
|
|
4
4
|
|
|
@@ -6,10 +6,7 @@ export class Transaction {
|
|
|
6
6
|
private _queries: Array<TransactionQuery> = [];
|
|
7
7
|
private _binaries: BinariesParam = {};
|
|
8
8
|
|
|
9
|
-
push(
|
|
10
|
-
query: string,
|
|
11
|
-
params: Record<string, RQLParamValue | TransactionQueryRef>
|
|
12
|
-
): TransactionQuery {
|
|
9
|
+
push(query: string, params: RQLParams): TransactionQuery {
|
|
13
10
|
const stackedQuery = new TransactionQuery(
|
|
14
11
|
query,
|
|
15
12
|
params,
|
|
@@ -32,48 +29,66 @@ export class Transaction {
|
|
|
32
29
|
}
|
|
33
30
|
}
|
|
34
31
|
|
|
32
|
+
export class TransactionQuery {
|
|
33
|
+
constructor(
|
|
34
|
+
public readonly query: string,
|
|
35
|
+
public readonly params: RQLParams,
|
|
36
|
+
public readonly index: number
|
|
37
|
+
) {}
|
|
38
|
+
|
|
39
|
+
ref(): TransactionQueryRef {
|
|
40
|
+
return new TransactionQueryRef(this.index);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
35
44
|
export class TransactionResult {
|
|
36
45
|
constructor(private resultSets: ReadonlyArray<ResultSet>) {}
|
|
37
46
|
|
|
38
|
-
|
|
39
|
-
return this.resultSets[queryIndex];
|
|
47
|
+
resolveQuery(ref: TransactionQueryRef) {
|
|
48
|
+
return this.resultSets[ref.queryIndex];
|
|
40
49
|
}
|
|
41
50
|
|
|
42
|
-
|
|
51
|
+
resolveRow(ref: TransactionQueryRowRef) {
|
|
52
|
+
return this.resultSets[ref.queryIndex][ref.row];
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
resolveScalar(ref: TransactionQueryScalarRef) {
|
|
43
56
|
return this.resultSets[ref.queryIndex][ref.row][ref.column];
|
|
44
57
|
}
|
|
45
58
|
}
|
|
46
59
|
|
|
47
|
-
export
|
|
48
|
-
queryIndex: number
|
|
49
|
-
|
|
50
|
-
|
|
60
|
+
export class TransactionQueryRef {
|
|
61
|
+
constructor(public readonly queryIndex: number) {}
|
|
62
|
+
|
|
63
|
+
row(r: number): TransactionQueryRowRef {
|
|
64
|
+
return new TransactionQueryRowRef(this.queryIndex, r);
|
|
65
|
+
}
|
|
51
66
|
}
|
|
52
67
|
|
|
53
|
-
export class
|
|
68
|
+
export class TransactionQueryRowRef {
|
|
54
69
|
constructor(
|
|
55
|
-
public readonly
|
|
56
|
-
public readonly
|
|
57
|
-
public readonly index: number
|
|
70
|
+
public readonly queryIndex: number,
|
|
71
|
+
public readonly row: number
|
|
58
72
|
) {}
|
|
59
73
|
|
|
60
|
-
|
|
74
|
+
column(c: number): TransactionQueryScalarRef {
|
|
61
75
|
return {
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
76
|
+
type: "query_reference",
|
|
77
|
+
queryIndex: this.queryIndex,
|
|
78
|
+
row: this.row,
|
|
79
|
+
column: c,
|
|
65
80
|
};
|
|
66
81
|
}
|
|
67
82
|
}
|
|
68
83
|
|
|
69
|
-
export
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
84
|
+
export interface TransactionQueryScalarRef {
|
|
85
|
+
readonly queryIndex: number;
|
|
86
|
+
readonly row: number;
|
|
87
|
+
readonly column: number;
|
|
88
|
+
readonly type: "query_reference";
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
export interface TransactionQueryBinaryRef {
|
|
92
|
+
readonly ref: string;
|
|
93
|
+
readonly type: "binary_reference";
|
|
79
94
|
}
|
|
@@ -71,7 +71,7 @@ export interface Today {
|
|
|
71
71
|
*/
|
|
72
72
|
export interface Now {
|
|
73
73
|
__now__: true;
|
|
74
|
-
offset: TimeDelta;
|
|
74
|
+
offset: TimeDelta | null;
|
|
75
75
|
}
|
|
76
76
|
|
|
77
77
|
/**
|
|
@@ -84,14 +84,18 @@ export type ConstraintOperator = ">" | ">=" | "<" | "<=";
|
|
|
84
84
|
export type BoundaryConstraint = ConstraintBase<
|
|
85
85
|
"BoundaryConstraint",
|
|
86
86
|
{
|
|
87
|
-
boundary: Attribute | Today | Now | number | null;
|
|
87
|
+
boundary: Attribute | Today | Now | number | string | null;
|
|
88
88
|
op: ConstraintOperator;
|
|
89
89
|
msg: ConstraintMessage;
|
|
90
90
|
}
|
|
91
91
|
>;
|
|
92
92
|
export type IntervalBoundConstraint = ConstraintBase<
|
|
93
93
|
"IntervalBoundConstraint",
|
|
94
|
-
{
|
|
94
|
+
{
|
|
95
|
+
minvalue: number | string | null;
|
|
96
|
+
maxvalue: number | string | null;
|
|
97
|
+
msg: ConstraintMessage;
|
|
98
|
+
}
|
|
95
99
|
>;
|
|
96
100
|
|
|
97
101
|
export type StaticVocabularyConstraint = ConstraintBase<
|