@kyro-cms/core 0.3.4 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/README.md +3 -3
  2. package/dist/api-handler.cjs +6 -6
  3. package/dist/api-handler.js +5 -5
  4. package/dist/{chunk-X3CU27OO.cjs → chunk-3FW6WVVP.cjs} +2 -17
  5. package/dist/chunk-3FW6WVVP.cjs.map +1 -0
  6. package/dist/{chunk-CZ3HWX2X.cjs → chunk-3ZZPZYCM.cjs} +42 -67
  7. package/dist/chunk-3ZZPZYCM.cjs.map +1 -0
  8. package/dist/{chunk-6LPNEC6D.js → chunk-C4JJEE42.js} +43 -68
  9. package/dist/chunk-C4JJEE42.js.map +1 -0
  10. package/dist/{chunk-VEI5KQVC.cjs → chunk-FWGHXRRI.cjs} +45 -15
  11. package/dist/chunk-FWGHXRRI.cjs.map +1 -0
  12. package/dist/{chunk-MMYAIYHJ.cjs → chunk-M4GFA2UQ.cjs} +336 -32
  13. package/dist/chunk-M4GFA2UQ.cjs.map +1 -0
  14. package/dist/{chunk-2SJATAN4.js → chunk-OJBK3JYF.js} +336 -32
  15. package/dist/chunk-OJBK3JYF.js.map +1 -0
  16. package/dist/{chunk-XIXGJGQW.js → chunk-SAMZQVC2.js} +44 -14
  17. package/dist/chunk-SAMZQVC2.js.map +1 -0
  18. package/dist/{chunk-B76I67F3.js → chunk-WSCJQI2B.js} +61 -13
  19. package/dist/chunk-WSCJQI2B.js.map +1 -0
  20. package/dist/{chunk-RGIQKTZ7.js → chunk-YMG55RSX.js} +4 -18
  21. package/dist/chunk-YMG55RSX.js.map +1 -0
  22. package/dist/{chunk-DAIBBBOL.cjs → chunk-Z2OVHWHB.cjs} +61 -13
  23. package/dist/chunk-Z2OVHWHB.cjs.map +1 -0
  24. package/dist/drizzle/index.cjs +10 -10
  25. package/dist/drizzle/index.js +2 -2
  26. package/dist/index.cjs +138 -105
  27. package/dist/index.cjs.map +1 -1
  28. package/dist/index.js +77 -44
  29. package/dist/index.js.map +1 -1
  30. package/dist/rest/index.cjs +5 -4
  31. package/dist/rest/index.js +3 -2
  32. package/dist/templates/index.cjs +24 -24
  33. package/dist/templates/index.js +1 -1
  34. package/package.json +2 -14
  35. package/dist/WebhookService-BCpW2dyL.d.ts +0 -112
  36. package/dist/WebhookService-DxYSFvNg.d.cts +0 -112
  37. package/dist/api-handler.d.cts +0 -9
  38. package/dist/api-handler.d.ts +0 -9
  39. package/dist/base-DvvNqnM-.d.cts +0 -73
  40. package/dist/base-eVegJ_Pr.d.ts +0 -73
  41. package/dist/chunk-2SJATAN4.js.map +0 -1
  42. package/dist/chunk-6LPNEC6D.js.map +0 -1
  43. package/dist/chunk-B76I67F3.js.map +0 -1
  44. package/dist/chunk-CZ3HWX2X.cjs.map +0 -1
  45. package/dist/chunk-DAIBBBOL.cjs.map +0 -1
  46. package/dist/chunk-MMYAIYHJ.cjs.map +0 -1
  47. package/dist/chunk-RGIQKTZ7.js.map +0 -1
  48. package/dist/chunk-VEI5KQVC.cjs.map +0 -1
  49. package/dist/chunk-X3CU27OO.cjs.map +0 -1
  50. package/dist/chunk-XIXGJGQW.js.map +0 -1
  51. package/dist/cli/index.d.cts +0 -1
  52. package/dist/cli/index.d.ts +0 -1
  53. package/dist/client.d.cts +0 -12
  54. package/dist/client.d.ts +0 -12
  55. package/dist/drizzle/index.d.cts +0 -135
  56. package/dist/drizzle/index.d.ts +0 -135
  57. package/dist/fields/index.d.cts +0 -27
  58. package/dist/fields/index.d.ts +0 -27
  59. package/dist/graphql/index.d.cts +0 -22
  60. package/dist/graphql/index.d.ts +0 -22
  61. package/dist/index-Bz9JqRGI.d.cts +0 -86
  62. package/dist/index-Bz9JqRGI.d.ts +0 -86
  63. package/dist/index-CLp-DRKA.d.ts +0 -64
  64. package/dist/index-DfO7G4kN.d.cts +0 -64
  65. package/dist/index.d.cts +0 -1361
  66. package/dist/index.d.ts +0 -1361
  67. package/dist/integration.d.cts +0 -27
  68. package/dist/integration.d.ts +0 -27
  69. package/dist/mongodb/index.d.cts +0 -63
  70. package/dist/mongodb/index.d.ts +0 -63
  71. package/dist/mysql-media-AI6YK767.cjs +0 -48
  72. package/dist/mysql-media-AI6YK767.cjs.map +0 -1
  73. package/dist/mysql-media-CDZUS7YX.js +0 -45
  74. package/dist/mysql-media-CDZUS7YX.js.map +0 -1
  75. package/dist/rest/index.d.cts +0 -57
  76. package/dist/rest/index.d.ts +0 -57
  77. package/dist/templates/index.d.cts +0 -59
  78. package/dist/templates/index.d.ts +0 -59
  79. package/dist/trpc/index.d.cts +0 -136
  80. package/dist/trpc/index.d.ts +0 -136
  81. package/dist/types-Bs1up4yP.d.ts +0 -461
  82. package/dist/types-Da83JLDk.d.cts +0 -130
  83. package/dist/types-Da83JLDk.d.ts +0 -130
  84. package/dist/types-J3R9nVsZ.d.cts +0 -461
  85. package/dist/types-VtjUxIMp.d.cts +0 -246
  86. package/dist/types-VtjUxIMp.d.ts +0 -246
  87. package/dist/ws/index.d.cts +0 -88
  88. package/dist/ws/index.d.ts +0 -88
package/dist/index.cjs CHANGED
@@ -2,23 +2,23 @@
2
2
 
3
3
  var chunkH4XCAPA6_cjs = require('./chunk-H4XCAPA6.cjs');
4
4
  var chunkJYGIFBBS_cjs = require('./chunk-JYGIFBBS.cjs');
5
- var chunkDAIBBBOL_cjs = require('./chunk-DAIBBBOL.cjs');
6
- var chunkVEI5KQVC_cjs = require('./chunk-VEI5KQVC.cjs');
5
+ var chunkZ2OVHWHB_cjs = require('./chunk-Z2OVHWHB.cjs');
6
+ var chunkFWGHXRRI_cjs = require('./chunk-FWGHXRRI.cjs');
7
7
  var chunkN4H37VN4_cjs = require('./chunk-N4H37VN4.cjs');
8
8
  var chunkATBOUGQP_cjs = require('./chunk-ATBOUGQP.cjs');
9
9
  var chunkK7JPTH3G_cjs = require('./chunk-K7JPTH3G.cjs');
10
- var chunkVJT6P4N6_cjs = require('./chunk-VJT6P4N6.cjs');
11
- var chunkMMYAIYHJ_cjs = require('./chunk-MMYAIYHJ.cjs');
10
+ var chunkM4GFA2UQ_cjs = require('./chunk-M4GFA2UQ.cjs');
12
11
  var chunkDLHUQO25_cjs = require('./chunk-DLHUQO25.cjs');
13
12
  require('./chunk-4PWRCMTQ.cjs');
14
13
  require('./chunk-ADLJSJSN.cjs');
15
14
  var chunkIBG6V56E_cjs = require('./chunk-IBG6V56E.cjs');
15
+ var chunkVJT6P4N6_cjs = require('./chunk-VJT6P4N6.cjs');
16
16
  var chunkR3XIBBAW_cjs = require('./chunk-R3XIBBAW.cjs');
17
17
  var chunkDVD5P72E_cjs = require('./chunk-DVD5P72E.cjs');
18
- var chunkCZ3HWX2X_cjs = require('./chunk-CZ3HWX2X.cjs');
18
+ var chunk3ZZPZYCM_cjs = require('./chunk-3ZZPZYCM.cjs');
19
19
  var chunkIX3ABYKZ_cjs = require('./chunk-IX3ABYKZ.cjs');
20
20
  require('./chunk-WQBRWOQT.cjs');
21
- var chunkX3CU27OO_cjs = require('./chunk-X3CU27OO.cjs');
21
+ var chunk3FW6WVVP_cjs = require('./chunk-3FW6WVVP.cjs');
22
22
  var chunkW3KPQX7V_cjs = require('./chunk-W3KPQX7V.cjs');
23
23
  var chunkKOCTZKPV_cjs = require('./chunk-KOCTZKPV.cjs');
24
24
  var chunkG7VZBCD6_cjs = require('./chunk-G7VZBCD6.cjs');
@@ -84,7 +84,16 @@ function processFieldValue(row, field) {
84
84
  value = Boolean(value);
85
85
  }
86
86
  if (f.type === "date" && value) {
87
- value = new Date(value).toISOString();
87
+ try {
88
+ const d = new Date(value);
89
+ if (isNaN(d.getTime())) {
90
+ value = null;
91
+ } else {
92
+ value = d.toISOString();
93
+ }
94
+ } catch {
95
+ value = null;
96
+ }
88
97
  }
89
98
  if ((f.type === "upload" || f.type === "image") && value) {
90
99
  try {
@@ -186,8 +195,8 @@ var LocalAdapter = class extends chunkKOCTZKPV_cjs.AbstractBaseAdapter {
186
195
  const colDef = this.fieldToSQL(field);
187
196
  if (colDef) columns.push(colDef);
188
197
  }
189
- columns.push(`created_at TEXT DEFAULT (datetime('now'))`);
190
- columns.push(`updated_at TEXT DEFAULT (datetime('now'))`);
198
+ columns.push(`${this.col("createdAt")} TEXT DEFAULT (datetime('now'))`);
199
+ columns.push(`${this.col("updatedAt")} TEXT DEFAULT (datetime('now'))`);
191
200
  columns.push(`_status TEXT DEFAULT 'published'`);
192
201
  columns.push(`_has_draft INTEGER DEFAULT 0`);
193
202
  if (config.tenantScoped) {
@@ -201,27 +210,27 @@ var LocalAdapter = class extends chunkKOCTZKPV_cjs.AbstractBaseAdapter {
201
210
  for (const field of flattenFields(config.fields)) {
202
211
  if (field.name && field.indexed) {
203
212
  this.db.exec(
204
- `CREATE INDEX IF NOT EXISTS idx_${name}_${field.name} ON ${name}(${field.name})`
213
+ `CREATE INDEX IF NOT EXISTS idx_${name}_${field.name} ON ${name}(${this.col(field.name)})`
205
214
  );
206
215
  }
207
216
  if (field.name && field.unique) {
208
217
  this.db.exec(
209
- `CREATE UNIQUE INDEX IF NOT EXISTS idx_${name}_${field.name}_unique ON ${name}(${field.name})`
218
+ `CREATE UNIQUE INDEX IF NOT EXISTS idx_${name}_${field.name}_unique ON ${name}(${this.col(field.name)})`
210
219
  );
211
220
  }
212
221
  }
213
222
  } else {
214
223
  const existingSet = new Set(existingColumns);
215
- for (const col of columns) {
216
- const colName = col.split(" ")[0];
224
+ for (const colDef of columns) {
225
+ const colName = colDef.split(" ")[0].replace(/^"/, "").replace(/"$/, "");
217
226
  if (!existingSet.has(colName) && colName !== "id") {
218
227
  try {
219
228
  if (colName === "_status") {
220
- this.db.exec(`ALTER TABLE ${name} ADD COLUMN ${colName} TEXT DEFAULT 'published'`);
229
+ this.db.exec(`ALTER TABLE ${name} ADD COLUMN ${this.col(colName)} TEXT DEFAULT 'published'`);
221
230
  } else if (colName === "_has_draft") {
222
- this.db.exec(`ALTER TABLE ${name} ADD COLUMN ${colName} INTEGER DEFAULT 0`);
231
+ this.db.exec(`ALTER TABLE ${name} ADD COLUMN ${this.col(colName)} INTEGER DEFAULT 0`);
223
232
  } else {
224
- this.db.exec(`ALTER TABLE ${name} ADD COLUMN ${colName} TEXT`);
233
+ this.db.exec(`ALTER TABLE ${name} ADD COLUMN ${this.col(colName)} TEXT`);
225
234
  }
226
235
  } catch {
227
236
  }
@@ -272,6 +281,12 @@ var LocalAdapter = class extends chunkKOCTZKPV_cjs.AbstractBaseAdapter {
272
281
  `CREATE UNIQUE INDEX IF NOT EXISTS idx_${this.draftsTableName}_document ON ${this.draftsTableName}(collection_slug, document_id, tenant_id)`
273
282
  );
274
283
  }
284
+ // ========================================================================
285
+ // SQL Quoting
286
+ // ========================================================================
287
+ col(name) {
288
+ return `"${name}"`;
289
+ }
275
290
  fieldToSQL(field) {
276
291
  switch (field.type) {
277
292
  case "text":
@@ -282,25 +297,25 @@ var LocalAdapter = class extends chunkKOCTZKPV_cjs.AbstractBaseAdapter {
282
297
  case "code":
283
298
  case "markdown":
284
299
  case "url":
285
- return `${field.name} TEXT`;
300
+ return this.col(field.name) + " TEXT";
286
301
  case "number":
287
- return `${field.name} REAL`;
302
+ return this.col(field.name) + " REAL";
288
303
  case "checkbox":
289
- return `${field.name} INTEGER DEFAULT 0`;
304
+ return this.col(field.name) + " INTEGER DEFAULT 0";
290
305
  case "date":
291
- return `${field.name} TEXT`;
306
+ return this.col(field.name) + " TEXT";
292
307
  case "select":
293
308
  case "radio":
294
- return `${field.name} TEXT`;
309
+ return this.col(field.name) + " TEXT";
295
310
  case "relationship":
296
311
  case "upload":
297
- return `${field.name} TEXT`;
312
+ return this.col(field.name) + " TEXT";
298
313
  case "json":
299
314
  case "richtext":
300
315
  case "array":
301
316
  case "group":
302
317
  case "blocks":
303
- return `${field.name} TEXT`;
318
+ return this.col(field.name) + " TEXT";
304
319
  default:
305
320
  return null;
306
321
  }
@@ -352,26 +367,26 @@ var LocalAdapter = class extends chunkKOCTZKPV_cjs.AbstractBaseAdapter {
352
367
  if (key === "AND" || key === "OR") continue;
353
368
  if (typeof value === "object" && value !== null) {
354
369
  if (value.equals !== void 0) {
355
- conditions.push(`${key} = ?`);
370
+ conditions.push(`${this.col(key)} = ?`);
356
371
  params.push(value.equals);
357
372
  }
358
373
  if (value.in !== void 0) {
359
- conditions.push(`${key} IN (${value.in.map(() => "?").join(", ")})`);
374
+ conditions.push(`${this.col(key)} IN (${value.in.map(() => "?").join(", ")})`);
360
375
  params.push(...value.in);
361
376
  }
362
377
  if (value.not_equals !== void 0) {
363
- conditions.push(`${key} != ?`);
378
+ conditions.push(`${this.col(key)} != ?`);
364
379
  params.push(value.not_equals);
365
380
  }
366
381
  } else {
367
- conditions.push(`${key} = ?`);
382
+ conditions.push(`${this.col(key)} = ?`);
368
383
  params.push(value);
369
384
  }
370
385
  }
371
386
  if (conditions.length > 0) {
372
387
  sql += ` WHERE ${conditions.join(" AND ")}`;
373
388
  }
374
- const sortField = sort?.replace("-", "") || "created_at";
389
+ const sortField = this.col(sort?.replace("-", "") || "createdAt");
375
390
  const sortDir = sort?.startsWith("-") ? "DESC" : "ASC";
376
391
  sql += ` ORDER BY ${sortField} ${sortDir}`;
377
392
  const countSql = sql.replace("SELECT *", "SELECT COUNT(*) as count");
@@ -465,12 +480,13 @@ var LocalAdapter = class extends chunkKOCTZKPV_cjs.AbstractBaseAdapter {
465
480
  }
466
481
  }
467
482
  const filteredColumns = Object.keys(filteredData);
483
+ const quotedColumns = filteredColumns.map((c) => this.col(c));
468
484
  const placeholders = filteredColumns.map(() => "?").join(", ");
469
485
  const values = Object.values(filteredData).map(
470
486
  (v) => typeof v === "object" ? JSON.stringify(v) : v
471
487
  );
472
488
  this.db.prepare(
473
- `INSERT OR REPLACE INTO ${tableName} (${filteredColumns.join(", ")}) VALUES (${placeholders})`
489
+ `INSERT OR REPLACE INTO ${tableName} (${quotedColumns.join(", ")}) VALUES (${placeholders})`
474
490
  ).run(...values);
475
491
  return this.findByID({ collection: slug, id, tenantID });
476
492
  }
@@ -490,9 +506,9 @@ var LocalAdapter = class extends chunkKOCTZKPV_cjs.AbstractBaseAdapter {
490
506
  }
491
507
  }
492
508
  const columns = Object.keys(filteredData);
493
- const setClause = columns.map((c) => `${c} = ?`).join(", ");
509
+ const setClause = columns.map((c) => `${this.col(c)} = ?`).join(", ");
494
510
  const values = Object.values(filteredData).map(
495
- (v) => typeof v === "object" ? JSON.stringify(v) : v
511
+ (v) => v !== null && typeof v === "object" ? JSON.stringify(v) : v
496
512
  );
497
513
  let sql = `UPDATE ${tableName} SET ${setClause} WHERE id = ?`;
498
514
  const params = [...values, id];
@@ -502,7 +518,7 @@ var LocalAdapter = class extends chunkKOCTZKPV_cjs.AbstractBaseAdapter {
502
518
  params.push(tenantID);
503
519
  }
504
520
  this.db.prepare(sql).run(...params);
505
- return this.findByID({ collection: slug, id, tenantID });
521
+ return this.findByID({ collection: slug, id, tenantID, draft: true });
506
522
  }
507
523
  async delete(args) {
508
524
  const { collection: slug, id, tenantID } = args;
@@ -835,7 +851,17 @@ var LocalAdapter = class extends chunkKOCTZKPV_cjs.AbstractBaseAdapter {
835
851
  value = Boolean(value);
836
852
  }
837
853
  if (field.type === "date" && value) {
838
- value = new Date(value).toISOString();
854
+ try {
855
+ const d = new Date(value);
856
+ if (isNaN(d.getTime())) {
857
+ console.warn(`[LocalAdapter] Invalid date value for field "${field.name}":`, value);
858
+ value = null;
859
+ } else {
860
+ value = d.toISOString();
861
+ }
862
+ } catch {
863
+ value = null;
864
+ }
839
865
  }
840
866
  if ((field.type === "upload" || field.type === "image") && value) {
841
867
  try {
@@ -883,8 +909,22 @@ var LocalAdapter = class extends chunkKOCTZKPV_cjs.AbstractBaseAdapter {
883
909
  }
884
910
  }
885
911
  if (config.timestamps) {
886
- doc.createdAt = row.created_at;
887
- doc.updatedAt = row.updated_at;
912
+ const cAt = row.createdAt || row.created_at;
913
+ const uAt = row.updatedAt || row.updated_at;
914
+ if (cAt) {
915
+ try {
916
+ const d = new Date(cAt);
917
+ if (!isNaN(d.getTime())) doc.createdAt = d.toISOString();
918
+ } catch {
919
+ }
920
+ }
921
+ if (uAt) {
922
+ try {
923
+ const d = new Date(uAt);
924
+ if (!isNaN(d.getTime())) doc.updatedAt = d.toISOString();
925
+ } catch {
926
+ }
927
+ }
888
928
  }
889
929
  if (config.tenantScoped) {
890
930
  doc.tenantID = row.tenant_id;
@@ -1894,7 +1934,7 @@ function getEnvNum(key, fallback = 0) {
1894
1934
  }
1895
1935
  function detectDatabaseType() {
1896
1936
  const envDb = process.env.KYRO_AUTH_DATABASE?.toLowerCase();
1897
- if (envDb && ["sqlite", "postgres", "mysql", "mongodb", "memory"].includes(envDb)) {
1937
+ if (envDb && ["sqlite", "postgres", "mongodb", "memory"].includes(envDb)) {
1898
1938
  return envDb;
1899
1939
  }
1900
1940
  try {
@@ -1907,8 +1947,6 @@ function detectDatabaseType() {
1907
1947
  } else if (configContent.includes("createDrizzleAdapter")) {
1908
1948
  if (configContent.includes("postgres") || configContent.includes("postgresql")) {
1909
1949
  return "postgres";
1910
- } else if (configContent.includes("mysql")) {
1911
- return "mysql";
1912
1950
  }
1913
1951
  return "postgres";
1914
1952
  } else if (configContent.includes("createMongoDBAdapter")) {
@@ -1932,11 +1970,6 @@ async function createAuthAdapter(databaseType) {
1932
1970
  path: getEnv("KYRO_AUTH_DB_PATH", defaultAuthDbPath)
1933
1971
  });
1934
1972
  }
1935
- case "mysql": {
1936
- return new chunkDLHUQO25_cjs.SQLiteAuthAdapter({
1937
- path: getEnv("KYRO_AUTH_DB_PATH", defaultAuthDbPath)
1938
- });
1939
- }
1940
1973
  case "mongodb":
1941
1974
  return new chunkDLHUQO25_cjs.SQLiteAuthAdapter({
1942
1975
  path: getEnv("KYRO_AUTH_DB_PATH", defaultAuthDbPath)
@@ -1993,7 +2026,7 @@ async function createAuthConfig(databaseType) {
1993
2026
  max: getEnvNum("RATE_LIMIT_MAX_REQUESTS", 100)
1994
2027
  }
1995
2028
  });
1996
- auditLogger = new chunkMMYAIYHJ_cjs.AuditLogger(
2029
+ auditLogger = new chunkM4GFA2UQ_cjs.AuditLogger(
1997
2030
  redisClient,
1998
2031
  getEnvNum("AUDIT_LOG_RETENTION_DAYS", 30)
1999
2032
  );
@@ -2002,7 +2035,7 @@ async function createAuthConfig(databaseType) {
2002
2035
  maxAttempts: getEnvNum("LOCKOUT_MAX_ATTEMPTS", 5),
2003
2036
  lockDuration: getEnvNum("LOCKOUT_DURATION_MINUTES", 15) * 60 * 1e3
2004
2037
  });
2005
- rateLimiter = new chunkMMYAIYHJ_cjs.InMemoryRateLimiter({
2038
+ rateLimiter = new chunkM4GFA2UQ_cjs.InMemoryRateLimiter({
2006
2039
  "auth:login": {
2007
2040
  window: getEnvNum("RATE_LIMIT_AUTH_WINDOW_MS", 9e5),
2008
2041
  max: getEnvNum("RATE_LIMIT_AUTH_MAX_REQUESTS", 10)
@@ -2012,9 +2045,9 @@ async function createAuthConfig(databaseType) {
2012
2045
  max: getEnvNum("RATE_LIMIT_MAX_REQUESTS", 100)
2013
2046
  }
2014
2047
  });
2015
- auditLogger = getEnvBool("AUDIT_LOG_ENABLED", true) ? new chunkMMYAIYHJ_cjs.InMemoryAuditLogger(getEnvNum("AUDIT_LOG_RETENTION_DAYS", 30)) : void 0;
2048
+ auditLogger = getEnvBool("AUDIT_LOG_ENABLED", true) ? new chunkM4GFA2UQ_cjs.InMemoryAuditLogger(getEnvNum("AUDIT_LOG_RETENTION_DAYS", 30)) : void 0;
2016
2049
  }
2017
- const routes = new chunkMMYAIYHJ_cjs.AuthRoutes({
2050
+ const routes = new chunkM4GFA2UQ_cjs.AuthRoutes({
2018
2051
  redis: authAdapter,
2019
2052
  email,
2020
2053
  jwtSecret: getEnv("JWT_SECRET", "change-me"),
@@ -2626,7 +2659,7 @@ async function createAuthStorage(config) {
2626
2659
  }
2627
2660
 
2628
2661
  // src/index.ts
2629
- chunkMMYAIYHJ_cjs.init_secret();
2662
+ chunkM4GFA2UQ_cjs.init_secret();
2630
2663
 
2631
2664
  Object.defineProperty(exports, "RedisAuthAdapter", {
2632
2665
  enumerable: true,
@@ -2646,115 +2679,115 @@ Object.defineProperty(exports, "getBootstrapFromEnv", {
2646
2679
  });
2647
2680
  Object.defineProperty(exports, "allSettingsGlobals", {
2648
2681
  enumerable: true,
2649
- get: function () { return chunkDAIBBBOL_cjs.allSettingsGlobals; }
2682
+ get: function () { return chunkZ2OVHWHB_cjs.allSettingsGlobals; }
2650
2683
  });
2651
2684
  Object.defineProperty(exports, "blogCollections", {
2652
2685
  enumerable: true,
2653
- get: function () { return chunkDAIBBBOL_cjs.blogCollections; }
2686
+ get: function () { return chunkZ2OVHWHB_cjs.blogCollections; }
2654
2687
  });
2655
2688
  Object.defineProperty(exports, "blogGlobals", {
2656
2689
  enumerable: true,
2657
- get: function () { return chunkDAIBBBOL_cjs.blogGlobals; }
2690
+ get: function () { return chunkZ2OVHWHB_cjs.blogGlobals; }
2658
2691
  });
2659
2692
  Object.defineProperty(exports, "coreSettingsGlobals", {
2660
2693
  enumerable: true,
2661
- get: function () { return chunkDAIBBBOL_cjs.coreSettingsGlobals; }
2694
+ get: function () { return chunkZ2OVHWHB_cjs.coreSettingsGlobals; }
2662
2695
  });
2663
2696
  Object.defineProperty(exports, "createTemplateConfig", {
2664
2697
  enumerable: true,
2665
- get: function () { return chunkDAIBBBOL_cjs.createTemplateConfig; }
2698
+ get: function () { return chunkZ2OVHWHB_cjs.createTemplateConfig; }
2666
2699
  });
2667
2700
  Object.defineProperty(exports, "ecommerceCollections", {
2668
2701
  enumerable: true,
2669
- get: function () { return chunkDAIBBBOL_cjs.ecommerceCollections; }
2702
+ get: function () { return chunkZ2OVHWHB_cjs.ecommerceCollections; }
2670
2703
  });
2671
2704
  Object.defineProperty(exports, "ecommerceGlobals", {
2672
2705
  enumerable: true,
2673
- get: function () { return chunkDAIBBBOL_cjs.ecommerceGlobals; }
2706
+ get: function () { return chunkZ2OVHWHB_cjs.ecommerceGlobals; }
2674
2707
  });
2675
2708
  Object.defineProperty(exports, "ecommerceSettingsGlobals", {
2676
2709
  enumerable: true,
2677
- get: function () { return chunkDAIBBBOL_cjs.ecommerceSettingsGlobals; }
2710
+ get: function () { return chunkZ2OVHWHB_cjs.ecommerceSettingsGlobals; }
2678
2711
  });
2679
2712
  Object.defineProperty(exports, "kitchenSinkCollections", {
2680
2713
  enumerable: true,
2681
- get: function () { return chunkDAIBBBOL_cjs.kitchenSinkCollections; }
2714
+ get: function () { return chunkZ2OVHWHB_cjs.kitchenSinkCollections; }
2682
2715
  });
2683
2716
  Object.defineProperty(exports, "mediaCollections", {
2684
2717
  enumerable: true,
2685
- get: function () { return chunkDAIBBBOL_cjs.mediaCollections; }
2718
+ get: function () { return chunkZ2OVHWHB_cjs.mediaCollections; }
2686
2719
  });
2687
2720
  Object.defineProperty(exports, "minimalCollections", {
2688
2721
  enumerable: true,
2689
- get: function () { return chunkDAIBBBOL_cjs.minimalCollections; }
2722
+ get: function () { return chunkZ2OVHWHB_cjs.minimalCollections; }
2690
2723
  });
2691
2724
  Object.defineProperty(exports, "ConfigValidationError", {
2692
2725
  enumerable: true,
2693
- get: function () { return chunkVEI5KQVC_cjs.ConfigValidationError; }
2726
+ get: function () { return chunkFWGHXRRI_cjs.ConfigValidationError; }
2694
2727
  });
2695
2728
  Object.defineProperty(exports, "Kyro", {
2696
2729
  enumerable: true,
2697
- get: function () { return chunkVEI5KQVC_cjs.Kyro; }
2730
+ get: function () { return chunkFWGHXRRI_cjs.Kyro; }
2698
2731
  });
2699
2732
  Object.defineProperty(exports, "Registry", {
2700
2733
  enumerable: true,
2701
- get: function () { return chunkVEI5KQVC_cjs.Registry; }
2734
+ get: function () { return chunkFWGHXRRI_cjs.Registry; }
2702
2735
  });
2703
2736
  Object.defineProperty(exports, "collectionToCreateZod", {
2704
2737
  enumerable: true,
2705
- get: function () { return chunkVEI5KQVC_cjs.collectionToCreateZod; }
2738
+ get: function () { return chunkFWGHXRRI_cjs.collectionToCreateZod; }
2706
2739
  });
2707
2740
  Object.defineProperty(exports, "collectionToUpdateZod", {
2708
2741
  enumerable: true,
2709
- get: function () { return chunkVEI5KQVC_cjs.collectionToUpdateZod; }
2742
+ get: function () { return chunkFWGHXRRI_cjs.collectionToUpdateZod; }
2710
2743
  });
2711
2744
  Object.defineProperty(exports, "collectionToWhereZod", {
2712
2745
  enumerable: true,
2713
- get: function () { return chunkVEI5KQVC_cjs.collectionToWhereZod; }
2746
+ get: function () { return chunkFWGHXRRI_cjs.collectionToWhereZod; }
2714
2747
  });
2715
2748
  Object.defineProperty(exports, "collectionToZod", {
2716
2749
  enumerable: true,
2717
- get: function () { return chunkVEI5KQVC_cjs.collectionToZod; }
2750
+ get: function () { return chunkFWGHXRRI_cjs.collectionToZod; }
2718
2751
  });
2719
2752
  Object.defineProperty(exports, "createKyro", {
2720
2753
  enumerable: true,
2721
- get: function () { return chunkVEI5KQVC_cjs.createKyro; }
2754
+ get: function () { return chunkFWGHXRRI_cjs.createKyro; }
2722
2755
  });
2723
2756
  Object.defineProperty(exports, "createRegistry", {
2724
2757
  enumerable: true,
2725
- get: function () { return chunkVEI5KQVC_cjs.createRegistry; }
2758
+ get: function () { return chunkFWGHXRRI_cjs.createRegistry; }
2726
2759
  });
2727
2760
  Object.defineProperty(exports, "fieldToZod", {
2728
2761
  enumerable: true,
2729
- get: function () { return chunkVEI5KQVC_cjs.fieldToZod; }
2762
+ get: function () { return chunkFWGHXRRI_cjs.fieldToZod; }
2730
2763
  });
2731
2764
  Object.defineProperty(exports, "getRegistry", {
2732
2765
  enumerable: true,
2733
- get: function () { return chunkVEI5KQVC_cjs.getRegistry; }
2766
+ get: function () { return chunkFWGHXRRI_cjs.getRegistry; }
2734
2767
  });
2735
2768
  Object.defineProperty(exports, "globalToZod", {
2736
2769
  enumerable: true,
2737
- get: function () { return chunkVEI5KQVC_cjs.globalToZod; }
2770
+ get: function () { return chunkFWGHXRRI_cjs.globalToZod; }
2738
2771
  });
2739
2772
  Object.defineProperty(exports, "resetRegistry", {
2740
2773
  enumerable: true,
2741
- get: function () { return chunkVEI5KQVC_cjs.resetRegistry; }
2774
+ get: function () { return chunkFWGHXRRI_cjs.resetRegistry; }
2742
2775
  });
2743
2776
  Object.defineProperty(exports, "validateCollection", {
2744
2777
  enumerable: true,
2745
- get: function () { return chunkVEI5KQVC_cjs.validateCollection; }
2778
+ get: function () { return chunkFWGHXRRI_cjs.validateCollection; }
2746
2779
  });
2747
2780
  Object.defineProperty(exports, "validateConfig", {
2748
2781
  enumerable: true,
2749
- get: function () { return chunkVEI5KQVC_cjs.validateConfig; }
2782
+ get: function () { return chunkFWGHXRRI_cjs.validateConfig; }
2750
2783
  });
2751
2784
  Object.defineProperty(exports, "validateFields", {
2752
2785
  enumerable: true,
2753
- get: function () { return chunkVEI5KQVC_cjs.validateFields; }
2786
+ get: function () { return chunkFWGHXRRI_cjs.validateFields; }
2754
2787
  });
2755
2788
  Object.defineProperty(exports, "validateGlobal", {
2756
2789
  enumerable: true,
2757
- get: function () { return chunkVEI5KQVC_cjs.validateGlobal; }
2790
+ get: function () { return chunkFWGHXRRI_cjs.validateGlobal; }
2758
2791
  });
2759
2792
  Object.defineProperty(exports, "CSSGenerator", {
2760
2793
  enumerable: true,
@@ -2908,69 +2941,61 @@ Object.defineProperty(exports, "createUpdateProcedure", {
2908
2941
  enumerable: true,
2909
2942
  get: function () { return chunkK7JPTH3G_cjs.createUpdateProcedure; }
2910
2943
  });
2911
- Object.defineProperty(exports, "buildGraphQLSchema", {
2912
- enumerable: true,
2913
- get: function () { return chunkVJT6P4N6_cjs.buildGraphQLSchema; }
2914
- });
2915
- Object.defineProperty(exports, "createGraphQLSchema", {
2916
- enumerable: true,
2917
- get: function () { return chunkVJT6P4N6_cjs.createGraphQLSchema; }
2918
- });
2919
2944
  Object.defineProperty(exports, "AuditLogger", {
2920
2945
  enumerable: true,
2921
- get: function () { return chunkMMYAIYHJ_cjs.AuditLogger; }
2946
+ get: function () { return chunkM4GFA2UQ_cjs.AuditLogger; }
2922
2947
  });
2923
2948
  Object.defineProperty(exports, "InMemoryAuditLogger", {
2924
2949
  enumerable: true,
2925
- get: function () { return chunkMMYAIYHJ_cjs.InMemoryAuditLogger; }
2950
+ get: function () { return chunkM4GFA2UQ_cjs.InMemoryAuditLogger; }
2926
2951
  });
2927
2952
  Object.defineProperty(exports, "InMemoryRateLimiter", {
2928
2953
  enumerable: true,
2929
- get: function () { return chunkMMYAIYHJ_cjs.InMemoryRateLimiter; }
2954
+ get: function () { return chunkM4GFA2UQ_cjs.InMemoryRateLimiter; }
2930
2955
  });
2931
2956
  Object.defineProperty(exports, "MediaService", {
2932
2957
  enumerable: true,
2933
- get: function () { return chunkMMYAIYHJ_cjs.MediaService; }
2958
+ get: function () { return chunkM4GFA2UQ_cjs.MediaService; }
2934
2959
  });
2935
2960
  Object.defineProperty(exports, "createAuditContext", {
2936
2961
  enumerable: true,
2937
- get: function () { return chunkMMYAIYHJ_cjs.createAuditContext; }
2962
+ get: function () { return chunkM4GFA2UQ_cjs.createAuditContext; }
2938
2963
  });
2939
2964
  Object.defineProperty(exports, "createHonoApp", {
2940
2965
  enumerable: true,
2941
- get: function () { return chunkMMYAIYHJ_cjs.createHonoApp; }
2966
+ get: function () { return chunkM4GFA2UQ_cjs.createHonoApp; }
2942
2967
  });
2943
2968
  Object.defineProperty(exports, "createLocalStorage", {
2944
2969
  enumerable: true,
2945
- get: function () { return chunkMMYAIYHJ_cjs.createLocalStorage; }
2970
+ get: function () { return chunkM4GFA2UQ_cjs.createLocalStorage; }
2946
2971
  });
2947
2972
  Object.defineProperty(exports, "createRESTAPI", {
2948
2973
  enumerable: true,
2949
- get: function () { return chunkMMYAIYHJ_cjs.createRESTAPI; }
2974
+ get: function () { return chunkM4GFA2UQ_cjs.createRESTAPI; }
2950
2975
  });
2951
2976
  Object.defineProperty(exports, "getAppSecret", {
2952
2977
  enumerable: true,
2953
- get: function () { return chunkMMYAIYHJ_cjs.getAppSecret; }
2978
+ get: function () { return chunkM4GFA2UQ_cjs.getAppSecret; }
2954
2979
  });
2955
2980
  Object.defineProperty(exports, "getEncryptionKey", {
2956
2981
  enumerable: true,
2957
- get: function () { return chunkMMYAIYHJ_cjs.getEncryptionKey; }
2982
+ get: function () { return chunkM4GFA2UQ_cjs.getEncryptionKey; }
2958
2983
  });
2959
2984
  Object.defineProperty(exports, "getSessionConfig", {
2960
2985
  enumerable: true,
2961
- get: function () { return chunkMMYAIYHJ_cjs.getSessionConfig; }
2986
+ get: function () { return chunkM4GFA2UQ_cjs.getSessionConfig; }
2962
2987
  });
2963
2988
  Object.defineProperty(exports, "loadSecrets", {
2964
2989
  enumerable: true,
2965
- get: function () { return chunkMMYAIYHJ_cjs.loadSecrets; }
2990
+ get: function () { return chunkM4GFA2UQ_cjs.loadSecrets; }
2966
2991
  });
2967
2992
  Object.defineProperty(exports, "resolveProvider", {
2968
2993
  enumerable: true,
2969
- get: function () { return chunkMMYAIYHJ_cjs.resolveProvider; }
2994
+ get: function () { return chunkM4GFA2UQ_cjs.resolveProvider; }
2970
2995
  });
2971
2996
  Object.defineProperty(exports, "setDbAdapter", {
2972
2997
  enumerable: true,
2973
- get: function () { return chunkMMYAIYHJ_cjs.setDbAdapter; }
2998
+ get: function () { return chunkM4GFA2UQ_cjs.setDbAdapter; }
2974
2999
  });
2975
3000
  Object.defineProperty(exports, "ConfigService", {
2976
3001
  enumerable: true,
@@ -3036,6 +3061,14 @@ Object.defineProperty(exports, "signPayload", {
3036
3061
  enumerable: true,
3037
3062
  get: function () { return chunkIBG6V56E_cjs.signPayload; }
3038
3063
  });
3064
+ Object.defineProperty(exports, "buildGraphQLSchema", {
3065
+ enumerable: true,
3066
+ get: function () { return chunkVJT6P4N6_cjs.buildGraphQLSchema; }
3067
+ });
3068
+ Object.defineProperty(exports, "createGraphQLSchema", {
3069
+ enumerable: true,
3070
+ get: function () { return chunkVJT6P4N6_cjs.createGraphQLSchema; }
3071
+ });
3039
3072
  Object.defineProperty(exports, "evaluateAccess", {
3040
3073
  enumerable: true,
3041
3074
  get: function () { return chunkR3XIBBAW_cjs.evaluateAccess; }
@@ -3066,19 +3099,19 @@ Object.defineProperty(exports, "createWSServer", {
3066
3099
  });
3067
3100
  Object.defineProperty(exports, "DrizzleAdapter", {
3068
3101
  enumerable: true,
3069
- get: function () { return chunkCZ3HWX2X_cjs.DrizzleAdapter; }
3102
+ get: function () { return chunk3ZZPZYCM_cjs.DrizzleAdapter; }
3070
3103
  });
3071
3104
  Object.defineProperty(exports, "collectionToDrizzleSchema", {
3072
3105
  enumerable: true,
3073
- get: function () { return chunkCZ3HWX2X_cjs.collectionToDrizzleSchema; }
3106
+ get: function () { return chunk3ZZPZYCM_cjs.collectionToDrizzleSchema; }
3074
3107
  });
3075
3108
  Object.defineProperty(exports, "createDrizzleAdapter", {
3076
3109
  enumerable: true,
3077
- get: function () { return chunkCZ3HWX2X_cjs.createDrizzleAdapter; }
3110
+ get: function () { return chunk3ZZPZYCM_cjs.createDrizzleAdapter; }
3078
3111
  });
3079
3112
  Object.defineProperty(exports, "fieldToDrizzleType", {
3080
3113
  enumerable: true,
3081
- get: function () { return chunkCZ3HWX2X_cjs.fieldToDrizzleType; }
3114
+ get: function () { return chunk3ZZPZYCM_cjs.fieldToDrizzleType; }
3082
3115
  });
3083
3116
  Object.defineProperty(exports, "PostgresAuthAdapter", {
3084
3117
  enumerable: true,
@@ -3086,15 +3119,15 @@ Object.defineProperty(exports, "PostgresAuthAdapter", {
3086
3119
  });
3087
3120
  Object.defineProperty(exports, "createDatabase", {
3088
3121
  enumerable: true,
3089
- get: function () { return chunkX3CU27OO_cjs.createDatabase; }
3122
+ get: function () { return chunk3FW6WVVP_cjs.createDatabase; }
3090
3123
  });
3091
3124
  Object.defineProperty(exports, "runMigrations", {
3092
3125
  enumerable: true,
3093
- get: function () { return chunkX3CU27OO_cjs.runMigrations; }
3126
+ get: function () { return chunk3FW6WVVP_cjs.runMigrations; }
3094
3127
  });
3095
3128
  Object.defineProperty(exports, "seedDefaultRoles", {
3096
3129
  enumerable: true,
3097
- get: function () { return chunkX3CU27OO_cjs.seedDefaultRoles; }
3130
+ get: function () { return chunk3FW6WVVP_cjs.seedDefaultRoles; }
3098
3131
  });
3099
3132
  Object.defineProperty(exports, "MongoDBAdapter", {
3100
3133
  enumerable: true,