qast 1.0.0 → 1.1.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.
package/README.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # QAST — Query to AST to ORM
2
2
 
3
+ [![npm version](https://img.shields.io/npm/v/qast.svg)](https://www.npmjs.com/package/qast)
4
+ [![npm downloads](https://img.shields.io/npm/dm/qast.svg)](https://www.npmjs.com/package/qast)
5
+ [![GitHub stars](https://img.shields.io/github/stars/hocestnonsatis/qast.svg)](https://github.com/hocestnonsatis/qast)
6
+ [![TypeScript](https://img.shields.io/badge/%3C%2F%3E-TypeScript-%230074c1.svg)](http://www.typescriptlang.org/)
7
+ [![License: MIT](https://img.shields.io/npm/l/qast.svg)](https://github.com/hocestnonsatis/qast/blob/main/LICENSE)
8
+
3
9
  **QAST** is a small, ORM-agnostic library that parses human-readable query strings (e.g. `age gt 25 and (name eq "John" or city eq "Paris")`) into an **Abstract Syntax Tree (AST)** and then transforms that AST into **ORM-compatible filter objects** such as Prisma or TypeORM filters.
4
10
 
5
11
  It aims to provide a secure, declarative, and type-safe way to support advanced filtering in REST APIs — without falling into the pitfalls of raw string-based query patterns.
@@ -412,13 +418,48 @@ function qastMiddleware(allowedFields: string[], allowedOperators: Operator[]) {
412
418
  }
413
419
  ```
414
420
 
421
+ ## Comparison with Alternatives
422
+
423
+ ### Why QAST?
424
+
425
+ | Feature | QAST | GraphQL | OData | Custom Parsers |
426
+ |---------|------|---------|-------|----------------|
427
+ | **Type Safety** | ✅ Full TypeScript | ❌ Runtime only | ⚠️ Partial | ❌ Usually none |
428
+ | **Security** | ✅ Whitelist validation | ✅ Built-in | ✅ Built-in | ⚠️ Manual |
429
+ | **ORM Agnostic** | ✅ Yes | ❌ No | ❌ No | ⚠️ Varies |
430
+ | **Zero Dependencies** | ✅ Yes | ❌ No | ❌ No | ⚠️ Varies |
431
+ | **Learning Curve** | ✅ Simple | ❌ Complex | ❌ Complex | ⚠️ Varies |
432
+ | **REST API Friendly** | ✅ Yes | ❌ Requires GraphQL endpoint | ✅ Yes | ⚠️ Varies |
433
+ | **Bundle Size** | ✅ < 10KB | ❌ Large | ❌ Large | ⚠️ Varies |
434
+
435
+ **Use QAST when:**
436
+ - You want a simple, secure query language for REST APIs
437
+ - You need type-safe query parsing with TypeScript
438
+ - You're using Prisma, TypeORM, or Sequelize
439
+ - You want zero dependencies and a small bundle size
440
+ - You need field and operator whitelisting for security
441
+
442
+ **Consider alternatives when:**
443
+ - You need GraphQL's full query capabilities
444
+ - You require standardized query protocols (OData)
445
+ - You have complex nested data relationships
446
+
447
+ ## Examples
448
+
449
+ See the [`examples`](./examples) directory for complete, working examples:
450
+
451
+ - [Express.js REST API](./examples/express) - Full Express.js server with Prisma
452
+ - [Next.js API Routes](./examples/nextjs) - Next.js API routes with QAST
453
+ - [NestJS Integration](./examples/nestjs) - NestJS controller with query filtering
454
+ - [Interactive Playground](./examples/playground.html) - Try QAST queries in your browser (demo)
455
+
415
456
  ## License
416
457
 
417
458
  MIT © 2025
418
459
 
419
460
  ## Contributing
420
461
 
421
- Contributions are welcome! Please feel free to submit a Pull Request.
462
+ Contributions are welcome! Please see [CONTRIBUTING.md](./CONTRIBUTING.md) for details.
422
463
 
423
464
  - GitHub Repository: https://github.com/hocestnonsatis/qast
424
465
  - Issues: https://github.com/hocestnonsatis/qast/issues
@@ -45,6 +45,10 @@ function transformComparisonNode(node) {
45
45
  return { [field]: { in: value } };
46
46
  case 'contains':
47
47
  return { [field]: { contains: value } };
48
+ case 'startsWith':
49
+ return { [field]: { startsWith: value } };
50
+ case 'endsWith':
51
+ return { [field]: { endsWith: value } };
48
52
  default:
49
53
  throw new Error(`Unsupported operator: ${op}`);
50
54
  }
@@ -1 +1 @@
1
- {"version":3,"file":"prisma.js","sourceRoot":"","sources":["../../src/adapters/prisma.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prisma.js","sourceRoot":"","sources":["../../src/adapters/prisma.ts"],"names":[],"mappings":"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"}
@@ -72,6 +72,10 @@ function transformComparisonNode(node) {
72
72
  case 'contains':
73
73
  // Sequelize uses Op.like for contains with wildcards
74
74
  return { [field]: { __qast_operator__: 'contains', value } };
75
+ case 'startsWith':
76
+ return { [field]: { __qast_operator__: 'startsWith', value } };
77
+ case 'endsWith':
78
+ return { [field]: { __qast_operator__: 'endsWith', value } };
75
79
  default:
76
80
  throw new Error(`Unsupported operator: ${op}`);
77
81
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sequelize.js","sourceRoot":"","sources":["../../src/adapters/sequelize.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sequelize.js","sourceRoot":"","sources":["../../src/adapters/sequelize.ts"],"names":[],"mappings":"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"}
@@ -68,6 +68,12 @@ function transformComparisonNode(node) {
68
68
  case 'contains':
69
69
  // Contains (like) - requires Like(`%${value}%`) from TypeORM
70
70
  return { [field]: { __qast_operator__: 'contains', value } };
71
+ case 'startsWith':
72
+ // Starts with - requires Like(`${value}%`) from TypeORM
73
+ return { [field]: { __qast_operator__: 'startsWith', value } };
74
+ case 'endsWith':
75
+ // Ends with - requires Like(`%${value}`) from TypeORM
76
+ return { [field]: { __qast_operator__: 'endsWith', value } };
71
77
  default:
72
78
  throw new Error(`Unsupported operator: ${op}`);
73
79
  }
@@ -1 +1 @@
1
- {"version":3,"file":"typeorm.js","sourceRoot":"","sources":["../../src/adapters/typeorm.ts"],"names":[],"mappings":";;AAkBA,0CAGC;AArBD,sCAAsG;AAWtG;;;;;;GAMG;AACH,SAAgB,eAAe,CAAC,GAAa;IAC3C,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IACjC,OAAO,EAAE,KAAK,EAAE,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CAAC,IAAc;IACnC,IAAI,IAAA,sBAAgB,EAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,OAAO,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;SAAM,IAAI,IAAA,mBAAa,EAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;AACvC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,uBAAuB,CAAC,IAAoB;IACnD,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAElC,6CAA6C;IAC7C,mDAAmD;IACnD,2DAA2D;IAC3D,QAAQ,EAAE,EAAE,CAAC;QACX,KAAK,IAAI;YACP,yCAAyC;YACzC,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC;QAC5B,KAAK,IAAI;YACP,sDAAsD;YACtD,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACzD,KAAK,IAAI;YACP,oDAAoD;YACpD,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACzD,KAAK,IAAI;YACP,oDAAoD;YACpD,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACzD,KAAK,KAAK;YACR,oEAAoE;YACpE,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;QAC1D,KAAK,KAAK;YACR,oEAAoE;YACpE,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;QAC1D,KAAK,IAAI;YACP,6CAA6C;YAC7C,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACzD,KAAK,UAAU;YACb,6DAA6D;YAC7D,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,iBAAiB,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC;QAC/D;YACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,oBAAoB,CAAC,IAAiB;IAC7C,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAE9C,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACxB,kDAAkD;QAClD,OAAO,YAAY,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAC/C,CAAC;SAAM,CAAC;QACN,wCAAwC;QACxC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACxE,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QAC5E,OAAO,CAAC,GAAG,SAAS,EAAE,GAAG,UAAU,CAAC,CAAC;IACvC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CACnB,IAAsD,EACtD,KAAuD;IAEvD,4CAA4C;IAC5C,kDAAkD;IAClD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChD,kEAAkE;QAClE,0CAA0C;QAC1C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACxE,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAC5E,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,QAAQ,EAAE,CAAC;IACrC,CAAC;IAED,+BAA+B;IAC/B,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,EAAE,CAAC;AAC/B,CAAC"}
1
+ {"version":3,"file":"typeorm.js","sourceRoot":"","sources":["../../src/adapters/typeorm.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/parser/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/parser/parser.ts"],"names":[],"mappings":";;;AAuKA,4CAYC;AAnLD,2CAA0D;AAE1D,sCAA0D;AAE1D;;;;;;GAMG;AACH,MAAa,MAAM;IAKjB,YAAY,MAAe;QACzB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACK,OAAO;QACb,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,IAAI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACvC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW;QACtE,CAAC;IACH,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,IAAe,EAAE,YAAqB;QACnD,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YACpC,MAAM,IAAI,mBAAU,CAClB,YAAY;gBACV,YAAY,IAAI,aAAa,IAAI,CAAC,YAAY,CAAC,IAAI,gBAAgB,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAClG,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC;QAChC,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,IAAe;QAC3B,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,IAAI,CAAC;IACzC,CAAC;IAED;;OAEG;IACK,WAAW;QACjB,8BAA8B;QAC9B,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAC5B,qBAAS,CAAC,UAAU,EACpB,kCAAkC,CACnC,CAAC;QACF,MAAM,KAAK,GAAG,UAAU,CAAC,KAAe,CAAC;QAEzC,eAAe;QACf,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAC/B,qBAAS,CAAC,QAAQ,EAClB,4DAA4D,CAC7D,CAAC;QACF,MAAM,EAAE,GAAG,aAAa,CAAC,KAAiB,CAAC;QAE3C,YAAY;QACZ,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,qBAAS,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;QAClE,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAE/B,0CAA0C;QAC1C,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1B,MAAM,IAAI,mBAAU,CAClB,8CAA8C,OAAO,KAAK,gBAAgB,UAAU,CAAC,QAAQ,EAAE,CAChG,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,KAAK;YACL,EAAE;YACF,KAAK,EAAE,KAA+D;SACvE,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,SAAS;QACf,IAAI,IAAI,CAAC,KAAK,CAAC,qBAAS,CAAC,UAAU,CAAC,EAAE,CAAC;YACrC,yCAAyC;YACzC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,WAAW;YAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;YACpC,IAAI,CAAC,MAAM,CAAC,qBAAS,CAAC,WAAW,EAAE,gCAAgC,CAAC,CAAC;YACrE,OAAO,IAAI,CAAC;QACd,CAAC;aAAM,CAAC;YACN,gBAAgB;YAChB,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;QAC5B,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,eAAe;QACrB,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAE5B,+CAA+C;QAC/C,OACE,IAAI,CAAC,KAAK,CAAC,qBAAS,CAAC,UAAU,CAAC;YAChC,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,qBAAS,CAAC,GAAG,EACxC,CAAC;YACD,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC;YACzC,MAAM,SAAS,GAAI,cAAc,CAAC,KAAgB,CAAC,WAAW,EAAkB,CAAC;YACjF,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,wBAAwB;YAExC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YAE/B,yCAAyC;YACzC,IAAI,GAAG;gBACL,IAAI,EAAE,SAAS;gBACf,IAAI;gBACJ,KAAK;aACN,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACI,KAAK;QACV,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,qBAAS,CAAC,GAAG,EAAE,CAAC;YACtE,MAAM,IAAI,mBAAU,CAAC,oBAAoB,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAEnC,gDAAgD;QAChD,IACE,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,qBAAS,CAAC,GAAG;YACxC,CAAC,IAAI,CAAC,KAAK,CAAC,qBAAS,CAAC,GAAG,CAAC,EAC1B,CAAC;YACD,MAAM,IAAI,mBAAU,CAClB,qBAAqB,IAAI,CAAC,YAAY,CAAC,IAAI,gBAAgB,IAAI,CAAC,YAAY,CAAC,QAAQ,0BAA0B,CAChH,CAAC;QACJ,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;CACF;AAvJD,wBAuJC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,KAAa;IAC5C,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,qBAAS,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC;QAClC,OAAO,MAAM,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,0BAAiB,IAAI,KAAK,YAAY,mBAAU,EAAE,CAAC;YACtE,MAAM,KAAK,CAAC;QACd,CAAC;QACD,MAAM,IAAI,mBAAU,CAAC,0BAA0B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC3G,CAAC;AACH,CAAC"}
@@ -18,7 +18,7 @@ export declare enum TokenType {
18
18
  */
19
19
  export interface Token {
20
20
  type: TokenType;
21
- value: string | number | boolean | string[] | number[];
21
+ value: string | number | boolean | null | string[] | number[];
22
22
  position: number;
23
23
  }
24
24
  /**
@@ -57,6 +57,10 @@ export declare class Tokenizer {
57
57
  * Read a boolean value
58
58
  */
59
59
  private readBoolean;
60
+ /**
61
+ * Read a null value
62
+ */
63
+ private readNull;
60
64
  /**
61
65
  * Read an array (for 'in' operator)
62
66
  */
@@ -1 +1 @@
1
- {"version":3,"file":"tokenizer.d.ts","sourceRoot":"","sources":["../../src/parser/tokenizer.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,oBAAY,SAAS;IACnB,UAAU,eAAe;IACzB,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,UAAU,eAAe;IACzB,UAAU,eAAe;IACzB,WAAW,gBAAgB;IAC3B,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;IAC/B,KAAK,UAAU;IACf,GAAG,QAAQ;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACvD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAYD;;GAEG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,WAAW,CAAgB;gBAEvB,KAAK,EAAE,MAAM;IAMzB;;OAEG;IACH,OAAO,CAAC,OAAO;IASf;;OAEG;IACH,OAAO,CAAC,cAAc;IAOtB;;OAEG;IACH,OAAO,CAAC,IAAI;IAOZ;;OAEG;IACH,OAAO,CAAC,cAAc;IAWtB;;OAEG;IACH,OAAO,CAAC,UAAU;IA2ClB;;OAEG;IACH,OAAO,CAAC,UAAU;IAmClB;;OAEG;IACH,OAAO,CAAC,WAAW;IAkBnB;;OAEG;IACH,OAAO,CAAC,SAAS;IAoDjB;;OAEG;IACI,SAAS,IAAI,KAAK;IA0IzB;;OAEG;IACI,QAAQ,IAAI,KAAK,EAAE;CAU3B"}
1
+ {"version":3,"file":"tokenizer.d.ts","sourceRoot":"","sources":["../../src/parser/tokenizer.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,oBAAY,SAAS;IACnB,UAAU,eAAe;IACzB,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,UAAU,eAAe;IACzB,UAAU,eAAe;IACzB,WAAW,gBAAgB;IAC3B,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;IAC/B,KAAK,UAAU;IACf,GAAG,QAAQ;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IAC9D,QAAQ,EAAE,MAAM,CAAC;CAClB;AAYD;;GAEG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,WAAW,CAAgB;gBAEvB,KAAK,EAAE,MAAM;IAMzB;;OAEG;IACH,OAAO,CAAC,OAAO;IASf;;OAEG;IACH,OAAO,CAAC,cAAc;IAOtB;;OAEG;IACH,OAAO,CAAC,IAAI;IAOZ;;OAEG;IACH,OAAO,CAAC,cAAc;IAWtB;;OAEG;IACH,OAAO,CAAC,UAAU;IA2ClB;;OAEG;IACH,OAAO,CAAC,UAAU;IAoClB;;OAEG;IACH,OAAO,CAAC,WAAW;IAkBnB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAehB;;OAEG;IACH,OAAO,CAAC,SAAS;IAoDjB;;OAEG;IACI,SAAS,IAAI,KAAK;IAuJzB;;OAEG;IACI,QAAQ,IAAI,KAAK,EAAE;CAU3B"}
@@ -21,7 +21,7 @@ var TokenType;
21
21
  /**
22
22
  * Supported operators
23
23
  */
24
- const OPERATORS = ['eq', 'ne', 'gt', 'lt', 'gte', 'lte', 'in', 'contains'];
24
+ const OPERATORS = ['eq', 'ne', 'gt', 'lt', 'gte', 'lte', 'in', 'contains', 'startsWith', 'endsWith'];
25
25
  /**
26
26
  * Logical operators
27
27
  */
@@ -168,6 +168,20 @@ class Tokenizer {
168
168
  throw new errors_1.TokenizationError(`Expected boolean value at position ${start}`, start, this.input);
169
169
  }
170
170
  }
171
+ /**
172
+ * Read a null value
173
+ */
174
+ readNull() {
175
+ const start = this.position;
176
+ const ident = this.readIdentifier().toLowerCase();
177
+ if (ident === 'null') {
178
+ return null;
179
+ }
180
+ else {
181
+ this.position = start;
182
+ throw new errors_1.TokenizationError(`Expected null value at position ${start}`, start, this.input);
183
+ }
184
+ }
171
185
  /**
172
186
  * Read an array (for 'in' operator)
173
187
  */
@@ -323,6 +337,18 @@ class Tokenizer {
323
337
  };
324
338
  }
325
339
  }
340
+ // Check for null value
341
+ if (this.currentChar === 'n' || this.currentChar === 'N') {
342
+ const peekAhead = this.input.substring(this.position, this.position + 4).toLowerCase();
343
+ if (peekAhead === 'null' && !/\w/.test(this.input[this.position + 4] ?? '')) {
344
+ const value = this.readNull();
345
+ return {
346
+ type: TokenType.VALUE,
347
+ value,
348
+ position,
349
+ };
350
+ }
351
+ }
326
352
  // Identifier (field name)
327
353
  if (/\w/.test(this.currentChar) || this.currentChar === '_') {
328
354
  const ident = this.readIdentifier();
@@ -1 +1 @@
1
- {"version":3,"file":"tokenizer.js","sourceRoot":"","sources":["../../src/parser/tokenizer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tokenizer.js","sourceRoot":"","sources":["../../src/parser/tokenizer.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  /**
2
2
  * Supported comparison operators
3
3
  */
4
- export type Operator = 'eq' | 'ne' | 'gt' | 'lt' | 'gte' | 'lte' | 'in' | 'contains';
4
+ export type Operator = 'eq' | 'ne' | 'gt' | 'lt' | 'gte' | 'lte' | 'in' | 'contains' | 'startsWith' | 'endsWith';
5
5
  /**
6
6
  * Supported value types in comparisons
7
7
  */
8
- export type QastValue = string | number | boolean | string[] | number[];
8
+ export type QastValue = string | number | boolean | null | string[] | number[];
9
9
  /**
10
10
  * Logical operator type
11
11
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../../src/types/ast.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,IAAI,GAAG,UAAU,CAAC;AAErF;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;AAExE;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,IAAI,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,QAAQ,CAAC;IACb,KAAK,EAAE,SAAS,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,QAAQ,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,WAAW,GAAG,cAAc,CAAC;AAEpD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,IAAI,cAAc,CAEvE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,IAAI,WAAW,CAEjE;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAEzB;;OAEG;IACH,gBAAgB,CAAC,EAAE,QAAQ,EAAE,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAEzB;;OAEG;IACH,gBAAgB,CAAC,EAAE,QAAQ,EAAE,CAAC;CAC/B"}
1
+ {"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../../src/types/ast.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,IAAI,GAAG,UAAU,GAAG,YAAY,GAAG,UAAU,CAAC;AAEjH;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;AAE/E;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,IAAI,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,QAAQ,CAAC;IACb,KAAK,EAAE,SAAS,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,QAAQ,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,WAAW,GAAG,cAAc,CAAC;AAEpD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,IAAI,cAAc,CAEvE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,IAAI,WAAW,CAEjE;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAEzB;;OAEG;IACH,gBAAgB,CAAC,EAAE,QAAQ,EAAE,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAEzB;;OAEG;IACH,gBAAgB,CAAC,EAAE,QAAQ,EAAE,CAAC;CAC/B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "qast",
3
- "version": "1.0.0",
3
+ "version": "1.1.0",
4
4
  "description": "Query to AST to ORM - Parse human-readable query strings into AST and transform them into ORM-compatible filters",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -29,7 +29,20 @@
29
29
  "typescript",
30
30
  "query-string",
31
31
  "filtering",
32
- "api"
32
+ "api",
33
+ "query-builder",
34
+ "query-language",
35
+ "rest-api",
36
+ "database",
37
+ "sql",
38
+ "query-parser",
39
+ "type-safe",
40
+ "security",
41
+ "whitelist",
42
+ "validation",
43
+ "express",
44
+ "nextjs",
45
+ "nestjs"
33
46
  ],
34
47
  "author": "https://x.com/hocestnonsatis",
35
48
  "license": "MIT",