hazo_connect 2.2.0 → 2.3.2

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 (46) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +563 -0
  3. package/dist/adapters/sqlite-adapter.d.ts.map +1 -1
  4. package/dist/adapters/sqlite-adapter.js +37 -2
  5. package/dist/adapters/sqlite-adapter.js.map +1 -1
  6. package/dist/factory.d.ts +1 -0
  7. package/dist/factory.d.ts.map +1 -1
  8. package/dist/factory.js +51 -9
  9. package/dist/factory.js.map +1 -1
  10. package/dist/nextjs/index.d.ts +2 -0
  11. package/dist/nextjs/index.d.ts.map +1 -1
  12. package/dist/nextjs/index.js +10 -1
  13. package/dist/nextjs/index.js.map +1 -1
  14. package/dist/nextjs/route-setup.d.ts +46 -0
  15. package/dist/nextjs/route-setup.d.ts.map +1 -0
  16. package/dist/nextjs/route-setup.js +141 -0
  17. package/dist/nextjs/route-setup.js.map +1 -0
  18. package/dist/nextjs/setup-helpers.d.ts +86 -0
  19. package/dist/nextjs/setup-helpers.d.ts.map +1 -0
  20. package/dist/nextjs/setup-helpers.js +174 -0
  21. package/dist/nextjs/setup-helpers.js.map +1 -0
  22. package/dist/server/index.d.ts +2 -1
  23. package/dist/server/index.d.ts.map +1 -1
  24. package/dist/server/index.js +7 -1
  25. package/dist/server/index.js.map +1 -1
  26. package/dist/sqlite/admin-service.d.ts +8 -0
  27. package/dist/sqlite/admin-service.d.ts.map +1 -1
  28. package/dist/sqlite/admin-service.js +39 -1
  29. package/dist/sqlite/admin-service.js.map +1 -1
  30. package/dist/utils/config-validator.d.ts +39 -0
  31. package/dist/utils/config-validator.d.ts.map +1 -0
  32. package/dist/utils/config-validator.js +78 -0
  33. package/dist/utils/config-validator.js.map +1 -0
  34. package/docs/examples/nextjs-admin-ui-setup.ts +199 -0
  35. package/docs/examples/nextjs-api-route.ts +205 -0
  36. package/docs/examples/nextjs-crud-service.ts +257 -0
  37. package/docs/examples/nextjs-server-component.tsx +123 -0
  38. package/docs/examples/nextjs-singleton-pattern.ts +166 -0
  39. package/docs/migration-guide.md +272 -0
  40. package/docs/nextjs-setup.md +471 -0
  41. package/docs/techdoc.md +824 -0
  42. package/docs/troubleshooting.md +442 -0
  43. package/docs/types.md +490 -0
  44. package/package.json +16 -4
  45. package/scripts/postinstall-setup.js +72 -0
  46. package/scripts/setup-routes.js +123 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/server/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAqBH,YAAY,EACV,MAAM,EACN,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,gBAAgB,EACjB,MAAM,UAAU,CAAA;AAEjB,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAGhD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAG/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAG9C,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,EACb,MAAM,YAAY,CAAA;AACnB,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,sBAAsB,EACtB,WAAW,EACZ,MAAM,YAAY,CAAA;AAGnB,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAGtD,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,yBAAyB,CAAA;AAChC,YAAY,EACV,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,WAAW,EACX,WAAW,EACX,eAAe,EACf,OAAO,EACP,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,yBAAyB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/server/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAqBH,YAAY,EACV,MAAM,EACN,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,gBAAgB,EACjB,MAAM,UAAU,CAAA;AAEjB,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAGhD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAG/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAG9C,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,EACb,MAAM,YAAY,CAAA;AACnB,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,sBAAsB,EACtB,WAAW,EACZ,MAAM,YAAY,CAAA;AAGnB,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAGtD,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,yBAAyB,CAAA;AAGhC,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,KAAK,gBAAgB,EACtB,MAAM,2BAA2B,CAAA;AAClC,YAAY,EACV,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,WAAW,EACX,WAAW,EACX,eAAe,EACf,OAAO,EACP,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,yBAAyB,CAAA"}
@@ -13,7 +13,7 @@
13
13
  * and runtime guards to prevent client-side usage.
14
14
  */
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.initializeAdminService = exports.getSqliteAdminService = exports.FileAdapter = exports.SupabaseAdapter = exports.SqliteAdapter = exports.PostgrestAdapter = exports.BaseAdapter = exports.executeQuery = exports.createTableQuery = exports.createCrudService = exports.attachExecute = exports.createHazoConnect = exports.QueryBuilder = exports.noOpLogger = exports.ErrorCode = void 0;
16
+ exports.getConfigurationTips = exports.validateNextJsConfig = exports.clearRegisteredAdapter = exports.registerSqliteAdapter = exports.initializeAdminService = exports.getSqliteAdminService = exports.FileAdapter = exports.SupabaseAdapter = exports.SqliteAdapter = exports.PostgrestAdapter = exports.BaseAdapter = exports.executeQuery = exports.createTableQuery = exports.createCrudService = exports.attachExecute = exports.createHazoConnect = exports.QueryBuilder = exports.noOpLogger = exports.ErrorCode = void 0;
17
17
  /**
18
18
  * Runtime guard to ensure this module is only used on the server
19
19
  * @throws Error if called in a browser environment
@@ -56,4 +56,10 @@ Object.defineProperty(exports, "FileAdapter", { enumerable: true, get: function
56
56
  var admin_service_1 = require("../sqlite/admin-service");
57
57
  Object.defineProperty(exports, "getSqliteAdminService", { enumerable: true, get: function () { return admin_service_1.getSqliteAdminService; } });
58
58
  Object.defineProperty(exports, "initializeAdminService", { enumerable: true, get: function () { return admin_service_1.initializeAdminService; } });
59
+ Object.defineProperty(exports, "registerSqliteAdapter", { enumerable: true, get: function () { return admin_service_1.registerSqliteAdapter; } });
60
+ Object.defineProperty(exports, "clearRegisteredAdapter", { enumerable: true, get: function () { return admin_service_1.clearRegisteredAdapter; } });
61
+ // Export configuration validation utilities
62
+ var config_validator_1 = require("../utils/config-validator");
63
+ Object.defineProperty(exports, "validateNextJsConfig", { enumerable: true, get: function () { return config_validator_1.validateNextJsConfig; } });
64
+ Object.defineProperty(exports, "getConfigurationTips", { enumerable: true, get: function () { return config_validator_1.getConfigurationTips; } });
59
65
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/server/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;AAEH,YAAY,CAAA;AAPZ;;;;;GAKG;;;AAIH;;;GAGG;AACH,SAAS,gBAAgB;IACvB,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CACb,sDAAsD;YACtD,+EAA+E,CAChF,CAAA;IACH,CAAC;AACH,CAAC;AAED,sCAAsC;AACtC,gBAAgB,EAAE,CAAA;AAgBlB,kCAAgD;AAAvC,kGAAA,SAAS,OAAA;AAAE,mGAAA,UAAU,OAAA;AAE9B,uBAAuB;AACvB,kDAA+C;AAAtC,6GAAA,YAAY,OAAA;AAErB,iBAAiB;AACjB,sCAA8C;AAArC,4GAAA,iBAAiB,OAAA;AAE1B,iBAAiB;AACjB,sCAKmB;AAJjB,wGAAA,aAAa,OAAA;AACb,4GAAA,iBAAiB,OAAA;AACjB,2GAAA,gBAAgB,OAAA;AAChB,uGAAA,YAAY,OAAA;AASd,uCAAuC;AACvC,yDAAsD;AAA7C,2GAAA,WAAW,OAAA;AACpB,mEAAgE;AAAvD,qHAAA,gBAAgB,OAAA;AACzB,6DAA0D;AAAjD,+GAAA,aAAa,OAAA;AACtB,iEAA8D;AAArD,mHAAA,eAAe,OAAA;AACxB,yDAAsD;AAA7C,2GAAA,WAAW,OAAA;AAEpB,8BAA8B;AAC9B,yDAGgC;AAF9B,sHAAA,qBAAqB,OAAA;AACrB,uHAAA,sBAAsB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/server/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;AAEH,YAAY,CAAA;AAPZ;;;;;GAKG;;;AAIH;;;GAGG;AACH,SAAS,gBAAgB;IACvB,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CACb,sDAAsD;YACtD,+EAA+E,CAChF,CAAA;IACH,CAAC;AACH,CAAC;AAED,sCAAsC;AACtC,gBAAgB,EAAE,CAAA;AAgBlB,kCAAgD;AAAvC,kGAAA,SAAS,OAAA;AAAE,mGAAA,UAAU,OAAA;AAE9B,uBAAuB;AACvB,kDAA+C;AAAtC,6GAAA,YAAY,OAAA;AAErB,iBAAiB;AACjB,sCAA8C;AAArC,4GAAA,iBAAiB,OAAA;AAE1B,iBAAiB;AACjB,sCAKmB;AAJjB,wGAAA,aAAa,OAAA;AACb,4GAAA,iBAAiB,OAAA;AACjB,2GAAA,gBAAgB,OAAA;AAChB,uGAAA,YAAY,OAAA;AASd,uCAAuC;AACvC,yDAAsD;AAA7C,2GAAA,WAAW,OAAA;AACpB,mEAAgE;AAAvD,qHAAA,gBAAgB,OAAA;AACzB,6DAA0D;AAAjD,+GAAA,aAAa,OAAA;AACtB,iEAA8D;AAArD,mHAAA,eAAe,OAAA;AACxB,yDAAsD;AAA7C,2GAAA,WAAW,OAAA;AAEpB,8BAA8B;AAC9B,yDAKgC;AAJ9B,sHAAA,qBAAqB,OAAA;AACrB,uHAAA,sBAAsB,OAAA;AACtB,sHAAA,qBAAqB,OAAA;AACrB,uHAAA,sBAAsB,OAAA;AAGxB,4CAA4C;AAC5C,8DAIkC;AAHhC,wHAAA,oBAAoB,OAAA;AACpB,wHAAA,oBAAoB,OAAA"}
@@ -1,3 +1,4 @@
1
+ import { SqliteAdapter } from "../adapters/sqlite-adapter";
1
2
  import { type SqliteWhereFilter } from "../utils/where-builder";
2
3
  export type SqliteTableType = "table" | "view";
3
4
  export interface TableSummary {
@@ -55,5 +56,12 @@ export interface SqliteAdminService {
55
56
  export declare function initializeAdminService(config: {
56
57
  enable_admin_ui?: boolean;
57
58
  }): void;
59
+ /**
60
+ * Register a SQLite adapter instance to be used by the admin service
61
+ * This allows the admin UI to use the same adapter instance as the backend
62
+ * Registering an adapter also enables the admin UI
63
+ * @param adapter - The SqliteAdapter instance to register
64
+ */
65
+ export declare function registerSqliteAdapter(adapter: SqliteAdapter): void;
58
66
  export declare function getSqliteAdminService(): SqliteAdminService;
59
67
  //# sourceMappingURL=admin-service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"admin-service.d.ts","sourceRoot":"","sources":["../../src/lib/sqlite/admin-service.ts"],"names":[],"mappings":"AAMA,OAAO,EAA8C,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAE3G,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,MAAM,CAAA;AAE9C,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,eAAe,CAAA;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,OAAO,CAAA;IAChB,aAAa,EAAE,OAAO,CAAA;IACtB,oBAAoB,EAAE,MAAM,CAAA;CAC7B;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,WAAW,EAAE,CAAA;IACtB,YAAY,EAAE,eAAe,EAAE,CAAA;CAChC;AAGD,YAAY,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAErF,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,eAAe,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;IAChC,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAA;CAC9B;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;IAC/B,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAAA;IACrC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IACnD,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACxE,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IACzF,UAAU,CACR,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;IACrC,UAAU,CACR,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;CACtC;AAcD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE;IAAE,eAAe,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAElF;AAoBD,wBAAgB,qBAAqB,IAAI,kBAAkB,CAU1D"}
1
+ {"version":3,"file":"admin-service.d.ts","sourceRoot":"","sources":["../../src/lib/sqlite/admin-service.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE1D,OAAO,EAA8C,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAE3G,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,MAAM,CAAA;AAE9C,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,eAAe,CAAA;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,OAAO,CAAA;IAChB,aAAa,EAAE,OAAO,CAAA;IACtB,oBAAoB,EAAE,MAAM,CAAA;CAC7B;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,WAAW,EAAE,CAAA;IACtB,YAAY,EAAE,eAAe,EAAE,CAAA;CAChC;AAGD,YAAY,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAErF,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,eAAe,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;IAChC,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAA;CAC9B;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;IAC/B,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAAA;IACrC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IACnD,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACxE,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IACzF,UAAU,CACR,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;IACrC,UAAU,CACR,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;CACtC;AAeD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE;IAAE,eAAe,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAElF;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,CAQlE;AAoCD,wBAAgB,qBAAqB,IAAI,kBAAkB,CAU1D"}
@@ -4,6 +4,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.initializeAdminService = initializeAdminService;
7
+ exports.registerSqliteAdapter = registerSqliteAdapter;
8
+ exports.clearRegisteredAdapter = clearRegisteredAdapter;
7
9
  exports.getSqliteAdminService = getSqliteAdminService;
8
10
  // admin-service.ts exposes helper utilities for browsing and mutating SQLite databases.
9
11
  const path_1 = __importDefault(require("path"));
@@ -15,6 +17,7 @@ const DEFAULT_LIMIT = 50;
15
17
  let cachedAdapter = null;
16
18
  let cachedConfigSignature = null;
17
19
  let adminUiEnabled = false;
20
+ let registeredAdapter = null;
18
21
  /**
19
22
  * Initialize the admin service with configuration
20
23
  * This must be called before using the admin UI
@@ -23,6 +26,30 @@ let adminUiEnabled = false;
23
26
  function initializeAdminService(config) {
24
27
  adminUiEnabled = config.enable_admin_ui === true;
25
28
  }
29
+ /**
30
+ * Register a SQLite adapter instance to be used by the admin service
31
+ * This allows the admin UI to use the same adapter instance as the backend
32
+ * Registering an adapter also enables the admin UI
33
+ * @param adapter - The SqliteAdapter instance to register
34
+ */
35
+ function registerSqliteAdapter(adapter) {
36
+ registeredAdapter = adapter;
37
+ // Also update cached adapter to avoid creating a new one
38
+ cachedAdapter = adapter;
39
+ // Set a special signature to indicate this is a registered adapter
40
+ cachedConfigSignature = "__registered__";
41
+ // Enable admin UI when adapter is registered (implies admin UI should be available)
42
+ adminUiEnabled = true;
43
+ }
44
+ /**
45
+ * Clear the registered adapter (useful for testing)
46
+ * @internal
47
+ */
48
+ function clearRegisteredAdapter() {
49
+ registeredAdapter = null;
50
+ cachedAdapter = null;
51
+ cachedConfigSignature = null;
52
+ }
26
53
  /**
27
54
  * Check if admin UI is enabled
28
55
  * Checks both the initialized flag and environment variable as fallback
@@ -33,7 +60,13 @@ function ensureAdminUiEnabled() {
33
60
  const envEnabled = process.env.HAZO_CONNECT_ENABLE_ADMIN_UI === "true" ||
34
61
  process.env.ENABLE_SQLITE_ADMIN_UI === "true";
35
62
  if (!adminUiEnabled && !envEnabled) {
36
- throw new Error("SQLite admin UI is not enabled. Set 'enable_admin_ui: true' in your hazo_connect configuration or set HAZO_CONNECT_ENABLE_ADMIN_UI=true environment variable.");
63
+ throw new Error("SQLite admin UI is not enabled. " +
64
+ "To enable it:\n" +
65
+ "1. Set 'enable_admin_ui: true' when creating the adapter:\n" +
66
+ " createHazoConnect({ type: 'sqlite', enable_admin_ui: true, ... })\n" +
67
+ "2. Or set HAZO_CONNECT_ENABLE_ADMIN_UI=true environment variable\n" +
68
+ "3. Restart your development server after making changes\n" +
69
+ "See https://github.com/pub12/hazo_connect for more information.");
37
70
  }
38
71
  }
39
72
  function getSqliteAdminService() {
@@ -182,6 +215,11 @@ async function deleteRows(table, criteria) {
182
215
  }
183
216
  }
184
217
  function getSqliteAdapter() {
218
+ // First, check if a registered adapter exists (from singleton or factory)
219
+ if (registeredAdapter) {
220
+ return registeredAdapter;
221
+ }
222
+ // Fallback to creating adapter from environment variables
185
223
  const config = resolveAdminConfig();
186
224
  const signature = JSON.stringify(config);
187
225
  if (!cachedAdapter || cachedConfigSignature !== signature) {
@@ -1 +1 @@
1
- {"version":3,"file":"admin-service.js","sourceRoot":"","sources":["../../src/lib/sqlite/admin-service.ts"],"names":[],"mappings":";;;;;AA0FA,wDAEC;AAoBD,sDAUC;AA1HD,wFAAwF;AACxF,gDAAuB;AACvB,wCAA8C;AAE9C,+DAA0D;AAC1D,wDAA0F;AAC1F,0DAA2G;AAyE3G,MAAM,aAAa,GAAG,EAAE,CAAA;AAExB,IAAI,aAAa,GAAyB,IAAI,CAAA;AAC9C,IAAI,qBAAqB,GAAkB,IAAI,CAAA;AAC/C,IAAI,cAAc,GAAY,KAAK,CAAA;AAEnC;;;;GAIG;AACH,SAAgB,sBAAsB,CAAC,MAAqC;IAC1E,cAAc,GAAG,MAAM,CAAC,eAAe,KAAK,IAAI,CAAA;AAClD,CAAC;AAED;;;;GAIG;AACH,SAAS,oBAAoB;IAC3B,yCAAyC;IACzC,MAAM,UAAU,GACd,OAAO,CAAC,GAAG,CAAC,4BAA4B,KAAK,MAAM;QACnD,OAAO,CAAC,GAAG,CAAC,sBAAsB,KAAK,MAAM,CAAA;IAE/C,IAAI,CAAC,cAAc,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CACb,+JAA+J,CAChK,CAAA;IACH,CAAC;AACH,CAAC;AAED,SAAgB,qBAAqB;IACnC,oBAAoB,EAAE,CAAA;IACtB,OAAO;QACL,UAAU;QACV,cAAc;QACd,YAAY;QACZ,SAAS;QACT,UAAU;QACV,UAAU;KACX,CAAA;AACH,CAAC;AAED,KAAK,UAAU,UAAU;IACvB,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAA;IAClC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,QAAQ,CACpC,qHAAqH,CACtH,CAAA;QAED,MAAM,SAAS,GAAmB,EAAE,CAAA;QACpC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YAChC,MAAM,IAAI,GAAI,MAAM,CAAC,IAAwB,IAAI,OAAO,CAAA;YACxD,IAAI,QAAQ,GAAkB,IAAI,CAAA;YAElC,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBACrB,IAAI,CAAC;oBACH,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,QAAQ,CACxC,iCAAiC,IAAA,8BAAe,EAAC,IAAI,CAAC,EAAE,CACzD,CAAA;oBACD,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,CAAA;gBAC/C,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,QAAQ,GAAG,IAAI,CAAA;oBACf,gBAAgB,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAA;gBACxD,CAAC;YACH,CAAC;YAED,SAAS,CAAC,IAAI,CAAC;gBACb,IAAI;gBACJ,IAAI;gBACJ,SAAS,EAAE,QAAQ;aACpB,CAAC,CAAA;QACJ,CAAC;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,eAAe,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAA;IAC9D,CAAC;AACH,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,KAAa;IACzC,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAA;IAClC,MAAM,SAAS,GAAG,IAAA,gCAAiB,EAAC,KAAK,CAAC,CAAA;IAE1C,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,QAAQ,CACvC,qBAAqB,IAAA,8BAAe,EAAC,SAAS,CAAC,GAAG,CACnD,CAAA;QACD,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,QAAQ,CAC3C,2BAA2B,IAAA,8BAAe,EAAC,SAAS,CAAC,GAAG,CACzD,CAAA;QAED,MAAM,OAAO,GAAkB,UAAU,CAAC,GAAG,CAAC,CAAC,MAA+B,EAAE,EAAE,CAAC,CAAC;YAClF,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC;YACvB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACzB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YAC/B,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;YAChC,aAAa,EAAE,MAAM,CAAC,UAAU,IAAI,IAAI;YACxC,oBAAoB,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;SACxC,CAAC,CAAC,CAAA;QAEH,MAAM,WAAW,GAAsB,cAAc,CAAC,GAAG,CACvD,CAAC,EAA2B,EAAE,EAAE,CAAC,CAAC;YAChC,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;YACjB,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC;YACnB,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC;YACvB,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC;YACrB,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;YACjB,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC;YACrC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC;YACrC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;SAC9B,CAAC,CACH,CAAA;QAED,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,CAAA;IAC/C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,eAAe,CAAC,qCAAqC,SAAS,GAAG,EAAE,KAAK,CAAC,CAAA;IACjF,CAAC;AACH,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,KAAa,EACb,UAA2B,EAAE;IAE7B,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAA;IAClC,MAAM,SAAS,GAAG,IAAA,gCAAiB,EAAC,KAAK,CAAC,CAAA;IAE1C,MAAM,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,CAAA;IAC/C,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IAC/E,MAAM,WAAW,GAAG,IAAA,gCAAgB,EAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAA;IAE3D,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,iBAAiB,IAAA,8BAAe,EAAC,SAAS,CAAC,GAAG,WAAW,CAAC,MAAM,GAAG,WAAW,UAAU,KAAK,WAAW,MAAM,EAAE,CAAA;QAC5H,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAS,CAAC,CAAA;QAE/E,MAAM,QAAQ,GAAG,iCAAiC,IAAA,8BAAe,EAAC,SAAS,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAA;QACnG,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAS,CAAC,CAAA;QAC3F,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,CAAA;QAEhD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,eAAe,CAAC,mCAAmC,SAAS,GAAG,EAAE,KAAK,CAAC,CAAA;IAC/E,CAAC;AACH,CAAC;AAED,KAAK,UAAU,SAAS,CACtB,KAAa,EACb,IAA6B;IAE7B,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAA;IAClC,MAAM,SAAS,GAAG,IAAA,gCAAiB,EAAC,KAAK,CAAC,CAAA;IAC1C,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAA;IAExD,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACtD,MAAM,GAAG,GAAG,eAAe,IAAA,8BAAe,EAAC,SAAS,CAAC,KAAK,OAAO;SAC9D,GAAG,CAAC,8BAAe,CAAC;SACpB,IAAI,CAAC,IAAI,CAAC,aAAa,YAAY,eAAe,CAAA;IAErD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAS,CAAC,CAAA;QACnE,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IACtB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,eAAe,CAAC,8BAA8B,SAAS,GAAG,EAAE,KAAK,CAAC,CAAA;IAC1E,CAAC;AACH,CAAC;AAED,KAAK,UAAU,UAAU,CACvB,KAAa,EACb,QAAiC,EACjC,IAA6B;IAE7B,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAA;IAClC,MAAM,SAAS,GAAG,IAAA,gCAAiB,EAAC,KAAK,CAAC,CAAA;IAE1C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;IACrE,CAAC;IAED,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAA;IACxD,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;IACpE,CAAC;IAED,MAAM,OAAO,GAAG,IAAA,wCAAwB,EAAC,QAAQ,CAAC,CAAA;IAClD,MAAM,WAAW,GAAG,IAAA,gCAAgB,EAAC,OAAO,CAAC,CAAA;IAC7C,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,IAAA,8BAAe,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEpF,MAAM,GAAG,GAAG,UAAU,IAAA,8BAAe,EAAC,SAAS,CAAC,QAAQ,SAAS,GAAG,WAAW,CAAC,MAAM,cAAc,CAAA;IACpG,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,EAAE,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;IAEjD,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,MAAM,EAAS,CAAC,CAAA;IACvD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,eAAe,CAAC,6BAA6B,SAAS,GAAG,EAAE,KAAK,CAAC,CAAA;IACzE,CAAC;AACH,CAAC;AAED,KAAK,UAAU,UAAU,CACvB,KAAa,EACb,QAAiC;IAEjC,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAA;IAClC,MAAM,SAAS,GAAG,IAAA,gCAAiB,EAAC,KAAK,CAAC,CAAA;IAE1C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;IACrE,CAAC;IAED,MAAM,OAAO,GAAG,IAAA,wCAAwB,EAAC,QAAQ,CAAC,CAAA;IAClD,MAAM,WAAW,GAAG,IAAA,gCAAgB,EAAC,OAAO,CAAC,CAAA;IAC7C,MAAM,GAAG,GAAG,eAAe,IAAA,8BAAe,EAAC,SAAS,CAAC,GAAG,WAAW,CAAC,MAAM,cAAc,CAAA;IAExF,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAS,CAAC,CAAA;IAC3E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,eAAe,CAAC,+BAA+B,SAAS,GAAG,EAAE,KAAK,CAAC,CAAA;IAC3E,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB;IACvB,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAA;IACnC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;IAExC,IAAI,CAAC,aAAa,IAAI,qBAAqB,KAAK,SAAS,EAAE,CAAC;QAC1D,MAAM,OAAO,GAAG,IAAA,2BAAiB,EAAC;YAChC,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE;gBACN,aAAa,EAAE,MAAM,CAAC,YAAY;gBAClC,SAAS,EAAE,MAAM,CAAC,QAAQ;gBAC1B,cAAc,EAAE,MAAM,CAAC,aAAa;aACrC;SACF,CAAuB,CAAA;QAExB,IAAI,CAAC,CAAC,OAAO,YAAY,8BAAa,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;QAC1E,CAAC;QAED,aAAa,GAAG,OAAO,CAAA;QACvB,qBAAqB,GAAG,SAAS,CAAA;IACnC,CAAC;IAED,OAAO,aAAa,CAAA;AACtB,CAAC;AAED,SAAS,kBAAkB;IACzB,MAAM,OAAO,GACX,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE,CAAA;IAEhF,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,kHAAkH,CACnH,CAAA;IACH,CAAC;IAED,MAAM,YAAY,GAAG,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC1C,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAA;IACvE,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,4BAA4B;QAC5D,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC;QACxD,CAAC,CAAC,SAAS,CAAA;IAEb,OAAO;QACL,YAAY;QACZ,QAAQ;QACR,aAAa;KACd,CAAA;AACH,CAAC;AAED,SAAS,YAAY,CAAC,KAAqB;IACzC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,KAAK,CAAA;IACd,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAA;AACjE,CAAC;AAED,iFAAiF;AAEjF,SAAS,sBAAsB,CAAC,IAA6B;IAI3D,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;IAC1C,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACpB,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;IACpC,CAAC;IAED,MAAM,cAAc,GAAG,OAAO;SAC3B,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC;SACnB,MAAM,CAAC,GAAG,CAAC,EAAE;QACZ,IAAI,CAAC;YACH,IAAA,8BAAe,EAAC,GAAG,CAAC,CAAA;YACpB,OAAO,KAAK,CAAA;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC,CAAC,CAAA;IAEJ,IAAI,cAAc,CAAC,MAAM,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACb,gDAAgD,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC5E,CAAA;IACH,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAA;IAC3C,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,IAAA,6BAAc,EAAC,KAAK,CAAC,CAAC,CAAA;IAEhE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAA;AAC5B,CAAC;AAED,oEAAoE;AAEpE,SAAS,gBAAgB,CAAC,OAAgB,EAAE,SAA0B;IACpE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,CAAA;IACX,CAAC;IACD,MAAM,aAAa,GAAG,SAAS,EAAE,WAAW,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAA;IAC1E,OAAO,aAAa,IAAA,8BAAe,EAAC,OAAO,CAAC,IAAI,aAAa,EAAE,CAAA;AACjE,CAAC;AAED,uGAAuG;AAEvG,SAAS,aAAa,CAAC,QAAiB;IACtC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,aAAa,CAAA;IACtB,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;IACrD,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,eAAe,CAAC,OAAe,EAAE,QAAiB;IACzD,MAAM,MAAM,GAAG,QAAQ,YAAY,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAC9E,OAAO,IAAI,KAAK,CAAC,GAAG,OAAO,KAAK,MAAM,EAAE,CAAC,CAAA;AAC3C,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAe,EAAE,KAAc;IACvD,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;QAC1C,sCAAsC;QACtC,OAAO,CAAC,IAAI,CAAC,kBAAkB,OAAO,GAAG,EAAE,KAAK,CAAC,CAAA;IACnD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"admin-service.js","sourceRoot":"","sources":["../../src/lib/sqlite/admin-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Purpose: Configuration validation utilities for hazo_connect
3
+ *
4
+ * This file provides validation functions to check Next.js configuration
5
+ * and provide helpful error messages for common misconfigurations.
6
+ */
7
+ /**
8
+ * Validation result
9
+ */
10
+ export interface ValidationResult {
11
+ valid: boolean;
12
+ errors: string[];
13
+ warnings: string[];
14
+ }
15
+ /**
16
+ * Validate Next.js configuration for hazo_connect with SQLite
17
+ *
18
+ * Checks for common misconfigurations and provides helpful error messages.
19
+ *
20
+ * @returns Validation result with errors and warnings
21
+ *
22
+ * @example
23
+ * ```typescript
24
+ * import { validateNextJsConfig } from 'hazo_connect/server'
25
+ *
26
+ * const result = validateNextJsConfig()
27
+ * if (!result.valid) {
28
+ * console.error('Configuration errors:', result.errors)
29
+ * }
30
+ * ```
31
+ */
32
+ export declare function validateNextJsConfig(): ValidationResult;
33
+ /**
34
+ * Get helpful configuration tips based on current environment
35
+ *
36
+ * @returns Array of configuration tips
37
+ */
38
+ export declare function getConfigurationTips(): string[];
39
+ //# sourceMappingURL=config-validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-validator.d.ts","sourceRoot":"","sources":["../../src/lib/utils/config-validator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAA;IACd,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,oBAAoB,IAAI,gBAAgB,CA6CvD;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,EAAE,CAoB/C"}
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ /**
3
+ * Purpose: Configuration validation utilities for hazo_connect
4
+ *
5
+ * This file provides validation functions to check Next.js configuration
6
+ * and provide helpful error messages for common misconfigurations.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.validateNextJsConfig = validateNextJsConfig;
10
+ exports.getConfigurationTips = getConfigurationTips;
11
+ /**
12
+ * Validate Next.js configuration for hazo_connect with SQLite
13
+ *
14
+ * Checks for common misconfigurations and provides helpful error messages.
15
+ *
16
+ * @returns Validation result with errors and warnings
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * import { validateNextJsConfig } from 'hazo_connect/server'
21
+ *
22
+ * const result = validateNextJsConfig()
23
+ * if (!result.valid) {
24
+ * console.error('Configuration errors:', result.errors)
25
+ * }
26
+ * ```
27
+ */
28
+ function validateNextJsConfig() {
29
+ const errors = [];
30
+ const warnings = [];
31
+ // Check if we're in a Next.js environment
32
+ if (typeof process === 'undefined' || !process.env) {
33
+ warnings.push('Unable to validate configuration: not in Node.js environment');
34
+ return { valid: true, errors, warnings };
35
+ }
36
+ // Check for SQLite configuration
37
+ const dbType = process.env.HAZO_CONNECT_TYPE || 'sqlite';
38
+ if (dbType === 'sqlite') {
39
+ const sqlitePath = process.env.HAZO_CONNECT_SQLITE_PATH || process.env.SQLITE_DATABASE_PATH;
40
+ if (!sqlitePath) {
41
+ warnings.push('HAZO_CONNECT_SQLITE_PATH not set. ' +
42
+ 'Will use default path: ./database.sqlite');
43
+ }
44
+ }
45
+ // Check for PostgREST configuration
46
+ if (dbType === 'postgrest') {
47
+ if (!process.env.POSTGREST_URL && !process.env.postgrest_url) {
48
+ errors.push('POSTGREST_URL environment variable is required for PostgREST adapter. ' +
49
+ 'Set POSTGREST_URL in your .env.local file.');
50
+ }
51
+ if (!process.env.POSTGREST_API_KEY && !process.env.postgrest_api_key) {
52
+ errors.push('POSTGREST_API_KEY environment variable is required for PostgREST adapter. ' +
53
+ 'Set POSTGREST_API_KEY in your .env.local file.');
54
+ }
55
+ }
56
+ return {
57
+ valid: errors.length === 0,
58
+ errors,
59
+ warnings
60
+ };
61
+ }
62
+ /**
63
+ * Get helpful configuration tips based on current environment
64
+ *
65
+ * @returns Array of configuration tips
66
+ */
67
+ function getConfigurationTips() {
68
+ const tips = [];
69
+ // Check if sql.js might be bundled
70
+ if (typeof window !== 'undefined') {
71
+ tips.push('⚠️ You are in a browser environment. ' +
72
+ 'Make sure sql.js is excluded from webpack bundling in next.config.mjs');
73
+ }
74
+ // Check for common Next.js configuration issues
75
+ tips.push('💡 Tip: Add sql.js to serverComponentsExternalPackages in next.config.mjs', '💡 Tip: Add sql.js to webpack.externals for server-side code', '💡 Tip: Use API routes instead of calling hazo_connect directly in Server Components', '💡 Tip: Use singleton pattern for multiple API routes (getHazoConnectSingleton)');
76
+ return tips;
77
+ }
78
+ //# sourceMappingURL=config-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-validator.js","sourceRoot":"","sources":["../../src/lib/utils/config-validator.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AA4BH,oDA6CC;AAOD,oDAoBC;AAzFD;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,oBAAoB;IAClC,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,MAAM,QAAQ,GAAa,EAAE,CAAA;IAE7B,0CAA0C;IAC1C,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QACnD,QAAQ,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAA;QAC7E,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAA;IAC1C,CAAC;IAED,iCAAiC;IACjC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,QAAQ,CAAA;IACxD,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxB,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAA;QAE3F,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,QAAQ,CAAC,IAAI,CACX,oCAAoC;gBACpC,0CAA0C,CAC3C,CAAA;QACH,CAAC;IACH,CAAC;IAED,oCAAoC;IACpC,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;QAC3B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YAC7D,MAAM,CAAC,IAAI,CACT,wEAAwE;gBACxE,4CAA4C,CAC7C,CAAA;QACH,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;YACrE,MAAM,CAAC,IAAI,CACT,4EAA4E;gBAC5E,gDAAgD,CACjD,CAAA;QACH,CAAC;IACH,CAAC;IAED,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;QAC1B,MAAM;QACN,QAAQ;KACT,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,SAAgB,oBAAoB;IAClC,MAAM,IAAI,GAAa,EAAE,CAAA;IAEzB,mCAAmC;IACnC,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,CACP,wCAAwC;YACxC,uEAAuE,CACxE,CAAA;IACH,CAAC;IAED,gDAAgD;IAChD,IAAI,CAAC,IAAI,CACP,2EAA2E,EAC3E,8DAA8D,EAC9D,sFAAsF,EACtF,iFAAiF,CAClF,CAAA;IAED,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -0,0 +1,199 @@
1
+ /**
2
+ * Example: SQLite Admin UI Setup in Next.js
3
+ *
4
+ * This example shows how to set up and use the SQLite admin UI
5
+ * that comes with hazo_connect.
6
+ */
7
+
8
+ // ============================================================================
9
+ // Step 1: Enable Admin UI in Configuration
10
+ // ============================================================================
11
+
12
+ // Option A: Using environment variable
13
+ // .env.local
14
+ // HAZO_CONNECT_ENABLE_ADMIN_UI=true
15
+ // HAZO_CONNECT_SQLITE_PATH=./database.sqlite
16
+
17
+ // Option B: Using code configuration
18
+ import { createHazoConnect } from 'hazo_connect/server'
19
+
20
+ const hazo = createHazoConnect({
21
+ type: 'sqlite',
22
+ enable_admin_ui: true, // Enable the admin UI
23
+ sqlite: {
24
+ database_path: process.env.HAZO_CONNECT_SQLITE_PATH || './database.sqlite'
25
+ }
26
+ })
27
+
28
+ // ============================================================================
29
+ // Step 2: Admin UI API Routes (Automatically Included)
30
+ // ============================================================================
31
+
32
+ // The following routes are automatically available when you install hazo_connect:
33
+ // - GET /hazo_connect/api/sqlite/tables
34
+ // - GET /hazo_connect/api/sqlite/schema?table=TABLE_NAME
35
+ // - GET /hazo_connect/api/sqlite/data?table=TABLE_NAME
36
+ // - POST /hazo_connect/api/sqlite/data
37
+ // - PATCH /hazo_connect/api/sqlite/data
38
+ // - DELETE /hazo_connect/api/sqlite/data
39
+
40
+ // ============================================================================
41
+ // Step 3: Custom Admin UI API Route (Optional)
42
+ // ============================================================================
43
+
44
+ // app/api/admin/tables/route.ts
45
+ import { NextResponse } from 'next/server'
46
+ import { getSqliteAdminService } from 'hazo_connect/server'
47
+ import { createHazoConnectFromEnv } from 'hazo_connect/nextjs/setup'
48
+
49
+ export async function GET() {
50
+ try {
51
+ // Create adapter first (this initializes admin service if enabled)
52
+ const hazo = createHazoConnectFromEnv({
53
+ enableAdminUi: true // Ensure admin UI is enabled
54
+ })
55
+
56
+ // Get admin service
57
+ const service = getSqliteAdminService()
58
+ const tables = await service.listTables()
59
+
60
+ return NextResponse.json({ data: tables })
61
+ } catch (error) {
62
+ return NextResponse.json(
63
+ {
64
+ error: error instanceof Error ? error.message : 'Unknown error',
65
+ code: 'ADMIN_UI_ERROR'
66
+ },
67
+ { status: 500 }
68
+ )
69
+ }
70
+ }
71
+
72
+ // ============================================================================
73
+ // Step 4: Access Admin UI
74
+ // ============================================================================
75
+
76
+ /**
77
+ * The admin UI is automatically available at:
78
+ *
79
+ * http://localhost:3000/hazo_connect/sqlite_admin
80
+ *
81
+ * Features:
82
+ * - View all tables and their row counts
83
+ * - View table schema (columns, types, constraints, foreign keys)
84
+ * - Browse table data with pagination
85
+ * - Filter and sort data
86
+ * - Insert new rows
87
+ * - Update existing rows
88
+ * - Delete rows
89
+ */
90
+
91
+ // ============================================================================
92
+ // Step 5: Custom Admin UI Page (Optional)
93
+ // ============================================================================
94
+
95
+ // app/admin/page.tsx
96
+ import { headers } from 'next/headers'
97
+ import type { TableSummary } from 'hazo_connect/ui'
98
+
99
+ export default async function AdminPage() {
100
+ const headersList = await headers()
101
+ const host = headersList.get('host') || 'localhost:3000'
102
+ const baseUrl = `http://${host}`
103
+
104
+ // Fetch tables from admin API
105
+ const response = await fetch(`${baseUrl}/hazo_connect/api/sqlite/tables`, {
106
+ cache: 'no-store'
107
+ })
108
+
109
+ if (!response.ok) {
110
+ return (
111
+ <div>
112
+ <h1>Admin UI Error</h1>
113
+ <p>Failed to load tables: {response.statusText}</p>
114
+ <p>Make sure HAZO_CONNECT_ENABLE_ADMIN_UI=true is set</p>
115
+ </div>
116
+ )
117
+ }
118
+
119
+ const { data: tables } = await response.json() as { data: TableSummary[] }
120
+
121
+ return (
122
+ <div className="container mx-auto p-4">
123
+ <h1 className="text-2xl font-bold mb-4">Database Admin</h1>
124
+
125
+ <div className="grid gap-4">
126
+ {tables.map((table) => (
127
+ <div key={table.name} className="border p-4 rounded">
128
+ <h2 className="font-semibold">{table.name}</h2>
129
+ <p className="text-sm text-gray-600">
130
+ Type: {table.type} | Rows: {table.row_count ?? 'N/A'}
131
+ </p>
132
+ <a
133
+ href={`/hazo_connect/sqlite_admin?table=${table.name}`}
134
+ className="text-blue-600 hover:underline"
135
+ >
136
+ View Details →
137
+ </a>
138
+ </div>
139
+ ))}
140
+ </div>
141
+ </div>
142
+ )
143
+ }
144
+
145
+ // ============================================================================
146
+ // Step 6: Using Admin Service Programmatically
147
+ // ============================================================================
148
+
149
+ // app/api/admin/schema/route.ts
150
+ import { NextRequest, NextResponse } from 'next/server'
151
+ import { getSqliteAdminService } from 'hazo_connect/server'
152
+ import { createHazoConnectFromEnv } from 'hazo_connect/nextjs/setup'
153
+
154
+ export async function GET(request: NextRequest) {
155
+ try {
156
+ // Initialize adapter
157
+ const hazo = createHazoConnectFromEnv({ enableAdminUi: true })
158
+
159
+ // Get table name from query params
160
+ const { searchParams } = new URL(request.url)
161
+ const tableName = searchParams.get('table')
162
+
163
+ if (!tableName) {
164
+ return NextResponse.json(
165
+ { error: 'Table name is required' },
166
+ { status: 400 }
167
+ )
168
+ }
169
+
170
+ // Get admin service
171
+ const service = getSqliteAdminService()
172
+ const schema = await service.getTableSchema(tableName)
173
+
174
+ return NextResponse.json({ data: schema })
175
+ } catch (error) {
176
+ return NextResponse.json(
177
+ {
178
+ error: error instanceof Error ? error.message : 'Unknown error',
179
+ code: 'SCHEMA_ERROR'
180
+ },
181
+ { status: 500 }
182
+ )
183
+ }
184
+ }
185
+
186
+ // ============================================================================
187
+ // Troubleshooting
188
+ // ============================================================================
189
+
190
+ /**
191
+ * If admin UI is not working:
192
+ *
193
+ * 1. Check that enable_admin_ui: true is set when creating adapter
194
+ * 2. Verify HAZO_CONNECT_ENABLE_ADMIN_UI=true environment variable
195
+ * 3. Ensure adapter is created before calling getSqliteAdminService()
196
+ * 4. Check that database path is correct and database exists
197
+ * 5. Restart development server after configuration changes
198
+ */
199
+