1+ <!-- Event Foundation -->
2+ < mat-expansion-panel [expanded] ="expanded " class ="foundation-panel ">
3+ < mat-expansion-panel-header >
4+ < mat-panel-title >
5+ < mat-icon class ="section-icon "> foundation</ mat-icon >
6+ < span > Event Foundation</ span >
7+ < mat-icon class ="completion-icon "
8+ [class.complete] ="isComplete() "
9+ [class.incomplete] ="!isComplete() "
10+ [class.has-suggestions] ="hasSuggestions() "
11+ [title] ="hasSuggestions() ? 'Has pending AI suggestions' : (isComplete() ? 'Section complete' : 'Section incomplete') ">
12+ {{ hasSuggestions() ? 'auto_awesome' : (isComplete() ? 'check_circle' : 'radio_button_unchecked') }}
13+ </ mat-icon >
14+ </ mat-panel-title >
15+ </ mat-expansion-panel-header >
16+
17+ < div class ="panel-content ">
18+ < div class ="detail-grid ">
19+ < div class ="detail-item " *ngIf ="concept.description ">
20+ < div class ="detail-label ">
21+ < mat-icon > description</ mat-icon >
22+ < strong > Description</ strong >
23+ </ div >
24+ < p class ="detail-value "> {{ concept.description }}</ p >
25+ </ div >
26+
27+ < div class ="detail-item " *ngIf ="concept.eventDetails?.objectives?.length ">
28+ < div class ="detail-label ">
29+ < mat-icon > flag</ mat-icon >
30+ < strong > Objectives</ strong >
31+ </ div >
32+ < ul class ="objectives-list ">
33+ < li *ngFor ="let objective of concept.eventDetails?.objectives "> {{ objective }}</ li >
34+ </ ul >
35+ </ div >
36+
37+ < div class ="detail-item " *ngIf ="concept.eventDetails?.targetAudience ">
38+ < div class ="detail-label ">
39+ < mat-icon > group</ mat-icon >
40+ < strong > Target Audience</ strong >
41+ </ div >
42+ < p class ="detail-value "> {{ concept.eventDetails?.targetAudience }}</ p >
43+ </ div >
44+
45+ < div class ="detail-row ">
46+ < div class ="detail-item " *ngIf ="concept.eventDetails?.format || getFieldSuggestion('eventDetails.format') ">
47+ < div class ="detail-label ">
48+ < mat-icon > category</ mat-icon >
49+ < strong > Format</ strong >
50+ </ div >
51+ < p class ="detail-value " *ngIf ="concept.eventDetails?.format "> {{ concept.eventDetails?.format }}</ p >
52+
53+ <!-- Format Suggestion -->
54+ < div class ="suggestion-item " *ngIf ="getFieldSuggestion('eventDetails.format') as suggestion ">
55+ < div class ="suggestion-content ">
56+ < div class ="suggestion-change ">
57+ < span class ="current "> {{ suggestion.currentValue }}</ span >
58+ < mat-icon class ="arrow "> arrow_forward</ mat-icon >
59+ < span class ="suggested "> {{ suggestion.suggestedValue }}</ span >
60+ </ div >
61+ < p class ="suggestion-reason "> {{ suggestion.reasoning }}</ p >
62+ < div class ="suggestion-actions ">
63+ < button mat-icon-button color ="primary " (click) ="acceptFieldUpdate(suggestion) ">
64+ < mat-icon > check</ mat-icon >
65+ </ button >
66+ < button mat-icon-button color ="warn " (click) ="rejectFieldUpdate(suggestion) ">
67+ < mat-icon > close</ mat-icon >
68+ </ button >
69+ </ div >
70+ </ div >
71+ </ div >
72+ </ div >
73+
74+ < div class ="detail-item " *ngIf ="concept.eventDetails?.capacity || getFieldSuggestion('eventDetails.capacity') ">
75+ < div class ="detail-label ">
76+ < mat-icon > people</ mat-icon >
77+ < strong > Capacity</ strong >
78+ </ div >
79+ < p class ="detail-value " *ngIf ="concept.eventDetails?.capacity "> {{ concept.eventDetails?.capacity }} attendees</ p >
80+
81+ <!-- Capacity Suggestion -->
82+ < div class ="suggestion-item " *ngIf ="getFieldSuggestion('eventDetails.capacity') as suggestion ">
83+ < div class ="suggestion-content ">
84+ < div class ="suggestion-change ">
85+ < span class ="current "> {{ suggestion.currentValue }}</ span >
86+ < mat-icon class ="arrow "> arrow_forward</ mat-icon >
87+ < span class ="suggested "> {{ suggestion.suggestedValue }}</ span >
88+ </ div >
89+ < p class ="suggestion-reason "> {{ suggestion.reasoning }}</ p >
90+ < div class ="suggestion-actions ">
91+ < button mat-icon-button color ="primary " (click) ="acceptFieldUpdate(suggestion) ">
92+ < mat-icon > check</ mat-icon >
93+ </ button >
94+ < button mat-icon-button color ="warn " (click) ="rejectFieldUpdate(suggestion) ">
95+ < mat-icon > close</ mat-icon >
96+ </ button >
97+ </ div >
98+ </ div >
99+ </ div >
100+ </ div >
101+ </ div >
102+
103+ < div class ="detail-row " *ngIf ="concept.eventDetails?.startDate || concept.eventDetails?.endDate ">
104+ < div class ="detail-item " *ngIf ="concept.eventDetails?.startDate ">
105+ < div class ="detail-label ">
106+ < mat-icon > schedule</ mat-icon >
107+ < strong > Start Date</ strong >
108+ </ div >
109+ < p class ="detail-value "> {{ concept.eventDetails?.startDate | date:'MMM d, y' }}</ p >
110+ </ div >
111+
112+ < div class ="detail-item " *ngIf ="concept.eventDetails?.endDate ">
113+ < div class ="detail-label ">
114+ < mat-icon > event</ mat-icon >
115+ < strong > End Date</ strong >
116+ </ div >
117+ < p class ="detail-value "> {{ concept.eventDetails?.endDate | date:'MMM d, y' }}</ p >
118+ </ div >
119+ </ div >
120+
121+ < div class ="detail-item " *ngIf ="concept.eventDetails?.duration || getFieldSuggestion('eventDetails.duration') ">
122+ < div class ="detail-label ">
123+ < mat-icon > schedule</ mat-icon >
124+ < strong > Duration</ strong >
125+ </ div >
126+ < p class ="detail-value " *ngIf ="concept.eventDetails?.duration "> {{ concept.eventDetails?.duration }}</ p >
127+
128+ <!-- Duration Suggestion -->
129+ < div class ="suggestion-item " *ngIf ="getFieldSuggestion('eventDetails.duration') as suggestion ">
130+ < div class ="suggestion-content ">
131+ < div class ="suggestion-change ">
132+ < span class ="current "> {{ suggestion.currentValue }}</ span >
133+ < mat-icon class ="arrow "> arrow_forward</ mat-icon >
134+ < span class ="suggested "> {{ suggestion.suggestedValue }}</ span >
135+ </ div >
136+ < p class ="suggestion-reason "> {{ suggestion.reasoning }}</ p >
137+ < div class ="suggestion-actions ">
138+ < button mat-icon-button color ="primary " (click) ="acceptFieldUpdate(suggestion) ">
139+ < mat-icon > check</ mat-icon >
140+ </ button >
141+ < button mat-icon-button color ="warn " (click) ="rejectFieldUpdate(suggestion) ">
142+ < mat-icon > close</ mat-icon >
143+ </ button >
144+ </ div >
145+ </ div >
146+ </ div >
147+ </ div >
148+
149+ < div class ="detail-item " *ngIf ="concept.eventDetails?.location ">
150+ < div class ="detail-label ">
151+ < mat-icon > place</ mat-icon >
152+ < strong > Location</ strong >
153+ </ div >
154+ < p class ="detail-value "> {{ concept.eventDetails?.location }}</ p >
155+ </ div >
156+
157+ < div class ="detail-item " *ngIf ="concept.tags.length > 0 ">
158+ < div class ="detail-label ">
159+ < mat-icon > local_offer</ mat-icon >
160+ < strong > Tags</ strong >
161+ </ div >
162+ < div class ="tags-container ">
163+ < span *ngFor ="let tag of concept.tags " class ="tag "> {{ tag }}</ span >
164+ </ div >
165+ </ div >
166+ </ div >
167+ </ div >
168+ </ mat-expansion-panel >
0 commit comments