json-fs-query 3.1.1 → 3.1.3

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.
@@ -7330,6 +7330,38 @@ var jsonFsQuery = (() => {
7330
7330
  }
7331
7331
  });
7332
7332
 
7333
+ // dist/data/utilities/requireNode.js
7334
+ var require_requireNode = __commonJS({
7335
+ "dist/data/utilities/requireNode.js"(exports) {
7336
+ "use strict";
7337
+ init_process();
7338
+ require_esnext_weak_map_delete_all();
7339
+ Object.defineProperty(exports, "__esModule", {
7340
+ value: true
7341
+ });
7342
+ exports.requireNode = void 0;
7343
+ var jsEnv = _interopRequireWildcard(require_dist());
7344
+ var e;
7345
+ function _interopRequireWildcard(t, r) {
7346
+ if (!r && t && t.__esModule) return t;
7347
+ var n, a, o = Object.defineProperty, f = { __proto__: null, default: t };
7348
+ if (Object(t) !== t) return f;
7349
+ if (e || "function" != typeof WeakMap || (e = /* @__PURE__ */ new WeakMap()), e) {
7350
+ if (e.has(t)) return e.get(t);
7351
+ e.set(t, f);
7352
+ }
7353
+ for (a in t) "default" !== a && {}.hasOwnProperty.call(t, a) && ((n = o && Object.getOwnPropertyDescriptor(t, a)) && (n.get || n.set) ? o(f, a, n) : f[a] = t[a]);
7354
+ return f;
7355
+ }
7356
+ var requireNode = (action) => {
7357
+ if (!jsEnv.isNode) {
7358
+ throw new Error(`${action} only works in Node: in a browser, json-fs-query can only read the database (over fetch())`);
7359
+ }
7360
+ };
7361
+ exports.requireNode = requireNode;
7362
+ }
7363
+ });
7364
+
7333
7365
  // js-build-tools-empty:fs
7334
7366
  var require_fs = __commonJS({
7335
7367
  "js-build-tools-empty:fs"(exports, module) {
@@ -7350,11 +7382,13 @@ var jsonFsQuery = (() => {
7350
7382
  require_es_array_includes();
7351
7383
  require_es_json_stringify();
7352
7384
  require_esnext_iterator_constructor();
7385
+ require_esnext_iterator_filter();
7353
7386
  require_esnext_iterator_find();
7354
7387
  require_esnext_iterator_some();
7355
7388
  var _record = require_record();
7356
7389
  var _registerRecord = require_registerRecord();
7357
7390
  var _config = require_config();
7391
+ var _requireNode = require_requireNode();
7358
7392
  var _typeCheck = require_typeCheck();
7359
7393
  var knownKeyProperties = ["type", "fields", "lookup", "references"];
7360
7394
  var assertKnownKeyProperties = (recordName, keys) => {
@@ -7395,6 +7429,7 @@ var jsonFsQuery = (() => {
7395
7429
  }
7396
7430
  };
7397
7431
  var create = async (recordName, definition = [], keys = []) => {
7432
+ (0, _requireNode.requireNode)("create()");
7398
7433
  const {
7399
7434
  writeFile,
7400
7435
  mkdir
@@ -7423,6 +7458,15 @@ var jsonFsQuery = (() => {
7423
7458
  await mkdir(`${databasePath}${recordName}`, {
7424
7459
  recursive: true
7425
7460
  });
7461
+ const indexedKeys = recordContent.keys.filter((key) => key.lookup);
7462
+ if (indexedKeys.length) {
7463
+ await mkdir(`${databasePath}__indexes/${recordName}`, {
7464
+ recursive: true
7465
+ });
7466
+ for (const key of indexedKeys) {
7467
+ await writeFile(`${databasePath}__indexes/${recordName}/${key.lookup}`, "[]");
7468
+ }
7469
+ }
7426
7470
  await (0, _registerRecord.registerRecord)(recordName);
7427
7471
  return recordContent;
7428
7472
  };
@@ -7552,10 +7596,12 @@ var jsonFsQuery = (() => {
7552
7596
  var _retrieveFile = require_retrieveFile();
7553
7597
  var _deregisterRecord = require_deregisterRecord();
7554
7598
  var _config = require_config();
7599
+ var _requireNode = require_requireNode();
7555
7600
  var {
7556
7601
  rm
7557
7602
  } = require_promises();
7558
7603
  var drop = async (record) => {
7604
+ (0, _requireNode.requireNode)("drop()");
7559
7605
  const databasePath = (0, _config.getSetting)("databasePath", "database/");
7560
7606
  if (record === "__RECORDS") {
7561
7607
  return null;
@@ -12176,7 +12222,7 @@ var jsonFsQuery = (() => {
12176
12222
  for (const property of properties) {
12177
12223
  for (const key of recordData[entity].keys) {
12178
12224
  if ((0, _isSingleFieldKey.isSingleFieldKey)(key, property)) {
12179
- indexSet[property] = await (0, _retrieveFile.retrieveFile)(`__indexes/${entity}/${key.lookup}`);
12225
+ indexSet[property] = (recordData[entity].entries || []).length ? await (0, _retrieveFile.retrieveFile)(`__indexes/${entity}/${key.lookup}`) : [];
12180
12226
  }
12181
12227
  }
12182
12228
  }
@@ -12621,6 +12667,7 @@ var jsonFsQuery = (() => {
12621
12667
  value: true
12622
12668
  });
12623
12669
  exports.runQuery = void 0;
12670
+ require_es_array_includes();
12624
12671
  require_esnext_set_add_all();
12625
12672
  require_esnext_set_delete_all();
12626
12673
  require_esnext_set_difference();
@@ -12660,6 +12707,7 @@ var jsonFsQuery = (() => {
12660
12707
  var _fieldType = require_fieldType();
12661
12708
  var _conditionTree = require_conditionTree();
12662
12709
  var _conditionEntities = require_conditionEntities();
12710
+ var _requireNode = require_requireNode();
12663
12711
  var typeClauses = async (parsed, recordData) => {
12664
12712
  for (const clause of [...(0, _conditionTree.conditionsOf)(parsed.where), ...parsed.sortClauses]) {
12665
12713
  let entity = parsed.entity;
@@ -12678,6 +12726,9 @@ var jsonFsQuery = (() => {
12678
12726
  };
12679
12727
  var runQuery = async (parsed) => {
12680
12728
  const perPair = typeof parsed.where !== "undefined" && (0, _conditionEntities.conditionEntities)(parsed);
12729
+ if (["insert", "update", "delete", "create", "drop"].includes(parsed.command)) {
12730
+ (0, _requireNode.requireNode)(`"${parsed.command}"`);
12731
+ }
12681
12732
  switch (parsed.command) {
12682
12733
  case "create":
12683
12734
  return {