@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 +1 -1
- package/src/components/Checkbox.vue +2 -2
- package/src/components/ContextMenu.vue +2 -2
- package/src/components/Datepicker.vue +1 -1
- package/src/components/Dropdown.vue +1 -1
- package/src/components/List.vue +3 -3
- package/src/components/ListItem.vue +0 -1
- package/src/components/Modal.vue +1 -1
- package/src/components/MultilineText.vue +1 -1
- package/src/components/Radio.vue +1 -1
- package/src/components/Textarea.vue +1 -1
- package/src/components/Textbox.vue +1 -1
- package/src/components/TreeViewItem.vue +1 -1
- package/src/components/VirtualTable.vue +97 -83
- package/src/themes/default/index.js +11 -11
- package/src/utils/wss.mjs +1 -1
- package/src/widgets/PresetBar.vue +2 -2
- package/src/widgets/PresetBarPivot.vue +3 -3
- package/src/widgets/WebPageBuilder.vue +3 -3
package/package.json
CHANGED
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
|
|
20
20
|
<script>
|
|
21
21
|
|
|
22
|
-
import {
|
|
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-
|
|
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
|
|
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
|
|
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-
|
|
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-
|
|
164
|
+
@apply border-[1px] border-text-200 bg-base-300;
|
|
165
165
|
}
|
|
166
166
|
.dropdown:not(.readonly){
|
|
167
167
|
@apply hover:border-text-300;
|
package/src/components/List.vue
CHANGED
|
@@ -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
|
|
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
|
|
209
|
+
class="flex-1 panel-400"
|
|
210
210
|
:items="data.extItems"
|
|
211
211
|
:enumCache="enumCache"
|
|
212
212
|
@scroll-end="loadExtNext">
|
package/src/components/Modal.vue
CHANGED
|
@@ -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-
|
|
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;
|
package/src/components/Radio.vue
CHANGED
|
@@ -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-
|
|
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-
|
|
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{
|
|
@@ -402,7 +402,7 @@ export default{
|
|
|
402
402
|
<style module>
|
|
403
403
|
|
|
404
404
|
.item{
|
|
405
|
-
@apply bg-base-300
|
|
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-
|
|
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
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
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
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
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)"> </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)"> </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="
|
|
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"
|
|
100
|
-
|
|
104
|
+
<slot v-else-if="$slots[column.key]" :name="column.key" :column="column" :item="item" :index="visibleStartIndex + index">
|
|
105
|
+
<div :class="columnClass(column, item)"> </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)"> </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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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-
|
|
759
|
-
@apply border-[1px] border-text-50 rounded-
|
|
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
|
|
812
|
-
|
|
825
|
+
.table tbody tr.trHover{
|
|
826
|
+
@apply bg-base-500;
|
|
813
827
|
}
|
|
814
828
|
|
|
815
829
|
.table tbody tr.trSelected{
|
|
816
|
-
@apply bg-primary-
|
|
830
|
+
@apply bg-primary-50;
|
|
817
831
|
}
|
|
818
832
|
|
|
819
833
|
.highlight{
|
|
820
|
-
@apply bg-
|
|
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': '
|
|
21
|
-
'--base-400': '
|
|
22
|
-
'--base-500': '
|
|
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": '
|
|
26
|
-
"--text-100": '
|
|
27
|
-
"--text-200": '
|
|
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": '
|
|
73
|
-
"--base-400": '
|
|
74
|
-
"--base-500": '
|
|
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": '
|
|
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-
|
|
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.
|
|
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
|
|
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-
|
|
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-
|
|
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-
|
|
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
|
|
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
|
|
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
|
|
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
|
|