@kyro-cms/core 0.5.4 → 0.6.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 (151) hide show
  1. package/dist/WebhookService-118ZTFis.d.ts +112 -0
  2. package/dist/WebhookService-AefJfqX0.d.cts +112 -0
  3. package/dist/adapter-BSvBudTG.d.cts +65 -0
  4. package/dist/adapter-CXGB2Elb.d.ts +65 -0
  5. package/dist/api-handler.cjs +26 -8
  6. package/dist/api-handler.cjs.map +1 -1
  7. package/dist/api-handler.d.cts +9 -0
  8. package/dist/api-handler.d.ts +9 -0
  9. package/dist/api-handler.js +25 -7
  10. package/dist/api-handler.js.map +1 -1
  11. package/dist/base-DvvNqnM-.d.cts +73 -0
  12. package/dist/base-eVegJ_Pr.d.ts +73 -0
  13. package/dist/bootstrap-4MH44YKG.js +6 -0
  14. package/dist/{bootstrap-PBMMLBQC.js.map → bootstrap-4MH44YKG.js.map} +1 -1
  15. package/dist/bootstrap-EE6BJZWL.cjs +31 -0
  16. package/dist/{bootstrap-QN77EVI3.cjs.map → bootstrap-EE6BJZWL.cjs.map} +1 -1
  17. package/dist/chunk-3YELQL7Z.cjs +4 -0
  18. package/dist/chunk-3YELQL7Z.cjs.map +1 -0
  19. package/dist/{chunk-AGAIUDAV.cjs → chunk-55BNRTLW.cjs} +7 -7
  20. package/dist/chunk-55BNRTLW.cjs.map +1 -0
  21. package/dist/{chunk-XJ2VYR47.cjs → chunk-5HA5OMFH.cjs} +10 -7
  22. package/dist/chunk-5HA5OMFH.cjs.map +1 -0
  23. package/dist/{chunk-C4JJEE42.js → chunk-6WXQRYTW.js} +262 -43
  24. package/dist/chunk-6WXQRYTW.js.map +1 -0
  25. package/dist/{chunk-SO25EHOE.js → chunk-AM4JKIPP.js} +180 -77
  26. package/dist/chunk-AM4JKIPP.js.map +1 -0
  27. package/dist/{chunk-VSTRLXMQ.cjs → chunk-CKVOU6MX.cjs} +4 -2
  28. package/dist/chunk-CKVOU6MX.cjs.map +1 -0
  29. package/dist/chunk-GTGRLD4Y.js +3 -0
  30. package/dist/chunk-GTGRLD4Y.js.map +1 -0
  31. package/dist/chunk-MTIRYI7F.cjs +4 -0
  32. package/dist/chunk-MTIRYI7F.cjs.map +1 -0
  33. package/dist/{chunk-342BJNBI.js → chunk-QKVA2SOG.js} +300 -6
  34. package/dist/chunk-QKVA2SOG.js.map +1 -0
  35. package/dist/chunk-QU2RFFH4.js +3 -0
  36. package/dist/chunk-QU2RFFH4.js.map +1 -0
  37. package/dist/{chunk-ATVNYGRQ.js → chunk-QYZKIPSD.js} +7 -18
  38. package/dist/chunk-QYZKIPSD.js.map +1 -0
  39. package/dist/{chunk-SYRDCLH7.cjs → chunk-R2YHJN6W.cjs} +184 -81
  40. package/dist/chunk-R2YHJN6W.cjs.map +1 -0
  41. package/dist/{chunk-IX3ABYKZ.cjs → chunk-RALQO47U.cjs} +170 -2
  42. package/dist/chunk-RALQO47U.cjs.map +1 -0
  43. package/dist/{chunk-EVEJC22G.cjs → chunk-RDRJVCL5.cjs} +37 -5
  44. package/dist/chunk-RDRJVCL5.cjs.map +1 -0
  45. package/dist/{chunk-6COM32WF.js → chunk-RP7VZUEL.js} +5 -3
  46. package/dist/chunk-RP7VZUEL.js.map +1 -0
  47. package/dist/{chunk-XR5EJS3C.js → chunk-S3FG2NY7.js} +7 -4
  48. package/dist/chunk-S3FG2NY7.js.map +1 -0
  49. package/dist/{chunk-WH4Y5MT6.js → chunk-TP5YQFIX.js} +36 -4
  50. package/dist/chunk-TP5YQFIX.js.map +1 -0
  51. package/dist/{chunk-DBUYB32X.js → chunk-TVVYZ2TH.js} +171 -3
  52. package/dist/chunk-TVVYZ2TH.js.map +1 -0
  53. package/dist/{chunk-GBH6DN5C.cjs → chunk-WBCIEYHC.cjs} +8 -18
  54. package/dist/chunk-WBCIEYHC.cjs.map +1 -0
  55. package/dist/{chunk-3ZZPZYCM.cjs → chunk-WVPOPOEQ.cjs} +269 -41
  56. package/dist/chunk-WVPOPOEQ.cjs.map +1 -0
  57. package/dist/{chunk-W3KPQX7V.cjs → chunk-XAEBVZTI.cjs} +304 -4
  58. package/dist/chunk-XAEBVZTI.cjs.map +1 -0
  59. package/dist/{chunk-Q4DNT7FO.js → chunk-XU7AFF6V.js} +6 -6
  60. package/dist/chunk-XU7AFF6V.js.map +1 -0
  61. package/dist/cli/index.cjs +6 -4
  62. package/dist/cli/index.cjs.map +1 -1
  63. package/dist/cli/index.d.cts +1 -0
  64. package/dist/cli/index.d.ts +1 -0
  65. package/dist/cli/index.js +6 -4
  66. package/dist/cli/index.js.map +1 -1
  67. package/dist/client.d.cts +12 -0
  68. package/dist/client.d.ts +12 -0
  69. package/dist/drizzle/index.cjs +18 -18
  70. package/dist/drizzle/index.d.cts +152 -0
  71. package/dist/drizzle/index.d.ts +152 -0
  72. package/dist/drizzle/index.js +3 -3
  73. package/dist/fields/index.d.cts +27 -0
  74. package/dist/fields/index.d.ts +27 -0
  75. package/dist/graphql/index.d.cts +22 -0
  76. package/dist/graphql/index.d.ts +22 -0
  77. package/dist/index-Bz9JqRGI.d.cts +86 -0
  78. package/dist/index-Bz9JqRGI.d.ts +86 -0
  79. package/dist/index-CLp-DRKA.d.ts +64 -0
  80. package/dist/index-DfO7G4kN.d.cts +64 -0
  81. package/dist/index.cjs +118 -86
  82. package/dist/index.cjs.map +1 -1
  83. package/dist/index.d.cts +1368 -0
  84. package/dist/index.d.ts +1368 -0
  85. package/dist/index.js +48 -14
  86. package/dist/index.js.map +1 -1
  87. package/dist/integration.cjs +2 -2
  88. package/dist/integration.d.cts +27 -0
  89. package/dist/integration.d.ts +27 -0
  90. package/dist/integration.js +1 -1
  91. package/dist/media-GPPTZ43E.js +4 -0
  92. package/dist/{media-HOT3O7RW.js.map → media-GPPTZ43E.js.map} +1 -1
  93. package/dist/media-XNTUFJZR.cjs +17 -0
  94. package/dist/{media-WKP5AOX2.cjs.map → media-XNTUFJZR.cjs.map} +1 -1
  95. package/dist/mongodb/index.cjs +12 -3
  96. package/dist/mongodb/index.d.cts +59 -0
  97. package/dist/mongodb/index.d.ts +59 -0
  98. package/dist/mongodb/index.js +2 -1
  99. package/dist/postgres-auth-adapter-6742WDCF.cjs +14 -0
  100. package/dist/{postgres-auth-adapter-Z463NYJZ.cjs.map → postgres-auth-adapter-6742WDCF.cjs.map} +1 -1
  101. package/dist/postgres-auth-adapter-B65BULNS.js +5 -0
  102. package/dist/{postgres-auth-adapter-7F3ECO7I.js.map → postgres-auth-adapter-B65BULNS.js.map} +1 -1
  103. package/dist/rest/index.cjs +9 -5
  104. package/dist/rest/index.d.cts +57 -0
  105. package/dist/rest/index.d.ts +57 -0
  106. package/dist/rest/index.js +7 -3
  107. package/dist/{schema-TIYTCIKX.cjs → schema-37SE2F4B.cjs} +5 -5
  108. package/dist/{schema-TIYTCIKX.cjs.map → schema-37SE2F4B.cjs.map} +1 -1
  109. package/dist/{schema-6Q4W6AE6.js → schema-5PHL5IVB.js} +3 -3
  110. package/dist/{schema-6Q4W6AE6.js.map → schema-5PHL5IVB.js.map} +1 -1
  111. package/dist/templates/index.d.cts +59 -0
  112. package/dist/templates/index.d.ts +59 -0
  113. package/dist/trpc/index.d.cts +136 -0
  114. package/dist/trpc/index.d.ts +136 -0
  115. package/dist/types-Bs1up4yP.d.ts +461 -0
  116. package/dist/types-DqN4ckOC.d.cts +130 -0
  117. package/dist/types-DqN4ckOC.d.ts +130 -0
  118. package/dist/types-J3R9nVsZ.d.cts +461 -0
  119. package/dist/types-VtjUxIMp.d.cts +246 -0
  120. package/dist/types-VtjUxIMp.d.ts +246 -0
  121. package/dist/ws/index.d.cts +88 -0
  122. package/dist/ws/index.d.ts +88 -0
  123. package/package.json +3 -2
  124. package/dist/bootstrap-PBMMLBQC.js +0 -6
  125. package/dist/bootstrap-QN77EVI3.cjs +0 -31
  126. package/dist/chunk-342BJNBI.js.map +0 -1
  127. package/dist/chunk-3ZZPZYCM.cjs.map +0 -1
  128. package/dist/chunk-6COM32WF.js.map +0 -1
  129. package/dist/chunk-7SXPHG3M.cjs +0 -67
  130. package/dist/chunk-7SXPHG3M.cjs.map +0 -1
  131. package/dist/chunk-AGAIUDAV.cjs.map +0 -1
  132. package/dist/chunk-ATVNYGRQ.js.map +0 -1
  133. package/dist/chunk-C4JJEE42.js.map +0 -1
  134. package/dist/chunk-DBUYB32X.js.map +0 -1
  135. package/dist/chunk-EVEJC22G.cjs.map +0 -1
  136. package/dist/chunk-GBH6DN5C.cjs.map +0 -1
  137. package/dist/chunk-IX3ABYKZ.cjs.map +0 -1
  138. package/dist/chunk-L4E76X2K.js +0 -57
  139. package/dist/chunk-L4E76X2K.js.map +0 -1
  140. package/dist/chunk-Q4DNT7FO.js.map +0 -1
  141. package/dist/chunk-SO25EHOE.js.map +0 -1
  142. package/dist/chunk-SYRDCLH7.cjs.map +0 -1
  143. package/dist/chunk-VSTRLXMQ.cjs.map +0 -1
  144. package/dist/chunk-W3KPQX7V.cjs.map +0 -1
  145. package/dist/chunk-WH4Y5MT6.js.map +0 -1
  146. package/dist/chunk-XJ2VYR47.cjs.map +0 -1
  147. package/dist/chunk-XR5EJS3C.js.map +0 -1
  148. package/dist/media-HOT3O7RW.js +0 -4
  149. package/dist/media-WKP5AOX2.cjs +0 -17
  150. package/dist/postgres-auth-adapter-7F3ECO7I.js +0 -5
  151. package/dist/postgres-auth-adapter-Z463NYJZ.cjs +0 -14
package/dist/index.js CHANGED
@@ -1,26 +1,29 @@
1
1
  export { RedisAuthAdapter } from './chunk-E3BZLMX6.js';
2
- export { autoBootstrap, bootstrapAdmin, getBootstrapFromEnv } from './chunk-XR5EJS3C.js';
3
2
  export { allSettingsGlobals, blogCollections, blogGlobals, coreSettingsGlobals, createTemplateConfig, ecommerceCollections, ecommerceGlobals, ecommerceSettingsGlobals, kitchenSinkCollections, mediaCollections, minimalCollections } from './chunk-WSCJQI2B.js';
4
- export { kyro } from './chunk-ATVNYGRQ.js';
5
- export { ConfigValidationError, Kyro, Registry, collectionToCreateZod, collectionToUpdateZod, collectionToWhereZod, collectionToZod, createKyro, createRegistry, fieldToZod, getRegistry, globalToZod, resetRegistry, validateCollection, validateConfig, validateFields, validateGlobal } from './chunk-Q4DNT7FO.js';
3
+ export { kyro } from './chunk-QYZKIPSD.js';
4
+ export { ConfigValidationError, Kyro, Registry, collectionToCreateZod, collectionToUpdateZod, collectionToWhereZod, collectionToZod, createKyro, createRegistry, fieldToZod, getRegistry, globalToZod, resetRegistry, validateCollection, validateConfig, validateFields, validateGlobal } from './chunk-XU7AFF6V.js';
5
+ export { autoBootstrap, bootstrapAdmin, getBootstrapFromEnv } from './chunk-S3FG2NY7.js';
6
6
  export { CSSGenerator, createAdminStyling, defaultDarkTheme, defaultFieldStyling, defaultLightTheme, ecommerce2026Theme, generateCSSVariables, generateTailwindConfig } from './chunk-2HFJUUFZ.js';
7
7
  export { ALL_FIELD_TYPES, COMPLEX_FIELD_TYPES, LAYOUT_FIELD_TYPES, PRIMITIVE_FIELD_TYPES, RELATIONAL_FIELD_TYPES, createColumnsNode, isArrayField, isBlocksField, isGroupField, isImageField, isLayoutField, isNumberField, isRelationshipField, isRichTextField, isSelectField, isTextField, isUploadField, normalizeRichTextDocument, normalizeRichTextValue, renderRichText, richTextStyles } from './chunk-Q23JB3KL.js';
8
8
  export { createContext, createCountProcedure, createCreateProcedure, createDeleteProcedure, createDynamicRouter, createFindByIDProcedure, createFindProcedure, createKyroServer, createUpdateProcedure } from './chunk-3AJE4SEG.js';
9
- import { init_secret, AuditLogger, InMemoryRateLimiter, InMemoryAuditLogger, AuthRoutes } from './chunk-SO25EHOE.js';
10
- export { AuditLogger, InMemoryAuditLogger, InMemoryRateLimiter, MediaService, createAuditContext, createHonoApp, createLocalStorage, createRESTAPI, getAppSecret, getEncryptionKey, getSessionConfig, loadSecrets, resolveProvider, setDbAdapter } from './chunk-SO25EHOE.js';
11
- import { EmailTransport, PasswordPolicy, SQLiteAuthAdapter } from './chunk-WH4Y5MT6.js';
12
- export { ConfigService, EmailTransport, PasswordPolicy, SQLiteAuthAdapter } from './chunk-WH4Y5MT6.js';
9
+ import { init_secret, AuditLogger, InMemoryRateLimiter, InMemoryAuditLogger, AuthRoutes } from './chunk-AM4JKIPP.js';
10
+ export { AuditLogger, InMemoryAuditLogger, InMemoryRateLimiter, MediaService, createAuditContext, createHonoApp, createLocalStorage, createRESTAPI, getAppSecret, getEncryptionKey, getSessionConfig, loadSecrets, resolveProvider, setDbAdapter } from './chunk-AM4JKIPP.js';
11
+ import { EmailTransport, PasswordPolicy, SQLiteAuthAdapter } from './chunk-TP5YQFIX.js';
12
+ export { ConfigService, EmailTransport, PasswordPolicy, SQLiteAuthAdapter } from './chunk-TP5YQFIX.js';
13
13
  import './chunk-YT7HXXVN.js';
14
14
  import './chunk-P2YW545G.js';
15
15
  export { ALL_WEBHOOK_EVENTS, WEBHOOK_COLLECTION, WEBHOOK_DELIVERY_COLLECTION, WEBHOOK_EVENTS, WebhookService, buildDeliveryRecord, createTestPayload, createWebhookService, deliverWebhook, deliverWithRetry, generateWebhookSecret, signPayload } from './chunk-QXIQWPAP.js';
16
16
  export { buildGraphQLSchema, createGraphQLSchema } from './chunk-REK7AYOC.js';
17
17
  export { evaluateAccess, getWhereClause, mergeWhereClauses } from './chunk-SDMNUYVU.js';
18
18
  export { KyroPubSub, KyroWSServer, PubSub, createWSServer } from './chunk-3TPQ2BU6.js';
19
- export { DrizzleAdapter, collectionToDrizzleSchema, createDrizzleAdapter, fieldToDrizzleType } from './chunk-C4JJEE42.js';
20
- export { PostgresAuthAdapter } from './chunk-DBUYB32X.js';
19
+ import './chunk-QU2RFFH4.js';
20
+ export { DrizzleAdapter, collectionToDrizzleSchema, createDatabase, createDrizzleAdapter, fieldToDrizzleType, runMigrations, seedDefaultRoles } from './chunk-6WXQRYTW.js';
21
+ import { PostgresAuthAdapter } from './chunk-TVVYZ2TH.js';
22
+ export { PostgresAuthAdapter } from './chunk-TVVYZ2TH.js';
21
23
  import './chunk-WOWUL7ZY.js';
22
- export { createDatabase, runMigrations, seedDefaultRoles } from './chunk-L4E76X2K.js';
23
- export { MongoDBAdapter, createMongoDBAdapter } from './chunk-342BJNBI.js';
24
+ import './chunk-GTGRLD4Y.js';
25
+ import { MongoDBAuthAdapter } from './chunk-QKVA2SOG.js';
26
+ export { MongoDBAdapter, createMongoDBAdapter } from './chunk-QKVA2SOG.js';
24
27
  import { AbstractBaseAdapter } from './chunk-A4USRVTQ.js';
25
28
  export { AbstractBaseAdapter } from './chunk-A4USRVTQ.js';
26
29
  import './chunk-Z6ZWNWWR.js';
@@ -1961,14 +1964,42 @@ async function createAuthAdapter(databaseType) {
1961
1964
  path: getEnv("KYRO_AUTH_DB_PATH", defaultAuthDbPath)
1962
1965
  });
1963
1966
  case "postgres": {
1967
+ try {
1968
+ const databaseUrl = getEnv("DATABASE_URL", "");
1969
+ if (databaseUrl) {
1970
+ const { drizzle } = await import('drizzle-orm/postgres-js');
1971
+ const postgres = await import('postgres');
1972
+ const sql = postgres.default(databaseUrl, { onnotice: () => {
1973
+ } });
1974
+ const drizzleDb = drizzle(sql);
1975
+ return new PostgresAuthAdapter({ db: drizzleDb });
1976
+ }
1977
+ } catch (e) {
1978
+ console.warn("[Auth] Could not create PostgresAuthAdapter, falling back to SQLite auth adapter.");
1979
+ }
1964
1980
  return new SQLiteAuthAdapter({
1965
1981
  path: getEnv("KYRO_AUTH_DB_PATH", defaultAuthDbPath)
1966
1982
  });
1967
1983
  }
1968
- case "mongodb":
1984
+ case "mongodb": {
1985
+ try {
1986
+ const mongoUri = getEnv("MONGODB_URI", "");
1987
+ if (mongoUri) {
1988
+ const { MongoClient } = await import('mongodb');
1989
+ const client = new MongoClient(mongoUri);
1990
+ await client.connect();
1991
+ const url = new URL(mongoUri);
1992
+ const dbName = url.pathname.replace(/^\//, "") || "kyro_cms";
1993
+ const mongoDb = client.db(dbName);
1994
+ return new MongoDBAuthAdapter({ db: mongoDb });
1995
+ }
1996
+ } catch (e) {
1997
+ console.warn("[Auth] Could not create MongoDBAuthAdapter, falling back to SQLite auth adapter.");
1998
+ }
1969
1999
  return new SQLiteAuthAdapter({
1970
2000
  path: getEnv("KYRO_AUTH_DB_PATH", defaultAuthDbPath)
1971
2001
  });
2002
+ }
1972
2003
  case "memory":
1973
2004
  default:
1974
2005
  return new InMemoryAuthAdapter();
@@ -2045,7 +2076,7 @@ async function createAuthConfig(databaseType) {
2045
2076
  const routes = new AuthRoutes({
2046
2077
  redis: authAdapter,
2047
2078
  email,
2048
- jwtSecret: getEnv("JWT_SECRET", "change-me"),
2079
+ jwtSecret: getEnv("APP_SECRET", "change-me"),
2049
2080
  jwtExpiresIn: getEnv("JWT_EXPIRES_IN", "24h"),
2050
2081
  jwtIssuer: getEnv("JWT_ISSUER", "kyro-cms"),
2051
2082
  jwtAudience: getEnv("JWT_AUDIENCE", "kyro-cms-client"),
@@ -2068,7 +2099,10 @@ async function createAuthConfig(databaseType) {
2068
2099
  routes
2069
2100
  };
2070
2101
  }
2071
- var authConfig = createAuthConfig();
2102
+ var authConfig = createAuthConfig().catch((err) => {
2103
+ console.warn("[AuthConfig] Failed to initialize auth config:", err.message);
2104
+ return null;
2105
+ });
2072
2106
 
2073
2107
  // src/auth/index.ts
2074
2108
  var DEFAULT_SALT_ROUNDS = 12;