diff --git a/src/App.vue b/src/App.vue
index 989fbc9..2c90c22 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -34,7 +34,7 @@ export default defineComponent({
color: $textColor;
font-size: 1em;
- padding: 1em 0.5em;
+ padding: 0;
@media screen and (max-width: $breakpointMd) {
font-size: calc(0.7rem + 0.75vw);
diff --git a/src/components/app/MainContainer.vue b/src/components/app/MainContainer.vue
index 7f27d10..4f91a26 100644
--- a/src/components/app/MainContainer.vue
+++ b/src/components/app/MainContainer.vue
@@ -8,11 +8,11 @@
diff --git a/src/components/tabs/StockGeneratorTab.vue b/src/components/tabs/StockGeneratorTab.vue
index a843b9b..d544fee 100644
--- a/src/components/tabs/StockGeneratorTab.vue
+++ b/src/components/tabs/StockGeneratorTab.vue
@@ -28,6 +28,12 @@
+
+
+
+
@@ -105,7 +111,6 @@ import warningsMixin from '../../mixins/warningsMixin';
export default defineComponent({
name: 'stock-generator',
-
mixins: [stockMixin, warningsMixin],
data() {
@@ -121,6 +126,8 @@ export default defineComponent({
maxLength: 650,
maxCarCount: 50,
+ isCarGroupingEnabled: false,
+
store: useStore(),
};
},
@@ -163,6 +170,15 @@ export default defineComponent({
this.excludedCarTypes.length = 0;
},
+ // WIP
+ groupStock(stockList: IStock[]) {
+ if (!this.isCarGroupingEnabled) return false;
+
+ stockList.sort((s1, s2) => {
+ return (s1.constructionType + s1.cargo?.id).localeCompare(s2.constructionType + s2.cargo?.id);
+ });
+ },
+
generateStock(empty = false) {
const generatedChosenStockList = this.chosenCargoTypes.reduce(
(acc, type) => {
@@ -237,6 +253,10 @@ export default defineComponent({
}
}
+ const bestStockList = bestGeneration.stockList;
+
+ this.groupStock(bestStockList);
+
this.store.stockList = bestGeneration.stockList;
this.store.stockSectionMode = 'stock-list';
},
@@ -283,6 +303,11 @@ export default defineComponent({
@import '../../styles/global.scss';
@import '../../styles/tab.scss';
+h2 {
+ margin-top: 0;
+ margin-bottom: 0.5em;
+}
+
.generator_cargo,
.generator_vehicles {
display: grid;
@@ -323,6 +348,12 @@ export default defineComponent({
gap: 1em;
}
+.generator_options {
+ display: flex;
+ flex-direction: column;
+ gap: 0.5em;
+}
+
.generator_warning {
background-color: $accentColor;
padding: 0.5em;
diff --git a/src/components/tabs/StockListTab.vue b/src/components/tabs/StockListTab.vue
index 56d32f0..dbe6ad9 100644
--- a/src/components/tabs/StockListTab.vue
+++ b/src/components/tabs/StockListTab.vue
@@ -33,27 +33,17 @@
-
- {{ $t('stocklist.vehicle-no') }}
- {{ store.chosenStockListIndex + 1 }}
-
-
-
-
- {{ $t('stocklist.no-vehicle-chosen') }}
-
-
-
-
+
-
+
@@ -122,7 +110,7 @@
{{ $t('stocklist.list-empty') }}
-
+
input {
- position: absolute;
- clip: rect(1px, 1px, 1px, 1px);
- padding: 0;
- border: 0;
- height: 1px;
- width: 1px;
- overflow: hidden;
- }
-
- label {
- padding: 0.25em 0.5em;
- border-radius: 0.25em;
- background-color: #222;
- color: #aaa;
- cursor: pointer;
-
- text-transform: uppercase;
- transition: color 200ms;
-
- &::before {
- content: '\2716';
- }
- }
-
- label[data-checked='true'] {
- color: palegreen;
-
- &::before {
- content: '\2714';
- }
- }
}
.real-stock-info {
diff --git a/src/styles/global.scss b/src/styles/global.scss
index 89e1d67..4e42f56 100644
--- a/src/styles/global.scss
+++ b/src/styles/global.scss
@@ -3,7 +3,7 @@ $breakpointSm: 550px;
$bgColor: #2b3552;
$textColor: #fff;
-$secondaryColor: #222;
+$secondaryColor: #1b1b1b;
$accentColor: #e4c428;
@font-face {
@@ -118,7 +118,7 @@ button {
padding: 0.4em 0.75em;
outline: none;
- background-color: #222;
+ background-color: $secondaryColor;
border-radius: 8px;
font-weight: bold;
@@ -227,6 +227,13 @@ ul {
}
}
+hr {
+ height: 3px;
+ background-color: white;
+ outline: none;
+ margin: 0;
+}
+
.g-card {
position: fixed;
top: 1em;
diff --git a/src/styles/tab.scss b/src/styles/tab.scss
index 2a3a296..ddbec16 100644
--- a/src/styles/tab.scss
+++ b/src/styles/tab.scss
@@ -1,4 +1,4 @@
-@import "./global.scss";
+@import './global.scss';
.tab {
height: 100%;
@@ -58,13 +58,6 @@
}
}
-hr {
- height: 3px;
- background-color: white;
- outline: none;
- margin: 0;
-}
-
@media only screen and (max-width: 470px) {
.tab_attributes {
label {
diff --git a/src/views/AppContainerView.vue b/src/views/AppContainerView.vue
index af69fa6..c17bbb5 100644
--- a/src/views/AppContainerView.vue
+++ b/src/views/AppContainerView.vue
@@ -6,11 +6,11 @@