@sedoo/unidoo 0.0.69 → 0.0.73

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sedoo/unidoo",
3
- "version": "0.0.69",
3
+ "version": "0.0.73",
4
4
  "private": false,
5
5
  "scripts": {
6
6
  "build": "vue-cli-service build --target lib --name unidoo src/plugin.js",
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <v-col justify="center" style="display: flex; height : 100%">
2
+ <v-col justify="center" style="display: flex; height: inherit">
3
3
  <v-row justify="center" style="height : 100%" >
4
4
 
5
5
  <img
@@ -5,20 +5,20 @@
5
5
  <span label>{{label}} : </span>
6
6
 
7
7
  <span line v-if="options && options.length > 0">
8
- <span v-for="key in options"
9
- value
10
- :key="key"
11
- :class="'level ' + ((availableOptions.includes(key)) ? 'clickable-level ' : 'disabled-level ') + focus(key)"
12
- @click="emitInput(key, (availableOptions.includes(key)))"
13
- >{{key}}</span>
8
+ <span v-for="item in options"
9
+ :key="item.value"
10
+ :title="item.legend"
11
+ :class="'level ' + ((availableOptions.includes(item.value)) ? 'clickable-level ' : 'disabled-level ') + focus(item.value)"
12
+ @click="emitInput(item.value, (availableOptions.includes(item.value)))"
13
+ >{{item.value}}</span>
14
14
  </span>
15
15
  <span line v-else>
16
- <span v-for="key in availableOptions"
17
- value
18
- :key="key"
19
- :class="'level ' + 'clickable-level ' + focus(key)"
20
- @click="$emit('input', key)"
21
- >{{key}}</span>
16
+ <span v-for="item in availableOptions"
17
+ :key="item.value"
18
+ :title="item.legend"
19
+ :class="'level ' + 'clickable-level ' + focus(item.value)"
20
+ @click="$emit('input', item.value)"
21
+ >{{item.value}}</span>
22
22
  </span>
23
23
 
24
24
  </div>
@@ -145,7 +145,8 @@ export default {
145
145
  curLevels.forEach(l => {
146
146
  if (this.levels[l.name]) {
147
147
  if (!this.levels[l.name].values) this.levels[l.name].values = [];
148
- this.pushIfNotExist(this.levels[l.name].values, l.value);
148
+ this.pushIfObjectNotExist(this.levels[l.name].values, { value: l.value, legend: this.getLegend(l.value) });
149
+ // this.pushIfNotExist(this.levels[l.name].values, l.value);
149
150
  }
150
151
 
151
152
  // compute id with options combination
@@ -176,6 +177,17 @@ export default {
176
177
  }
177
178
  },
178
179
 
180
+ getLegend(value){
181
+ if(value && this.data && this.data.legend){
182
+ const legend = this.data.legend.find(el => (el.code && el.code.toUpperCase() === value.toUpperCase()));
183
+ if(legend) {
184
+ return legend.label;
185
+ } else {
186
+ return null;
187
+ }
188
+ }
189
+ },
190
+
179
191
  mergeDeep(target, source) {
180
192
  const isObject = (obj) => obj && typeof obj === 'object';
181
193
 
@@ -249,6 +261,13 @@ export default {
249
261
  }
250
262
  },
251
263
 
264
+ pushIfObjectNotExist(array, element) {
265
+ if (array && !array.some(e => e.value === element.value)) {
266
+ array.push(element);
267
+ }
268
+ },
269
+
270
+
252
271
  sort(array) {
253
272
  if (array) {
254
273
  if (array.length > 1) {
@@ -88,14 +88,23 @@
88
88
  <v-divider style="order: 3;"></v-divider>
89
89
 
90
90
  <v-row player-part :style="{ order: ((playerBarTop) ? 4 : 2) }">
91
-
91
+
92
92
  <v-list-item player-layout-displayer v-if="clickableFrame" :ripple="false" @click="playOrStopFrame">
93
-
94
- <slot name="displayer"></slot>
93
+ <div viewer-container>
94
+ <div viewer-slot-container>
95
+ <slot name="displayer"></slot>
96
+ </div>
97
+ </div>
95
98
 
96
99
  </v-list-item>
97
100
 
98
- <slot v-else player-layout-displayer name="displayer"></slot>
101
+ <div v-else player-layout-displayer >
102
+ <div viewer-container>
103
+ <div viewer-slot-container>
104
+ <slot name="displayer"></slot>
105
+ </div>
106
+ </div>
107
+ </div>
99
108
 
100
109
  </v-row>
101
110
 
@@ -146,7 +155,7 @@ export default {
146
155
  },
147
156
 
148
157
  subBodyStyle(){
149
- const vh = (this.isZoomed) ? '60vh' : '40vh';
158
+ const vh = (this.isZoomed) ? '65vh' : '40vh';
150
159
  return { gridTemplateRows: ((this.playerBarTop) ? '10px 140px 10px ' + vh + ' 10px' : '10px ' + vh + ' 10px 140px 10px')};
151
160
  }
152
161
 
@@ -504,6 +513,25 @@ export default {
504
513
  height: 100%;
505
514
  }
506
515
 
516
+ [player-layout] [viewer-container] {
517
+ display: flex;
518
+ height: inherit;
519
+ width: 100%;
520
+ overflow: auto;
521
+ }
522
+
523
+ [player-layout] [viewer-container] [viewer-slot-container] {
524
+ display: flex;
525
+ justify-content: center;
526
+ height: 100%;
527
+ width: 100%;
528
+ margin:auto;
529
+ }
530
+
531
+ [player-layout].zoomed [viewer-container] [viewer-slot-container] {
532
+ height: fit-content;
533
+ }
534
+
507
535
  [buttons] {
508
536
  display: flex;
509
537
  align-items: baseline;
@@ -551,7 +579,8 @@ export default {
551
579
  min-height: 60vh;
552
580
  }
553
581
  [player-layout].zoomed [player-part] [player-layout-displayer] {
554
- height : inherit;
582
+ padding: 0;
583
+ height: 100%;
555
584
  }
556
585
 
557
586
  @media screen and (max-width: 890px) {
@@ -578,7 +607,7 @@ export default {
578
607
  </style>
579
608
  <style>
580
609
  [player-layout] .v-slider__tick-label {
581
- font-size: 0.8em;
610
+ font-size: 0.65em;
582
611
  }
583
612
 
584
613
  [player-layout] .v-slider__tick {