diff --git a/src/App.vue b/src/App.vue index 28049a9..9561639 100644 --- a/src/App.vue +++ b/src/App.vue @@ -87,6 +87,10 @@ html { margin: 0; background-color: #1e2341; color: white; + + @media screen and (max-width: 600px) { + font-size: calc(0.7vw + 0.7rem); + } } button { diff --git a/src/components/RoutesModal.vue b/src/components/RoutesModal.vue index 5f61b72..25f15f8 100644 --- a/src/components/RoutesModal.vue +++ b/src/components/RoutesModal.vue @@ -1,339 +1,424 @@ - - - - - + + + + + diff --git a/src/components/TableActions.vue b/src/components/TableActions.vue index 5344894..c221e9a 100644 --- a/src/components/TableActions.vue +++ b/src/components/TableActions.vue @@ -117,7 +117,7 @@ export default defineComponent({ : changeItem[propChange]; if (propChange == 'availability') value = getAvailabilityValue(changeItem[propChange] as Availability); - if (propChange == 'routes') value = this.getRouteNames(changeItem[propChange] as string); + if (propChange == 'routes') value = this.getRouteNames(changeItem[propChange] as string, true); itemChanges.push(`${(HeaderTypes as any)[propChange]}: ${value || '-'}`); } @@ -173,7 +173,7 @@ export default defineComponent({ return { ...v }; }); - const updateResData = (await this.store.updateSceneriesData(mappedChangeList)).data + const updateResData = (await this.store.updateSceneriesData(mappedChangeList)).data; this.store.changesResponse = updateResData; this.store.fetchSceneriesData(); @@ -207,7 +207,7 @@ export default defineComponent({ signalType: 'współczesna', controlType: 'SCS', SUP: false, - routes: 'Test_1EPB"', + routes: 'Test_1EPB:0:0', checkpoints: '', authors: '', availability: 'default', diff --git a/src/mixins/routesMixin.ts b/src/mixins/routesMixin.ts index ad40846..e21e1b8 100644 --- a/src/mixins/routesMixin.ts +++ b/src/mixins/routesMixin.ts @@ -1,22 +1,26 @@ -import { defineComponent } from 'vue'; -import { SceneryRowItem } from '../types/types'; - -export default defineComponent({ - methods: { - getRouteNames(routes: SceneryRowItem['routes']) { - return routes - .split(';') - .map((route) => { - // !Oc_2EPB - const props1 = route.split('_')[0]; - const props2 = route.split('_')[1]; - const isInternal = props1.startsWith('!'); - const name = isInternal ? props1.replace('!', '') : props1; - return `${isInternal ? '' + name + '' : name} (${props2[0]}/${props2[1]}/${ - props2[2] - }${props2[3] ? '/B' : ''})`; - }) - .join(', '); - }, - }, -}); +import { defineComponent } from 'vue'; +import { SceneryRowItem } from '../types/types'; + +export default defineComponent({ + methods: { + getRouteNames(routes: SceneryRowItem['routes'], showAdditional = false) { + return routes + .split(';') + .map((route) => { + // !Oc_2EPB + const [_, speed, length] = route.split(':'); + + const props1 = route.split('_')[0]; + const props2 = route.split('_')[1]; + const isInternal = props1.startsWith('!'); + const name = isInternal ? props1.replace('!', '') : props1; + return `${ + isInternal ? '' + name + '' : name + } (${props2[0]}/${props2[1]}/${props2[2]}${props2[3] == 'B' ? '/B' : ''}${ + speed && showAdditional ? '/' + speed : '' + }${length && showAdditional ? '/' + length : ''})`; + }) + .join(', '); + }, + }, +}); diff --git a/src/views/ManagerView.vue b/src/views/ManagerView.vue index 582f3fb..78e1399 100644 --- a/src/views/ManagerView.vue +++ b/src/views/ManagerView.vue @@ -19,7 +19,9 @@ URL - URL + URL {{ station[propName] ? 'POKAŻ' : 'DODAJ' }} @@ -240,10 +242,4 @@ td img { height: 1.45em; vertical-align: middle; } - -@media screen and (max-width: 550px) { - table { - font-size: 0.85em; - } -}