|
26 | 26 |
|
27 | 27 | // ── DOM refs ─────────────────────────────────────────────────────────────── |
28 | 28 | const $ = K.$; |
29 | | - const el = { |
30 | | - tabs: { |
31 | | - knowledge: $('tab-knowledge'), |
32 | | - search: $('tab-search'), |
33 | | - sessions: $('tab-sessions'), |
34 | | - embeddings: $('tab-embeddings'), |
35 | | - }, |
36 | | - views: { |
37 | | - knowledge: $('view-knowledge'), |
38 | | - search: $('view-search'), |
39 | | - sessions: $('view-sessions'), |
40 | | - embeddings: $('view-embeddings'), |
41 | | - }, |
42 | | - knowledgeGrid: $('knowledge-grid'), |
43 | | - knowledgeEmpty: $('knowledge-empty'), |
44 | | - knowledgeCategories: $('knowledge-categories'), |
45 | | - knowledgeSearchInput: $('knowledge-search-input'), |
46 | | - knowledgeSearchResults: $('knowledge-search-results'), |
47 | | - btnConsolidate: $('btn-consolidate'), |
48 | | - btnReflect: $('btn-reflect'), |
49 | | - searchInput: $('search-input'), |
50 | | - searchResults: $('search-results'), |
51 | | - searchEmpty: $('search-empty'), |
52 | | - searchRoleFilters: $('search-role-filters'), |
53 | | - modeRanked: $('mode-ranked'), |
54 | | - modeSemantic: $('mode-semantic'), |
55 | | - modeRegex: $('mode-regex'), |
56 | | - sessionsList: $('sessions-list'), |
57 | | - sessionsEmpty: $('sessions-empty'), |
58 | | - sessionProjectFilter: $('session-project-filter'), |
59 | | - searchScopes: $('search-scopes'), |
60 | | - sidePanel: $('side-panel'), |
61 | | - panelTitle: $('panel-title'), |
62 | | - panelBody: $('panel-body'), |
63 | | - panelClose: $('panel-close'), |
64 | | - connectionStatus: $('connection-status'), |
65 | | - statKnowledge: $('stat-knowledge'), |
66 | | - statSessions: $('stat-sessions'), |
67 | | - statVectors: $('stat-vectors'), |
68 | | - embeddingsStatsGrid: $('embedding-stats-grid'), |
69 | | - embeddingsEmpty: $('embeddings-empty'), |
70 | | - embeddingsStatus: $('embeddings-status'), |
71 | | - themeToggle: $('theme-toggle'), |
72 | | - version: $('version'), |
73 | | - loadingOverlay: $('loading-overlay'), |
74 | | - toastContainer: $('toast-container'), |
75 | | - contentWrapper: $('content-wrapper'), |
76 | | - }; |
| 29 | + function _buildEl() { |
| 30 | + return { |
| 31 | + tabs: { |
| 32 | + knowledge: $('tab-knowledge'), |
| 33 | + search: $('tab-search'), |
| 34 | + sessions: $('tab-sessions'), |
| 35 | + embeddings: $('tab-embeddings'), |
| 36 | + }, |
| 37 | + views: { |
| 38 | + knowledge: $('view-knowledge'), |
| 39 | + search: $('view-search'), |
| 40 | + sessions: $('view-sessions'), |
| 41 | + embeddings: $('view-embeddings'), |
| 42 | + }, |
| 43 | + knowledgeGrid: $('knowledge-grid'), |
| 44 | + knowledgeEmpty: $('knowledge-empty'), |
| 45 | + knowledgeCategories: $('knowledge-categories'), |
| 46 | + knowledgeSearchInput: $('knowledge-search-input'), |
| 47 | + knowledgeSearchResults: $('knowledge-search-results'), |
| 48 | + btnConsolidate: $('btn-consolidate'), |
| 49 | + btnReflect: $('btn-reflect'), |
| 50 | + searchInput: $('search-input'), |
| 51 | + searchResults: $('search-results'), |
| 52 | + searchEmpty: $('search-empty'), |
| 53 | + searchRoleFilters: $('search-role-filters'), |
| 54 | + modeRanked: $('mode-ranked'), |
| 55 | + modeSemantic: $('mode-semantic'), |
| 56 | + modeRegex: $('mode-regex'), |
| 57 | + sessionsList: $('sessions-list'), |
| 58 | + sessionsEmpty: $('sessions-empty'), |
| 59 | + sessionProjectFilter: $('session-project-filter'), |
| 60 | + searchScopes: $('search-scopes'), |
| 61 | + sidePanel: $('side-panel'), |
| 62 | + panelTitle: $('panel-title'), |
| 63 | + panelBody: $('panel-body'), |
| 64 | + panelClose: $('panel-close'), |
| 65 | + connectionStatus: $('connection-status'), |
| 66 | + statKnowledge: $('stat-knowledge'), |
| 67 | + statSessions: $('stat-sessions'), |
| 68 | + statVectors: $('stat-vectors'), |
| 69 | + embeddingsStatsGrid: $('embedding-stats-grid'), |
| 70 | + embeddingsEmpty: $('embeddings-empty'), |
| 71 | + embeddingsStatus: $('embeddings-status'), |
| 72 | + themeToggle: $('theme-toggle'), |
| 73 | + version: $('version'), |
| 74 | + loadingOverlay: $('loading-overlay'), |
| 75 | + toastContainer: $('toast-container'), |
| 76 | + contentWrapper: $('content-wrapper'), |
| 77 | + }; |
| 78 | + } |
| 79 | + let el = _buildEl(); |
77 | 80 |
|
78 | 81 | // Expose state and el for module access |
79 | 82 | K._state = state; |
|
485 | 488 | // ── Init ─────────────────────────────────────────────────────────────────── |
486 | 489 |
|
487 | 490 | async function init() { |
| 491 | + el = _buildEl(); |
488 | 492 | K.initTheme(); |
489 | 493 | bindEvents(); |
490 | 494 | K.initSessionScroll(state, el); |
|
546 | 550 | var pluginStyle = document.createElement('style'); |
547 | 551 | pluginStyle.textContent = |
548 | 552 | ':host { display:block; width:100%; height:100%; overflow:hidden; }' + |
549 | | - '.ak-wrapper { font-family:var(--font-sans); font-size:14px; color:var(--text); background:var(--bg); line-height:1.5; width:100%; height:100%; overflow:hidden; }' + |
550 | | - '.ak-wrapper #app { height:100%; }'; |
| 553 | + '.ak-wrapper { font-family:var(--font-sans); font-size:14px; color:var(--text); background:var(--bg); line-height:1.5; width:100%; height:100%; overflow:hidden; display:flex; flex-direction:column; }'; |
551 | 554 | shadow.appendChild(pluginStyle); |
552 | 555 |
|
553 | 556 | if (typeof K._template === 'function') { |
554 | 557 | var wrapper = document.createElement('div'); |
555 | | - wrapper.className = 'theme-dark ak-wrapper'; |
| 558 | + wrapper.className = 'ak-wrapper'; |
| 559 | + wrapper.setAttribute('data-theme', 'dark'); |
556 | 560 | wrapper.innerHTML = K._template(); |
557 | 561 | shadow.appendChild(wrapper); |
558 | 562 | } |
|
0 commit comments