Нет описания
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

session-list.component.html 1.6KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. <div class="session-list-container">
  2. <div class="session-header">
  3. <h3 class="text-lg font-semibold">会话列表</h3>
  4. <button mat-raised-button color="primary" (click)="createNewSession()">
  5. <mat-icon>add</mat-icon>
  6. 新建会话
  7. </button>
  8. </div>
  9. <div class="session-create" *ngIf="showCreateForm">
  10. <mat-form-field appearance="outline" class="w-full">
  11. <mat-label>会话标题</mat-label>
  12. <input matInput [(ngModel)]="newSessionTitle" placeholder="输入会话标题">
  13. </mat-form-field>
  14. <div class="flex gap-2 mt-2">
  15. <button mat-button (click)="cancelCreate()">取消</button>
  16. <button mat-raised-button color="primary" (click)="confirmCreate()" [disabled]="!newSessionTitle.trim()">
  17. 创建
  18. </button>
  19. </div>
  20. </div>
  21. <mat-list class="session-items">
  22. <mat-list-item
  23. *ngFor="let session of sessions"
  24. [class.active]="session.id === activeSessionId"
  25. (click)="selectSession(session)">
  26. <div class="session-item">
  27. <mat-icon class="session-icon">chat_bubble</mat-icon>
  28. <div class="session-info">
  29. <div class="session-title">{{ session.title }}</div>
  30. <div class="session-id text-xs text-gray-500">{{ session.id }}</div>
  31. </div>
  32. </div>
  33. </mat-list-item>
  34. </mat-list>
  35. <div *ngIf="sessions.length === 0" class="empty-state">
  36. <mat-icon>forum</mat-icon>
  37. <p>暂无会话,点击上方按钮创建新会话</p>
  38. </div>
  39. </div>
  40. `,