flowerbi 4.2.0 → 4.2.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.
@@ -138,7 +138,7 @@ var QueryColumn = /** @class */ (function () {
138
138
  QueryColumn.prototype.notIn = function (value) {
139
139
  return {
140
140
  column: this.name,
141
- operator: "IN",
141
+ operator: "NOT IN",
142
142
  value: value,
143
143
  };
144
144
  };
@@ -1 +1 @@
1
- {"version":3,"file":"QueryColumn.js","sourceRoot":"","sources":["../src/QueryColumn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueryColumn.js","sourceRoot":"","sources":["../src/QueryColumn.ts"],"names":[],"mappings":"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"}
@@ -87,3 +87,11 @@ export interface ExpandedQueryResult<S extends QuerySelect, C extends QueryCalcu
87
87
  * @param result The response payload from the API call.
88
88
  */
89
89
  export declare function expandQueryResult<S extends QuerySelect, C extends QueryCalculations<S>>(select: S, result: QueryResultJson, calcs?: C): ExpandedQueryResult<S, C>;
90
+ /**
91
+ * The complete statically typed query mechanism.
92
+ *
93
+ * @param fetch Your API for performing FlowerBI queries in the JSON format
94
+ * @param query The query in statically-typed form
95
+ * @returns The query results in statically-typed form
96
+ */
97
+ export declare function executeQuery<S extends QuerySelect, C extends QueryCalculations<S>>(fetch: QueryFetch, query: Query<S, C>): Promise<ExpandedQueryResult<S, C>>;
@@ -1,6 +1,42 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
2
38
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.expandQueryResult = exports.getAggregateValuesOnly = exports.expandQueryRecord = exports.jsonifyQuery = void 0;
39
+ exports.executeQuery = exports.expandQueryResult = exports.getAggregateValuesOnly = exports.expandQueryRecord = exports.jsonifyQuery = void 0;
4
40
  var queryModel_1 = require("./queryModel");
5
41
  var arrayHelpers_1 = require("./arrayHelpers");
6
42
  function jsonifyCalculation(calculation, props) {
@@ -147,4 +183,27 @@ function expandQueryResult(select, result, calcs) {
147
183
  };
148
184
  }
149
185
  exports.expandQueryResult = expandQueryResult;
186
+ /**
187
+ * The complete statically typed query mechanism.
188
+ *
189
+ * @param fetch Your API for performing FlowerBI queries in the JSON format
190
+ * @param query The query in statically-typed form
191
+ * @returns The query results in statically-typed form
192
+ */
193
+ function executeQuery(fetch, query) {
194
+ return __awaiter(this, void 0, void 0, function () {
195
+ var queryJson, resultJson;
196
+ return __generator(this, function (_a) {
197
+ switch (_a.label) {
198
+ case 0:
199
+ queryJson = jsonifyQuery(query);
200
+ return [4 /*yield*/, fetch(queryJson)];
201
+ case 1:
202
+ resultJson = _a.sent();
203
+ return [2 /*return*/, expandQueryResult(query.select, resultJson, query.calculations)];
204
+ }
205
+ });
206
+ });
207
+ }
208
+ exports.executeQuery = executeQuery;
150
209
  //# sourceMappingURL=executeQuery.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"executeQuery.js","sourceRoot":"","sources":["../src/executeQuery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executeQuery.js","sourceRoot":"","sources":["../src/executeQuery.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "flowerbi",
3
- "version": "4.2.0",
3
+ "version": "4.2.1",
4
4
  "author": "Daniel Earwicker <dan@earwicker.com>",
5
5
  "license": "MIT",
6
6
  "description": "FlowerBI: ultra-minimal BI analytics query and UI tools",
@@ -136,7 +136,7 @@ export class QueryColumn<T extends FilterValue> {
136
136
  notIn(value: T extends number | string ? T[] : never): FilterJson {
137
137
  return {
138
138
  column: this.name,
139
- operator: "IN",
139
+ operator: "NOT IN",
140
140
  value,
141
141
  };
142
142
  }
@@ -243,3 +243,16 @@ export function expandQueryResult<S extends QuerySelect, C extends QueryCalculat
243
243
  totals: result.totals && getAggregateValuesOnly(select, result.totals, calcs),
244
244
  };
245
245
  }
246
+
247
+ /**
248
+ * The complete statically typed query mechanism.
249
+ *
250
+ * @param fetch Your API for performing FlowerBI queries in the JSON format
251
+ * @param query The query in statically-typed form
252
+ * @returns The query results in statically-typed form
253
+ */
254
+ export async function executeQuery<S extends QuerySelect, C extends QueryCalculations<S>>(fetch: QueryFetch, query: Query<S, C>) {
255
+ const queryJson = jsonifyQuery(query);
256
+ const resultJson = await fetch(queryJson);
257
+ return expandQueryResult<S, C>(query.select, resultJson, query.calculations);
258
+ }