simpo-component-library 3.6.949 → 3.6.950

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -29,13 +29,22 @@ interface BookingRow {
29
29
  itemName: string;
30
30
  quantity: number;
31
31
  }[];
32
+ /** Not part of the GET /booking/group/my response - services live on the separate
33
+ * BookingDetail collection (FK'd via serviceLineIds, not denormalized onto BookingGroup), so
34
+ * this is filled in client-side after load() via a per-row GET .../lines call. */
35
+ services?: {
36
+ name: string;
37
+ durationMinutes: number;
38
+ price: number;
39
+ }[];
32
40
  videoCallLink?: string;
33
41
  totalCollectedAtBooking?: number;
34
42
  }
35
43
  /**
36
44
  * "My Bookings" - a customer's own booking history (Upcoming/Past), a detail view per booking,
37
- * and cancellation. The list endpoint already returns full BookingGroup records, so the detail
38
- * view never needs a second fetch - see BookingController's GET /booking/group/my.
45
+ * and cancellation. The list endpoint returns full BookingGroup records - enough for
46
+ * date/status/address/products - but services booked aren't on that record (see BookingRow.services
47
+ * above), so load() issues one extra GET .../lines call per row to fill them in.
39
48
  */
40
49
  export declare class MyBookingsComponent implements OnInit {
41
50
  private readonly restService;
@@ -58,10 +67,15 @@ export declare class MyBookingsComponent implements OnInit {
58
67
  load(): void;
59
68
  private isUpcoming;
60
69
  private splitBookings;
70
+ /** One booking history load, bounded to this customer's own bookings - a per-row call here is
71
+ * fine, unlike an unbounded/paginated list. Failures are swallowed per-row (falls back to no
72
+ * service names for that row) rather than blocking the whole page on one bad group. */
73
+ private loadServiceLines;
61
74
  get rows(): BookingRow[];
62
75
  get isEmpty(): boolean;
63
76
  setProfTab(tab: 'upcoming' | 'past'): void;
64
77
  productNames(b: BookingRow): string;
78
+ serviceNames(b: BookingRow): string;
65
79
  title(b: BookingRow): string;
66
80
  when(b: BookingRow): string;
67
81
  detail(b: BookingRow): string;
@@ -128,6 +128,7 @@ export declare class RestService implements OnDestroy {
128
128
  generatePaymentToken(groupId: string): Observable<Object>;
129
129
  completeBookingGroup(groupId: string): Observable<Object>;
130
130
  getMyBookings(businessId: string, userId: string): Observable<Object>;
131
+ getGroupLines(groupId: string): Observable<Object>;
131
132
  cancelBookingGroup(groupId: string, reason?: string): Observable<Object>;
132
133
  getCancellationPolicy(businessId: string): Observable<Object>;
133
134
  generateToken(bId: any, userId: any): Observable<Object>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "simpo-component-library",
3
- "version": "3.6.949",
3
+ "version": "3.6.950",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^17.2.0",
6
6
  "@angular/core": "^17.2.0",
Binary file