diff --git a/biome.json b/biome.json index a75fb757..f66365d9 100644 --- a/biome.json +++ b/biome.json @@ -1,5 +1,5 @@ { - "$schema": "https://biomejs.dev/schemas/2.4.7/schema.json", + "$schema": "https://biomejs.dev/schemas/2.4.10/schema.json", "vcs": { "enabled": true, "clientKind": "git", diff --git a/framework/SimpleModule.Blazor/Components/InertiaPage.razor b/framework/SimpleModule.Blazor/Components/InertiaPage.razor index b3205f10..e9c06dd3 100644 --- a/framework/SimpleModule.Blazor/Components/InertiaPage.razor +++ b/framework/SimpleModule.Blazor/Components/InertiaPage.razor @@ -1,4 +1,5 @@ -
+
+ @code { diff --git a/framework/SimpleModule.Hosting/SimpleModuleHostExtensions.cs b/framework/SimpleModule.Hosting/SimpleModuleHostExtensions.cs index 68cf5071..da0c70e4 100644 --- a/framework/SimpleModule.Hosting/SimpleModuleHostExtensions.cs +++ b/framework/SimpleModule.Hosting/SimpleModuleHostExtensions.cs @@ -121,22 +121,7 @@ public static async Task UseSimpleModuleInfrastructure(this WebApplication app) if (scope.ServiceProvider.GetService(info.DbContextType) is DbContext db) { - // Use MigrateAsync when migrations exist, EnsureCreated otherwise - // (projects scaffolded with sm new project have no migrations initially) - if ((await db.Database.GetPendingMigrationsAsync()).Any() - || (await db.Database.GetAppliedMigrationsAsync()).Any()) - { - await db.Database.MigrateAsync(); - } - else - { - var logger = scope.ServiceProvider.GetService() - ?.CreateLogger("SimpleModule.Hosting"); - logger?.LogInformation( - "No migrations found — using EnsureCreated to initialize database. " + - "Add migrations for production use."); - await db.Database.EnsureCreatedAsync(); - } + await db.Database.MigrateAsync(); } } } diff --git a/global.d.ts b/global.d.ts new file mode 100644 index 00000000..27f12358 --- /dev/null +++ b/global.d.ts @@ -0,0 +1 @@ +declare module '@puckeditor/core/puck.css'; diff --git a/modules/Admin/src/SimpleModule.Admin/Pages/Admin/Roles.tsx b/modules/Admin/src/SimpleModule.Admin/Pages/Admin/Roles.tsx index e13ea6c5..e8c68ab0 100644 --- a/modules/Admin/src/SimpleModule.Admin/Pages/Admin/Roles.tsx +++ b/modules/Admin/src/SimpleModule.Admin/Pages/Admin/Roles.tsx @@ -103,7 +103,7 @@ export default function Roles({ roles }: Props) { {role.userCount} - {role.permissionCount} + {role.permissionCount} {new Date(role.createdAt).toLocaleDateString()} diff --git a/modules/Admin/src/SimpleModule.Admin/Pages/Admin/Users.tsx b/modules/Admin/src/SimpleModule.Admin/Pages/Admin/Users.tsx index ea09b562..4227fe17 100644 --- a/modules/Admin/src/SimpleModule.Admin/Pages/Admin/Users.tsx +++ b/modules/Admin/src/SimpleModule.Admin/Pages/Admin/Users.tsx @@ -41,7 +41,7 @@ interface Props { } function userStatus(user: User) { - if (user.isDeactivated) return { label: 'Deactivated', variant: 'secondary' as const }; + if (user.isDeactivated) return { label: 'Deactivated', variant: 'default' as const }; if (user.isLockedOut) return { label: 'Locked', variant: 'danger' as const }; return { label: 'Active', variant: 'success' as const }; } diff --git a/modules/Admin/src/SimpleModule.Admin/Pages/Admin/UsersEdit.tsx b/modules/Admin/src/SimpleModule.Admin/Pages/Admin/UsersEdit.tsx index 73ef7942..747b53c7 100644 --- a/modules/Admin/src/SimpleModule.Admin/Pages/Admin/UsersEdit.tsx +++ b/modules/Admin/src/SimpleModule.Admin/Pages/Admin/UsersEdit.tsx @@ -159,7 +159,7 @@ export default function UsersEdit({

Edit User

{isSelf && You} - {user.isDeactivated && Deactivated} + {user.isDeactivated && Deactivated} {user.isLockedOut && !user.isDeactivated && Locked}
@@ -463,7 +463,7 @@ export default function UsersEdit({ {activeSessions.map((session) => ( - + {session.type === 'refresh_token' ? 'Refresh' : 'Access'} diff --git a/modules/Admin/src/SimpleModule.Admin/package.json b/modules/Admin/src/SimpleModule.Admin/package.json index 790f770a..464cebfb 100644 --- a/modules/Admin/src/SimpleModule.Admin/package.json +++ b/modules/Admin/src/SimpleModule.Admin/package.json @@ -3,9 +3,9 @@ "name": "@simplemodule/admin", "version": "0.0.0", "scripts": { - "build": "vite build", - "build:dev": "cross-env VITE_MODE=dev vite build", - "watch": "cross-env VITE_MODE=dev vite build --watch" + "build": "vite build --configLoader runner", + "build:dev": "cross-env VITE_MODE=dev vite build --configLoader runner", + "watch": "cross-env VITE_MODE=dev vite build --configLoader runner --watch" }, "peerDependencies": { "react": "^19.0.0", diff --git a/modules/Admin/src/SimpleModule.Admin/vite.config.ts b/modules/Admin/src/SimpleModule.Admin/vite.config.ts index a3d37c71..a247db62 100644 --- a/modules/Admin/src/SimpleModule.Admin/vite.config.ts +++ b/modules/Admin/src/SimpleModule.Admin/vite.config.ts @@ -1,3 +1,3 @@ import { defineModuleConfig } from '@simplemodule/client/module'; -export default defineModuleConfig(__dirname); +export default defineModuleConfig(import.meta.dirname); diff --git a/modules/AuditLogs/src/SimpleModule.AuditLogs/Views/Dashboard.tsx b/modules/AuditLogs/src/SimpleModule.AuditLogs/Views/Dashboard.tsx index f9e8dd15..07c4cd40 100644 --- a/modules/AuditLogs/src/SimpleModule.AuditLogs/Views/Dashboard.tsx +++ b/modules/AuditLogs/src/SimpleModule.AuditLogs/Views/Dashboard.tsx @@ -183,7 +183,7 @@ function HBarCard({ yAxisWidth = 100, }: { title: string; - data: { name: string; [key: string]: unknown }[]; + data: readonly { name: string; count?: number; value?: number }[]; dataKey: string; config: ChartConfig; fill?: string; diff --git a/modules/AuditLogs/src/SimpleModule.AuditLogs/Views/Detail.tsx b/modules/AuditLogs/src/SimpleModule.AuditLogs/Views/Detail.tsx index 5ebe8b66..d926a820 100644 --- a/modules/AuditLogs/src/SimpleModule.AuditLogs/Views/Detail.tsx +++ b/modules/AuditLogs/src/SimpleModule.AuditLogs/Views/Detail.tsx @@ -214,7 +214,7 @@ export default function Detail({ entry, correlated }: Props) {
- + {entry.httpMethod} {entry.path} diff --git a/modules/AuditLogs/src/SimpleModule.AuditLogs/package.json b/modules/AuditLogs/src/SimpleModule.AuditLogs/package.json index c56fc135..bfc3358b 100644 --- a/modules/AuditLogs/src/SimpleModule.AuditLogs/package.json +++ b/modules/AuditLogs/src/SimpleModule.AuditLogs/package.json @@ -3,9 +3,9 @@ "name": "@simplemodule/auditlogs", "version": "0.0.0", "scripts": { - "build": "vite build", - "build:dev": "cross-env VITE_MODE=dev vite build", - "watch": "cross-env VITE_MODE=dev vite build --watch" + "build": "vite build --configLoader runner", + "build:dev": "cross-env VITE_MODE=dev vite build --configLoader runner", + "watch": "cross-env VITE_MODE=dev vite build --configLoader runner --watch" }, "peerDependencies": { "react": "^19.0.0", diff --git a/modules/AuditLogs/src/SimpleModule.AuditLogs/vite.config.ts b/modules/AuditLogs/src/SimpleModule.AuditLogs/vite.config.ts index a3d37c71..a247db62 100644 --- a/modules/AuditLogs/src/SimpleModule.AuditLogs/vite.config.ts +++ b/modules/AuditLogs/src/SimpleModule.AuditLogs/vite.config.ts @@ -1,3 +1,3 @@ import { defineModuleConfig } from '@simplemodule/client/module'; -export default defineModuleConfig(__dirname); +export default defineModuleConfig(import.meta.dirname); diff --git a/modules/Dashboard/src/SimpleModule.Dashboard/package.json b/modules/Dashboard/src/SimpleModule.Dashboard/package.json index 94c24b27..5bfac018 100644 --- a/modules/Dashboard/src/SimpleModule.Dashboard/package.json +++ b/modules/Dashboard/src/SimpleModule.Dashboard/package.json @@ -3,9 +3,9 @@ "name": "@simplemodule/dashboard", "version": "0.0.0", "scripts": { - "build": "vite build", - "build:dev": "cross-env VITE_MODE=dev vite build", - "watch": "cross-env VITE_MODE=dev vite build --watch" + "build": "vite build --configLoader runner", + "build:dev": "cross-env VITE_MODE=dev vite build --configLoader runner", + "watch": "cross-env VITE_MODE=dev vite build --configLoader runner --watch" }, "peerDependencies": { "react": "^19.0.0", diff --git a/modules/Dashboard/src/SimpleModule.Dashboard/vite.config.ts b/modules/Dashboard/src/SimpleModule.Dashboard/vite.config.ts index a3d37c71..a247db62 100644 --- a/modules/Dashboard/src/SimpleModule.Dashboard/vite.config.ts +++ b/modules/Dashboard/src/SimpleModule.Dashboard/vite.config.ts @@ -1,3 +1,3 @@ import { defineModuleConfig } from '@simplemodule/client/module'; -export default defineModuleConfig(__dirname); +export default defineModuleConfig(import.meta.dirname); diff --git a/modules/FeatureFlags/src/SimpleModule.FeatureFlags/Views/Manage.tsx b/modules/FeatureFlags/src/SimpleModule.FeatureFlags/Views/Manage.tsx index 58f413b5..b0009c3f 100644 --- a/modules/FeatureFlags/src/SimpleModule.FeatureFlags/Views/Manage.tsx +++ b/modules/FeatureFlags/src/SimpleModule.FeatureFlags/Views/Manage.tsx @@ -116,7 +116,7 @@ export default function Manage({ flags: initialFlags }: ManageProps) { {flag.name} {flag.description} - + {flag.defaultEnabled ? 'on' : 'off'} @@ -154,7 +154,7 @@ export default function Manage({ flags: initialFlags }: ManageProps) { {flag.name}{' '} - + deprecated @@ -197,11 +197,7 @@ export default function Manage({ flags: initialFlags }: ManageProps) { {o.overrideValue} {o.isEnabled ? 'Yes' : 'No'} - diff --git a/modules/FeatureFlags/src/SimpleModule.FeatureFlags/package.json b/modules/FeatureFlags/src/SimpleModule.FeatureFlags/package.json index 109b1fbc..18539143 100644 --- a/modules/FeatureFlags/src/SimpleModule.FeatureFlags/package.json +++ b/modules/FeatureFlags/src/SimpleModule.FeatureFlags/package.json @@ -3,9 +3,9 @@ "name": "@simplemodule/feature-flags", "version": "0.0.0", "scripts": { - "build": "cross-env VITE_MODE=prod vite build", - "build:dev": "cross-env VITE_MODE=dev vite build", - "watch": "cross-env VITE_MODE=dev vite build --watch" + "build": "cross-env VITE_MODE=prod vite build --configLoader runner", + "build:dev": "cross-env VITE_MODE=dev vite build --configLoader runner", + "watch": "cross-env VITE_MODE=dev vite build --configLoader runner --watch" }, "peerDependencies": { "react": "^19.0.0", diff --git a/modules/FeatureFlags/src/SimpleModule.FeatureFlags/vite.config.ts b/modules/FeatureFlags/src/SimpleModule.FeatureFlags/vite.config.ts index a3d37c71..a247db62 100644 --- a/modules/FeatureFlags/src/SimpleModule.FeatureFlags/vite.config.ts +++ b/modules/FeatureFlags/src/SimpleModule.FeatureFlags/vite.config.ts @@ -1,3 +1,3 @@ import { defineModuleConfig } from '@simplemodule/client/module'; -export default defineModuleConfig(__dirname); +export default defineModuleConfig(import.meta.dirname); diff --git a/modules/FileStorage/src/SimpleModule.FileStorage/package.json b/modules/FileStorage/src/SimpleModule.FileStorage/package.json index 543a6104..d213bdb6 100644 --- a/modules/FileStorage/src/SimpleModule.FileStorage/package.json +++ b/modules/FileStorage/src/SimpleModule.FileStorage/package.json @@ -3,9 +3,9 @@ "name": "@simplemodule/filestorage", "version": "0.0.0", "scripts": { - "build": "cross-env VITE_MODE=prod vite build", - "build:dev": "cross-env VITE_MODE=dev vite build", - "watch": "cross-env VITE_MODE=dev vite build --watch" + "build": "cross-env VITE_MODE=prod vite build --configLoader runner", + "build:dev": "cross-env VITE_MODE=dev vite build --configLoader runner", + "watch": "cross-env VITE_MODE=dev vite build --configLoader runner --watch" }, "peerDependencies": { "react": "^19.0.0", diff --git a/modules/FileStorage/src/SimpleModule.FileStorage/vite.config.ts b/modules/FileStorage/src/SimpleModule.FileStorage/vite.config.ts index a3d37c71..a247db62 100644 --- a/modules/FileStorage/src/SimpleModule.FileStorage/vite.config.ts +++ b/modules/FileStorage/src/SimpleModule.FileStorage/vite.config.ts @@ -1,3 +1,3 @@ import { defineModuleConfig } from '@simplemodule/client/module'; -export default defineModuleConfig(__dirname); +export default defineModuleConfig(import.meta.dirname); diff --git a/modules/Marketplace/src/SimpleModule.Marketplace/Views/Browse.tsx b/modules/Marketplace/src/SimpleModule.Marketplace/Views/Browse.tsx index 533a6553..47a17cb2 100644 --- a/modules/Marketplace/src/SimpleModule.Marketplace/Views/Browse.tsx +++ b/modules/Marketplace/src/SimpleModule.Marketplace/Views/Browse.tsx @@ -87,7 +87,7 @@ export default function Browse({ {categories.map((cat) => (