@enspirit/elo 0.9.14 → 1.0.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.
Files changed (53) hide show
  1. package/README.md +1 -1
  2. package/dist/src/ast.d.ts +1 -1
  3. package/dist/src/bindings/javascript.d.ts.map +1 -1
  4. package/dist/src/bindings/javascript.js +15 -0
  5. package/dist/src/bindings/javascript.js.map +1 -1
  6. package/dist/src/bindings/python.d.ts.map +1 -1
  7. package/dist/src/bindings/python.js +13 -0
  8. package/dist/src/bindings/python.js.map +1 -1
  9. package/dist/src/bindings/ruby.d.ts.map +1 -1
  10. package/dist/src/bindings/ruby.js +14 -0
  11. package/dist/src/bindings/ruby.js.map +1 -1
  12. package/dist/src/bindings/sql.d.ts.map +1 -1
  13. package/dist/src/bindings/sql.js +12 -0
  14. package/dist/src/bindings/sql.js.map +1 -1
  15. package/dist/src/compilers/_validate.d.ts +4 -0
  16. package/dist/src/compilers/_validate.d.ts.map +1 -0
  17. package/dist/src/compilers/_validate.js +28 -0
  18. package/dist/src/compilers/_validate.js.map +1 -0
  19. package/dist/src/compilers/javascript.d.ts.map +1 -1
  20. package/dist/src/compilers/javascript.js +16 -13
  21. package/dist/src/compilers/javascript.js.map +1 -1
  22. package/dist/src/compilers/python.d.ts.map +1 -1
  23. package/dist/src/compilers/python.js +11 -7
  24. package/dist/src/compilers/python.js.map +1 -1
  25. package/dist/src/compilers/ruby.d.ts.map +1 -1
  26. package/dist/src/compilers/ruby.js +35 -16
  27. package/dist/src/compilers/ruby.js.map +1 -1
  28. package/dist/src/compilers/sql.d.ts.map +1 -1
  29. package/dist/src/compilers/sql.js +18 -9
  30. package/dist/src/compilers/sql.js.map +1 -1
  31. package/dist/src/elo.js +6 -3
  32. package/dist/src/elo.js.map +1 -1
  33. package/dist/src/extract.d.ts +35 -0
  34. package/dist/src/extract.d.ts.map +1 -0
  35. package/dist/src/extract.js +96 -0
  36. package/dist/src/extract.js.map +1 -0
  37. package/dist/src/formats.d.ts +2 -2
  38. package/dist/src/formats.d.ts.map +1 -1
  39. package/dist/src/formats.js +11 -4
  40. package/dist/src/formats.js.map +1 -1
  41. package/dist/src/parser.d.ts.map +1 -1
  42. package/dist/src/parser.js +26 -9
  43. package/dist/src/parser.js.map +1 -1
  44. package/dist/src/runtime.d.ts.map +1 -1
  45. package/dist/src/runtime.js +7 -0
  46. package/dist/src/runtime.js.map +1 -1
  47. package/dist/src/transform.d.ts.map +1 -1
  48. package/dist/src/transform.js +43 -0
  49. package/dist/src/transform.js.map +1 -1
  50. package/dist/src/typedefs.d.ts.map +1 -1
  51. package/dist/src/typedefs.js +6 -0
  52. package/dist/src/typedefs.js.map +1 -1
  53. package/package.json +1 -9
@@ -6,6 +6,7 @@ const ir_1 = require("../ir");
6
6
  const transform_1 = require("../transform");
7
7
  const python_1 = require("../bindings/python");
8
8
  const runtime_1 = require("../runtime");
9
+ const _validate_1 = require("./_validate");
9
10
  /**
10
11
  * Python operator precedence (higher = binds tighter)
11
12
  */
@@ -97,7 +98,7 @@ function emitPy(ir, requiredHelpers, options) {
97
98
  switch (ir.type) {
98
99
  case 'int_literal':
99
100
  case 'float_literal':
100
- return ir.value.toString();
101
+ return (0, _validate_1.assertNumericLiteral)(ir.value).toString();
101
102
  case 'bool_literal':
102
103
  return ir.value ? 'True' : 'False';
103
104
  case 'null_literal':
@@ -131,11 +132,10 @@ function emitPy(ir, requiredHelpers, options) {
131
132
  return `[${elements}]`;
132
133
  }
133
134
  case 'variable':
134
- return ir.name;
135
+ return (0, _validate_1.assertSafeIdentifier)(ir.name, 'variable name');
135
136
  case 'member_access': {
136
137
  const object = ctx.emit(ir.object);
137
- // Use .get() for safe access (returns None for missing keys)
138
- return `${object}.get(${JSON.stringify(ir.property)})`;
138
+ return `${object}.get(${JSON.stringify((0, _validate_1.assertSafeIdentifier)(ir.property, 'member_access property'))})`;
139
139
  }
140
140
  case 'let': {
141
141
  // Use walrus operator: (x := val, body)[-1]
@@ -149,7 +149,7 @@ function emitPy(ir, requiredHelpers, options) {
149
149
  current = current.body;
150
150
  }
151
151
  const body = ctx.emit(current);
152
- const assignments = allBindings.map(b => `${b.name} := ${b.value}`);
152
+ const assignments = allBindings.map(b => `${(0, _validate_1.assertSafeIdentifier)(b.name, 'let binding name')} := ${b.value}`);
153
153
  return `(${[...assignments, body].join(', ')})[-1]`;
154
154
  }
155
155
  case 'call':
@@ -161,7 +161,7 @@ function emitPy(ir, requiredHelpers, options) {
161
161
  return `(${thenBranch}) if (${cond}) else (${elseBranch})`;
162
162
  }
163
163
  case 'lambda': {
164
- const params = ir.params.map(p => p.name).join(', ');
164
+ const params = ir.params.map(p => (0, _validate_1.assertSafeIdentifier)(p.name, 'lambda parameter')).join(', ');
165
165
  const body = ctx.emit(ir.body);
166
166
  return `lambda ${params}: ${body}`;
167
167
  }
@@ -189,7 +189,10 @@ function emitPy(ir, requiredHelpers, options) {
189
189
  return `(${result})`;
190
190
  }
191
191
  case 'datapath': {
192
- const segments = ir.segments.map(s => typeof s === 'string' ? JSON.stringify(s) : s.toString());
192
+ const segments = ir.segments.map(s => {
193
+ const safe = (0, _validate_1.assertSafeDatapathSegment)(s);
194
+ return typeof safe === 'string' ? JSON.stringify(safe) : safe.toString();
195
+ });
193
196
  return `[${segments.join(', ')}]`;
194
197
  }
195
198
  case 'typedef': {
@@ -235,6 +238,7 @@ function emitTypeExprParser(typeExpr, ctx) {
235
238
  'Float': 'pFloat',
236
239
  'Bool': 'pBool',
237
240
  'Boolean': 'pBool',
241
+ 'Date': 'pDate',
238
242
  'Datetime': 'pDatetime',
239
243
  };
240
244
  const parserName = parserMap[typeExpr.name];
@@ -1 +1 @@
1
- {"version":3,"file":"python.js","sourceRoot":"","sources":["../../../src/compilers/python.ts"],"names":[],"mappings":";;AAgFA,0CAGC;AAKD,0DAqBC;AA5GD,8BAAkD;AAClD,4CAAyC;AAEzC,+CAA0F;AAC1F,wCAA4C;AA8B5C;;GAEG;AACH,MAAM,aAAa,GAA2B;IAC5C,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;IAChB,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;IAChC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC;IACd,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC;IACtB,IAAI,EAAE,CAAC;CACR,CAAC;AAEF;;GAEG;AACH,SAAS,WAAW,CAAC,KAAa,EAAE,QAAgB,EAAE,IAAsB;IAC1E,IAAI,CAAC,IAAA,yBAAgB,EAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAE3C,MAAM,IAAI,GAAG,KAAe,CAAC;IAC7B,MAAM,OAAO,GAAG,sBAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvC,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAC;IAE3B,MAAM,UAAU,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9C,IAAI,SAAS,GAAG,UAAU;QAAE,OAAO,IAAI,CAAC;IACxC,IAAI,SAAS,KAAK,UAAU,IAAI,IAAI,KAAK,OAAO,IAAI,CAAC,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,GAAG,CAAC,EAAE,CAAC;QAC3F,OAAO,IAAI,CAAC;IACd,CAAC;IACD,qDAAqD;IACrD,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC1D,IAAI,SAAS,KAAK,UAAU,IAAI,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACtG,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,6CAA6C;AAC7C,MAAM,KAAK,GAAG,IAAA,4BAAmB,GAAE,CAAC;AAEpC;;GAEG;AACH,SAAgB,eAAe,CAAC,IAAU,EAAE,OAA8B;IACxE,MAAM,MAAM,GAAG,uBAAuB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACtD,OAAO,MAAM,CAAC,IAAI,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,SAAgB,uBAAuB,CAAC,IAAU,EAAE,OAA8B;IAChF,MAAM,EAAE,GAAG,IAAA,qBAAS,EAAC,IAAI,CAAC,CAAC;IAC3B,MAAM,iBAAiB,GAAG,IAAA,cAAS,EAAC,EAAE,CAAC,CAAC;IACxC,MAAM,WAAW,GAAgB,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,IAAI,KAAK,EAAE,CAAC;IAChF,MAAM,MAAM,GAAG,iBAAiB,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;IAElD,8BAA8B;IAC9B,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IACnD,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QAC5C,MAAM,IAAI,GAAG,wBAAc,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,IAAI,EAAE,CAAC;YACT,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;IACH,CAAC;IAED,qFAAqF;IACrF,yCAAyC;IACzC,MAAM,MAAM,GAAG,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAChD,OAAO,EAAE,IAAI,EAAE,cAAc,MAAM,CAAC,IAAI,IAAI,MAAM,EAAE,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC;AACvF,CAAC;AAOD,SAAS,iBAAiB,CAAC,EAAU,EAAE,OAAoB;IACzD,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;IAC1C,MAAM,IAAI,GAAG,MAAM,CAAC,EAAE,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;IAClD,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,SAAS,MAAM,CAAC,EAAU,EAAE,eAA6B,EAAE,OAAqB;IAC9E,MAAM,GAAG,GAAwB;QAC/B,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,CAAC;QACxD,cAAc,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;YACxC,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;YACxD,IAAI,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC;gBACvC,OAAO,IAAI,OAAO,GAAG,CAAC;YACxB,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;KACjF,CAAC;IAEF,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QAChB,KAAK,aAAa,CAAC;QACnB,KAAK,eAAe;YAClB,OAAO,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QAE7B,KAAK,cAAc;YACjB,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;QAErC,KAAK,cAAc;YACjB,OAAO,MAAM,CAAC;QAEhB,KAAK,gBAAgB;YACnB,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;QAElC,KAAK,cAAc,CAAC,CAAC,CAAC;YACpB,gDAAgD;YAChD,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAClD,OAAO,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;QACrC,CAAC;QAED,KAAK,kBAAkB,CAAC,CAAC,CAAC;YACxB,yEAAyE;YACzE,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACzC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC9C,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACrD,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACrD,OAAO,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC;YAClE,CAAC;YACD,OAAO,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC;QACxC,CAAC;QAED,KAAK,kBAAkB;YACrB,OAAO,wBAAwB,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC;QAE7D,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,MAAM,KAAK,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClG,OAAO,IAAI,KAAK,GAAG,CAAC;QACtB,CAAC;QAED,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9D,OAAO,IAAI,QAAQ,GAAG,CAAC;QACzB,CAAC;QAED,KAAK,UAAU;YACb,OAAO,EAAE,CAAC,IAAI,CAAC;QAEjB,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;YACnC,6DAA6D;YAC7D,OAAO,GAAG,MAAM,QAAQ,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC;QACzD,CAAC;QAED,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,4CAA4C;YAC5C,2DAA2D;YAC3D,MAAM,WAAW,GAA2C,EAAE,CAAC;YAC/D,IAAI,OAAO,GAAW,EAAE,CAAC;YAEzB,OAAO,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;gBAC9B,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACjC,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC/D,CAAC;gBACD,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;YACzB,CAAC;YAED,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC/B,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACpE,OAAO,IAAI,CAAC,GAAG,WAAW,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;QACtD,CAAC;QAED,KAAK,MAAM;YACT,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QAEtD,KAAK,IAAI,CAAC,CAAC,CAAC;YACV,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;YACpC,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YACrC,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YACrC,OAAO,IAAI,UAAU,SAAS,IAAI,WAAW,UAAU,GAAG,CAAC;QAC7D,CAAC;QAED,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YAC/B,OAAO,UAAU,MAAM,KAAK,IAAI,EAAE,CAAC;QACrC,CAAC;QAED,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC3B,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtD,wBAAwB;YACxB,MAAM,eAAe,GAAG,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,QAAQ,CAAC;YAChD,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAChD,OAAO,GAAG,MAAM,IAAI,IAAI,GAAG,CAAC;QAC9B,CAAC;QAED,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,gEAAgE;YAChE,qCAAqC;YACrC,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC;YAC7B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAEhD,gEAAgE;YAChE,IAAI,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;YAC7C,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC1C,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC9B,MAAM,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC;gBAC1B,MAAM,GAAG,IAAI,MAAM,SAAS,MAAM,OAAO,GAAG,uBAAuB,MAAM,GAAG,CAAC;YAC/E,CAAC;YACD,OAAO,IAAI,MAAM,GAAG,CAAC;QACvB,CAAC;QAED,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CACnC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CACzD,CAAC;YACF,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;QACpC,CAAC;QAED,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,oDAAoD;YACpD,MAAM,UAAU,GAAG,kBAAkB,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YACxD,GAAG,CAAC,aAAa,EAAE,CAAC,SAAS,CAAC,CAAC;YAC/B,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YAC/B,+FAA+F;YAC/F,OAAO,OAAO,EAAE,CAAC,IAAI,OAAO,UAAU,KAAK,EAAE,CAAC,IAAI,4BAA4B,EAAE,CAAC,IAAI,aAAa,IAAI,OAAO,CAAC;QAChH,CAAC;QAED,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,OAAO,EAAE,WAAW,EAAE,CAAC;gBACzB,OAAO,IAAI,CAAC;YACd,CAAC;YACD,6CAA6C;YAC7C,GAAG,CAAC,aAAa,EAAE,CAAC,SAAS,CAAC,CAAC;YAC/B,MAAM,WAAW,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;gBACzC,MAAM,aAAa,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAC5C,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK;oBACtB,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,SAAS,KAAK,CAAC,CAAC,KAAK,UAAU,CAAC;oBAC3E,CAAC,CAAC,GAAG,EAAE,CAAC,SAAS,SAAS,CAAC;gBAC7B,OAAO,WAAW,aAAa,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC;YAClE,CAAC,CAAC,CAAC;YACH,+CAA+C;YAC/C,OAAO,IAAI,CAAC,GAAG,WAAW,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;QACtD,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,kBAAkB,CACzB,QAAoC,EACpC,GAAwB;IAExB,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtB,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,SAAS,GAA2B;gBACxC,KAAK,EAAE,MAAM;gBACb,MAAM,EAAE,OAAO;gBACf,QAAQ,EAAE,SAAS;gBACnB,KAAK,EAAE,MAAM;gBACb,OAAO,EAAE,QAAQ;gBACjB,MAAM,EAAE,OAAO;gBACf,SAAS,EAAE,OAAO;gBAClB,UAAU,EAAE,WAAW;aACxB,CAAC;YACF,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC5C,IAAI,UAAU,EAAE,CAAC;gBACf,GAAG,CAAC,aAAa,EAAE,CAAC,UAAU,CAAC,CAAC;gBAChC,OAAO,UAAU,CAAC;YACpB,CAAC;YACD,8BAA8B;YAC9B,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC1C,IAAI,SAAS,KAAK,SAAS,CAAC,WAAW,EAAE,IAAI,SAAS,KAAK,SAAS,CAAC,WAAW,EAAE,EAAE,CAAC;gBACnF,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC/B,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,oCAAoC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QACvE,CAAC;QAED,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,GAAG,CAAC,aAAa,EAAE,CAAC,SAAS,CAAC,CAAC;YAC/B,MAAM,WAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBACjD,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;gBAC1D,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,UAAU,KAAK,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC;YAC7F,CAAC,CAAC,CAAC;YAEH,IAAI,UAAkB,CAAC;YACvB,IAAI,YAAY,GAAG,MAAM,CAAC;YAC1B,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAClE,UAAU,GAAG,UAAU,CAAC;YAC1B,CAAC;iBAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzC,UAAU,GAAG,WAAW,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,UAAU,GAAG,SAAS,CAAC;gBACvB,YAAY,GAAG,kBAAkB,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC1D,CAAC;YAED,OAAO,YAAY,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,UAAU,KAAK,YAAY,GAAG,CAAC;QAChF,CAAC;QAED,KAAK,oBAAoB,CAAC,CAAC,CAAC;YAC1B,GAAG,CAAC,aAAa,EAAE,CAAC,UAAU,CAAC,CAAC;YAChC,MAAM,UAAU,GAAG,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAC9D,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC;YAElC,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;gBAC1C,MAAM,aAAa,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAC5C,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK;oBACtB,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,KAAK,UAAU,CAAC;oBACtE,CAAC,CAAC,mBAAmB,CAAC;gBACxB,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,OAAO,KAAK,aAAa,GAAG,CAAC;YAC9E,CAAC,CAAC,CAAC;YAEH,OAAO,YAAY,UAAU,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAC3D,CAAC;QAED,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,GAAG,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC,CAAC;YAC9B,MAAM,UAAU,GAAG,kBAAkB,CAAC,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YACjE,OAAO,UAAU,UAAU,GAAG,CAAC;QACjC,CAAC;QAED,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,GAAG,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC,CAAC;YAC9B,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YACpE,OAAO,WAAW,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAC3C,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"python.js","sourceRoot":"","sources":["../../../src/compilers/python.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ruby.d.ts","sourceRoot":"","sources":["../../../src/compilers/ruby.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAO9B;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,sEAAsE;IACtE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gEAAgE;IAChE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wDAAwD;IACxD,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,iDAAiD;IACjD,SAAS,EAAE,OAAO,CAAC;CACpB;AAoDD;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAG9E;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,iBAAiB,CA8BjG"}
1
+ {"version":3,"file":"ruby.d.ts","sourceRoot":"","sources":["../../../src/compilers/ruby.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAQ9B;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,sEAAsE;IACtE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gEAAgE;IAChE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wDAAwD;IACxD,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,iDAAiD;IACjD,SAAS,EAAE,OAAO,CAAC;CACpB;AAoDD;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAG9E;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,iBAAiB,CA8BjG"}
@@ -6,6 +6,7 @@ const ir_1 = require("../ir");
6
6
  const transform_1 = require("../transform");
7
7
  const ruby_1 = require("../bindings/ruby");
8
8
  const runtime_1 = require("../runtime");
9
+ const _validate_1 = require("./_validate");
9
10
  /**
10
11
  * Ruby operator precedence (higher = binds tighter)
11
12
  */
@@ -104,6 +105,21 @@ function emitRubyWithHelpers(ir, options) {
104
105
  const code = emitRuby(ir, requiredHelpers, options);
105
106
  return { code, requiredHelpers };
106
107
  }
108
+ /**
109
+ * Escape a raw string for embedding inside a Ruby double-quoted string literal.
110
+ * In particular, `#` must be escaped so that `#{...}`, `#@ivar`, `#@@cvar` and
111
+ * `#$gvar` cannot trigger Ruby string interpolation — otherwise attacker-controlled
112
+ * text (string literals, constraint labels, etc.) becomes executable code.
113
+ */
114
+ function escapeRubyDQ(s) {
115
+ return s
116
+ .replace(/\\/g, '\\\\')
117
+ .replace(/#/g, '\\#')
118
+ .replace(/"/g, '\\"')
119
+ .replace(/\n/g, '\\n')
120
+ .replace(/\t/g, '\\t')
121
+ .replace(/\r/g, '\\r');
122
+ }
107
123
  /**
108
124
  * Emit Ruby code from IR
109
125
  */
@@ -122,16 +138,13 @@ function emitRuby(ir, requiredHelpers, options) {
122
138
  switch (ir.type) {
123
139
  case 'int_literal':
124
140
  case 'float_literal':
125
- return ir.value.toString();
141
+ return (0, _validate_1.assertNumericLiteral)(ir.value).toString();
126
142
  case 'bool_literal':
127
143
  return ir.value.toString();
128
144
  case 'null_literal':
129
145
  return 'nil';
130
- case 'string_literal': {
131
- // Ruby double-quoted strings: escape backslash and double quote
132
- const escaped = ir.value.replace(/\\/g, '\\\\').replace(/"/g, '\\"');
133
- return `"${escaped}"`;
134
- }
146
+ case 'string_literal':
147
+ return `"${escapeRubyDQ(ir.value)}"`;
135
148
  case 'date_literal':
136
149
  return `Date.parse(${JSON.stringify(ir.value)})`;
137
150
  case 'datetime_literal':
@@ -139,7 +152,9 @@ function emitRuby(ir, requiredHelpers, options) {
139
152
  case 'duration_literal':
140
153
  return `ActiveSupport::Duration.parse(${JSON.stringify(ir.value)})`;
141
154
  case 'object_literal': {
142
- const props = ir.properties.map(p => `${p.key}: ${ctx.emit(p.value)}`).join(', ');
155
+ const props = ir.properties
156
+ .map(p => `${(0, _validate_1.assertSafeIdentifier)(p.key, 'object_literal key')}: ${ctx.emit(p.value)}`)
157
+ .join(', ');
143
158
  return `{${props}}`;
144
159
  }
145
160
  case 'array_literal': {
@@ -147,12 +162,12 @@ function emitRuby(ir, requiredHelpers, options) {
147
162
  return `[${elements}]`;
148
163
  }
149
164
  case 'variable':
150
- return ir.name;
165
+ return (0, _validate_1.assertSafeIdentifier)(ir.name, 'variable name');
151
166
  case 'member_access': {
152
167
  const object = ctx.emit(ir.object);
153
168
  const needsParensForMember = ir.object.type === 'call' && (0, ruby_1.isNativeBinaryOp)(ir.object);
154
169
  const objectExpr = needsParensForMember ? `(${object})` : object;
155
- return `${objectExpr}[:${ir.property}]`;
170
+ return `${objectExpr}[:${(0, _validate_1.assertSafeIdentifier)(ir.property, 'member_access property')}]`;
156
171
  }
157
172
  case 'let': {
158
173
  // Collect all consecutive let bindings for flattened output
@@ -164,7 +179,7 @@ function emitRuby(ir, requiredHelpers, options) {
164
179
  }
165
180
  current = current.body;
166
181
  }
167
- const assignments = allBindings.map(b => `${b.name} = ${b.value}`).join('; ');
182
+ const assignments = allBindings.map(b => `${(0, _validate_1.assertSafeIdentifier)(b.name, 'let binding name')} = ${b.value}`).join('; ');
168
183
  const body = ctx.emit(current);
169
184
  return `(${assignments}; ${body})`;
170
185
  }
@@ -177,7 +192,7 @@ function emitRuby(ir, requiredHelpers, options) {
177
192
  return `(${cond}) ? (${thenBranch}) : (${elseBranch})`;
178
193
  }
179
194
  case 'lambda': {
180
- const params = ir.params.map(p => p.name).join(', ');
195
+ const params = ir.params.map(p => (0, _validate_1.assertSafeIdentifier)(p.name, 'lambda parameter')).join(', ');
181
196
  const body = ctx.emit(ir.body);
182
197
  return `->(${params}) { ${body} }`;
183
198
  }
@@ -200,7 +215,10 @@ function emitRuby(ir, requiredHelpers, options) {
200
215
  }
201
216
  case 'datapath': {
202
217
  // Compile datapath as an array of segments (symbols for strings, integers for numbers)
203
- const segments = ir.segments.map(s => typeof s === 'string' ? `:${s}` : s.toString());
218
+ const segments = ir.segments.map(s => {
219
+ const safe = (0, _validate_1.assertSafeDatapathSegment)(s);
220
+ return typeof safe === 'string' ? `:${safe}` : safe.toString();
221
+ });
204
222
  return `[${segments.join(', ')}]`;
205
223
  }
206
224
  case 'typedef': {
@@ -223,9 +241,7 @@ function emitRuby(ir, requiredHelpers, options) {
223
241
  const errorMsg = c.label
224
242
  ? (c.label.includes(' ') ? c.label : `${ir.guardType} '${c.label}' failed`)
225
243
  : `${ir.guardType} failed`;
226
- // Escape single quotes in the error message for Ruby string
227
- const escapedMsg = errorMsg.replace(/'/g, "\\'");
228
- return `raise '${escapedMsg}' unless ${conditionCode}`;
244
+ return `raise "${escapeRubyDQ(errorMsg)}" unless ${conditionCode}`;
229
245
  }).join('; ');
230
246
  return `(${guardChecks}; ${body})`;
231
247
  }
@@ -256,6 +272,7 @@ function emitTypeExprParser(typeExpr, ctx) {
256
272
  'Float': 'p_float',
257
273
  'Bool': 'p_bool',
258
274
  'Boolean': 'p_bool',
275
+ 'Date': 'p_date',
259
276
  'Datetime': 'p_datetime',
260
277
  };
261
278
  const parserName = parserMap[typeExpr.name];
@@ -327,7 +344,9 @@ function emitTypeExprParser(typeExpr, ctx) {
327
344
  const errorMsg = c.label
328
345
  ? (c.label.includes(' ') ? c.label : `constraint '${c.label}' failed`)
329
346
  : 'constraint failed';
330
- return `return p_fail(p, "${errorMsg}") unless (${conditionCode});`;
347
+ // Escape for safe embedding in a Ruby double-quoted string: user-controlled
348
+ // labels (e.g. `Int(i | 'any text': ...)`) must not trigger `#{...}` interpolation.
349
+ return `return p_fail(p, "${escapeRubyDQ(errorMsg)}") unless (${conditionCode});`;
331
350
  }).join(' ');
332
351
  return `->(v, p) { _r = (${baseParser}).call(v, p); return _r unless _r[:success]; ${varName} = _r[:value]; ${constraintChecks} _r }`;
333
352
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ruby.js","sourceRoot":"","sources":["../../../src/compilers/ruby.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ruby.js","sourceRoot":"","sources":["../../../src/compilers/ruby.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sql.d.ts","sourceRoot":"","sources":["../../../src/compilers/sql.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAO9B;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,kEAAkE;IAClE,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6BAA6B;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,SAAS,EAAE,OAAO,CAAC;CACpB;AAsCD;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,MAAM,CAG5E;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,gBAAgB,CAO9F"}
1
+ {"version":3,"file":"sql.d.ts","sourceRoot":"","sources":["../../../src/compilers/sql.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAQ9B;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,kEAAkE;IAClE,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6BAA6B;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,SAAS,EAAE,OAAO,CAAC;CACpB;AAsCD;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,MAAM,CAG5E;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,gBAAgB,CAO9F"}
@@ -5,6 +5,7 @@ exports.compileToSQLWithMeta = compileToSQLWithMeta;
5
5
  const ir_1 = require("../ir");
6
6
  const transform_1 = require("../transform");
7
7
  const sql_1 = require("../bindings/sql");
8
+ const _validate_1 = require("./_validate");
8
9
  /**
9
10
  * SQL operator precedence (higher = binds tighter)
10
11
  */
@@ -82,15 +83,17 @@ function emitSQL(ir) {
82
83
  switch (ir.type) {
83
84
  case 'int_literal':
84
85
  case 'float_literal':
85
- return ir.value.toString();
86
+ return (0, _validate_1.assertNumericLiteral)(ir.value).toString();
86
87
  case 'bool_literal':
87
88
  return ir.value ? 'TRUE' : 'FALSE';
88
89
  case 'null_literal':
89
90
  return 'NULL';
90
91
  case 'string_literal': {
91
92
  // SQL strings use single quotes, escape single quotes by doubling
92
- const escaped = ir.value.replace(/'/g, "''");
93
- return `'${escaped}'`;
93
+ const escaped = ir.value.replace(/\\/g, '\\\\').replace(/'/g, "''").replace(/\n/g, '\\n').replace(/\t/g, '\\t').replace(/\r/g, '\\r');
94
+ // Use E'...' escape syntax if string contains escape sequences
95
+ const prefix = escaped !== ir.value.replace(/'/g, "''") ? 'E' : '';
96
+ return `${prefix}'${escaped}'`;
94
97
  }
95
98
  case 'date_literal': {
96
99
  const escaped = ir.value.replace(/'/g, "''");
@@ -111,7 +114,7 @@ function emitSQL(ir) {
111
114
  return `'{}'::jsonb`;
112
115
  }
113
116
  const args = ir.properties
114
- .map(p => `'${p.key}', ${emitSQL(p.value)}`)
117
+ .map(p => `'${(0, _validate_1.assertSafeIdentifier)(p.key, 'object_literal key')}', ${emitSQL(p.value)}`)
115
118
  .join(', ');
116
119
  return `jsonb_build_object(${args})`;
117
120
  }
@@ -121,21 +124,24 @@ function emitSQL(ir) {
121
124
  }
122
125
  case 'variable':
123
126
  // Map _ to $1 (PostgreSQL parameter placeholder for input)
124
- return ir.name === '_' ? '$1' : ir.name;
127
+ if (ir.name === '_')
128
+ return '$1';
129
+ return (0, _validate_1.assertSafeIdentifier)(ir.name, 'variable name');
125
130
  case 'member_access': {
126
131
  const object = emitSQL(ir.object);
127
132
  const objectType = (0, ir_1.inferType)(ir.object);
128
133
  const needsParensForMember = ir.object.type === 'call' && (0, sql_1.isNativeBinaryOp)(ir.object);
129
134
  const objectExpr = needsParensForMember ? `(${object})` : object;
135
+ const prop = (0, _validate_1.assertSafeIdentifier)(ir.property, 'member_access property');
130
136
  // Use JSON access for object types
131
137
  if (objectType.kind === 'object') {
132
- return `${objectExpr}->>'${ir.property}'`;
138
+ return `${objectExpr}->>'${prop}'`;
133
139
  }
134
- return `${objectExpr}.${ir.property}`;
140
+ return `${objectExpr}.${prop}`;
135
141
  }
136
142
  case 'let': {
137
143
  const bindingCols = ir.bindings
138
- .map(b => `${emitSQL(b.value)} AS ${b.name}`)
144
+ .map(b => `${emitSQL(b.value)} AS ${(0, _validate_1.assertSafeIdentifier)(b.name, 'let binding name')}`)
139
145
  .join(', ');
140
146
  const body = emitSQL(ir.body);
141
147
  return `(SELECT ${body} FROM (SELECT ${bindingCols}) AS _let)`;
@@ -159,7 +165,10 @@ function emitSQL(ir) {
159
165
  }
160
166
  case 'datapath': {
161
167
  // Compile datapath as an array of path segments for use with fetch
162
- const segments = ir.segments.map(s => typeof s === 'string' ? `'${s}'` : s.toString());
168
+ const segments = ir.segments.map(s => {
169
+ const safe = (0, _validate_1.assertSafeDatapathSegment)(s);
170
+ return typeof safe === 'string' ? `'${safe}'` : safe.toString();
171
+ });
163
172
  return `ARRAY[${segments.join(', ')}]`;
164
173
  }
165
174
  case 'typedef':
@@ -1 +1 @@
1
- {"version":3,"file":"sql.js","sourceRoot":"","sources":["../../../src/compilers/sql.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sql.js","sourceRoot":"","sources":["../../../src/compilers/sql.ts"],"names":[],"mappings":"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"}
package/dist/src/elo.js CHANGED
@@ -27,8 +27,8 @@ function parseArgs(args) {
27
27
  case '-f':
28
28
  case '--input-format':
29
29
  options.inputFormat = args[++i];
30
- if (options.inputFormat !== 'json' && options.inputFormat !== 'csv') {
31
- console.error(`Invalid input format: ${options.inputFormat}. Use 'json' or 'csv'.`);
30
+ if (options.inputFormat !== 'json' && options.inputFormat !== 'csv' && options.inputFormat !== 'elo') {
31
+ console.error(`Invalid input format: ${options.inputFormat}. Use 'json', 'csv', or 'elo'.`);
32
32
  process.exit(1);
33
33
  }
34
34
  break;
@@ -79,7 +79,7 @@ Options:
79
79
  -e, --expression <expr> Expression to evaluate (like ruby -e)
80
80
  -d, --data <data> Input data for _ variable (or @file to read from file)
81
81
  --stdin Read input data from stdin
82
- -f, --input-format <fmt> Input data format: json (default) or csv
82
+ -f, --input-format <fmt> Input data format: json (default), csv, or elo
83
83
  -o, --output-format <fmt> Output format: json (default), elo, or csv
84
84
  -v, --version Show version number
85
85
  -h, --help Show this help message
@@ -120,6 +120,9 @@ function detectInputFormat(filePath) {
120
120
  if (filePath.endsWith('.csv')) {
121
121
  return 'csv';
122
122
  }
123
+ if (filePath.endsWith('.elo')) {
124
+ return 'elo';
125
+ }
123
126
  return 'json';
124
127
  }
125
128
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"elo.js","sourceRoot":"","sources":["../../src/elo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"elo.js","sourceRoot":"","sources":["../../src/elo.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Extract template parsing for Elo's extract() function
3
+ *
4
+ * Parses mustache-style templates like 'From: {{name}} <{{email}}>'
5
+ * into literal parts and field names for pattern matching.
6
+ */
7
+ /**
8
+ * Parsed extract template
9
+ */
10
+ export interface ExtractTemplate {
11
+ literals: string[];
12
+ fields: string[];
13
+ }
14
+ /**
15
+ * Parse an extract template string into literals and field names.
16
+ * Throws on invalid templates.
17
+ *
18
+ * For 'From: {{name}} <{{email}}>':
19
+ * literals = ['From: ', ' <', '>']
20
+ * fields = ['name', 'email']
21
+ */
22
+ export declare function parseExtractTemplate(template: string): ExtractTemplate;
23
+ /**
24
+ * Escape a string for use in a regular expression.
25
+ * Also converts control characters (\n, \t, \r) to their escape sequences
26
+ * so the pattern is safe for embedding in regex literals.
27
+ */
28
+ export declare function escapeRegex(s: string): string;
29
+ /**
30
+ * Build a regex pattern string from an extract template.
31
+ * Uses lazy (.*?) matching between literal separators.
32
+ * The last capture group uses greedy (.*) if there's no trailing literal.
33
+ */
34
+ export declare function buildExtractPattern(template: ExtractTemplate): string;
35
+ //# sourceMappingURL=extract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../../src/extract.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,eAAe,CAsDtE;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAK7C;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,CAerE"}