@auxilium/datalynk-client 0.9.6 → 0.9.8

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/index.cjs CHANGED
@@ -2200,16 +2200,13 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
2200
2200
  * @example
2201
2201
  * ```ts
2202
2202
  * const rows: T[] = await new Slice<T>(12345).select()
2203
- * .excel('')
2203
+ * .excel('contains({property}, foobar)')
2204
2204
  * .exec().rows();
2205
2205
  * ```
2206
2206
  * @param formula Excel formula to use as where clause
2207
2207
  */
2208
2208
  excel(formula) {
2209
- if (this.request.where) {
2210
- this.and();
2211
- this.request.push({ "$excel": formula });
2212
- } else this.request.where = { "$excel": formula };
2209
+ this.where(["$excel", formula]);
2213
2210
  return this;
2214
2211
  }
2215
2212
  /**
@@ -2370,47 +2367,31 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
2370
2367
  */
2371
2368
  where(field, operator, value) {
2372
2369
  if (this.request.where && this.request.where[0] != "$or") this.and();
2373
- if (typeof field == "object") {
2370
+ const raw = Array.isArray(field);
2371
+ if (typeof field == "object" && !raw) {
2374
2372
  Object.entries(field).forEach(([key, value2]) => this.where(key, "==", value2));
2375
- } else if (operator == null) {
2376
- throw new Error("Malformed where clause");
2377
2373
  } else {
2378
- switch (operator) {
2379
- case "==":
2380
- operator = "$eq";
2381
- break;
2382
- case "!=":
2383
- operator = "$neq";
2384
- break;
2385
- case ">":
2386
- operator = "$gt";
2387
- break;
2388
- case ">=":
2389
- operator = "$gte";
2390
- break;
2391
- case "<":
2392
- operator = "$lt";
2393
- break;
2394
- case "<=":
2395
- operator = "$lte";
2396
- break;
2397
- case "!":
2398
- operator = "$not";
2399
- break;
2400
- case "%":
2401
- operator = "$mod";
2402
- break;
2403
- }
2404
- if (!this.request.where) this.request.where = [operator, ["$field", field], value];
2374
+ const w = raw ? field : [(() => {
2375
+ if (operator == "==") return "$eq";
2376
+ if (operator == "!=") return "$neq";
2377
+ if (operator == ">") return "$gt";
2378
+ if (operator == ">=") return "$gte";
2379
+ if (operator == "<") return "$lt";
2380
+ if (operator == "<=") return "$lte";
2381
+ if (operator == "!") return "$not";
2382
+ if (operator == "%") return "$mod";
2383
+ throw new Error(`Unknown operator: ${operator}`);
2384
+ })(), ["$field", field], value];
2385
+ if (!this.request.where) this.request.where = w;
2405
2386
  else {
2406
2387
  if (this.request.where[0] == "$or") {
2407
2388
  const i = this.request.where.length - 1;
2408
- if (this.request.where[i] == null) this.request.where[i] = [operator, ["$field", field], value];
2389
+ if (this.request.where[i] == null) this.request.where[i] = w;
2409
2390
  else {
2410
- if (this.request.where[i][0] == "$and") this.request.where[i].push([operator, ["$field", field], value]);
2411
- else this.request.where[i] = ["$and", this.request.where[i], [operator, ["$field", field], value]];
2391
+ if (this.request.where[i][0] == "$and") this.request.where[i].push(w);
2392
+ else this.request.where[i] = ["$and", this.request.where[i], w];
2412
2393
  }
2413
- } else this.request.where.push([operator, ["$field", field], value]);
2394
+ } else this.request.where.push(w);
2414
2395
  }
2415
2396
  }
2416
2397
  return this;
package/dist/index.mjs CHANGED
@@ -2196,16 +2196,13 @@ class Slice {
2196
2196
  * @example
2197
2197
  * ```ts
2198
2198
  * const rows: T[] = await new Slice<T>(12345).select()
2199
- * .excel('')
2199
+ * .excel('contains({property}, foobar)')
2200
2200
  * .exec().rows();
2201
2201
  * ```
2202
2202
  * @param formula Excel formula to use as where clause
2203
2203
  */
2204
2204
  excel(formula) {
2205
- if (this.request.where) {
2206
- this.and();
2207
- this.request.push({ "$excel": formula });
2208
- } else this.request.where = { "$excel": formula };
2205
+ this.where(["$excel", formula]);
2209
2206
  return this;
2210
2207
  }
2211
2208
  /**
@@ -2366,47 +2363,31 @@ class Slice {
2366
2363
  */
2367
2364
  where(field, operator, value) {
2368
2365
  if (this.request.where && this.request.where[0] != "$or") this.and();
2369
- if (typeof field == "object") {
2366
+ const raw = Array.isArray(field);
2367
+ if (typeof field == "object" && !raw) {
2370
2368
  Object.entries(field).forEach(([key, value2]) => this.where(key, "==", value2));
2371
- } else if (operator == null) {
2372
- throw new Error("Malformed where clause");
2373
2369
  } else {
2374
- switch (operator) {
2375
- case "==":
2376
- operator = "$eq";
2377
- break;
2378
- case "!=":
2379
- operator = "$neq";
2380
- break;
2381
- case ">":
2382
- operator = "$gt";
2383
- break;
2384
- case ">=":
2385
- operator = "$gte";
2386
- break;
2387
- case "<":
2388
- operator = "$lt";
2389
- break;
2390
- case "<=":
2391
- operator = "$lte";
2392
- break;
2393
- case "!":
2394
- operator = "$not";
2395
- break;
2396
- case "%":
2397
- operator = "$mod";
2398
- break;
2399
- }
2400
- if (!this.request.where) this.request.where = [operator, ["$field", field], value];
2370
+ const w = raw ? field : [(() => {
2371
+ if (operator == "==") return "$eq";
2372
+ if (operator == "!=") return "$neq";
2373
+ if (operator == ">") return "$gt";
2374
+ if (operator == ">=") return "$gte";
2375
+ if (operator == "<") return "$lt";
2376
+ if (operator == "<=") return "$lte";
2377
+ if (operator == "!") return "$not";
2378
+ if (operator == "%") return "$mod";
2379
+ throw new Error(`Unknown operator: ${operator}`);
2380
+ })(), ["$field", field], value];
2381
+ if (!this.request.where) this.request.where = w;
2401
2382
  else {
2402
2383
  if (this.request.where[0] == "$or") {
2403
2384
  const i = this.request.where.length - 1;
2404
- if (this.request.where[i] == null) this.request.where[i] = [operator, ["$field", field], value];
2385
+ if (this.request.where[i] == null) this.request.where[i] = w;
2405
2386
  else {
2406
- if (this.request.where[i][0] == "$and") this.request.where[i].push([operator, ["$field", field], value]);
2407
- else this.request.where[i] = ["$and", this.request.where[i], [operator, ["$field", field], value]];
2387
+ if (this.request.where[i][0] == "$and") this.request.where[i].push(w);
2388
+ else this.request.where[i] = ["$and", this.request.where[i], w];
2408
2389
  }
2409
- } else this.request.where.push([operator, ["$field", field], value]);
2390
+ } else this.request.where.push(w);
2410
2391
  }
2411
2392
  }
2412
2393
  return this;
package/dist/slice.d.ts CHANGED
@@ -166,7 +166,7 @@ export declare class Slice<T extends SliceMeta> {
166
166
  * @example
167
167
  * ```ts
168
168
  * const rows: T[] = await new Slice<T>(12345).select()
169
- * .excel('')
169
+ * .excel('contains({property}, foobar)')
170
170
  * .exec().rows();
171
171
  * ```
172
172
  * @param formula Excel formula to use as where clause
@@ -1 +1 @@
1
- {"version":3,"file":"slice.d.ts","sourceRoot":"","sources":["../src/slice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,MAAM,CAAC;AACrC,OAAO,EAAC,GAAG,EAAE,QAAQ,EAAE,iBAAiB,EAAC,MAAM,OAAO,CAAC;AACvD,OAAO,EAAmB,WAAW,EAAC,MAAM,UAAU,CAAC;AAEvD,MAAM,WAAW,SAAS;IACzB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,qBAAa,YAAY,CAAC,CAAC,SAAS,SAAS;aAQhB,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;aAAkB,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAN/F;;;;;OAKG;gBACyB,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAkB,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAE/F;;OAEG;IACH,KAAK,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,QAAQ,GAAG,GAAG,KAAK,GAAG;IAI9C;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAM9B;;OAEG;IACH,KAAK,IAAI,YAAY,CAAC,CAAC,CAAC;IAKxB;;OAEG;IACG,MAAM;IAKZ;;OAEG;IACH,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG;IAI3B;;OAEG;IACG,OAAO;IAKb;;OAEG;IACG,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC;IAI5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAK/B;;OAEG;IACG,OAAO;IAKb;;OAEG;IACG,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC;IAIvB;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC;IAK1B;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,GAAG,GAAG,KAAK,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAIrH;;OAEG;IACH,SAAS,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAItC;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;CAIpC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,SAAS;IACjD,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,EAAE,EAAE,MAAM,CAAC;CACX;AAED;;GAEG;AACH,qBAAa,KAAK,CAAC,CAAC,SAAS,SAAS;IAoBzB,OAAO,CAAC,KAAK;IAAmB,OAAO,CAAC,GAAG;IAnBvD,OAAO,CAAC,SAAS,CAAU;IAC3B,OAAO,CAAC,OAAO,CAAW;IAE1B,4DAA4D;IAC5D,WAAW,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAEjC,yCAAyC;IACzC,OAAO,CAAC,MAAM,CAAgC;IAC9C,wBAAwB;IACxB,OAAO,KAAK,KAAK,GAA0C;IAC3D,0CAA0C;IAC1C,OAAO,KAAK,KAAK,QAAyC;IAE1D;;;;;OAKG;gBACiB,KAAK,EAAE,MAAM,GAAG,MAAM,EAAU,GAAG,EAAE,GAAG;IAE5D;;;;;;;;OAQG;IACH,KAAK,CAAC,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,KAAK,CAAC,CAAC,CAAC;IAIjE;;;;;;;;;;OAUG;IACH,GAAG;IAOH;;;;;;;;;OASG;IACH,KAAK,CAAC,GAAG,GAAE,MAAM,GAAG,MAAa;IAMjC;;OAEG;IACH,KAAK;IAKL;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC;IASxC;;;;;;;;;OASG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;IAQhC;;;;OAIG;IACH,IAAI,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,YAAY,CAAC,CAAC,CAAC;IAMlD;;;;;;;;OAQG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC;IACrC,MAAM,CAAC,KAAK,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;KAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IAQzD;;;;;;;;;;OAUG;IACH,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC;IAQ/B;;;;;;;;OAQG;IACH,KAAK,CAAC,GAAG,EAAE,MAAM;IAIjB;;;;;;;;;;;;OAYG;IACH,EAAE;IAUF;;;;;;;;;OASG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,UAAO,GAAG,KAAK,CAAC,CAAC,CAAC;IAMhD;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC;IASxC;;;;;;;;;OASG;IACH,IAAI,CAAC,EAAE,UAAO;IAoBd;;;;;;;;;;OAUG;IACH,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE;IAQpB;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC;CA+CvE"}
1
+ {"version":3,"file":"slice.d.ts","sourceRoot":"","sources":["../src/slice.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@auxilium/datalynk-client",
3
3
  "description": "Datalynk client library",
4
4
  "repository": "https://gitlab.auxiliumgroup.com/auxilium/datalynk/datalynk-client",
5
- "version": "0.9.6",
5
+ "version": "0.9.8",
6
6
  "author": "Zak Timson <zaktimson@gmail.com>",
7
7
  "private": false,
8
8
  "main": "./dist/index.cjs",