Jelajahi Sumber

RIFFMASTER: FRONTEND: add table form for list of riffs and displaying no riffs message if song does not have riffs

Kuba 3 tahun lalu
induk
melakukan
77001cb2ec
32 mengubah file dengan 30 tambahan dan 13 penghapusan
  1. 1 1
      Backend/Spring/.idea/workspace.xml
  2. TEMPAT SAMPAH
      Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/0.pack
  3. TEMPAT SAMPAH
      Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/10.pack
  4. TEMPAT SAMPAH
      Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/11.pack
  5. TEMPAT SAMPAH
      Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/12.pack
  6. TEMPAT SAMPAH
      Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/4.pack
  7. TEMPAT SAMPAH
      Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/5.pack
  8. TEMPAT SAMPAH
      Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/6.pack
  9. TEMPAT SAMPAH
      Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/7.pack
  10. TEMPAT SAMPAH
      Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/8.pack
  11. TEMPAT SAMPAH
      Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/9.pack
  12. TEMPAT SAMPAH
      Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/index.pack
  13. TEMPAT SAMPAH
      Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/index.pack.old
  14. 0 0
      Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/0c783f11a089be8d1f13e39ec6b191efb5cd5551bd684aca193e4c577da3ce3d.json
  15. 0 0
      Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/0cbc9673317007ed157cb2606456178197f2ed7bd97cd189f512ee4dd113c1fd.json
  16. 0 0
      Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/1b7e981b9e7cde58eb5d341fcc4a83e1c48cf31a25d21b21dfbd4956528c7503.json
  17. 0 0
      Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/5f37e416843b7085995df47b9d49f05f41aa556aeffd323d7c41dfe29f815f1d.json
  18. 0 0
      Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/63ee34cf553dfffc813a1bfea25f46343bd021d3a9299a8626ee52412b0eddd3.json
  19. 0 0
      Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/8f7a910fb5c1da9a6b0f6c01893bee7c245b44434616fa787b1a386aa79fd0ed.json
  20. 0 0
      Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/91ef3d863b5b6e43b7bc3a276cc275d4297e6b448e516f760a9fbf4dde7b013e.json
  21. 0 0
      Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/937b87194d337583f10941ca5be965b74a1d0276095554e865e9376bb6cea3be.json
  22. 0 0
      Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/a13b8575961e836170cfa58a67530495392513c4daebe5b5674331f03ccc3f65.json
  23. 0 0
      Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/a8ab579471e5a3f72db0af22c39f93bac9f3cb5b51e2f9a09ee84aa768158e4f.json
  24. 0 0
      Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/ab6163e0be60578e76dd2336a47472a46efd809a18a746ea09c9b64b9f9482e6.json
  25. 0 0
      Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/aeaa0ce7cb542f1c2c34f1c8665f6fe80072d42f1d353cfa503d3c7324825f5d.json
  26. 0 0
      Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/ca5a07a49a5a485e81c3cfb9bca665215183b247706b237f3786aa0b0c6e9923.json
  27. 0 0
      Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/e61002dbac233a52250e1ff497eb7ad55753ad34e7c61e0d8c9bd21405bb91af.json
  28. 0 0
      Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/e90216cc80ce6dca3ca048056877db63231b25450087b82764bfede823db8f9d.json
  29. 0 0
      Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/fd76281d58f33c66bf8241ca67aadf879eca9a14babd96e0c25cf2ae5b52eaf7.json
  30. 1 1
      Frontend/RiffMasterFront/.idea/workspace.xml
  31. 4 0
      Frontend/RiffMasterFront/src/app/app.module.ts
  32. 24 11
      Frontend/RiffMasterFront/src/app/main-page/main-page.component.html

+ 1 - 1
Backend/Spring/.idea/workspace.xml

@@ -11,8 +11,8 @@
   <component name="ChangeListManager">
     <list default="true" id="8315de53-8c15-472c-a710-45938463dc02" name="Changes" comment="RIFFMASTER: add frontend files">
       <change beforePath="$PROJECT_DIR$/../../Frontend/RiffMasterFront/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/../../Frontend/RiffMasterFront/.idea/workspace.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/../../Frontend/RiffMasterFront/src/app/app.module.ts" beforeDir="false" afterPath="$PROJECT_DIR$/../../Frontend/RiffMasterFront/src/app/app.module.ts" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/../../Frontend/RiffMasterFront/src/app/main-page/main-page.component.html" beforeDir="false" afterPath="$PROJECT_DIR$/../../Frontend/RiffMasterFront/src/app/main-page/main-page.component.html" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/../../Frontend/RiffMasterFront/src/app/main-page/main-page.component.ts" beforeDir="false" afterPath="$PROJECT_DIR$/../../Frontend/RiffMasterFront/src/app/main-page/main-page.component.ts" afterDir="false" />
     </list>
     <option name="SHOW_DIALOG" value="false" />
     <option name="HIGHLIGHT_CONFLICTS" value="true" />

TEMPAT SAMPAH
Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/0.pack


TEMPAT SAMPAH
Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/10.pack


TEMPAT SAMPAH
Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/11.pack


TEMPAT SAMPAH
Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/12.pack


TEMPAT SAMPAH
Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/4.pack


TEMPAT SAMPAH
Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/5.pack


TEMPAT SAMPAH
Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/6.pack


TEMPAT SAMPAH
Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/7.pack


TEMPAT SAMPAH
Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/8.pack


TEMPAT SAMPAH
Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/9.pack


TEMPAT SAMPAH
Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/index.pack


TEMPAT SAMPAH
Frontend/RiffMasterFront/.angular/cache/16.0.4/angular-webpack/9163ed2c587ff4665fb17ea4ebc8750a69df1e73/index.pack.old


File diff ditekan karena terlalu besar
+ 0 - 0
Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/0c783f11a089be8d1f13e39ec6b191efb5cd5551bd684aca193e4c577da3ce3d.json


File diff ditekan karena terlalu besar
+ 0 - 0
Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/0cbc9673317007ed157cb2606456178197f2ed7bd97cd189f512ee4dd113c1fd.json


File diff ditekan karena terlalu besar
+ 0 - 0
Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/1b7e981b9e7cde58eb5d341fcc4a83e1c48cf31a25d21b21dfbd4956528c7503.json


File diff ditekan karena terlalu besar
+ 0 - 0
Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/5f37e416843b7085995df47b9d49f05f41aa556aeffd323d7c41dfe29f815f1d.json


File diff ditekan karena terlalu besar
+ 0 - 0
Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/63ee34cf553dfffc813a1bfea25f46343bd021d3a9299a8626ee52412b0eddd3.json


File diff ditekan karena terlalu besar
+ 0 - 0
Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/8f7a910fb5c1da9a6b0f6c01893bee7c245b44434616fa787b1a386aa79fd0ed.json


File diff ditekan karena terlalu besar
+ 0 - 0
Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/91ef3d863b5b6e43b7bc3a276cc275d4297e6b448e516f760a9fbf4dde7b013e.json


File diff ditekan karena terlalu besar
+ 0 - 0
Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/937b87194d337583f10941ca5be965b74a1d0276095554e865e9376bb6cea3be.json


File diff ditekan karena terlalu besar
+ 0 - 0
Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/a13b8575961e836170cfa58a67530495392513c4daebe5b5674331f03ccc3f65.json


File diff ditekan karena terlalu besar
+ 0 - 0
Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/a8ab579471e5a3f72db0af22c39f93bac9f3cb5b51e2f9a09ee84aa768158e4f.json


File diff ditekan karena terlalu besar
+ 0 - 0
Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/ab6163e0be60578e76dd2336a47472a46efd809a18a746ea09c9b64b9f9482e6.json


File diff ditekan karena terlalu besar
+ 0 - 0
Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/aeaa0ce7cb542f1c2c34f1c8665f6fe80072d42f1d353cfa503d3c7324825f5d.json


File diff ditekan karena terlalu besar
+ 0 - 0
Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/ca5a07a49a5a485e81c3cfb9bca665215183b247706b237f3786aa0b0c6e9923.json


File diff ditekan karena terlalu besar
+ 0 - 0
Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/e61002dbac233a52250e1ff497eb7ad55753ad34e7c61e0d8c9bd21405bb91af.json


File diff ditekan karena terlalu besar
+ 0 - 0
Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/e90216cc80ce6dca3ca048056877db63231b25450087b82764bfede823db8f9d.json


File diff ditekan karena terlalu besar
+ 0 - 0
Frontend/RiffMasterFront/.angular/cache/16.0.4/babel-webpack/fd76281d58f33c66bf8241ca67aadf879eca9a14babd96e0c25cf2ae5b52eaf7.json


+ 1 - 1
Frontend/RiffMasterFront/.idea/workspace.xml

@@ -97,7 +97,7 @@
       <workItem from="1686820564623" duration="521000" />
       <workItem from="1686836939723" duration="5206000" />
       <workItem from="1686898660229" duration="4682000" />
-      <workItem from="1686909264196" duration="2289000" />
+      <workItem from="1686909264196" duration="3087000" />
     </task>
     <task id="LOCAL-00001" summary="RIFFMASTER: add frontend project">
       <created>1685976235580</created>

+ 4 - 0
Frontend/RiffMasterFront/src/app/app.module.ts

@@ -24,6 +24,9 @@ import { HttpClientModule } from '@angular/common/http';
 import { MatRadioModule } from '@angular/material/radio';
 import { MatRadioChange } from '@angular/material/radio';
 
+import { MatTableModule } from '@angular/material/table';
+
+
 
 
 @NgModule({
@@ -49,6 +52,7 @@ import { MatRadioChange } from '@angular/material/radio';
     BrowserAnimationsModule,
 
     MatRadioModule,
+    MatTableModule,
   
     DatePipe,
   ],

+ 24 - 11
Frontend/RiffMasterFront/src/app/main-page/main-page.component.html

@@ -84,7 +84,7 @@
 
 </div>
 
-<div class="riff-list-container">
+<div class="riff-list-container" *ngIf="selectedSong?.riffs && selectedSong.riffs.length > 0; else noRiffsMessage">
   <mat-card class="riff-list-card">
 
     <mat-card-header>
@@ -92,17 +92,30 @@
     </mat-card-header>
 
     <mat-card-content>
-      <div class="riff-list">
-        <mat-list>
-          <mat-list-item *ngFor="let riff of selectedSong?.riffs">
-            <span mat-line>{{ riff.name }}</span>
-            <span mat-line class="riff-details">
-              Start: {{ riff.startMs }} ms | End: {{ riff.endMs }} ms
-            </span>
-          </mat-list-item>
-        </mat-list>
-      </div>
+      <table mat-table [dataSource]="selectedSong?.riffs || []">
+
+        <ng-container matColumnDef="name">
+          <th mat-header-cell *matHeaderCellDef>Riff Name</th>
+          <td mat-cell *matCellDef="let riff">{{ riff.name }}</td>
+        </ng-container>
+
+        <ng-container matColumnDef="startMs">
+          <th mat-header-cell *matHeaderCellDef>Start (ms)</th>
+          <td mat-cell *matCellDef="let riff">{{ riff.startMs }}</td>
+        </ng-container>
+
+        <ng-container matColumnDef="endMs">
+          <th mat-header-cell *matHeaderCellDef>End (ms)</th>
+          <td mat-cell *matCellDef="let riff">{{ riff.endMs }}</td>
+        </ng-container>
+
+        <tr mat-header-row *matHeaderRowDef="['name', 'startMs', 'endMs']"></tr>
+        <tr mat-row *matRowDef="let row; columns: ['name', 'startMs', 'endMs']"></tr>
+      </table>
     </mat-card-content>
 
   </mat-card>
 </div>
+<ng-template #noRiffsMessage>
+  <p>No riffs found for this song.</p>
+</ng-template>

Beberapa file tidak ditampilkan karena terlalu banyak file yang berubah dalam diff ini