@sonicjs-cms/core 2.2.0 → 2.3.1

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 (105) hide show
  1. package/README.md +75 -1
  2. package/dist/app-Db0AfT5F.d.cts +100 -0
  3. package/dist/app-Db0AfT5F.d.ts +100 -0
  4. package/dist/chunk-23VPL6VI.cjs +1828 -0
  5. package/dist/chunk-23VPL6VI.cjs.map +1 -0
  6. package/dist/chunk-3MPQII4R.js +1826 -0
  7. package/dist/chunk-3MPQII4R.js.map +1 -0
  8. package/dist/{chunk-YTMFJLJZ.cjs → chunk-44LBCF3B.cjs} +5 -3
  9. package/dist/chunk-44LBCF3B.cjs.map +1 -0
  10. package/dist/{chunk-2DIWLDCA.cjs → chunk-5QJX2VMP.cjs} +541 -533
  11. package/dist/chunk-5QJX2VMP.cjs.map +1 -0
  12. package/dist/{chunk-UEYMFNBN.cjs → chunk-5UUYHAZT.cjs} +7 -36
  13. package/dist/chunk-5UUYHAZT.cjs.map +1 -0
  14. package/dist/{chunk-ZUK55KZB.js → chunk-6RJU7HL5.js} +5 -3
  15. package/dist/chunk-6RJU7HL5.js.map +1 -0
  16. package/dist/{chunk-K4Z3IHOK.js → chunk-7CXL5K7N.js} +5 -248
  17. package/dist/chunk-7CXL5K7N.js.map +1 -0
  18. package/dist/{chunk-WBX5YMTB.cjs → chunk-7KCDFDRI.cjs} +27 -15
  19. package/dist/chunk-7KCDFDRI.cjs.map +1 -0
  20. package/dist/{chunk-HKEK7UNV.js → chunk-CPXAVWCU.js} +3 -3
  21. package/dist/{chunk-HKEK7UNV.js.map → chunk-CPXAVWCU.js.map} +1 -1
  22. package/dist/{chunk-F5ESJXI2.cjs → chunk-DTLB6UIH.cjs} +3 -3
  23. package/dist/{chunk-F5ESJXI2.cjs.map → chunk-DTLB6UIH.cjs.map} +1 -1
  24. package/dist/{chunk-AINTFRTC.cjs → chunk-ES3BRZQJ.cjs} +252 -2
  25. package/dist/chunk-ES3BRZQJ.cjs.map +1 -0
  26. package/dist/{chunk-HV2I6API.cjs → chunk-NAYD76QF.cjs} +4 -251
  27. package/dist/chunk-NAYD76QF.cjs.map +1 -0
  28. package/dist/{chunk-L232U757.js → chunk-Q52ZQFMB.js} +249 -3
  29. package/dist/chunk-Q52ZQFMB.js.map +1 -0
  30. package/dist/{chunk-NMVOTNSL.js → chunk-RRKXFGIO.js} +28 -16
  31. package/dist/chunk-RRKXFGIO.js.map +1 -0
  32. package/dist/{chunk-OORGXYDA.js → chunk-WK5EUGBO.js} +5 -32
  33. package/dist/chunk-WK5EUGBO.js.map +1 -0
  34. package/dist/{chunk-R57VFNP3.js → chunk-ZPERJATF.js} +441 -433
  35. package/dist/chunk-ZPERJATF.js.map +1 -0
  36. package/dist/collection-config-FLlGtsh9.d.cts +107 -0
  37. package/dist/collection-config-FLlGtsh9.d.ts +107 -0
  38. package/dist/filter-bar.template-By4jeiw_.d.cts +140 -0
  39. package/dist/filter-bar.template-By4jeiw_.d.ts +140 -0
  40. package/dist/index.cjs +146 -165
  41. package/dist/index.cjs.map +1 -1
  42. package/dist/index.d.cts +44 -0
  43. package/dist/index.d.ts +43 -5
  44. package/dist/index.js +19 -14
  45. package/dist/index.js.map +1 -1
  46. package/dist/middleware.cjs +24 -33
  47. package/dist/middleware.d.cts +89 -0
  48. package/dist/middleware.d.ts +89 -2
  49. package/dist/middleware.js +3 -4
  50. package/dist/migrations-CCLAGJGP.js +4 -0
  51. package/dist/{migrations-IHERIQVD.js.map → migrations-CCLAGJGP.js.map} +1 -1
  52. package/dist/migrations-O6INOHRD.cjs +13 -0
  53. package/dist/{migrations-POFD5KNG.cjs.map → migrations-O6INOHRD.cjs.map} +1 -1
  54. package/dist/plugin-bootstrap-C0E3jdz-.d.cts +8339 -0
  55. package/dist/plugin-bootstrap-CDh0JHtW.d.ts +8339 -0
  56. package/dist/plugin-manifest-BCMx9CAq.d.cts +35 -0
  57. package/dist/plugin-manifest-BCMx9CAq.d.ts +35 -0
  58. package/dist/plugin-zvZpaiP5.d.cts +357 -0
  59. package/dist/plugin-zvZpaiP5.d.ts +357 -0
  60. package/dist/plugins.cjs +7 -7
  61. package/dist/plugins.d.cts +330 -0
  62. package/dist/plugins.d.ts +330 -2
  63. package/dist/plugins.js +1 -1
  64. package/dist/routes.cjs +27 -27
  65. package/dist/routes.d.cts +224 -0
  66. package/dist/routes.d.ts +224 -2
  67. package/dist/routes.js +7 -7
  68. package/dist/services.cjs +41 -41
  69. package/dist/services.d.cts +236 -0
  70. package/dist/services.d.ts +236 -2
  71. package/dist/services.js +4 -4
  72. package/dist/telemetry-BFBIjBxK.d.cts +36 -0
  73. package/dist/telemetry-BFBIjBxK.d.ts +36 -0
  74. package/dist/templates.d.cts +133 -0
  75. package/dist/templates.d.ts +133 -2
  76. package/dist/types.d.cts +7 -0
  77. package/dist/types.d.ts +7 -2
  78. package/dist/utils.cjs +27 -27
  79. package/dist/utils.d.cts +53 -0
  80. package/dist/utils.d.ts +53 -2
  81. package/dist/utils.js +2 -2
  82. package/dist/version-vktVAxhe.d.cts +195 -0
  83. package/dist/version-vktVAxhe.d.ts +195 -0
  84. package/migrations/001_initial_schema.sql +1 -1
  85. package/migrations/002_faq_plugin.sql +86 -0
  86. package/package.json +3 -1
  87. package/dist/chunk-2DIWLDCA.cjs.map +0 -1
  88. package/dist/chunk-AINTFRTC.cjs.map +0 -1
  89. package/dist/chunk-HV2I6API.cjs.map +0 -1
  90. package/dist/chunk-K4Z3IHOK.js.map +0 -1
  91. package/dist/chunk-L232U757.js.map +0 -1
  92. package/dist/chunk-NMVOTNSL.js.map +0 -1
  93. package/dist/chunk-OORGXYDA.js.map +0 -1
  94. package/dist/chunk-R57VFNP3.js.map +0 -1
  95. package/dist/chunk-T7IYBGGO.cjs +0 -746
  96. package/dist/chunk-T7IYBGGO.cjs.map +0 -1
  97. package/dist/chunk-UEYMFNBN.cjs.map +0 -1
  98. package/dist/chunk-WBX5YMTB.cjs.map +0 -1
  99. package/dist/chunk-YTMFJLJZ.cjs.map +0 -1
  100. package/dist/chunk-ZPMFT2JW.js +0 -744
  101. package/dist/chunk-ZPMFT2JW.js.map +0 -1
  102. package/dist/chunk-ZUK55KZB.js.map +0 -1
  103. package/dist/migrations-IHERIQVD.js +0 -4
  104. package/dist/migrations-POFD5KNG.cjs +0 -13
  105. /package/migrations/{021_add_otp_login.sql → 026_add_otp_login.sql} +0 -0
package/dist/index.d.ts CHANGED
@@ -1,6 +1,44 @@
1
- // Main exports from @sonicjs-cms/core package
2
- export * from '../src/index'
1
+ export { B as Bindings, b as SonicJSApp, S as SonicJSConfig, V as Variables, c as createSonicJSApp, s as setupCoreMiddleware, a as setupCoreRoutes } from './app-Db0AfT5F.js';
2
+ import { s as schema } from './plugin-bootstrap-CDh0JHtW.js';
3
+ export { ab as Collection, ad as Content, C as CorePlugin, aj as DbPlugin, al as DbPluginHook, p as LogCategory, av as LogConfig, q as LogEntry, t as LogFilter, o as LogLevel, L as Logger, af as Media, m as Migration, M as MigrationService, n as MigrationStatus, ac as NewCollection, ae as NewContent, aw as NewLogConfig, ag as NewMedia, ak as NewPlugin, as as NewPluginActivityLog, aq as NewPluginAsset, am as NewPluginHook, ao as NewPluginRoute, au as NewSystemLog, aa as NewUser, ai as NewWorkflowHistory, ar as PluginActivityLog, ap as PluginAsset, k as PluginBootstrapService, an as PluginRoute, P as PluginServiceClass, at as SystemLog, a9 as User, ah as WorkflowHistory, A as apiTokens, e as cleanupRemovedCollections, w as collections, x as content, y as contentVersions, f as fullCollectionSync, g as getAvailableCollectionNames, h as getLogger, d as getManagedCollections, j as initLogger, O as insertCollectionSchema, R as insertContentSchema, a7 as insertLogConfigSchema, T as insertMediaSchema, a3 as insertPluginActivityLogSchema, a1 as insertPluginAssetSchema, Z as insertPluginHookSchema, $ as insertPluginRouteSchema, X as insertPluginSchema, a5 as insertSystemLogSchema, K as insertUserSchema, V as insertWorkflowHistorySchema, i as isCollectionManaged, a as loadCollectionConfig, l as loadCollectionConfigs, J as logConfig, z as media, H as pluginActivityLog, G as pluginAssets, E as pluginHooks, F as pluginRoutes, D as plugins, r as registerCollections, Q as selectCollectionSchema, S as selectContentSchema, a8 as selectLogConfigSchema, U as selectMediaSchema, a4 as selectPluginActivityLogSchema, a2 as selectPluginAssetSchema, _ as selectPluginHookSchema, a0 as selectPluginRouteSchema, Y as selectPluginSchema, a6 as selectSystemLogSchema, N as selectUserSchema, W as selectWorkflowHistorySchema, c as syncCollection, b as syncCollections, I as systemLogs, u as users, v as validateCollectionConfig, B as workflowHistory } from './plugin-bootstrap-CDh0JHtW.js';
4
+ export { AuthManager, Permission, PermissionManager, UserPermissions, bootstrapMiddleware, cacheHeaders, compressionMiddleware, detailedLoggingMiddleware, getActivePlugins, isPluginActive, logActivity, loggingMiddleware, optionalAuth, performanceLoggingMiddleware, requireActivePlugin, requireActivePlugins, requireAnyPermission, requireAuth, requirePermission, requireRole, securityHeaders, securityLoggingMiddleware } from './middleware.js';
5
+ export { HookSystemImpl, HookUtils, PluginManager as PluginManagerClass, PluginRegistryImpl, PluginValidator as PluginValidatorClass, ScopedHookSystem as ScopedHookSystemClass } from './plugins.js';
6
+ export { ROUTES_INFO, adminApiRoutes, adminCheckboxRoutes, adminCodeExamplesRoutes, adminCollectionsRoutes, adminContentRoutes, adminDashboardRoutes, adminDesignRoutes, adminLogsRoutes, adminMediaRoutes, adminPluginRoutes, adminSettingsRoutes, adminTestimonialsRoutes, adminUsersRoutes, apiContentCrudRoutes, apiMediaRoutes, apiRoutes, apiSystemRoutes, authRoutes } from './routes.js';
7
+ export { A as AlertData, C as ConfirmationDialogOptions, k as Filter, j as FilterBarData, l as FilterOption, h as FormData, F as FormField, P as PaginationData, T as TableColumn, i as TableData, g as getConfirmationDialogScript, d as renderAlert, e as renderConfirmationDialog, f as renderFilterBar, r as renderForm, a as renderFormField, c as renderPagination, b as renderTable } from './filter-bar.template-By4jeiw_.js';
8
+ export { b as CollectionConfig, c as CollectionConfigModule, C as CollectionSchema, d as CollectionSyncResult, a as FieldConfig, F as FieldType } from './collection-config-FLlGtsh9.js';
9
+ export { A as AuthService, C as ContentService, v as HOOKS, k as HookContext, H as HookHandler, u as HookName, l as HookSystem, p as MediaService, P as Plugin, g as PluginAdminPage, r as PluginBuilderOptions, h as PluginComponent, b as PluginConfig, a as PluginContext, j as PluginHook, q as PluginLogger, n as PluginManager, i as PluginMenuItem, d as PluginMiddleware, e as PluginModel, m as PluginRegistry, c as PluginRoutes, f as PluginService, o as PluginStatus, t as PluginValidationResult, s as PluginValidator, S as ScopedHookSystem } from './plugin-zvZpaiP5.js';
10
+ export { P as PluginManifest } from './plugin-manifest-BCMx9CAq.js';
11
+ export { c as FilterCondition, d as FilterGroup, F as FilterOperator, f as QueryFilter, Q as QueryFilterBuilder, h as QueryResult, S as SONICJS_VERSION, T as TemplateRenderer, b as buildQuery, e as escapeHtml, g as getCoreVersion, m as metricsTracker, r as renderTemplate, s as sanitizeInput, a as sanitizeObject, t as templateRenderer } from './version-vktVAxhe.js';
12
+ import * as drizzle_orm_d1 from 'drizzle-orm/d1';
13
+ import 'hono';
14
+ import '@cloudflare/workers-types';
15
+ import 'drizzle-zod';
16
+ import 'drizzle-orm/sqlite-core';
17
+ import 'hono/types';
18
+ import 'zod';
3
19
 
4
- // Explicitly re-export key types and classes
5
- export type { Plugin, PluginContext } from '../src/types/index'
6
- export { TemplateRenderer, templateRenderer, renderTemplate } from '../src/utils/template-renderer'
20
+ declare function createDb(d1: D1Database): drizzle_orm_d1.DrizzleD1Database<typeof schema> & {
21
+ $client: D1Database;
22
+ };
23
+
24
+ /**
25
+ * @sonicjs/core - Main Entry Point
26
+ *
27
+ * Core framework for SonicJS headless CMS
28
+ * Built for Cloudflare's edge platform with TypeScript
29
+ *
30
+ * Phase 2 Migration Status:
31
+ * - Week 1: Types, Utils, Database (COMPLETED ✓)
32
+ * - Week 2: Services, Middleware, Plugins (COMPLETED ✓)
33
+ * - Week 3: Routes, Templates (COMPLETED ✓)
34
+ * - Week 4: Integration & Testing (COMPLETED ✓)
35
+ *
36
+ * Test Coverage:
37
+ * - Utilities: 48 tests (sanitize, query-filter, metrics)
38
+ * - Middleware: 51 tests (auth, logging, security, performance)
39
+ * - Total: 99 tests passing
40
+ */
41
+
42
+ declare const VERSION: string;
43
+
44
+ export { VERSION, createDb };
package/dist/index.js CHANGED
@@ -1,19 +1,19 @@
1
- import { PluginBuilder, api_default, api_media_default, api_system_default, admin_api_default, router, adminCollectionsRoutes, adminSettingsRoutes, admin_content_default, adminMediaRoutes, adminPluginRoutes, adminLogsRoutes, userRoutes, auth_default, test_cleanup_default } from './chunk-R57VFNP3.js';
2
- export { ROUTES_INFO, admin_api_default as adminApiRoutes, adminCheckboxRoutes, admin_code_examples_default as adminCodeExamplesRoutes, adminCollectionsRoutes, admin_content_default as adminContentRoutes, router as adminDashboardRoutes, adminDesignRoutes, adminLogsRoutes, adminMediaRoutes, adminPluginRoutes, adminSettingsRoutes, admin_testimonials_default as adminTestimonialsRoutes, userRoutes as adminUsersRoutes, api_content_crud_default as apiContentCrudRoutes, api_media_default as apiMediaRoutes, api_default as apiRoutes, api_system_default as apiSystemRoutes, auth_default as authRoutes } from './chunk-R57VFNP3.js';
3
- import { schema_exports } from './chunk-L232U757.js';
4
- export { Logger, apiTokens, collections, content, contentVersions, getLogger, initLogger, insertCollectionSchema, insertContentSchema, insertLogConfigSchema, insertMediaSchema, insertPluginActivityLogSchema, insertPluginAssetSchema, insertPluginHookSchema, insertPluginRouteSchema, insertPluginSchema, insertSystemLogSchema, insertUserSchema, insertWorkflowHistorySchema, logConfig, media, pluginActivityLog, pluginAssets, pluginHooks, pluginRoutes, plugins, selectCollectionSchema, selectContentSchema, selectLogConfigSchema, selectMediaSchema, selectPluginActivityLogSchema, selectPluginAssetSchema, selectPluginHookSchema, selectPluginRouteSchema, selectPluginSchema, selectSystemLogSchema, selectUserSchema, selectWorkflowHistorySchema, systemLogs, users, workflowHistory } from './chunk-L232U757.js';
5
- import { metricsMiddleware, bootstrapMiddleware, requireAuth } from './chunk-OORGXYDA.js';
6
- export { AuthManager, PermissionManager, bootstrapMiddleware, cacheHeaders, compressionMiddleware, detailedLoggingMiddleware, getActivePlugins, getTelemetry, isPluginActive, logActivity, loggingMiddleware, optionalAuth, performanceLoggingMiddleware, requireActivePlugin, requireActivePlugins, requireAnyPermission, requireAuth, requirePermission, requireRole, securityHeaders, securityLoggingMiddleware, telemetryMiddleware } from './chunk-OORGXYDA.js';
7
- export { PluginBootstrapService, PluginService as PluginServiceClass, TelemetryService, cleanupRemovedCollections, createInstallationIdentity, fullCollectionSync, getAvailableCollectionNames, getManagedCollections, getTelemetryService, initTelemetry, isCollectionManaged, loadCollectionConfig, loadCollectionConfigs, registerCollections, syncCollection, syncCollections, validateCollectionConfig } from './chunk-K4Z3IHOK.js';
8
- export { MigrationService } from './chunk-ZPMFT2JW.js';
1
+ import { PluginBuilder, api_default, api_media_default, api_system_default, admin_api_default, router, adminCollectionsRoutes, adminSettingsRoutes, admin_content_default, adminMediaRoutes, adminPluginRoutes, adminLogsRoutes, userRoutes, auth_default, test_cleanup_default } from './chunk-ZPERJATF.js';
2
+ export { ROUTES_INFO, admin_api_default as adminApiRoutes, adminCheckboxRoutes, admin_code_examples_default as adminCodeExamplesRoutes, adminCollectionsRoutes, admin_content_default as adminContentRoutes, router as adminDashboardRoutes, adminDesignRoutes, adminLogsRoutes, adminMediaRoutes, adminPluginRoutes, adminSettingsRoutes, admin_testimonials_default as adminTestimonialsRoutes, userRoutes as adminUsersRoutes, api_content_crud_default as apiContentCrudRoutes, api_media_default as apiMediaRoutes, api_default as apiRoutes, api_system_default as apiSystemRoutes, auth_default as authRoutes } from './chunk-ZPERJATF.js';
3
+ import { schema_exports } from './chunk-Q52ZQFMB.js';
4
+ export { Logger, apiTokens, collections, content, contentVersions, getLogger, initLogger, insertCollectionSchema, insertContentSchema, insertLogConfigSchema, insertMediaSchema, insertPluginActivityLogSchema, insertPluginAssetSchema, insertPluginHookSchema, insertPluginRouteSchema, insertPluginSchema, insertSystemLogSchema, insertUserSchema, insertWorkflowHistorySchema, logConfig, media, pluginActivityLog, pluginAssets, pluginHooks, pluginRoutes, plugins, selectCollectionSchema, selectContentSchema, selectLogConfigSchema, selectMediaSchema, selectPluginActivityLogSchema, selectPluginAssetSchema, selectPluginHookSchema, selectPluginRouteSchema, selectPluginSchema, selectSystemLogSchema, selectUserSchema, selectWorkflowHistorySchema, systemLogs, users, workflowHistory } from './chunk-Q52ZQFMB.js';
5
+ import { metricsMiddleware, bootstrapMiddleware, requireAuth } from './chunk-WK5EUGBO.js';
6
+ export { AuthManager, PermissionManager, bootstrapMiddleware, cacheHeaders, compressionMiddleware, detailedLoggingMiddleware, getActivePlugins, isPluginActive, logActivity, loggingMiddleware, optionalAuth, performanceLoggingMiddleware, requireActivePlugin, requireActivePlugins, requireAnyPermission, requireAuth, requirePermission, requireRole, securityHeaders, securityLoggingMiddleware } from './chunk-WK5EUGBO.js';
7
+ export { PluginBootstrapService, PluginService as PluginServiceClass, cleanupRemovedCollections, fullCollectionSync, getAvailableCollectionNames, getManagedCollections, isCollectionManaged, loadCollectionConfig, loadCollectionConfigs, registerCollections, syncCollection, syncCollections, validateCollectionConfig } from './chunk-7CXL5K7N.js';
8
+ export { MigrationService } from './chunk-3MPQII4R.js';
9
9
  export { renderFilterBar } from './chunk-QNWYQZ55.js';
10
10
  import { init_admin_layout_catalyst_template, renderAdminLayout, renderAdminLayoutCatalyst } from './chunk-5RKQB2JG.js';
11
11
  export { getConfirmationDialogScript, renderAlert, renderConfirmationDialog, renderForm, renderFormField, renderPagination, renderTable } from './chunk-5RKQB2JG.js';
12
- export { HookSystemImpl, HookUtils, PluginManager as PluginManagerClass, PluginRegistryImpl, PluginValidator as PluginValidatorClass, ScopedHookSystem as ScopedHookSystemClass } from './chunk-HKEK7UNV.js';
13
- import { package_default, getCoreVersion } from './chunk-ZUK55KZB.js';
14
- export { QueryFilterBuilder, SONICJS_VERSION, TemplateRenderer, buildQuery, escapeHtml, getCoreVersion, renderTemplate, sanitizeInput, sanitizeObject, templateRenderer } from './chunk-ZUK55KZB.js';
12
+ export { HookSystemImpl, HookUtils, PluginManager as PluginManagerClass, PluginRegistryImpl, PluginValidator as PluginValidatorClass, ScopedHookSystem as ScopedHookSystemClass } from './chunk-CPXAVWCU.js';
13
+ import { package_default, getCoreVersion } from './chunk-6RJU7HL5.js';
14
+ export { QueryFilterBuilder, SONICJS_VERSION, TemplateRenderer, buildQuery, escapeHtml, getCoreVersion, renderTemplate, sanitizeInput, sanitizeObject, templateRenderer } from './chunk-6RJU7HL5.js';
15
+ import './chunk-RRKXFGIO.js';
15
16
  export { metricsTracker } from './chunk-FICTAGD4.js';
16
- import './chunk-NMVOTNSL.js';
17
17
  export { HOOKS } from './chunk-LOUJRBXV.js';
18
18
  import './chunk-V4OQ3NZ2.js';
19
19
  import { Hono } from 'hono';
@@ -761,7 +761,7 @@ function createEmailPlugin() {
761
761
  SELECT settings FROM plugins WHERE id = 'email'
762
762
  `).first();
763
763
  const settings = plugin?.settings ? JSON.parse(plugin.settings) : {};
764
- const contentHTML = html`
764
+ const contentHTML = await html`
765
765
  <div class="p-8">
766
766
  <!-- Header -->
767
767
  <div class="mb-8">
@@ -987,11 +987,16 @@ function createEmailPlugin() {
987
987
  })
988
988
  </script>
989
989
  `;
990
+ const templateUser = user ? {
991
+ name: user.name ?? user.email ?? "Admin",
992
+ email: user.email ?? "admin@sonicjs.com",
993
+ role: user.role ?? "admin"
994
+ } : void 0;
990
995
  return c.html(
991
996
  renderAdminLayout({
992
997
  title: "Email Settings",
993
998
  content: contentHTML,
994
- user,
999
+ user: templateUser,
995
1000
  currentPath: "/admin/plugins/email/settings"
996
1001
  })
997
1002
  );