diff --git a/frontend/src/components/BusStopEditor.vue b/frontend/src/components/BusStopEditor.vue
index 7ee781d..2fe87d5 100644
--- a/frontend/src/components/BusStopEditor.vue
+++ b/frontend/src/components/BusStopEditor.vue
@@ -12,9 +12,9 @@
@@ -79,7 +79,7 @@ const formData = ref({
name: '',
latitude: 8.4284, // Default (David)
longitude: -82.4309,
- stop_type: 'regular',
+ stop_type: 'REGULAR' as import('@/types').StopType,
has_shelter: false,
has_seating: false,
is_accessible: false,
diff --git a/frontend/src/types/index.ts b/frontend/src/types/index.ts
index 8c54206..8d12955 100644
--- a/frontend/src/types/index.ts
+++ b/frontend/src/types/index.ts
@@ -1,7 +1,7 @@
/** Type definitions for the SIBU transportation app */
export type RouteStatus = 'ACTIVE' | 'INACTIVE' | 'MAINTENANCE'
-export type StopType = 'terminal' | 'regular' | 'express_only'
+export type StopType = 'TERMINAL' | 'REGULAR' | 'EXPRESS_ONLY'
export type ScheduleType = 'weekday' | 'weekend' | 'holiday'
export interface Route {
diff --git a/frontend/src/views/AdminBusStops.vue b/frontend/src/views/AdminBusStops.vue
index 1b6ff8d..98d16b6 100644
--- a/frontend/src/views/AdminBusStops.vue
+++ b/frontend/src/views/AdminBusStops.vue
@@ -75,6 +75,9 @@ async function loadStops() {
function translateType(type: string) {
const types: Record = {
+ 'REGULAR': 'Regular',
+ 'TERMINAL': 'Terminal',
+ 'EXPRESS_ONLY': 'Solo Expreso',
'regular': 'Regular',
'terminal': 'Terminal',
'express_only': 'Solo Expreso'
diff --git a/frontend/src/views/AdminRoutes.vue b/frontend/src/views/AdminRoutes.vue
index 723f19b..924ed26 100644
--- a/frontend/src/views/AdminRoutes.vue
+++ b/frontend/src/views/AdminRoutes.vue
@@ -264,7 +264,7 @@ async function initRouteMap() {
name,
latitude: lat,
longitude: lng,
- stop_type: 'regular',
+ stop_type: 'REGULAR',
has_shelter: false,
has_seating: false,
is_accessible: true,
@@ -274,8 +274,9 @@ async function initRouteMap() {
allStops.value = await busStopsService.getAllBusStops()
// Add to current route
await addExistingStop(newStop.id)
- } catch (err) {
- alert('Error creando parada')
+ } catch (err: any) {
+ console.error("Error creating map stop:", err)
+ alert('Error creando parada: ' + (err.message || 'Error desconocido'))
}
}
})
diff --git a/frontend/test-enum.mjs b/frontend/test-enum.mjs
new file mode 100644
index 0000000..f82ba5c
--- /dev/null
+++ b/frontend/test-enum.mjs
@@ -0,0 +1,41 @@
+import { createClient } from '@supabase/supabase-js'
+
+const SUPABASE_URL = 'https://bjgixlugjzsccazdfmph.supabase.co'
+const SUPABASE_ANON_KEY = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6ImJqZ2l4bHVnanpzY2NhemRmbXBoIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NzIwNjQyMTAsImV4cCI6MjA4NzY0MDIxMH0.untLQoPi4yUr3cPnxo23wYSlg6xnNK0daKu9UHmFTp8'
+const sb = createClient(SUPABASE_URL, SUPABASE_ANON_KEY)
+
+async function test() {
+ await sb.auth.signInWithPassword({ email: 'admin@sibu.com', password: 'Admin123!' })
+
+ console.log("Testing REGULAR");
+ const { data: stopData, error: stopErr } = await sb.from('bus_stops').insert([{
+ name: 'test enum',
+ latitude: 0,
+ longitude: 0,
+ stop_type: 'REGULAR',
+ has_shelter: false,
+ has_seating: false,
+ is_accessible: true,
+ city: 'David'
+ }]).select()
+
+ console.log("REGULAR test:", stopErr ? stopErr.message : "Success")
+
+ if (!stopErr && stopData) {
+ await sb.from('bus_stops').delete().eq('id', stopData[0].id)
+ }
+
+ console.log("Testing regular");
+ const { error: err2 } = await sb.from('bus_stops').insert([{
+ name: 'test enum',
+ latitude: 0,
+ longitude: 0,
+ stop_type: 'regular',
+ has_shelter: false,
+ has_seating: false,
+ is_accessible: true,
+ city: 'David'
+ }]).select()
+ console.log("regular test:", err2 ? err2.message : "Success")
+}
+test()