glib-web 4.34.5 → 4.35.1
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/README.md +1 -0
- package/actions/windows/openWeb.js +2 -1
- package/app.vue +1 -1
- package/components/_avatar.vue +19 -3
- package/components/_internal_button.vue +2 -0
- package/components/fields/_select.vue +9 -1
- package/components/panels/table.vue +15 -0
- package/nav/appBar.vue +3 -2
- package/package.json +1 -1
package/README.md
CHANGED
package/app.vue
CHANGED
|
@@ -151,7 +151,7 @@ export default {
|
|
|
151
151
|
},
|
|
152
152
|
created() {
|
|
153
153
|
console.debug(
|
|
154
|
-
`
|
|
154
|
+
`Version12: ${Utils.settings.appVersion} (${Utils.settings.env})`
|
|
155
155
|
);
|
|
156
156
|
Utils.history.saveInitialContent(this.page);
|
|
157
157
|
Utils.history.restoreOnBackOrForward({
|
package/components/_avatar.vue
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<common-badge :spec="spec">
|
|
3
|
-
<v-avatar :size="spec.size" :color="spec.backgroundColor || 'surface-variant'" :class="
|
|
4
|
-
<p v-if="spec.initials" :style="{ color: spec.initials.color || 'white' }">{{ spec.initials.text }}</p>
|
|
3
|
+
<v-avatar :size="spec.size" :color="spec.backgroundColor || 'surface-variant'" :class="cssClasses">
|
|
4
|
+
<p class="initials" v-if="spec.initials" :style="{ color: spec.initials.color || 'white' }">{{ spec.initials.text }}</p>
|
|
5
5
|
<!-- Use `img` instead of `v-img` otherwise the rounded border will not work. -->
|
|
6
6
|
<!-- <img :style="$styles()" :src="spec.url || spec.base64Data" @click="$onClick()" /> -->
|
|
7
7
|
<v-img :style="$styles()" :class="$classes()" :src="spec.url || spec.base64Data" @click="$onClick()"
|
|
@@ -14,6 +14,22 @@
|
|
|
14
14
|
export default {
|
|
15
15
|
props: {
|
|
16
16
|
spec: { type: Object, required: true }
|
|
17
|
-
}
|
|
17
|
+
},
|
|
18
|
+
computed: {
|
|
19
|
+
cssClasses() {
|
|
20
|
+
// Icons are nameless when used in other components, e.g. buttons
|
|
21
|
+
this.spec.view = this.spec.view || "avatar";
|
|
22
|
+
|
|
23
|
+
return this.$classes();
|
|
24
|
+
},
|
|
25
|
+
},
|
|
18
26
|
};
|
|
19
27
|
</script>
|
|
28
|
+
|
|
29
|
+
<style lang="scss">
|
|
30
|
+
.views {
|
|
31
|
+
.initials {
|
|
32
|
+
// To be overridden
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
</style>
|
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
:active="$classesInclude('active')" :icon="$classes().includes('icon') ? $vuetify : null" @click="onClick">
|
|
5
5
|
<!-- <span v-if="spec.icon"><common-icon :spec="spec.icon || {}" /></span> -->
|
|
6
6
|
<common-icon v-if="spec.icon" :spec="spec.icon || {}" />
|
|
7
|
+
<common-avatar v-if="spec.avatar" :spec="spec.avatar || {}" />
|
|
8
|
+
|
|
7
9
|
<div :class="hideTextOnXs && spec.icon ? 'd-none d-sm-flex' : null">
|
|
8
10
|
{{ spec.text }}
|
|
9
11
|
</div>
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<!-- Set `menu-props` so the menu will never be wider than the select field.
|
|
4
4
|
See https://github.com/vuetifyjs/vuetify/issues/17751 -->
|
|
5
5
|
<component :is="compName" :color="gcolor" v-model="fieldModel" :label="label" :items="normalizedOptions"
|
|
6
|
-
:chips="
|
|
6
|
+
:chips="useChips" :disabled="inputDisabled" :multiple="spec.multiple" :readonly="spec.readOnly"
|
|
7
7
|
:clearable="spec.clearable" :placeholder="spec.placeholder" :rules="$validation()" persistent-hint
|
|
8
8
|
:append-icon="append.icon" validate-on="blur" item-title='text' :variant="variant" :closable-chips="spec.multiple"
|
|
9
9
|
:density="density" persistent-placeholder @update:modelValue="onChange" @focus="focused = true"
|
|
@@ -58,6 +58,8 @@ import inputVariant from '../mixins/inputVariant';
|
|
|
58
58
|
import { determineDensity } from "../../utils/constant";
|
|
59
59
|
import { triggerOnChange, triggerOnInput, useGlibInput } from "../composable/form";
|
|
60
60
|
import Hash from '../../utils/hash';
|
|
61
|
+
import { ifBoolean } from '../../utils/type';
|
|
62
|
+
|
|
61
63
|
import { useGlibSelectable, watchNoneOfAbove } from '../composable/selectable';
|
|
62
64
|
import { ref } from 'vue';
|
|
63
65
|
import SelectItemDefault from "./_selectItemDefault.vue";
|
|
@@ -94,6 +96,12 @@ export default {
|
|
|
94
96
|
};
|
|
95
97
|
},
|
|
96
98
|
computed: {
|
|
99
|
+
useChips() {
|
|
100
|
+
ifBoolean(this.spec.useChips, (val) => {
|
|
101
|
+
return val;
|
|
102
|
+
});
|
|
103
|
+
return this.spec.multiple;
|
|
104
|
+
},
|
|
97
105
|
compName() {
|
|
98
106
|
return this.spec.searchable ? 'v-autocomplete' : 'v-select';
|
|
99
107
|
},
|
|
@@ -70,6 +70,21 @@
|
|
|
70
70
|
</td>
|
|
71
71
|
</tr>
|
|
72
72
|
</tbody>
|
|
73
|
+
|
|
74
|
+
<tfoot>
|
|
75
|
+
<tr v-if="section.footer" :style="$styles(section.footer)">
|
|
76
|
+
<template v-if="section.footer.dataCells">
|
|
77
|
+
<th v-for="(cell, index) in section.footer.dataCells" :key="index"
|
|
78
|
+
:colSpan="colSpan(section.footer, index)">
|
|
79
|
+
{{ cell }}
|
|
80
|
+
</th>
|
|
81
|
+
</template>
|
|
82
|
+
<th v-for="(cell, index) in section.footer.cellViews" v-else :key="index"
|
|
83
|
+
:colSpan="colSpan(section.footer, index)">
|
|
84
|
+
<glib-component :spec="cell" />
|
|
85
|
+
</th>
|
|
86
|
+
</tr>
|
|
87
|
+
</tfoot>
|
|
73
88
|
</template>
|
|
74
89
|
</table>
|
|
75
90
|
|
package/nav/appBar.vue
CHANGED
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
<v-toolbar-items :class="navBar.collapseButtonsOnMobile ? 'hidden-sm-and-down' : null">
|
|
20
20
|
<template v-for="(btn, index) in navBar.rightButtons">
|
|
21
21
|
<common-dropdownMenu v-if="btn.childButtons" :key="index" :spec="btn" />
|
|
22
|
+
<v-divider vertical thickness="1" v-else-if="btn.type == 'divider'" :key="`divider_${index}`"></v-divider>
|
|
22
23
|
<common-button v-else :key="`right_${index}`" :spec="buttonSpec(btn)" />
|
|
23
24
|
</template>
|
|
24
25
|
</v-toolbar-items>
|
|
@@ -124,7 +125,7 @@ export default {
|
|
|
124
125
|
});
|
|
125
126
|
},
|
|
126
127
|
triggerDrawer() {
|
|
127
|
-
eventBus.$emit("drawers/toggle");
|
|
128
|
+
eventBus.$emit("glib-drawers/toggle");
|
|
128
129
|
},
|
|
129
130
|
// viewSourceEnabled: function () {
|
|
130
131
|
// // return process.env.NODE_ENV === "development";
|
|
@@ -175,7 +176,7 @@ export default {
|
|
|
175
176
|
-->
|
|
176
177
|
|
|
177
178
|
<!-- Overridable -->
|
|
178
|
-
<style lang="scss"
|
|
179
|
+
<style lang="scss">
|
|
179
180
|
.views-appBar {
|
|
180
181
|
// box-shadow: none !important;
|
|
181
182
|
// .v-app-bar-nav-icon {
|