From 69094422facb71e722d8fc852dcb5360aa248ed7 Mon Sep 17 00:00:00 2001
From: Hugo <hugo.cubino@estudiantes.uva.es>
Date: Fri, 27 Dec 2024 13:24:22 +0100
Subject: [PATCH] Falta import de index y el mock

---
 angular/RestClient/src/app/core/models/index.ts             | 2 ++
 .../app/core/services/api/hotels/hotel-client.service.ts    | 2 --
 .../src/app/core/services/api/users/user-client.service.ts  | 6 +-----
 .../src/app/core/services/session/session.service.ts        | 3 ++-
 .../bookings/[DEL] booking-list/booking-list.component.ts   | 2 +-
 .../src/app/features/bookings/booking/booking.component.ts  | 3 ++-
 .../user-booking-list/user-booking-list.component.ts        | 3 ++-
 .../app/features/hotels/hotel-list/hotel-list.component.ts  | 2 +-
 .../hotels/hotel-register/hotel-register.component.ts       | 3 ++-
 .../src/app/features/hotels/types/Room.interface.ts         | 2 +-
 angular/RestClient/src/app/features/users/admin.routes.ts   | 2 +-
 .../src/app/features/users/main-page/main-page.component.ts | 3 +--
 .../src/app/features/users/types/User.interface.ts          | 5 +++--
 .../src/app/features/users/user-form/user-form.component.ts | 3 ++-
 .../src/app/shared/navigation/navigation.component.ts       | 3 ++-
 15 files changed, 23 insertions(+), 21 deletions(-)
 create mode 100644 angular/RestClient/src/app/core/models/index.ts

diff --git a/angular/RestClient/src/app/core/models/index.ts b/angular/RestClient/src/app/core/models/index.ts
new file mode 100644
index 0000000..06f0d8d
--- /dev/null
+++ b/angular/RestClient/src/app/core/models/index.ts
@@ -0,0 +1,2 @@
+export * from "./Route.interface"
+export * from "./Session.interface"
\ No newline at end of file
diff --git a/angular/RestClient/src/app/core/services/api/hotels/hotel-client.service.ts b/angular/RestClient/src/app/core/services/api/hotels/hotel-client.service.ts
index e71cb6d..6713677 100644
--- a/angular/RestClient/src/app/core/services/api/hotels/hotel-client.service.ts
+++ b/angular/RestClient/src/app/core/services/api/hotels/hotel-client.service.ts
@@ -5,8 +5,6 @@ import { SessionService } from '../../session/session.service';
 import { catchError, map, switchMap, throwError } from 'rxjs';
 import { Hotel, Room } from '@features/hotels';
 
-let hotel:Hotel;
-let rooms:Room;
 
 @Injectable({
   providedIn: 'root',
diff --git a/angular/RestClient/src/app/core/services/api/users/user-client.service.ts b/angular/RestClient/src/app/core/services/api/users/user-client.service.ts
index 37b34a8..a29e7de 100644
--- a/angular/RestClient/src/app/core/services/api/users/user-client.service.ts
+++ b/angular/RestClient/src/app/core/services/api/users/user-client.service.ts
@@ -4,12 +4,8 @@ import { environment } from '../../../../../environments/environment';
 import { SessionService } from '../../session/session.service';
 import { tap } from 'rxjs';
 import { Client, ClientState, User } from '@features/users';
-import { Session } from 'inspector';
+import { Session } from '@core/models';
 
-let user:User;
-let session:Session;
-let client:Client;
-let userstate:ClientState;
 
 @Injectable({
   providedIn: 'root',
diff --git a/angular/RestClient/src/app/core/services/session/session.service.ts b/angular/RestClient/src/app/core/services/session/session.service.ts
index 10e7ae8..cda0905 100644
--- a/angular/RestClient/src/app/core/services/session/session.service.ts
+++ b/angular/RestClient/src/app/core/services/session/session.service.ts
@@ -1,11 +1,12 @@
 import { Injectable } from '@angular/core';
 import { LocalStorageService } from '../storage/local-storage.service';
-import { PersistenToken, Session, UserRol } from '../../models';
+import { Session, PersistenToken } from '../../models/Session.interface';
 import { BehaviorSubject, Observable, throwError } from 'rxjs';
 import { catchError, map, tap } from 'rxjs/operators';
 import { jwtDecode } from 'jwt-decode';
 import { AuthClientService } from '../api/auth/auth-client.service';
 import { Router } from '@angular/router';
+import { UserRol } from '@features/users/types/User.interface';
 
 interface JWTDecoded {
   id: number;
diff --git a/angular/RestClient/src/app/features/bookings/[DEL] booking-list/booking-list.component.ts b/angular/RestClient/src/app/features/bookings/[DEL] booking-list/booking-list.component.ts
index 545cfce..e7e081a 100644
--- a/angular/RestClient/src/app/features/bookings/[DEL] booking-list/booking-list.component.ts	
+++ b/angular/RestClient/src/app/features/bookings/[DEL] booking-list/booking-list.component.ts	
@@ -7,7 +7,7 @@ import {
 import { FormsModule } from '@angular/forms';
 import { MatInputModule } from '@angular/material/input';
 import { MatSelectModule } from '@angular/material/select';
-import { Hotel, Room, RoomType, roomTypeArray } from '../../../core/models';
+import {Hotel, Room, RoomType, roomTypeArray} from '@features/hotels'
 import { Router } from '@angular/router';
 import { MatCardModule } from '@angular/material/card';
 import { MatChipsModule } from '@angular/material/chips';
diff --git a/angular/RestClient/src/app/features/bookings/booking/booking.component.ts b/angular/RestClient/src/app/features/bookings/booking/booking.component.ts
index d8c08a9..26a80e2 100644
--- a/angular/RestClient/src/app/features/bookings/booking/booking.component.ts
+++ b/angular/RestClient/src/app/features/bookings/booking/booking.component.ts
@@ -7,7 +7,8 @@ import {
 } from '@angular/forms';
 
 import { ActivatedRoute, Router } from '@angular/router';
-import { Booking, User } from '../../../core/models';
+import { Booking} from '@features/bookings';
+import { User } from '@features/users';
 import { LocalStorageService } from '../../../core/services/storage/local-storage.service';
 import { BookingClientService } from '../../../core/services/api/bookings/booking-client.service';
 import { UserClientService } from '../../../core/services/api/users/user-client.service';
diff --git a/angular/RestClient/src/app/features/bookings/user-booking-list/user-booking-list.component.ts b/angular/RestClient/src/app/features/bookings/user-booking-list/user-booking-list.component.ts
index c3059d8..120a94b 100644
--- a/angular/RestClient/src/app/features/bookings/user-booking-list/user-booking-list.component.ts
+++ b/angular/RestClient/src/app/features/bookings/user-booking-list/user-booking-list.component.ts
@@ -1,6 +1,7 @@
 import { Component } from '@angular/core';
 
-import { Booking, User } from '../../../core/models';
+import { Booking} from '@features/bookings';
+import { User } from '@features/users';
 import { ActivatedRoute, RouterModule } from '@angular/router';
 import { CommonModule } from '@angular/common';
 import { FormsModule } from '@angular/forms';
diff --git a/angular/RestClient/src/app/features/hotels/hotel-list/hotel-list.component.ts b/angular/RestClient/src/app/features/hotels/hotel-list/hotel-list.component.ts
index 9ec062a..69eefe9 100644
--- a/angular/RestClient/src/app/features/hotels/hotel-list/hotel-list.component.ts
+++ b/angular/RestClient/src/app/features/hotels/hotel-list/hotel-list.component.ts
@@ -1,6 +1,6 @@
 import { Component, NgModule } from '@angular/core';
 import { RouterModule, Router, ActivatedRoute, Data } from '@angular/router';
-import { Hotel, Room, RoomType, roomTypeArray } from '../../../core/models';
+import { Hotel, Room, RoomType, roomTypeArray } from '@features/hotels';
 import {
   MatAccordion,
   MatExpansionPanel,
diff --git a/angular/RestClient/src/app/features/hotels/hotel-register/hotel-register.component.ts b/angular/RestClient/src/app/features/hotels/hotel-register/hotel-register.component.ts
index 5986190..66714b7 100644
--- a/angular/RestClient/src/app/features/hotels/hotel-register/hotel-register.component.ts
+++ b/angular/RestClient/src/app/features/hotels/hotel-register/hotel-register.component.ts
@@ -13,7 +13,7 @@ import { MatFormFieldModule } from '@angular/material/form-field';
 import { MatSelectModule } from '@angular/material/select';
 import { MatSlideToggleModule } from '@angular/material/slide-toggle';
 import { CommonModule } from '@angular/common';
-import { Address, Hotel, Room } from '../../../core/models';
+import { Address, Hotel, Room } from '@features/hotels';
 import { ActivatedRoute, Router } from '@angular/router';
 import { HotelClientService } from '../../../core/services/api/hotels/hotel-client.service';
 import { MatIconModule } from '@angular/material/icon';
@@ -35,6 +35,7 @@ const emptyHotel: Hotel = {
     postCode: '',
     streetName: '',
   },
+  managerId: 0
 };
 
 @Component({
diff --git a/angular/RestClient/src/app/features/hotels/types/Room.interface.ts b/angular/RestClient/src/app/features/hotels/types/Room.interface.ts
index 76186dd..987b3bc 100644
--- a/angular/RestClient/src/app/features/hotels/types/Room.interface.ts
+++ b/angular/RestClient/src/app/features/hotels/types/Room.interface.ts
@@ -1,5 +1,5 @@
 export const roomTypeArray = ['SINGLE', 'DOUBLE', 'SUITE'] as const;
-export type RoomType = typeof roomTypeArray;
+export type RoomType = 'SINGLE' | 'DOUBLE' | 'SUITE';
 
 export interface Room {
   id: number;
diff --git a/angular/RestClient/src/app/features/users/admin.routes.ts b/angular/RestClient/src/app/features/users/admin.routes.ts
index fdd9b4a..26ec328 100644
--- a/angular/RestClient/src/app/features/users/admin.routes.ts
+++ b/angular/RestClient/src/app/features/users/admin.routes.ts
@@ -1,4 +1,4 @@
-import { AppRoute } from '@core/models';
+import { AppRoute } from '@core/models/Route.interface';
 import { MainPageComponent } from 'app/features/users/main-page/main-page.component';
 import { UserFormRoute } from 'app/features/users/types/UserFormData';
 import { UserFormComponent } from 'app/features/users/user-form/user-form.component';
diff --git a/angular/RestClient/src/app/features/users/main-page/main-page.component.ts b/angular/RestClient/src/app/features/users/main-page/main-page.component.ts
index aaeee74..6434114 100644
--- a/angular/RestClient/src/app/features/users/main-page/main-page.component.ts
+++ b/angular/RestClient/src/app/features/users/main-page/main-page.component.ts
@@ -1,10 +1,9 @@
 import { Component, OnInit, ViewChild } from '@angular/core';
-import { Client, User, UserStateFilter } from '../../../core/models';
+import { Client, User, UserStateFilter } from '@features/users';
 import { FormsModule } from '@angular/forms';
 import { CommonModule } from '@angular/common';
 import { Router, RouterModule } from '@angular/router';
 import { UserClientService } from '../../../core/services/api/users/user-client.service';
-import { users } from '../../../../mocks/users'; // Renombrado para claridad
 import { MatTableDataSource, MatTableModule } from '@angular/material/table';
 import { MatPaginator, MatPaginatorModule } from '@angular/material/paginator';
 import { MatCardModule } from '@angular/material/card';
diff --git a/angular/RestClient/src/app/features/users/types/User.interface.ts b/angular/RestClient/src/app/features/users/types/User.interface.ts
index f2eb354..b3b6352 100644
--- a/angular/RestClient/src/app/features/users/types/User.interface.ts
+++ b/angular/RestClient/src/app/features/users/types/User.interface.ts
@@ -8,8 +8,9 @@ export interface User {
   rol: UserRol;
 }
 
-export const UserRolesArray = ['CLIENT', 'HOTEL_ADMIN', 'ADMIN'] as const;
 export type UserRol = 'CLIENT' | 'HOTEL_ADMIN' | 'ADMIN';
+export const UserRolesArray: UserRol[] = ['CLIENT', 'HOTEL_ADMIN', 'ADMIN'];
+
 
 export interface Client extends User {
   status: ClientState;
@@ -27,4 +28,4 @@ export const ClientStateArray = [
   'WITH_ACTIVE_BOOKINGS',
   'WITH_INACTIVE_BOOKINGS',
 ] as const;
-export type ClientState = typeof ClientStateArray;
+export type ClientState = 'NO_BOOKINGS' | 'WITH_ACTIVE_BOOKINGS' |  'WITH_INACTIVE_BOOKINGS';
diff --git a/angular/RestClient/src/app/features/users/user-form/user-form.component.ts b/angular/RestClient/src/app/features/users/user-form/user-form.component.ts
index 8be9234..e3b6e09 100644
--- a/angular/RestClient/src/app/features/users/user-form/user-form.component.ts
+++ b/angular/RestClient/src/app/features/users/user-form/user-form.component.ts
@@ -13,7 +13,8 @@ import { MatInputModule } from '@angular/material/input';
 import { MatFormFieldModule } from '@angular/material/form-field';
 import { MatSlideToggleModule } from '@angular/material/slide-toggle';
 import { SessionService } from '../../../core/services/session/session.service';
-import { Session, UserRol, UserRolesArray } from '../../../core/models';
+import { Session } from '@core/models';
+import { UserRol, UserRolesArray} from '@features/users';
 import { MatSelectModule } from '@angular/material/select';
 import { Observable } from 'rxjs';
 import {
diff --git a/angular/RestClient/src/app/shared/navigation/navigation.component.ts b/angular/RestClient/src/app/shared/navigation/navigation.component.ts
index 12f4164..a141bba 100644
--- a/angular/RestClient/src/app/shared/navigation/navigation.component.ts
+++ b/angular/RestClient/src/app/shared/navigation/navigation.component.ts
@@ -3,7 +3,8 @@ import { RouterModule } from '@angular/router';
 import { MatButtonModule } from '@angular/material/button';
 import { MatMenuModule, MatMenuTrigger } from '@angular/material/menu';
 import { MatIconModule } from '@angular/material/icon';
-import { Session, UserRol } from '@core/models';
+import { Session } from '@core/models/Session.interface';
+import { UserRol } from '@features/users';
 import { SessionService } from '@core/services';
 
 var comp_id = 0;
-- 
GitLab