@mixd-id/web-scaffold 0.1.230406395 → 0.1.230406397

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,7 +1,7 @@
1
1
  {
2
2
  "name": "@mixd-id/web-scaffold",
3
3
  "private": false,
4
- "version": "0.1.230406395",
4
+ "version": "0.1.230406397",
5
5
  "scripts": {
6
6
  "dev": "vite serve",
7
7
  "build": "vite build",
@@ -19,7 +19,7 @@
19
19
 
20
20
  <script>
21
21
 
22
- import { parseBoolean } from "../utils/helpers.mjs";
22
+ import {parseBoolean} from "../utils/helpers.mjs";
23
23
 
24
24
  export default {
25
25
 
@@ -151,7 +151,7 @@ export default {
151
151
  }
152
152
 
153
153
  .indicator{
154
- @apply w-[21px] h-[21px] rounded-lg border-[1px] border-text-300 bg-base-500;
154
+ @apply w-[21px] h-[21px] rounded-lg border-[1px] border-text-300 bg-base-300;
155
155
  @apply flex items-center justify-center overflow-hidden;
156
156
  transition: border 300ms cubic-bezier(0.25, 1, 0.5, 1);
157
157
  }
@@ -312,7 +312,7 @@ export default {
312
312
  <style module>
313
313
 
314
314
  .contextMenu{
315
- @apply fixed z-20 panel-500 min-w-[150px] overflow-y-auto rounded-xl;
315
+ @apply fixed z-20 bg-base-400 min-w-[150px] overflow-y-auto rounded-xl;
316
316
  @apply border-[2px] border-text-200 shadow-2xl whitespace-nowrap;
317
317
  transition: all 150ms cubic-bezier(0.25, 1, 0.5, 1);
318
318
  opacity: 0;
@@ -326,7 +326,7 @@ export default {
326
326
  @media screen(md){
327
327
 
328
328
  .contextMenu{
329
- @apply fixed z-20 panel-500 min-w-[150px] overflow-y-auto rounded-lg;
329
+ @apply fixed z-20 bg-base-400 min-w-[150px] overflow-y-auto rounded-lg;
330
330
  @apply border-[1px] border-text-50 shadow-2xl whitespace-nowrap;
331
331
  transition: all 150ms cubic-bezier(0.25, 1, 0.5, 1);
332
332
  opacity: 0;
@@ -293,7 +293,7 @@ export default{
293
293
  .datepicker {
294
294
  @apply min-h-[var(--h-cp)];
295
295
  @apply flex items-center rounded-lg overflow-hidden cursor-pointer relative;
296
- @apply border-[1px] border-text-200 bg-base-500 rounded-lg;
296
+ @apply border-[1px] border-text-200 bg-base-300 rounded-lg;
297
297
  @apply cursor-pointer;
298
298
  }
299
299
  .datepicker:not(.readonly){
@@ -161,7 +161,7 @@ export default {
161
161
 
162
162
  .dropdown{
163
163
  @apply flex items-center rounded-lg overflow-hidden cursor-pointer relative;
164
- @apply border-[1px] border-text-200 bg-base-500;
164
+ @apply border-[1px] border-text-200 bg-base-300;
165
165
  }
166
166
  .dropdown:not(.readonly){
167
167
  @apply hover:border-text-300;
@@ -99,7 +99,7 @@
99
99
  </template>
100
100
  </Textbox>
101
101
 
102
- <div v-if="$slots.gridItem"
102
+ <div v-if="false && $slots.gridItem"
103
103
  class="hidden md:grid grid-cols-2 gap-[1px] border-[1px] border-text-50 rounded-lg">
104
104
  <Radio v-model="preset.view"
105
105
  name="view"
@@ -132,7 +132,7 @@
132
132
  <VirtualTable
133
133
  ref="table"
134
134
  :columns="columns"
135
- class="flex-1 rounded-lg panel-400"
135
+ class="flex-1 bg-base-300"
136
136
  :items="data.items"
137
137
  :enumCache="enumCache"
138
138
  @scroll-end="loadNext"
@@ -206,7 +206,7 @@
206
206
  <VirtualTable v-else-if="presetView === 'table'"
207
207
  ref="table"
208
208
  :columns="preset.columns"
209
- class="flex-1 rounded-lg panel-400"
209
+ class="flex-1 panel-400"
210
210
  :items="data.extItems"
211
211
  :enumCache="enumCache"
212
212
  @scroll-end="loadExtNext">
@@ -144,7 +144,6 @@ export default{
144
144
  <style module>
145
145
 
146
146
  .comp{
147
- @apply bg-base-500;
148
147
  }
149
148
 
150
149
  .comp .dragover{
@@ -354,7 +354,7 @@ export default{
354
354
 
355
355
  .modal{
356
356
  @apply fixed;
357
- @apply panel-400;
357
+ @apply bg-base-300 dark:bg-base-400;
358
358
  @apply border-[1px] border-text-50 z-20 flex max-h-[90vh];
359
359
  @apply rounded-xl overflow-hidden transition-all;
360
360
  }
@@ -137,7 +137,7 @@ export default{
137
137
  <style module>
138
138
 
139
139
  .textarea{
140
- @apply flex items-start border-[1px] border-text-200 bg-base-500 rounded-lg overflow-hidden;
140
+ @apply flex items-start border-[1px] border-text-200 bg-base-300 rounded-lg overflow-hidden;
141
141
  }
142
142
  .textarea textarea{
143
143
  @apply flex-1 outline-none p-2 bg-transparent resize-none;
@@ -85,7 +85,7 @@ export default{
85
85
  }
86
86
 
87
87
  .indicator{
88
- @apply w-[21px] h-[21px] border-[1px] rounded-full border-text-200 bg-base-500;
88
+ @apply w-[21px] h-[21px] border-[1px] rounded-full border-text-200 bg-base-300;
89
89
  @apply flex items-center justify-center overflow-hidden;
90
90
  transition: border 300ms cubic-bezier(0.25, 1, 0.5, 1);
91
91
  }
@@ -144,7 +144,7 @@ export default{
144
144
 
145
145
  .textarea{
146
146
  @apply min-h-[var(--h-cp)];
147
- @apply flex items-start border-[1px] border-text-200 bg-base-500 rounded-lg overflow-hidden;
147
+ @apply flex items-start border-[1px] border-text-200 bg-base-300 rounded-lg overflow-hidden;
148
148
  @apply !max-h-[200px];
149
149
  }
150
150
  .textarea textarea{
@@ -181,7 +181,7 @@ export default{
181
181
 
182
182
  .textbox{
183
183
  @apply flex items-center;
184
- @apply border-[1px] border-text-200 bg-base-500 rounded-lg;
184
+ @apply border-[1px] border-text-200 bg-base-300 rounded-lg;
185
185
  @apply overflow-hidden;
186
186
  }
187
187
 
@@ -402,7 +402,7 @@ export default{
402
402
  <style module>
403
403
 
404
404
  .item{
405
- @apply bg-base-300 dark:bg-base-400 flex flex-row py-1 items-center rounded-lg mb-1;
405
+ @apply bg-base-300 flex flex-row py-1 items-center rounded-lg mb-1;
406
406
  @apply border-[1px] border-transparent cursor-pointer;
407
407
  }
408
408
  .item.active{
@@ -36,46 +36,51 @@
36
36
  </div>
37
37
  </div>
38
38
 
39
- <div ref="cont" class="flex-1 overflow-y-auto">
40
- <div class="flex-1 flex flex-row">
39
+ <div ref="cont" class="flex-1 overflow-y-auto" @scroll.passive="handleScroll">
40
+ <div v-if="state === 3" class="flex items-center justify-center p-8">
41
+ <svg class="animate-spin aspect-square w-[32px] h-[32px] text-primary" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path></svg>
42
+ </div>
43
+
44
+ <div v-else class="flex-1 flex flex-row">
41
45
 
42
- <div :style="freezeLeftScrollerStyle">
46
+ <div v-if="state !== 2" :style="freezeLeftScrollerStyle">
43
47
  <div :class="$style.spacer" :style="spacerStyle">
44
48
  <table :class="$style.table" class="flex-1 overflow-x-auto">
45
49
  <thead>
46
- <tr>
47
- <th v-for="column in freezeLeftColumns" :style="thStyle(column)"></th>
48
- <th :class="$style.spacer"></th>
49
- </tr>
50
+ <tr>
51
+ <th v-for="column in freezeLeftColumns" :style="thStyle(column)"></th>
52
+ <th :class="$style.spacer"></th>
53
+ </tr>
50
54
  </thead>
51
- <tbody ref="tbody">
52
- <tr v-for="(item, index) in visibleItems" :key="item"
53
- @click="select(item, index)"
54
- :class="trClass(item, index)">
55
- <td v-for="(column, columnIndex) in freezeLeftColumns"
56
- :class="tdClass(item, column)"
57
- @click="$emit('item-click', item, column)">
58
-
59
- <div v-if="columnIndex === 0 && item._type === 'totalRow'" :class="$style.total">Total</div>
60
- <div v-else-if="item._type === 'totalRow' && !column.key.startsWith('_')"></div>
61
-
62
- <slot v-else-if="$slots[column.key]" :name="column.key" :column="column" :item="item" :index="visibleStartIndex + index"></slot>
63
- <slot v-else-if="$slots.default" name="default" :column="column" :item="item" :index="visibleStartIndex + index"></slot>
64
- <div v-else :class="columnClass(column, item)" v-html="formatColumn(item, column)"></div>
65
-
66
- </td>
67
- <td :class="$style.spacer"></td>
68
- </tr>
55
+ <tbody>
56
+ <tr @mouseover="hover(item, index)" @mouseout="hoverIndex = -1" v-for="(item, index) in visibleItems" :key="item"
57
+ @click="select(item, index)"
58
+ :class="trClass(item, index)">
59
+ <td v-for="(column, columnIndex) in freezeLeftColumns"
60
+ :class="tdClass(item, column)"
61
+ @click="$emit('item-click', item, column)">
62
+
63
+ <div v-if="columnIndex === 0 && item._type === 'totalRow'" :class="$style.total">Total</div>
64
+ <div v-else-if="item._type === 'totalRow' && !column.key.startsWith('_')"></div>
65
+
66
+ <slot v-else-if="$slots[column.key]" :name="column.key" :column="column" :item="item" :index="visibleStartIndex + index">
67
+ <div :class="columnClass(column, item)">&nbsp;</div>
68
+ </slot>
69
+ <slot v-else-if="$slots.default" name="default" :column="column" :item="item" :index="visibleStartIndex + index">
70
+ <div :class="columnClass(column, item)">&nbsp;</div>
71
+ </slot>
72
+ <div v-else :class="columnClass(column, item)" v-html="formatColumn(item, column)"></div>
73
+
74
+ </td>
75
+ <td :class="$style.spacer"></td>
76
+ </tr>
69
77
  </tbody>
70
78
  </table>
71
79
  </div>
72
80
  </div>
73
81
 
74
- <div ref="xcont" class="flex-1 overflow-x-auto overflow-y-hidden">
75
- <div v-if="state === 3" ref="spinner" class="flex-1 flex items-center justify-center p-8">
76
- <svg class="animate-spin aspect-square w-[32px] h-[32px] text-primary" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path></svg>
77
- </div>
78
- <div ref="scroller" v-else-if="visibleColumns.length > 0" :class="$style.scroller" :style="scrollerStyle">
82
+ <div ref="xcont" class="flex-1 overflow-x-auto overflow-y-hidden" @scroll.passive="handleScrollX">
83
+ <div ref="scroller" v-if="visibleColumns.length > 0" :class="$style.scroller" :style="scrollerStyle">
79
84
  <div :class="$style.spacer" ref="spacer" :style="spacerStyle">
80
85
 
81
86
  <table :class="$style.table" class="flex-1 overflow-x-auto">
@@ -86,7 +91,7 @@
86
91
  </tr>
87
92
  </thead>
88
93
  <tbody ref="tbody">
89
- <tr v-for="(item, index) in visibleItems" :key="item"
94
+ <tr @mouseover="hover(item, index)" @mouseout="hoverIndex = -1" v-for="(item, index) in visibleItems" :key="item"
90
95
  @click="select(item, index)"
91
96
  :class="trClass(item, index)">
92
97
  <td v-for="(column, columnIndex) in unfreezedColumns"
@@ -96,8 +101,12 @@
96
101
  <div v-if="columnIndex === 0 && item._type === 'totalRow'" :class="$style.total">Total</div>
97
102
  <div v-else-if="item._type === 'totalRow' && !column.key.startsWith('_')"></div>
98
103
 
99
- <slot v-else-if="$slots[column.key]" :name="column.key" :column="column" :item="item" :index="visibleStartIndex + index"></slot>
100
- <slot v-else-if="$slots.default" name="default" :column="column" :item="item" :index="visibleStartIndex + index"></slot>
104
+ <slot v-else-if="$slots[column.key]" :name="column.key" :column="column" :item="item" :index="visibleStartIndex + index">
105
+ <div :class="columnClass(column, item)">&nbsp;</div>
106
+ </slot>
107
+ <slot v-else-if="$slots.default" name="default" :column="column" :item="item" :index="visibleStartIndex + index">
108
+ <div :class="columnClass(column, item)">&nbsp;</div>
109
+ </slot>
101
110
  <div v-else :class="columnClass(column, item)" v-html="formatColumn(item, column)"></div>
102
111
 
103
112
  </td>
@@ -105,7 +114,8 @@
105
114
  </tr>
106
115
  </tbody>
107
116
  </table>
108
- <div v-if="state === 2" ref="spinner" class="h-[44px] relative">
117
+
118
+ <div v-if="state === 2" class="h-[44px] relative">
109
119
  <div class="absolute top-0 left-0 w-screen h-[44px] flex items-center justify-center">
110
120
  <svg class="animate-spin aspect-square w-[16px] h-[16px] text-primary" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path></svg>
111
121
  </div>
@@ -119,24 +129,26 @@
119
129
  <h5 class="text-text-300">No data available</h5>
120
130
  </div>
121
131
  <slot name="end"></slot>
122
- <div :class="$style.calc" v-if="visibleColumns.length > 0 && cItems && cItems.length > 0" ref="calc">
123
- <table :class="$style.table">
124
- <tbody>
125
- <tr>
126
- <td v-for="column in cColumns" :style="thStyle(column)" :class="thClass(column)">
127
- <slot v-if="$slots[column.key]" :name="column.key" :column="column" :item="cItems[0]"></slot>
128
- <slot v-else-if="$slots.default" name="default" :column="column" :item="cItems[0]"></slot>
129
- <div v-else :class="columnClass(column)" v-html="formatColumn(cItems[0] ?? {}, column)"></div>
130
- </td>
131
- <td :class="$style.spacer"></td>
132
- </tr>
133
- </tbody>
134
- </table>
135
- </div>
136
132
  </div>
137
133
 
134
+ </div>
135
+
136
+ <div :class="$style.calc" v-if="visibleColumns.length > 0 && cItems && cItems.length > 0" ref="calc">
137
+ <table :class="$style.table">
138
+ <tbody>
139
+ <tr>
140
+ <td v-for="column in cColumns" :style="thStyle(column)" :class="thClass(column)">
141
+ <slot v-if="$slots[column.key]" :name="column.key" :column="column" :item="cItems[0]"></slot>
142
+ <slot v-else-if="$slots.default" name="default" :column="column" :item="cItems[0]"></slot>
143
+ <div v-else :class="columnClass(column)" v-html="formatColumn(cItems[0] ?? {}, column)"></div>
144
+ </td>
145
+ <td :class="$style.spacer"></td>
146
+ </tr>
147
+ </tbody>
148
+ </table>
138
149
  </div>
139
150
  </div>
151
+
140
152
  </div>
141
153
  </template>
142
154
 
@@ -200,9 +212,12 @@ export default{
200
212
  maxVisibleItems: 0,
201
213
  isOnEndScroll: false,
202
214
  selectedIndex: -1,
215
+ hoverIndex: -1,
203
216
  state: 1,
204
217
  scrolled: false,
205
- scrollerCache: {}
218
+ scrollerCache: {},
219
+ observer1: null,
220
+ observer2: null,
206
221
  }
207
222
  },
208
223
 
@@ -212,11 +227,6 @@ export default{
212
227
  return this.datasourceColumns ?? this.columns
213
228
  },
214
229
 
215
- xContStyle(){
216
- return {
217
- }
218
- },
219
-
220
230
  cItems(){
221
231
  return this.value?.items ?? this.items
222
232
  },
@@ -327,30 +337,23 @@ export default{
327
337
 
328
338
  mounted(){
329
339
 
330
- this.$refs.cont.addEventListener(
331
- "scroll",
332
- this.handleScroll,
333
- this.passiveScrollSupported() ? { passive: true } : false
334
- )
335
-
336
- this.$refs.xcont.addEventListener(
337
- "scroll",
338
- this.handleScrollX,
339
- this.passiveScrollSupported() ? { passive: true } : false
340
- )
341
-
342
- this.$refs.xcont.style.minHeight = `${this.$refs.cont.clientHeight}px`
343
-
344
- this.resize()
345
-
346
- const observer = new MutationObserver((mutationsList) => {
340
+ this.observer1 = new MutationObserver(_ => {
347
341
  this.resize()
348
342
  });
349
- observer.observe(this.$el, { attributes: true });
343
+ this.observer1.observe(this.$el, { attributes: true });
350
344
 
345
+ this.observer2 = new ResizeObserver(_ => {
346
+ this.resize()
347
+ });
348
+ this.observer2.observe(this.$refs.cont)
351
349
  },
352
350
 
353
- methods: {
351
+ unmounted() {
352
+ this.observer1.disconnect()
353
+ this.observer2.disconnect()
354
+ },
355
+
356
+ methods: {
354
357
 
355
358
  resetState(){
356
359
  this.state = 1
@@ -362,6 +365,7 @@ export default{
362
365
 
363
366
  return [
364
367
  this.selectedIndex === ((item && item.id) ? item.id : this.visibleStartIndex + index) ? this.$style.trSelected : '',
368
+ this.hoverIndex === ((item && item.id) ? item.id : this.visibleStartIndex + index) ? this.$style.trHover : '',
365
369
  highlight ? this.$style.highlight : ''
366
370
  ].join(' ')
367
371
  },
@@ -379,6 +383,10 @@ export default{
379
383
  }
380
384
  },
381
385
 
386
+ hover(item, index){
387
+ this.hoverIndex = (item && item.id) ? item.id : this.visibleStartIndex + index
388
+ },
389
+
382
390
  thStyle(column){
383
391
  const width = parseInt(column.width ?? this.defaultColumnWidth)
384
392
  return {
@@ -399,6 +407,10 @@ export default{
399
407
  async resize(){
400
408
 
401
409
  this.$nextTick(() => {
410
+ if(this.$refs.xcont){
411
+ this.$refs.xcont.style.minHeight = `${this.$refs.cont.clientHeight}px`
412
+ }
413
+
402
414
  if(this.$refs.calc){
403
415
  const elHeight = parseInt(window.getComputedStyle(this.$el).height !== '0px' ?
404
416
  window.getComputedStyle(this.$el).height :
@@ -744,6 +756,12 @@ export default{
744
756
  id: (this.items ?? [])[this.visibleStartIndex]?.id,
745
757
  index: this.visibleStartIndex
746
758
  }
759
+ },
760
+
761
+ state(to){
762
+ if(to === 1){
763
+ this.$nextTick(() => this.resize())
764
+ }
747
765
  }
748
766
 
749
767
  }
@@ -755,8 +773,8 @@ export default{
755
773
  <style module>
756
774
 
757
775
  .comp{
758
- @apply flex flex-col overflow-hidden bg-base-500;
759
- @apply border-[1px] border-text-50 rounded-sm;
776
+ @apply flex flex-col overflow-hidden bg-base-300;
777
+ @apply border-[1px] border-text-50 rounded-lg;
760
778
  }
761
779
 
762
780
  .comp>*:last-child{
@@ -799,25 +817,21 @@ export default{
799
817
  .table th{
800
818
  @apply relative text-left;
801
819
  }
802
- .table th:nth-child(odd){
803
- }
804
820
 
805
821
  .table tbody td{
806
822
  @apply border-b-[1px] border-text-50;
807
823
  }
808
- .table tbody td:nth-child(odd){
809
- }
810
824
 
811
- .table tbody tr:hover{
812
- @apply bg-primary-50;
825
+ .table tbody tr.trHover{
826
+ @apply bg-base-500;
813
827
  }
814
828
 
815
829
  .table tbody tr.trSelected{
816
- @apply bg-primary-100;
830
+ @apply bg-primary-50;
817
831
  }
818
832
 
819
833
  .highlight{
820
- @apply bg-primary-50 transition-all;
834
+ @apply bg-text-50 transition-all;
821
835
  }
822
836
 
823
837
  .tdDiv{
@@ -17,14 +17,14 @@ const plugin = Plugin(function({ addBase, addUtilities, config, theme }) {
17
17
  "--h-cp-lg": '3.6rem',
18
18
 
19
19
  '--base-50': '235, 237, 240',
20
- '--base-300': '235, 237, 240',
21
- '--base-400': '245, 247, 250',
22
- '--base-500': '255, 255, 255',
20
+ '--base-300': '255, 255, 255',
21
+ '--base-400': '248, 247, 248',
22
+ '--base-500': '248, 247, 248',
23
23
  '--base': '255, 255, 255',
24
24
 
25
- "--text-50": '224, 224, 224',
26
- "--text-100": '218, 218, 218',
27
- "--text-200": '197, 197, 197',
25
+ "--text-50": '238, 238, 238',
26
+ "--text-100": '223, 223, 223',
27
+ "--text-200": '217, 217, 217',
28
28
  "--text-300": '176, 176, 176',
29
29
  "--text-400": '116, 116, 116',
30
30
  "--text-500": '86, 86, 86',
@@ -69,14 +69,14 @@ const plugin = Plugin(function({ addBase, addUtilities, config, theme }) {
69
69
  'html[data-theme="dark"], .html[data-theme="dark"]': {
70
70
 
71
71
  "--base-50": '22, 26, 33',
72
- "--base-300": '0, 0, 0',
73
- "--base-400": '17, 21, 28',
74
- "--base-500": '22, 26, 33',
72
+ "--base-300": '17, 21, 28',
73
+ "--base-400": '0, 0, 0',
74
+ "--base-500": '0, 0, 0',
75
75
  "--base": '22, 26, 33',
76
76
 
77
77
  "--text-50": '33, 39, 46',
78
78
  "--text-100": '48, 54, 61',
79
- "--text-200": '63, 69, 76',
79
+ "--text-200": '58, 64, 71',
80
80
  "--text-300": '87, 87, 87',
81
81
  "--text-400": '191, 193, 197',
82
82
  "--text-500": '191, 193, 197',
@@ -109,7 +109,7 @@ const plugin = Plugin(function({ addBase, addUtilities, config, theme }) {
109
109
  'text-rendering': 'optimizeLegibility',
110
110
  'fontSize': '15px',
111
111
  'touchAction': "pan-x pan-y",
112
- 'backgroundColor': 'rgb(var(--base-300))'
112
+ 'backgroundColor': 'rgb(var(--base-500))',
113
113
  },
114
114
 
115
115
  '@media screen and (orientation: portrait)': {
package/src/utils/wss.mjs CHANGED
@@ -165,7 +165,7 @@ class WSS extends EventEmitter2{
165
165
  default:
166
166
  this.emit('disconnect', null, [])
167
167
 
168
- const retryAfter = (num => num > 60000 ? 60000 : num)(import.meta.env.DEV ? 1000 : Math.pow(1.5, ++this._retryCount) * 1000)
168
+ const retryAfter = (num => num > 60000 ? 60000 : num)(import.meta.env.DEV ? 1000 : Math.pow(1.2, ++this._retryCount) * 1000)
169
169
  window.setTimeout(() => this.connect(true), retryAfter)
170
170
  break
171
171
  }
@@ -19,7 +19,7 @@
19
19
  </div>
20
20
 
21
21
  <ListItem :items="config.presets"
22
- class="mt-1 rounded-lg overflow-hidden"
22
+ class="mt-1 rounded-lg overflow-hidden bg-base-300 border-text-50 border-[1px]"
23
23
  container-class="divide-y divide-text-50"
24
24
  @reorder="(from, to) => { config.presets.splice(to, 0, config.presets.splice(from, 1)[0]); apply() }">
25
25
  <template v-slot="{ item }">
@@ -267,7 +267,7 @@
267
267
  <ListItem v-if="Array.isArray(preset.sorts) && preset.sorts.length > 0"
268
268
  :items="preset.sorts"
269
269
  @reorder="(from, to) => { preset.sorts.splice(to, 0, preset.sorts.splice(from, 1)[0]); apply() }"
270
- container-class="flex flex-col rounded-lg border-[1px] border-text-50 bg-base-300 divide-y divide-text-50">
270
+ container-class="flex flex-col rounded-lg">
271
271
  <template v-slot="{ item, index }">
272
272
  <div class="flex flex-row items-center gap-3 p-1">
273
273
  <div data-reorder>
@@ -19,7 +19,7 @@
19
19
  </div>
20
20
  <ListItem :items="pivot.rows"
21
21
  @reorder="(from, to) => { pivot.rows.splice(to, 0, pivot.rows.splice(from, 1)[0]); apply() }"
22
- class="mt-2 h-[25vh] overflow-y-auto border-[1px] border-text-200 bg-base-400 rounded-lg p-0.5"
22
+ class="mt-2 h-[25vh] overflow-y-auto border-[1px] border-text-200 bg-base-300 rounded-lg p-0.5"
23
23
  container-class="divide-y divide-text-50">
24
24
  <template v-slot="{ item, index }">
25
25
  <div class="flex flex-row items-center gap-3 p-2 bg-base-500 hover:bg-primary-100 first:rounded-t-md last:rounded-b-md">
@@ -58,7 +58,7 @@
58
58
  </div>
59
59
  <ListItem :items="pivot.values"
60
60
  @reorder="(from, to) => { pivot.values.splice(to, 0, pivot.values.splice(from, 1)[0]); }"
61
- class="mt-2 h-[25vh] overflow-y-auto border-[1px] border-text-200 bg-base-400 rounded-lg p-0.5"
61
+ class="mt-2 h-[25vh] overflow-y-auto border-[1px] border-text-200 bg-base-300 rounded-lg p-0.5"
62
62
  container-class="divide-y divide-text-50">
63
63
  <template v-slot="{ item, index }">
64
64
  <div class="flex flex-row items-center gap-3 p-2 bg-base-500 hover:bg-primary-100 first:rounded-t-md last:rounded-b-md">
@@ -102,7 +102,7 @@
102
102
  </div>
103
103
  <ListItem :items="pivot.columns"
104
104
  @reorder="(from, to) => { pivot.columns.splice(to, 0, pivot.columns.splice(from, 1)[0]); pivot.manualColumns = true; apply() }"
105
- class="mt-2 h-[25vh] overflow-y-auto border-[1px] border-text-200 bg-base-400 rounded-lg p-0.5"
105
+ class="mt-2 h-[25vh] overflow-y-auto border-[1px] border-text-200 bg-base-300 rounded-lg p-0.5"
106
106
  container-class="divide-y divide-text-50">
107
107
  <template v-slot="{ item, index }">
108
108
  <div class="flex flex-row gap-2 items-center px-2 bg-base-500">
@@ -6,7 +6,7 @@
6
6
 
7
7
  <div class="flex-1 flex flex-col bg-base-400">
8
8
 
9
- <div class="p-3 pr-5 sticky top-0 flex justify-center gap-4 bg-base-400 dark:bg-base-300 border-b-[1px] border-text-50">
9
+ <div class="p-3 pr-5 sticky top-0 flex justify-center gap-4 bg-base-400 border-b-[1px] border-text-50">
10
10
  <div class="flex-1 flex flex-row gap-4 items-center">
11
11
 
12
12
  <button ref="close" class=" p-1"
@@ -81,7 +81,7 @@
81
81
 
82
82
  <div class="flex-1 flex flex-row">
83
83
 
84
- <div class="flex flex-row bg-base-400 dark:bg-base-300 border-r-[1px] border-text-50"
84
+ <div class="flex flex-row bg-base-400 border-r-[1px] border-text-50"
85
85
  :style="section1Style">
86
86
 
87
87
  <div class="flex-1 flex flex-col overflow-y-auto">
@@ -490,7 +490,7 @@
490
490
  </div>
491
491
  </div>
492
492
 
493
- <div v-if="currentItem" class="flex flex-col bg-base-400 dark:bg-base-300 border-l-[1px] border-text-50"
493
+ <div v-if="currentItem" class="flex flex-col bg-base-400 border-l-[1px] border-text-50"
494
494
  @click="currentArea = 'properties'"
495
495
  :style="section3Style">
496
496