axiodb 8.33.236 → 9.5.0

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.
@@ -46,6 +46,20 @@ export default class Reader {
46
46
  * Checks if the query is an exact match on a single indexed field (no operators)
47
47
  */
48
48
  private isExactIndexMatch;
49
+ /**
50
+ * Detects if a regex pattern is a simple prefix match (e.g., /^John/, /^admin@/)
51
+ * and extracts the prefix for index optimization
52
+ *
53
+ * @param regex - The regex pattern (RegExp object or string)
54
+ * @param options - Optional regex flags (e.g., 'i' for case-insensitive)
55
+ * @returns Object with isPrefix flag, prefix string, and case-insensitive flag
56
+ *
57
+ * @example
58
+ * detectPrefixPattern(/^John/, 'i') // { isPrefix: true, prefix: 'John', caseInsensitive: true }
59
+ * detectPrefixPattern(/John/) // { isPrefix: false }
60
+ * detectPrefixPattern(/^test[0-9]+/) // { isPrefix: false } - complex pattern
61
+ */
62
+ private detectPrefixPattern;
49
63
  /**
50
64
  * Applies sorting if needed and returns data with skip/limit
51
65
  */
@@ -109,7 +109,42 @@ class Reader {
109
109
  }
110
110
  // Try index-based lookup first
111
111
  const indexReader = new ReadIndex_service_1.ReadIndex(this.path);
112
- const indexedFileNames = yield indexReader.getFileFromIndex(this.baseQuery);
112
+ let indexedFileNames = [];
113
+ // Check if query can use index optimization
114
+ const queryKeys = Object.keys(this.baseQuery);
115
+ if (queryKeys.length === 1) {
116
+ const fieldName = queryKeys[0];
117
+ const fieldValue = this.baseQuery[fieldName];
118
+ if (typeof fieldValue === 'object' && fieldValue !== null) {
119
+ // OPTIMIZED: Use $in-aware index lookup (O(K) vs O(N))
120
+ if ('$in' in fieldValue) {
121
+ indexedFileNames = yield indexReader.getFilesForInOperator(fieldName, fieldValue.$in);
122
+ }
123
+ // OPTIMIZED: Use prefix index lookup for regex patterns like /^prefix/
124
+ else if ('$regex' in fieldValue) {
125
+ const prefixInfo = this.detectPrefixPattern(fieldValue.$regex, fieldValue.$options);
126
+ if (prefixInfo.isPrefix && prefixInfo.prefix) {
127
+ indexedFileNames = yield indexReader.getFilesForPrefixQuery(fieldName, prefixInfo.prefix, prefixInfo.caseInsensitive);
128
+ }
129
+ else {
130
+ // Non-prefix regex - use standard lookup (will likely fall back to full scan)
131
+ indexedFileNames = yield indexReader.getFileFromIndex(this.baseQuery);
132
+ }
133
+ }
134
+ // Other operators - use standard lookup
135
+ else {
136
+ indexedFileNames = yield indexReader.getFileFromIndex(this.baseQuery);
137
+ }
138
+ }
139
+ else {
140
+ // Standard exact match
141
+ indexedFileNames = yield indexReader.getFileFromIndex(this.baseQuery);
142
+ }
143
+ }
144
+ else {
145
+ // Multiple fields or no fields - use standard index lookup
146
+ indexedFileNames = yield indexReader.getFileFromIndex(this.baseQuery);
147
+ }
113
148
  let ReadResponse;
114
149
  let usedIndex = false;
115
150
  if (indexedFileNames && indexedFileNames.length > 0) {
@@ -159,6 +194,34 @@ class Reader {
159
194
  // Exact match if value is primitive (not an operator object)
160
195
  return typeof value !== 'object' || value === null;
161
196
  }
197
+ /**
198
+ * Detects if a regex pattern is a simple prefix match (e.g., /^John/, /^admin@/)
199
+ * and extracts the prefix for index optimization
200
+ *
201
+ * @param regex - The regex pattern (RegExp object or string)
202
+ * @param options - Optional regex flags (e.g., 'i' for case-insensitive)
203
+ * @returns Object with isPrefix flag, prefix string, and case-insensitive flag
204
+ *
205
+ * @example
206
+ * detectPrefixPattern(/^John/, 'i') // { isPrefix: true, prefix: 'John', caseInsensitive: true }
207
+ * detectPrefixPattern(/John/) // { isPrefix: false }
208
+ * detectPrefixPattern(/^test[0-9]+/) // { isPrefix: false } - complex pattern
209
+ */
210
+ detectPrefixPattern(regex, options) {
211
+ const regexStr = regex instanceof RegExp ? regex.source : String(regex);
212
+ const flags = regex instanceof RegExp ? regex.flags : (options || '');
213
+ // Match simple prefix patterns: ^abc, ^test, ^John (alphanumeric, underscore, dash, @, .)
214
+ // Excludes complex patterns with [], *, +, {}, etc.
215
+ const prefixMatch = regexStr.match(/^\^([a-zA-Z0-9_\-@.]+)$/);
216
+ if (prefixMatch) {
217
+ return {
218
+ isPrefix: true,
219
+ prefix: prefixMatch[1],
220
+ caseInsensitive: flags.includes('i')
221
+ };
222
+ }
223
+ return { isPrefix: false, caseInsensitive: false };
224
+ }
162
225
  /**
163
226
  * Applies sorting if needed and returns data with skip/limit
164
227
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Reader.operation.js","sourceRoot":"","sources":["../../../source/Services/CRUD Operation/Reader.operation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAMA,qBAAqB;AACrB,qFAA0D;AAC1D,qFAAsD;AACtD,8DAA0D;AAC1D,mFAA0D;AAC1D,6FAA8D;AAC9D,+FAAgE;AAChE,qBAAqB;AACrB,iDAAiD;AACjD,kFAAoD;AACpD,kFAAmD;AACnD,kEAAuD;AAEvD;;GAEG;AACH,MAAqB,MAAM;IAiBzB;;;;;;;OAOG;IACH,YACE,cAAsB,EACtB,IAAY,EACZ,SAAuB,EACvB,cAAuB,KAAK,EAC5B,aAAsB;QAEtB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,CAAC,kCAAkC;QAC9D,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;QACf,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,0BAAS,EAAE,CAAC;QACjC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,cAAc,GAAG,IAAI,yBAAc,EAAE,CAAC;QAC3C,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;YAC9B,IAAI,CAAC,cAAc,GAAG,IAAI,4BAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACK,gBAAgB;;QACtB,MAAM,UAAU,GAAG;YACjB,IAAI,CAAC,IAAI,EAAG,uDAAuD;YACnE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;YACvC,MAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,QAAQ,EAAE,mCAAI,KAAK;YAC/B,MAAA,MAAA,IAAI,CAAC,IAAI,0CAAE,QAAQ,EAAE,mCAAI,GAAG;YAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ;SAClF,CAAC;QACF,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACU,IAAI;;;YACf,IAAI,CAAC;gBACH,IAAI,YAAY,GAAU,EAAE,CAAC;gBAE7B,yEAAyE;gBACzE,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAEzC,8BAA8B;gBAC9B,MAAM,iBAAiB,GAAG,MAAM,0BAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBACjE,IAAI,iBAAiB,KAAK,KAAK,EAAE,CAAC;oBAChC,YAAY,GAAG,iBAAiB,CAAC;oBACjC,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;gBAC/C,CAAC;gBAED,0CAA0C;gBAC1C,IAAI,CAAA,MAAA,IAAI,CAAC,SAAS,0CAAE,UAAU,MAAK,SAAS,EAAE,CAAC;oBAC7C,+DAA+D;oBAC/D,MAAM,aAAa,GAAG,CAAC,EAAU,EAAE,EAAE,CACnC,GAAG,8BAAa,CAAC,qBAAqB,CAAC,EAAE,CAAC,GAAG,cAAO,CAAC,aAAa,EAAE,CAAC;oBAEvE,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;wBACvD,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC;wBAC9C,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;oBAE/C,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;oBAC/D,IAAI,MAAM,IAAI,YAAY,EAAE,CAAC;wBAC3B,wCAAwC;wBACxC,0BAAa,CAAC,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;wBACpE,OAAO,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;oBACnD,CAAC;oBACD,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;gBACpE,CAAC;gBAED,+BAA+B;gBAC/B,MAAM,WAAW,GAAG,IAAI,6BAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC7C,MAAM,gBAAgB,GAAG,MAAM,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAE5E,IAAI,YAAY,CAAC;gBACjB,IAAI,SAAS,GAAG,KAAK,CAAC;gBAEtB,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpD,oDAAoD;oBACpD,YAAY,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;oBACjE,SAAS,GAAG,IAAI,CAAC;gBACnB,CAAC;qBAAM,CAAC;oBACN,iDAAiD;oBACjD,YAAY,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBACnD,CAAC;gBAED,IAAI,CAAC,CAAC,MAAM,IAAI,YAAY,CAAC,EAAE,CAAC;oBAC9B,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;gBAC1D,CAAC;gBAED,uCAAuC;gBACvC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC7C,wCAAwC;oBACxC,0BAAa,CAAC,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oBACpE,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBACpD,CAAC;gBAED,0FAA0F;gBAC1F,IAAI,SAAS,IAAI,IAAI,CAAC,iBAAiB,EAAE,EAAE,CAAC;oBAC1C,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC;gBACnC,CAAC;qBAAM,CAAC;oBACN,8DAA8D;oBAC9D,MAAM,QAAQ,GAAa,IAAI,wBAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;oBAC3D,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACrD,CAAC;gBAED,wCAAwC;gBACxC,0BAAa,CAAC,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBAE/D,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;YAC/C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;KAAA;IAED;;OAEG;IACK,iBAAiB;QACvB,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAEzC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,6DAA6D;QAC7D,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;IACrD,CAAC;IAED;;OAEG;IACW,kBAAkB,CAAC,IAAW;;YAC1C,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxC,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACtC,CAAC;YACD,MAAM,MAAM,GAAY,IAAI,wBAAO,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YACrD,MAAM,UAAU,GAAU,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YAC9C,OAAO,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAC5C,CAAC;KAAA;IAED;;;;OAIG;IACI,KAAK,CAAC,KAAa;QACxB,oCAAoC;QACpC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IAEI,IAAI,CAAC,IAAY;QACtB,mCAAmC;QACnC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACI,IAAI,CAAC,IAAkB;QAC5B,oCAAoC;QACpC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACI,QAAQ,CAAC,KAAc;QAC5B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,OAAO,CAAC,SAAkB,KAAK;QACpC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,UAAU,CAAC,OAAqB;QACrC,uCAAuC;QACvC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACjD,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;OAaG;IACW,oBAAoB,CAChC,oBAA2C;;YAE3C,wEAAwE;YACxE,MAAM,MAAM,GAAG,MAAM,+BAAc,CAAC,aAAa,CAC/C,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,WAAW,EAChB,oBAAoB,EACpB,KAAK,CAAE,oCAAoC;aAC5C,CAAC;YAEF,wCAAwC;YACxC,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;gBACrB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;YAC7B,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;KAAA;IAED;;;;;;;;;;OAUG;IACW,iBAAiB,CAC7B,SAAgB;;YAEhB,iCAAiC;YACjC,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;gBAChC,0DAA0D;gBAC1D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzB,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBAC3C,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBACtE,IAAI,MAAM,IAAI,kBAAkB,EAAE,CAAC;4BACjC,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;gCACjC,SAAS,EAAE,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;6BAChD,CAAC,CAAC;wBACL,CAAC;oBACH,CAAC;oBACD,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;wBACjC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;qBACxB,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;gBACzD,CAAC;YACH,CAAC;YACD,kCAAkC;YAClC,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACxD,uBAAuB;gBACvB,MAAM,qBAAqB,GAAU,SAAS,CAAC,KAAK,CAClD,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CACvB,CAAC;gBAEF,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;oBACpB,wCAAwC;oBACxC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBAC3C,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,eAAe,CACnD,qBAAqB,CACtB,CAAC;wBACF,IAAI,MAAM,IAAI,kBAAkB,EAAE,CAAC;4BACjC,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;gCACjC,SAAS,EAAE,kBAAkB,CAAC,IAAI,CAAC,SAAS;gCAC5C,cAAc,EAAE,SAAS,CAAC,MAAM;6BACjC,CAAC,CAAC;wBACL,CAAC;oBACH,CAAC;oBACD,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;wBACjC,SAAS,EAAE,qBAAqB;wBAChC,cAAc,EAAE,qBAAqB,CAAC,MAAM;qBAC7C,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBAC3C,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,eAAe,CACnD,qBAAqB,CACtB,CAAC;wBACF,IAAI,MAAM,IAAI,kBAAkB,EAAE,CAAC;4BACjC,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;gCACjC,SAAS,EAAE,kBAAkB,CAAC,IAAI,CAAC,SAAS;6BAC7C,CAAC,CAAC;wBACL,CAAC;oBACH,CAAC;oBACD,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;wBACjC,SAAS,EAAE,qBAAqB;qBACjC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;gBACjC,SAAS,EAAE,SAAS;aACrB,CAAC,CAAC;QACL,CAAC;KAAA;IAED,mBAAmB;IACL,eAAe,CAC3B,SAAgB;;YAEhB,eAAe;YACf,MAAM,WAAW,GAAG,CAAC,YAAY,CAAC,CAAC;YAEnC,gBAAgB;YAChB,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC3C,MAAM,aAAa,GAAU,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;oBAClD,MAAM,eAAe,GAAQ,EAAE,CAAC;oBAChC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBACvC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC/D,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;oBAEhE,IAAI,UAAU,EAAE,CAAC;wBACf,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;4BACxD,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gCAChB,eAAe,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;4BACxD,CAAC;wBACH,CAAC;oBACH,CAAC;yBAAM,IAAI,UAAU,EAAE,CAAC;wBACtB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;4BACvB,IAAI,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gCAC3B,eAAe,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;4BACnC,CAAC;wBACH,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,MAAM,IAAI,KAAK,CACb,oEAAoE,CACrE,CAAC;oBACJ,CAAC;oBAED,uDAAuD;oBACvD,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;wBAC1B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;4BAChB,eAAe,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;wBACnC,CAAC;oBACH,CAAC,CAAC,CAAC;oBACH,OAAO,eAAe,CAAC;gBACzB,CAAC,CAAC,CAAC;gBACH,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;oBACjC,SAAS,EAAE,aAAa;iBACzB,CAAC,CAAC;YACL,CAAC;YACD,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;gBACjC,SAAS,EAAE,SAAS;aACrB,CAAC,CAAC;QACL,CAAC;KAAA;CACF;AAvZD,yBAuZC"}
1
+ {"version":3,"file":"Reader.operation.js","sourceRoot":"","sources":["../../../source/Services/CRUD Operation/Reader.operation.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,50 @@ export declare class ReadIndex extends IndexManager {
26
26
  * due to I/O errors or converter failures).
27
27
  */
28
28
  getFileFromIndex(query: any): Promise<string[]>;
29
+ /**
30
+ * Retrieve file paths from an index for documents matching any value in the $in array.
31
+ *
32
+ * OPTIMIZED: Uses index lookups for each value in the $in array, unions the results.
33
+ * This is significantly faster than full collection scan for indexed fields.
34
+ *
35
+ * @param fieldName - The field name to query (must have an index)
36
+ * @param values - Array of values to match (from $in operator)
37
+ *
38
+ * @returns Promise resolving to array of unique file paths matching any value
39
+ *
40
+ * @remarks
41
+ * - Uses Set for automatic deduplication of file paths
42
+ * - Returns empty array if field has no index
43
+ * - O(K) lookups where K = values.length (much faster than O(N) full scan)
44
+ *
45
+ * @example
46
+ * // For query: { category: { $in: ['Electronics', 'Books'] } }
47
+ * const files = await readIndex.getFilesForInOperator('category', ['Electronics', 'Books']);
48
+ */
49
+ getFilesForInOperator(fieldName: string, values: any[]): Promise<string[]>;
50
+ /**
51
+ * Retrieve file paths from an index for documents where field value starts with a prefix.
52
+ *
53
+ * OPTIMIZED: Uses index to filter values by prefix, avoiding full collection scan.
54
+ * Works with hash-based indexes by filtering index keys.
55
+ *
56
+ * @param fieldName - The field name to query (must have an index)
57
+ * @param prefix - The prefix string to match
58
+ * @param caseInsensitive - Whether to perform case-insensitive matching (default: false)
59
+ *
60
+ * @returns Promise resolving to array of unique file paths where field starts with prefix
61
+ *
62
+ * @remarks
63
+ * - Filters index keys for prefix matches (O(K) where K = index key count)
64
+ * - Much faster than full collection scan for prefix patterns
65
+ * - Falls back to empty array if field has no index
66
+ * - Best used for regex patterns like /^John/ or /^admin@/
67
+ *
68
+ * @example
69
+ * // For query: { name: { $regex: /^John/i } }
70
+ * const files = await readIndex.getFilesForPrefixQuery('name', 'John', true);
71
+ */
72
+ getFilesForPrefixQuery(fieldName: string, prefix: string, caseInsensitive?: boolean): Promise<string[]>;
29
73
  /**
30
74
  * Finds index metadata entries that correspond to properties present on the provided document.
31
75
  *
@@ -72,6 +72,81 @@ class ReadIndex extends Index_service_1.IndexManager {
72
72
  }
73
73
  });
74
74
  }
75
+ /**
76
+ * Retrieve file paths from an index for documents matching any value in the $in array.
77
+ *
78
+ * OPTIMIZED: Uses index lookups for each value in the $in array, unions the results.
79
+ * This is significantly faster than full collection scan for indexed fields.
80
+ *
81
+ * @param fieldName - The field name to query (must have an index)
82
+ * @param values - Array of values to match (from $in operator)
83
+ *
84
+ * @returns Promise resolving to array of unique file paths matching any value
85
+ *
86
+ * @remarks
87
+ * - Uses Set for automatic deduplication of file paths
88
+ * - Returns empty array if field has no index
89
+ * - O(K) lookups where K = values.length (much faster than O(N) full scan)
90
+ *
91
+ * @example
92
+ * // For query: { category: { $in: ['Electronics', 'Books'] } }
93
+ * const files = await readIndex.getFilesForInOperator('category', ['Electronics', 'Books']);
94
+ */
95
+ getFilesForInOperator(fieldName, values) {
96
+ return __awaiter(this, void 0, void 0, function* () {
97
+ const indexData = yield this.indexCache.getIndex(fieldName);
98
+ if (!indexData)
99
+ return [];
100
+ const fileSet = new Set();
101
+ for (const value of values) {
102
+ const files = indexData.indexEntries[value];
103
+ if (files) {
104
+ files.forEach(f => fileSet.add(f));
105
+ }
106
+ }
107
+ return Array.from(fileSet);
108
+ });
109
+ }
110
+ /**
111
+ * Retrieve file paths from an index for documents where field value starts with a prefix.
112
+ *
113
+ * OPTIMIZED: Uses index to filter values by prefix, avoiding full collection scan.
114
+ * Works with hash-based indexes by filtering index keys.
115
+ *
116
+ * @param fieldName - The field name to query (must have an index)
117
+ * @param prefix - The prefix string to match
118
+ * @param caseInsensitive - Whether to perform case-insensitive matching (default: false)
119
+ *
120
+ * @returns Promise resolving to array of unique file paths where field starts with prefix
121
+ *
122
+ * @remarks
123
+ * - Filters index keys for prefix matches (O(K) where K = index key count)
124
+ * - Much faster than full collection scan for prefix patterns
125
+ * - Falls back to empty array if field has no index
126
+ * - Best used for regex patterns like /^John/ or /^admin@/
127
+ *
128
+ * @example
129
+ * // For query: { name: { $regex: /^John/i } }
130
+ * const files = await readIndex.getFilesForPrefixQuery('name', 'John', true);
131
+ */
132
+ getFilesForPrefixQuery(fieldName_1, prefix_1) {
133
+ return __awaiter(this, arguments, void 0, function* (fieldName, prefix, caseInsensitive = false) {
134
+ const indexData = yield this.indexCache.getIndex(fieldName);
135
+ if (!indexData)
136
+ return [];
137
+ const normalizedPrefix = caseInsensitive ? prefix.toLowerCase() : prefix;
138
+ const fileSet = new Set();
139
+ // Iterate through index keys and find matches
140
+ // For hash-based indexes, this is O(K) where K = number of unique values
141
+ for (const [value, files] of Object.entries(indexData.indexEntries)) {
142
+ const normalizedValue = caseInsensitive ? value.toLowerCase() : value;
143
+ if (normalizedValue.startsWith(normalizedPrefix)) {
144
+ files.forEach(f => fileSet.add(f));
145
+ }
146
+ }
147
+ return Array.from(fileSet);
148
+ });
149
+ }
75
150
  /**
76
151
  * Finds index metadata entries that correspond to properties present on the provided document.
77
152
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ReadIndex.service.js","sourceRoot":"","sources":["../../../source/Services/Index/ReadIndex.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uDAAuD;AACvD,mDAA+C;AAC/C,6DAAkD;AAElD,MAAa,SAAU,SAAQ,4BAAY;IAGzC,YAAa,IAAY;QACvB,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,UAAU,GAAG,IAAI,+BAAU,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACU,gBAAgB,CAAE,KAAU;;YACvC,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YACjE,IAAG,gBAAgB,KAAK,SAAS,EAAE,CAAC;gBAClC,oEAAoE;gBACpE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;gBAElF,IAAI,SAAS,EAAE,CAAC;oBACd,2CAA2C;oBAC3C,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;oBAE9C,gDAAgD;oBAChD,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;wBAC1D,OAAO,EAAE,CAAC;oBACZ,CAAC;oBAED,MAAM,eAAe,GAAG,SAAS,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;oBAC3D,OAAO,eAAe,IAAI,EAAE,CAAC;gBAC/B,CAAC;gBAED,4DAA4D;gBAC5D,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC3G,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;gBAEhD,gDAAgD;gBAChD,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;oBAC1D,OAAO,EAAE,CAAC;gBACZ,CAAC;gBAED,MAAM,eAAe,GAAG,WAAW,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;gBAC7D,OAAO,eAAe,IAAI,EAAE,CAAC;YAC/B,CAAC;iBACI,CAAC;gBACJ,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;KAAA;IAED;;;;;;;;;;;;;;KAcC;IACe,qBAAqB,CAAC,QAAa;;YACjD,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC7E,IAAI,gBAAgB,CAAC,MAAM,EAAE,CAAC;gBAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACjE,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,IAA8B,EAAE,EAAE,CACvD,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,CACpE,CAAC;YACJ,CAAC;QACH,CAAC;KAAA;CACF;AA3FD,8BA2FC"}
1
+ {"version":3,"file":"ReadIndex.service.js","sourceRoot":"","sources":["../../../source/Services/Index/ReadIndex.service.ts"],"names":[],"mappings":"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"}
@@ -162,7 +162,7 @@ class Searcher {
162
162
  const compiled = hasLogicalOps ? null : this.compileQuery(query);
163
163
  const effectiveLimit = findOne ? 1 : limit;
164
164
  // For small datasets, findOne, or when limit is small - use optimized linear search
165
- if (this.data.length < 5000 || findOne || (effectiveLimit && effectiveLimit < 100)) {
165
+ if (findOne || (effectiveLimit && effectiveLimit < 1000) || this.data.length < 10000) {
166
166
  const result = [];
167
167
  for (let i = 0; i < this.data.length; i++) {
168
168
  const rawItem = this.data[i];
@@ -239,6 +239,15 @@ class Searcher {
239
239
  : true;
240
240
  return andMatch && restMatch;
241
241
  }
242
+ // Handle root-level $nor (negated OR - none of the conditions should match)
243
+ if ("$nor" in query && Array.isArray(query.$nor)) {
244
+ const { $nor } = query, rest = __rest(query, ["$nor"]);
245
+ const norMatch = !$nor.some((sub) => this.matchesQuery(item, sub));
246
+ const restMatch = Object.keys(rest).length
247
+ ? this.matchesQuery(item, rest)
248
+ : true;
249
+ return norMatch && restMatch;
250
+ }
242
251
  // Two-pointer optimized query matching
243
252
  const queryKeys = Object.keys(query);
244
253
  const queryLength = queryKeys.length;
@@ -291,6 +300,67 @@ class Searcher {
291
300
  }
292
301
  continue;
293
302
  }
303
+ // $exists - Check if field exists in document
304
+ if ("$exists" in queryValue) {
305
+ const shouldExist = queryValue["$exists"];
306
+ const fieldExists = itemValue !== undefined && itemValue !== null;
307
+ if (shouldExist && !fieldExists)
308
+ return false;
309
+ if (!shouldExist && fieldExists)
310
+ return false;
311
+ continue;
312
+ }
313
+ // $elemMatch - Match array elements with nested conditions
314
+ if ("$elemMatch" in queryValue) {
315
+ if (!Array.isArray(itemValue))
316
+ return false;
317
+ const elemQuery = queryValue["$elemMatch"];
318
+ const hasMatch = itemValue.some(elem => {
319
+ return this.matchesQuery(elem, elemQuery, false);
320
+ });
321
+ if (!hasMatch)
322
+ return false;
323
+ continue;
324
+ }
325
+ // $not - Negation of query condition
326
+ if ("$not" in queryValue) {
327
+ const negatedQuery = queryValue["$not"];
328
+ const tempDoc = { [key]: itemValue };
329
+ const tempQuery = { [key]: negatedQuery };
330
+ if (this.matchesQuery(isUpdated ? { data: tempDoc } : tempDoc, tempQuery, isUpdated)) {
331
+ return false;
332
+ }
333
+ continue;
334
+ }
335
+ // $type - Check value type
336
+ if ("$type" in queryValue) {
337
+ const expectedType = queryValue["$type"];
338
+ let actualType = itemValue === null ? 'null'
339
+ : Array.isArray(itemValue) ? 'array'
340
+ : typeof itemValue;
341
+ if (actualType !== expectedType)
342
+ return false;
343
+ continue;
344
+ }
345
+ // $size - Check array length
346
+ if ("$size" in queryValue) {
347
+ if (!Array.isArray(itemValue))
348
+ return false;
349
+ if (itemValue.length !== queryValue["$size"])
350
+ return false;
351
+ continue;
352
+ }
353
+ // $all - Array must contain all specified values
354
+ if ("$all" in queryValue && Array.isArray(queryValue["$all"])) {
355
+ if (!Array.isArray(itemValue))
356
+ return false;
357
+ const requiredValues = queryValue["$all"];
358
+ const itemSet = new Set(itemValue);
359
+ const hasAll = requiredValues.every(val => itemSet.has(val));
360
+ if (!hasAll)
361
+ return false;
362
+ continue;
363
+ }
294
364
  if ("$eq" in queryValue) {
295
365
  if (itemValue !== queryValue["$eq"])
296
366
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"Searcher.utils.js","sourceRoot":"","sources":["../../source/utility/Searcher.utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAAsD;AACtD,uDAAuD;AACvD,mDAAwC;AACxC,gDAAwB;AACxB,4CAAoB;AAEpB,MAAM,UAAU,GAAW,cAAI,CAAC,OAAO,CACrC,SAAS,EACT,gBAAgB,EAChB,2BAA2B,CAC5B,CAAC;AAaF,MAAqB,QAAQ;IAK3B,YAAY,GAAU,EAAE,YAAqB,KAAK;QAH1C,cAAS,GAAY,KAAK,CAAC;QAC3B,oBAAe,GAA2B,IAAI,CAAC;QAGrD,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAChB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED;;OAEG;IACK,YAAY,CAAC,KAA6B;QAChD,MAAM,QAAQ,GAAoB,EAAE,CAAC;QAErC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACrC,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,MAAM;gBAAE,SAAS;YAE9C,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;YAE9B,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;gBAC1D,qCAAqC;gBACrC,IAAI,QAAQ,IAAI,UAAU,EAAE,CAAC;oBAC3B,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;oBACrC,MAAM,KAAK,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC;oBAC5C,QAAQ,CAAC,IAAI,CAAC;wBACZ,GAAG;wBACH,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,OAAO,YAAY,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC;qBACxE,CAAC,CAAC;gBACL,CAAC;gBACD,8CAA8C;qBACzC,IAAI,KAAK,IAAI,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;oBACjE,QAAQ,CAAC,IAAI,CAAC;wBACZ,GAAG;wBACH,IAAI,EAAE,QAAQ;wBACd,KAAK,EAAE,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;qBAClC,CAAC,CAAC;gBACL,CAAC;gBACD,yBAAyB;qBACpB,IAAI,KAAK,IAAI,UAAU,IAAI,KAAK,IAAI,UAAU,IAAI,MAAM,IAAI,UAAU,IAAI,MAAM,IAAI,UAAU,EAAE,CAAC;oBACpG,QAAQ,CAAC,IAAI,CAAC;wBACZ,GAAG;wBACH,IAAI,EAAE,OAAO;wBACb,QAAQ,EAAE;4BACR,GAAG,EAAE,UAAU,CAAC,KAAK,CAAC;4BACtB,GAAG,EAAE,UAAU,CAAC,KAAK,CAAC;4BACtB,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC;4BACxB,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC;yBACzB;qBACF,CAAC,CAAC;gBACL,CAAC;gBACD,aAAa;qBACR,IAAI,KAAK,IAAI,UAAU,EAAE,CAAC;oBAC7B,QAAQ,CAAC,IAAI,CAAC;wBACZ,GAAG;wBACH,IAAI,EAAE,IAAI;wBACV,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC;qBAC3B,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,0BAA0B;gBAC1B,QAAQ,CAAC,IAAI,CAAC;oBACZ,GAAG;oBACH,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,UAAU;iBACxB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACK,iBAAiB,CAAC,IAAS,EAAE,QAAyB;QAC5D,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QAExB,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;YAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;YAE/B,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;gBAChB,KAAK,OAAO;oBACV,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,IAAI;wBAAE,OAAO,KAAK,CAAC;oBAChE,IAAI,CAAC,EAAE,CAAC,KAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;wBAAE,OAAO,KAAK,CAAC;oBACrD,MAAM;gBACR,KAAK,QAAQ;oBACX,IAAI,CAAC,EAAE,CAAC,KAAM,CAAC,GAAG,CAAC,SAAS,CAAC;wBAAE,OAAO,KAAK,CAAC;oBAC5C,MAAM;gBACR,KAAK,OAAO,CAAC,CAAC,CAAC;oBACb,IAAI,OAAO,SAAS,KAAK,QAAQ;wBAAE,OAAO,KAAK,CAAC;oBAChD,MAAM,GAAG,GAAG,EAAE,CAAC,QAAS,CAAC;oBACzB,IAAI,GAAG,CAAC,GAAG,KAAK,SAAS,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,CAAC;wBAAE,OAAO,KAAK,CAAC;oBAClE,IAAI,GAAG,CAAC,GAAG,KAAK,SAAS,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,CAAC;wBAAE,OAAO,KAAK,CAAC;oBAClE,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,IAAI,CAAC;wBAAE,OAAO,KAAK,CAAC;oBACrE,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,IAAI,CAAC;wBAAE,OAAO,KAAK,CAAC;oBACrE,MAAM;gBACR,CAAC;gBACD,KAAK,IAAI;oBACP,IAAI,SAAS,KAAK,EAAE,CAAC,OAAO;wBAAE,OAAO,KAAK,CAAC;oBAC3C,MAAM;gBACR,KAAK,QAAQ;oBACX,IAAI,SAAS,KAAK,EAAE,CAAC,WAAW;wBAAE,OAAO,KAAK,CAAC;oBAC/C,MAAM;YACV,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;OAUG;IACU,IAAI;6DACf,KAA6B,EAC7B,eAA6C,EAC7C,UAAmB,KAAK,EACxB,KAAc;YAEd,wCAAwC;YACxC,MAAM,aAAa,GAAG,KAAK,IAAI,KAAK,IAAI,MAAM,IAAI,KAAK,CAAC;YACxD,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YACjE,MAAM,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAE3C,oFAAoF;YACpF,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,IAAI,OAAO,IAAI,CAAC,cAAc,IAAI,cAAc,GAAG,GAAG,CAAC,EAAE,CAAC;gBACnF,MAAM,MAAM,GAAU,EAAE,CAAC;gBACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAC7B,MAAM,IAAI,GAAG,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;oBAElE,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI;wBAAE,SAAS;oBAElD,mEAAmE;oBACnE,MAAM,OAAO,GAAG,QAAQ;wBACtB,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC;wBACxC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;oBAEvD,IAAI,OAAO,EAAE,CAAC;wBACZ,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;wBACrB,uCAAuC;wBACvC,IAAI,cAAc,IAAI,MAAM,CAAC,MAAM,IAAI,cAAc,EAAE,CAAC;4BACtD,OAAO,MAAM,CAAC;wBAChB,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,0DAA0D;YAC1D,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAE,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YAC/F,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC;YAE3D,MAAM,KAAK,GAAqB,EAAE,CAAC;YAEnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;gBACpC,MAAM,KAAK,GAAG,CAAC,GAAG,SAAS,CAAC;gBAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBAE9C,KAAK,CAAC,IAAI,CACR,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC9B,MAAM,MAAM,GAAG,IAAI,uBAAM,CAAC,UAAU,EAAE;wBACpC,UAAU,EAAE;4BACV,KAAK,EAAE,SAAS;4BAChB,KAAK;4BACL,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,eAAe;yBAChB;qBACF,CAAC,CAAC;oBAEH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;oBAC9B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;oBAC3B,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;wBACzB,IAAI,IAAI,KAAK,CAAC;4BACZ,MAAM,CAAC,IAAI,KAAK,CAAC,4BAA4B,IAAI,EAAE,CAAC,CAAC,CAAC;oBAC1D,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CACH,CAAC;YACJ,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACzC,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,sBAAsB;QAC/C,CAAC;KAAA;IAED;;;;;;;OAOG;IACI,MAAM,CAAC,YAAY,CACxB,IAAS,EACT,KAA6B,EAC7B,YAAqB,KAAK;QAE1B,wBAAwB;QACxB,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/C,MAAM,EAAE,GAAG,KAAc,KAAK,EAAd,IAAI,UAAK,KAAK,EAAxB,OAAgB,CAAQ,CAAC;YAC/B,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;YAChE,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;gBACxC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC;gBAC/B,CAAC,CAAC,IAAI,CAAC;YACT,OAAO,OAAO,IAAI,SAAS,CAAC;QAC9B,CAAC;QAED,yBAAyB;QACzB,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACjD,MAAM,EAAE,IAAI,KAAc,KAAK,EAAd,IAAI,UAAK,KAAK,EAAzB,QAAiB,CAAQ,CAAC;YAChC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;YACzE,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;gBACxC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC;gBAC/B,CAAC,CAAC,IAAI,CAAC;YACT,OAAO,QAAQ,IAAI,SAAS,CAAC;QAC/B,CAAC;QAED,uCAAuC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC;QAErC,+BAA+B;QAC/B,IAAI,WAAW,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAEnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YACzB,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;YAC9B,MAAM,SAAS,GAAG,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAEjE,6CAA6C;YAC7C,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;gBAC1D,sDAAsD;gBACtD,IAAI,QAAQ,IAAI,UAAU,EAAE,CAAC;oBAC3B,uDAAuD;oBACvD,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;oBACrC,MAAM,KAAK,GAAG,OAAO,YAAY,MAAM;wBACrC,CAAC,CAAC,OAAO;wBACT,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,CAAC;oBACvD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;wBAAE,OAAO,KAAK,CAAC;oBACzC,SAAS;gBACX,CAAC;gBAED,yGAAyG;gBACzG,MAAM,UAAU,GAAG,KAAK,IAAI,UAAU,IAAI,KAAK,IAAI,UAAU,IAAI,MAAM,IAAI,UAAU,IAAI,MAAM,IAAI,UAAU,CAAC;gBAC9G,IAAI,UAAU,EAAE,CAAC;oBACf,IAAI,OAAO,SAAS,KAAK,QAAQ;wBAAE,OAAO,KAAK,CAAC;oBAChD,IAAI,KAAK,IAAI,UAAU,IAAI,CAAC,CAAC,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;wBAAE,OAAO,KAAK,CAAC;oBAC1E,IAAI,KAAK,IAAI,UAAU,IAAI,CAAC,CAAC,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;wBAAE,OAAO,KAAK,CAAC;oBAC1E,IAAI,MAAM,IAAI,UAAU,IAAI,CAAC,CAAC,SAAS,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;wBAAE,OAAO,KAAK,CAAC;oBAC7E,IAAI,MAAM,IAAI,UAAU,IAAI,CAAC,CAAC,SAAS,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;wBAAE,OAAO,KAAK,CAAC;oBAC7E,SAAS;gBACX,CAAC;gBAED,IAAI,KAAK,IAAI,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;oBAC5D,0CAA0C;oBAC1C,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;oBAClC,IAAI,OAAO,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;wBACxB,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;wBAC/B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC;4BAAE,OAAO,KAAK,CAAC;oBAC1C,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;4BAAE,OAAO,KAAK,CAAC;oBACjD,CAAC;oBACD,SAAS;gBACX,CAAC;gBAED,IAAI,KAAK,IAAI,UAAU,EAAE,CAAC;oBACxB,IAAI,SAAS,KAAK,UAAU,CAAC,KAAK,CAAC;wBAAE,OAAO,KAAK,CAAC;oBAClD,SAAS;gBACX,CAAC;YACH,CAAC;YAED,2CAA2C;YAC3C,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;gBAC7B,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAnSD,2BAmSC"}
1
+ {"version":3,"file":"Searcher.utils.js","sourceRoot":"","sources":["../../source/utility/Searcher.utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "axiodb",
3
- "version": "8.33.236",
3
+ "version": "9.5.0",
4
4
  "description": "The Pure JavaScript Alternative to SQLite. Embedded NoSQL database for Node.js with MongoDB-style queries, zero native dependencies, built-in InMemoryCache, and web GUI. Perfect for desktop apps, CLI tools, and embedded systems. No compilation, no platform issues—pure JavaScript from npm install to production.",
5
5
  "main": "./lib/config/DB.js",
6
6
  "types": "./lib/config/DB.d.ts",