Parcourir la source

Exported files for modularity

rigwild il y a 4 ans
Parent
commit
1cf679c67a

+ 1 - 0
src/App.vue

@@ -74,6 +74,7 @@
 </template>
 
 <script>
+import './style.css'
 import ResetAppButton from '@/components/ResetAppButton.vue'
 import Loader from '@/components/Loader.vue'
 import HostConfig from '@/components/HostConfig.vue'

+ 2 - 2
src/components/ExperimentsComponents/ExtractConfiguration.vue

@@ -11,7 +11,7 @@
             persistent-hint
             thumb-label="always"
             min="1"
-            max="25"
+            max="15"
           />
 
           <v-card-text class="px-0">Extracts per row (vertical)</v-card-text>
@@ -21,7 +21,7 @@
             persistent-hint
             thumb-label="always"
             min="1"
-            max="25"
+            max="15"
           />
 
           <v-btn @click="setConfig" :disabled="!isConfigNew">Confirm</v-btn>

+ 16 - 3
src/mixins/ExperimentBase.vue

@@ -1,8 +1,15 @@
+<template>
+  <div>
+    <slot></slot>
+  </div>
+</template>
+
 <script>
 import { mapGetters, mapActions } from 'vuex'
 import { API_ROUTES } from '@/functions'
 
 export default {
+  name: 'ExperimentBase',
   props: {
     sceneName: {
       type: String,
@@ -22,12 +29,12 @@ export default {
     ...mapGetters(['getHostURI', 'getExperimentProgress'])
   },
   methods: {
-    ...mapActions(['setExperimentProgress', 'sendMessage']),
+    ...mapActions(['setExperimentProgress', 'setExperimentDone', 'sendMessage']),
 
     // Load progress from store into local state
     loadProgress() {
       if (!this.experimentName || !this.sceneName)
-        console.warn('Could not load progress : experimentName and sceneName must be defined')
+        return console.warn('Could not load progress : experimentName and sceneName must be defined')
 
       const progress = this.getExperimentProgress({ experimentName: this.experimentName, sceneName: this.sceneName })
       Object.assign(this.$data, progress)
@@ -37,11 +44,17 @@ export default {
     // Save progress from local state into store
     saveProgress() {
       if (!this.experimentName || !this.sceneName)
-        console.warn('Could not load progress : experimentName and sceneName must be defined')
+        return console.warn('Could not save progress : experimentName and sceneName must be defined')
       this.setExperimentProgress({ experimentName: this.experimentName, sceneName: this.sceneName, data: this.$data })
       // console.log('Saved data from local state to store.', this.$data)
     },
 
+    async finishExperiment() {
+      this.setExperimentDone({ experimentName: this.experimentName, sceneName: this.sceneName, done: true })
+      this.$router.push(`/experiments/${this.experimentName}`)
+    },
+
+
     // Load qualities list from the API
     async getQualitiesList() {
       if (this.qualities) return

+ 9 - 1
src/mixins/ExperimentBaseExtracts.vue

@@ -1,10 +1,18 @@
+<template>
+  <div>
+    <slot></slot>
+  </div>
+</template>
+
 <script>
-import ExperimentBase from '@/mixins/ExperimentBase.vue'
+import './style.css'
+import ExperimentBase from '@/mixins/ExperimentBase'
 
 import { mapGetters } from 'vuex'
 import { API_ROUTES, findNearestUpper, findNearestLower } from '@/functions'
 
 export default {
+  name: 'ExperimentBaseExtracts',
   mixins: [ExperimentBase],
   data() {
     return {

+ 7 - 0
src/mixins/ExperimentBaseExtracts/style.css

@@ -0,0 +1,7 @@
+.img-extract-loader {
+  height: 100%;
+  width: 0px;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+}

+ 1 - 1
src/router/index.js

@@ -17,7 +17,7 @@ export default new Router({
       component: ExperimentsList
     },
     {
-      path: '/experiments/selectScene/:experimentName',
+      path: '/experiments/:experimentName',
       name: 'SelectExperimentScene',
       component: () => import('@/views/SelectExperimentScene.vue'),
       props: true

+ 7 - 0
src/style.css

@@ -0,0 +1,7 @@
+.height100 {
+  height: 100%;
+}
+
+.cursor {
+  cursor: pointer;
+}

+ 1 - 1
src/views/ExperimentsList.vue

@@ -61,7 +61,7 @@ export default {
     this.items = Experiments.map(expe => {
       const res = {
         name: expe.fullName,
-        link: `/experiments/selectScene/${expe.name}`
+        link: `/experiments/${expe.name}`
       }
       // Check cache has an entry for each scenes in this experiment
       if (this.progression[expe.name] && Object.keys(this.progression[expe.name]).every(y => this.scenesList.includes(y))) {