forge-sql-orm 2.1.12 → 2.1.14

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 (79) hide show
  1. package/README.md +922 -549
  2. package/dist/core/ForgeSQLAnalyseOperations.d.ts.map +1 -1
  3. package/dist/core/ForgeSQLAnalyseOperations.js +257 -0
  4. package/dist/core/ForgeSQLAnalyseOperations.js.map +1 -0
  5. package/dist/core/ForgeSQLCacheOperations.js +172 -0
  6. package/dist/core/ForgeSQLCacheOperations.js.map +1 -0
  7. package/dist/core/ForgeSQLCrudOperations.js +349 -0
  8. package/dist/core/ForgeSQLCrudOperations.js.map +1 -0
  9. package/dist/core/ForgeSQLORM.d.ts +29 -1
  10. package/dist/core/ForgeSQLORM.d.ts.map +1 -1
  11. package/dist/core/ForgeSQLORM.js +1252 -0
  12. package/dist/core/ForgeSQLORM.js.map +1 -0
  13. package/dist/core/ForgeSQLQueryBuilder.d.ts +179 -1
  14. package/dist/core/ForgeSQLQueryBuilder.d.ts.map +1 -1
  15. package/dist/core/ForgeSQLQueryBuilder.js +77 -0
  16. package/dist/core/ForgeSQLQueryBuilder.js.map +1 -0
  17. package/dist/core/ForgeSQLSelectOperations.js +81 -0
  18. package/dist/core/ForgeSQLSelectOperations.js.map +1 -0
  19. package/dist/core/Rovo.d.ts +116 -0
  20. package/dist/core/Rovo.d.ts.map +1 -0
  21. package/dist/core/Rovo.js +647 -0
  22. package/dist/core/Rovo.js.map +1 -0
  23. package/dist/core/SystemTables.js +258 -0
  24. package/dist/core/SystemTables.js.map +1 -0
  25. package/dist/index.js +30 -0
  26. package/dist/index.js.map +1 -0
  27. package/dist/lib/drizzle/extensions/additionalActions.d.ts.map +1 -1
  28. package/dist/lib/drizzle/extensions/additionalActions.js +527 -0
  29. package/dist/lib/drizzle/extensions/additionalActions.js.map +1 -0
  30. package/dist/utils/cacheContextUtils.d.ts.map +1 -1
  31. package/dist/utils/cacheContextUtils.js +198 -0
  32. package/dist/utils/cacheContextUtils.js.map +1 -0
  33. package/dist/utils/cacheUtils.d.ts.map +1 -1
  34. package/dist/utils/cacheUtils.js +383 -0
  35. package/dist/utils/cacheUtils.js.map +1 -0
  36. package/dist/utils/forgeDriver.d.ts.map +1 -1
  37. package/dist/utils/forgeDriver.js +139 -0
  38. package/dist/utils/forgeDriver.js.map +1 -0
  39. package/dist/utils/forgeDriverProxy.js +68 -0
  40. package/dist/utils/forgeDriverProxy.js.map +1 -0
  41. package/dist/utils/metadataContextUtils.d.ts.map +1 -1
  42. package/dist/utils/metadataContextUtils.js +26 -0
  43. package/dist/utils/metadataContextUtils.js.map +1 -0
  44. package/dist/utils/requestTypeContextUtils.js +10 -0
  45. package/dist/utils/requestTypeContextUtils.js.map +1 -0
  46. package/dist/utils/sqlHints.js +52 -0
  47. package/dist/utils/sqlHints.js.map +1 -0
  48. package/dist/utils/sqlUtils.d.ts.map +1 -1
  49. package/dist/utils/sqlUtils.js +590 -0
  50. package/dist/utils/sqlUtils.js.map +1 -0
  51. package/dist/webtriggers/applyMigrationsWebTrigger.js +77 -0
  52. package/dist/webtriggers/applyMigrationsWebTrigger.js.map +1 -0
  53. package/dist/webtriggers/clearCacheSchedulerTrigger.js +83 -0
  54. package/dist/webtriggers/clearCacheSchedulerTrigger.js.map +1 -0
  55. package/dist/webtriggers/dropMigrationWebTrigger.js +54 -0
  56. package/dist/webtriggers/dropMigrationWebTrigger.js.map +1 -0
  57. package/dist/webtriggers/dropTablesMigrationWebTrigger.js +54 -0
  58. package/dist/webtriggers/dropTablesMigrationWebTrigger.js.map +1 -0
  59. package/dist/webtriggers/fetchSchemaWebTrigger.js +82 -0
  60. package/dist/webtriggers/fetchSchemaWebTrigger.js.map +1 -0
  61. package/dist/webtriggers/index.js +40 -0
  62. package/dist/webtriggers/index.js.map +1 -0
  63. package/dist/webtriggers/slowQuerySchedulerTrigger.js +80 -0
  64. package/dist/webtriggers/slowQuerySchedulerTrigger.js.map +1 -0
  65. package/package.json +31 -25
  66. package/src/core/ForgeSQLAnalyseOperations.ts +3 -2
  67. package/src/core/ForgeSQLORM.ts +64 -0
  68. package/src/core/ForgeSQLQueryBuilder.ts +200 -1
  69. package/src/core/Rovo.ts +765 -0
  70. package/src/lib/drizzle/extensions/additionalActions.ts +11 -0
  71. package/src/utils/cacheContextUtils.ts +9 -6
  72. package/src/utils/cacheUtils.ts +6 -4
  73. package/src/utils/forgeDriver.ts +3 -7
  74. package/src/utils/metadataContextUtils.ts +1 -3
  75. package/src/utils/sqlUtils.ts +33 -34
  76. package/dist/ForgeSQLORM.js +0 -3922
  77. package/dist/ForgeSQLORM.js.map +0 -1
  78. package/dist/ForgeSQLORM.mjs +0 -3905
  79. package/dist/ForgeSQLORM.mjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ForgeSQLORM.js","sourceRoot":"","sources":["../../src/core/ForgeSQLORM.ts"],"names":[],"mappings":";;AAAA,qEAAkE;AASlE,yEAAsE;AACtE,yDAKiC;AACjC,gEAAmE;AAGnE,mFASqD;AACrD,2EAAuE;AACvE,uEAAoE;AAOpE,kEAAmG;AACnG,oDAAuD;AAGvD,wEAAyF;AACzF,8EAA6E;AAE7E,iCAA8B;AAE9B;;;;GAIG;AACH,MAAM,eAAe;IACX,MAAM,CAAC,QAAQ,GAA2B,IAAI,CAAC;IACtC,OAAO,CAWtB;IACe,cAAc,CAAgC;IAC9C,eAAe,CAAoB;IACnC,iBAAiB,CAAwB;IACzC,eAAe,CAA0B;IACzC,OAAO,CAAqB;IAE7C;;;OAGG;IACH,YAAoB,OAA4B;QAC9C,IAAI,CAAC;YACH,MAAM,UAAU,GAAuB,OAAO,IAAI;gBAChD,cAAc,EAAE,KAAK;gBACrB,QAAQ,EAAE,KAAK;gBACf,wBAAwB,EAAE,KAAK;gBAC/B,cAAc,EAAE,IAAI;gBACpB,QAAQ,EAAE,GAAG;gBACb,oBAAoB,EAAE,KAAK;gBAC3B,yBAAyB,EAAE,YAAY;gBACvC,mBAAmB,EAAE,MAAM;aAC5B,CAAC;YACF,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;YAC1B,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;gBAC9B,sCAAsC;gBACtC,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC/C,CAAC;YACD,qDAAqD;YACrD,MAAM,aAAa,GAAG,IAAA,yCAAsB,EAC1C,IAAI,EACJ,UAAU,CAAC,KAAK,EAChB,UAAU,CAAC,cAAc,CAC1B,CAAC;YACF,IAAI,CAAC,OAAO,GAAG,IAAA,4CAAwB,EACrC,IAAA,qBAAO,EAAC,aAAa,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,cAAc,EAAE,CAAC,EAC7D,UAAU,CACX,CAAC;YACF,IAAI,CAAC,cAAc,GAAG,IAAI,+CAAsB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YACnE,IAAI,CAAC,eAAe,GAAG,IAAI,mDAAwB,CAAC,UAAU,CAAC,CAAC;YAChE,IAAI,CAAC,iBAAiB,GAAG,IAAI,oDAAwB,CAAC,IAAI,CAAC,CAAC;YAC5D,IAAI,CAAC,eAAe,GAAG,IAAI,iDAAuB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACvE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,sCAAsC;YACtC,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC;YAC3D,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2EG;IACH,KAAK,CAAC,mBAAmB,CACvB,KAAuB,EACvB,UAIyB;QAEzB,OAAO,2CAAoB,CAAC,GAAG,CAC7B;YACE,oBAAoB,EAAE,CAAC;YACvB,iBAAiB,EAAE,CAAC;YACpB,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,WAAW,EAAE,IAAI;YACjB,oBAAoB,EAAE,KAAK,IAAI,EAAE;gBAC/B,OAAO;YACT,CAAC;SACF,EACD,KAAK,IAAI,EAAE;YACT,MAAM,MAAM,GAAG,MAAM,KAAK,EAAE,CAAC;YAC7B,MAAM,QAAQ,GAAG,MAAM,IAAA,yCAAkB,GAAE,CAAC;YAC5C,IAAI,CAAC;gBACH,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,UAAU,CACd,QAAQ,CAAC,oBAAoB,EAC7B,QAAQ,CAAC,iBAAiB,EAC1B,QAAQ,CAAC,oBAAoB,CAC9B,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,sCAAsC;gBACtC,OAAO,CAAC,KAAK,CACX,sEAAsE,EACtE;oBACE,YAAY,EAAE,CAAC,EAAE,OAAO;oBACxB,UAAU,EAAE,CAAC,EAAE,KAAK;oBACpB,oBAAoB,EAAE,QAAQ,EAAE,oBAAoB;oBACpD,iBAAiB,EAAE,QAAQ,EAAE,iBAAiB;oBAC9C,SAAS,EAAE,QAAQ,EAAE,SAAS;iBAC/B,EACD,CAAC,CACF,CAAC;YACJ,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,uBAAuB,CAAC,YAAiC;QACvD,OAAO,IAAI,CAAC,qCAAqC,CAAO,YAAY,CAAC,CAAC;IACxE,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,qCAAqC,CAAI,YAA8B;QAC3E,OAAO,MAAM,IAAI,CAAC,0CAA0C,CAC1D,KAAK,IAAI,EAAE,CACT,MAAM,2CAAuB,CAAC,GAAG,CAC/B,2CAAuB,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAG,EAAU,EAAE,EACnE,KAAK,IAAI,EAAE;YACT,IAAI,CAAC;gBACH,OAAO,MAAM,YAAY,EAAE,CAAC;YAC9B,CAAC;oBAAS,CAAC;gBACT,MAAM,IAAA,6BAAgB,EACpB,KAAK,CAAC,IAAI,CAAC,2CAAuB,CAAC,QAAQ,EAAE,EAAE,MAAM,IAAI,EAAE,CAAC,EAC5D,IAAI,CAAC,OAAO,CACb,CAAC;YACJ,CAAC;QACH,CAAC,CACF,CACJ,CAAC;IACJ,CAAC;IACD;;;;;;OAMG;IACH,KAAK,CAAC,0CAA0C,CAAI,YAA8B;QAChF,OAAO,MAAM,gDAA4B,CAAC,GAAG,CAC3C,gDAA4B,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,EACxD,KAAK,IAAI,EAAE;YACT,OAAO,MAAM,YAAY,EAAE,CAAC;QAC9B,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,uBAAuB,CAAC,YAAiC;QACvD,OAAO,IAAI,CAAC,0CAA0C,CAAO,YAAY,CAAC,CAAC;IAC7E,CAAC;IACD;;;;;;;;OAQG;IACH,MAAM,CACJ,KAAa;QAEb,OAAO,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;IACpD,CAAC;IACD;;;;;;;;OAQG;IACH,mBAAmB,CACjB,KAAa;QAEb,OAAO,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACjD,CAAC;IAED;;;;;;;;OAQG;IACH,mBAAmB,CACjB,KAAa;QAEb,OAAO,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACjD,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CACJ,KAAa;QAEb,OAAO,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;IACpD,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CACJ,KAAa;QAEb,OAAO,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;IACpD,CAAC;IACD;;;;;;;;OAQG;IACH,mBAAmB,CACjB,KAAa;QAEb,OAAO,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACjD,CAAC;IAED;;;OAGG;IACH,oBAAoB;QAClB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,WAAW,CAAC,OAA4B;QAC7C,eAAe,CAAC,QAAQ,KAAK,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;QAC1D,OAAO,eAAe,CAAC,QAAQ,CAAC;IAClC,CAAC;IAED;;;OAGG;IACH,KAAK;QACH,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED;;;;;;;;;OASG;IACH,iCAAiC;QAC/B,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED;;;;;;;;OAQG;IACH,sBAAsB;QAYpB,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CACJ,MAAkB;QAElB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,cAAc,CACZ,MAAkB;QAElB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;IACpD,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,eAAe,CACb,MAAkB,EAClB,QAAiB;QAEjB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC/D,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,uBAAuB,CACrB,MAAkB,EAClB,QAAiB;QAEjB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,8BAA8B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACvE,CAAC;IAED;;;;;;;;;;;OAWG;IACH,UAAU,CAAuB,KAAQ;QACvC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;;;;;OAWG;IACH,kBAAkB,CAAuB,KAAQ;QAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAChD,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,mBAAmB,CAAuB,KAAQ,EAAE,QAAiB;QACnE,OAAO,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,2BAA2B,CAAuB,KAAQ,EAAE,QAAiB;QAC3E,OAAO,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACnE,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAI,KAA0B;QACnC,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAI,KAAK,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH,KAAK,CAAC,UAAU,CAAI,KAA0B;QAC5C,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAI,KAAK,CAAC,CAAC,CAAC;IACjF,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiDG;IACH,KAAK,CAAC,iBAAiB,CAAI,OAAyB;QAClD,OAAO,mDAAyB,CAAC,GAAG,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IACxF,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,gBAAgB,CACd,KAA0B,EAC1B,QAAiB;QAEjB,OAAO,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAI,KAAK,EAAE,QAAQ,CAAC,CAAC;IAChE,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;IAC5B,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,IAAI,CAAC,GAAG,OAAuB;QAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;IACvC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,IAAI;QACF,OAAO,IAAI,WAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;;AAGH;;;GAGG;AACH,MAAM,WAAW;IACE,WAAW,CAAoB;IAEhD,YAAY,OAA4B;QACtC,IAAI,CAAC,WAAW,GAAG,eAAe,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2EG;IACH,KAAK,CAAC,mBAAmB,CACvB,KAAuB,EACvB,UAIyB;QAEzB,OAAO,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACjE,CAAC;IAED,eAAe,CACb,MAAkB,EAClB,QAAiB;QAEjB,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC5D,CAAC;IAED,uBAAuB,CACrB,MAAkB,EAClB,QAAiB;QAEjB,OAAO,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;;;;;;OAWG;IACH,UAAU,CAAuB,KAAQ;QACvC,OAAO,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACrE,CAAC;IAED;;;;;;;;;;;OAWG;IACH,kBAAkB,CAAuB,KAAQ;QAC/C,OAAO,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAC7E,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,mBAAmB,CAAuB,KAAQ,EAAE,QAAiB;QACnE,OAAO,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACxF,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,2BAA2B,CAAuB,KAAQ,EAAE,QAAiB;QAC3E,OAAO,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC,2BAA2B,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAChG,CAAC;IAED,uBAAuB,CAAC,YAAiC;QACvD,OAAO,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,YAAY,CAAC,CAAC;IAChE,CAAC;IACD,qCAAqC,CAAI,YAA8B;QACrE,OAAO,IAAI,CAAC,WAAW,CAAC,qCAAqC,CAAC,YAAY,CAAC,CAAC;IAC9E,CAAC;IACD;;;;;;OAMG;IACH,uBAAuB,CAAC,YAAiC;QACvD,OAAO,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,YAAY,CAAC,CAAC;IAChE,CAAC;IAED;;;;;;OAMG;IACH,0CAA0C,CAAI,YAA8B;QAC1E,OAAO,IAAI,CAAC,WAAW,CAAC,0CAA0C,CAAC,YAAY,CAAC,CAAC;IACnF,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CACJ,KAAa;QAEb,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;;OAQG;IACH,mBAAmB,CACjB,KAAa;QAEb,OAAO,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CACJ,KAAa;QAEb,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;;OAQG;IACH,mBAAmB,CACjB,KAAa;QAEb,OAAO,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CACJ,KAAa;QAEb,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;;OAQG;IACH,mBAAmB,CACjB,KAAa;QAEb,OAAO,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CACJ,MAAkB;QAElB,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,cAAc,CACZ,MAAkB;QAElB,OAAO,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAED;;;OAGG;IACH,oBAAoB;QAClB,OAAO,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC;IACjD,CAAC;IAED;;;OAGG;IACH,KAAK;QACH,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IAClC,CAAC;IAED;;;OAGG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;IACpC,CAAC;IAED;;;OAGG;IACH,iCAAiC;QAC/B,OAAO,IAAI,CAAC,WAAW,CAAC,iCAAiC,EAAE,CAAC;IAC9D,CAAC;IAED;;;;OAIG;IACH,sBAAsB;QACpB,OAAO,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC;IACnD,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CACL,KAA0B;QAE1B,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH,UAAU,CAAC,KAA0B;QACnC,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiDG;IACH,iBAAiB,CAAI,OAAyB;QAC5C,OAAO,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,gBAAgB,CACd,KAA0B,EAC1B,QAAiB;QAEjB,OAAO,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC5D,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC,KAAK,CAAC;IACzD,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,IAAI,CAAC,GAAG,OAAuB;QAC7B,OAAO,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,IAAI;QACF,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;IACjC,CAAC;CACF;AAED,kBAAe,WAAW,CAAC"}
@@ -1,4 +1,4 @@
1
- import { UpdateQueryResponse } from "@forge/sql";
1
+ import { Result, UpdateQueryResponse } from "@forge/sql";
2
2
  import { SqlParameters } from "@forge/sql/out/sql-statement";
3
3
  import { AnyMySqlSelectQueryBuilder, AnyMySqlTable, MySqlSelectBuilder, MySqlTable } from "drizzle-orm/mysql-core";
4
4
  import { MySqlSelectDynamic, type SelectedFields } from "drizzle-orm/mysql-core/query-builders/select.types";
@@ -14,6 +14,7 @@ import { SQLWrapper } from "drizzle-orm/sql/sql";
14
14
  import type { MySqlQueryResultKind } from "drizzle-orm/mysql-core/session";
15
15
  import type { WithBuilder } from "drizzle-orm/mysql-core/subquery";
16
16
  import { WithSubquery } from "drizzle-orm/subquery";
17
+ import { MySqlColumn } from "drizzle-orm/mysql-core";
17
18
  /**
18
19
  * Core interface for ForgeSQL operations.
19
20
  * Provides access to CRUD operations, schema-level SQL operations, and query analysis capabilities.
@@ -73,6 +74,34 @@ export interface ForgeSqlOperation extends QueryBuilderForgeSql {
73
74
  * @returns {ForgeSQLCacheOperations} Interface for executing versioned SQL operations with cache management
74
75
  */
75
76
  modifyWithVersioningAndEvictCache(): ForgeSQLCacheOperations;
77
+ /**
78
+ * Provides access to Rovo integration - a secure pattern for natural-language analytics.
79
+ *
80
+ * Rovo enables secure execution of dynamic SQL queries with comprehensive security validations:
81
+ * - Only SELECT queries are allowed
82
+ * - Queries are restricted to a single table
83
+ * - JOINs, subqueries, and window functions are blocked
84
+ * - Row-Level Security (RLS) support for data isolation
85
+ *
86
+ * @returns {RovoIntegration} Rovo integration instance for secure dynamic queries
87
+ *
88
+ * @example
89
+ * ```typescript
90
+ * const rovo = forgeSQL.rovo();
91
+ * const settings = await rovo.rovoSettingBuilder(usersTable, accountId)
92
+ * .useRLS()
93
+ * .addRlsColumn(usersTable.id)
94
+ * .addRlsWherePart((alias) => `${alias}.id = '${accountId}'`)
95
+ * .finish()
96
+ * .build();
97
+ *
98
+ * const result = await rovo.dynamicIsolatedQuery(
99
+ * "SELECT id, name FROM users WHERE status = 'active'",
100
+ * settings
101
+ * );
102
+ * ```
103
+ */
104
+ rovo(): RovoIntegration;
76
105
  }
77
106
  /**
78
107
  * Interface for Query Builder operations.
@@ -788,6 +817,155 @@ export interface SchemaSqlForgeSql {
788
817
  */
789
818
  executeRawUpdateSQL(query: string, params?: unknown[]): Promise<UpdateQueryResponse>;
790
819
  }
820
+ /**
821
+ * Interface for Rovo integration settings.
822
+ * Defines configuration for secure dynamic SQL query execution.
823
+ *
824
+ * @interface RovoIntegrationSetting
825
+ */
826
+ export interface RovoIntegrationSetting {
827
+ /**
828
+ * Gets the account ID of the active user.
829
+ *
830
+ * @returns {string} The account ID of the active user
831
+ */
832
+ getActiveUser(): string;
833
+ /**
834
+ * Gets the context parameters for query substitution.
835
+ *
836
+ * @returns {Record<string, string>} Map of parameter names to their values
837
+ */
838
+ getParameters(): Record<string, string>;
839
+ /**
840
+ * Gets the name of the table to query.
841
+ *
842
+ * @returns {string} The table name
843
+ */
844
+ getTableName(): string;
845
+ /**
846
+ * Checks if Row-Level Security is enabled.
847
+ *
848
+ * @returns {boolean} True if RLS is enabled, false otherwise
849
+ */
850
+ isUseRLS(): boolean;
851
+ /**
852
+ * Generates the WHERE clause for Row-Level Security filtering.
853
+ *
854
+ * @param {string} alias - The table alias to use in the WHERE clause
855
+ * @returns {string} SQL WHERE clause condition for RLS filtering
856
+ */
857
+ userScopeWhere(alias: string): string;
858
+ /**
859
+ * Gets the list of field names required for RLS validation.
860
+ *
861
+ * @returns {string[]} Array of field names that must be present in SELECT clause for RLS
862
+ */
863
+ userScopeFields(): string[];
864
+ }
865
+ /**
866
+ * Interface for configuring Row-Level Security (RLS) settings.
867
+ * Provides a fluent API for setting up RLS conditions, required columns, and WHERE clauses.
868
+ *
869
+ * @interface RlsSettings
870
+ */
871
+ export interface RlsSettings {
872
+ /**
873
+ * Sets a conditional function to determine if RLS should be applied.
874
+ *
875
+ * @param {() => Promise<boolean>} condition - Async function that returns true if RLS should be enabled
876
+ * @returns {RlsSettings} This builder instance for method chaining
877
+ */
878
+ addRlsCondition(condition: () => Promise<boolean>): RlsSettings;
879
+ /**
880
+ * Adds a column name that must be present in the SELECT clause for RLS validation.
881
+ *
882
+ * @param {string} columnName - The name of the column to require
883
+ * @returns {RlsSettings} This builder instance for method chaining
884
+ */
885
+ addRlsColumnName(columnName: string): RlsSettings;
886
+ /**
887
+ * Adds a Drizzle column that must be present in the SELECT clause for RLS validation.
888
+ *
889
+ * @param {MySqlColumn} column - The Drizzle column object
890
+ * @returns {RlsSettings} This builder instance for method chaining
891
+ */
892
+ addRlsColumn(columnName: MySqlColumn): RlsSettings;
893
+ /**
894
+ * Sets the WHERE clause function for RLS filtering.
895
+ *
896
+ * @param {(alias: string) => string} wherePart - Function that generates WHERE clause
897
+ * @returns {RlsSettings} This builder instance for method chaining
898
+ */
899
+ addRlsWherePart(wherePart: (alias: string) => string): RlsSettings;
900
+ /**
901
+ * Finishes RLS configuration and returns to the settings builder.
902
+ *
903
+ * @returns {RovoIntegrationSettingCreator} The parent settings builder
904
+ */
905
+ finish(): RovoIntegrationSettingCreator;
906
+ }
907
+ /**
908
+ * Interface for building Rovo integration settings.
909
+ * Provides a fluent API for configuring query settings including context parameters and RLS.
910
+ *
911
+ * @interface RovoIntegrationSettingCreator
912
+ */
913
+ export interface RovoIntegrationSettingCreator {
914
+ /**
915
+ * Adds a context parameter for query substitution.
916
+ *
917
+ * @param {string} parameterName - The parameter name to replace in the query
918
+ * @param {string} value - The value to substitute for the parameter
919
+ * @returns {RovoIntegrationSettingCreator} This builder instance for method chaining
920
+ */
921
+ addContextParameter(parameterName: string, value: string): RovoIntegrationSettingCreator;
922
+ /**
923
+ * Enables Row-Level Security (RLS) for the query.
924
+ *
925
+ * @returns {RlsSettings} RLS settings builder for configuring security options
926
+ */
927
+ useRLS(): RlsSettings;
928
+ /**
929
+ * Builds and returns the RovoIntegrationSetting instance.
930
+ *
931
+ * @returns {Promise<RovoIntegrationSetting>} The configured RovoIntegrationSetting instance
932
+ */
933
+ build(): Promise<RovoIntegrationSetting>;
934
+ }
935
+ /**
936
+ * Interface for Rovo integration - a secure pattern for natural-language analytics.
937
+ *
938
+ * Rovo provides secure execution of dynamic SQL queries with comprehensive security validations.
939
+ *
940
+ * @interface RovoIntegration
941
+ */
942
+ export interface RovoIntegration {
943
+ /**
944
+ * Creates a settings builder for Rovo queries using a raw table name.
945
+ *
946
+ * @param {string} tableName - The name of the table to query
947
+ * @param {string} accountId - The account ID of the active user
948
+ * @returns {RovoIntegrationSettingCreator} Builder for configuring Rovo query settings
949
+ */
950
+ rovoRawSettingBuilder(tableName: string, accountId: string): RovoIntegrationSettingCreator;
951
+ /**
952
+ * Creates a settings builder for Rovo queries using a Drizzle table object.
953
+ *
954
+ * @param {AnyMySqlTable} table - The Drizzle table object
955
+ * @param {string} accountId - The account ID of the active user
956
+ * @returns {RovoIntegrationSettingCreator} Builder for configuring Rovo query settings
957
+ */
958
+ rovoSettingBuilder(table: AnyMySqlTable, accountId: string): RovoIntegrationSettingCreator;
959
+ /**
960
+ * Executes a dynamic SQL query with comprehensive security validations.
961
+ *
962
+ * @param {string} dynamicSql - The SQL query to execute (must be a SELECT statement)
963
+ * @param {RovoIntegrationSetting} settings - Configuration settings for the query
964
+ * @returns {Promise<Result<unknown>>} Query execution result with metadata
965
+ * @throws {Error} If the query violates security restrictions
966
+ */
967
+ dynamicIsolatedQuery(dynamicSql: string, settings: RovoIntegrationSetting): Promise<Result<unknown>>;
968
+ }
791
969
  /**
792
970
  * Interface for version field metadata.
793
971
  * Defines the configuration for optimistic locking version fields.
@@ -1 +1 @@
1
- {"version":3,"file":"ForgeSQLQueryBuilder.d.ts","sourceRoot":"","sources":["../../src/core/ForgeSQLQueryBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ForgeSQLQueryBuilder.d.ts","sourceRoot":"","sources":["../../src/core/ForgeSQLQueryBuilder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.forgeTimeString = exports.forgeDateString = exports.forgeTimestampString = exports.forgeDateTimeString = void 0;
4
+ const mysql_core_1 = require("drizzle-orm/mysql-core");
5
+ const sqlUtils_1 = require("../utils/sqlUtils");
6
+ /**
7
+ * Custom type for MySQL datetime fields.
8
+ * Handles conversion between JavaScript Date objects and MySQL datetime strings.
9
+ *
10
+ * @type {CustomType}
11
+ */
12
+ exports.forgeDateTimeString = (0, mysql_core_1.customType)({
13
+ dataType() {
14
+ return "datetime";
15
+ },
16
+ toDriver(value) {
17
+ return (0, sqlUtils_1.formatDateTime)(value, "yyyy-MM-dd' 'HH:mm:ss.SSS", false);
18
+ },
19
+ fromDriver(value) {
20
+ const format = "yyyy-MM-dd' 'HH:mm:ss.SSS";
21
+ return (0, sqlUtils_1.parseDateTime)(value, format);
22
+ },
23
+ });
24
+ /**
25
+ * Custom type for MySQL timestamp fields.
26
+ * Handles conversion between JavaScript Date objects and MySQL timestamp strings.
27
+ *
28
+ * @type {CustomType}
29
+ */
30
+ exports.forgeTimestampString = (0, mysql_core_1.customType)({
31
+ dataType() {
32
+ return "timestamp";
33
+ },
34
+ toDriver(value) {
35
+ return (0, sqlUtils_1.formatDateTime)(value, "yyyy-MM-dd' 'HH:mm:ss.SSS", true);
36
+ },
37
+ fromDriver(value) {
38
+ const format = "yyyy-MM-dd' 'HH:mm:ss.SSS";
39
+ return (0, sqlUtils_1.parseDateTime)(value, format);
40
+ },
41
+ });
42
+ /**
43
+ * Custom type for MySQL date fields.
44
+ * Handles conversion between JavaScript Date objects and MySQL date strings.
45
+ *
46
+ * @type {CustomType}
47
+ */
48
+ exports.forgeDateString = (0, mysql_core_1.customType)({
49
+ dataType() {
50
+ return "date";
51
+ },
52
+ toDriver(value) {
53
+ return (0, sqlUtils_1.formatDateTime)(value, "yyyy-MM-dd", false);
54
+ },
55
+ fromDriver(value) {
56
+ const format = "yyyy-MM-dd";
57
+ return (0, sqlUtils_1.parseDateTime)(value, format);
58
+ },
59
+ });
60
+ /**
61
+ * Custom type for MySQL time fields.
62
+ * Handles conversion between JavaScript Date objects and MySQL time strings.
63
+ *
64
+ * @type {CustomType}
65
+ */
66
+ exports.forgeTimeString = (0, mysql_core_1.customType)({
67
+ dataType() {
68
+ return "time";
69
+ },
70
+ toDriver(value) {
71
+ return (0, sqlUtils_1.formatDateTime)(value, "HH:mm:ss.SSS", false);
72
+ },
73
+ fromDriver(value) {
74
+ return (0, sqlUtils_1.parseDateTime)(value, "HH:mm:ss.SSS");
75
+ },
76
+ });
77
+ //# sourceMappingURL=ForgeSQLQueryBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ForgeSQLQueryBuilder.js","sourceRoot":"","sources":["../../src/core/ForgeSQLQueryBuilder.ts"],"names":[],"mappings":";;;AAEA,uDAMgC;AAMhC,gDAAkE;AAivClE;;;;;GAKG;AACU,QAAA,mBAAmB,GAAG,IAAA,uBAAU,EAI1C;IACD,QAAQ;QACN,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,QAAQ,CAAC,KAAW;QAClB,OAAO,IAAA,yBAAc,EAAC,KAAK,EAAE,2BAA2B,EAAE,KAAK,CAAC,CAAC;IACnE,CAAC;IACD,UAAU,CAAC,KAAc;QACvB,MAAM,MAAM,GAAG,2BAA2B,CAAC;QAC3C,OAAO,IAAA,wBAAa,EAAC,KAAe,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;CACF,CAAC,CAAC;AAEH;;;;;GAKG;AACU,QAAA,oBAAoB,GAAG,IAAA,uBAAU,EAI3C;IACD,QAAQ;QACN,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,QAAQ,CAAC,KAAW;QAClB,OAAO,IAAA,yBAAc,EAAC,KAAK,EAAE,2BAA2B,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;IACD,UAAU,CAAC,KAAc;QACvB,MAAM,MAAM,GAAG,2BAA2B,CAAC;QAC3C,OAAO,IAAA,wBAAa,EAAC,KAAe,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;CACF,CAAC,CAAC;AAEH;;;;;GAKG;AACU,QAAA,eAAe,GAAG,IAAA,uBAAU,EAItC;IACD,QAAQ;QACN,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,QAAQ,CAAC,KAAW;QAClB,OAAO,IAAA,yBAAc,EAAC,KAAK,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;IACpD,CAAC;IACD,UAAU,CAAC,KAAc;QACvB,MAAM,MAAM,GAAG,YAAY,CAAC;QAC5B,OAAO,IAAA,wBAAa,EAAC,KAAe,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;CACF,CAAC,CAAC;AAEH;;;;;GAKG;AACU,QAAA,eAAe,GAAG,IAAA,uBAAU,EAItC;IACD,QAAQ;QACN,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,QAAQ,CAAC,KAAW;QAClB,OAAO,IAAA,yBAAc,EAAC,KAAK,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;IACtD,CAAC;IACD,UAAU,CAAC,KAAc;QACvB,OAAO,IAAA,wBAAa,EAAC,KAAe,EAAE,cAAc,CAAC,CAAC;IACxD,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ForgeSQLSelectOperations = void 0;
4
+ const sql_1 = require("@forge/sql");
5
+ /**
6
+ * Class implementing SQL select operations for ForgeSQL ORM.
7
+ * Provides methods for executing queries and mapping results to entity types.
8
+ */
9
+ class ForgeSQLSelectOperations {
10
+ options;
11
+ /**
12
+ * Creates a new instance of ForgeSQLSelectOperations.
13
+ * @param {ForgeSqlOrmOptions} options - Configuration options for the ORM
14
+ */
15
+ constructor(options) {
16
+ this.options = options;
17
+ }
18
+ /**
19
+ * Executes a Drizzle query and returns a single result.
20
+ * Throws an error if more than one record is returned.
21
+ *
22
+ * @template T - The type of the query builder
23
+ * @param {T} query - The Drizzle query to execute
24
+ * @returns {Promise<Awaited<T> extends Array<any> ? Awaited<T>[number] | undefined : Awaited<T> | undefined>} A single result object or undefined
25
+ * @throws {Error} If more than one record is returned
26
+ */
27
+ async executeQueryOnlyOne(query) {
28
+ const results = await query;
29
+ const datas = results;
30
+ if (!datas.length) {
31
+ return undefined;
32
+ }
33
+ if (datas.length > 1) {
34
+ throw new Error(`Expected 1 record but returned ${datas.length}`);
35
+ }
36
+ return datas[0];
37
+ }
38
+ /**
39
+ * Executes a raw SQL query and returns the results.
40
+ * Logs the query if logging is enabled.
41
+ *
42
+ * @template T - The type of the result objects
43
+ * @param {string} query - The raw SQL query to execute
44
+ * @param {SqlParameters[]} [params] - Optional SQL parameters
45
+ * @returns {Promise<T[]>} A list of results as objects
46
+ */
47
+ async executeRawSQL(query, params) {
48
+ if (this.options.logRawSqlQuery) {
49
+ const paramsStr = params ? `, with params: ${JSON.stringify(params)}` : "";
50
+ // eslint-disable-next-line no-console
51
+ console.debug(`Executing with SQL ${query}${paramsStr}`);
52
+ }
53
+ const sqlStatement = sql_1.sql.prepare(query);
54
+ if (params) {
55
+ sqlStatement.bindParams(...params);
56
+ }
57
+ const result = await sqlStatement.execute();
58
+ return result.rows;
59
+ }
60
+ /**
61
+ * Executes a raw SQL update query.
62
+ * @param {string} query - The raw SQL update query
63
+ * @param {SqlParameters[]} [params] - Optional SQL parameters
64
+ * @returns {Promise<UpdateQueryResponse>} The update response containing affected rows
65
+ */
66
+ async executeRawUpdateSQL(query, params) {
67
+ const sqlStatement = sql_1.sql.prepare(query);
68
+ if (params) {
69
+ sqlStatement.bindParams(...params);
70
+ }
71
+ if (this.options.logRawSqlQuery) {
72
+ // eslint-disable-next-line no-console
73
+ console.debug(`Executing Update with SQL ${query}` +
74
+ (params ? `, with params: ${JSON.stringify(params)}` : ""));
75
+ }
76
+ const updateQueryResponseResults = await sqlStatement.execute();
77
+ return updateQueryResponseResults.rows;
78
+ }
79
+ }
80
+ exports.ForgeSQLSelectOperations = ForgeSQLSelectOperations;
81
+ //# sourceMappingURL=ForgeSQLSelectOperations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ForgeSQLSelectOperations.js","sourceRoot":"","sources":["../../src/core/ForgeSQLSelectOperations.ts"],"names":[],"mappings":";;;AAAA,oCAAsD;AAOtD;;;GAGG;AACH,MAAa,wBAAwB;IAClB,OAAO,CAAqB;IAE7C;;;OAGG;IACH,YAAY,OAA2B;QACrC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,mBAAmB,CACvB,KAAQ;QAIR,MAAM,OAAO,GAAe,MAAM,KAAK,CAAC;QACxC,MAAM,KAAK,GAAG,OAAoB,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAClB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,kCAAkC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,OAAO,KAAK,CAAC,CAAC,CAAoE,CAAC;IACrF,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,aAAa,CAA6B,KAAa,EAAE,MAAkB;QAC/E,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YAChC,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3E,sCAAsC;YACtC,OAAO,CAAC,KAAK,CAAC,sBAAsB,KAAK,GAAG,SAAS,EAAE,CAAC,CAAC;QAC3D,CAAC;QACD,MAAM,YAAY,GAAG,SAAG,CAAC,OAAO,CAAI,KAAK,CAAC,CAAC;QAC3C,IAAI,MAAM,EAAE,CAAC;YACX,YAAY,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,CAAC;QACrC,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE,CAAC;QAC5C,OAAO,MAAM,CAAC,IAAW,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,mBAAmB,CAAC,KAAa,EAAE,MAAkB;QACzD,MAAM,YAAY,GAAG,SAAG,CAAC,OAAO,CAAsB,KAAK,CAAC,CAAC;QAC7D,IAAI,MAAM,EAAE,CAAC;YACX,YAAY,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YAChC,sCAAsC;YACtC,OAAO,CAAC,KAAK,CACX,6BAA6B,KAAK,EAAE;gBAClC,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAC7D,CAAC;QACJ,CAAC;QACD,MAAM,0BAA0B,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE,CAAC;QAChE,OAAO,0BAA0B,CAAC,IAAI,CAAC;IACzC,CAAC;CACF;AAjFD,4DAiFC"}
@@ -0,0 +1,116 @@
1
+ import { ForgeSqlOperation, ForgeSqlOrmOptions, RovoIntegration, RovoIntegrationSetting, RovoIntegrationSettingCreator } from "./ForgeSQLQueryBuilder";
2
+ import { Result } from "@forge/sql";
3
+ import { AnyMySqlTable } from "drizzle-orm/mysql-core";
4
+ /**
5
+ * Main class for Rovo integration - a secure pattern for natural-language analytics in Forge apps.
6
+ *
7
+ * Rovo provides a secure way to execute dynamic SQL queries with comprehensive security validations:
8
+ * - Only SELECT queries are allowed
9
+ * - Queries are restricted to a single table
10
+ * - JOINs, subqueries, and window functions are blocked
11
+ * - Row-Level Security (RLS) support for data isolation
12
+ * - Post-execution validation of query results
13
+ *
14
+ * @class Rovo
15
+ * @implements {RovoIntegration}
16
+ *
17
+ * @example
18
+ * ```typescript
19
+ * const rovo = forgeSQL.rovo();
20
+ * const settings = await rovo.rovoSettingBuilder(usersTable, accountId)
21
+ * .useRLS()
22
+ * .addRlsColumn(usersTable.id)
23
+ * .addRlsWherePart((alias) => `${alias}.id = '${accountId}'`)
24
+ * .finish()
25
+ * .build();
26
+ *
27
+ * const result = await rovo.dynamicIsolatedQuery(
28
+ * "SELECT id, name FROM users WHERE status = 'active'",
29
+ * settings
30
+ * );
31
+ * ```
32
+ */
33
+ export declare class Rovo implements RovoIntegration {
34
+ private readonly forgeOperations;
35
+ private readonly options;
36
+ /**
37
+ * Creates a new Rovo instance.
38
+ *
39
+ * @param {ForgeSqlOperation} forgeSqlOperations - The ForgeSQL operations instance for query analysis
40
+ * @param options - Configuration options for the ORM
41
+ */
42
+ constructor(forgeSqlOperations: ForgeSqlOperation, options: ForgeSqlOrmOptions);
43
+ /**
44
+ * Parses SQL query into AST and validates it's a single SELECT statement
45
+ * @param sqlQuery - Normalized SQL query string
46
+ * @returns Parsed AST of the SELECT statement
47
+ * @throws Error if parsing fails or query is not a single SELECT statement
48
+ */
49
+ private parseSqlQuery;
50
+ /**
51
+ * Recursively extracts all table names from SQL AST node
52
+ * @param node - AST node to extract tables from
53
+ * @returns Array of table names (uppercase)
54
+ */
55
+ private extractTables;
56
+ /**
57
+ * Recursively checks if AST node contains scalar subqueries
58
+ * @param node - AST node to check
59
+ * @returns true if node contains scalar subquery, false otherwise
60
+ */
61
+ private hasScalarSubquery;
62
+ /**
63
+ * Creates a settings builder for Rovo queries using a raw table name.
64
+ *
65
+ * @param {string} tableName - The name of the table to query
66
+ * @param {string} accountId - The account ID of the active user
67
+ * @returns {RovoIntegrationSettingCreator} Builder for configuring Rovo query settings
68
+ *
69
+ * @example
70
+ * ```typescript
71
+ * const builder = rovo.rovoRawSettingBuilder('users', accountId);
72
+ * ```
73
+ */
74
+ rovoRawSettingBuilder(tableName: string, accountId: string): RovoIntegrationSettingCreator;
75
+ /**
76
+ * Creates a settings builder for Rovo queries using a Drizzle table object.
77
+ *
78
+ * @param {AnyMySqlTable} table - The Drizzle table object
79
+ * @param {string} accountId - The account ID of the active user
80
+ * @returns {RovoIntegrationSettingCreator} Builder for configuring Rovo query settings
81
+ *
82
+ * @example
83
+ * ```typescript
84
+ * const builder = rovo.rovoSettingBuilder(usersTable, accountId);
85
+ * ```
86
+ */
87
+ rovoSettingBuilder(table: AnyMySqlTable, accountId: string): RovoIntegrationSettingCreator;
88
+ /**
89
+ * Executes a dynamic SQL query with comprehensive security validations.
90
+ *
91
+ * This method performs multiple security checks:
92
+ * 1. Validates that the query is a SELECT statement
93
+ * 2. Ensures the query targets only the specified table
94
+ * 3. Blocks JOINs, subqueries, and window functions
95
+ * 4. Applies Row-Level Security filtering if enabled
96
+ * 5. Validates query results to ensure security fields are present
97
+ *
98
+ * @param {string} dynamicSql - The SQL query to execute (must be a SELECT statement)
99
+ * @param {RovoIntegrationSetting} settings - Configuration settings for the query
100
+ * @returns {Promise<Result<unknown>>} Query execution result with metadata
101
+ * @throws {Error} If the query violates security restrictions
102
+ *
103
+ * @example
104
+ * ```typescript
105
+ * const result = await rovo.dynamicIsolatedQuery(
106
+ * "SELECT id, name, email FROM users WHERE status = 'active' ORDER BY name",
107
+ * settings
108
+ * );
109
+ *
110
+ * console.log(result.rows); // Query results
111
+ * console.log(result.metadata); // Query metadata
112
+ * ```
113
+ */
114
+ dynamicIsolatedQuery(dynamicSql: string, settings: RovoIntegrationSetting): Promise<Result<unknown>>;
115
+ }
116
+ //# sourceMappingURL=Rovo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Rovo.d.ts","sourceRoot":"","sources":["../../src/core/Rovo.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAElB,eAAe,EACf,sBAAsB,EACtB,6BAA6B,EAC9B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,MAAM,EAAO,MAAM,YAAY,CAAC;AAEzC,OAAO,EAAE,aAAa,EAAe,MAAM,wBAAwB,CAAC;AA8RpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,IAAK,YAAW,eAAe;IAC1C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAoB;IACpD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C;;;;;OAKG;gBACS,kBAAkB,EAAE,iBAAiB,EAAE,OAAO,EAAE,kBAAkB;IAK9E;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IA2BrB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAmCrB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAkBzB;;;;;;;;;;;OAWG;IACH,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,6BAA6B;IAI1F;;;;;;;;;;;OAWG;IACH,kBAAkB,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,6BAA6B;IAI1F;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACG,oBAAoB,CACxB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,sBAAsB,GAC/B,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;CA4Q5B"}