From 1ebcd93f7e5043c0e71f3f122d7361d6571b30c2 Mon Sep 17 00:00:00 2001 From: Richard Ward Date: Tue, 30 Dec 2025 23:10:57 +0000 Subject: [PATCH] config: packages,json,metadata (6 files) --- packages/admin_dialog/seed/metadata.json | 24 ++- packages/arcade_lobby/seed/metadata.json | 32 +++- packages/code_editor/seed/metadata.json | 19 ++- packages/codegen_studio/seed/metadata.json | 23 ++- packages/package_validator/seed/metadata.json | 65 ++++---- packages/ui_level5/seed/components.json | 153 +++++++++++++++++- 6 files changed, 264 insertions(+), 52 deletions(-) diff --git a/packages/admin_dialog/seed/metadata.json b/packages/admin_dialog/seed/metadata.json index 4b66790b8..9621330ed 100644 --- a/packages/admin_dialog/seed/metadata.json +++ b/packages/admin_dialog/seed/metadata.json @@ -6,8 +6,13 @@ "icon": "static_content/icon.svg", "author": "MetaBuilder", "category": "ui", - "dependencies": ["ui_dialogs", "ui_permissions"], - "devDependencies": ["lua_test"], + "dependencies": [ + "ui_dialogs", + "ui_permissions" + ], + "devDependencies": [ + "lua_test" + ], "exports": { "components": [] }, @@ -21,5 +26,16 @@ "tests/components.cases.json" ] }, - "minLevel": 4 -} \ No newline at end of file + "minLevel": 4, + "primary": false, + "permissions": { + "admin.dialog.show": { + "minLevel": 4, + "description": "Display admin confirmation dialogs" + }, + "admin.dialog.action": { + "minLevel": 4, + "description": "Execute admin dialog actions" + } + } +} diff --git a/packages/arcade_lobby/seed/metadata.json b/packages/arcade_lobby/seed/metadata.json index 490e74fcd..7eb5e9afa 100644 --- a/packages/arcade_lobby/seed/metadata.json +++ b/packages/arcade_lobby/seed/metadata.json @@ -6,8 +6,13 @@ "icon": "static_content/icon.svg", "author": "MetaBuilder", "category": "gaming", - "dependencies": ["ui_permissions", "dashboard"], - "devDependencies": ["lua_test"], + "dependencies": [ + "ui_permissions", + "dashboard" + ], + "devDependencies": [ + "lua_test" + ], "exports": { "components": [] }, @@ -21,5 +26,24 @@ "tests/components.cases.json" ] }, - "minLevel": 2 -} \ No newline at end of file + "minLevel": 2, + "primary": true, + "permissions": { + "arcade.lobby.view": { + "minLevel": 2, + "description": "View arcade lobby and game listings" + }, + "arcade.party.create": { + "minLevel": 2, + "description": "Create party queues" + }, + "arcade.tournament.join": { + "minLevel": 2, + "description": "Join tournaments" + }, + "arcade.tournament.create": { + "minLevel": 3, + "description": "Create new tournaments" + } + } +} diff --git a/packages/code_editor/seed/metadata.json b/packages/code_editor/seed/metadata.json index 164abca3f..fa4bc03de 100644 --- a/packages/code_editor/seed/metadata.json +++ b/packages/code_editor/seed/metadata.json @@ -37,5 +37,20 @@ "tests/editor.cases.json" ] }, - "minLevel": 5 -} \ No newline at end of file + "minLevel": 5, + "primary": false, + "permissions": { + "editor.theme.apply": { + "minLevel": 5, + "description": "Apply editor themes" + }, + "editor.code.edit": { + "minLevel": 5, + "description": "Edit code in editor" + }, + "editor.code.view": { + "minLevel": 5, + "description": "View code in editor" + } + } +} diff --git a/packages/codegen_studio/seed/metadata.json b/packages/codegen_studio/seed/metadata.json index a5c0e645a..d74c3df75 100644 --- a/packages/codegen_studio/seed/metadata.json +++ b/packages/codegen_studio/seed/metadata.json @@ -7,7 +7,9 @@ "author": "MetaBuilder", "category": "tools", "dependencies": [], - "devDependencies": ["lua_test"], + "devDependencies": [ + "lua_test" + ], "exports": { "components": [] }, @@ -21,5 +23,20 @@ "tests/components.cases.json" ] }, - "minLevel": 5 -} \ No newline at end of file + "minLevel": 5, + "primary": true, + "permissions": { + "codegen.templates.create": { + "minLevel": 5, + "description": "Create custom templates" + }, + "codegen.generate": { + "minLevel": 5, + "description": "Generate code from templates" + }, + "codegen.templates.view": { + "minLevel": 5, + "description": "View available code templates" + } + } +} diff --git a/packages/package_validator/seed/metadata.json b/packages/package_validator/seed/metadata.json index e4f821860..916a7f437 100644 --- a/packages/package_validator/seed/metadata.json +++ b/packages/package_validator/seed/metadata.json @@ -1,39 +1,28 @@ -{ - "packageId": "package_validator", - "name": "Package Validator", - "version": "1.0.0", - "description": "Validates package structure including JSON schemas, Lua files, and folder organization", - "icon": "static_content/icon.svg", - "author": "MetaBuilder", - "category": "tools", - "dependencies": [], - "devDependencies": [ - "lua_test" - ], - "exports": { - "components": [], - "scripts": [ - "validate", - "metadata_schema", - "component_schema", - "lua_validator", - "structure_validator", - "cli" - ] - }, - "tests": { - "scripts": [ - "tests/metadata.test.lua", - "tests/component.test.lua", - "tests/validate.test.lua", - "tests/lua_validator.test.lua", - "tests/structure_validator.test.lua", - "tests/devdependencies.test.lua", - "tests/parameterized.test.lua" - ], - "cases": [ - "tests/cases.json" - ] - }, - "minLevel": 5 +{ + "packageId": "package_validator", + "name": "Package Validator", + "version": "1.0.0", + "description": "Validates package structure including JSON schemas, Lua files, and folder organization", + "icon": "static_content/icon.svg", + "author": "MetaBuilder", + "category": "tools", + "primary": true, + "dependencies": [], + "devDependencies": ["lua_test"], + "exports": { + "components": [], + "scripts": ["validate", "metadata_schema", "component_schema", "lua_validator", "structure_validator", "cli"] + }, + "tests": { + "scripts": ["tests/metadata.test.lua", "tests/component.test.lua", "tests/validate.test.lua", "tests/lua_validator.test.lua", "tests/structure_validator.test.lua", "tests/devdependencies.test.lua", "tests/parameterized.test.lua"], + "cases": ["tests/cases.json"] + }, + "minLevel": 5, + "permissions": { + "package.validate": { "minLevel": 5, "description": "Run package validation checks" }, + "package.validate.metadata": { "minLevel": 5, "description": "Validate metadata.json schemas" }, + "package.validate.lua": { "minLevel": 5, "description": "Validate Lua script syntax" }, + "package.validate.structure": { "minLevel": 5, "description": "Validate package folder structure" }, + "package.validate.components": { "minLevel": 5, "description": "Validate component definitions" } + } } diff --git a/packages/ui_level5/seed/components.json b/packages/ui_level5/seed/components.json index 60b074253..9b282ed40 100644 --- a/packages/ui_level5/seed/components.json +++ b/packages/ui_level5/seed/components.json @@ -1 +1,152 @@ -[] +[ + { + "id": "level5_layout", + "type": "Box", + "props": { "className": "min-h-screen bg-gradient-to-br from-purple-950 via-slate-900 to-indigo-950" }, + "children": [ + { + "id": "level5_header", + "type": "AppHeader", + "children": [ + { + "type": "Toolbar", + "children": [ + { "type": "Typography", "props": { "variant": "h6", "text": "Level 5 - God Panel" } }, + { "type": "Box", "props": { "className": "flex-grow" } }, + { "type": "Typography", "props": { "variant": "body2", "text": "{{user.username}}" } } + ] + } + ] + }, + { + "id": "level5_content", + "type": "Container", + "props": { "className": "max-w-7xl mx-auto px-4 py-8 space-y-8" }, + "children": [ + { + "id": "level5_intro", + "type": "Stack", + "props": { "className": "space-y-4" }, + "children": [ + { "type": "Typography", "props": { "variant": "overline", "text": "Level 5" } }, + { "type": "Typography", "props": { "variant": "h2", "text": "Super God Panel", "className": "text-white" } }, + { "type": "Typography", "props": { "variant": "body1", "text": "Govern tenants and manage cross-level operations.", "className": "text-gray-300" } } + ] + }, + { + "id": "level5_tabs", + "type": "Card", + "children": [ + { + "type": "Tabs", + "props": { "items": [ + { "value": "tenants", "label": "Tenants" }, + { "value": "gods", "label": "God Users" }, + { "value": "transfer", "label": "Transfer" } + ]} + } + ] + } + ] + } + ] + }, + { + "id": "tenants_panel", + "type": "Card", + "children": [ + { + "type": "CardHeader", + "children": [ + { "type": "Typography", "props": { "variant": "h5", "text": "Tenant Management" } }, + { "type": "Typography", "props": { "variant": "body2", "text": "Create, edit, and manage tenants across the platform.", "className": "text-muted-foreground" } } + ] + }, + { + "type": "CardContent", + "children": [ + { + "type": "Table", + "props": { + "columns": [ + { "field": "name", "headerName": "Name" }, + { "field": "slug", "headerName": "Slug" }, + { "field": "users", "headerName": "Users" }, + { "field": "status", "headerName": "Status" } + ], + "rows": [ + { "name": "Acme Corp", "slug": "acme", "users": 42, "status": "Active" }, + { "name": "Beta Inc", "slug": "beta", "users": 18, "status": "Active" }, + { "name": "Test Tenant", "slug": "test", "users": 3, "status": "Inactive" } + ] + } + } + ] + } + ] + }, + { + "id": "gods_panel", + "type": "Card", + "children": [ + { + "type": "CardHeader", + "children": [ + { "type": "Typography", "props": { "variant": "h5", "text": "God Users" } }, + { "type": "Typography", "props": { "variant": "body2", "text": "Users with elevated cross-tenant privileges.", "className": "text-muted-foreground" } } + ] + }, + { + "type": "CardContent", + "children": [ + { + "type": "List", + "children": [ + { + "type": "ListItem", + "children": [ + { "type": "Avatar", "props": { "alt": "Admin" } }, + { "type": "ListItemText", "props": { "primary": "admin@metabuilder.dev", "secondary": "Level 5 - God" } } + ] + }, + { + "type": "ListItem", + "children": [ + { "type": "Avatar", "props": { "alt": "System" } }, + { "type": "ListItemText", "props": { "primary": "system@metabuilder.dev", "secondary": "Level 6 - Supergod" } } + ] + } + ] + } + ] + } + ] + }, + { + "id": "transfer_panel", + "type": "Card", + "children": [ + { + "type": "CardHeader", + "children": [ + { "type": "Typography", "props": { "variant": "h5", "text": "Data Transfer" } }, + { "type": "Typography", "props": { "variant": "body2", "text": "Transfer data and configurations between tenants.", "className": "text-muted-foreground" } } + ] + }, + { + "type": "CardContent", + "children": [ + { + "type": "Stack", + "props": { "className": "space-y-4" }, + "children": [ + { "type": "Select", "props": { "label": "Source Tenant", "options": [{ "value": "acme", "label": "Acme Corp" }, { "value": "beta", "label": "Beta Inc" }] } }, + { "type": "Select", "props": { "label": "Target Tenant", "options": [{ "value": "acme", "label": "Acme Corp" }, { "value": "beta", "label": "Beta Inc" }] } }, + { "type": "Button", "props": { "variant": "contained", "children": "Start Transfer" } } + ] + } + ] + } + ] + } +]