diff --git a/frontends/nextjs/src/app/levels/LevelsClient.tsx b/frontends/nextjs/src/app/levels/LevelsClient.tsx index 4cbe3e73f..3cf2a9946 100644 --- a/frontends/nextjs/src/app/levels/LevelsClient.tsx +++ b/frontends/nextjs/src/app/levels/LevelsClient.tsx @@ -19,8 +19,8 @@ import { import { PERMISSION_LEVELS, type PermissionLevel } from './levels-data' const highlightColor = (level: PermissionLevel) => { - if (level.id === 5) return 'warning.main' - if (level.id === 4) return 'primary.main' + if (level.id === 6) return 'warning.main' + if (level.id === 5) return 'primary.main' return 'divider' } @@ -62,10 +62,10 @@ export default function LevelsClient() { - The Five Permission Levels + The Six Permission Levels - Level up through Guest, Regular User, Moderator, God, and Super God to unlock the right + Level up through Public, User, Moderator, Admin, God, and Super God to unlock the right controls for your role. diff --git a/frontends/nextjs/src/app/levels/levels-data.ts b/frontends/nextjs/src/app/levels/levels-data.ts index 654c05f01..160ef957f 100644 --- a/frontends/nextjs/src/app/levels/levels-data.ts +++ b/frontends/nextjs/src/app/levels/levels-data.ts @@ -11,47 +11,56 @@ export type PermissionLevel = { export const PERMISSION_LEVELS: PermissionLevel[] = [ { id: 1, - key: 'guest', - title: 'Guest', - badge: '👁️', - description: 'Browse the public landing pages and marketing content with read-only access.', - tagline: 'View-only browsing with zero privileges.', - capabilities: ['Access front page', 'Read public articles', 'View news feed'], + key: 'public', + title: 'Public', + badge: '🌍', + description: 'Read-only access to marketing, help, and showcase pages without signing in.', + tagline: 'Open browsing with zero authentication.', + capabilities: ['Access the landing experience', 'Follow feature stories', 'Preview public dashboards'], }, { id: 2, - key: 'regular', - title: 'Regular User', + key: 'user', + title: 'User', badge: '🧑‍💻', - description: 'Interact with your profile, store preferences, and explore configurable dashboards.', - tagline: 'Personalized space for regular contributors and team members.', - capabilities: ['Edit personal settings', 'Update profile', 'Launch saved dashboards', 'Submit tickets'], + description: 'Personalized workspace for building content, saving dashboards, and collaborating.', + tagline: 'Everyday contributors and team members.', + capabilities: ['Edit personal settings', 'Manage own content', 'Launch saved dashboards', 'Join shared workflows'], }, { id: 3, key: 'moderator', title: 'Moderator', badge: '🛡️', - description: 'Keep the community healthy, triage issues, and enforce conduct policies.', - tagline: 'Guardrails for the wider user base.', - capabilities: ['Moderate discussions', 'Resolve user flags', 'Review reports', 'Approve content'], + description: 'Protect the community by triaging flags, reviewing reports, and shaping shared spaces.', + tagline: 'Guardians of behavior and tone.', + capabilities: ['Moderate discussions', 'Resolve user flags', 'Review incident reports', 'Hide or restore content'], }, { id: 4, - key: 'god', - title: 'God', - badge: '🧙‍♂️', - description: 'Design workflows, compose pages, and orchestrate the system architecture.', - tagline: 'Blueprint builder with editing rights.', - capabilities: ['Edit the front page', 'Author workflows', 'Define multi-tenant settings', 'Seed packages'], + key: 'admin', + title: 'Admin', + badge: '🧰', + description: 'Tenant administrators who manage users, billing, policies, and broader content sets.', + tagline: 'Operational control for the tenant layer.', + capabilities: ['Manage user accounts', 'Adjust tenant settings', 'Approve packages', 'Oversee moderation queue'], }, { id: 5, + key: 'god', + title: 'God', + badge: '🧙‍♂️', + description: 'Blueprint builders who orchestrate workflows, seed packages, and shape the system architecture.', + tagline: 'Power users with advanced scripting rights.', + capabilities: ['Author workflows', 'Compose the builder UI', 'Define multi-tenant templates', 'Seed packages'], + }, + { + id: 6, key: 'supergod', title: 'Super God', badge: '👑', - description: 'Full sovereignty over the universe: transfer rights, manage infrastructure, and override controls.', - tagline: 'Ultimate authority for system-level changes.', - capabilities: ['Assign god roles', 'Transfer front page rights', 'Burn/restore tenants', 'Run security audits'], + description: 'Full sovereignty over every tenant, infrastructure, and override path in the universe.', + tagline: 'Ultimate authority for platform-level change.', + capabilities: ['Assign god roles', 'Transfer ownership', 'Burn and restore tenants', 'Run system-wide audits'], }, ] diff --git a/frontends/nextjs/src/components/managers/PageRoutesManager.tsx b/frontends/nextjs/src/components/managers/PageRoutesManager.tsx index 9459495c4..e6ed6411f 100644 --- a/frontends/nextjs/src/components/managers/PageRoutesManager.tsx +++ b/frontends/nextjs/src/components/managers/PageRoutesManager.tsx @@ -103,7 +103,9 @@ export function PageRoutesManager() { case 1: return 'bg-blue-500' case 2: return 'bg-green-500' case 3: return 'bg-orange-500' - case 4: return 'bg-purple-500' + case 4: return 'bg-sky-500' + case 5: return 'bg-purple-500' + case 6: return 'bg-rose-500' default: return 'bg-gray-500' } } @@ -165,8 +167,10 @@ export function PageRoutesManager() { Level 1 - Public Level 2 - User Area - Level 3 - Admin Panel - Level 4 - God Panel + Level 3 - Moderator Desk + Level 4 - Admin Panel + Level 5 - God Builder + Level 6 - Supergod Console @@ -183,8 +187,10 @@ export function PageRoutesManager() { Public User + Moderator Admin God + Supergod diff --git a/frontends/nextjs/src/lib/db/lua-scripts/add-lua-script.test.ts b/frontends/nextjs/src/lib/db/lua-scripts/crud/add/add-lua-script.test.ts similarity index 100% rename from frontends/nextjs/src/lib/db/lua-scripts/add-lua-script.test.ts rename to frontends/nextjs/src/lib/db/lua-scripts/crud/add/add-lua-script.test.ts diff --git a/frontends/nextjs/src/lib/db/lua-scripts/add-lua-script.ts b/frontends/nextjs/src/lib/db/lua-scripts/crud/add/add-lua-script.ts similarity index 100% rename from frontends/nextjs/src/lib/db/lua-scripts/add-lua-script.ts rename to frontends/nextjs/src/lib/db/lua-scripts/crud/add/add-lua-script.ts diff --git a/frontends/nextjs/src/lib/db/lua-scripts/delete-lua-script.test.ts b/frontends/nextjs/src/lib/db/lua-scripts/crud/delete-lua-script.test.ts similarity index 100% rename from frontends/nextjs/src/lib/db/lua-scripts/delete-lua-script.test.ts rename to frontends/nextjs/src/lib/db/lua-scripts/crud/delete-lua-script.test.ts diff --git a/frontends/nextjs/src/lib/db/lua-scripts/delete-lua-script.ts b/frontends/nextjs/src/lib/db/lua-scripts/crud/delete-lua-script.ts similarity index 100% rename from frontends/nextjs/src/lib/db/lua-scripts/delete-lua-script.ts rename to frontends/nextjs/src/lib/db/lua-scripts/crud/delete-lua-script.ts diff --git a/frontends/nextjs/src/lib/db/lua-scripts/update-lua-script.test.ts b/frontends/nextjs/src/lib/db/lua-scripts/crud/update-lua-script.test.ts similarity index 100% rename from frontends/nextjs/src/lib/db/lua-scripts/update-lua-script.test.ts rename to frontends/nextjs/src/lib/db/lua-scripts/crud/update-lua-script.test.ts diff --git a/frontends/nextjs/src/lib/db/lua-scripts/update-lua-script.ts b/frontends/nextjs/src/lib/db/lua-scripts/crud/update-lua-script.ts similarity index 100% rename from frontends/nextjs/src/lib/db/lua-scripts/update-lua-script.ts rename to frontends/nextjs/src/lib/db/lua-scripts/crud/update-lua-script.ts diff --git a/frontends/nextjs/src/lib/db/lua-scripts/build-lua-script-update.ts b/frontends/nextjs/src/lib/db/lua-scripts/serialization/build-lua-script-update.ts similarity index 100% rename from frontends/nextjs/src/lib/db/lua-scripts/build-lua-script-update.ts rename to frontends/nextjs/src/lib/db/lua-scripts/serialization/build-lua-script-update.ts diff --git a/frontends/nextjs/src/lib/db/lua-scripts/deserialize-lua-script.ts b/frontends/nextjs/src/lib/db/lua-scripts/serialization/deserialize-lua-script.ts similarity index 100% rename from frontends/nextjs/src/lib/db/lua-scripts/deserialize-lua-script.ts rename to frontends/nextjs/src/lib/db/lua-scripts/serialization/deserialize-lua-script.ts diff --git a/frontends/nextjs/src/lib/db/lua-scripts/parse-json-array.ts b/frontends/nextjs/src/lib/db/lua-scripts/serialization/parse-json-array.ts similarity index 100% rename from frontends/nextjs/src/lib/db/lua-scripts/parse-json-array.ts rename to frontends/nextjs/src/lib/db/lua-scripts/serialization/parse-json-array.ts diff --git a/frontends/nextjs/src/lib/db/lua-scripts/serialize-lua-script.ts b/frontends/nextjs/src/lib/db/lua-scripts/serialization/serialize-lua-script.ts similarity index 100% rename from frontends/nextjs/src/lib/db/lua-scripts/serialize-lua-script.ts rename to frontends/nextjs/src/lib/db/lua-scripts/serialization/serialize-lua-script.ts