@querypanel/node-sdk 1.0.7 → 1.0.9

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 (82) hide show
  1. package/README.md +174 -0
  2. package/dist/cjs/adapters/clickhouse.d.ts +36 -0
  3. package/dist/cjs/adapters/clickhouse.d.ts.map +1 -0
  4. package/dist/cjs/adapters/clickhouse.js +256 -0
  5. package/dist/cjs/adapters/clickhouse.js.map +1 -0
  6. package/dist/cjs/adapters/introspection.spec.d.ts +2 -0
  7. package/dist/cjs/adapters/introspection.spec.d.ts.map +1 -0
  8. package/dist/cjs/adapters/introspection.spec.js +201 -0
  9. package/dist/cjs/adapters/introspection.spec.js.map +1 -0
  10. package/dist/cjs/adapters/postgres.d.ts +29 -0
  11. package/dist/cjs/adapters/postgres.d.ts.map +1 -0
  12. package/dist/cjs/adapters/postgres.js +384 -0
  13. package/dist/cjs/adapters/postgres.js.map +1 -0
  14. package/dist/cjs/adapters/types.d.ts +34 -0
  15. package/dist/cjs/adapters/types.d.ts.map +1 -0
  16. package/dist/cjs/adapters/types.js +3 -0
  17. package/dist/cjs/adapters/types.js.map +1 -0
  18. package/dist/cjs/anonymize.spec.d.ts +2 -0
  19. package/dist/cjs/anonymize.spec.d.ts.map +1 -0
  20. package/dist/cjs/anonymize.spec.js +80 -0
  21. package/dist/cjs/anonymize.spec.js.map +1 -0
  22. package/dist/cjs/clickhouseClient.spec.d.ts +2 -0
  23. package/dist/cjs/clickhouseClient.spec.d.ts.map +1 -0
  24. package/dist/cjs/clickhouseClient.spec.js +286 -0
  25. package/dist/cjs/clickhouseClient.spec.js.map +1 -0
  26. package/dist/cjs/connectors/clickhouse.d.ts +4 -4
  27. package/dist/cjs/connectors/clickhouse.d.ts.map +1 -1
  28. package/dist/cjs/connectors/clickhouse.js +30 -23
  29. package/dist/cjs/connectors/clickhouse.js.map +1 -1
  30. package/dist/cjs/index.d.ts +69 -5
  31. package/dist/cjs/index.d.ts.map +1 -1
  32. package/dist/cjs/index.js +257 -50
  33. package/dist/cjs/index.js.map +1 -1
  34. package/dist/cjs/index.test.d.ts +2 -0
  35. package/dist/cjs/index.test.d.ts.map +1 -0
  36. package/dist/cjs/index.test.js +112 -0
  37. package/dist/cjs/index.test.js.map +1 -0
  38. package/dist/cjs/multidb.spec.d.ts +2 -0
  39. package/dist/cjs/multidb.spec.d.ts.map +1 -0
  40. package/dist/cjs/multidb.spec.js +76 -0
  41. package/dist/cjs/multidb.spec.js.map +1 -0
  42. package/dist/esm/adapters/clickhouse.d.ts +36 -0
  43. package/dist/esm/adapters/clickhouse.d.ts.map +1 -0
  44. package/dist/esm/adapters/clickhouse.js +252 -0
  45. package/dist/esm/adapters/clickhouse.js.map +1 -0
  46. package/dist/esm/adapters/introspection.spec.d.ts +2 -0
  47. package/dist/esm/adapters/introspection.spec.d.ts.map +1 -0
  48. package/dist/esm/adapters/introspection.spec.js +199 -0
  49. package/dist/esm/adapters/introspection.spec.js.map +1 -0
  50. package/dist/esm/adapters/postgres.d.ts +29 -0
  51. package/dist/esm/adapters/postgres.d.ts.map +1 -0
  52. package/dist/esm/adapters/postgres.js +380 -0
  53. package/dist/esm/adapters/postgres.js.map +1 -0
  54. package/dist/esm/adapters/types.d.ts +34 -0
  55. package/dist/esm/adapters/types.d.ts.map +1 -0
  56. package/dist/esm/adapters/types.js +2 -0
  57. package/dist/esm/adapters/types.js.map +1 -0
  58. package/dist/esm/anonymize.spec.d.ts +2 -0
  59. package/dist/esm/anonymize.spec.d.ts.map +1 -0
  60. package/dist/esm/anonymize.spec.js +78 -0
  61. package/dist/esm/anonymize.spec.js.map +1 -0
  62. package/dist/esm/clickhouseClient.spec.d.ts +2 -0
  63. package/dist/esm/clickhouseClient.spec.d.ts.map +1 -0
  64. package/dist/esm/clickhouseClient.spec.js +281 -0
  65. package/dist/esm/clickhouseClient.spec.js.map +1 -0
  66. package/dist/esm/connectors/clickhouse.d.ts +4 -4
  67. package/dist/esm/connectors/clickhouse.d.ts.map +1 -1
  68. package/dist/esm/connectors/clickhouse.js +32 -25
  69. package/dist/esm/connectors/clickhouse.js.map +1 -1
  70. package/dist/esm/index.d.ts +69 -5
  71. package/dist/esm/index.d.ts.map +1 -1
  72. package/dist/esm/index.js +256 -50
  73. package/dist/esm/index.js.map +1 -1
  74. package/dist/esm/index.test.d.ts +2 -0
  75. package/dist/esm/index.test.d.ts.map +1 -0
  76. package/dist/esm/index.test.js +110 -0
  77. package/dist/esm/index.test.js.map +1 -0
  78. package/dist/esm/multidb.spec.d.ts +2 -0
  79. package/dist/esm/multidb.spec.d.ts.map +1 -0
  80. package/dist/esm/multidb.spec.js +74 -0
  81. package/dist/esm/multidb.spec.js.map +1 -0
  82. package/package.json +5 -2
@@ -1 +1 @@
1
- {"version":3,"file":"clickhouse.js","sourceRoot":"","sources":["../../../src/connectors/clickhouse.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,GAKf,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACH,wBAAwB,EACxB,qBAAqB,EACrB,cAAc,EACd,kBAAkB,EAClB,mBAAmB,GACtB,MAAM,wBAAwB,CAAC;AAgDhC,MAAM,OAAO,mBAAmB;IAI5B,YACqB,MAAiC,EACjC,YAA0C,EAAE;QAD5C,WAAM,GAAN,MAAM,CAA2B;QACjC,cAAS,GAAT,SAAS,CAAmC;QAJhD,kBAAa,GAAuD,aAAa,CAAC;QAM/F,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,IAAI,IAAI,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,OAAO;QACT,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,KAAK,CAA8B,GAAW,EAAE,OAAsB;QACxE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QACzC,MAAM,MAAM,GAA6C;YACrD,KAAK,EAAE,GAAG;SACb,CAAC;QAEF,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC;QACrD,IAAI,MAAM,EAAE,CAAC;YACT,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;YAClB,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,OAAO,EAAE,QAAQ,EAAE,CAAC;YACpB,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,mBAAmB,EAAE,OAAO,CAAC,QAA8B,EAAE,CAAC,CAAC;QAC3F,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QACpC,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,OAAO,OAAc,CAAC;QAC1B,CAAC;QACD,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YACzC,MAAM,SAAS,GAAI,OAA8B,CAAC,IAAI,CAAC;YACvD,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC3B,OAAO,SAAgB,CAAC;YAC5B,CAAC;QACL,CAAC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAA2B;QACxC,MAAM,WAAW,GAAG,oBAAoB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1D,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;QACzC,MAAM,WAAW,GAA4B;YACzC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;SAC3B,CAAC;QACF,IAAI,SAAS,EAAE,CAAC;YACZ,WAAW,CAAC,MAAM,GAAG,WAAW,CAAC;QACrC,CAAC;QAED,MAAM,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,qCAAqC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAC3B;;2CAE+B,YAAY;2BAC5B,EACf,EAAE,MAAM,EAAE,WAAW,EAAE,CAC1B,CAAC;QAEF,MAAM,kBAAkB,GAAG,SAAS,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC,CAAC,EAAE,CAAC;QACnF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAC5B;;;;2CAI+B,kBAAkB;sCACvB,EAC1B,EAAE,MAAM,EAAE,WAAW,EAAE,CAC1B,CAAC;QAEF,MAAM,cAAc,GAAG,IAAI,GAAG,EAA0B,CAAC;QACzD,KAAK,MAAM,SAAS,IAAI,OAAO,EAAE,CAAC;YAC9B,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACvD,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC;YACzC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,YAAY,GAAkB,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACrD,MAAM,YAAY,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC1D,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAChE,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC7C,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAE/C,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;gBAChC,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACzF,CAAC;YAED,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM;gBACpC,CAAC,CAAC;oBACI;wBACI,IAAI,EAAE,aAAa;wBACnB,OAAO,EAAE,iBAAiB;wBAC1B,MAAM,EAAE,IAAI;wBACZ,IAAI,EAAE,aAAa;wBACnB,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBAClE;iBACJ;gBACH,CAAC,CAAC,EAAE,CAAC;YAET,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM;gBACxC,CAAC,CAAC;oBACI;wBACI,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,aAAa;wBACnB,OAAO,EAAE,iBAAiB;qBAC7B;iBACJ;gBACH,CAAC,CAAC,EAAE,CAAC;YAET,MAAM,IAAI,GAAgB;gBACtB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;gBAC5B,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC;gBAChC,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,OAAO,EAAE,YAAY;gBACrB,OAAO;gBACP,WAAW;aACd,CAAC;YAEF,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACxC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YAC3B,CAAC;YAED,MAAM,UAAU,GAAG,oBAAoB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;YAC/D,IAAI,UAAU,EAAE,CAAC;gBACb,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;YACjC,CAAC;YAED,OAAO,IAAI,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,OAAO;YACH,EAAE,EAAE;gBACA,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;aAC7B;YACD,MAAM,EAAE,YAAY;YACpB,cAAc,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SAC3C,CAAC;IACN,CAAC;IAED,KAAK,CAAC,KAAK;QACP,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QACzB,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACvB,CAAC;IAEO,KAAK,CAAC,YAAY;QACtB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,OAAO,IAAI,CAAC,MAAM,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,EAAE,IAAI,YAAY,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAC1F,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,UAAU,IAAI,SAAS,IAAI,UAAU,IAAI,UAAU,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YACxE,MAAM,UAAU,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAClE,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,MAAwB;QAC3C,IAAI,CAAC;YACD,OAAO,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QAC/B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;YACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACnB,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;IAEO,iBAAiB;QACrB,MAAM,MAAM,GAAkC;YAC1C,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,EAAE,CAAC;SACvC,CAAC;QAEF,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YAClB,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;QACjC,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,OAAO,CAAC;YACjD,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACtE,MAAM,CAAC,GAAG,GAAG,GAAG,QAAQ,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;QAC7D,CAAC;QAED,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;QAEvC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACvB,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;QAC3C,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACvB,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;QAC3C,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC1B,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QACjD,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;YACjC,MAAM,CAAC,mBAAmB,GAAG;gBACzB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,mBAAmB,IAAI,EAAE,CAAC;gBACzD,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB;aACd,CAAC;QAC5B,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAED,SAAS,oBAAoB,CAAC,MAAwB;IAClD,IAAI,CAAC,MAAM,EAAE,MAAM;QAAE,OAAO,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACzB,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACjC,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,SAAS;QAChD,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACpB,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,UAAU,CAAC;AACtB,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAc;IACtC,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,aAAa,GAAG,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC7D,MAAM,SAAS,GAAG,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACrD,MAAM,eAAe,GAAG,QAAQ,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IAC5D,MAAM,iBAAiB,GAAG,QAAQ,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAEhE,MAAM,MAAM,GAAiB;QACzB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,IAAI,EAAE,aAAa;QACnB,QAAQ;QACR,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QACtD,YAAY,EAAE,KAAK;KACtB,CAAC;IAEF,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC;IAE1B,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC/C,IAAI,WAAW,KAAK,SAAS;QAAE,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC;IAEhE,MAAM,iBAAiB,GAAG,QAAQ,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IAC3D,IAAI,iBAAiB,KAAK,SAAS;QAAE,MAAM,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAElF,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,OAAO,KAAK,SAAS;QAAE,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;IAEpD,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC7C,IAAI,KAAK,KAAK,SAAS;QAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;IAE9C,MAAM,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACnD,IAAI,aAAa,KAAK,SAAS;QAAE,MAAM,CAAC,aAAa,GAAG,aAAa,CAAC;IAEtE,IAAI,SAAS,KAAK,SAAS;QAAE,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;IAC1D,IAAI,SAAS,KAAK,SAAS;QAAE,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;IAC1D,IAAI,KAAK,KAAK,SAAS;QAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;IAE9C,IAAI,eAAe,KAAK,SAAS,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;QACnE,MAAM,CAAC,UAAU,GAAG,EAAE,CAAC;QACvB,IAAI,eAAe,KAAK,SAAS;YAAE,MAAM,CAAC,UAAU,CAAC,eAAe,GAAG,eAAe,CAAC;QACvF,IAAI,iBAAiB,KAAK,SAAS;YAAE,MAAM,CAAC,UAAU,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IACjG,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC5B,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC5D,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAChD,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;AACrD,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC5B,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC5D,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;IACrC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAChD,CAAC;AAED,SAAS,WAAW,CAAC,MAAe;IAChC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IACzC,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QACxC,OAAO,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IAC1E,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,SAAS,oBAAoB,CAAC,SAAkB,EAAE,UAAmB;IACjE,IAAI,SAAS,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1E,MAAM,KAAK,GAA2C,EAAE,CAAC;IACzD,IAAI,SAAS,KAAK,SAAS;QAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IACzD,IAAI,UAAU,KAAK,SAAS;QAAE,KAAK,CAAC,UAAU,GAAG,UAAU,CAAC;IAC5D,OAAO,KAAK,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"clickhouse.js","sourceRoot":"","sources":["../../../src/connectors/clickhouse.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,51 @@
1
- export interface AskRequestBody {
2
- question: string;
3
- }
1
+ import { ClickHouseAdapter, type ClickHouseAdapterOptions, type ClickHouseClientFn } from "./adapters/clickhouse.js";
2
+ import { PostgresAdapter, type PostgresAdapterOptions, type PostgresClientFn } from "./adapters/postgres.js";
3
+ import type { DatabaseAdapter, DatabaseDialect } from "./adapters/types.js";
4
+ export { ClickHouseAdapter, PostgresAdapter };
5
+ export type { ClickHouseAdapterOptions, ClickHouseClientFn, DatabaseAdapter, DatabaseDialect, PostgresAdapterOptions, PostgresClientFn, };
4
6
  export interface AskOptions {
5
7
  tenantId: string;
8
+ database?: string;
9
+ sqlMaxAttempts?: number;
10
+ chartMaxRetries?: number;
6
11
  userId?: string;
7
12
  scopes?: string[];
8
13
  }
9
14
  export interface AskResponseBody {
10
- vegaLiteSpec: string;
15
+ sql: string;
16
+ rationale: string;
17
+ context: RetrievedContext[];
18
+ chart: ChartEnvelope;
19
+ fields: string[];
20
+ rows: Array<Record<string, unknown>>;
21
+ }
22
+ export interface RetrievedContext {
23
+ kind: string;
24
+ content: string;
25
+ similarity?: number;
26
+ metadata?: Record<string, unknown>;
27
+ }
28
+ export interface ChartEnvelope {
29
+ vegaLiteSpec: any;
11
30
  notes: string | null;
12
31
  }
32
+ export interface SqlExecutionResult {
33
+ fields: string[];
34
+ rows: Array<Record<string, unknown>>;
35
+ }
36
+ export type SqlExecutor = (sql: string) => Promise<SqlExecutionResult>;
37
+ /**
38
+ * Anonymizes query results by replacing actual values with their type names.
39
+ * Useful for sharing result structure without exposing sensitive data.
40
+ *
41
+ * @param rows - Array of result rows to anonymize
42
+ * @returns Array of rows with values replaced by type strings
43
+ *
44
+ * @example
45
+ * anonymizeResults([{ year: 2025, transactionSum: 1000 }])
46
+ * // Returns: [{ year: 'number', transactionSum: 'number' }]
47
+ */
48
+ export declare function anonymizeResults(rows: Array<Record<string, unknown>>): Array<Record<string, string>>;
13
49
  export interface TrainingExample {
14
50
  question: string;
15
51
  sql: string;
@@ -47,8 +83,31 @@ export declare class QueryPanelSdkAPI {
47
83
  private readonly privateKey?;
48
84
  private readonly organizationId?;
49
85
  private cachedPrivateKey?;
86
+ private databases;
87
+ private defaultDatabase?;
50
88
  constructor(baseUrl: string, jwtTokenOrPrivateKey: string, organizationId?: string);
51
- ask(body: AskRequestBody, options: AskOptions, signal?: AbortSignal): Promise<AskResponseBody>;
89
+ /**
90
+ * Attach a database adapter with a specific name
91
+ */
92
+ attachDatabase(name: string, adapter: DatabaseAdapter): void;
93
+ /**
94
+ * Attach a ClickHouse database
95
+ */
96
+ attachClickhouse(name: string, clientFn: ClickHouseClientFn, options?: ClickHouseAdapterOptions): void;
97
+ /**
98
+ * Attach a Postgres database
99
+ */
100
+ attachPostgres(name: string, clientFn: PostgresClientFn, options?: PostgresAdapterOptions): void;
101
+ /**
102
+ * Legacy method for backward compatibility
103
+ * Attaches a ClickHouse client as the default database
104
+ */
105
+ attachClickhouseClient(fn: ClickHouseClientFn): void;
106
+ /**
107
+ * Get a database adapter by name, or return the default
108
+ */
109
+ private getDatabase;
110
+ ask(question: string, options: AskOptions, signal?: AbortSignal): Promise<AskResponseBody>;
52
111
  train(body: TrainRequestBody, options?: {
53
112
  userId?: string;
54
113
  scopes?: string[];
@@ -103,6 +162,7 @@ export declare class QueryPanelSdkAPI {
103
162
  private generateJWT;
104
163
  private headers;
105
164
  private parseResponse;
165
+ private runSafeQueryOnClient;
106
166
  }
107
167
  export interface SdkChart {
108
168
  id: string;
@@ -117,6 +177,7 @@ export interface SdkChart {
117
177
  created_at: string | null;
118
178
  updated_at: string | null;
119
179
  active?: boolean;
180
+ database?: string;
120
181
  }
121
182
  export interface SdkActiveChart {
122
183
  id: string;
@@ -153,6 +214,7 @@ export interface ActiveChartListOptions {
153
214
  createdTo?: string;
154
215
  updatedFrom?: string;
155
216
  updatedTo?: string;
217
+ withdata?: boolean;
156
218
  }
157
219
  export interface ChartCreateBody {
158
220
  title: string;
@@ -160,12 +222,14 @@ export interface ChartCreateBody {
160
222
  sql: string;
161
223
  vega_lite_spec: any;
162
224
  query_id?: string;
225
+ database?: string;
163
226
  }
164
227
  export interface ChartUpdateBody {
165
228
  title?: string;
166
229
  description?: string;
167
230
  sql?: string;
168
231
  vega_lite_spec?: any;
232
+ database?: string;
169
233
  }
170
234
  export interface PaginationQuery {
171
235
  page?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/dist/esm/index.js CHANGED
@@ -1,6 +1,44 @@
1
- import { SignJWT, importPKCS8 } from 'jose';
1
+ import { randomUUID } from "node:crypto";
2
+ import { importPKCS8, SignJWT } from "jose";
3
+ import { ClickHouseAdapter, } from "./adapters/clickhouse.js";
4
+ import { PostgresAdapter, } from "./adapters/postgres.js";
5
+ // Re-export adapters for external use
6
+ export { ClickHouseAdapter, PostgresAdapter };
7
+ /**
8
+ * Anonymizes query results by replacing actual values with their type names.
9
+ * Useful for sharing result structure without exposing sensitive data.
10
+ *
11
+ * @param rows - Array of result rows to anonymize
12
+ * @returns Array of rows with values replaced by type strings
13
+ *
14
+ * @example
15
+ * anonymizeResults([{ year: 2025, transactionSum: 1000 }])
16
+ * // Returns: [{ year: 'number', transactionSum: 'number' }]
17
+ */
18
+ export function anonymizeResults(rows) {
19
+ if (!rows || rows.length === 0) {
20
+ return [];
21
+ }
22
+ return rows.map((row) => {
23
+ const anonymized = {};
24
+ for (const [key, value] of Object.entries(row)) {
25
+ if (value === null) {
26
+ anonymized[key] = "null";
27
+ }
28
+ else if (Array.isArray(value)) {
29
+ anonymized[key] = "array";
30
+ }
31
+ else {
32
+ anonymized[key] = typeof value;
33
+ }
34
+ }
35
+ return anonymized;
36
+ });
37
+ }
2
38
  export class QueryPanelSdkAPI {
3
39
  constructor(baseUrl, jwtTokenOrPrivateKey, organizationId) {
40
+ // Database registry
41
+ this.databases = new Map();
4
42
  this.baseUrl = baseUrl.replace(/\/$/, "");
5
43
  if (organizationId) {
6
44
  // New mode: generate JWTs
@@ -12,8 +50,106 @@ export class QueryPanelSdkAPI {
12
50
  this.token = jwtTokenOrPrivateKey;
13
51
  }
14
52
  }
15
- async ask(body, options, signal) {
16
- return await this.post("/ask", body, options.tenantId, options.userId, options.scopes, signal);
53
+ /**
54
+ * Attach a database adapter with a specific name
55
+ */
56
+ attachDatabase(name, adapter) {
57
+ this.databases.set(name, adapter);
58
+ if (!this.defaultDatabase) {
59
+ this.defaultDatabase = name;
60
+ }
61
+ }
62
+ /**
63
+ * Attach a ClickHouse database
64
+ */
65
+ attachClickhouse(name, clientFn, options) {
66
+ const adapterOptions = {
67
+ ...options,
68
+ database: options?.database ?? name,
69
+ };
70
+ this.attachDatabase(name, new ClickHouseAdapter(clientFn, adapterOptions));
71
+ }
72
+ /**
73
+ * Attach a Postgres database
74
+ */
75
+ attachPostgres(name, clientFn, options) {
76
+ const adapterOptions = {
77
+ ...options,
78
+ database: options?.database ?? name,
79
+ };
80
+ this.attachDatabase(name, new PostgresAdapter(clientFn, adapterOptions));
81
+ }
82
+ /**
83
+ * Legacy method for backward compatibility
84
+ * Attaches a ClickHouse client as the default database
85
+ */
86
+ attachClickhouseClient(fn) {
87
+ this.attachClickhouse("default", fn);
88
+ }
89
+ /**
90
+ * Get a database adapter by name, or return the default
91
+ */
92
+ getDatabase(name) {
93
+ const dbName = name || this.defaultDatabase;
94
+ if (!dbName) {
95
+ throw new Error("No database attached. Use attachClickhouse() or attachPostgres() first.");
96
+ }
97
+ const adapter = this.databases.get(dbName);
98
+ if (!adapter) {
99
+ throw new Error(`Database '${dbName}' not found. Available: ${Array.from(this.databases.keys()).join(", ")}`);
100
+ }
101
+ return adapter;
102
+ }
103
+ async ask(question, options, signal) {
104
+ const { tenantId, database, userId, scopes, sqlMaxAttempts = 3, chartMaxRetries = 3, } = options;
105
+ let attempt = 0;
106
+ const sessionId = randomUUID();
107
+ let lastError;
108
+ while (attempt < sqlMaxAttempts) {
109
+ const sqlResponse = await this.post("/v2/generate-sql", {
110
+ question,
111
+ max_retries: Math.max(1, sqlMaxAttempts - attempt),
112
+ ...(lastError ? { last_error: lastError } : {}),
113
+ ...(database ? { database } : {}),
114
+ available_databases: Array.from(this.databases.keys()),
115
+ }, tenantId, userId, scopes, signal, sessionId);
116
+ try {
117
+ // Get the database adapter
118
+ const dbName = database || sqlResponse.database || this.defaultDatabase;
119
+ const adapter = this.getDatabase(dbName);
120
+ // Validate SQL with EXPLAIN before executing
121
+ await adapter.validate(sqlResponse.sql);
122
+ // Execute the query
123
+ const execution = await adapter.execute(sqlResponse.sql);
124
+ const chartResponse = await this.post("/v2/generate-chart", {
125
+ question,
126
+ sql: sqlResponse.sql,
127
+ rationale: sqlResponse.rationale,
128
+ fields: execution.fields,
129
+ rows: anonymizeResults(execution.rows),
130
+ max_retries: chartMaxRetries,
131
+ }, tenantId, userId, scopes, signal, sessionId);
132
+ return {
133
+ sql: sqlResponse.sql,
134
+ rationale: sqlResponse.rationale,
135
+ context: sqlResponse.context,
136
+ chart: {
137
+ vegaLiteSpec: chartResponse.vegaLiteSpec,
138
+ notes: chartResponse.notes,
139
+ },
140
+ fields: execution.fields,
141
+ rows: execution.rows,
142
+ };
143
+ }
144
+ catch (error) {
145
+ lastError = error instanceof Error ? error.message : String(error);
146
+ attempt += 1;
147
+ if (attempt >= sqlMaxAttempts) {
148
+ throw error;
149
+ }
150
+ }
151
+ }
152
+ throw new Error("Failed to generate chart after maximum attempts");
17
153
  }
18
154
  async train(body, options, signal) {
19
155
  return await this.post("/train", body, body.tenant_id, options?.userId, options?.scopes, signal);
@@ -28,32 +164,65 @@ export class QueryPanelSdkAPI {
28
164
  async listCharts(options, signal) {
29
165
  const queryParams = new URLSearchParams();
30
166
  if (options.pagination?.page) {
31
- queryParams.set('page', options.pagination.page.toString());
167
+ queryParams.set("page", options.pagination.page.toString());
32
168
  }
33
169
  if (options.pagination?.limit) {
34
- queryParams.set('limit', options.pagination.limit.toString());
170
+ queryParams.set("limit", options.pagination.limit.toString());
171
+ }
172
+ if (options.sortBy) {
173
+ queryParams.set("sort_by", options.sortBy);
174
+ }
175
+ if (options.sortDir) {
176
+ queryParams.set("sort_dir", options.sortDir);
177
+ }
178
+ if (options.name) {
179
+ queryParams.set("name", options.name);
180
+ }
181
+ if (options.filterUserId) {
182
+ queryParams.set("user_id", options.filterUserId);
183
+ }
184
+ if (options.createdFrom) {
185
+ queryParams.set("created_from", options.createdFrom);
186
+ }
187
+ if (options.createdTo) {
188
+ queryParams.set("created_to", options.createdTo);
189
+ }
190
+ if (options.updatedFrom) {
191
+ queryParams.set("updated_from", options.updatedFrom);
192
+ }
193
+ if (options.updatedTo) {
194
+ queryParams.set("updated_to", options.updatedTo);
35
195
  }
36
- if (options.sortBy)
37
- queryParams.set('sort_by', options.sortBy);
38
- if (options.sortDir)
39
- queryParams.set('sort_dir', options.sortDir);
40
- if (options.name)
41
- queryParams.set('name', options.name);
42
- if (options.filterUserId)
43
- queryParams.set('user_id', options.filterUserId);
44
- if (options.createdFrom)
45
- queryParams.set('created_from', options.createdFrom);
46
- if (options.createdTo)
47
- queryParams.set('created_to', options.createdTo);
48
- if (options.updatedFrom)
49
- queryParams.set('updated_from', options.updatedFrom);
50
- if (options.updatedTo)
51
- queryParams.set('updated_to', options.updatedTo);
52
196
  const query = queryParams.toString() ? `?${queryParams.toString()}` : "";
53
- return await this.get(`/v2/charts${query}`, options.tenantId, options.userId, options.scopes, signal);
197
+ const charts = await this.get(`/v2/charts${query}`, options.tenantId, options.userId, options.scopes, signal);
198
+ const chartsWithData = await Promise.all(charts.data.map(async (chart) => {
199
+ return {
200
+ ...chart,
201
+ vega_lite_spec: {
202
+ ...chart.vega_lite_spec,
203
+ data: {
204
+ values: (await this.runSafeQueryOnClient(chart.sql, chart.database)) ??
205
+ [],
206
+ },
207
+ },
208
+ };
209
+ }));
210
+ return {
211
+ ...charts,
212
+ data: chartsWithData,
213
+ };
54
214
  }
55
215
  async getChart(id, options, signal) {
56
- return await this.get(`/v2/charts/${encodeURIComponent(id)}`, options.tenantId, options.userId, options.scopes, signal);
216
+ const chart = await this.get(`/v2/charts/${encodeURIComponent(id)}`, options.tenantId, options.userId, options.scopes, signal);
217
+ return {
218
+ ...chart,
219
+ vega_lite_spec: {
220
+ ...chart.vega_lite_spec,
221
+ data: {
222
+ values: await this.runSafeQueryOnClient(chart.sql, chart.database),
223
+ },
224
+ },
225
+ };
57
226
  }
58
227
  async updateChart(id, body, options, signal) {
59
228
  return await this.put(`/v2/charts/${encodeURIComponent(id)}`, body, options.tenantId, options.userId, options.scopes, signal);
@@ -68,32 +237,55 @@ export class QueryPanelSdkAPI {
68
237
  async listActiveCharts(options, signal) {
69
238
  const queryParams = new URLSearchParams();
70
239
  if (options.pagination?.page) {
71
- queryParams.set('page', options.pagination.page.toString());
240
+ queryParams.set("page", options.pagination.page.toString());
72
241
  }
73
242
  if (options.pagination?.limit) {
74
- queryParams.set('limit', options.pagination.limit.toString());
243
+ queryParams.set("limit", options.pagination.limit.toString());
75
244
  }
76
245
  if (options.sortBy)
77
- queryParams.set('sort_by', options.sortBy);
246
+ queryParams.set("sort_by", options.sortBy);
78
247
  if (options.sortDir)
79
- queryParams.set('sort_dir', options.sortDir);
248
+ queryParams.set("sort_dir", options.sortDir);
80
249
  if (options.name)
81
- queryParams.set('name', options.name);
250
+ queryParams.set("name", options.name);
82
251
  if (options.filterUserId)
83
- queryParams.set('user_id', options.filterUserId);
252
+ queryParams.set("user_id", options.filterUserId);
84
253
  if (options.createdFrom)
85
- queryParams.set('created_from', options.createdFrom);
254
+ queryParams.set("created_from", options.createdFrom);
86
255
  if (options.createdTo)
87
- queryParams.set('created_to', options.createdTo);
256
+ queryParams.set("created_to", options.createdTo);
88
257
  if (options.updatedFrom)
89
- queryParams.set('updated_from', options.updatedFrom);
258
+ queryParams.set("updated_from", options.updatedFrom);
90
259
  if (options.updatedTo)
91
- queryParams.set('updated_to', options.updatedTo);
260
+ queryParams.set("updated_to", options.updatedTo);
92
261
  const query = queryParams.toString() ? `?${queryParams.toString()}` : "";
93
- return await this.get(`/v2/active-charts${query}`, options.tenantId, options.userId, options.scopes, signal);
262
+ const charts = await this.get(`/v2/active-charts${query}`, options.tenantId, options.userId, options.scopes, signal);
263
+ if (options.withdata) {
264
+ charts.data = await Promise.all(charts.data.map(async (chart) => {
265
+ return {
266
+ ...chart,
267
+ chart: await this.getChart(chart.chart_id, options),
268
+ };
269
+ }));
270
+ }
271
+ return charts;
94
272
  }
95
273
  async getActiveChart(id, options, signal) {
96
- return await this.get(`/v2/active-charts/${encodeURIComponent(id)}`, options.tenantId, options.userId, options.scopes, signal);
274
+ const activeChart = await this.get(`/v2/active-charts/${encodeURIComponent(id)}`, options.tenantId, options.userId, options.scopes, signal);
275
+ return {
276
+ ...activeChart,
277
+ ...(!!activeChart.chart && {
278
+ chart: {
279
+ ...activeChart.chart,
280
+ vega_lite_spec: {
281
+ ...activeChart.chart.vega_lite_spec,
282
+ data: {
283
+ values: await this.runSafeQueryOnClient(activeChart.chart.sql, activeChart.chart.database),
284
+ },
285
+ },
286
+ },
287
+ }),
288
+ };
97
289
  }
98
290
  async updateActiveChart(id, body, options, signal) {
99
291
  return await this.put(`/v2/active-charts/${encodeURIComponent(id)}`, body, options.tenantId, options.userId, options.scopes, signal);
@@ -101,36 +293,36 @@ export class QueryPanelSdkAPI {
101
293
  async deleteActiveChart(id, options, signal) {
102
294
  await this.delete(`/v2/active-charts/${encodeURIComponent(id)}`, options.tenantId, options.userId, options.scopes, signal);
103
295
  }
104
- async get(path, tenantId, userId, scopes, signal) {
296
+ async get(path, tenantId, userId, scopes, signal, sessionId) {
105
297
  const res = await fetch(this.baseUrl + path, {
106
298
  method: "GET",
107
- headers: await this.headers(tenantId, userId, scopes, false),
299
+ headers: await this.headers(tenantId, userId, scopes, false, sessionId),
108
300
  signal,
109
301
  });
110
302
  return await this.parseResponse(res);
111
303
  }
112
- async post(path, body, tenantId, userId, scopes, signal) {
304
+ async post(path, body, tenantId, userId, scopes, signal, sessionId) {
113
305
  const res = await fetch(this.baseUrl + path, {
114
306
  method: "POST",
115
- headers: await this.headers(tenantId, userId, scopes),
307
+ headers: await this.headers(tenantId, userId, scopes, true, sessionId),
116
308
  body: JSON.stringify(body ?? {}),
117
309
  signal,
118
310
  });
119
311
  return await this.parseResponse(res);
120
312
  }
121
- async put(path, body, tenantId, userId, scopes, signal) {
313
+ async put(path, body, tenantId, userId, scopes, signal, sessionId) {
122
314
  const res = await fetch(this.baseUrl + path, {
123
315
  method: "PUT",
124
- headers: await this.headers(tenantId, userId, scopes),
316
+ headers: await this.headers(tenantId, userId, scopes, true, sessionId),
125
317
  body: JSON.stringify(body ?? {}),
126
318
  signal,
127
319
  });
128
320
  return await this.parseResponse(res);
129
321
  }
130
- async delete(path, tenantId, userId, scopes, signal) {
322
+ async delete(path, tenantId, userId, scopes, signal, sessionId) {
131
323
  const res = await fetch(this.baseUrl + path, {
132
324
  method: "DELETE",
133
- headers: await this.headers(tenantId, userId, scopes, false),
325
+ headers: await this.headers(tenantId, userId, scopes, false, sessionId),
134
326
  signal,
135
327
  });
136
328
  return await this.parseResponse(res);
@@ -141,7 +333,7 @@ export class QueryPanelSdkAPI {
141
333
  }
142
334
  // Cache the imported private key to avoid re-importing on every request
143
335
  if (!this.cachedPrivateKey) {
144
- this.cachedPrivateKey = await importPKCS8(this.privateKey, 'RS256');
336
+ this.cachedPrivateKey = await importPKCS8(this.privateKey, "RS256");
145
337
  }
146
338
  const payload = {
147
339
  organizationId: this.organizationId,
@@ -154,12 +346,12 @@ export class QueryPanelSdkAPI {
154
346
  payload.scopes = scopes;
155
347
  }
156
348
  return await new SignJWT(payload)
157
- .setProtectedHeader({ alg: 'RS256' })
349
+ .setProtectedHeader({ alg: "RS256" })
158
350
  .setIssuedAt()
159
- .setExpirationTime('1h')
351
+ .setExpirationTime("1h")
160
352
  .sign(this.cachedPrivateKey);
161
353
  }
162
- async headers(tenantId, userId, scopes, includeJsonContentType = true) {
354
+ async headers(tenantId, userId, scopes, includeJsonContentType = true, sessionId) {
163
355
  let authToken;
164
356
  if (this.token) {
165
357
  // Legacy mode: use provided JWT
@@ -170,17 +362,20 @@ export class QueryPanelSdkAPI {
170
362
  authToken = await this.generateJWT(tenantId, userId, scopes);
171
363
  }
172
364
  const headers = {
173
- "Authorization": `Bearer ${authToken}`,
174
- "Accept": "application/json",
365
+ Authorization: `Bearer ${authToken}`,
366
+ Accept: "application/json",
175
367
  };
176
368
  if (includeJsonContentType) {
177
369
  headers["Content-Type"] = "application/json";
178
370
  }
371
+ if (sessionId) {
372
+ headers["x-session-id"] = sessionId;
373
+ }
179
374
  return headers;
180
375
  }
181
376
  async parseResponse(res) {
182
377
  const text = await res.text();
183
- let json = undefined;
378
+ let json;
184
379
  try {
185
380
  json = text ? JSON.parse(text) : undefined;
186
381
  }
@@ -195,5 +390,16 @@ export class QueryPanelSdkAPI {
195
390
  }
196
391
  return json;
197
392
  }
393
+ async runSafeQueryOnClient(sql, database) {
394
+ try {
395
+ const adapter = this.getDatabase(database);
396
+ const result = await adapter.execute(sql);
397
+ return result.rows;
398
+ }
399
+ catch (error) {
400
+ console.error(`Error running query on database '${database}': ${error}`);
401
+ return [];
402
+ }
403
+ }
198
404
  }
199
405
  //# sourceMappingURL=index.js.map