@sonicjs-cms/core 1.0.0-alpha.4 → 2.0.0-alpha.10

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 (90) hide show
  1. package/README.md +268 -166
  2. package/dist/chunk-3MNMOLSA.js +133 -0
  3. package/dist/chunk-3MNMOLSA.js.map +1 -0
  4. package/dist/chunk-4USDL3UP.cjs +15565 -0
  5. package/dist/chunk-4USDL3UP.cjs.map +1 -0
  6. package/dist/{chunk-CXZDAR6S.js → chunk-7N3HK7ZK.js} +3 -3
  7. package/dist/{chunk-CXZDAR6S.js.map → chunk-7N3HK7ZK.js.map} +1 -1
  8. package/dist/chunk-AGOE25LF.cjs +137 -0
  9. package/dist/chunk-AGOE25LF.cjs.map +1 -0
  10. package/dist/{chunk-NRSL6BQI.js → chunk-BITQ4MFX.js} +3 -3
  11. package/dist/{chunk-NRSL6BQI.js.map → chunk-BITQ4MFX.js.map} +1 -1
  12. package/dist/{chunk-24PWAFUT.cjs → chunk-BUKT6HP5.cjs} +13 -13
  13. package/dist/{chunk-24PWAFUT.cjs.map → chunk-BUKT6HP5.cjs.map} +1 -1
  14. package/dist/{chunk-L3NXO7Y4.cjs → chunk-FVMV5DKA.cjs} +49 -49
  15. package/dist/{chunk-L3NXO7Y4.cjs.map → chunk-FVMV5DKA.cjs.map} +1 -1
  16. package/dist/chunk-GGBHOIDD.js +15552 -0
  17. package/dist/chunk-GGBHOIDD.js.map +1 -0
  18. package/dist/{chunk-EMMSS5I5.cjs → chunk-IGJUBJBW.cjs} +8 -2
  19. package/dist/{chunk-ALTMI5Y2.cjs.map → chunk-IGJUBJBW.cjs.map} +1 -1
  20. package/dist/{chunk-WJ7QYVR2.cjs → chunk-RNR4HA23.cjs} +4 -4
  21. package/dist/{chunk-WJ7QYVR2.cjs.map → chunk-RNR4HA23.cjs.map} +1 -1
  22. package/dist/{chunk-G3PMV62Z.js → chunk-V4OQ3NZ2.js} +7 -3
  23. package/dist/{chunk-G3PMV62Z.js.map → chunk-V4OQ3NZ2.js.map} +1 -1
  24. package/dist/{chunk-PTQZ5FEI.js → chunk-WESS2U3K.js} +3 -3
  25. package/dist/{chunk-PTQZ5FEI.js.map → chunk-WESS2U3K.js.map} +1 -1
  26. package/dist/index.cjs +105 -92
  27. package/dist/index.cjs.map +1 -1
  28. package/dist/index.js +22 -8
  29. package/dist/index.js.map +1 -1
  30. package/dist/middleware.cjs +23 -23
  31. package/dist/middleware.js +3 -3
  32. package/dist/plugins.cjs +8 -8
  33. package/dist/plugins.js +2 -2
  34. package/dist/routes.cjs +51 -3
  35. package/dist/routes.js +6 -2
  36. package/dist/services.cjs +31 -19
  37. package/dist/services.js +3 -3
  38. package/dist/templates.cjs +1 -1
  39. package/dist/templates.js +1 -1
  40. package/dist/types.cjs +1 -1
  41. package/dist/types.js +1 -1
  42. package/dist/utils.cjs +1 -1
  43. package/dist/utils.js +1 -1
  44. package/migrations/001_initial_schema.sql +198 -0
  45. package/migrations/002_faq_plugin.sql +86 -0
  46. package/migrations/003_stage5_enhancements.sql +121 -0
  47. package/migrations/004_stage6_user_management.sql +183 -0
  48. package/migrations/005_stage7_workflow_automation.sql +294 -0
  49. package/migrations/006_plugin_system.sql +155 -0
  50. package/migrations/007_demo_login_plugin.sql +23 -0
  51. package/migrations/008_fix_slug_validation.sql +22 -0
  52. package/migrations/009_system_logging.sql +57 -0
  53. package/migrations/011_config_managed_collections.sql +14 -0
  54. package/migrations/012_testimonials_plugin.sql +80 -0
  55. package/migrations/013_code_examples_plugin.sql +177 -0
  56. package/migrations/014_fix_plugin_registry.sql +88 -0
  57. package/migrations/015_add_remaining_plugins.sql +89 -0
  58. package/migrations/016_remove_duplicate_cache_plugin.sql +17 -0
  59. package/migrations/017_auth_configurable_fields.sql +49 -0
  60. package/package.json +24 -24
  61. package/dist/chunk-4URGXJP7.js +0 -3
  62. package/dist/chunk-4URGXJP7.js.map +0 -1
  63. package/dist/chunk-ALTMI5Y2.cjs +0 -4
  64. package/dist/chunk-BOLQHE4J.cjs +0 -11
  65. package/dist/chunk-BOLQHE4J.cjs.map +0 -1
  66. package/dist/chunk-EMMSS5I5.cjs.map +0 -1
  67. package/dist/chunk-HD7R6T6I.js +0 -9
  68. package/dist/chunk-HD7R6T6I.js.map +0 -1
  69. package/dist/collection-config-FLlGtsh9.d.cts +0 -107
  70. package/dist/collection-config-FLlGtsh9.d.ts +0 -107
  71. package/dist/index-BlsY5XNH.d.ts +0 -8333
  72. package/dist/index-D45jaIlr.d.cts +0 -8333
  73. package/dist/index.d.cts +0 -136
  74. package/dist/index.d.ts +0 -136
  75. package/dist/middleware.d.cts +0 -206
  76. package/dist/middleware.d.ts +0 -206
  77. package/dist/plugin-UzmDImQc.d.cts +0 -357
  78. package/dist/plugin-UzmDImQc.d.ts +0 -357
  79. package/dist/plugins.d.cts +0 -330
  80. package/dist/plugins.d.ts +0 -330
  81. package/dist/routes.d.cts +0 -17
  82. package/dist/routes.d.ts +0 -17
  83. package/dist/services.d.cts +0 -5
  84. package/dist/services.d.ts +0 -5
  85. package/dist/templates.d.cts +0 -140
  86. package/dist/templates.d.ts +0 -140
  87. package/dist/types.d.cts +0 -41
  88. package/dist/types.d.ts +0 -41
  89. package/dist/utils.d.cts +0 -184
  90. package/dist/utils.d.ts +0 -184
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/services/cache.ts"],"names":[],"mappings":"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","file":"chunk-3MNMOLSA.js","sourcesContent":["/**\n * Simple Cache Service\n *\n * Provides basic caching functionality for the core package\n * Can be extended with KV or other storage backends\n */\n\nexport interface CacheConfig {\n ttl: number // Time to live in seconds\n keyPrefix: string\n}\n\nexport class CacheService {\n private config: CacheConfig\n private memoryCache: Map<string, { value: any; expires: number }> = new Map()\n\n constructor(config: CacheConfig) {\n this.config = config\n }\n\n /**\n * Generate cache key with prefix\n */\n generateKey(type: string, identifier?: string): string {\n const parts = [this.config.keyPrefix, type]\n if (identifier) {\n parts.push(identifier)\n }\n return parts.join(':')\n }\n\n /**\n * Get value from cache\n */\n async get<T>(key: string): Promise<T | null> {\n const cached = this.memoryCache.get(key)\n\n if (!cached) {\n return null\n }\n\n // Check if expired\n if (Date.now() > cached.expires) {\n this.memoryCache.delete(key)\n return null\n }\n\n return cached.value as T\n }\n\n /**\n * Get value from cache with source information\n */\n async getWithSource<T>(key: string): Promise<{\n hit: boolean\n data: T | null\n source: string\n ttl?: number\n }> {\n const cached = this.memoryCache.get(key)\n\n if (!cached) {\n return {\n hit: false,\n data: null,\n source: 'none'\n }\n }\n\n // Check if expired\n if (Date.now() > cached.expires) {\n this.memoryCache.delete(key)\n return {\n hit: false,\n data: null,\n source: 'expired'\n }\n }\n\n return {\n hit: true,\n data: cached.value as T,\n source: 'memory',\n ttl: (cached.expires - Date.now()) / 1000 // TTL in seconds\n }\n }\n\n /**\n * Set value in cache\n */\n async set(key: string, value: any, ttl?: number): Promise<void> {\n const expires = Date.now() + ((ttl || this.config.ttl) * 1000)\n this.memoryCache.set(key, { value, expires })\n }\n\n /**\n * Delete specific key from cache\n */\n async delete(key: string): Promise<void> {\n this.memoryCache.delete(key)\n }\n\n /**\n * Invalidate cache keys matching a pattern\n * For memory cache, we do simple string matching\n */\n async invalidate(pattern: string): Promise<void> {\n // Convert glob pattern to regex\n const regexPattern = pattern\n .replace(/\\*/g, '.*')\n .replace(/\\?/g, '.')\n const regex = new RegExp(`^${regexPattern}$`)\n\n // Find and delete matching keys\n for (const key of this.memoryCache.keys()) {\n if (regex.test(key)) {\n this.memoryCache.delete(key)\n }\n }\n }\n\n /**\n * Clear all cache\n */\n async clear(): Promise<void> {\n this.memoryCache.clear()\n }\n\n /**\n * Get value from cache or set it using a callback\n */\n async getOrSet<T>(key: string, callback: () => Promise<T>, ttl?: number): Promise<T> {\n const cached = await this.get<T>(key)\n\n if (cached !== null) {\n return cached\n }\n\n const value = await callback()\n await this.set(key, value, ttl)\n return value\n }\n}\n\n/**\n * Cache configurations for different data types\n */\nexport const CACHE_CONFIGS = {\n api: {\n ttl: 300, // 5 minutes\n keyPrefix: 'api'\n },\n user: {\n ttl: 600, // 10 minutes\n keyPrefix: 'user'\n },\n content: {\n ttl: 300, // 5 minutes\n keyPrefix: 'content'\n },\n collection: {\n ttl: 600, // 10 minutes\n keyPrefix: 'collection'\n }\n}\n\n/**\n * Get cache service instance for a config\n */\nexport function getCacheService(config: CacheConfig): CacheService {\n return new CacheService(config)\n}\n"]}