Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
349 commits
Select commit Hold shift + click to select a range
fa38ee5
more finetune
boyangsvl Mar 25, 2026
aa9148d
Merge pull request #128 from boyangsvl/workflow
boyangsvl Mar 25, 2026
da79c5c
wider message
boyangsvl Mar 25, 2026
3f351d0
toolbar style
boyangsvl Mar 25, 2026
6efa377
toolbar group
boyangsvl Mar 25, 2026
446f11e
radius
boyangsvl Mar 25, 2026
18ef4ee
Merge pull request #129 from boyangsvl/workflow
boyangsvl Mar 25, 2026
ebd1c8a
change backend url
boyangsvl Mar 26, 2026
a6a0a7c
remove divider in toolbar
boyangsvl Mar 26, 2026
8d8fe04
unify styles
boyangsvl Mar 26, 2026
9fd89bc
use standard color
boyangsvl Mar 26, 2026
af50441
message color
boyangsvl Mar 26, 2026
a0bec5d
info button style
boyangsvl Mar 26, 2026
95e0f2d
output color
boyangsvl Mar 26, 2026
2b011f7
json string color be green
boyangsvl Mar 26, 2026
fbe6f14
Fix border radius for details-panel-container and make it scrollable
boyangsvl Mar 26, 2026
0513f22
Tweak app-canvas margin-right in chat.component.scss
boyangsvl Mar 26, 2026
6270830
Extract HoverInfoButtonComponent and remove customClass
boyangsvl Mar 26, 2026
ab98f69
Replace data-button with hover-info-button in long-running-response
boyangsvl Mar 26, 2026
71b2d00
make request input box smaller
boyangsvl Mar 26, 2026
e9f1d6f
dot color respond to theme
boyangsvl Mar 26, 2026
d582bec
add legend to structure and fix hover effect
wyf7107 Mar 26, 2026
3fabd0b
Fix first user message not sent after creating new session
wyf7107 Mar 26, 2026
c0d4bc6
Always show breadscrum
wyf7107 Mar 26, 2026
b15eacb
restore ellipsis
boyangsvl Mar 26, 2026
dc20b1b
Change structure graph title
wyf7107 Mar 26, 2026
86ccd25
Hide event panel when switching to a new app
boyangsvl Mar 26, 2026
0d7df2e
fix invocation list clipping
boyangsvl Mar 26, 2026
04159a8
Update JSON tooltip on avatar to show author and node path, and unify…
boyangsvl Mar 26, 2026
24ab76c
words
boyangsvl Mar 26, 2026
1a599b4
hitl box style
boyangsvl Mar 26, 2026
bdfe95e
full width
boyangsvl Mar 26, 2026
579e2dc
Merge branch 'origin/workflow'
boyangsvl Mar 26, 2026
7811f42
show error
boyangsvl Mar 27, 2026
939885f
show error info as json
boyangsvl Mar 27, 2026
c788c4a
cursor
boyangsvl Mar 27, 2026
dc02612
remove mat-card
boyangsvl Mar 27, 2026
07657a6
merge container
boyangsvl Mar 27, 2026
501f2d8
unify event number
boyangsvl Mar 27, 2026
23af3b5
simplify output chip
boyangsvl Mar 27, 2026
d0ad3d3
use standard progress bar
boyangsvl Mar 27, 2026
a347dd8
update
boyangsvl Mar 27, 2026
9923d9a
auto scroll
boyangsvl Mar 27, 2026
6be308d
responsive toolbar
boyangsvl Mar 27, 2026
43c669a
fix close button in trace
boyangsvl Mar 27, 2026
0962887
hover color
boyangsvl Mar 27, 2026
530cb32
hover state for toolbar
boyangsvl Mar 27, 2026
c4fc66d
chat avatar agent
boyangsvl Mar 27, 2026
d14a32f
event number
boyangsvl Mar 27, 2026
58084e3
remove wrapper in row
boyangsvl Mar 27, 2026
65a55e2
alignment
boyangsvl Mar 27, 2026
3be3c16
un-button
boyangsvl Mar 27, 2026
c9d7029
fix json view selection
boyangsvl Mar 27, 2026
7b72d1f
uiEvent
boyangsvl Mar 27, 2026
790b210
more
boyangsvl Mar 27, 2026
c7b136e
rename to uiEvent
boyangsvl Mar 27, 2026
65d577a
event id
boyangsvl Mar 27, 2026
6b9b912
required
boyangsvl Mar 27, 2026
ea93737
rename
boyangsvl Mar 27, 2026
c02c9b5
error
boyangsvl Mar 27, 2026
600cb46
state
boyangsvl Mar 27, 2026
73cba3d
json tooltip
boyangsvl Mar 27, 2026
6c470c0
route
boyangsvl Mar 27, 2026
e644fb2
filter empty actions
boyangsvl Mar 27, 2026
1e7019c
artifact delta
boyangsvl Mar 27, 2026
f43ae94
output
boyangsvl Mar 27, 2026
db691fb
root agent should n't be clickable
wyf7107 Mar 27, 2026
6b1cde1
Events without content should have full object instead of just id
wyf7107 Mar 27, 2026
50bde5b
has event content
boyangsvl Mar 27, 2026
9bc7c39
remove the old loading message
boyangsvl Mar 27, 2026
4cd8600
fix build
boyangsvl Mar 27, 2026
a239b06
clean up
boyangsvl Mar 27, 2026
5e53dcb
support output_for field
boyangsvl Mar 27, 2026
0e35f6c
fix event not showing fully after request_input
boyangsvl Mar 27, 2026
3f66cd0
remove landing page feature. it should be done in agent definition, n…
boyangsvl Mar 27, 2026
eb487b2
more unify between send message and send user input
boyangsvl Mar 27, 2026
f107898
Put event graph to individual tab
wyf7107 Mar 27, 2026
367b7de
unify auth too
boyangsvl Mar 27, 2026
ac507ce
performance on event list
boyangsvl Mar 27, 2026
236077d
output for
boyangsvl Mar 27, 2026
9adc4bd
use index
boyangsvl Mar 27, 2026
734ac3d
remove even number calculation
boyangsvl Mar 27, 2026
c46c3a9
author
boyangsvl Mar 27, 2026
ee964ff
state chip for user message
boyangsvl Mar 27, 2026
9065ea4
use index for selection
boyangsvl Mar 27, 2026
7ef03e8
feat: introduce EventRowComponent to encapsulate individual chat even…
boyangsvl Mar 27, 2026
09984dc
remove request input intermediate state
boyangsvl Mar 27, 2026
46c7a4a
fix: update message selector to target message-row-container for scro…
boyangsvl Mar 28, 2026
a241511
feat: persist side panel visibility state in local storage
boyangsvl Mar 28, 2026
eb9af7e
style: update selector-drawer layout to use flexbox on inner containe…
boyangsvl Mar 28, 2026
00344e1
feat: add session display name support with editing capabilities and …
boyangsvl Mar 28, 2026
ddbbefa
refactor: rename session metadata key from __adk_metadata__ to __sess…
boyangsvl Mar 28, 2026
b699961
feat: increase session display name length, fix state delta merging, …
boyangsvl Mar 28, 2026
1e9f09d
refactor: introduce InlineEditComponent to centralize user ID and ses…
boyangsvl Mar 28, 2026
eee51d9
edit box size
boyangsvl Mar 28, 2026
8f2d999
refactor: unify display and edit modes into a single input field with…
boyangsvl Mar 28, 2026
b04de93
feat: add delete session button and confirmation dialog to session tab
boyangsvl Mar 28, 2026
3cc0c88
feat: add user ID reset button and improve session list loading and e…
boyangsvl Mar 28, 2026
f70fd85
fix: prevent auto-scroll when session ID is missing in chat panel
boyangsvl Mar 28, 2026
87f1e96
refactor: simplify chat event processing by consolidating logic into …
boyangsvl Mar 28, 2026
25b76ef
fix: update event matching logic to check for partial status instead …
boyangsvl Mar 28, 2026
e7190b7
fix: update existing UI event logic to correctly identify and replace…
boyangsvl Mar 28, 2026
041d177
refactor: convert useSse to a signal and persist state in local storage
boyangsvl Mar 28, 2026
1ff7fb3
feat: rename microphone controls to call actions and update UI icons …
boyangsvl Mar 28, 2026
f742200
feat: add audio recording volume visualization to chat panel
boyangsvl Mar 28, 2026
fab5a38
feat: move video recording button inside audio recording state and ad…
boyangsvl Mar 28, 2026
7a2b82b
refactor: simplify video streaming interface and remove redundant ses…
boyangsvl Mar 28, 2026
c2d0f31
refactor: extract call recording controls into a standalone CallContr…
boyangsvl Mar 28, 2026
9cd8565
feat: add video streaming layout and visual state to chat panel and c…
boyangsvl Mar 28, 2026
a8c2400
refactor: replace grid layout with absolute positioning for video str…
boyangsvl Mar 28, 2026
903d392
refactor: extract session creation logic into ensureSessionActive and…
boyangsvl Mar 28, 2026
c6cbcee
refactor: remove redundant speaking UI event updates from chat component
boyangsvl Mar 28, 2026
9da683d
feat: integrate websocket transcription events into chat component UI
boyangsvl Mar 28, 2026
b4de58d
feat: add support for displaying input and output transcriptions in c…
boyangsvl Mar 28, 2026
e37b533
refactor: extract partial event merging logic into a dedicated method…
boyangsvl Mar 28, 2026
491bf7b
feat: add usage metadata display to event row component
boyangsvl Mar 28, 2026
ff4b2b4
refactor: restructure chat input layout to use flexbox for video cont…
boyangsvl Mar 28, 2026
d6d9c4a
refactor: introduce ContentBubbleComponent to standardize message and…
boyangsvl Mar 28, 2026
387bcc0
refactor: standardize message bubble styling and remove italicized th…
boyangsvl Mar 28, 2026
e83a445
chore: remove debug console log from appendEventRow
boyangsvl Mar 28, 2026
de89485
feat: add interruption and turn completion tracking with automatic au…
boyangsvl Mar 28, 2026
a959fd4
refactor: consolidate event processing in chat component by routing s…
boyangsvl Mar 28, 2026
ca82971
feat: update content bubble type logic and add styling for output types
boyangsvl Mar 28, 2026
56e3121
refactor: move JsonTooltipDirective from content-bubble to ngx-json-v…
boyangsvl Mar 28, 2026
9e51f4c
style: apply uppercase transformation to json-tooltip header text
boyangsvl Mar 28, 2026
6cdc94d
feat: add toggle to filter out intermediate chat events and persist p…
boyangsvl Mar 28, 2026
5b0c838
feat: enrich function calls with long-running metadata and support in…
boyangsvl Mar 28, 2026
99c2fef
fix: prevent UI event rendering for long-running tool calls that cont…
boyangsvl Mar 28, 2026
a5c33d8
refactor: update layout styles to improve flexbox containment and res…
boyangsvl Mar 29, 2026
57cfb61
refactor: replace MatDialog with a custom overlay component for the a…
boyangsvl Mar 29, 2026
ae752c5
style: add border-radius to agent structure graph images
boyangsvl Mar 29, 2026
b42ce0b
feat: implement interactive pan and zoom functionality for the agent …
boyangsvl Mar 29, 2026
5d4a518
feat: prevent node click events during graph panning and add fade-in …
boyangsvl Mar 29, 2026
f507713
refactor: implement vertical tab navigation for event details within …
boyangsvl Mar 29, 2026
a87834a
style: update side panel resize handle z-index and hover background c…
boyangsvl Mar 29, 2026
e16c8a3
style: adjust mdc-tab padding and min-width in side-panel component
boyangsvl Mar 29, 2026
eb8f305
refactor: replace event list view with a multi-tabbed detail interfac…
boyangsvl Mar 29, 2026
60948cd
refactor: centralize trace component styles and implement span name f…
boyangsvl Mar 29, 2026
3aea794
feat: replace expansion panels with a dropdown selector for trace nav…
boyangsvl Mar 29, 2026
0a43304
feat: add invocation ID copy button and display total root latency in…
boyangsvl Mar 29, 2026
3f9cdb7
refactor: update trace tree flattening to exclude root nodes from the…
boyangsvl Mar 29, 2026
37fdcb1
style: update component row and trace bar styles to use Material Desi…
boyangsvl Mar 29, 2026
9ce073a
refactor: replace millisecond-based duration formatting with a dynami…
boyangsvl Mar 29, 2026
90e18c8
feat: display invocation indices in trace selection dropdown
boyangsvl Mar 29, 2026
cd10362
feat: persist side panel tab selection in local storage
boyangsvl Mar 29, 2026
76c4636
refactor: consolidate redundant trace data loading logic into a singl…
boyangsvl Mar 29, 2026
ce35066
fix: ensure sessionId is correctly initialized and validated before l…
boyangsvl Mar 29, 2026
783ea4d
feat: update trace selection logic to auto-select new invocations whe…
boyangsvl Mar 29, 2026
caa8424
refactor: move message rendering and editing logic from event-row to …
boyangsvl Mar 29, 2026
a5eb8fc
refactor: extract event content rendering logic into a new EventConte…
boyangsvl Mar 29, 2026
7c47ddb
feat: add trace visualization mode to chat panel with invocation-base…
boyangsvl Mar 29, 2026
b832383
refactor: update chat panel layout by moving the sub-toolbar outside …
boyangsvl Mar 29, 2026
56fc7ff
feat: move intermediate events toggle button from chat component to c…
boyangsvl Mar 29, 2026
75c2fd2
refactor: move token streaming toggle from chat menu to chat panel he…
boyangsvl Mar 29, 2026
5e8f3cf
style: update trace tree and chat panel layout with refined styling a…
boyangsvl Mar 29, 2026
8fc2401
feat: persist chat view mode in local storage and update trace contai…
boyangsvl Mar 29, 2026
a246849
style: adjust trace container layout and remove redundant width const…
boyangsvl Mar 29, 2026
d21aef9
feat: preserve scroll position when switching between events and trac…
boyangsvl Mar 29, 2026
43af3fb
refactor: remove bottom trace detail panel and update TraceTabCompone…
boyangsvl Mar 29, 2026
9b500d2
feat: replace raw JSON view with structured info tables for span details
boyangsvl Mar 29, 2026
863e9e8
feat: add clickable span links to parent and child IDs in trace detai…
boyangsvl Mar 29, 2026
e6290a6
refactor: optimize span children lookup and update timestamp formatti…
boyangsvl Mar 29, 2026
348b1f2
feat: replace invocation ID copy button with clickable root span sele…
boyangsvl Mar 29, 2026
37e1786
style: update trace tree header padding and background colors
boyangsvl Mar 29, 2026
78ada3d
feat: add auto-scroll functionality for selected trace nodes in the t…
boyangsvl Mar 29, 2026
1e6f175
feat: add event ID link to trace tab to enable navigation to specific…
boyangsvl Mar 29, 2026
32aa58c
feat: integrate trace span selection into side panel and rename event…
boyangsvl Mar 29, 2026
ca41f8c
feat: implement auto-scroll and view mode switching when selecting ch…
boyangsvl Mar 29, 2026
b5b093f
feat: add HTML tooltip to trace tree nodes and standardize event cont…
boyangsvl Mar 29, 2026
37f2d00
feat: auto-open side panel on event selection and refactor tooltip st…
boyangsvl Mar 29, 2026
6b25752
feat: add selectable state to event rows and disable selection in tra…
boyangsvl Mar 29, 2026
dd3ee05
feat: add raw JSON tab and structured event metadata view to event an…
boyangsvl Mar 29, 2026
d39c254
feat: add actions table to event details view with JSON viewer support
boyangsvl Mar 29, 2026
f1acb20
feat: add paginator component to trace details for span navigation
boyangsvl Mar 29, 2026
6dc3f47
feat: implement hierarchical span ordering in trace tab for improved …
boyangsvl Mar 29, 2026
9f8a589
feat: implement keyboard arrow navigation for trace rows with scroll-…
boyangsvl Mar 29, 2026
a12b146
fix: reset trace service state and clear chat selection indices durin…
boyangsvl Mar 29, 2026
a6328d4
refactor: remove state delta tab and associated logic from event comp…
boyangsvl Mar 29, 2026
1e3a910
feat: add loading spinner to event graph tab and allow navigation whe…
boyangsvl Mar 29, 2026
2e423d7
refactor: extract LLM request/response directly from trace attributes…
boyangsvl Mar 30, 2026
5954dc9
feat: add associated spans display to event tab and implement navigat…
boyangsvl Mar 30, 2026
455661b
style: increase minimum width for chat component and resizable drawer
boyangsvl Mar 30, 2026
87d7676
refactor: centralize session loading logic in ChatComponent and simpl…
boyangsvl Mar 30, 2026
00e2327
refactor: replace fixed-width trace labels with flexible layout for i…
boyangsvl Mar 30, 2026
87dba7d
fix: prevent horizontal overflow in side panel tab content
boyangsvl Mar 30, 2026
3ee3a4a
fix: adjust short trace bar duration positioning and add padding for …
boyangsvl Mar 30, 2026
d5c8b62
refactor: improve session loading logic, add trace error logging, and…
boyangsvl Mar 30, 2026
a1e4532
add copy button to ids
boyangsvl Mar 30, 2026
152ac66
Merge pull request #130 from boyangsvl/workflow
boyangsvl Mar 30, 2026
4313684
feat: enable graph tab for all events and implement client-side node …
boyangsvl Mar 30, 2026
2c4c580
refactor: remove artifact tab component and update chat panel view mo…
boyangsvl Mar 30, 2026
fe6abe0
refactor: remove unused artifactDeltaArray computed property and inpu…
boyangsvl Mar 30, 2026
58442c0
style: set graph background to transparent in event and trace components
boyangsvl Mar 30, 2026
6398b4c
feat: add theme-aware graph rendering by splitting session graph SVG …
boyangsvl Mar 30, 2026
f8ca618
feat: enable preloading of app data and SVG graphs in agent structure…
boyangsvl Mar 30, 2026
90d862e
feat: add support for event-specific agent structure graphs in the ev…
boyangsvl Mar 30, 2026
20930bc
fix: resolve incorrect node highlighting by updating node name logic …
boyangsvl Mar 30, 2026
bbd20ea
fix: prevent deselection of chat messages and trace rows when clickin…
boyangsvl Mar 30, 2026
3933b5c
refactor: remove unused message highlighting functionality and associ…
boyangsvl Mar 30, 2026
a56b6c1
style: remove font styling for event graph SVG text elements
boyangsvl Mar 30, 2026
7fd710d
feat: add node information table to event tab component
boyangsvl Mar 30, 2026
3bb1412
refactor: add optional duration parameter to openSnackBar and update …
boyangsvl Mar 30, 2026
3c74514
feat: support hierarchical agent graph navigation by updating graph s…
boyangsvl Mar 30, 2026
c1a481b
style: update target node stroke color to green
boyangsvl Mar 30, 2026
a968d31
feat: add breadcrumb navigation to event graph view in event tab
boyangsvl Mar 30, 2026
5be25c1
feat: add legend to agent structure graph dialog to identify node types
boyangsvl Mar 30, 2026
f077378
fix: prevent dialog from closing when clicking on internal components…
boyangsvl Mar 30, 2026
930f9b5
feat: implement execution path visualization in chat graph using node…
boyangsvl Mar 30, 2026
a84cb82
feat: display traversal frequency badges on graph edges by calculatin…
boyangsvl Mar 30, 2026
7a01d85
feat: implement interactive event graph drill-down and node selection…
boyangsvl Mar 30, 2026
ee39951
style: enable word wrapping for table cells in event and trace tabs
boyangsvl Mar 30, 2026
3bccb49
refactor: introduce InfoTable component to standardize table styling …
boyangsvl Mar 30, 2026
4661b87
style: adjust vertical margins for event tab icon container
boyangsvl Mar 30, 2026
a7b5210
style: adjust vertical margins for trace tab icon buttons to improve …
boyangsvl Mar 30, 2026
a4a7fbc
style: update info-table column widths using colgroup and label-col c…
boyangsvl Mar 30, 2026
e6fbb79
feat: add hasSubWorkflows state to conditionally display breadcrumbs …
boyangsvl Mar 30, 2026
35e289a
style: update padding in chat-messages container to uniform 20px
boyangsvl Mar 30, 2026
2aa9bc2
feat: implement dynamic PrismJS syntax highlighting with theme-aware …
boyangsvl Mar 30, 2026
717f420
style: update json-tooltip component and viewer styles to use materia…
boyangsvl Mar 30, 2026
8a88dfa
style: move overflow-y styling from inline HTML attributes to compone…
boyangsvl Mar 30, 2026
11b1f78
feat: filter event data by invocation ID and display current ID in gr…
boyangsvl Mar 30, 2026
d845827
fix: prevent keyboard navigation conflicts with input fields and add …
boyangsvl Mar 30, 2026
08ed188
style: update event-row hover transition and border color styling
boyangsvl Mar 30, 2026
340892c
refactor: rename execution_id and parent_execution_id to run_id and p…
boyangsvl Mar 31, 2026
7b58ab8
feat: add computed properties and UI tables to display function calls…
boyangsvl Mar 31, 2026
b542982
feat: add dedicated metadata tab to event details view
boyangsvl Mar 31, 2026
5af5c25
feat: add focusInput method to chat-panel and trigger on chat reset
boyangsvl Mar 31, 2026
ac4fb77
refactor: simplify readme container styling and remove redundant wrap…
boyangsvl Mar 31, 2026
402b50b
feat: add invocation ID and node path filters to chat panel event view
boyangsvl Mar 31, 2026
1b2b9e2
feat: replace filter select dropdowns with a dynamic chip-based menu …
boyangsvl Mar 31, 2026
d0e4eb3
feat: enhance chat-panel filter UI with tooltips, a clear-all action,…
boyangsvl Mar 31, 2026
0708856
refactor: enable trace tree filtering by removing view mode constrain…
boyangsvl Mar 31, 2026
6f219da
feat: auto-focus chat input when session loading completes or app nam…
boyangsvl Mar 31, 2026
5171eb0
fix: adjust sticky header position in trace tree component to -20px
boyangsvl Mar 31, 2026
a673ee6
feat: add invocation display mapping and navigation support to event …
boyangsvl Mar 31, 2026
014b775
refactor: replace keyvalue pipe with computed entries array for invoc…
boyangsvl Mar 31, 2026
909b5a4
feat: add unvisited node styling to execution graph and include a ful…
boyangsvl Mar 31, 2026
a2544b9
style: increase resize-handler width to 6px for improved usability
boyangsvl Mar 31, 2026
3b96d26
style: update unvisited node SVG colors for improved contrast and vis…
boyangsvl Mar 31, 2026
f8af211
style: update trace tree header border radius and constrain event too…
boyangsvl Mar 31, 2026
267f32c
feat: add attributes tab to trace detail view
boyangsvl Mar 31, 2026
d17c0b3
merge main
wyf7107 Mar 31, 2026
b83cdd6
hide graph button if no graph is available (for v1 backend)
wyf7107 Mar 31, 2026
59b0860
agent structure and builder button should be disabled if not available
wyf7107 Mar 31, 2026
2c62f35
Fix builder asisstant
wyf7107 Apr 1, 2026
50db9c5
clean up unused css and variables
wyf7107 Apr 1, 2026
2147d66
feat: remove usage metadata from event content and add message as out…
boyangsvl Apr 1, 2026
0bebc20
Fix all unittests, ng test run sucessfully
wyf7107 Apr 1, 2026
614f3e2
Fix event graph
wyf7107 Apr 2, 2026
14d1d6c
Merge pull request #131 from wyf7107/workflow
wyf7107 Apr 3, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
185 changes: 0 additions & 185 deletions _theme-colors.scss

This file was deleted.

34 changes: 31 additions & 3 deletions angular.json
Original file line number Diff line number Diff line change
Expand Up @@ -33,15 +33,33 @@
"src/assets"
],
"styles": [
"src/styles.scss"
"src/styles.scss",
{
"input": "node_modules/prismjs/themes/prism.css",
"bundleName": "prism-light",
"inject": false
},
{
"input": "node_modules/prismjs/themes/prism-tomorrow.css",
"bundleName": "prism-dark",
"inject": false
}
],
"scripts": [],
"allowedCommonJsDependencies": [
"string-to-color",
"json-source-map",
"natural-compare-lite",
"ajv",
"jmespath"
"jmespath",
"prismjs",
"prismjs/components/prism-javascript",
"prismjs/components/prism-typescript",
"prismjs/components/prism-css",
"prismjs/components/prism-json",
"prismjs/components/prism-bash",
"prismjs/components/prism-python",
"prismjs/components/prism-yaml"
]
},
"configurations": {
Expand Down Expand Up @@ -105,7 +123,17 @@
}
],
"styles": [
"src/styles.scss"
"src/styles.scss",
{
"input": "node_modules/prismjs/themes/prism.css",
"bundleName": "prism-light",
"inject": false
},
{
"input": "node_modules/prismjs/themes/prism-tomorrow.css",
"bundleName": "prism-dark",
"inject": false
}
],
"scripts": []
}
Expand Down
18 changes: 18 additions & 0 deletions fix_vars.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
const fs = require('fs');
const path = require('path');

const chatComponentPath = path.resolve(__dirname, 'src/app/components/chat/chat.component.ts');

let content = fs.readFileSync(chatComponentPath, 'utf8');

// Fix unrenamed `messages`
content = content.replace(/\.\.\.messages/g, '...uiEvents');
content = content.replace(/messages\.slice/g, 'uiEvents.slice');
content = content.replace(/ \= \[\.\.\.messages\];/g, ' = [...uiEvents];');
content = content.replace(/messages\.findIndex/g, 'uiEvents.findIndex');
content = content.replace(/uiEvents\.forEach\(msg \=\>/g, 'this.uiEvents().forEach(msg =>');
// Let's verify if there are any standalone `messages`
content = content.replace(/const existingIndex \= messages\.findIndex/g, 'const existingIndex = uiEvents.findIndex');

fs.writeFileSync(chatComponentPath, content);
console.log('Fixed chat.component.ts');
23 changes: 23 additions & 0 deletions fix_vars_2.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
const fs = require('fs');
const path = require('path');

const chatComponentPath = path.resolve(__dirname, 'src/app/components/chat/chat.component.ts');
let content = fs.readFileSync(chatComponentPath, 'utf8');

// Fix unrenamed `messages`
content = content.replace(/\.\.\.messages/g, '...uiEvents');
content = content.replace(/ \= \[\.\.\.messages\];/g, ' = [...uiEvents];');
content = content.replace(/messages\.findIndex/g, 'uiEvents.findIndex');
content = content.replace(/uiEvents\.forEach\(msg \=\>/g, 'this.uiEvents().forEach(msg =>');
content = content.replace(/messages\.slice/g, 'uiEvents.slice');
fs.writeFileSync(chatComponentPath, content);
console.log('Fixed chat.component.ts');

const chatPanelHtmlPath = path.resolve(__dirname, 'src/app/components/chat-panel/chat-panel.component.html');
let htmlContent = fs.readFileSync(chatPanelHtmlPath, 'utf8');
htmlContent = htmlContent.replace(/\[allMessages\]\=\"messages\"/g, '[allMessages]="uiEvents"');
htmlContent = htmlContent.replace(/\[messages\]\=\"messages\"/g, '[messages]="uiEvents"');
htmlContent = htmlContent.replace(/messages\.length/g, 'uiEvents.length');
htmlContent = htmlContent.replace(/messages\.includes/g, 'uiEvents.includes');
fs.writeFileSync(chatPanelHtmlPath, htmlContent);
console.log('Fixed chat-panel.component.html');
51 changes: 51 additions & 0 deletions rename_messages.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
const fs = require('fs');
const path = require('path');

const srcDir = path.resolve(__dirname, 'src/app/components');

function walkDir(dir, callback) {
fs.readdirSync(dir).forEach(f => {
let dirPath = path.join(dir, f);
let isDirectory = fs.statSync(dirPath).isDirectory();
isDirectory ? walkDir(dirPath, callback) : callback(path.join(dir, f));
});
}

walkDir(srcDir, function(filePath) {
if (filePath.endsWith('.ts') || filePath.endsWith('.html') || filePath.endsWith('.scss')) {
if (filePath.includes('chat.component') || filePath.includes('chat-panel.component')) {
let originalContent = fs.readFileSync(filePath, 'utf8');
let newContent = originalContent
.replace(/this\.messages/g, 'this.uiEvents')
.replace(/\bmessages\(\)/g, 'uiEvents()')
.replace(/messages = signal/g, 'uiEvents = signal')
.replace(/messages\.update/g, 'uiEvents.update')
.replace(/\(messages \=\> /g, '(uiEvents => ')
.replace(/messages\.map/g, 'uiEvents.map')
.replace(/messages\.filter/g, 'uiEvents.filter')
.replace(/messages\.forEach/g, 'uiEvents.forEach')
.replace(/messages\.length/g, 'uiEvents.length')
.replace(/\[messages\]="messages\(\)"/g, '[uiEvents]="uiEvents()"')
.replace(/messages\)/g, 'uiEvents)')
.replace(/\[messages\]=/, '[uiEvents]=')
.replace(/@Input\(\) messages\: /g, '@Input() uiEvents: ')
.replace(/messages\[/g, 'uiEvents[')
.replace(/let i = 0; i < messages\./g, 'let i = 0; i < uiEvents.')
.replace(/changes\['messages'\]/g, "changes['uiEvents']")
.replace(/for \(let message of messages/g, 'for (let uiEvent of uiEvents')
.replace(/for \(const message of messages/g, 'for (const uiEvent of uiEvents')
.replace(/for \(let message of this\.messages/g, 'for (let uiEvent of this.uiEvents')
.replace(/\.messages\s{0,9}=\s{0,9}messages;/g, '.uiEvents = uiEvents;')
.replace(/\bconst messages = component.messages\(\);/g, 'const uiEvents = component.uiEvents();')
.replace(/expect\(messages/g, 'expect(uiEvents')
.replace(/component\.messages\(\)/g, 'component.uiEvents()')
.replace(/component\.messages\.set/g, 'component.uiEvents.set')
.replace(/chatPanelComponent\.messages/g, 'chatPanelComponent.uiEvents');

if (originalContent !== newContent) {
fs.writeFileSync(filePath, newContent);
console.log('Updated', filePath);
}
}
}
});
6 changes: 6 additions & 0 deletions src/app/app.component.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ import {GRAPH_SERVICE} from './core/services/interfaces/graph';
import {LOCAL_FILE_SERVICE} from './core/services/interfaces/localfile';
import {SAFE_VALUES_SERVICE} from './core/services/interfaces/safevalues';
import {STRING_TO_COLOR_SERVICE} from './core/services/interfaces/string-to-color';
import {THEME_SERVICE} from './core/services/interfaces/theme';
import {LOCATION_SERVICE} from './core/services/location.service';
import {SESSION_SERVICE} from './core/services/interfaces/session';
import {STREAM_CHAT_SERVICE} from './core/services/interfaces/stream-chat';
Expand All @@ -55,6 +56,7 @@ import {MockSafeValuesService} from './core/services/testing/mock-safevalues.ser
import {MockSessionService} from './core/services/testing/mock-session.service';
import {MockStreamChatService} from './core/services/testing/mock-stream-chat.service';
import {MockStringToColorService} from './core/services/testing/mock-string-to-color.service';
import {MockThemeService} from './core/services/testing/mock-theme.service';
import {MockTraceService} from './core/services/testing/mock-trace.service';
import {MockUiStateService} from './core/services/testing/mock-ui-state.service';
import {MockVideoService} from './core/services/testing/mock-video.service';
Expand Down Expand Up @@ -193,6 +195,10 @@ describe('AppComponent', () => {
provide: AGENT_BUILDER_SERVICE,
useValue: mockAgentBuilderService,
},
{
provide: THEME_SERVICE,
useClass: MockThemeService,
},
],
})
.compileComponents();
Expand Down
2 changes: 1 addition & 1 deletion src/app/app.component.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ import {ChangeDetectionStrategy, Component} from '@angular/core';
import { ChatComponent } from './components/chat/chat.component';

@Component({
changeDetection: ChangeDetectionStrategy.Eager,
changeDetection: ChangeDetectionStrategy.Default,
selector: 'app-root',
templateUrl: './app.component.html',
styleUrl: './app.component.scss',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,12 +42,7 @@ mat-form-field {
margin-top: 8px !important;
}

.mat-mdc-raised-button.mat-secondary:not([disabled]) {
background-color: #8ab4f8;
}

.callback-info-container {
background-color: rgba(138, 180, 248, 0.08);
border: 1px solid rgba(138, 180, 248, 0.2);
border-radius: 8px;
padding: 16px;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ export class ImmediateErrorStateMatcher implements ErrorStateMatcher {
}

@Component({
changeDetection: ChangeDetectionStrategy.Eager,
changeDetection: ChangeDetectionStrategy.Default,
selector: 'app-add-callback-dialog',
templateUrl: './add-callback-dialog.component.html',
styleUrl: './add-callback-dialog.component.scss',
Expand Down
Loading
Loading