Migrated from design-system-swarm with fresh git history.
Old project history preserved in /home/overbits/apps/design-system-swarm
Core components:
- MCP Server (Python FastAPI with mcp 1.23.1)
- Claude Plugin (agents, commands, skills, strategies, hooks, core)
- DSS Backend (dss-mvp1 - token translation, Figma sync)
- Admin UI (Node.js/React)
- Server (Node.js/Express)
- Storybook integration (dss-mvp1/.storybook)
Self-contained configuration:
- All paths relative or use DSS_BASE_PATH=/home/overbits/dss
- PYTHONPATH configured for dss-mvp1 and dss-claude-plugin
- .env file with all configuration
- Claude plugin uses ${CLAUDE_PLUGIN_ROOT} for portability
Migration completed: $(date)
🤖 Clean migration with full functionality preserved
1591 lines
220 KiB
JSON
1591 lines
220 KiB
JSON
{
|
|
"sessionId": "session-1765119208089-tjqfeem71",
|
|
"exportedAt": "2025-12-07T14:56:58.115Z",
|
|
"logs": [
|
|
{
|
|
"timestamp": 1765119208090,
|
|
"relativeTime": 1,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [App] Initializing application... color: #2196F3; font-weight: bold",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [App] Initializing application...",
|
|
"color: #2196F3; font-weight: bold"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119208095,
|
|
"relativeTime": 6,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "[DssDB] Database ready",
|
|
"data": {
|
|
"args": [
|
|
"[DssDB] Database ready"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119208274,
|
|
"relativeTime": 185,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/projects",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/projects",
|
|
"initiatorType": "fetch",
|
|
"duration": 184.7000000178814,
|
|
"transferSize": 590,
|
|
"encodedBodySize": 290,
|
|
"decodedBodySize": 290
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119208277,
|
|
"relativeTime": 188,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "[ConfigLoader] Configuration loaded successfully [object Object]",
|
|
"data": {
|
|
"args": [
|
|
"[ConfigLoader] Configuration loaded successfully",
|
|
{
|
|
"dssHost": "localhost",
|
|
"dssPort": "3456",
|
|
"storybookPort": 6006
|
|
}
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119208277,
|
|
"relativeTime": 188,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [App] Server configuration loaded color: #2196F3; font-weight: bold",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [App] Server configuration loaded",
|
|
"color: #2196F3; font-weight: bold"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119208277,
|
|
"relativeTime": 188,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [PluginService] Registered plugin: Claude AI Assistant v1.0.0 color: #2196F3; font-weight: bold",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [PluginService] Registered plugin: Claude AI Assistant v1.0.0",
|
|
"color: #2196F3; font-weight: bold"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119208277,
|
|
"relativeTime": 188,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [Plugin:Claude AI Assistant] Claude plugin initializing... color: #2196F3; font-weight: bold",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [Plugin:Claude AI Assistant] Claude plugin initializing...",
|
|
"color: #2196F3; font-weight: bold"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119208277,
|
|
"relativeTime": 188,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [Plugin:Claude AI Assistant] Claude plugin initialized color: #2196F3; font-weight: bold",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [Plugin:Claude AI Assistant] Claude plugin initialized",
|
|
"color: #2196F3; font-weight: bold"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119208278,
|
|
"relativeTime": 189,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [App] Plugins initialized color: #2196F3; font-weight: bold",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [App] Plugins initialized",
|
|
"color: #2196F3; font-weight: bold"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119208278,
|
|
"relativeTime": 189,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [App] Messaging system initialized color: #2196F3; font-weight: bold",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [App] Messaging system initialized",
|
|
"color: #2196F3; font-weight: bold"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119208283,
|
|
"relativeTime": 194,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [App] Router initialized with 12 routes color: #2196F3; font-weight: bold",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [App] Router initialized with 12 routes",
|
|
"color: #2196F3; font-weight: bold"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119208283,
|
|
"relativeTime": 194,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [PluginService] Initialized plugin: Claude AI Assistant color: #2196F3; font-weight: bold",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [PluginService] Initialized plugin: Claude AI Assistant",
|
|
"color: #2196F3; font-weight: bold"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119208284,
|
|
"relativeTime": 195,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/config",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/config",
|
|
"initiatorType": "fetch",
|
|
"duration": 185.40000000596046,
|
|
"transferSize": 361,
|
|
"encodedBodySize": 61,
|
|
"decodedBodySize": 61
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119208294,
|
|
"relativeTime": 205,
|
|
"level": "metric",
|
|
"category": "performance",
|
|
"message": "Page load completed",
|
|
"data": {
|
|
"domContentLoaded": 1,
|
|
"loadComplete": 0.09999999403953552,
|
|
"totalTime": 2064.7999999821186,
|
|
"dnsLookup": 0,
|
|
"tcpConnection": 0,
|
|
"requestTime": 187.5,
|
|
"responseTime": 1.7000000178813934,
|
|
"renderTime": null
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119208300,
|
|
"relativeTime": 211,
|
|
"level": "warn",
|
|
"category": "console",
|
|
"message": "SSE connection unavailable, using local-only mode",
|
|
"data": {
|
|
"args": [
|
|
"SSE connection unavailable, using local-only mode"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119208470,
|
|
"relativeTime": 381,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/health",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/health",
|
|
"initiatorType": "fetch",
|
|
"duration": 183.69999998807907,
|
|
"transferSize": 583,
|
|
"encodedBodySize": 283,
|
|
"decodedBodySize": 283
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119208663,
|
|
"relativeTime": 574,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/config",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/config",
|
|
"initiatorType": "fetch",
|
|
"duration": 188.10000002384186,
|
|
"transferSize": 361,
|
|
"encodedBodySize": 61,
|
|
"decodedBodySize": 61
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119208663,
|
|
"relativeTime": 574,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/config/figma",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/config/figma",
|
|
"initiatorType": "fetch",
|
|
"duration": 190.19999998807907,
|
|
"transferSize": 475,
|
|
"encodedBodySize": 175,
|
|
"decodedBodySize": 175
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119208761,
|
|
"relativeTime": 672,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/services",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/services",
|
|
"initiatorType": "fetch",
|
|
"duration": 286.40000000596046,
|
|
"transferSize": 848,
|
|
"encodedBodySize": 548,
|
|
"decodedBodySize": 548
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119209179,
|
|
"relativeTime": 1090,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/discovery/scan",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/discovery/scan",
|
|
"initiatorType": "fetch",
|
|
"duration": 416.90000000596046,
|
|
"transferSize": 835,
|
|
"encodedBodySize": 535,
|
|
"decodedBodySize": 535
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119209368,
|
|
"relativeTime": 1279,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/discovery/stats",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/discovery/stats",
|
|
"initiatorType": "fetch",
|
|
"duration": 185.89999997615814,
|
|
"transferSize": 433,
|
|
"encodedBodySize": 133,
|
|
"decodedBodySize": 133
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119209559,
|
|
"relativeTime": 1470,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/discovery/activity",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/discovery/activity",
|
|
"initiatorType": "fetch",
|
|
"duration": 189.09999999403954,
|
|
"transferSize": 3771,
|
|
"encodedBodySize": 3471,
|
|
"decodedBodySize": 3471
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119209746,
|
|
"relativeTime": 1657,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [App] Loading dashboard data color: #2196F3; font-weight: bold [object Object]",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [App] Loading dashboard data",
|
|
"color: #2196F3; font-weight: bold",
|
|
{
|
|
"projectId": "proj-1764991776412"
|
|
}
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119209754,
|
|
"relativeTime": 1665,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [App] Application initialized successfully color: #2196F3; font-weight: bold",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [App] Application initialized successfully",
|
|
"color: #2196F3; font-weight: bold"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119209758,
|
|
"relativeTime": 1669,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/projects",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/projects",
|
|
"initiatorType": "fetch",
|
|
"duration": 184,
|
|
"transferSize": 590,
|
|
"encodedBodySize": 290,
|
|
"decodedBodySize": 290
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119209959,
|
|
"relativeTime": 1870,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/projects/proj-1764991776412/dashboard/summary",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/projects/proj-1764991776412/dashboard/summary",
|
|
"initiatorType": "fetch",
|
|
"duration": 205.7000000178814,
|
|
"transferSize": 668,
|
|
"encodedBodySize": 368,
|
|
"decodedBodySize": 368
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119213741,
|
|
"relativeTime": 5652,
|
|
"level": "debug",
|
|
"category": "console",
|
|
"message": "[BrowserLogger] Synced 26 logs to server",
|
|
"data": {
|
|
"args": [
|
|
"[BrowserLogger] Synced 26 logs to server"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119213793,
|
|
"relativeTime": 5704,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/browser-logs",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/browser-logs",
|
|
"initiatorType": "fetch",
|
|
"duration": 649.7999999821186,
|
|
"transferSize": 442,
|
|
"encodedBodySize": 142,
|
|
"decodedBodySize": 142
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119238617,
|
|
"relativeTime": 30528,
|
|
"level": "debug",
|
|
"category": "console",
|
|
"message": "[BrowserLogger] Synced 28 logs to server",
|
|
"data": {
|
|
"args": [
|
|
"[BrowserLogger] Synced 28 logs to server"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119238669,
|
|
"relativeTime": 30580,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/browser-logs",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/browser-logs",
|
|
"initiatorType": "fetch",
|
|
"duration": 522.1999999880791,
|
|
"transferSize": 442,
|
|
"encodedBodySize": 142,
|
|
"decodedBodySize": 142
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119240319,
|
|
"relativeTime": 32230,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/health",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/health",
|
|
"initiatorType": "fetch",
|
|
"duration": 185.39999997615814,
|
|
"transferSize": 583,
|
|
"encodedBodySize": 283,
|
|
"decodedBodySize": 283
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119268639,
|
|
"relativeTime": 60550,
|
|
"level": "debug",
|
|
"category": "console",
|
|
"message": "[BrowserLogger] Synced 31 logs to server",
|
|
"data": {
|
|
"args": [
|
|
"[BrowserLogger] Synced 31 logs to server"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119268691,
|
|
"relativeTime": 60602,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/browser-logs",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/browser-logs",
|
|
"initiatorType": "fetch",
|
|
"duration": 519,
|
|
"transferSize": 442,
|
|
"encodedBodySize": 142,
|
|
"decodedBodySize": 142
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119270303,
|
|
"relativeTime": 62214,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/health",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/health",
|
|
"initiatorType": "fetch",
|
|
"duration": 184.7000000178814,
|
|
"transferSize": 583,
|
|
"encodedBodySize": 283,
|
|
"decodedBodySize": 283
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119291091,
|
|
"relativeTime": 83002,
|
|
"level": "info",
|
|
"category": "snapshot",
|
|
"message": "State Capture (navigation)",
|
|
"data": {
|
|
"trigger": "navigation",
|
|
"details": {
|
|
"from": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"to": "https://dss.overbits.luz.uy/admin-ui/index.html#dashboard"
|
|
},
|
|
"snapshot": {
|
|
"timestamp": 1765119291090,
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#dashboard",
|
|
"html": "<html lang=\"en\" class=\"light\"><head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>Design System Server</title>\n <link rel=\"icon\" type=\"image/svg+xml\" href=\"/admin-ui/favicon.svg\">\n\n <!-- Design System Styles - Tokens and Base Styles -->\n <link rel=\"stylesheet\" href=\"/admin-ui/css/tokens.css\">\n <link rel=\"stylesheet\" href=\"/admin-ui/css/styles.css\">\n\n <!-- Markdown & Syntax Highlighting -->\n <script src=\"https://cdn.jsdelivr.net/npm/marked/marked.min.js\"></script>\n <script src=\"https://cdn.jsdelivr.net/npm/dompurify@3.0.6/dist/purify.min.js\"></script>\n <script src=\"https://cdn.jsdelivr.net/npm/highlight.js@11.9.0/lib/highlight.min.js\"></script>\n\n <script type=\"module\" crossorigin=\"\" src=\"/assets/index-DNcSjd3Y.js\"></script>\n</head>\n<body>\n <div id=\"app\" class=\"app-layout\">\n <!-- Top Navbar -->\n <header class=\"app-header\">\n <div class=\"app-header__project-selector\" id=\"project-selector-container\">\n <div class=\"project-selector\">\n <svg class=\"project-selector__icon\">\n \n \n \n </svg>\n <span class=\"project-selector__label\">Project:</span>\n \n \n \n test\n \n \n \n </div>\n </div>\n <div class=\"app-header__team-selector\">\n <label for=\"team-context-select\" class=\"sr-only\">Select team context</label>\n <select class=\"team-select\" id=\"team-context-select\" aria-label=\"Team context\">\n <option value=\"all\">All Teams</option>\n <option value=\"ui\">UI Team</option>\n <option value=\"ux\">UX Team</option>\n <option value=\"qa\">QA Team</option>\n </select>\n </div>\n <div class=\"app-header__actions\">\n <ds-button data-variant=\"ghost\" data-size=\"icon\" title=\"Toggle theme\" id=\"theme-toggle\" tabindex=\"0\" aria-label=\"Toggle dark/light theme\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M12 3v1m0 16v1m9-9h-1M4 12H3m15.364 6.364l-.707-.707M6.343 6.343l-.707-.707m12.728 0l-.707.707M6.343 17.657l-.707.707M16 12a4 4 0 1 1-8 0 4 4 0 0 1 8 0z\"></path>\n </svg>\n </ds-button>\n <div class=\"notification-toggle-container\" style=\"position: relative;\">\n <ds-button data-variant=\"ghost\" data-size=\"icon\" id=\"notification-toggle\" title=\"Notifications\" tabindex=\"0\" aria-label=\"View notifications\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9\"></path>\n <path d=\"M10.3 21a1.94 1.94 0 0 0 3.4 0\"></path>\n </svg>\n </ds-button>\n <span id=\"notification-indicator\" class=\"status-dot status-dot--error\" style=\"position: absolute; top: 6px; right: 6px; display: none;\"></span>\n <ds-notification-center></ds-notification-center>\n </div>\n <ds-button data-variant=\"ghost\" data-size=\"icon\" id=\"sidebar-toggle\" title=\"Toggle AI Assistant\" tabindex=\"0\" aria-label=\"Toggle AI Assistant sidebar\" aria-controls=\"ai-sidebar\" aria-expanded=\"false\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path>\n </svg>\n </ds-button>\n <div class=\"ds-avatar\" tabindex=\"0\" role=\"button\" aria-label=\"User profile menu\">\n <span>U</span>\n </div>\n </div>\n </header>\n\n <!-- Left Sidebar Navigation -->\n <aside class=\"sidebar\">\n <div class=\"sidebar__header\">\n <div class=\"sidebar__logo\">\n <div class=\"sidebar__logo-icon\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2L2 7l10 5 10-5-10-5z\"></path>\n <path d=\"M2 17l10 5 10-5\"></path>\n <path d=\"M2 12l10 5 10-5\"></path>\n </svg>\n </div>\n <span>DSS</span>\n </div>\n </div>\n\n <nav class=\"sidebar__nav\" id=\"main-nav\" aria-label=\"Main navigation\">\n <!-- Overview Section -->\n <div class=\"nav-section\" role=\"region\" aria-labelledby=\"overview-title\">\n <div class=\"nav-section__title\" id=\"overview-title\">Overview</div>\n <a class=\"nav-item active\" data-page=\"dashboard\" href=\"#dashboard\" tabindex=\"0\" aria-current=\"page\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"9\" rx=\"1\"></rect>\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"5\" rx=\"1\"></rect>\n <rect x=\"14\" y=\"12\" width=\"7\" height=\"9\" rx=\"1\"></rect>\n <rect x=\"3\" y=\"16\" width=\"7\" height=\"5\" rx=\"1\"></rect>\n </svg>\n Dashboard\n </a>\n <a class=\"nav-item\" data-page=\"projects\" href=\"#projects\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M3 3h18v18H3z\"></path>\n <path d=\"M21 9H3\"></path>\n <path d=\"M9 21V9\"></path>\n </svg>\n Projects\n </a>\n </div>\n\n <!-- Tools Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">Tools</div>\n <a class=\"nav-item\" data-page=\"services\" href=\"#services\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"19\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"5\" cy=\"12\" r=\"1\"></circle>\n </svg>\n Services\n </a>\n <a class=\"nav-item\" data-page=\"quick-wins\" href=\"#quick-wins\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z\"></path>\n </svg>\n Quick Wins\n </a>\n <a class=\"nav-item\" data-page=\"chat\" href=\"#chat\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path>\n </svg>\n Chat\n </a>\n </div>\n\n <!-- Design System Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">Design System</div>\n <a class=\"nav-item\" data-page=\"tokens\" href=\"#tokens\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"7\"></rect>\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"7\"></rect>\n <rect x=\"14\" y=\"14\" width=\"7\" height=\"7\"></rect>\n <rect x=\"3\" y=\"14\" width=\"7\" height=\"7\"></rect>\n </svg>\n Tokens\n </a>\n <a class=\"nav-item\" data-page=\"components\" href=\"#components\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2v20M2 12h20\"></path>\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n </svg>\n Components\n </a>\n <a class=\"nav-item\" data-page=\"figma\" href=\"#figma\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20z\"></path>\n <circle cx=\"12\" cy=\"12\" r=\"3\"></circle>\n </svg>\n Figma\n </a>\n <a id=\"storybook-link\" class=\"nav-item\" href=\"https://localhost/storybook/\" target=\"_blank\" tabindex=\"0\" title=\"Open Storybook at https://localhost/storybook/\" style=\"pointer-events: auto; opacity: 1;\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M4 3h16a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z\"></path>\n <path d=\"M9 9h6M9 15h6\"></path>\n </svg>\n Storybook\n </a>\n </div>\n\n <!-- System Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">System</div>\n <a class=\"nav-item\" data-page=\"docs\" href=\"#docs\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M4 19.5A2.5 2.5 0 0 1 6.5 17H20\"></path>\n <path d=\"M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z\"></path>\n </svg>\n Docs\n </a>\n <a class=\"nav-item\" data-page=\"teams\" href=\"#teams\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\"></path>\n <circle cx=\"9\" cy=\"7\" r=\"4\"></circle>\n <path d=\"M23 21v-2a4 4 0 0 0-3-3.87\"></path>\n <path d=\"M16 3.13a4 4 0 0 1 0 7.75\"></path>\n </svg>\n Teams\n </a>\n <a class=\"nav-item\" data-page=\"audit\" href=\"#audit\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M9 11l3 3L22 4\"></path>\n <path d=\"M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0z\"></path>\n </svg>\n Audit\n </a>\n <a class=\"nav-item\" data-page=\"plugins\" href=\"#plugins\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <path d=\"M12 1v6m0 6v6M4.22 4.22l4.24 4.24m3.08 3.08l4.24 4.24M1 12h6m6 0h6m-15.78 7.78l4.24-4.24m3.08-3.08l4.24-4.24\"></path>\n </svg>\n Plugins\n </a>\n <a class=\"nav-item\" data-page=\"settings\" href=\"#settings\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"3\"></circle>\n <path d=\"M12 1v6m0 6v6M4.22 4.22l4.24 4.24m3.08 3.08l4.24 4.24M1 12h6m6 0h6m-15.78 7.78l4.24-4.24m3.08-3.08l4.24-4.24\"></path>\n </svg>\n Settings\n </a>\n </div>\n </nav>\n\n <!-- Help Panel -->\n <div class=\"sidebar__help\">\n <details class=\"help-panel\">\n <summary class=\"help-panel__toggle\" tabindex=\"0\">\n <svg width=\"16\" height=\"16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n <path d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\"></path>\n <line x1=\"12\" y1=\"17\" x2=\"12.01\" y2=\"17\"></line>\n </svg>\n Quick Guide\n </summary>\n <div class=\"help-panel__content\">\n <div class=\"help-section\" data-team=\"ui\" style=\"display: none;\">\n <strong>UI Team</strong>\n <ul>\n <li>Extract tokens from Figma</li>\n <li>Sync to CSS variables</li>\n <li>Generate components</li>\n <li>Check token drift</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"ux\">\n <strong>UX Team</strong>\n <ul>\n <li>Add Figma files to project</li>\n <li>Run visual diff checks</li>\n <li>Review token consistency</li>\n <li>Validate components</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"qa\" style=\"display: none;\">\n <strong>QA Team</strong>\n <ul>\n <li>Define ESRE test cases</li>\n <li>Run component validation</li>\n <li>Review visual regressions</li>\n <li>Export audit logs</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"all\">\n <strong>Getting Started</strong>\n <ol>\n <li>Create a project</li>\n <li>Add Figma file key</li>\n <li>Extract & sync tokens</li>\n <li>Use AI chat for help</li>\n </ol>\n </div>\n </div>\n </details>\n </div>\n\n <!-- Sidebar Footer -->\n <div class=\"sidebar__footer\">\n <ds-badge data-variant=\"outline\">v1.0.0</ds-badge>\n </div>\n </aside>\n\n <!-- Main Content Area -->\n <main class=\"app-main\">\n <div id=\"page-content\" class=\"app-content\">\n <div class=\"page-header\">\n <h1>UX Team Dashboard</h1>\n <p class=\"text-muted\">Design consistency & token validation \u00b7 <strong class=\"text-primary\">test</strong></p>\n </div>\n\n \n <div class=\"grid grid-cols-4 gap-4 mt-6\">\n \n \n <div class=\"stat\">\n <div class=\"stat__label\">Figma Files</div>\n <div class=\"stat__value\">0</div>\n </div>\n \n \n\n \n \n <div class=\"stat\">\n <div class=\"stat__label\">Synced Files</div>\n <div class=\"stat__value\">0</div>\n </div>\n \n \n\n \n \n <div class=\"stat\">\n <div class=\"stat__label\">Pending Sync</div>\n <div class=\"stat__value\">0</div>\n </div>\n \n \n\n \n \n <div class=\"stat\">\n <div class=\"stat__label\">Design Tokens</div>\n <div class=\"stat__value\">0</div>\n </div>\n \n \n </div>\n\n \n <div class=\"mt-6\">\n \n \n \u2795 Add Figma File\n Configure Figma files for this project\n \n \n \n <div>\n File Name\n <input class=\"w-full p-2 border rounded mt-1\" placeholder=\"Design System Components\" name=\"file_name\" type=\"text\">\n </div>\n <div>\n Figma URL\n <input class=\"w-full p-2 border rounded mt-1\" placeholder=\"https://figma.com/file/...\" name=\"figma_url\" type=\"url\">\n </div>\n <div>\n File Key\n <input class=\"w-full p-2 border rounded mt-1\" placeholder=\"abc123xyz\" name=\"file_key\" type=\"text\">\n <p class=\"text-xs text-muted mt-1\">Extract from Figma URL: figma.com/file/<strong>FILE_KEY</strong>/...</p>\n </div>\n \n Add Figma File\n \n \n \n \n </div>\n\n \n <div class=\"mt-6\">\n \n \n Figma Files (0)\n Manage Figma files for this project\n \n \n \n <p class=\"text-muted text-sm text-center py-8\">\n No Figma files configured yet. Add your first file above! \ud83d\udc46\n </p>\n \n \n \n </div>\n</div>\n\n <!-- Right Sidebar - AI Chat -->\n <aside class=\"app-sidebar collapsed\" id=\"ai-sidebar\">\n <ds-ai-chat></ds-ai-chat>\n </aside>\n </main>\n </div>\n\n <!-- Toast Provider for notifications -->\n <ds-toast-provider></ds-toast-provider>\n\n <!-- Load Components -->\n\n\n</body></html>",
|
|
"viewport": {
|
|
"width": 1403,
|
|
"height": 958,
|
|
"devicePixelRatio": 2
|
|
},
|
|
"title": "Design System Server"
|
|
}
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#dashboard",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119292091,
|
|
"relativeTime": 84002,
|
|
"level": "info",
|
|
"category": "snapshot",
|
|
"message": "State Capture (navigation)",
|
|
"data": {
|
|
"trigger": "navigation",
|
|
"details": {
|
|
"from": "https://dss.overbits.luz.uy/admin-ui/index.html#dashboard",
|
|
"to": "https://dss.overbits.luz.uy/admin-ui/index.html#projects"
|
|
},
|
|
"snapshot": {
|
|
"timestamp": 1765119292090,
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#projects",
|
|
"html": "<html lang=\"en\" class=\"light\"><head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>Design System Server</title>\n <link rel=\"icon\" type=\"image/svg+xml\" href=\"/admin-ui/favicon.svg\">\n\n <!-- Design System Styles - Tokens and Base Styles -->\n <link rel=\"stylesheet\" href=\"/admin-ui/css/tokens.css\">\n <link rel=\"stylesheet\" href=\"/admin-ui/css/styles.css\">\n\n <!-- Markdown & Syntax Highlighting -->\n <script src=\"https://cdn.jsdelivr.net/npm/marked/marked.min.js\"></script>\n <script src=\"https://cdn.jsdelivr.net/npm/dompurify@3.0.6/dist/purify.min.js\"></script>\n <script src=\"https://cdn.jsdelivr.net/npm/highlight.js@11.9.0/lib/highlight.min.js\"></script>\n\n <script type=\"module\" crossorigin=\"\" src=\"/assets/index-DNcSjd3Y.js\"></script>\n</head>\n<body>\n <div id=\"app\" class=\"app-layout\">\n <!-- Top Navbar -->\n <header class=\"app-header\">\n <div class=\"app-header__project-selector\" id=\"project-selector-container\">\n <div class=\"project-selector\">\n <svg class=\"project-selector__icon\">\n \n \n \n </svg>\n <span class=\"project-selector__label\">Project:</span>\n \n \n \n test\n \n \n \n </div>\n </div>\n <div class=\"app-header__team-selector\">\n <label for=\"team-context-select\" class=\"sr-only\">Select team context</label>\n <select class=\"team-select\" id=\"team-context-select\" aria-label=\"Team context\">\n <option value=\"all\">All Teams</option>\n <option value=\"ui\">UI Team</option>\n <option value=\"ux\">UX Team</option>\n <option value=\"qa\">QA Team</option>\n </select>\n </div>\n <div class=\"app-header__actions\">\n <ds-button data-variant=\"ghost\" data-size=\"icon\" title=\"Toggle theme\" id=\"theme-toggle\" tabindex=\"0\" aria-label=\"Toggle dark/light theme\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M12 3v1m0 16v1m9-9h-1M4 12H3m15.364 6.364l-.707-.707M6.343 6.343l-.707-.707m12.728 0l-.707.707M6.343 17.657l-.707.707M16 12a4 4 0 1 1-8 0 4 4 0 0 1 8 0z\"></path>\n </svg>\n </ds-button>\n <div class=\"notification-toggle-container\" style=\"position: relative;\">\n <ds-button data-variant=\"ghost\" data-size=\"icon\" id=\"notification-toggle\" title=\"Notifications\" tabindex=\"0\" aria-label=\"View notifications\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9\"></path>\n <path d=\"M10.3 21a1.94 1.94 0 0 0 3.4 0\"></path>\n </svg>\n </ds-button>\n <span id=\"notification-indicator\" class=\"status-dot status-dot--error\" style=\"position: absolute; top: 6px; right: 6px; display: none;\"></span>\n <ds-notification-center></ds-notification-center>\n </div>\n <ds-button data-variant=\"ghost\" data-size=\"icon\" id=\"sidebar-toggle\" title=\"Toggle AI Assistant\" tabindex=\"0\" aria-label=\"Toggle AI Assistant sidebar\" aria-controls=\"ai-sidebar\" aria-expanded=\"false\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path>\n </svg>\n </ds-button>\n <div class=\"ds-avatar\" tabindex=\"0\" role=\"button\" aria-label=\"User profile menu\">\n <span>U</span>\n </div>\n </div>\n </header>\n\n <!-- Left Sidebar Navigation -->\n <aside class=\"sidebar\">\n <div class=\"sidebar__header\">\n <div class=\"sidebar__logo\">\n <div class=\"sidebar__logo-icon\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2L2 7l10 5 10-5-10-5z\"></path>\n <path d=\"M2 17l10 5 10-5\"></path>\n <path d=\"M2 12l10 5 10-5\"></path>\n </svg>\n </div>\n <span>DSS</span>\n </div>\n </div>\n\n <nav class=\"sidebar__nav\" id=\"main-nav\" aria-label=\"Main navigation\">\n <!-- Overview Section -->\n <div class=\"nav-section\" role=\"region\" aria-labelledby=\"overview-title\">\n <div class=\"nav-section__title\" id=\"overview-title\">Overview</div>\n <a class=\"nav-item\" data-page=\"dashboard\" href=\"#dashboard\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"9\" rx=\"1\"></rect>\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"5\" rx=\"1\"></rect>\n <rect x=\"14\" y=\"12\" width=\"7\" height=\"9\" rx=\"1\"></rect>\n <rect x=\"3\" y=\"16\" width=\"7\" height=\"5\" rx=\"1\"></rect>\n </svg>\n Dashboard\n </a>\n <a class=\"nav-item active\" data-page=\"projects\" href=\"#projects\" tabindex=\"0\" aria-current=\"page\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M3 3h18v18H3z\"></path>\n <path d=\"M21 9H3\"></path>\n <path d=\"M9 21V9\"></path>\n </svg>\n Projects\n </a>\n </div>\n\n <!-- Tools Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">Tools</div>\n <a class=\"nav-item\" data-page=\"services\" href=\"#services\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"19\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"5\" cy=\"12\" r=\"1\"></circle>\n </svg>\n Services\n </a>\n <a class=\"nav-item\" data-page=\"quick-wins\" href=\"#quick-wins\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z\"></path>\n </svg>\n Quick Wins\n </a>\n <a class=\"nav-item\" data-page=\"chat\" href=\"#chat\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path>\n </svg>\n Chat\n </a>\n </div>\n\n <!-- Design System Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">Design System</div>\n <a class=\"nav-item\" data-page=\"tokens\" href=\"#tokens\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"7\"></rect>\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"7\"></rect>\n <rect x=\"14\" y=\"14\" width=\"7\" height=\"7\"></rect>\n <rect x=\"3\" y=\"14\" width=\"7\" height=\"7\"></rect>\n </svg>\n Tokens\n </a>\n <a class=\"nav-item\" data-page=\"components\" href=\"#components\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2v20M2 12h20\"></path>\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n </svg>\n Components\n </a>\n <a class=\"nav-item\" data-page=\"figma\" href=\"#figma\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20z\"></path>\n <circle cx=\"12\" cy=\"12\" r=\"3\"></circle>\n </svg>\n Figma\n </a>\n <a id=\"storybook-link\" class=\"nav-item\" href=\"https://localhost/storybook/\" target=\"_blank\" tabindex=\"0\" title=\"Open Storybook at https://localhost/storybook/\" style=\"pointer-events: auto; opacity: 1;\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M4 3h16a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z\"></path>\n <path d=\"M9 9h6M9 15h6\"></path>\n </svg>\n Storybook\n </a>\n </div>\n\n <!-- System Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">System</div>\n <a class=\"nav-item\" data-page=\"docs\" href=\"#docs\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M4 19.5A2.5 2.5 0 0 1 6.5 17H20\"></path>\n <path d=\"M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z\"></path>\n </svg>\n Docs\n </a>\n <a class=\"nav-item\" data-page=\"teams\" href=\"#teams\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\"></path>\n <circle cx=\"9\" cy=\"7\" r=\"4\"></circle>\n <path d=\"M23 21v-2a4 4 0 0 0-3-3.87\"></path>\n <path d=\"M16 3.13a4 4 0 0 1 0 7.75\"></path>\n </svg>\n Teams\n </a>\n <a class=\"nav-item\" data-page=\"audit\" href=\"#audit\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M9 11l3 3L22 4\"></path>\n <path d=\"M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0z\"></path>\n </svg>\n Audit\n </a>\n <a class=\"nav-item\" data-page=\"plugins\" href=\"#plugins\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <path d=\"M12 1v6m0 6v6M4.22 4.22l4.24 4.24m3.08 3.08l4.24 4.24M1 12h6m6 0h6m-15.78 7.78l4.24-4.24m3.08-3.08l4.24-4.24\"></path>\n </svg>\n Plugins\n </a>\n <a class=\"nav-item\" data-page=\"settings\" href=\"#settings\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"3\"></circle>\n <path d=\"M12 1v6m0 6v6M4.22 4.22l4.24 4.24m3.08 3.08l4.24 4.24M1 12h6m6 0h6m-15.78 7.78l4.24-4.24m3.08-3.08l4.24-4.24\"></path>\n </svg>\n Settings\n </a>\n </div>\n </nav>\n\n <!-- Help Panel -->\n <div class=\"sidebar__help\">\n <details class=\"help-panel\">\n <summary class=\"help-panel__toggle\" tabindex=\"0\">\n <svg width=\"16\" height=\"16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n <path d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\"></path>\n <line x1=\"12\" y1=\"17\" x2=\"12.01\" y2=\"17\"></line>\n </svg>\n Quick Guide\n </summary>\n <div class=\"help-panel__content\">\n <div class=\"help-section\" data-team=\"ui\" style=\"display: none;\">\n <strong>UI Team</strong>\n <ul>\n <li>Extract tokens from Figma</li>\n <li>Sync to CSS variables</li>\n <li>Generate components</li>\n <li>Check token drift</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"ux\">\n <strong>UX Team</strong>\n <ul>\n <li>Add Figma files to project</li>\n <li>Run visual diff checks</li>\n <li>Review token consistency</li>\n <li>Validate components</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"qa\" style=\"display: none;\">\n <strong>QA Team</strong>\n <ul>\n <li>Define ESRE test cases</li>\n <li>Run component validation</li>\n <li>Review visual regressions</li>\n <li>Export audit logs</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"all\">\n <strong>Getting Started</strong>\n <ol>\n <li>Create a project</li>\n <li>Add Figma file key</li>\n <li>Extract & sync tokens</li>\n <li>Use AI chat for help</li>\n </ol>\n </div>\n </div>\n </details>\n </div>\n\n <!-- Sidebar Footer -->\n <div class=\"sidebar__footer\">\n <ds-badge data-variant=\"outline\">v1.0.0</ds-badge>\n </div>\n </aside>\n\n <!-- Main Content Area -->\n <main class=\"app-main\">\n <div id=\"page-content\" class=\"app-content\">\n <div class=\"page-header\">\n <h1>Projects</h1>\n <p class=\"text-muted\">Manage your design system projects</p>\n </div>\n\n <div class=\"flex justify-between items-center mt-6 mb-4\">\n \n \n New Project\n \n </div>\n\n \n\n \n <div class=\"grid grid-cols-2 gap-4\">\n \n \n \n test\n \n active\n \n \n \n <p class=\"text-sm mb-3\">a test project</p>\n <div class=\"flex flex-col gap-2 text-sm\">\n <div class=\"flex justify-between\">\n <span class=\"text-muted\">Figma Key:</span>\n <span class=\"font-mono text-xs\">figd_jRiYc6O6Uzt6PNP-TC4UkkVRn911Sx5clYK9HOtt</span>\n </div>\n <div class=\"flex justify-between\">\n <span class=\"text-muted\">Last Sync:</span>\n <span>Never</span>\n </div>\n <div class=\"flex justify-between\">\n <span class=\"text-muted\">Created:</span>\n <span>6/12/2025</span>\n </div>\n </div>\n \n \n <div class=\"flex gap-2\">\n \n Open\n \n \n Sync Tokens\n \n \n Delete\n \n </div>\n \n \n \n </div>\n \n </div>\n\n <!-- Right Sidebar - AI Chat -->\n <aside class=\"app-sidebar collapsed\" id=\"ai-sidebar\">\n <ds-ai-chat></ds-ai-chat>\n </aside>\n </main>\n </div>\n\n <!-- Toast Provider for notifications -->\n <ds-toast-provider></ds-toast-provider>\n\n <!-- Load Components -->\n\n\n</body></html>",
|
|
"viewport": {
|
|
"width": 1403,
|
|
"height": 958,
|
|
"devicePixelRatio": 2
|
|
},
|
|
"title": "Design System Server"
|
|
}
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#projects",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119294273,
|
|
"relativeTime": 86184,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [UI] Rendering quick wins page color: #2196F3; font-weight: bold",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [UI] Rendering quick wins page",
|
|
"color: #2196F3; font-weight: bold"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#quick-wins",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119294276,
|
|
"relativeTime": 86187,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [UI] Rendering quick wins page color: #2196F3; font-weight: bold",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [UI] Rendering quick wins page",
|
|
"color: #2196F3; font-weight: bold"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#quick-wins",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119294277,
|
|
"relativeTime": 86188,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [UI] Rendering quick wins page color: #2196F3; font-weight: bold",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [UI] Rendering quick wins page",
|
|
"color: #2196F3; font-weight: bold"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#quick-wins",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119294277,
|
|
"relativeTime": 86188,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [UI] Rendering quick wins page color: #2196F3; font-weight: bold",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [UI] Rendering quick wins page",
|
|
"color: #2196F3; font-weight: bold"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#quick-wins",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119294280,
|
|
"relativeTime": 86191,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [UI] Rendering quick wins page color: #2196F3; font-weight: bold",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [UI] Rendering quick wins page",
|
|
"color: #2196F3; font-weight: bold"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#quick-wins",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119294280,
|
|
"relativeTime": 86191,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [UI] Rendering quick wins page color: #2196F3; font-weight: bold",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [UI] Rendering quick wins page",
|
|
"color: #2196F3; font-weight: bold"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#quick-wins",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119295033,
|
|
"relativeTime": 86944,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [UI] Rendering services page color: #2196F3; font-weight: bold [object Object]",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [UI] Rendering services page",
|
|
"color: #2196F3; font-weight: bold",
|
|
{
|
|
"toolCount": 8,
|
|
"teamContext": "ux",
|
|
"categories": [
|
|
"Projects",
|
|
"Figma",
|
|
"Ingestion",
|
|
"Analysis",
|
|
"Storybook",
|
|
"Activity"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#services",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119295035,
|
|
"relativeTime": 86946,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [UI] Rendering services page color: #2196F3; font-weight: bold [object Object]",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [UI] Rendering services page",
|
|
"color: #2196F3; font-weight: bold",
|
|
{
|
|
"toolCount": 8,
|
|
"teamContext": "ux",
|
|
"categories": [
|
|
"Projects",
|
|
"Figma",
|
|
"Ingestion",
|
|
"Analysis",
|
|
"Storybook",
|
|
"Activity"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#services",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119295037,
|
|
"relativeTime": 86948,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [UI] Rendering services page color: #2196F3; font-weight: bold [object Object]",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [UI] Rendering services page",
|
|
"color: #2196F3; font-weight: bold",
|
|
{
|
|
"toolCount": 8,
|
|
"teamContext": "ux",
|
|
"categories": [
|
|
"Projects",
|
|
"Figma",
|
|
"Ingestion",
|
|
"Analysis",
|
|
"Storybook",
|
|
"Activity"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#services",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119295038,
|
|
"relativeTime": 86949,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [UI] Rendering services page color: #2196F3; font-weight: bold [object Object]",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [UI] Rendering services page",
|
|
"color: #2196F3; font-weight: bold",
|
|
{
|
|
"toolCount": 8,
|
|
"teamContext": "ux",
|
|
"categories": [
|
|
"Projects",
|
|
"Figma",
|
|
"Ingestion",
|
|
"Analysis",
|
|
"Storybook",
|
|
"Activity"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#services",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119295041,
|
|
"relativeTime": 86952,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [UI] Rendering services page color: #2196F3; font-weight: bold [object Object]",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [UI] Rendering services page",
|
|
"color: #2196F3; font-weight: bold",
|
|
{
|
|
"toolCount": 8,
|
|
"teamContext": "ux",
|
|
"categories": [
|
|
"Projects",
|
|
"Figma",
|
|
"Ingestion",
|
|
"Analysis",
|
|
"Storybook",
|
|
"Activity"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#services",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119295043,
|
|
"relativeTime": 86954,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [UI] Rendering services page color: #2196F3; font-weight: bold [object Object]",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [UI] Rendering services page",
|
|
"color: #2196F3; font-weight: bold",
|
|
{
|
|
"toolCount": 8,
|
|
"teamContext": "ux",
|
|
"categories": [
|
|
"Projects",
|
|
"Figma",
|
|
"Ingestion",
|
|
"Analysis",
|
|
"Storybook",
|
|
"Activity"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#services",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119295091,
|
|
"relativeTime": 87002,
|
|
"level": "info",
|
|
"category": "snapshot",
|
|
"message": "State Capture (navigation)",
|
|
"data": {
|
|
"trigger": "navigation",
|
|
"details": {
|
|
"from": "https://dss.overbits.luz.uy/admin-ui/index.html#projects",
|
|
"to": "https://dss.overbits.luz.uy/admin-ui/index.html#services"
|
|
},
|
|
"snapshot": {
|
|
"timestamp": 1765119295090,
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#services",
|
|
"html": "<html lang=\"en\" class=\"light\"><head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>Design System Server</title>\n <link rel=\"icon\" type=\"image/svg+xml\" href=\"/admin-ui/favicon.svg\">\n\n <!-- Design System Styles - Tokens and Base Styles -->\n <link rel=\"stylesheet\" href=\"/admin-ui/css/tokens.css\">\n <link rel=\"stylesheet\" href=\"/admin-ui/css/styles.css\">\n\n <!-- Markdown & Syntax Highlighting -->\n <script src=\"https://cdn.jsdelivr.net/npm/marked/marked.min.js\"></script>\n <script src=\"https://cdn.jsdelivr.net/npm/dompurify@3.0.6/dist/purify.min.js\"></script>\n <script src=\"https://cdn.jsdelivr.net/npm/highlight.js@11.9.0/lib/highlight.min.js\"></script>\n\n <script type=\"module\" crossorigin=\"\" src=\"/assets/index-DNcSjd3Y.js\"></script>\n</head>\n<body>\n <div id=\"app\" class=\"app-layout\">\n <!-- Top Navbar -->\n <header class=\"app-header\">\n <div class=\"app-header__project-selector\" id=\"project-selector-container\">\n <div class=\"project-selector\">\n <svg class=\"project-selector__icon\">\n \n \n \n </svg>\n <span class=\"project-selector__label\">Project:</span>\n \n \n \n test\n \n \n \n </div>\n </div>\n <div class=\"app-header__team-selector\">\n <label for=\"team-context-select\" class=\"sr-only\">Select team context</label>\n <select class=\"team-select\" id=\"team-context-select\" aria-label=\"Team context\">\n <option value=\"all\">All Teams</option>\n <option value=\"ui\">UI Team</option>\n <option value=\"ux\">UX Team</option>\n <option value=\"qa\">QA Team</option>\n </select>\n </div>\n <div class=\"app-header__actions\">\n <ds-button data-variant=\"ghost\" data-size=\"icon\" title=\"Toggle theme\" id=\"theme-toggle\" tabindex=\"0\" aria-label=\"Toggle dark/light theme\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M12 3v1m0 16v1m9-9h-1M4 12H3m15.364 6.364l-.707-.707M6.343 6.343l-.707-.707m12.728 0l-.707.707M6.343 17.657l-.707.707M16 12a4 4 0 1 1-8 0 4 4 0 0 1 8 0z\"></path>\n </svg>\n </ds-button>\n <div class=\"notification-toggle-container\" style=\"position: relative;\">\n <ds-button data-variant=\"ghost\" data-size=\"icon\" id=\"notification-toggle\" title=\"Notifications\" tabindex=\"0\" aria-label=\"View notifications\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9\"></path>\n <path d=\"M10.3 21a1.94 1.94 0 0 0 3.4 0\"></path>\n </svg>\n </ds-button>\n <span id=\"notification-indicator\" class=\"status-dot status-dot--error\" style=\"position: absolute; top: 6px; right: 6px; display: none;\"></span>\n <ds-notification-center></ds-notification-center>\n </div>\n <ds-button data-variant=\"ghost\" data-size=\"icon\" id=\"sidebar-toggle\" title=\"Toggle AI Assistant\" tabindex=\"0\" aria-label=\"Toggle AI Assistant sidebar\" aria-controls=\"ai-sidebar\" aria-expanded=\"false\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path>\n </svg>\n </ds-button>\n <div class=\"ds-avatar\" tabindex=\"0\" role=\"button\" aria-label=\"User profile menu\">\n <span>U</span>\n </div>\n </div>\n </header>\n\n <!-- Left Sidebar Navigation -->\n <aside class=\"sidebar\">\n <div class=\"sidebar__header\">\n <div class=\"sidebar__logo\">\n <div class=\"sidebar__logo-icon\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2L2 7l10 5 10-5-10-5z\"></path>\n <path d=\"M2 17l10 5 10-5\"></path>\n <path d=\"M2 12l10 5 10-5\"></path>\n </svg>\n </div>\n <span>DSS</span>\n </div>\n </div>\n\n <nav class=\"sidebar__nav\" id=\"main-nav\" aria-label=\"Main navigation\">\n <!-- Overview Section -->\n <div class=\"nav-section\" role=\"region\" aria-labelledby=\"overview-title\">\n <div class=\"nav-section__title\" id=\"overview-title\">Overview</div>\n <a class=\"nav-item\" data-page=\"dashboard\" href=\"#dashboard\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"9\" rx=\"1\"></rect>\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"5\" rx=\"1\"></rect>\n <rect x=\"14\" y=\"12\" width=\"7\" height=\"9\" rx=\"1\"></rect>\n <rect x=\"3\" y=\"16\" width=\"7\" height=\"5\" rx=\"1\"></rect>\n </svg>\n Dashboard\n </a>\n <a class=\"nav-item\" data-page=\"projects\" href=\"#projects\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M3 3h18v18H3z\"></path>\n <path d=\"M21 9H3\"></path>\n <path d=\"M9 21V9\"></path>\n </svg>\n Projects\n </a>\n </div>\n\n <!-- Tools Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">Tools</div>\n <a class=\"nav-item active\" data-page=\"services\" href=\"#services\" tabindex=\"0\" aria-current=\"page\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"19\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"5\" cy=\"12\" r=\"1\"></circle>\n </svg>\n Services\n </a>\n <a class=\"nav-item\" data-page=\"quick-wins\" href=\"#quick-wins\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z\"></path>\n </svg>\n Quick Wins\n </a>\n <a class=\"nav-item\" data-page=\"chat\" href=\"#chat\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path>\n </svg>\n Chat\n </a>\n </div>\n\n <!-- Design System Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">Design System</div>\n <a class=\"nav-item\" data-page=\"tokens\" href=\"#tokens\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"7\"></rect>\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"7\"></rect>\n <rect x=\"14\" y=\"14\" width=\"7\" height=\"7\"></rect>\n <rect x=\"3\" y=\"14\" width=\"7\" height=\"7\"></rect>\n </svg>\n Tokens\n </a>\n <a class=\"nav-item\" data-page=\"components\" href=\"#components\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2v20M2 12h20\"></path>\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n </svg>\n Components\n </a>\n <a class=\"nav-item\" data-page=\"figma\" href=\"#figma\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20z\"></path>\n <circle cx=\"12\" cy=\"12\" r=\"3\"></circle>\n </svg>\n Figma\n </a>\n <a id=\"storybook-link\" class=\"nav-item\" href=\"https://localhost/storybook/\" target=\"_blank\" tabindex=\"0\" title=\"Open Storybook at https://localhost/storybook/\" style=\"pointer-events: auto; opacity: 1;\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M4 3h16a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z\"></path>\n <path d=\"M9 9h6M9 15h6\"></path>\n </svg>\n Storybook\n </a>\n </div>\n\n <!-- System Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">System</div>\n <a class=\"nav-item\" data-page=\"docs\" href=\"#docs\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M4 19.5A2.5 2.5 0 0 1 6.5 17H20\"></path>\n <path d=\"M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z\"></path>\n </svg>\n Docs\n </a>\n <a class=\"nav-item\" data-page=\"teams\" href=\"#teams\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\"></path>\n <circle cx=\"9\" cy=\"7\" r=\"4\"></circle>\n <path d=\"M23 21v-2a4 4 0 0 0-3-3.87\"></path>\n <path d=\"M16 3.13a4 4 0 0 1 0 7.75\"></path>\n </svg>\n Teams\n </a>\n <a class=\"nav-item\" data-page=\"audit\" href=\"#audit\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M9 11l3 3L22 4\"></path>\n <path d=\"M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0z\"></path>\n </svg>\n Audit\n </a>\n <a class=\"nav-item\" data-page=\"plugins\" href=\"#plugins\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <path d=\"M12 1v6m0 6v6M4.22 4.22l4.24 4.24m3.08 3.08l4.24 4.24M1 12h6m6 0h6m-15.78 7.78l4.24-4.24m3.08-3.08l4.24-4.24\"></path>\n </svg>\n Plugins\n </a>\n <a class=\"nav-item\" data-page=\"settings\" href=\"#settings\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"3\"></circle>\n <path d=\"M12 1v6m0 6v6M4.22 4.22l4.24 4.24m3.08 3.08l4.24 4.24M1 12h6m6 0h6m-15.78 7.78l4.24-4.24m3.08-3.08l4.24-4.24\"></path>\n </svg>\n Settings\n </a>\n </div>\n </nav>\n\n <!-- Help Panel -->\n <div class=\"sidebar__help\">\n <details class=\"help-panel\">\n <summary class=\"help-panel__toggle\" tabindex=\"0\">\n <svg width=\"16\" height=\"16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n <path d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\"></path>\n <line x1=\"12\" y1=\"17\" x2=\"12.01\" y2=\"17\"></line>\n </svg>\n Quick Guide\n </summary>\n <div class=\"help-panel__content\">\n <div class=\"help-section\" data-team=\"ui\" style=\"display: none;\">\n <strong>UI Team</strong>\n <ul>\n <li>Extract tokens from Figma</li>\n <li>Sync to CSS variables</li>\n <li>Generate components</li>\n <li>Check token drift</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"ux\">\n <strong>UX Team</strong>\n <ul>\n <li>Add Figma files to project</li>\n <li>Run visual diff checks</li>\n <li>Review token consistency</li>\n <li>Validate components</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"qa\" style=\"display: none;\">\n <strong>QA Team</strong>\n <ul>\n <li>Define ESRE test cases</li>\n <li>Run component validation</li>\n <li>Review visual regressions</li>\n <li>Export audit logs</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"all\">\n <strong>Getting Started</strong>\n <ol>\n <li>Create a project</li>\n <li>Add Figma file key</li>\n <li>Extract & sync tokens</li>\n <li>Use AI chat for help</li>\n </ol>\n </div>\n </div>\n </details>\n </div>\n\n <!-- Sidebar Footer -->\n <div class=\"sidebar__footer\">\n <ds-badge data-variant=\"outline\">v1.0.0</ds-badge>\n </div>\n </aside>\n\n <!-- Main Content Area -->\n <main class=\"app-main\">\n <div id=\"page-content\" class=\"app-content\">\n <div class=\"page-header\">\n <div class=\"flex items-center justify-between\">\n <div>\n <h1>Services</h1>\n <p class=\"text-muted\">8 tools available</p>\n </div>\n <input style=\"width: 200px;\" class=\"input\" placeholder=\"Search...\" id=\"toolSearch\" type=\"text\">\n </div>\n </div>\n\n <div class=\"tools-container\" id=\"toolsContainer\">\n \n <div data-category=\"Figma\" class=\"tools-category\">\n <div class=\"tools-category__header\">\n <span class=\"tools-category__icon\"><svg height=\"18\" width=\"18\"></svg></span>\n <span class=\"tools-category__name\">Figma</span>\n <span class=\"tools-category__count\">1</span>\n </div>\n <div class=\"tools-category__list\">\n \n <div data-action=\"executeTool\" data-category=\"Figma\" data-tool=\"extract_tokens\" class=\"tool-item\">\n <span class=\"tool-item__icon\">\ud83c\udfa8</span>\n <div class=\"tool-item__info\">\n <div class=\"tool-item__name\">extract tokens</div>\n <div class=\"tool-item__desc\">Extract design tokens from Figma file</div>\n </div>\n <span class=\"tool-item__params\">2p</span>\n <svg height=\"16\" width=\"16\" class=\"tool-item__action\"></svg>\n </div>\n \n </div>\n </div>\n \n <div data-category=\"Ingestion\" class=\"tools-category\">\n <div class=\"tools-category__header\">\n <span class=\"tools-category__icon\"><svg height=\"18\" width=\"18\"></svg></span>\n <span class=\"tools-category__name\">Ingestion</span>\n <span class=\"tools-category__count\">2</span>\n </div>\n <div class=\"tools-category__list\">\n \n <div data-action=\"executeTool\" data-category=\"Ingestion\" data-tool=\"export_tokens\" class=\"tool-item\">\n <span class=\"tool-item__icon\">\ud83d\udce4</span>\n <div class=\"tool-item__info\">\n <div class=\"tool-item__name\">export tokens</div>\n <div class=\"tool-item__desc\">Export tokens to specified format</div>\n </div>\n <span class=\"tool-item__params\">2p</span>\n <svg height=\"16\" width=\"16\" class=\"tool-item__action\"></svg>\n </div>\n \n <div data-action=\"executeTool\" data-category=\"Ingestion\" data-tool=\"validate_tokens\" class=\"tool-item\">\n <span class=\"tool-item__icon\">\u2713</span>\n <div class=\"tool-item__info\">\n <div class=\"tool-item__name\">validate tokens</div>\n <div class=\"tool-item__desc\">Validate token structure and values</div>\n </div>\n <span class=\"tool-item__params\">1p</span>\n <svg height=\"16\" width=\"16\" class=\"tool-item__action\"></svg>\n </div>\n \n </div>\n </div>\n \n <div data-category=\"Analysis\" class=\"tools-category\">\n <div class=\"tools-category__header\">\n <span class=\"tools-category__icon\"><svg height=\"18\" width=\"18\"></svg></span>\n <span class=\"tools-category__name\">Analysis</span>\n <span class=\"tools-category__count\">4</span>\n </div>\n <div class=\"tools-category__list\">\n \n <div data-action=\"executeTool\" data-category=\"Analysis\" data-tool=\"discover_project\" class=\"tool-item\">\n <span class=\"tool-item__icon\">\ud83d\udd0e</span>\n <div class=\"tool-item__info\">\n <div class=\"tool-item__name\">discover project</div>\n <div class=\"tool-item__desc\">Discover project structure and frameworks</div>\n </div>\n <span class=\"tool-item__params\">1p</span>\n <svg height=\"16\" width=\"16\" class=\"tool-item__action\"></svg>\n </div>\n \n <div data-action=\"executeTool\" data-category=\"Analysis\" data-tool=\"find_style_patterns\" class=\"tool-item\">\n <span class=\"tool-item__icon\">\ud83d\udcca</span>\n <div class=\"tool-item__info\">\n <div class=\"tool-item__name\">find style patterns</div>\n <div class=\"tool-item__desc\">Identify common style patterns</div>\n </div>\n <span class=\"tool-item__params\">1p</span>\n <svg height=\"16\" width=\"16\" class=\"tool-item__action\"></svg>\n </div>\n \n <div data-action=\"executeTool\" data-category=\"Analysis\" data-tool=\"analyze_style_values\" class=\"tool-item\">\n <span class=\"tool-item__icon\">\ud83d\udcc8</span>\n <div class=\"tool-item__info\">\n <div class=\"tool-item__name\">analyze style values</div>\n <div class=\"tool-item__desc\">Analyze style property values</div>\n </div>\n <span class=\"tool-item__params\">2p</span>\n <svg height=\"16\" width=\"16\" class=\"tool-item__action\"></svg>\n </div>\n \n <div data-action=\"executeTool\" data-category=\"Analysis\" data-tool=\"check_naming_consistency\" class=\"tool-item\">\n <span class=\"tool-item__icon\">\ud83c\udff7\ufe0f</span>\n <div class=\"tool-item__info\">\n <div class=\"tool-item__name\">check naming consistency</div>\n <div class=\"tool-item__desc\">Check component naming consistency</div>\n </div>\n <span class=\"tool-item__params\">1p</span>\n <svg height=\"16\" width=\"16\" class=\"tool-item__action\"></svg>\n </div>\n \n </div>\n </div>\n \n <div data-category=\"Activity\" class=\"tools-category\">\n <div class=\"tools-category__header\">\n <span class=\"tools-category__icon\"><svg height=\"18\" width=\"18\"></svg></span>\n <span class=\"tools-category__name\">Activity</span>\n <span class=\"tools-category__count\">1</span>\n </div>\n <div class=\"tools-category__list\">\n \n <div data-action=\"executeTool\" data-category=\"Activity\" data-tool=\"get_sync_history\" class=\"tool-item\">\n <span class=\"tool-item__icon\">\ud83d\udcdc</span>\n <div class=\"tool-item__info\">\n <div class=\"tool-item__name\">get sync history</div>\n <div class=\"tool-item__desc\">Get token sync history</div>\n </div>\n <span class=\"tool-item__params\">1p</span>\n <svg height=\"16\" width=\"16\" class=\"tool-item__action\"></svg>\n </div>\n \n </div>\n </div>\n \n </div>\n\n \n </div>\n\n <!-- Right Sidebar - AI Chat -->\n <aside class=\"app-sidebar collapsed\" id=\"ai-sidebar\">\n <ds-ai-chat></ds-ai-chat>\n </aside>\n </main>\n </div>\n\n <!-- Toast Provider for notifications -->\n <ds-toast-provider></ds-toast-provider>\n\n <!-- Load Components -->\n\n\n</body></html>",
|
|
"viewport": {
|
|
"width": 1403,
|
|
"height": 958,
|
|
"devicePixelRatio": 2
|
|
},
|
|
"title": "Design System Server"
|
|
}
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#services",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119296186,
|
|
"relativeTime": 88097,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [UI] Rendering chat page color: #2196F3; font-weight: bold [object Object]",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [UI] Rendering chat page",
|
|
"color: #2196F3; font-weight: bold",
|
|
{
|
|
"historyLength": 0,
|
|
"model": "claude"
|
|
}
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#chat",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119296189,
|
|
"relativeTime": 88100,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [UI] Rendering chat page color: #2196F3; font-weight: bold [object Object]",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [UI] Rendering chat page",
|
|
"color: #2196F3; font-weight: bold",
|
|
{
|
|
"historyLength": 0,
|
|
"model": "claude"
|
|
}
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#chat",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119296190,
|
|
"relativeTime": 88101,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [UI] Rendering chat page color: #2196F3; font-weight: bold [object Object]",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [UI] Rendering chat page",
|
|
"color: #2196F3; font-weight: bold",
|
|
{
|
|
"historyLength": 0,
|
|
"model": "claude"
|
|
}
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#chat",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119296191,
|
|
"relativeTime": 88102,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [UI] Rendering chat page color: #2196F3; font-weight: bold [object Object]",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [UI] Rendering chat page",
|
|
"color: #2196F3; font-weight: bold",
|
|
{
|
|
"historyLength": 0,
|
|
"model": "claude"
|
|
}
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#chat",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119296195,
|
|
"relativeTime": 88106,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [UI] Rendering chat page color: #2196F3; font-weight: bold [object Object]",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [UI] Rendering chat page",
|
|
"color: #2196F3; font-weight: bold",
|
|
{
|
|
"historyLength": 0,
|
|
"model": "claude"
|
|
}
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#chat",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119296196,
|
|
"relativeTime": 88107,
|
|
"level": "log",
|
|
"category": "console",
|
|
"message": "%c\ud83d\udcad [UI] Rendering chat page color: #2196F3; font-weight: bold [object Object]",
|
|
"data": {
|
|
"args": [
|
|
"%c\ud83d\udcad [UI] Rendering chat page",
|
|
"color: #2196F3; font-weight: bold",
|
|
{
|
|
"historyLength": 0,
|
|
"model": "claude"
|
|
}
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#chat",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119297091,
|
|
"relativeTime": 89002,
|
|
"level": "info",
|
|
"category": "snapshot",
|
|
"message": "State Capture (navigation)",
|
|
"data": {
|
|
"trigger": "navigation",
|
|
"details": {
|
|
"from": "https://dss.overbits.luz.uy/admin-ui/index.html#services",
|
|
"to": "https://dss.overbits.luz.uy/admin-ui/index.html#chat"
|
|
},
|
|
"snapshot": {
|
|
"timestamp": 1765119297091,
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#chat",
|
|
"html": "<html lang=\"en\" class=\"light\"><head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>Design System Server</title>\n <link rel=\"icon\" type=\"image/svg+xml\" href=\"/admin-ui/favicon.svg\">\n\n <!-- Design System Styles - Tokens and Base Styles -->\n <link rel=\"stylesheet\" href=\"/admin-ui/css/tokens.css\">\n <link rel=\"stylesheet\" href=\"/admin-ui/css/styles.css\">\n\n <!-- Markdown & Syntax Highlighting -->\n <script src=\"https://cdn.jsdelivr.net/npm/marked/marked.min.js\"></script>\n <script src=\"https://cdn.jsdelivr.net/npm/dompurify@3.0.6/dist/purify.min.js\"></script>\n <script src=\"https://cdn.jsdelivr.net/npm/highlight.js@11.9.0/lib/highlight.min.js\"></script>\n\n <script type=\"module\" crossorigin=\"\" src=\"/assets/index-DNcSjd3Y.js\"></script>\n</head>\n<body>\n <div id=\"app\" class=\"app-layout\">\n <!-- Top Navbar -->\n <header class=\"app-header\">\n <div class=\"app-header__project-selector\" id=\"project-selector-container\">\n <div class=\"project-selector\">\n <svg class=\"project-selector__icon\">\n \n \n \n </svg>\n <span class=\"project-selector__label\">Project:</span>\n \n \n \n test\n \n \n \n </div>\n </div>\n <div class=\"app-header__team-selector\">\n <label for=\"team-context-select\" class=\"sr-only\">Select team context</label>\n <select class=\"team-select\" id=\"team-context-select\" aria-label=\"Team context\">\n <option value=\"all\">All Teams</option>\n <option value=\"ui\">UI Team</option>\n <option value=\"ux\">UX Team</option>\n <option value=\"qa\">QA Team</option>\n </select>\n </div>\n <div class=\"app-header__actions\">\n <ds-button data-variant=\"ghost\" data-size=\"icon\" title=\"Toggle theme\" id=\"theme-toggle\" tabindex=\"0\" aria-label=\"Toggle dark/light theme\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M12 3v1m0 16v1m9-9h-1M4 12H3m15.364 6.364l-.707-.707M6.343 6.343l-.707-.707m12.728 0l-.707.707M6.343 17.657l-.707.707M16 12a4 4 0 1 1-8 0 4 4 0 0 1 8 0z\"></path>\n </svg>\n </ds-button>\n <div class=\"notification-toggle-container\" style=\"position: relative;\">\n <ds-button data-variant=\"ghost\" data-size=\"icon\" id=\"notification-toggle\" title=\"Notifications\" tabindex=\"0\" aria-label=\"View notifications\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9\"></path>\n <path d=\"M10.3 21a1.94 1.94 0 0 0 3.4 0\"></path>\n </svg>\n </ds-button>\n <span id=\"notification-indicator\" class=\"status-dot status-dot--error\" style=\"position: absolute; top: 6px; right: 6px; display: none;\"></span>\n <ds-notification-center></ds-notification-center>\n </div>\n <ds-button data-variant=\"ghost\" data-size=\"icon\" id=\"sidebar-toggle\" title=\"Toggle AI Assistant\" tabindex=\"0\" aria-label=\"Toggle AI Assistant sidebar\" aria-controls=\"ai-sidebar\" aria-expanded=\"false\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path>\n </svg>\n </ds-button>\n <div class=\"ds-avatar\" tabindex=\"0\" role=\"button\" aria-label=\"User profile menu\">\n <span>U</span>\n </div>\n </div>\n </header>\n\n <!-- Left Sidebar Navigation -->\n <aside class=\"sidebar\">\n <div class=\"sidebar__header\">\n <div class=\"sidebar__logo\">\n <div class=\"sidebar__logo-icon\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2L2 7l10 5 10-5-10-5z\"></path>\n <path d=\"M2 17l10 5 10-5\"></path>\n <path d=\"M2 12l10 5 10-5\"></path>\n </svg>\n </div>\n <span>DSS</span>\n </div>\n </div>\n\n <nav class=\"sidebar__nav\" id=\"main-nav\" aria-label=\"Main navigation\">\n <!-- Overview Section -->\n <div class=\"nav-section\" role=\"region\" aria-labelledby=\"overview-title\">\n <div class=\"nav-section__title\" id=\"overview-title\">Overview</div>\n <a class=\"nav-item\" data-page=\"dashboard\" href=\"#dashboard\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"9\" rx=\"1\"></rect>\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"5\" rx=\"1\"></rect>\n <rect x=\"14\" y=\"12\" width=\"7\" height=\"9\" rx=\"1\"></rect>\n <rect x=\"3\" y=\"16\" width=\"7\" height=\"5\" rx=\"1\"></rect>\n </svg>\n Dashboard\n </a>\n <a class=\"nav-item\" data-page=\"projects\" href=\"#projects\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M3 3h18v18H3z\"></path>\n <path d=\"M21 9H3\"></path>\n <path d=\"M9 21V9\"></path>\n </svg>\n Projects\n </a>\n </div>\n\n <!-- Tools Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">Tools</div>\n <a class=\"nav-item\" data-page=\"services\" href=\"#services\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"19\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"5\" cy=\"12\" r=\"1\"></circle>\n </svg>\n Services\n </a>\n <a class=\"nav-item\" data-page=\"quick-wins\" href=\"#quick-wins\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z\"></path>\n </svg>\n Quick Wins\n </a>\n <a class=\"nav-item active\" data-page=\"chat\" href=\"#chat\" tabindex=\"0\" aria-current=\"page\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path>\n </svg>\n Chat\n </a>\n </div>\n\n <!-- Design System Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">Design System</div>\n <a class=\"nav-item\" data-page=\"tokens\" href=\"#tokens\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"7\"></rect>\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"7\"></rect>\n <rect x=\"14\" y=\"14\" width=\"7\" height=\"7\"></rect>\n <rect x=\"3\" y=\"14\" width=\"7\" height=\"7\"></rect>\n </svg>\n Tokens\n </a>\n <a class=\"nav-item\" data-page=\"components\" href=\"#components\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2v20M2 12h20\"></path>\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n </svg>\n Components\n </a>\n <a class=\"nav-item\" data-page=\"figma\" href=\"#figma\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20z\"></path>\n <circle cx=\"12\" cy=\"12\" r=\"3\"></circle>\n </svg>\n Figma\n </a>\n <a id=\"storybook-link\" class=\"nav-item\" href=\"https://localhost/storybook/\" target=\"_blank\" tabindex=\"0\" title=\"Open Storybook at https://localhost/storybook/\" style=\"pointer-events: auto; opacity: 1;\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M4 3h16a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z\"></path>\n <path d=\"M9 9h6M9 15h6\"></path>\n </svg>\n Storybook\n </a>\n </div>\n\n <!-- System Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">System</div>\n <a class=\"nav-item\" data-page=\"docs\" href=\"#docs\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M4 19.5A2.5 2.5 0 0 1 6.5 17H20\"></path>\n <path d=\"M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z\"></path>\n </svg>\n Docs\n </a>\n <a class=\"nav-item\" data-page=\"teams\" href=\"#teams\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\"></path>\n <circle cx=\"9\" cy=\"7\" r=\"4\"></circle>\n <path d=\"M23 21v-2a4 4 0 0 0-3-3.87\"></path>\n <path d=\"M16 3.13a4 4 0 0 1 0 7.75\"></path>\n </svg>\n Teams\n </a>\n <a class=\"nav-item\" data-page=\"audit\" href=\"#audit\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M9 11l3 3L22 4\"></path>\n <path d=\"M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0z\"></path>\n </svg>\n Audit\n </a>\n <a class=\"nav-item\" data-page=\"plugins\" href=\"#plugins\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <path d=\"M12 1v6m0 6v6M4.22 4.22l4.24 4.24m3.08 3.08l4.24 4.24M1 12h6m6 0h6m-15.78 7.78l4.24-4.24m3.08-3.08l4.24-4.24\"></path>\n </svg>\n Plugins\n </a>\n <a class=\"nav-item\" data-page=\"settings\" href=\"#settings\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"3\"></circle>\n <path d=\"M12 1v6m0 6v6M4.22 4.22l4.24 4.24m3.08 3.08l4.24 4.24M1 12h6m6 0h6m-15.78 7.78l4.24-4.24m3.08-3.08l4.24-4.24\"></path>\n </svg>\n Settings\n </a>\n </div>\n </nav>\n\n <!-- Help Panel -->\n <div class=\"sidebar__help\">\n <details class=\"help-panel\">\n <summary class=\"help-panel__toggle\" tabindex=\"0\">\n <svg width=\"16\" height=\"16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n <path d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\"></path>\n <line x1=\"12\" y1=\"17\" x2=\"12.01\" y2=\"17\"></line>\n </svg>\n Quick Guide\n </summary>\n <div class=\"help-panel__content\">\n <div class=\"help-section\" data-team=\"ui\" style=\"display: none;\">\n <strong>UI Team</strong>\n <ul>\n <li>Extract tokens from Figma</li>\n <li>Sync to CSS variables</li>\n <li>Generate components</li>\n <li>Check token drift</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"ux\">\n <strong>UX Team</strong>\n <ul>\n <li>Add Figma files to project</li>\n <li>Run visual diff checks</li>\n <li>Review token consistency</li>\n <li>Validate components</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"qa\" style=\"display: none;\">\n <strong>QA Team</strong>\n <ul>\n <li>Define ESRE test cases</li>\n <li>Run component validation</li>\n <li>Review visual regressions</li>\n <li>Export audit logs</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"all\">\n <strong>Getting Started</strong>\n <ol>\n <li>Create a project</li>\n <li>Add Figma file key</li>\n <li>Extract & sync tokens</li>\n <li>Use AI chat for help</li>\n </ol>\n </div>\n </div>\n </details>\n </div>\n\n <!-- Sidebar Footer -->\n <div class=\"sidebar__footer\">\n <ds-badge data-variant=\"outline\">v1.0.0</ds-badge>\n </div>\n </aside>\n\n <!-- Main Content Area -->\n <main class=\"app-main\">\n <div id=\"page-content\" class=\"app-content\">\n <div class=\"page-header\">\n <div class=\"flex items-center justify-between\">\n <div>\n <h1>\ud83d\udcac AI Assistant</h1>\n <p class=\"text-muted\">Ask questions about your design system</p>\n </div>\n <div class=\"flex gap-2\">\n \n \ud83e\udd16 Claude\n \u2728 Gemini\n \n <button data-action=\"exportChat\" class=\"btn btn-outline btn-sm\">\n \ud83d\udce5 Export\n </button>\n <button data-action=\"clearChat\" class=\"btn btn-outline btn-sm\">\n \ud83d\uddd1\ufe0f Clear\n </button>\n </div>\n </div>\n </div>\n\n <div style=\"height: calc(100vh - 200px);\" class=\"card flex flex-col\">\n \n <div class=\"flex-1 overflow-y-auto p-4 space-y-4\" id=\"chatMessages\">\n \n <div class=\"text-center text-muted py-12\">\n <p class=\"text-lg mb-2\">\ud83d\udc4b Hi! I'm Claude</p>\n <p>Ask me anything about your design system, tokens, or code</p>\n </div>\n \n </div>\n\n \n <div class=\"border-t p-4\">\n \n <input class=\"input flex-1\" placeholder=\"Ask Claude something...\" id=\"chatInput\" type=\"text\">\n <button data-action=\"sendChatMessage\" class=\"btn btn-primary\" type=\"submit\">\n Send\n </button>\n \n </div>\n </div>\n </div>\n\n <!-- Right Sidebar - AI Chat -->\n <aside class=\"app-sidebar collapsed\" id=\"ai-sidebar\">\n <ds-ai-chat></ds-ai-chat>\n </aside>\n </main>\n </div>\n\n <!-- Toast Provider for notifications -->\n <ds-toast-provider></ds-toast-provider>\n\n <!-- Load Components -->\n\n\n</body></html>",
|
|
"viewport": {
|
|
"width": 1403,
|
|
"height": 958,
|
|
"devicePixelRatio": 2
|
|
},
|
|
"title": "Design System Server"
|
|
}
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#chat",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119299248,
|
|
"relativeTime": 91159,
|
|
"level": "debug",
|
|
"category": "console",
|
|
"message": "[BrowserLogger] Synced 56 logs to server",
|
|
"data": {
|
|
"args": [
|
|
"[BrowserLogger] Synced 56 logs to server"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#chat",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119299299,
|
|
"relativeTime": 91210,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/browser-logs",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/browser-logs",
|
|
"initiatorType": "fetch",
|
|
"duration": 1154.5,
|
|
"transferSize": 442,
|
|
"encodedBodySize": 142,
|
|
"decodedBodySize": 142
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#chat",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119299945,
|
|
"relativeTime": 91856,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/health",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/health",
|
|
"initiatorType": "fetch",
|
|
"duration": 188.59999999403954,
|
|
"transferSize": 583,
|
|
"encodedBodySize": 283,
|
|
"decodedBodySize": 283
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#chat",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119304295,
|
|
"relativeTime": 96206,
|
|
"level": "error",
|
|
"category": "console",
|
|
"message": "Failed to clear notifications: TypeError: idb.clear is not a function",
|
|
"data": {
|
|
"args": [
|
|
"Failed to clear notifications:",
|
|
{}
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#chat",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119311091,
|
|
"relativeTime": 103002,
|
|
"level": "info",
|
|
"category": "snapshot",
|
|
"message": "State Capture (navigation)",
|
|
"data": {
|
|
"trigger": "navigation",
|
|
"details": {
|
|
"from": "https://dss.overbits.luz.uy/admin-ui/index.html#chat",
|
|
"to": "https://dss.overbits.luz.uy/admin-ui/index.html#teams"
|
|
},
|
|
"snapshot": {
|
|
"timestamp": 1765119311091,
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#teams",
|
|
"html": "<html lang=\"en\" class=\"light\"><head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>Design System Server</title>\n <link rel=\"icon\" type=\"image/svg+xml\" href=\"/admin-ui/favicon.svg\">\n\n <!-- Design System Styles - Tokens and Base Styles -->\n <link rel=\"stylesheet\" href=\"/admin-ui/css/tokens.css\">\n <link rel=\"stylesheet\" href=\"/admin-ui/css/styles.css\">\n\n <!-- Markdown & Syntax Highlighting -->\n <script src=\"https://cdn.jsdelivr.net/npm/marked/marked.min.js\"></script>\n <script src=\"https://cdn.jsdelivr.net/npm/dompurify@3.0.6/dist/purify.min.js\"></script>\n <script src=\"https://cdn.jsdelivr.net/npm/highlight.js@11.9.0/lib/highlight.min.js\"></script>\n\n <script type=\"module\" crossorigin=\"\" src=\"/assets/index-DNcSjd3Y.js\"></script>\n</head>\n<body>\n <div id=\"app\" class=\"app-layout\">\n <!-- Top Navbar -->\n <header class=\"app-header\">\n <div class=\"app-header__project-selector\" id=\"project-selector-container\">\n <div class=\"project-selector\">\n <svg class=\"project-selector__icon\">\n \n \n \n </svg>\n <span class=\"project-selector__label\">Project:</span>\n \n \n \n test\n \n \n \n </div>\n </div>\n <div class=\"app-header__team-selector\">\n <label for=\"team-context-select\" class=\"sr-only\">Select team context</label>\n <select class=\"team-select\" id=\"team-context-select\" aria-label=\"Team context\">\n <option value=\"all\">All Teams</option>\n <option value=\"ui\">UI Team</option>\n <option value=\"ux\">UX Team</option>\n <option value=\"qa\">QA Team</option>\n </select>\n </div>\n <div class=\"app-header__actions\">\n <ds-button data-variant=\"ghost\" data-size=\"icon\" title=\"Toggle theme\" id=\"theme-toggle\" tabindex=\"0\" aria-label=\"Toggle dark/light theme\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M12 3v1m0 16v1m9-9h-1M4 12H3m15.364 6.364l-.707-.707M6.343 6.343l-.707-.707m12.728 0l-.707.707M6.343 17.657l-.707.707M16 12a4 4 0 1 1-8 0 4 4 0 0 1 8 0z\"></path>\n </svg>\n </ds-button>\n <div class=\"notification-toggle-container\" style=\"position: relative;\">\n <ds-button data-variant=\"ghost\" data-size=\"icon\" id=\"notification-toggle\" title=\"Notifications\" tabindex=\"0\" aria-label=\"View notifications\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9\"></path>\n <path d=\"M10.3 21a1.94 1.94 0 0 0 3.4 0\"></path>\n </svg>\n </ds-button>\n <span id=\"notification-indicator\" class=\"status-dot status-dot--error\" style=\"position: absolute; top: 6px; right: 6px; display: none;\"></span>\n <ds-notification-center></ds-notification-center>\n </div>\n <ds-button data-variant=\"ghost\" data-size=\"icon\" id=\"sidebar-toggle\" title=\"Toggle AI Assistant\" tabindex=\"0\" aria-label=\"Toggle AI Assistant sidebar\" aria-controls=\"ai-sidebar\" aria-expanded=\"false\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path>\n </svg>\n </ds-button>\n <div class=\"ds-avatar\" tabindex=\"0\" role=\"button\" aria-label=\"User profile menu\">\n <span>U</span>\n </div>\n </div>\n </header>\n\n <!-- Left Sidebar Navigation -->\n <aside class=\"sidebar\">\n <div class=\"sidebar__header\">\n <div class=\"sidebar__logo\">\n <div class=\"sidebar__logo-icon\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2L2 7l10 5 10-5-10-5z\"></path>\n <path d=\"M2 17l10 5 10-5\"></path>\n <path d=\"M2 12l10 5 10-5\"></path>\n </svg>\n </div>\n <span>DSS</span>\n </div>\n </div>\n\n <nav class=\"sidebar__nav\" id=\"main-nav\" aria-label=\"Main navigation\">\n <!-- Overview Section -->\n <div class=\"nav-section\" role=\"region\" aria-labelledby=\"overview-title\">\n <div class=\"nav-section__title\" id=\"overview-title\">Overview</div>\n <a class=\"nav-item\" data-page=\"dashboard\" href=\"#dashboard\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"9\" rx=\"1\"></rect>\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"5\" rx=\"1\"></rect>\n <rect x=\"14\" y=\"12\" width=\"7\" height=\"9\" rx=\"1\"></rect>\n <rect x=\"3\" y=\"16\" width=\"7\" height=\"5\" rx=\"1\"></rect>\n </svg>\n Dashboard\n </a>\n <a class=\"nav-item\" data-page=\"projects\" href=\"#projects\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M3 3h18v18H3z\"></path>\n <path d=\"M21 9H3\"></path>\n <path d=\"M9 21V9\"></path>\n </svg>\n Projects\n </a>\n </div>\n\n <!-- Tools Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">Tools</div>\n <a class=\"nav-item\" data-page=\"services\" href=\"#services\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"19\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"5\" cy=\"12\" r=\"1\"></circle>\n </svg>\n Services\n </a>\n <a class=\"nav-item\" data-page=\"quick-wins\" href=\"#quick-wins\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z\"></path>\n </svg>\n Quick Wins\n </a>\n <a class=\"nav-item\" data-page=\"chat\" href=\"#chat\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path>\n </svg>\n Chat\n </a>\n </div>\n\n <!-- Design System Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">Design System</div>\n <a class=\"nav-item\" data-page=\"tokens\" href=\"#tokens\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"7\"></rect>\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"7\"></rect>\n <rect x=\"14\" y=\"14\" width=\"7\" height=\"7\"></rect>\n <rect x=\"3\" y=\"14\" width=\"7\" height=\"7\"></rect>\n </svg>\n Tokens\n </a>\n <a class=\"nav-item\" data-page=\"components\" href=\"#components\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2v20M2 12h20\"></path>\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n </svg>\n Components\n </a>\n <a class=\"nav-item\" data-page=\"figma\" href=\"#figma\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20z\"></path>\n <circle cx=\"12\" cy=\"12\" r=\"3\"></circle>\n </svg>\n Figma\n </a>\n <a id=\"storybook-link\" class=\"nav-item\" href=\"https://localhost/storybook/\" target=\"_blank\" tabindex=\"0\" title=\"Open Storybook at https://localhost/storybook/\" style=\"pointer-events: auto; opacity: 1;\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M4 3h16a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z\"></path>\n <path d=\"M9 9h6M9 15h6\"></path>\n </svg>\n Storybook\n </a>\n </div>\n\n <!-- System Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">System</div>\n <a class=\"nav-item\" data-page=\"docs\" href=\"#docs\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M4 19.5A2.5 2.5 0 0 1 6.5 17H20\"></path>\n <path d=\"M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z\"></path>\n </svg>\n Docs\n </a>\n <a class=\"nav-item active\" data-page=\"teams\" href=\"#teams\" tabindex=\"0\" aria-current=\"page\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\"></path>\n <circle cx=\"9\" cy=\"7\" r=\"4\"></circle>\n <path d=\"M23 21v-2a4 4 0 0 0-3-3.87\"></path>\n <path d=\"M16 3.13a4 4 0 0 1 0 7.75\"></path>\n </svg>\n Teams\n </a>\n <a class=\"nav-item\" data-page=\"audit\" href=\"#audit\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M9 11l3 3L22 4\"></path>\n <path d=\"M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0z\"></path>\n </svg>\n Audit\n </a>\n <a class=\"nav-item\" data-page=\"plugins\" href=\"#plugins\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <path d=\"M12 1v6m0 6v6M4.22 4.22l4.24 4.24m3.08 3.08l4.24 4.24M1 12h6m6 0h6m-15.78 7.78l4.24-4.24m3.08-3.08l4.24-4.24\"></path>\n </svg>\n Plugins\n </a>\n <a class=\"nav-item\" data-page=\"settings\" href=\"#settings\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"3\"></circle>\n <path d=\"M12 1v6m0 6v6M4.22 4.22l4.24 4.24m3.08 3.08l4.24 4.24M1 12h6m6 0h6m-15.78 7.78l4.24-4.24m3.08-3.08l4.24-4.24\"></path>\n </svg>\n Settings\n </a>\n </div>\n </nav>\n\n <!-- Help Panel -->\n <div class=\"sidebar__help\">\n <details class=\"help-panel\">\n <summary class=\"help-panel__toggle\" tabindex=\"0\">\n <svg width=\"16\" height=\"16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n <path d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\"></path>\n <line x1=\"12\" y1=\"17\" x2=\"12.01\" y2=\"17\"></line>\n </svg>\n Quick Guide\n </summary>\n <div class=\"help-panel__content\">\n <div class=\"help-section\" data-team=\"ui\" style=\"display: none;\">\n <strong>UI Team</strong>\n <ul>\n <li>Extract tokens from Figma</li>\n <li>Sync to CSS variables</li>\n <li>Generate components</li>\n <li>Check token drift</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"ux\">\n <strong>UX Team</strong>\n <ul>\n <li>Add Figma files to project</li>\n <li>Run visual diff checks</li>\n <li>Review token consistency</li>\n <li>Validate components</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"qa\" style=\"display: none;\">\n <strong>QA Team</strong>\n <ul>\n <li>Define ESRE test cases</li>\n <li>Run component validation</li>\n <li>Review visual regressions</li>\n <li>Export audit logs</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"all\">\n <strong>Getting Started</strong>\n <ol>\n <li>Create a project</li>\n <li>Add Figma file key</li>\n <li>Extract & sync tokens</li>\n <li>Use AI chat for help</li>\n </ol>\n </div>\n </div>\n </details>\n </div>\n\n <!-- Sidebar Footer -->\n <div class=\"sidebar__footer\">\n <ds-badge data-variant=\"outline\">v1.0.0</ds-badge>\n </div>\n </aside>\n\n <!-- Main Content Area -->\n <main class=\"app-main\">\n <div id=\"page-content\" class=\"app-content\">\n <div class=\"page-header\">\n <h1>Team Management</h1>\n <p class=\"text-muted\">Manage teams and permissions</p>\n </div>\n\n <div class=\"flex gap-3 mt-6 mb-4\">\n \n </div>\n\n <div class=\"grid grid-cols-3 gap-4 mt-4\">\n \n \n Design System Core\n Active\n \n \n <div class=\"flex flex-col gap-2 text-sm\">\n <div class=\"flex justify-between\">\n <span class=\"text-muted\">Members:</span>\n <span>5</span>\n </div>\n <div class=\"flex justify-between\">\n <span class=\"text-muted\">Projects:</span>\n <span>3</span>\n </div>\n <div class=\"flex justify-between\">\n <span class=\"text-muted\">Your Role:</span>\n TEAM_LEAD\n </div>\n </div>\n \n \n View Details\n \n \n\n \n \n Product Team A\n Member\n \n \n <div class=\"flex flex-col gap-2 text-sm\">\n <div class=\"flex justify-between\">\n <span class=\"text-muted\">Members:</span>\n <span>8</span>\n </div>\n <div class=\"flex justify-between\">\n <span class=\"text-muted\">Projects:</span>\n <span>2</span>\n </div>\n </div>\n \n \n View Details\n \n \n </div>\n\n \n \n Role Permissions\n \n \n <div class=\"grid grid-cols-4 gap-4 text-sm\">\n <div>\n <h4 class=\"font-medium mb-2\">Super Admin</h4>\n <p class=\"text-muted\">Full system access</p>\n </div>\n <div>\n <h4 class=\"font-medium mb-2\">Team Lead</h4>\n <p class=\"text-muted\">Manage team, sync, generate</p>\n </div>\n <div>\n <h4 class=\"font-medium mb-2\">Developer</h4>\n <p class=\"text-muted\">Read, write, sync</p>\n </div>\n <div>\n <h4 class=\"font-medium mb-2\">Viewer</h4>\n <p class=\"text-muted\">Read-only access</p>\n </div>\n </div>\n \n \n </div>\n\n <!-- Right Sidebar - AI Chat -->\n <aside class=\"app-sidebar collapsed\" id=\"ai-sidebar\">\n <ds-ai-chat></ds-ai-chat>\n </aside>\n </main>\n </div>\n\n <!-- Toast Provider for notifications -->\n <ds-toast-provider></ds-toast-provider>\n\n <!-- Load Components -->\n\n\n</body></html>",
|
|
"viewport": {
|
|
"width": 1403,
|
|
"height": 958,
|
|
"devicePixelRatio": 2
|
|
},
|
|
"title": "Design System Server"
|
|
}
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#teams",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119312091,
|
|
"relativeTime": 104002,
|
|
"level": "info",
|
|
"category": "snapshot",
|
|
"message": "State Capture (navigation)",
|
|
"data": {
|
|
"trigger": "navigation",
|
|
"details": {
|
|
"from": "https://dss.overbits.luz.uy/admin-ui/index.html#teams",
|
|
"to": "https://dss.overbits.luz.uy/admin-ui/index.html#docs"
|
|
},
|
|
"snapshot": {
|
|
"timestamp": 1765119312091,
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#docs",
|
|
"html": "<html lang=\"en\" class=\"light\"><head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>Design System Server</title>\n <link rel=\"icon\" type=\"image/svg+xml\" href=\"/admin-ui/favicon.svg\">\n\n <!-- Design System Styles - Tokens and Base Styles -->\n <link rel=\"stylesheet\" href=\"/admin-ui/css/tokens.css\">\n <link rel=\"stylesheet\" href=\"/admin-ui/css/styles.css\">\n\n <!-- Markdown & Syntax Highlighting -->\n <script src=\"https://cdn.jsdelivr.net/npm/marked/marked.min.js\"></script>\n <script src=\"https://cdn.jsdelivr.net/npm/dompurify@3.0.6/dist/purify.min.js\"></script>\n <script src=\"https://cdn.jsdelivr.net/npm/highlight.js@11.9.0/lib/highlight.min.js\"></script>\n\n <script type=\"module\" crossorigin=\"\" src=\"/assets/index-DNcSjd3Y.js\"></script>\n</head>\n<body>\n <div id=\"app\" class=\"app-layout\">\n <!-- Top Navbar -->\n <header class=\"app-header\">\n <div class=\"app-header__project-selector\" id=\"project-selector-container\">\n <div class=\"project-selector\">\n <svg class=\"project-selector__icon\">\n \n \n \n </svg>\n <span class=\"project-selector__label\">Project:</span>\n \n \n \n test\n \n \n \n </div>\n </div>\n <div class=\"app-header__team-selector\">\n <label for=\"team-context-select\" class=\"sr-only\">Select team context</label>\n <select class=\"team-select\" id=\"team-context-select\" aria-label=\"Team context\">\n <option value=\"all\">All Teams</option>\n <option value=\"ui\">UI Team</option>\n <option value=\"ux\">UX Team</option>\n <option value=\"qa\">QA Team</option>\n </select>\n </div>\n <div class=\"app-header__actions\">\n <ds-button data-variant=\"ghost\" data-size=\"icon\" title=\"Toggle theme\" id=\"theme-toggle\" tabindex=\"0\" aria-label=\"Toggle dark/light theme\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M12 3v1m0 16v1m9-9h-1M4 12H3m15.364 6.364l-.707-.707M6.343 6.343l-.707-.707m12.728 0l-.707.707M6.343 17.657l-.707.707M16 12a4 4 0 1 1-8 0 4 4 0 0 1 8 0z\"></path>\n </svg>\n </ds-button>\n <div class=\"notification-toggle-container\" style=\"position: relative;\">\n <ds-button data-variant=\"ghost\" data-size=\"icon\" id=\"notification-toggle\" title=\"Notifications\" tabindex=\"0\" aria-label=\"View notifications\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9\"></path>\n <path d=\"M10.3 21a1.94 1.94 0 0 0 3.4 0\"></path>\n </svg>\n </ds-button>\n <span id=\"notification-indicator\" class=\"status-dot status-dot--error\" style=\"position: absolute; top: 6px; right: 6px; display: none;\"></span>\n <ds-notification-center></ds-notification-center>\n </div>\n <ds-button data-variant=\"ghost\" data-size=\"icon\" id=\"sidebar-toggle\" title=\"Toggle AI Assistant\" tabindex=\"0\" aria-label=\"Toggle AI Assistant sidebar\" aria-controls=\"ai-sidebar\" aria-expanded=\"false\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path>\n </svg>\n </ds-button>\n <div class=\"ds-avatar\" tabindex=\"0\" role=\"button\" aria-label=\"User profile menu\">\n <span>U</span>\n </div>\n </div>\n </header>\n\n <!-- Left Sidebar Navigation -->\n <aside class=\"sidebar\">\n <div class=\"sidebar__header\">\n <div class=\"sidebar__logo\">\n <div class=\"sidebar__logo-icon\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2L2 7l10 5 10-5-10-5z\"></path>\n <path d=\"M2 17l10 5 10-5\"></path>\n <path d=\"M2 12l10 5 10-5\"></path>\n </svg>\n </div>\n <span>DSS</span>\n </div>\n </div>\n\n <nav class=\"sidebar__nav\" id=\"main-nav\" aria-label=\"Main navigation\">\n <!-- Overview Section -->\n <div class=\"nav-section\" role=\"region\" aria-labelledby=\"overview-title\">\n <div class=\"nav-section__title\" id=\"overview-title\">Overview</div>\n <a class=\"nav-item\" data-page=\"dashboard\" href=\"#dashboard\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"9\" rx=\"1\"></rect>\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"5\" rx=\"1\"></rect>\n <rect x=\"14\" y=\"12\" width=\"7\" height=\"9\" rx=\"1\"></rect>\n <rect x=\"3\" y=\"16\" width=\"7\" height=\"5\" rx=\"1\"></rect>\n </svg>\n Dashboard\n </a>\n <a class=\"nav-item\" data-page=\"projects\" href=\"#projects\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M3 3h18v18H3z\"></path>\n <path d=\"M21 9H3\"></path>\n <path d=\"M9 21V9\"></path>\n </svg>\n Projects\n </a>\n </div>\n\n <!-- Tools Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">Tools</div>\n <a class=\"nav-item\" data-page=\"services\" href=\"#services\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"19\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"5\" cy=\"12\" r=\"1\"></circle>\n </svg>\n Services\n </a>\n <a class=\"nav-item\" data-page=\"quick-wins\" href=\"#quick-wins\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z\"></path>\n </svg>\n Quick Wins\n </a>\n <a class=\"nav-item\" data-page=\"chat\" href=\"#chat\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path>\n </svg>\n Chat\n </a>\n </div>\n\n <!-- Design System Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">Design System</div>\n <a class=\"nav-item\" data-page=\"tokens\" href=\"#tokens\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"7\"></rect>\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"7\"></rect>\n <rect x=\"14\" y=\"14\" width=\"7\" height=\"7\"></rect>\n <rect x=\"3\" y=\"14\" width=\"7\" height=\"7\"></rect>\n </svg>\n Tokens\n </a>\n <a class=\"nav-item\" data-page=\"components\" href=\"#components\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2v20M2 12h20\"></path>\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n </svg>\n Components\n </a>\n <a class=\"nav-item\" data-page=\"figma\" href=\"#figma\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20z\"></path>\n <circle cx=\"12\" cy=\"12\" r=\"3\"></circle>\n </svg>\n Figma\n </a>\n <a id=\"storybook-link\" class=\"nav-item\" href=\"https://localhost/storybook/\" target=\"_blank\" tabindex=\"0\" title=\"Open Storybook at https://localhost/storybook/\" style=\"pointer-events: auto; opacity: 1;\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M4 3h16a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z\"></path>\n <path d=\"M9 9h6M9 15h6\"></path>\n </svg>\n Storybook\n </a>\n </div>\n\n <!-- System Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">System</div>\n <a class=\"nav-item active\" data-page=\"docs\" href=\"#docs\" tabindex=\"0\" aria-current=\"page\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M4 19.5A2.5 2.5 0 0 1 6.5 17H20\"></path>\n <path d=\"M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z\"></path>\n </svg>\n Docs\n </a>\n <a class=\"nav-item\" data-page=\"teams\" href=\"#teams\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\"></path>\n <circle cx=\"9\" cy=\"7\" r=\"4\"></circle>\n <path d=\"M23 21v-2a4 4 0 0 0-3-3.87\"></path>\n <path d=\"M16 3.13a4 4 0 0 1 0 7.75\"></path>\n </svg>\n Teams\n </a>\n <a class=\"nav-item\" data-page=\"audit\" href=\"#audit\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M9 11l3 3L22 4\"></path>\n <path d=\"M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0z\"></path>\n </svg>\n Audit\n </a>\n <a class=\"nav-item\" data-page=\"plugins\" href=\"#plugins\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <path d=\"M12 1v6m0 6v6M4.22 4.22l4.24 4.24m3.08 3.08l4.24 4.24M1 12h6m6 0h6m-15.78 7.78l4.24-4.24m3.08-3.08l4.24-4.24\"></path>\n </svg>\n Plugins\n </a>\n <a class=\"nav-item\" data-page=\"settings\" href=\"#settings\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"3\"></circle>\n <path d=\"M12 1v6m0 6v6M4.22 4.22l4.24 4.24m3.08 3.08l4.24 4.24M1 12h6m6 0h6m-15.78 7.78l4.24-4.24m3.08-3.08l4.24-4.24\"></path>\n </svg>\n Settings\n </a>\n </div>\n </nav>\n\n <!-- Help Panel -->\n <div class=\"sidebar__help\">\n <details class=\"help-panel\">\n <summary class=\"help-panel__toggle\" tabindex=\"0\">\n <svg width=\"16\" height=\"16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n <path d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\"></path>\n <line x1=\"12\" y1=\"17\" x2=\"12.01\" y2=\"17\"></line>\n </svg>\n Quick Guide\n </summary>\n <div class=\"help-panel__content\">\n <div class=\"help-section\" data-team=\"ui\" style=\"display: none;\">\n <strong>UI Team</strong>\n <ul>\n <li>Extract tokens from Figma</li>\n <li>Sync to CSS variables</li>\n <li>Generate components</li>\n <li>Check token drift</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"ux\">\n <strong>UX Team</strong>\n <ul>\n <li>Add Figma files to project</li>\n <li>Run visual diff checks</li>\n <li>Review token consistency</li>\n <li>Validate components</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"qa\" style=\"display: none;\">\n <strong>QA Team</strong>\n <ul>\n <li>Define ESRE test cases</li>\n <li>Run component validation</li>\n <li>Review visual regressions</li>\n <li>Export audit logs</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"all\">\n <strong>Getting Started</strong>\n <ol>\n <li>Create a project</li>\n <li>Add Figma file key</li>\n <li>Extract & sync tokens</li>\n <li>Use AI chat for help</li>\n </ol>\n </div>\n </div>\n </details>\n </div>\n\n <!-- Sidebar Footer -->\n <div class=\"sidebar__footer\">\n <ds-badge data-variant=\"outline\">v1.0.0</ds-badge>\n </div>\n </aside>\n\n <!-- Main Content Area -->\n <main class=\"app-main\">\n <div id=\"page-content\" class=\"app-content\">\n <div class=\"page-header\">\n <h1>Documentation</h1>\n <p class=\"text-muted\">DSS usage guides for all teams</p>\n </div>\n\n <div class=\"docs-layout mt-6\">\n \n <div class=\"docs-nav__section\">\n <div class=\"docs-nav__title\">Getting Started</div>\n <a data-doc=\"overview\" class=\"docs-nav__link active\">Overview</a>\n <a data-doc=\"quickstart\" class=\"docs-nav__link\">Quick Start</a>\n <a data-doc=\"concepts\" class=\"docs-nav__link\">Key Concepts</a>\n </div>\n <div class=\"docs-nav__section\">\n <div class=\"docs-nav__title\">Team Guides</div>\n <a data-doc=\"ui-team\" class=\"docs-nav__link\">UI Team</a>\n <a data-doc=\"ux-team\" class=\"docs-nav__link\">UX Team</a>\n <a data-doc=\"qa-team\" class=\"docs-nav__link\">QA Team</a>\n </div>\n <div class=\"docs-nav__section\">\n <div class=\"docs-nav__title\">Features</div>\n <a data-doc=\"tokens\" class=\"docs-nav__link\">Design Tokens</a>\n <a data-doc=\"figma\" class=\"docs-nav__link\">Figma Integration</a>\n <a data-doc=\"components\" class=\"docs-nav__link\">Components</a>\n <a data-doc=\"ai-chat\" class=\"docs-nav__link\">AI Chat</a>\n </div>\n <div class=\"docs-nav__section\">\n <div class=\"docs-nav__title\">Reference</div>\n <a target=\"_blank\" href=\"/api/docs\" class=\"docs-nav__link\">API Docs \u2197</a>\n <a data-doc=\"cli\" class=\"docs-nav__link\">CLI Commands</a>\n <a data-doc=\"troubleshooting\" class=\"docs-nav__link\">Troubleshooting</a>\n </div>\n \n\n <div id=\"docs-content\" class=\"docs-content\">\n \n <h2>What is DSS?</h2>\n <p>Design System Server (DSS) is a platform that helps teams manage, sync, and evolve their design systems by connecting Figma designs to code.</p>\n\n <h3>Core Features</h3>\n <ul>\n <li><strong>Token Extraction</strong> \u2014 Pull design tokens from Figma variables</li>\n <li><strong>Token Sync</strong> \u2014 Generate CSS/JSON from Figma tokens</li>\n <li><strong>Component Analysis</strong> \u2014 Scan your codebase for components</li>\n <li><strong>Visual Diff</strong> \u2014 Detect changes between Figma versions</li>\n <li><strong>AI Assistant</strong> \u2014 Get help via the built-in chat</li>\n </ul>\n\n <h3>Architecture</h3>\n <ul>\n <li><strong>REST API</strong> \u2014 Port 3456 (python tools/api/server.py)</li>\n <li><strong>MCP Server</strong> \u2014 Port 3457 for AI tools</li>\n <li><strong>Admin UI</strong> \u2014 This dashboard</li>\n <li><strong>CLI</strong> \u2014 Command-line interface</li>\n </ul>\n \n </div>\n </div>\n </div>\n\n <!-- Right Sidebar - AI Chat -->\n <aside class=\"app-sidebar collapsed\" id=\"ai-sidebar\">\n <ds-ai-chat></ds-ai-chat>\n </aside>\n </main>\n </div>\n\n <!-- Toast Provider for notifications -->\n <ds-toast-provider></ds-toast-provider>\n\n <!-- Load Components -->\n\n\n</body></html>",
|
|
"viewport": {
|
|
"width": 1403,
|
|
"height": 958,
|
|
"devicePixelRatio": 2
|
|
},
|
|
"title": "Design System Server"
|
|
}
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#docs",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119313066,
|
|
"relativeTime": 104977,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/audit?project_id=proj-1764991776412&limit=50",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/audit?project_id=proj-1764991776412&limit=50",
|
|
"initiatorType": "fetch",
|
|
"duration": 189.09999999403954,
|
|
"transferSize": 2198,
|
|
"encodedBodySize": 1898,
|
|
"decodedBodySize": 1898
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#audit",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119313091,
|
|
"relativeTime": 105002,
|
|
"level": "info",
|
|
"category": "snapshot",
|
|
"message": "State Capture (navigation)",
|
|
"data": {
|
|
"trigger": "navigation",
|
|
"details": {
|
|
"from": "https://dss.overbits.luz.uy/admin-ui/index.html#docs",
|
|
"to": "https://dss.overbits.luz.uy/admin-ui/index.html#audit"
|
|
},
|
|
"snapshot": {
|
|
"timestamp": 1765119313090,
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#audit",
|
|
"html": "<html lang=\"en\" class=\"light\"><head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>Design System Server</title>\n <link rel=\"icon\" type=\"image/svg+xml\" href=\"/admin-ui/favicon.svg\">\n\n <!-- Design System Styles - Tokens and Base Styles -->\n <link rel=\"stylesheet\" href=\"/admin-ui/css/tokens.css\">\n <link rel=\"stylesheet\" href=\"/admin-ui/css/styles.css\">\n\n <!-- Markdown & Syntax Highlighting -->\n <script src=\"https://cdn.jsdelivr.net/npm/marked/marked.min.js\"></script>\n <script src=\"https://cdn.jsdelivr.net/npm/dompurify@3.0.6/dist/purify.min.js\"></script>\n <script src=\"https://cdn.jsdelivr.net/npm/highlight.js@11.9.0/lib/highlight.min.js\"></script>\n\n <script type=\"module\" crossorigin=\"\" src=\"/assets/index-DNcSjd3Y.js\"></script>\n</head>\n<body>\n <div id=\"app\" class=\"app-layout\">\n <!-- Top Navbar -->\n <header class=\"app-header\">\n <div class=\"app-header__project-selector\" id=\"project-selector-container\">\n <div class=\"project-selector\">\n <svg class=\"project-selector__icon\">\n \n \n \n </svg>\n <span class=\"project-selector__label\">Project:</span>\n \n \n \n test\n \n \n \n </div>\n </div>\n <div class=\"app-header__team-selector\">\n <label for=\"team-context-select\" class=\"sr-only\">Select team context</label>\n <select class=\"team-select\" id=\"team-context-select\" aria-label=\"Team context\">\n <option value=\"all\">All Teams</option>\n <option value=\"ui\">UI Team</option>\n <option value=\"ux\">UX Team</option>\n <option value=\"qa\">QA Team</option>\n </select>\n </div>\n <div class=\"app-header__actions\">\n <ds-button data-variant=\"ghost\" data-size=\"icon\" title=\"Toggle theme\" id=\"theme-toggle\" tabindex=\"0\" aria-label=\"Toggle dark/light theme\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M12 3v1m0 16v1m9-9h-1M4 12H3m15.364 6.364l-.707-.707M6.343 6.343l-.707-.707m12.728 0l-.707.707M6.343 17.657l-.707.707M16 12a4 4 0 1 1-8 0 4 4 0 0 1 8 0z\"></path>\n </svg>\n </ds-button>\n <div class=\"notification-toggle-container\" style=\"position: relative;\">\n <ds-button data-variant=\"ghost\" data-size=\"icon\" id=\"notification-toggle\" title=\"Notifications\" tabindex=\"0\" aria-label=\"View notifications\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9\"></path>\n <path d=\"M10.3 21a1.94 1.94 0 0 0 3.4 0\"></path>\n </svg>\n </ds-button>\n <span id=\"notification-indicator\" class=\"status-dot status-dot--error\" style=\"position: absolute; top: 6px; right: 6px; display: none;\"></span>\n <ds-notification-center></ds-notification-center>\n </div>\n <ds-button data-variant=\"ghost\" data-size=\"icon\" id=\"sidebar-toggle\" title=\"Toggle AI Assistant\" tabindex=\"0\" aria-label=\"Toggle AI Assistant sidebar\" aria-controls=\"ai-sidebar\" aria-expanded=\"false\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path>\n </svg>\n </ds-button>\n <div class=\"ds-avatar\" tabindex=\"0\" role=\"button\" aria-label=\"User profile menu\">\n <span>U</span>\n </div>\n </div>\n </header>\n\n <!-- Left Sidebar Navigation -->\n <aside class=\"sidebar\">\n <div class=\"sidebar__header\">\n <div class=\"sidebar__logo\">\n <div class=\"sidebar__logo-icon\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2L2 7l10 5 10-5-10-5z\"></path>\n <path d=\"M2 17l10 5 10-5\"></path>\n <path d=\"M2 12l10 5 10-5\"></path>\n </svg>\n </div>\n <span>DSS</span>\n </div>\n </div>\n\n <nav class=\"sidebar__nav\" id=\"main-nav\" aria-label=\"Main navigation\">\n <!-- Overview Section -->\n <div class=\"nav-section\" role=\"region\" aria-labelledby=\"overview-title\">\n <div class=\"nav-section__title\" id=\"overview-title\">Overview</div>\n <a class=\"nav-item\" data-page=\"dashboard\" href=\"#dashboard\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"9\" rx=\"1\"></rect>\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"5\" rx=\"1\"></rect>\n <rect x=\"14\" y=\"12\" width=\"7\" height=\"9\" rx=\"1\"></rect>\n <rect x=\"3\" y=\"16\" width=\"7\" height=\"5\" rx=\"1\"></rect>\n </svg>\n Dashboard\n </a>\n <a class=\"nav-item\" data-page=\"projects\" href=\"#projects\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M3 3h18v18H3z\"></path>\n <path d=\"M21 9H3\"></path>\n <path d=\"M9 21V9\"></path>\n </svg>\n Projects\n </a>\n </div>\n\n <!-- Tools Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">Tools</div>\n <a class=\"nav-item\" data-page=\"services\" href=\"#services\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"19\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"5\" cy=\"12\" r=\"1\"></circle>\n </svg>\n Services\n </a>\n <a class=\"nav-item\" data-page=\"quick-wins\" href=\"#quick-wins\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z\"></path>\n </svg>\n Quick Wins\n </a>\n <a class=\"nav-item\" data-page=\"chat\" href=\"#chat\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path>\n </svg>\n Chat\n </a>\n </div>\n\n <!-- Design System Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">Design System</div>\n <a class=\"nav-item\" data-page=\"tokens\" href=\"#tokens\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"7\"></rect>\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"7\"></rect>\n <rect x=\"14\" y=\"14\" width=\"7\" height=\"7\"></rect>\n <rect x=\"3\" y=\"14\" width=\"7\" height=\"7\"></rect>\n </svg>\n Tokens\n </a>\n <a class=\"nav-item\" data-page=\"components\" href=\"#components\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2v20M2 12h20\"></path>\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n </svg>\n Components\n </a>\n <a class=\"nav-item\" data-page=\"figma\" href=\"#figma\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20z\"></path>\n <circle cx=\"12\" cy=\"12\" r=\"3\"></circle>\n </svg>\n Figma\n </a>\n <a id=\"storybook-link\" class=\"nav-item\" href=\"https://localhost/storybook/\" target=\"_blank\" tabindex=\"0\" title=\"Open Storybook at https://localhost/storybook/\" style=\"pointer-events: auto; opacity: 1;\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M4 3h16a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z\"></path>\n <path d=\"M9 9h6M9 15h6\"></path>\n </svg>\n Storybook\n </a>\n </div>\n\n <!-- System Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">System</div>\n <a class=\"nav-item\" data-page=\"docs\" href=\"#docs\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M4 19.5A2.5 2.5 0 0 1 6.5 17H20\"></path>\n <path d=\"M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z\"></path>\n </svg>\n Docs\n </a>\n <a class=\"nav-item\" data-page=\"teams\" href=\"#teams\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\"></path>\n <circle cx=\"9\" cy=\"7\" r=\"4\"></circle>\n <path d=\"M23 21v-2a4 4 0 0 0-3-3.87\"></path>\n <path d=\"M16 3.13a4 4 0 0 1 0 7.75\"></path>\n </svg>\n Teams\n </a>\n <a class=\"nav-item active\" data-page=\"audit\" href=\"#audit\" tabindex=\"0\" aria-current=\"page\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M9 11l3 3L22 4\"></path>\n <path d=\"M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0z\"></path>\n </svg>\n Audit\n </a>\n <a class=\"nav-item\" data-page=\"plugins\" href=\"#plugins\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <path d=\"M12 1v6m0 6v6M4.22 4.22l4.24 4.24m3.08 3.08l4.24 4.24M1 12h6m6 0h6m-15.78 7.78l4.24-4.24m3.08-3.08l4.24-4.24\"></path>\n </svg>\n Plugins\n </a>\n <a class=\"nav-item\" data-page=\"settings\" href=\"#settings\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"3\"></circle>\n <path d=\"M12 1v6m0 6v6M4.22 4.22l4.24 4.24m3.08 3.08l4.24 4.24M1 12h6m6 0h6m-15.78 7.78l4.24-4.24m3.08-3.08l4.24-4.24\"></path>\n </svg>\n Settings\n </a>\n </div>\n </nav>\n\n <!-- Help Panel -->\n <div class=\"sidebar__help\">\n <details class=\"help-panel\">\n <summary class=\"help-panel__toggle\" tabindex=\"0\">\n <svg width=\"16\" height=\"16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n <path d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\"></path>\n <line x1=\"12\" y1=\"17\" x2=\"12.01\" y2=\"17\"></line>\n </svg>\n Quick Guide\n </summary>\n <div class=\"help-panel__content\">\n <div class=\"help-section\" data-team=\"ui\" style=\"display: none;\">\n <strong>UI Team</strong>\n <ul>\n <li>Extract tokens from Figma</li>\n <li>Sync to CSS variables</li>\n <li>Generate components</li>\n <li>Check token drift</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"ux\">\n <strong>UX Team</strong>\n <ul>\n <li>Add Figma files to project</li>\n <li>Run visual diff checks</li>\n <li>Review token consistency</li>\n <li>Validate components</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"qa\" style=\"display: none;\">\n <strong>QA Team</strong>\n <ul>\n <li>Define ESRE test cases</li>\n <li>Run component validation</li>\n <li>Review visual regressions</li>\n <li>Export audit logs</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"all\">\n <strong>Getting Started</strong>\n <ol>\n <li>Create a project</li>\n <li>Add Figma file key</li>\n <li>Extract & sync tokens</li>\n <li>Use AI chat for help</li>\n </ol>\n </div>\n </div>\n </details>\n </div>\n\n <!-- Sidebar Footer -->\n <div class=\"sidebar__footer\">\n <ds-badge data-variant=\"outline\">v1.0.0</ds-badge>\n </div>\n </aside>\n\n <!-- Main Content Area -->\n <main class=\"app-main\">\n <div id=\"page-content\" class=\"app-content\">\n <div class=\"page-header\">\n <h1>Audit Log</h1>\n <p class=\"text-muted\">History of all user actions and system events</p>\n </div>\n\n \n <div class=\"mt-6\">\n \n \n Filters\n \n \n <div class=\"grid grid-cols-4 gap-4\">\n <div>\n Category\n \n All Categories\n Design System\n Code\n Configuration\n Project\n Team\n Storybook\n \n </div>\n\n <div>\n Severity\n \n All Severities\n Info\n Warning\n Critical\n \n </div>\n\n <div>\n Start Date\n <input class=\"w-full mt-2 p-2 rounded border\" id=\"audit-start-date\" type=\"date\">\n </div>\n\n <div>\n End Date\n <input class=\"w-full mt-2 p-2 rounded border\" id=\"audit-end-date\" type=\"date\">\n </div>\n </div>\n\n <div class=\"flex gap-3 mt-4\">\n \n Apply Filters\n \n \n Clear Filters\n \n \n \ud83d\udce5 Export JSON\n \n \n \ud83d\udce5 Export CSV\n \n </div>\n \n \n </div>\n\n \n <div class=\"mt-6\">\n \n \n Activity History\n \n <span id=\"audit-total-count\">4 total events</span>\n \n \n \n <div id=\"audit-log-content\">\n <table class=\"w-full\">\n <thead>\n <tr class=\"border-b\">\n <th class=\"text-left p-3 text-sm font-medium\">Time</th>\n <th class=\"text-left p-3 text-sm font-medium\">User</th>\n <th class=\"text-left p-3 text-sm font-medium\">Action</th>\n <th class=\"text-left p-3 text-sm font-medium\">Category</th>\n <th class=\"text-left p-3 text-sm font-medium\">Description</th>\n <th class=\"text-left p-3 text-sm font-medium\">Severity</th>\n </tr>\n </thead>\n <tbody>\n \n <tr data-audit-id=\"112\" data-action=\"show-audit-details\" class=\"border-b hover:bg-muted/50 cursor-pointer\">\n <td class=\"p-3 text-sm text-muted\">\n 14 hours ago\n </td>\n <td class=\"p-3 text-sm\">\n System\n </td>\n <td class=\"p-3 text-sm font-mono text-xs\">\n ai_tools_used\n </td>\n <td class=\"p-3 text-sm\">\n \ud83d\udccc other\n </td>\n <td class=\"p-3 text-sm\">\n Ai Tools Used\n </td>\n <td class=\"p-3\">\n \n info\n \n </td>\n </tr>\n \n <tr data-audit-id=\"110\" data-action=\"show-audit-details\" class=\"border-b hover:bg-muted/50 cursor-pointer\">\n <td class=\"p-3 text-sm text-muted\">\n 14 hours ago\n </td>\n <td class=\"p-3 text-sm\">\n System\n </td>\n <td class=\"p-3 text-sm font-mono text-xs\">\n ai_tools_used\n </td>\n <td class=\"p-3 text-sm\">\n \ud83d\udccc other\n </td>\n <td class=\"p-3 text-sm\">\n Ai Tools Used\n </td>\n <td class=\"p-3\">\n \n info\n \n </td>\n </tr>\n \n <tr data-audit-id=\"100\" data-action=\"show-audit-details\" class=\"border-b hover:bg-muted/50 cursor-pointer\">\n <td class=\"p-3 text-sm text-muted\">\n 16 hours ago\n </td>\n <td class=\"p-3 text-sm\">\n System\n </td>\n <td class=\"p-3 text-sm font-mono text-xs\">\n project_updated\n </td>\n <td class=\"p-3 text-sm\">\n \ud83d\udcc1 project\n </td>\n <td class=\"p-3 text-sm\">\n Updated project\n </td>\n <td class=\"p-3\">\n \n info\n \n </td>\n </tr>\n \n <tr data-audit-id=\"50\" data-action=\"show-audit-details\" class=\"border-b hover:bg-muted/50 cursor-pointer\">\n <td class=\"p-3 text-sm text-muted\">\n 1 day ago\n </td>\n <td class=\"p-3 text-sm\">\n System\n </td>\n <td class=\"p-3 text-sm font-mono text-xs\">\n project_created\n </td>\n <td class=\"p-3 text-sm\">\n \ud83d\udcc1 project\n </td>\n <td class=\"p-3 text-sm\">\n Created project project\n </td>\n <td class=\"p-3\">\n \n info\n \n </td>\n </tr>\n \n </tbody>\n </table>\n </div>\n\n \n <div style=\"display: flex;\" id=\"audit-pagination\" class=\"flex justify-between items-center mt-6\">\n <div class=\"text-sm text-muted\">\n Showing <span id=\"audit-showing\">1-4</span> of <span id=\"audit-total\">4</span> entries\n </div>\n <div class=\"flex gap-2\">\n \n Previous\n \n \n Next\n \n </div>\n </div>\n \n \n </div>\n </div>\n\n <!-- Right Sidebar - AI Chat -->\n <aside class=\"app-sidebar collapsed\" id=\"ai-sidebar\">\n <ds-ai-chat></ds-ai-chat>\n </aside>\n </main>\n </div>\n\n <!-- Toast Provider for notifications -->\n <ds-toast-provider></ds-toast-provider>\n\n <!-- Load Components -->\n\n\n</body></html>",
|
|
"viewport": {
|
|
"width": 1403,
|
|
"height": 958,
|
|
"devicePixelRatio": 2
|
|
},
|
|
"title": "Design System Server"
|
|
}
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#audit",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119313255,
|
|
"relativeTime": 105166,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/audit?project_id=proj-1764991776412&limit=50",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/audit?project_id=proj-1764991776412&limit=50",
|
|
"initiatorType": "fetch",
|
|
"duration": 382,
|
|
"transferSize": 2198,
|
|
"encodedBodySize": 1898,
|
|
"decodedBodySize": 1898
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#audit",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119313439,
|
|
"relativeTime": 105350,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/audit?project_id=proj-1764991776412&limit=50",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/audit?project_id=proj-1764991776412&limit=50",
|
|
"initiatorType": "fetch",
|
|
"duration": 569.5999999940395,
|
|
"transferSize": 2198,
|
|
"encodedBodySize": 1898,
|
|
"decodedBodySize": 1898
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#audit",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119313630,
|
|
"relativeTime": 105541,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/audit?project_id=proj-1764991776412&limit=50",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/audit?project_id=proj-1764991776412&limit=50",
|
|
"initiatorType": "fetch",
|
|
"duration": 755.8000000119209,
|
|
"transferSize": 2198,
|
|
"encodedBodySize": 1898,
|
|
"decodedBodySize": 1898
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#audit",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119313818,
|
|
"relativeTime": 105729,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/audit?project_id=proj-1764991776412&limit=50",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/audit?project_id=proj-1764991776412&limit=50",
|
|
"initiatorType": "fetch",
|
|
"duration": 944.5,
|
|
"transferSize": 2198,
|
|
"encodedBodySize": 1898,
|
|
"decodedBodySize": 1898
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#audit",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119314013,
|
|
"relativeTime": 105924,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/audit?project_id=proj-1764991776412&limit=50",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/audit?project_id=proj-1764991776412&limit=50",
|
|
"initiatorType": "fetch",
|
|
"duration": 1138.1000000238419,
|
|
"transferSize": 2198,
|
|
"encodedBodySize": 1898,
|
|
"decodedBodySize": 1898
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#audit",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119315090,
|
|
"relativeTime": 107001,
|
|
"level": "info",
|
|
"category": "snapshot",
|
|
"message": "State Capture (navigation)",
|
|
"data": {
|
|
"trigger": "navigation",
|
|
"details": {
|
|
"from": "https://dss.overbits.luz.uy/admin-ui/index.html#audit",
|
|
"to": "https://dss.overbits.luz.uy/admin-ui/index.html#plugins"
|
|
},
|
|
"snapshot": {
|
|
"timestamp": 1765119315090,
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#plugins",
|
|
"html": "<html lang=\"en\" class=\"light\"><head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>Design System Server</title>\n <link rel=\"icon\" type=\"image/svg+xml\" href=\"/admin-ui/favicon.svg\">\n\n <!-- Design System Styles - Tokens and Base Styles -->\n <link rel=\"stylesheet\" href=\"/admin-ui/css/tokens.css\">\n <link rel=\"stylesheet\" href=\"/admin-ui/css/styles.css\">\n\n <!-- Markdown & Syntax Highlighting -->\n <script src=\"https://cdn.jsdelivr.net/npm/marked/marked.min.js\"></script>\n <script src=\"https://cdn.jsdelivr.net/npm/dompurify@3.0.6/dist/purify.min.js\"></script>\n <script src=\"https://cdn.jsdelivr.net/npm/highlight.js@11.9.0/lib/highlight.min.js\"></script>\n\n <script type=\"module\" crossorigin=\"\" src=\"/assets/index-DNcSjd3Y.js\"></script>\n</head>\n<body>\n <div id=\"app\" class=\"app-layout\">\n <!-- Top Navbar -->\n <header class=\"app-header\">\n <div class=\"app-header__project-selector\" id=\"project-selector-container\">\n <div class=\"project-selector\">\n <svg class=\"project-selector__icon\">\n \n \n \n </svg>\n <span class=\"project-selector__label\">Project:</span>\n \n \n \n test\n \n \n \n </div>\n </div>\n <div class=\"app-header__team-selector\">\n <label for=\"team-context-select\" class=\"sr-only\">Select team context</label>\n <select class=\"team-select\" id=\"team-context-select\" aria-label=\"Team context\">\n <option value=\"all\">All Teams</option>\n <option value=\"ui\">UI Team</option>\n <option value=\"ux\">UX Team</option>\n <option value=\"qa\">QA Team</option>\n </select>\n </div>\n <div class=\"app-header__actions\">\n <ds-button data-variant=\"ghost\" data-size=\"icon\" title=\"Toggle theme\" id=\"theme-toggle\" tabindex=\"0\" aria-label=\"Toggle dark/light theme\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M12 3v1m0 16v1m9-9h-1M4 12H3m15.364 6.364l-.707-.707M6.343 6.343l-.707-.707m12.728 0l-.707.707M6.343 17.657l-.707.707M16 12a4 4 0 1 1-8 0 4 4 0 0 1 8 0z\"></path>\n </svg>\n </ds-button>\n <div class=\"notification-toggle-container\" style=\"position: relative;\">\n <ds-button data-variant=\"ghost\" data-size=\"icon\" id=\"notification-toggle\" title=\"Notifications\" tabindex=\"0\" aria-label=\"View notifications\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9\"></path>\n <path d=\"M10.3 21a1.94 1.94 0 0 0 3.4 0\"></path>\n </svg>\n </ds-button>\n <span id=\"notification-indicator\" class=\"status-dot status-dot--error\" style=\"position: absolute; top: 6px; right: 6px; display: none;\"></span>\n <ds-notification-center></ds-notification-center>\n </div>\n <ds-button data-variant=\"ghost\" data-size=\"icon\" id=\"sidebar-toggle\" title=\"Toggle AI Assistant\" tabindex=\"0\" aria-label=\"Toggle AI Assistant sidebar\" aria-controls=\"ai-sidebar\" aria-expanded=\"false\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path>\n </svg>\n </ds-button>\n <div class=\"ds-avatar\" tabindex=\"0\" role=\"button\" aria-label=\"User profile menu\">\n <span>U</span>\n </div>\n </div>\n </header>\n\n <!-- Left Sidebar Navigation -->\n <aside class=\"sidebar\">\n <div class=\"sidebar__header\">\n <div class=\"sidebar__logo\">\n <div class=\"sidebar__logo-icon\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2L2 7l10 5 10-5-10-5z\"></path>\n <path d=\"M2 17l10 5 10-5\"></path>\n <path d=\"M2 12l10 5 10-5\"></path>\n </svg>\n </div>\n <span>DSS</span>\n </div>\n </div>\n\n <nav class=\"sidebar__nav\" id=\"main-nav\" aria-label=\"Main navigation\">\n <!-- Overview Section -->\n <div class=\"nav-section\" role=\"region\" aria-labelledby=\"overview-title\">\n <div class=\"nav-section__title\" id=\"overview-title\">Overview</div>\n <a class=\"nav-item\" data-page=\"dashboard\" href=\"#dashboard\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"9\" rx=\"1\"></rect>\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"5\" rx=\"1\"></rect>\n <rect x=\"14\" y=\"12\" width=\"7\" height=\"9\" rx=\"1\"></rect>\n <rect x=\"3\" y=\"16\" width=\"7\" height=\"5\" rx=\"1\"></rect>\n </svg>\n Dashboard\n </a>\n <a class=\"nav-item\" data-page=\"projects\" href=\"#projects\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M3 3h18v18H3z\"></path>\n <path d=\"M21 9H3\"></path>\n <path d=\"M9 21V9\"></path>\n </svg>\n Projects\n </a>\n </div>\n\n <!-- Tools Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">Tools</div>\n <a class=\"nav-item\" data-page=\"services\" href=\"#services\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"19\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"5\" cy=\"12\" r=\"1\"></circle>\n </svg>\n Services\n </a>\n <a class=\"nav-item\" data-page=\"quick-wins\" href=\"#quick-wins\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z\"></path>\n </svg>\n Quick Wins\n </a>\n <a class=\"nav-item\" data-page=\"chat\" href=\"#chat\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path>\n </svg>\n Chat\n </a>\n </div>\n\n <!-- Design System Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">Design System</div>\n <a class=\"nav-item\" data-page=\"tokens\" href=\"#tokens\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"7\"></rect>\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"7\"></rect>\n <rect x=\"14\" y=\"14\" width=\"7\" height=\"7\"></rect>\n <rect x=\"3\" y=\"14\" width=\"7\" height=\"7\"></rect>\n </svg>\n Tokens\n </a>\n <a class=\"nav-item\" data-page=\"components\" href=\"#components\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2v20M2 12h20\"></path>\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n </svg>\n Components\n </a>\n <a class=\"nav-item\" data-page=\"figma\" href=\"#figma\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20z\"></path>\n <circle cx=\"12\" cy=\"12\" r=\"3\"></circle>\n </svg>\n Figma\n </a>\n <a id=\"storybook-link\" class=\"nav-item\" href=\"https://localhost/storybook/\" target=\"_blank\" tabindex=\"0\" title=\"Open Storybook at https://localhost/storybook/\" style=\"pointer-events: auto; opacity: 1;\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M4 3h16a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z\"></path>\n <path d=\"M9 9h6M9 15h6\"></path>\n </svg>\n Storybook\n </a>\n </div>\n\n <!-- System Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">System</div>\n <a class=\"nav-item\" data-page=\"docs\" href=\"#docs\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M4 19.5A2.5 2.5 0 0 1 6.5 17H20\"></path>\n <path d=\"M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z\"></path>\n </svg>\n Docs\n </a>\n <a class=\"nav-item\" data-page=\"teams\" href=\"#teams\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\"></path>\n <circle cx=\"9\" cy=\"7\" r=\"4\"></circle>\n <path d=\"M23 21v-2a4 4 0 0 0-3-3.87\"></path>\n <path d=\"M16 3.13a4 4 0 0 1 0 7.75\"></path>\n </svg>\n Teams\n </a>\n <a class=\"nav-item\" data-page=\"audit\" href=\"#audit\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M9 11l3 3L22 4\"></path>\n <path d=\"M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0z\"></path>\n </svg>\n Audit\n </a>\n <a class=\"nav-item active\" data-page=\"plugins\" href=\"#plugins\" tabindex=\"0\" aria-current=\"page\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <path d=\"M12 1v6m0 6v6M4.22 4.22l4.24 4.24m3.08 3.08l4.24 4.24M1 12h6m6 0h6m-15.78 7.78l4.24-4.24m3.08-3.08l4.24-4.24\"></path>\n </svg>\n Plugins\n </a>\n <a class=\"nav-item\" data-page=\"settings\" href=\"#settings\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"3\"></circle>\n <path d=\"M12 1v6m0 6v6M4.22 4.22l4.24 4.24m3.08 3.08l4.24 4.24M1 12h6m6 0h6m-15.78 7.78l4.24-4.24m3.08-3.08l4.24-4.24\"></path>\n </svg>\n Settings\n </a>\n </div>\n </nav>\n\n <!-- Help Panel -->\n <div class=\"sidebar__help\">\n <details class=\"help-panel\">\n <summary class=\"help-panel__toggle\" tabindex=\"0\">\n <svg width=\"16\" height=\"16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n <path d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\"></path>\n <line x1=\"12\" y1=\"17\" x2=\"12.01\" y2=\"17\"></line>\n </svg>\n Quick Guide\n </summary>\n <div class=\"help-panel__content\">\n <div class=\"help-section\" data-team=\"ui\" style=\"display: none;\">\n <strong>UI Team</strong>\n <ul>\n <li>Extract tokens from Figma</li>\n <li>Sync to CSS variables</li>\n <li>Generate components</li>\n <li>Check token drift</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"ux\">\n <strong>UX Team</strong>\n <ul>\n <li>Add Figma files to project</li>\n <li>Run visual diff checks</li>\n <li>Review token consistency</li>\n <li>Validate components</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"qa\" style=\"display: none;\">\n <strong>QA Team</strong>\n <ul>\n <li>Define ESRE test cases</li>\n <li>Run component validation</li>\n <li>Review visual regressions</li>\n <li>Export audit logs</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"all\">\n <strong>Getting Started</strong>\n <ol>\n <li>Create a project</li>\n <li>Add Figma file key</li>\n <li>Extract & sync tokens</li>\n <li>Use AI chat for help</li>\n </ol>\n </div>\n </div>\n </details>\n </div>\n\n <!-- Sidebar Footer -->\n <div class=\"sidebar__footer\">\n <ds-badge data-variant=\"outline\">v1.0.0</ds-badge>\n </div>\n </aside>\n\n <!-- Main Content Area -->\n <main class=\"app-main\">\n <div id=\"page-content\" class=\"app-content\">\n <div class=\"page-header\">\n <h1>Plugins</h1>\n <p class=\"text-muted\">1 of 1 plugins enabled</p>\n </div>\n\n <div class=\"plugins-grid\">\n \n <div data-plugin-id=\"claude-ai\" class=\"plugin-card enabled\">\n <div class=\"plugin-card__header\">\n <div class=\"plugin-card__icon\">\ud83e\udd16</div>\n <div class=\"plugin-card__title\">\n <div class=\"plugin-card__name\">Claude AI Assistant</div>\n <div class=\"plugin-card__version\">v1.0.0</div>\n </div>\n <div data-plugin=\"claude-ai\" data-action=\"togglePlugin\" class=\"plugin-toggle enabled\">\n </div>\n </div>\n <div class=\"plugin-card__desc\">Enhanced Claude AI integration for design system workflows</div>\n \n <div class=\"plugin-card__settings\">\n \n <div class=\"plugin-setting\">\n <span class=\"plugin-setting__label\">Claude Model</span>\n \n \n Claude 3 Sonnet (Fast)\n \n Claude 3 Opus (Advanced)\n \n Claude 3 Haiku (Quick)\n \n \n </div>\n \n <div class=\"plugin-setting\">\n <span class=\"plugin-setting__label\">Auto-suggest improvements</span>\n <div data-type=\"boolean\" data-key=\"autoSuggest\" data-plugin=\"claude-ai\" data-action=\"setPluginSetting\" class=\"plugin-toggle enabled\">\n </div>\n </div>\n \n <div class=\"plugin-setting\">\n <span class=\"plugin-setting__label\">Context Depth</span>\n \n \n Minimal\n \n Standard\n \n Deep Analysis\n \n \n </div>\n \n </div>\n \n <div class=\"plugin-card__meta\">\n <span class=\"plugin-card__author\">by DSS Team</span>\n \n Enabled\n \n </div>\n </div>\n \n </div>\n\n \n </div>\n\n <!-- Right Sidebar - AI Chat -->\n <aside class=\"app-sidebar collapsed\" id=\"ai-sidebar\">\n <ds-ai-chat></ds-ai-chat>\n </aside>\n </main>\n </div>\n\n <!-- Toast Provider for notifications -->\n <ds-toast-provider></ds-toast-provider>\n\n <!-- Load Components -->\n\n\n</body></html>",
|
|
"viewport": {
|
|
"width": 1403,
|
|
"height": 958,
|
|
"devicePixelRatio": 2
|
|
},
|
|
"title": "Design System Server"
|
|
}
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#plugins",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119317091,
|
|
"relativeTime": 109002,
|
|
"level": "info",
|
|
"category": "snapshot",
|
|
"message": "State Capture (navigation)",
|
|
"data": {
|
|
"trigger": "navigation",
|
|
"details": {
|
|
"from": "https://dss.overbits.luz.uy/admin-ui/index.html#plugins",
|
|
"to": "https://dss.overbits.luz.uy/admin-ui/index.html#settings"
|
|
},
|
|
"snapshot": {
|
|
"timestamp": 1765119317091,
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"html": "<html lang=\"en\" class=\"light\"><head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>Design System Server</title>\n <link rel=\"icon\" type=\"image/svg+xml\" href=\"/admin-ui/favicon.svg\">\n\n <!-- Design System Styles - Tokens and Base Styles -->\n <link rel=\"stylesheet\" href=\"/admin-ui/css/tokens.css\">\n <link rel=\"stylesheet\" href=\"/admin-ui/css/styles.css\">\n\n <!-- Markdown & Syntax Highlighting -->\n <script src=\"https://cdn.jsdelivr.net/npm/marked/marked.min.js\"></script>\n <script src=\"https://cdn.jsdelivr.net/npm/dompurify@3.0.6/dist/purify.min.js\"></script>\n <script src=\"https://cdn.jsdelivr.net/npm/highlight.js@11.9.0/lib/highlight.min.js\"></script>\n\n <script type=\"module\" crossorigin=\"\" src=\"/assets/index-DNcSjd3Y.js\"></script>\n</head>\n<body>\n <div id=\"app\" class=\"app-layout\">\n <!-- Top Navbar -->\n <header class=\"app-header\">\n <div class=\"app-header__project-selector\" id=\"project-selector-container\">\n <div class=\"project-selector\">\n <svg class=\"project-selector__icon\">\n \n \n \n </svg>\n <span class=\"project-selector__label\">Project:</span>\n \n \n \n test\n \n \n \n </div>\n </div>\n <div class=\"app-header__team-selector\">\n <label for=\"team-context-select\" class=\"sr-only\">Select team context</label>\n <select class=\"team-select\" id=\"team-context-select\" aria-label=\"Team context\">\n <option value=\"all\">All Teams</option>\n <option value=\"ui\">UI Team</option>\n <option value=\"ux\">UX Team</option>\n <option value=\"qa\">QA Team</option>\n </select>\n </div>\n <div class=\"app-header__actions\">\n <ds-button data-variant=\"ghost\" data-size=\"icon\" title=\"Toggle theme\" id=\"theme-toggle\" tabindex=\"0\" aria-label=\"Toggle dark/light theme\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M12 3v1m0 16v1m9-9h-1M4 12H3m15.364 6.364l-.707-.707M6.343 6.343l-.707-.707m12.728 0l-.707.707M6.343 17.657l-.707.707M16 12a4 4 0 1 1-8 0 4 4 0 0 1 8 0z\"></path>\n </svg>\n </ds-button>\n <div class=\"notification-toggle-container\" style=\"position: relative;\">\n <ds-button data-variant=\"ghost\" data-size=\"icon\" id=\"notification-toggle\" title=\"Notifications\" tabindex=\"0\" aria-label=\"View notifications\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9\"></path>\n <path d=\"M10.3 21a1.94 1.94 0 0 0 3.4 0\"></path>\n </svg>\n </ds-button>\n <span id=\"notification-indicator\" class=\"status-dot status-dot--error\" style=\"position: absolute; top: 6px; right: 6px; display: none;\"></span>\n <ds-notification-center></ds-notification-center>\n </div>\n <ds-button data-variant=\"ghost\" data-size=\"icon\" id=\"sidebar-toggle\" title=\"Toggle AI Assistant\" tabindex=\"0\" aria-label=\"Toggle AI Assistant sidebar\" aria-controls=\"ai-sidebar\" aria-expanded=\"false\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path>\n </svg>\n </ds-button>\n <div class=\"ds-avatar\" tabindex=\"0\" role=\"button\" aria-label=\"User profile menu\">\n <span>U</span>\n </div>\n </div>\n </header>\n\n <!-- Left Sidebar Navigation -->\n <aside class=\"sidebar\">\n <div class=\"sidebar__header\">\n <div class=\"sidebar__logo\">\n <div class=\"sidebar__logo-icon\">\n <svg width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2L2 7l10 5 10-5-10-5z\"></path>\n <path d=\"M2 17l10 5 10-5\"></path>\n <path d=\"M2 12l10 5 10-5\"></path>\n </svg>\n </div>\n <span>DSS</span>\n </div>\n </div>\n\n <nav class=\"sidebar__nav\" id=\"main-nav\" aria-label=\"Main navigation\">\n <!-- Overview Section -->\n <div class=\"nav-section\" role=\"region\" aria-labelledby=\"overview-title\">\n <div class=\"nav-section__title\" id=\"overview-title\">Overview</div>\n <a class=\"nav-item\" data-page=\"dashboard\" href=\"#dashboard\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"9\" rx=\"1\"></rect>\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"5\" rx=\"1\"></rect>\n <rect x=\"14\" y=\"12\" width=\"7\" height=\"9\" rx=\"1\"></rect>\n <rect x=\"3\" y=\"16\" width=\"7\" height=\"5\" rx=\"1\"></rect>\n </svg>\n Dashboard\n </a>\n <a class=\"nav-item\" data-page=\"projects\" href=\"#projects\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M3 3h18v18H3z\"></path>\n <path d=\"M21 9H3\"></path>\n <path d=\"M9 21V9\"></path>\n </svg>\n Projects\n </a>\n </div>\n\n <!-- Tools Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">Tools</div>\n <a class=\"nav-item\" data-page=\"services\" href=\"#services\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"19\" cy=\"12\" r=\"1\"></circle>\n <circle cx=\"5\" cy=\"12\" r=\"1\"></circle>\n </svg>\n Services\n </a>\n <a class=\"nav-item\" data-page=\"quick-wins\" href=\"#quick-wins\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z\"></path>\n </svg>\n Quick Wins\n </a>\n <a class=\"nav-item\" data-page=\"chat\" href=\"#chat\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path>\n </svg>\n Chat\n </a>\n </div>\n\n <!-- Design System Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">Design System</div>\n <a class=\"nav-item\" data-page=\"tokens\" href=\"#tokens\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"7\"></rect>\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"7\"></rect>\n <rect x=\"14\" y=\"14\" width=\"7\" height=\"7\"></rect>\n <rect x=\"3\" y=\"14\" width=\"7\" height=\"7\"></rect>\n </svg>\n Tokens\n </a>\n <a class=\"nav-item\" data-page=\"components\" href=\"#components\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2v20M2 12h20\"></path>\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n </svg>\n Components\n </a>\n <a class=\"nav-item\" data-page=\"figma\" href=\"#figma\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20z\"></path>\n <circle cx=\"12\" cy=\"12\" r=\"3\"></circle>\n </svg>\n Figma\n </a>\n <a id=\"storybook-link\" class=\"nav-item\" href=\"https://localhost/storybook/\" target=\"_blank\" tabindex=\"0\" title=\"Open Storybook at https://localhost/storybook/\" style=\"pointer-events: auto; opacity: 1;\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M4 3h16a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z\"></path>\n <path d=\"M9 9h6M9 15h6\"></path>\n </svg>\n Storybook\n </a>\n </div>\n\n <!-- System Section -->\n <div class=\"nav-section\">\n <div class=\"nav-section__title\">System</div>\n <a class=\"nav-item\" data-page=\"docs\" href=\"#docs\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M4 19.5A2.5 2.5 0 0 1 6.5 17H20\"></path>\n <path d=\"M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z\"></path>\n </svg>\n Docs\n </a>\n <a class=\"nav-item\" data-page=\"teams\" href=\"#teams\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\"></path>\n <circle cx=\"9\" cy=\"7\" r=\"4\"></circle>\n <path d=\"M23 21v-2a4 4 0 0 0-3-3.87\"></path>\n <path d=\"M16 3.13a4 4 0 0 1 0 7.75\"></path>\n </svg>\n Teams\n </a>\n <a class=\"nav-item\" data-page=\"audit\" href=\"#audit\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <path d=\"M9 11l3 3L22 4\"></path>\n <path d=\"M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0z\"></path>\n </svg>\n Audit\n </a>\n <a class=\"nav-item\" data-page=\"plugins\" href=\"#plugins\" tabindex=\"0\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"1\"></circle>\n <path d=\"M12 1v6m0 6v6M4.22 4.22l4.24 4.24m3.08 3.08l4.24 4.24M1 12h6m6 0h6m-15.78 7.78l4.24-4.24m3.08-3.08l4.24-4.24\"></path>\n </svg>\n Plugins\n </a>\n <a class=\"nav-item active\" data-page=\"settings\" href=\"#settings\" tabindex=\"0\" aria-current=\"page\">\n <svg class=\"nav-item__icon\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"3\"></circle>\n <path d=\"M12 1v6m0 6v6M4.22 4.22l4.24 4.24m3.08 3.08l4.24 4.24M1 12h6m6 0h6m-15.78 7.78l4.24-4.24m3.08-3.08l4.24-4.24\"></path>\n </svg>\n Settings\n </a>\n </div>\n </nav>\n\n <!-- Help Panel -->\n <div class=\"sidebar__help\">\n <details class=\"help-panel\">\n <summary class=\"help-panel__toggle\" tabindex=\"0\">\n <svg width=\"16\" height=\"16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\">\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n <path d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\"></path>\n <line x1=\"12\" y1=\"17\" x2=\"12.01\" y2=\"17\"></line>\n </svg>\n Quick Guide\n </summary>\n <div class=\"help-panel__content\">\n <div class=\"help-section\" data-team=\"ui\" style=\"display: none;\">\n <strong>UI Team</strong>\n <ul>\n <li>Extract tokens from Figma</li>\n <li>Sync to CSS variables</li>\n <li>Generate components</li>\n <li>Check token drift</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"ux\">\n <strong>UX Team</strong>\n <ul>\n <li>Add Figma files to project</li>\n <li>Run visual diff checks</li>\n <li>Review token consistency</li>\n <li>Validate components</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"qa\" style=\"display: none;\">\n <strong>QA Team</strong>\n <ul>\n <li>Define ESRE test cases</li>\n <li>Run component validation</li>\n <li>Review visual regressions</li>\n <li>Export audit logs</li>\n </ul>\n </div>\n <div class=\"help-section\" data-team=\"all\">\n <strong>Getting Started</strong>\n <ol>\n <li>Create a project</li>\n <li>Add Figma file key</li>\n <li>Extract & sync tokens</li>\n <li>Use AI chat for help</li>\n </ol>\n </div>\n </div>\n </details>\n </div>\n\n <!-- Sidebar Footer -->\n <div class=\"sidebar__footer\">\n <ds-badge data-variant=\"outline\">v1.0.0</ds-badge>\n </div>\n </aside>\n\n <!-- Main Content Area -->\n <main class=\"app-main\">\n <div id=\"page-content\" class=\"app-content\">\n <div class=\"page-header\">\n <h1>Settings</h1>\n <p class=\"text-muted\">Configure your design system server</p>\n </div>\n\n <div class=\"mt-6 flex flex-col gap-6\">\n \n \n \n Server Mode\n Choose how DSS operates\n \n \n <div class=\"flex gap-4\">\n <div data-mode=\"local\" data-action=\"setMode\" style=\"background: var(--muted)\" class=\"flex-1 p-4 rounded cursor-pointer ring-2 ring-primary\">\n <h4 class=\"font-medium mb-1\">Local Dev Companion</h4>\n <p class=\"text-sm text-muted\">Run alongside your project, provides UI dev assistance, component preview, and local services.</p>\n </div>\n <div data-mode=\"server\" data-action=\"setMode\" style=\"background: var(--muted)\" class=\"flex-1 p-4 rounded cursor-pointer\">\n <h4 class=\"font-medium mb-1\">Remote Server</h4>\n <p class=\"text-sm text-muted\">Deployed centrally, serves design systems to teams, multi-project management.</p>\n </div>\n </div>\n \n \n\n \n \n \n Figma Integration\n Connect to Figma API\n \n Connected\n \n \n \n <div class=\"flex flex-col gap-4\">\n \n <p class=\"text-xs text-muted\">\n Get your token from <a class=\"text-primary\" target=\"_blank\" href=\"https://www.figma.com/developers/api#access-tokens\">Figma Settings \u2192 Personal Access Tokens</a>\n </p>\n <div class=\"flex gap-2\">\n \n Save Token\n \n \n Test Connection\n \n </div>\n \n </div>\n \n \n\n \n \n \n External Tools & Integrations\n Configure connected tools and services\n \n \n <div class=\"flex flex-col gap-4\">\n \n <div style=\"background: var(--muted); border-color: var(--border)\" class=\"p-4 rounded border\">\n <div class=\"flex items-center justify-between mb-3\">\n <div class=\"flex items-center gap-2\">\n <span class=\"font-medium\">Storybook</span>\n documentation\n </div>\n \n \n Open\n \n \n </div>\n <p class=\"text-sm text-muted mb-3\">Component documentation and playground</p>\n \n <div class=\"text-xs text-muted mb-3\">\n URL: <code>https://localhost/storybook/</code>\n Host from server config: <code>localhost</code>\n </div>\n <div class=\"flex gap-2\">\n \n Initialize Storybook\n \n \n Clear Stories\n \n </div>\n \n \n </div>\n \n <div style=\"background: var(--muted); border-color: var(--border)\" class=\"p-4 rounded border\">\n <div class=\"flex items-center justify-between mb-3\">\n <div class=\"flex items-center gap-2\">\n <span class=\"font-medium\">Figma</span>\n design\n </div>\n \n \n Open\n \n \n </div>\n <p class=\"text-sm text-muted mb-3\">Design file integration and token extraction</p>\n \n \n <div class=\"text-xs text-muted\">\n Token status: Check connection above\n </div>\n \n </div>\n \n </div>\n \n \n\n \n \n \n Companion Services\n Discovered and configured services\n \n \n <div class=\"grid grid-cols-3 gap-4\">\n \n <div style=\"background: var(--muted)\" class=\"p-4 rounded\">\n <div class=\"flex items-center justify-between mb-2\">\n <h4 class=\"font-medium\">Storybook</h4>\n <span class=\"status-dot status-dot--success\"></span>\n </div>\n <p class=\"text-sm text-muted mb-2\">\n Running on :6006\n </p>\n \n \n Open\n \n \n </div>\n \n \n <div style=\"background: var(--muted)\" class=\"p-4 rounded\">\n <div class=\"flex items-center justify-between mb-2\">\n <h4 class=\"font-medium\">Vite Dev Server</h4>\n <span class=\"status-dot status-dot--success\"></span>\n </div>\n <p class=\"text-sm text-muted mb-2\">\n Running on :3000\n </p>\n \n \n Open\n \n \n </div>\n \n \n <div style=\"background: var(--muted)\" class=\"p-4 rounded\">\n <div class=\"flex items-center justify-between mb-2\">\n <h4 class=\"font-medium\">Next.js</h4>\n <span class=\"status-dot status-dot--success\"></span>\n </div>\n <p class=\"text-sm text-muted mb-2\">\n Running on :3000\n </p>\n \n \n Open\n \n \n </div>\n \n </div>\n <div class=\"mt-4\">\n \n Refresh Services\n \n </div>\n \n \n\n \n \n \n Features\n Enable or disable DSS features\n \n \n <div class=\"flex flex-col gap-3\">\n \n <div style=\"background: var(--muted)\" class=\"flex items-center justify-between p-3 rounded\">\n <div>\n <div class=\"font-medium\">Visual QA</div>\n <div class=\"text-sm text-muted\">Compare Figma designs with implementation</div>\n </div>\n \n Enabled\n \n </div>\n \n \n <div style=\"background: var(--muted)\" class=\"flex items-center justify-between p-3 rounded\">\n <div>\n <div class=\"font-medium\">Token Sync</div>\n <div class=\"text-sm text-muted\">Sync design tokens to code</div>\n </div>\n \n Enabled\n \n </div>\n \n \n <div style=\"background: var(--muted)\" class=\"flex items-center justify-between p-3 rounded\">\n <div>\n <div class=\"font-medium\">Code Generation</div>\n <div class=\"text-sm text-muted\">Generate component code from Figma</div>\n </div>\n \n Enabled\n \n </div>\n \n \n <div style=\"background: var(--muted)\" class=\"flex items-center justify-between p-3 rounded\">\n <div>\n <div class=\"font-medium\">AI Advisor</div>\n <div class=\"text-sm text-muted\">Get AI suggestions for design system improvements</div>\n </div>\n \n Enabled\n \n </div>\n \n </div>\n \n \n\n \n \n \n Appearance\n Customize the interface\n \n \n <div class=\"flex items-center justify-between\">\n <span>Dark Mode</span>\n \n Toggle Theme\n \n </div>\n \n \n\n \n \n \n Output Configuration\n Token and component generation settings\n \n \n <div class=\"grid grid-cols-2 gap-4\">\n \n \n </div>\n \n \n\n \n \n \n \u26a0\ufe0f Danger Zone\n Irreversible operations - use with caution\n \n \n <div class=\"flex flex-col gap-4\">\n <div>\n <h4 class=\"font-medium mb-2\">Reset DSS to Fresh State</h4>\n <p class=\"text-sm text-muted mb-3\">\n This will delete all user-created themes, cached data, and project databases.\n The DSS structure and default themes will be preserved.\n </p>\n \n Reset DSS\n \n </div>\n </div>\n \n \n\n \n \n \n API Status\n \n \n <div class=\"flex flex-col gap-2 text-sm\">\n <div class=\"flex justify-between\">\n <span>API Mode:</span>\n \n Live\n \n </div>\n <div class=\"flex justify-between\">\n <span>Base URL:</span>\n <span class=\"text-muted\">/api</span>\n </div>\n </div>\n \n \n </div>\n </div>\n\n <!-- Right Sidebar - AI Chat -->\n <aside class=\"app-sidebar collapsed\" id=\"ai-sidebar\">\n <ds-ai-chat></ds-ai-chat>\n </aside>\n </main>\n </div>\n\n <!-- Toast Provider for notifications -->\n <ds-toast-provider></ds-toast-provider>\n\n <!-- Load Components -->\n\n\n</body></html>",
|
|
"viewport": {
|
|
"width": 1403,
|
|
"height": 958,
|
|
"devicePixelRatio": 2
|
|
},
|
|
"title": "Design System Server"
|
|
}
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119329313,
|
|
"relativeTime": 121224,
|
|
"level": "debug",
|
|
"category": "console",
|
|
"message": "[BrowserLogger] Synced 71 logs to server",
|
|
"data": {
|
|
"args": [
|
|
"[BrowserLogger] Synced 71 logs to server"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119329365,
|
|
"relativeTime": 121276,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/browser-logs",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/browser-logs",
|
|
"initiatorType": "fetch",
|
|
"duration": 1190.7000000178814,
|
|
"transferSize": 442,
|
|
"encodedBodySize": 142,
|
|
"decodedBodySize": 142
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119330308,
|
|
"relativeTime": 122219,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/health",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/health",
|
|
"initiatorType": "fetch",
|
|
"duration": 189.39999997615814,
|
|
"transferSize": 583,
|
|
"encodedBodySize": 283,
|
|
"decodedBodySize": 283
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119359297,
|
|
"relativeTime": 151208,
|
|
"level": "debug",
|
|
"category": "console",
|
|
"message": "[BrowserLogger] Synced 74 logs to server",
|
|
"data": {
|
|
"args": [
|
|
"[BrowserLogger] Synced 74 logs to server"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119359348,
|
|
"relativeTime": 151259,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/browser-logs",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/browser-logs",
|
|
"initiatorType": "fetch",
|
|
"duration": 1174.5,
|
|
"transferSize": 442,
|
|
"encodedBodySize": 142,
|
|
"decodedBodySize": 142
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119360307,
|
|
"relativeTime": 152218,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/health",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/health",
|
|
"initiatorType": "fetch",
|
|
"duration": 187.69999998807907,
|
|
"transferSize": 583,
|
|
"encodedBodySize": 283,
|
|
"decodedBodySize": 283
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119389299,
|
|
"relativeTime": 181210,
|
|
"level": "debug",
|
|
"category": "console",
|
|
"message": "[BrowserLogger] Synced 77 logs to server",
|
|
"data": {
|
|
"args": [
|
|
"[BrowserLogger] Synced 77 logs to server"
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119389350,
|
|
"relativeTime": 181261,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/browser-logs",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/browser-logs",
|
|
"initiatorType": "fetch",
|
|
"duration": 1176.4000000059605,
|
|
"transferSize": 442,
|
|
"encodedBodySize": 142,
|
|
"decodedBodySize": 142
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119390305,
|
|
"relativeTime": 182216,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/health",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/health",
|
|
"initiatorType": "fetch",
|
|
"duration": 186.80000001192093,
|
|
"transferSize": 583,
|
|
"encodedBodySize": 283,
|
|
"decodedBodySize": 283
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
}
|
|
],
|
|
"diagnostic": {
|
|
"sessionId": "session-1765119208089-tjqfeem71",
|
|
"uptime": 210026,
|
|
"totalLogs": 80,
|
|
"errorCount": 1,
|
|
"warnCount": 1,
|
|
"networkRequests": 30,
|
|
"memory": {
|
|
"usedJSHeapSize": 8632489,
|
|
"jsHeapSizeLimit": 4294967296,
|
|
"usagePercent": "0.20"
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36",
|
|
"recentErrors": [
|
|
{
|
|
"timestamp": 1765119304295,
|
|
"relativeTime": 96206,
|
|
"level": "error",
|
|
"category": "console",
|
|
"message": "Failed to clear notifications: TypeError: idb.clear is not a function",
|
|
"data": {
|
|
"args": [
|
|
"Failed to clear notifications:",
|
|
{}
|
|
]
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#chat",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
}
|
|
],
|
|
"recentNetworkRequests": [
|
|
{
|
|
"timestamp": 1765119390305,
|
|
"relativeTime": 182216,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/health",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/health",
|
|
"initiatorType": "fetch",
|
|
"duration": 186.80000001192093,
|
|
"transferSize": 583,
|
|
"encodedBodySize": 283,
|
|
"decodedBodySize": 283
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119389350,
|
|
"relativeTime": 181261,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/browser-logs",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/browser-logs",
|
|
"initiatorType": "fetch",
|
|
"duration": 1176.4000000059605,
|
|
"transferSize": 442,
|
|
"encodedBodySize": 142,
|
|
"decodedBodySize": 142
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119360307,
|
|
"relativeTime": 152218,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/health",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/health",
|
|
"initiatorType": "fetch",
|
|
"duration": 187.69999998807907,
|
|
"transferSize": 583,
|
|
"encodedBodySize": 283,
|
|
"decodedBodySize": 283
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119359348,
|
|
"relativeTime": 151259,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/api/browser-logs",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/api/browser-logs",
|
|
"initiatorType": "fetch",
|
|
"duration": 1174.5,
|
|
"transferSize": 442,
|
|
"encodedBodySize": 142,
|
|
"decodedBodySize": 142
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
},
|
|
{
|
|
"timestamp": 1765119330308,
|
|
"relativeTime": 122219,
|
|
"level": "network",
|
|
"category": "fetch",
|
|
"message": "FETCH https://dss.overbits.luz.uy/health",
|
|
"data": {
|
|
"url": "https://dss.overbits.luz.uy/health",
|
|
"initiatorType": "fetch",
|
|
"duration": 189.39999997615814,
|
|
"transferSize": 583,
|
|
"encodedBodySize": 283,
|
|
"decodedBodySize": 283
|
|
},
|
|
"url": "https://dss.overbits.luz.uy/admin-ui/index.html#settings",
|
|
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
|
|
}
|
|
]
|
|
}
|
|
} |