@nexdom/uimed-vue 2.3.0 → 2.4.0
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/dist/components/inputs/text-field/text-field.vue.d.ts +1 -1
- package/dist/components/navigation-menu/navigation-menu.vue_vue_type_script_setup_true_lang.js +20 -16
- package/dist/styles/settings.scss +7 -2
- package/package.json +1 -1
- package/skills/uimed-vue/references/api/components/main.md +1 -1
- package/skills/uimed-vue/references/guide/components/main.md +3 -3
|
@@ -23,8 +23,8 @@ declare const __VLS_export: import("vue", { with: { "resolution-mode": "import"
|
|
|
23
23
|
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
24
24
|
}>, {
|
|
25
25
|
variant: TextFieldVariant;
|
|
26
|
-
clearable: boolean;
|
|
27
26
|
type: TextFieldType;
|
|
27
|
+
clearable: boolean;
|
|
28
28
|
}, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, {}, any>;
|
|
29
29
|
//#endregion
|
|
30
30
|
export { _default as default };
|
package/dist/components/navigation-menu/navigation-menu.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -5,9 +5,9 @@ import skeleton_loader_default from "../skeleton-loader/skeleton-loader.js";
|
|
|
5
5
|
import text_field_default from "../inputs/text-field/text-field.js";
|
|
6
6
|
import { isParentItem, useNavigationRail } from "../../composables/navigation/use-navigation-rail.js";
|
|
7
7
|
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createVNode, defineComponent, isRef, mergeModels, mergeProps, openBlock, ref, renderList, unref, useModel, useTemplateRef, vShow, watch, withCtx, withDirectives, withKeys } from "vue";
|
|
8
|
-
import { VDivider, VList, VListGroup, VListItem, VNavigationDrawer } from "vuetify/components";
|
|
8
|
+
import { VDefaultsProvider, VDivider, VList, VListGroup, VListItem, VNavigationDrawer } from "vuetify/components";
|
|
9
9
|
//#region src/components/navigation-menu/navigation-menu.vue?vue&type=script&setup=true&lang.ts
|
|
10
|
-
const _hoisted_1 = { class: "px-4
|
|
10
|
+
const _hoisted_1 = { class: "px-4 pb-4" };
|
|
11
11
|
var navigation_menu_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
12
12
|
inheritAttrs: false,
|
|
13
13
|
__name: "navigation-menu",
|
|
@@ -36,6 +36,7 @@ var navigation_menu_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
36
36
|
const props = __props;
|
|
37
37
|
const open = useModel(__props, "modelValue");
|
|
38
38
|
const search = ref("");
|
|
39
|
+
const searchFieldDefaults = { VTextField: { hideDetails: "auto" } };
|
|
39
40
|
const field = useTemplateRef("searchField");
|
|
40
41
|
const { mobile, collapsed, drawerOpen, menuOpen, opened, isActiveGroup, dismiss, isRestoringFocus, onFocusin, onFocusout, onMouseenter, onMouseleave } = useNavigationRail({
|
|
41
42
|
open,
|
|
@@ -96,20 +97,23 @@ var navigation_menu_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
96
97
|
onKeydown: withKeys(unref(dismiss), ["esc"])
|
|
97
98
|
}, {
|
|
98
99
|
prepend: withCtx(() => [
|
|
99
|
-
withDirectives(createElementVNode("div", _hoisted_1, [createVNode(
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
100
|
+
withDirectives(createElementVNode("div", _hoisted_1, [createCommentVNode(" Hides the empty messages area, which made the expanded rail's search taller than the\n collapsed one's search item and pushed the items down when the rail expanded "), createVNode(unref(VDefaultsProvider), { defaults: searchFieldDefaults }, {
|
|
101
|
+
default: withCtx(() => [createVNode(text_field_default, {
|
|
102
|
+
ref: "searchField",
|
|
103
|
+
modelValue: search.value,
|
|
104
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => search.value = $event),
|
|
105
|
+
type: "search",
|
|
106
|
+
placeholder: `Buscar (${unref(shortcutLabel)})`,
|
|
107
|
+
"data-testid": searchDataTestid.value,
|
|
108
|
+
disabled: props.loading
|
|
109
|
+
}, null, 8, [
|
|
110
|
+
"modelValue",
|
|
111
|
+
"placeholder",
|
|
112
|
+
"data-testid",
|
|
113
|
+
"disabled"
|
|
114
|
+
])]),
|
|
115
|
+
_: 1
|
|
116
|
+
})], 512), [[vShow, !unref(collapsed)]]),
|
|
113
117
|
createCommentVNode(" Vuetify's list is focusable and passes the focus on to its first item: out of the tab\n order, the item gets the focus straight from the page, which then gets it back on `Esc` "),
|
|
114
118
|
withDirectives(createVNode(unref(VList), {
|
|
115
119
|
nav: "",
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
+
// The app bar and the footer frame the content of UMain, so they share one elevation
|
|
2
|
+
$layout-elevation: 2;
|
|
3
|
+
|
|
1
4
|
@use "vuetify/settings" with (
|
|
5
|
+
$app-bar-elevation: $layout-elevation,
|
|
6
|
+
$footer-elevation: $layout-elevation,
|
|
2
7
|
$body-font-family: var(--v-font-body, "Unimed Slab", sans-serif),
|
|
3
8
|
// Unimed Slab's ascent and descent take 1.26em, more than the subtitles' default 1rem line
|
|
4
9
|
// height, which clipped its descenders and accented capitals
|
|
@@ -75,7 +80,7 @@
|
|
|
75
80
|
"padding-y": (
|
|
76
81
|
responsive: false,
|
|
77
82
|
),
|
|
78
|
-
"padding-
|
|
83
|
+
"padding-bottom": (
|
|
79
84
|
responsive: false,
|
|
80
85
|
),
|
|
81
86
|
"text-align": (
|
|
@@ -115,8 +120,8 @@
|
|
|
115
120
|
"negative-margin-left": false,
|
|
116
121
|
"negative-margin-start": false,
|
|
117
122
|
"negative-margin-end": false,
|
|
123
|
+
"padding-top": false,
|
|
118
124
|
"padding-right": false,
|
|
119
|
-
"padding-bottom": false,
|
|
120
125
|
"padding-left": false,
|
|
121
126
|
"padding-start": false,
|
|
122
127
|
"padding-end": false,
|
package/package.json
CHANGED
|
@@ -12,7 +12,7 @@ Responsável por carregar o menu superior, o menu de navegação lateral, o roda
|
|
|
12
12
|
| `logo` | `string` | | URL utilizada para carregar a logo que será apresentada. A logo é decorativa (`alt=""`): o título do menu superior (`appBar.title`) identifica a aplicação. |
|
|
13
13
|
| `appBar` | [`AppBar`](#appbar) | | Conjunto de propriedades para aplicar à barra superior. |
|
|
14
14
|
| `navigationMenu` | [`NavigationMenu`](#navigationmenu) | | Conjunto de propriedades para aplicar ao menu lateral de navegação. |
|
|
15
|
-
| `footer` | [`Footer`](#footer) | | Conjunto de propriedades para aplicar ao rodapé, fixo na parte inferior da tela. **O rodapé será ocultado sempre que essa prop for omitida ou o seu `description` for vazio.**
|
|
15
|
+
| `footer` | [`Footer`](#footer) | | Conjunto de propriedades para aplicar ao rodapé, fixo na parte inferior da tela e com a mesma elevação do menu superior. **O rodapé será ocultado sempre que essa prop for omitida ou o seu `description` for vazio.** |
|
|
16
16
|
| `loading` | `boolean` | `false` | Exibe skeletons no lugar das ações do menu superior e dos itens do menu de navegação enquanto os dados são carregados. O conteúdo da página não é afetado. |
|
|
17
17
|
| `background` | `"primary" \| "secondary" \| "tertiary" \| "positive" \| "informative" \| "caution" \| "danger"` | | Aplica uma cor ao fundo de toda a aplicação, como em landing pages. O texto colocado diretamente sobre o fundo passa a usar a cor associada a ele (branco ou preto), enquanto o menu superior, o rodapé, as sections e os diálogos mantêm os próprios fundos. **Quando omitida, a aplicação usa o fundo padrão do tema.** |
|
|
18
18
|
|
|
@@ -196,8 +196,8 @@ type MainProps = ComponentProps<typeof UMain>;
|
|
|
196
196
|
const appBar: NonNullable<MainProps["appBar"]> = {
|
|
197
197
|
title: "Menu superior",
|
|
198
198
|
user: {
|
|
199
|
-
title: "
|
|
200
|
-
subtitle: "
|
|
199
|
+
title: "Douglas Martins",
|
|
200
|
+
subtitle: "douglas.martins@example.com",
|
|
201
201
|
options: [{ description: "Sair", action: () => window.alert("Saindo...") }],
|
|
202
202
|
},
|
|
203
203
|
};
|
|
@@ -331,7 +331,7 @@ const navigationMenu: NonNullable<MainProps["navigationMenu"]> = {
|
|
|
331
331
|
|
|
332
332
|
### Rodapé
|
|
333
333
|
|
|
334
|
-
A prop `footer` exibe um texto fixo na parte inferior da tela, como a versão da aplicação, para que o usuário consiga informá-la ao suporte ao relatar um problema. O texto fica centralizado e o conteúdo da página termina acima do rodapé, sem ficar coberto por ele.
|
|
334
|
+
A prop `footer` exibe um texto fixo na parte inferior da tela, como a versão da aplicação, para que o usuário consiga informá-la ao suporte ao relatar um problema. O texto fica centralizado, o rodapé tem a mesma elevação (sombra) do menu superior e o conteúdo da página termina acima do rodapé, sem ficar coberto por ele.
|
|
335
335
|
|
|
336
336
|
Para ocultar o rodapé, basta omitir essa prop ou deixar o seu `description` vazio, por exemplo enquanto o usuário não estiver autenticado. O carregamento (prop `loading`) não afeta o rodapé.
|
|
337
337
|
|