@dev-tcloud/tcloud-ui 7.2.0 → 7.2.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/docs/tcloud-ui-navbar.md +226 -0
- package/fesm2022/dev-tcloud-tcloud-ui.mjs +88 -5
- package/fesm2022/dev-tcloud-tcloud-ui.mjs.map +1 -1
- package/js/tcloud-ui-app.js +69 -69
- package/package.json +1 -1
- package/scss/components/custom/_tcloud-ui-navbar.scss +84 -0
- package/scss/components/styles.scss +2 -1
- package/types/dev-tcloud-tcloud-ui.d.ts +64 -4
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
# Navbar
|
|
2
|
+
|
|
3
|
+
## Caracteristicas
|
|
4
|
+
|
|
5
|
+
O `TCloudUiNavbarComponent` e o menu vertical principal do tcloud. E um componente
|
|
6
|
+
**data-driven**: recebe um array de itens (`TCloudUiNavbarItem[]`) e renderiza a
|
|
7
|
+
navegacao, incluindo submenus **recursivos** de qualquer profundidade.
|
|
8
|
+
|
|
9
|
+
Funcionalidades principais:
|
|
10
|
+
- Menu vertical alimentado por `[menuItems]` ou por `[groups]` (secoes separadas por divisor).
|
|
11
|
+
- Submenus recursivos (N niveis), expansiveis/colapsaveis pelo proprio item.
|
|
12
|
+
- Modo expandido (labels + icones) e minimizado (somente icones) via `isMenuExpanded`.
|
|
13
|
+
- Botao interno de minimizar/expandir (controlavel por `showToggle`).
|
|
14
|
+
- Navegacao interna por `routerLink` (`link`) e externa em nova aba (`href`).
|
|
15
|
+
- Selo curto por item via `badge` (ex.: `'Novo'`).
|
|
16
|
+
- Itens desabilitados (`enable: false`) sao ocultados.
|
|
17
|
+
- Logo no header via `[logoSrc]` (com variante `[logoSrcDark]` para `body.tc-dark`);
|
|
18
|
+
no modo minimizado o logo e recortado, sobrando so o simbolo.
|
|
19
|
+
- Rodape de perfil pronto com o componente `tcloud-ui-navbar-footer` (avatar, nome,
|
|
20
|
+
papel e botao de sair), ou conteudo livre via slots `[navbar-header]`/`[navbar-footer]`.
|
|
21
|
+
- Emite `onItemClick` ao clicar num item folha e `onExpandChange` ao alternar o menu.
|
|
22
|
+
|
|
23
|
+
## Instalacao
|
|
24
|
+
|
|
25
|
+
Importe o componente (e o item, para a recursao; o footer, se for usar o rodape de
|
|
26
|
+
perfil) no consumidor standalone:
|
|
27
|
+
|
|
28
|
+
```typescript
|
|
29
|
+
import {
|
|
30
|
+
TCloudUiNavbarComponent,
|
|
31
|
+
TCloudUiNavbarItemComponent,
|
|
32
|
+
TCloudUiNavbarFooterComponent
|
|
33
|
+
} from 'tcloud-ui';
|
|
34
|
+
|
|
35
|
+
@Component({
|
|
36
|
+
selector: 'app-exemplo',
|
|
37
|
+
standalone: true,
|
|
38
|
+
imports: [TCloudUiNavbarComponent, TCloudUiNavbarItemComponent, TCloudUiNavbarFooterComponent],
|
|
39
|
+
templateUrl: './app-exemplo.component.html'
|
|
40
|
+
})
|
|
41
|
+
export class ExemploComponent {}
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Em aplicacoes NgModule, o `TCloudUiModule` ja exporta esses componentes.
|
|
45
|
+
|
|
46
|
+
## Propriedades (API)
|
|
47
|
+
|
|
48
|
+
### Inputs
|
|
49
|
+
|
|
50
|
+
| Nome | Tipo | Descricao | Valor Default |
|
|
51
|
+
|------|------|-----------|---------------|
|
|
52
|
+
| menuItems | `TCloudUiNavbarItem[]` | Itens do menu (grupo unico). Submenus sao renderizados recursivamente. | `[]` |
|
|
53
|
+
| groups | `TCloudUiNavbarGroup[]` | Grupos de itens separados por divisor. Tem precedencia sobre `menuItems`. | `[]` |
|
|
54
|
+
| isMenuExpanded | `boolean` | Menu expandido (labels visiveis) ou minimizado (so icones). | `true` |
|
|
55
|
+
| showToggle | `boolean` | Exibe o botao interno de minimizar/expandir. | `true` |
|
|
56
|
+
| logoSrc | `string?` | Caminho da imagem do logo exibido no header (tema claro). | logo TOTVS preto |
|
|
57
|
+
| logoSrcDark | `string?` | Caminho do logo para o tema escuro (`body.tc-dark`). Quando informado, o header alterna automaticamente. | logo TOTVS branco |
|
|
58
|
+
| logoAlt | `string` | Texto alternativo do logo. | `'Logo'` |
|
|
59
|
+
|
|
60
|
+
> **Logo no modo minimizado:** o header usa `overflow: hidden` com o logo em largura
|
|
61
|
+
> fixa — ao minimizar, o wordmark e **recortado** (nao reduzido), sobrando so o
|
|
62
|
+
> simbolo. Prefira um logo **horizontal com o simbolo a esquerda**.
|
|
63
|
+
|
|
64
|
+
### Slots de conteudo (content projection)
|
|
65
|
+
|
|
66
|
+
| Seletor | Descricao |
|
|
67
|
+
|---------|-----------|
|
|
68
|
+
| `[navbar-header]` | Conteudo customizado do topo (alternativa ao `logoSrc`). |
|
|
69
|
+
| `[navbar-footer]` | Conteudo do rodape fixo — tipicamente o `tcloud-ui-navbar-footer`. |
|
|
70
|
+
|
|
71
|
+
### Componente `tcloud-ui-navbar-footer`
|
|
72
|
+
|
|
73
|
+
Rodape de perfil (avatar, nome, papel e botao de sair) para projetar no slot
|
|
74
|
+
`[navbar-footer]`. Respeita o modo minimizado (mostra so o avatar).
|
|
75
|
+
|
|
76
|
+
Inputs:
|
|
77
|
+
|
|
78
|
+
| Nome | Tipo | Descricao | Valor Default |
|
|
79
|
+
|------|------|-----------|---------------|
|
|
80
|
+
| avatarSrc | `string?` | Caminho da imagem do avatar. | `undefined` |
|
|
81
|
+
| avatarAlt | `string` | Texto alternativo do avatar. | `''` |
|
|
82
|
+
| name | `string` | Nome do usuario. | `''` |
|
|
83
|
+
| role | `string` | Papel/subtitulo do usuario. | `''` |
|
|
84
|
+
| isMenuExpanded | `boolean` | Mostra nome/papel e o botao de sair. | `true` |
|
|
85
|
+
| showLogout | `boolean` | Exibe o botao de sair. | `true` |
|
|
86
|
+
| logoutTitle | `string` | Titulo/tooltip do botao de sair. | `'Sair'` |
|
|
87
|
+
|
|
88
|
+
Outputs:
|
|
89
|
+
|
|
90
|
+
| Nome | Tipo | Descricao |
|
|
91
|
+
|------|------|-----------|
|
|
92
|
+
| onLogout | `void` | Emitido ao clicar no botao de sair. |
|
|
93
|
+
|
|
94
|
+
### Outputs
|
|
95
|
+
|
|
96
|
+
| Nome | Tipo | Descricao |
|
|
97
|
+
|------|------|-----------|
|
|
98
|
+
| onItemClick | `TCloudUiNavbarItem` | Emitido ao clicar num item folha (sem submenu). |
|
|
99
|
+
| onExpandChange | `boolean` | Emitido ao alternar entre expandido/minimizado. |
|
|
100
|
+
|
|
101
|
+
### Modelo `TCloudUiNavbarItem`
|
|
102
|
+
|
|
103
|
+
| Campo | Tipo | Descricao |
|
|
104
|
+
|-------|------|-----------|
|
|
105
|
+
| label | `string` | Texto exibido (ja traduzido pelo consumidor). |
|
|
106
|
+
| icon | `string?` | Classe(s) do icone, ex.: `'fas fa-laptop'`. |
|
|
107
|
+
| link | `string?` | Rota interna (usada como `routerLink`). |
|
|
108
|
+
| queryParams | `Params \| null` | Query params aplicados junto do `routerLink`. |
|
|
109
|
+
| href | `string?` | URL externa — abre em nova aba. |
|
|
110
|
+
| submenu | `TCloudUiNavbarItem[]?` | Sub-itens (recursivos). |
|
|
111
|
+
| active | `boolean?` | Forca o realce full-width. O ativo tambem e detectado pela rota atual via `routerLinkActive` — nao fixe este campo so para reproduzir um mockup. |
|
|
112
|
+
| open | `boolean?` | Estado inicial do submenu (aberto/fechado). |
|
|
113
|
+
| enable | `boolean?` | Quando `false`, o item e ocultado. Default `true`. |
|
|
114
|
+
| badge | `string?` | Selo curto exibido ao lado do label, ex.: `'Novo'`. |
|
|
115
|
+
|
|
116
|
+
### Modelo `TCloudUiNavbarGroup`
|
|
117
|
+
|
|
118
|
+
| Campo | Tipo | Descricao |
|
|
119
|
+
|-------|------|-----------|
|
|
120
|
+
| label | `string?` | Rotulo opcional exibido como cabecalho da secao (so no modo expandido). |
|
|
121
|
+
| items | `TCloudUiNavbarItem[]` | Itens do grupo. |
|
|
122
|
+
|
|
123
|
+
## Exemplos de Uso
|
|
124
|
+
|
|
125
|
+
### Uso Basico
|
|
126
|
+
|
|
127
|
+
```html
|
|
128
|
+
<tcloud-ui-navbar [menuItems]="menuItems" (onItemClick)="go($event)"></tcloud-ui-navbar>
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
```typescript
|
|
132
|
+
import { Component } from '@angular/core';
|
|
133
|
+
import { TCloudUiNavbarComponent, TCloudUiNavbarItemComponent, TCloudUiNavbarItem } from 'tcloud-ui';
|
|
134
|
+
|
|
135
|
+
@Component({
|
|
136
|
+
selector: 'app-exemplo',
|
|
137
|
+
standalone: true,
|
|
138
|
+
imports: [TCloudUiNavbarComponent, TCloudUiNavbarItemComponent],
|
|
139
|
+
templateUrl: './app-exemplo.component.html'
|
|
140
|
+
})
|
|
141
|
+
export class AppExemploComponent {
|
|
142
|
+
menuItems: TCloudUiNavbarItem[] = [
|
|
143
|
+
{ label: 'Home', icon: 'fas fa-laptop', link: '/dashboard' },
|
|
144
|
+
{ label: 'Documentacao', icon: 'fas fa-book', href: 'https://exemplo.com' }
|
|
145
|
+
];
|
|
146
|
+
|
|
147
|
+
go(item: TCloudUiNavbarItem) {
|
|
148
|
+
console.log('clicou', item);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
### Uso Avancado (submenu recursivo)
|
|
154
|
+
|
|
155
|
+
```typescript
|
|
156
|
+
menuItems: TCloudUiNavbarItem[] = [
|
|
157
|
+
{ label: 'Home', icon: 'fas fa-laptop', link: '/dashboard', active: true },
|
|
158
|
+
{
|
|
159
|
+
label: 'IaaS',
|
|
160
|
+
icon: 'fas fa-cloud',
|
|
161
|
+
open: true,
|
|
162
|
+
submenu: [
|
|
163
|
+
{ label: 'Boas vindas', link: '/iaas/welcome' },
|
|
164
|
+
{ label: 'Meus ambientes', link: '/iaas/virtual-machines' }
|
|
165
|
+
]
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
label: 'Administracao',
|
|
169
|
+
icon: 'fas fa-cogs',
|
|
170
|
+
submenu: [
|
|
171
|
+
{
|
|
172
|
+
label: 'IAM',
|
|
173
|
+
submenu: [
|
|
174
|
+
{ label: 'Papeis de usuario', link: '/admin/iam/roles' }
|
|
175
|
+
]
|
|
176
|
+
},
|
|
177
|
+
{ label: 'Item oculto', link: '/admin/hidden', enable: false }
|
|
178
|
+
]
|
|
179
|
+
}
|
|
180
|
+
];
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
O menu monta os niveis recursivamente; itens com `submenu` alternam a exibicao dos
|
|
184
|
+
filhos ao serem clicados, e itens com `enable: false` nao aparecem.
|
|
185
|
+
|
|
186
|
+
### Grupos, badge e slots (logo + perfil)
|
|
187
|
+
|
|
188
|
+
Use `[groups]` para separar secoes por divisor, `badge` para selos e os slots
|
|
189
|
+
`[navbar-header]` / `[navbar-footer]` para projetar logo e perfil do usuario:
|
|
190
|
+
|
|
191
|
+
```html
|
|
192
|
+
<tcloud-ui-navbar [groups]="groups" [logoSrc]="'logo.svg'" logoAlt="Logo" (onItemClick)="go($event)">
|
|
193
|
+
<tcloud-ui-navbar-footer
|
|
194
|
+
navbar-footer
|
|
195
|
+
avatarSrc="avatar.png"
|
|
196
|
+
name="Simone Garcia"
|
|
197
|
+
role="Operadora"
|
|
198
|
+
(onLogout)="logout()">
|
|
199
|
+
</tcloud-ui-navbar-footer>
|
|
200
|
+
</tcloud-ui-navbar>
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
```typescript
|
|
204
|
+
import { TCloudUiNavbarGroup } from 'tcloud-ui';
|
|
205
|
+
|
|
206
|
+
groups: TCloudUiNavbarGroup[] = [
|
|
207
|
+
{
|
|
208
|
+
items: [
|
|
209
|
+
{ label: 'Pagina inicial', icon: 'fas fa-house', link: '/dashboard', active: true },
|
|
210
|
+
{ label: 'Marketplace', icon: 'fas fa-cart-shopping', badge: 'Novo', submenu: [
|
|
211
|
+
{ label: 'Agentes de IA', link: '/marketplace/ai-agents' }
|
|
212
|
+
] }
|
|
213
|
+
]
|
|
214
|
+
},
|
|
215
|
+
{
|
|
216
|
+
items: [
|
|
217
|
+
{ label: 'Configuracoes', icon: 'fas fa-gear', link: '/settings' },
|
|
218
|
+
{ label: 'Minha conta', icon: 'fas fa-user', link: '/account' }
|
|
219
|
+
]
|
|
220
|
+
}
|
|
221
|
+
];
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
Quando `[groups]` nao e informado, `[menuItems]` continua funcionando como um
|
|
225
|
+
grupo unico (backward-compat). Os slots `[navbar-header]`/`[navbar-footer]` sao
|
|
226
|
+
opcionais: ficam ocultos quando nada e projetado.
|
|
@@ -9811,11 +9811,11 @@ class TCloudUiNavbarItemComponent {
|
|
|
9811
9811
|
this.onItemClick.emit(item);
|
|
9812
9812
|
}
|
|
9813
9813
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: TCloudUiNavbarItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9814
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.17", type: TCloudUiNavbarItemComponent, isStandalone: true, selector: "tcloud-ui-navbar-item", inputs: { item: "item", isMenuExpanded: "isMenuExpanded", level: "level" }, outputs: { onItemClick: "onItemClick" }, ngImport: i0, template: "<li\n class=\"tcloud-ui-navbar-item\"\n [class.tcloud-ui-navbar-expanded]=\"isMenuExpanded\"\n [class.has-submenu]=\"hasSubmenu\"\n [class.open]=\"item.open\">\n\n <a\n class=\"tcloud-ui-navbar-item-link\"\n [class.selected]=\"item.active\"\n [routerLink]=\"hasSubmenu ? null : (item.link ?? null)\"\n routerLinkActive=\"active\"\n [queryParams]=\"item.queryParams ?? null\"\n [routerLinkActiveOptions]=\"{ exact: true }\"\n [title]=\"item.label\"\n (click)=\"handleClick($event)\">\n\n <div class=\"navbar-item-icon-container\">\n @if (item.icon) {\n <i [class]=\"item.icon\"></i>\n }\n </div>\n\n @if (isMenuExpanded) {\n <div class=\"navbar-item-label\">\n <span class=\"navbar-item-text\">{{ item.label }}</span>\n @if (hasSubmenu) {\n <i class=\"navbar-item-chevron fas\"\n [class.fa-chevron-down]=\"item.open\"\n [class.fa-chevron-right]=\"!item.open\"></i>\n }\n </div>\n }\n </a>\n\n @if (hasSubmenu && isMenuExpanded) {\n <ul class=\"tcloud-ui-navbar-submenu\" [class.open]=\"item.open\">\n @for (child of item.submenu; track $index) {\n @if (child.enable !== false) {\n <tcloud-ui-navbar-item\n [item]=\"child\"\n [isMenuExpanded]=\"isMenuExpanded\"\n [level]=\"level + 1\"\n (onItemClick)=\"bubbleClick($event)\">\n </tcloud-ui-navbar-item>\n }\n }\n </ul>\n }\n</li>\n", styles: [":host{display:block}.tcloud-ui-navbar-item{list-style:none;margin:0;padding:0}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link{align-items:center;border-radius:var(--bor-radius-4);color:var(--c-neutral-700);cursor:pointer;font-family:var(--f-family);display:flex;transition:all .2s ease;text-decoration:none}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link .navbar-item-icon-container{text-align:center;align-content:center;background-color:var(--c-neutral-50);border-radius:var(--bor-radius-4);font-size:var(--f-size-20);height:var(--size-36);width:var(--size-36);transition:all .2s ease;min-height:var(--size-36);min-width:var(--size-36);max-height:var(--size-36);max-width:var(--size-36)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link .navbar-item-label{align-items:center;display:flex;justify-content:space-between;width:100%;color:var(--c-neutral-700);font-size:var(--f-size-14);height:var(--size-36);padding-left:var(--size-8);transition:all .2s ease;min-height:var(--size-36);max-height:var(--size-36)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link .navbar-item-label .navbar-item-chevron{font-size:var(--f-size-12);padding-right:var(--size-8);transition:transform .2s ease}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link:hover,.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link:focus{color:var(--c-primary-500)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link:hover .navbar-item-icon-container,.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link:focus .navbar-item-icon-container{background-color:var(--c-neutral-200);color:var(--c-primary-500)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link.active .navbar-item-
|
|
9814
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.17", type: TCloudUiNavbarItemComponent, isStandalone: true, selector: "tcloud-ui-navbar-item", inputs: { item: "item", isMenuExpanded: "isMenuExpanded", level: "level" }, outputs: { onItemClick: "onItemClick" }, ngImport: i0, template: "<li\n class=\"tcloud-ui-navbar-item\"\n [class.tcloud-ui-navbar-expanded]=\"isMenuExpanded\"\n [class.tcloud-ui-navbar-subitem]=\"level > 0\"\n [class.has-submenu]=\"hasSubmenu\"\n [class.open]=\"item.open\">\n\n <a\n class=\"tcloud-ui-navbar-item-link\"\n [class.selected]=\"item.active\"\n [routerLink]=\"hasSubmenu ? null : (item.link ?? null)\"\n routerLinkActive=\"active\"\n [queryParams]=\"item.queryParams ?? null\"\n [routerLinkActiveOptions]=\"{ exact: true }\"\n [title]=\"item.label\"\n (click)=\"handleClick($event)\">\n\n <div class=\"navbar-item-icon-container\">\n @if (item.icon) {\n <i [class]=\"item.icon\"></i>\n }\n </div>\n\n @if (isMenuExpanded) {\n <div class=\"navbar-item-label\">\n <span class=\"navbar-item-text\">{{ item.label }}</span>\n @if (item.badge) {\n <span class=\"navbar-item-badge\">{{ item.badge }}</span>\n }\n @if (hasSubmenu) {\n <i class=\"navbar-item-chevron fas\"\n [class.fa-chevron-down]=\"item.open\"\n [class.fa-chevron-right]=\"!item.open\"></i>\n }\n </div>\n }\n </a>\n\n @if (hasSubmenu && isMenuExpanded) {\n <ul class=\"tcloud-ui-navbar-submenu\" [class.open]=\"item.open\">\n @for (child of item.submenu; track $index) {\n @if (child.enable !== false) {\n <tcloud-ui-navbar-item\n [item]=\"child\"\n [isMenuExpanded]=\"isMenuExpanded\"\n [level]=\"level + 1\"\n (onItemClick)=\"bubbleClick($event)\">\n </tcloud-ui-navbar-item>\n }\n }\n </ul>\n }\n</li>\n", styles: [":host{display:block}.tcloud-ui-navbar-item{list-style:none;margin:0;padding:0}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link{align-items:center;border-radius:var(--bor-radius-4);color:var(--c-neutral-700);cursor:pointer;font-family:var(--f-family);display:flex;transition:all .2s ease;text-decoration:none}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link .navbar-item-icon-container{text-align:center;align-content:center;background-color:var(--c-neutral-50);border-radius:var(--bor-radius-4);font-size:var(--f-size-20);height:var(--size-36);width:var(--size-36);transition:all .2s ease;min-height:var(--size-36);min-width:var(--size-36);max-height:var(--size-36);max-width:var(--size-36)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link .navbar-item-label{align-items:center;display:flex;gap:var(--size-4);justify-content:space-between;width:100%;min-width:0;color:var(--c-neutral-700);font-size:var(--f-size-14);height:var(--size-36);padding-left:var(--size-8);transition:all .2s ease;min-height:var(--size-36);max-height:var(--size-36)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link .navbar-item-label .navbar-item-text{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link .navbar-item-label .navbar-item-badge{flex:0 0 auto;background-color:var(--c-primary-500);border-radius:var(--bor-radius-4);color:var(--c-neutral-50);font-size:var(--f-size-12);font-weight:var(--f-weight-700);line-height:1;padding:var(--size-4) var(--size-8)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link .navbar-item-label .navbar-item-chevron{flex:0 0 auto;font-size:var(--f-size-12);padding-right:var(--size-8);transition:transform .2s ease}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link:hover,.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link:focus{color:var(--c-primary-500)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link:hover .navbar-item-icon-container,.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link:focus .navbar-item-icon-container{background-color:var(--c-neutral-200);color:var(--c-primary-500)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link.active,.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link.selected{background-color:var(--c-primary-300)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link.active .navbar-item-icon-container,.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link.selected .navbar-item-icon-container{background-color:transparent;color:var(--c-primary-500)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link.active .navbar-item-label,.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link.selected .navbar-item-label{color:var(--c-primary-500);font-weight:var(--f-weight-700)}.tcloud-ui-navbar-item .tcloud-ui-navbar-submenu{display:none;flex-direction:column;gap:var(--size-4);list-style:none;margin:var(--size-4) 0 0 0;padding:0 0 0 var(--size-8)}.tcloud-ui-navbar-item .tcloud-ui-navbar-submenu.open{display:flex}.tcloud-ui-navbar-item.tcloud-ui-navbar-subitem .tcloud-ui-navbar-item-link{border-left:2px solid var(--c-neutral-200);border-radius:0 var(--bor-radius-4) var(--bor-radius-4) 0}.tcloud-ui-navbar-item.tcloud-ui-navbar-subitem .tcloud-ui-navbar-item-link .navbar-item-icon-container{display:none}.tcloud-ui-navbar-item.tcloud-ui-navbar-subitem .tcloud-ui-navbar-item-link .navbar-item-label{padding-left:var(--size-12)}.tcloud-ui-navbar-item.tcloud-ui-navbar-subitem .tcloud-ui-navbar-item-link.active,.tcloud-ui-navbar-item.tcloud-ui-navbar-subitem .tcloud-ui-navbar-item-link.selected{border-left-color:var(--c-primary-500)}\n"], dependencies: [{ kind: "component", type: TCloudUiNavbarItemComponent, selector: "tcloud-ui-navbar-item", inputs: ["item", "isMenuExpanded", "level"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1$2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1$2.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }] }); }
|
|
9815
9815
|
}
|
|
9816
9816
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: TCloudUiNavbarItemComponent, decorators: [{
|
|
9817
9817
|
type: Component,
|
|
9818
|
-
args: [{ selector: 'tcloud-ui-navbar-item', standalone: true, imports: [CommonModule, RouterModule], template: "<li\n class=\"tcloud-ui-navbar-item\"\n [class.tcloud-ui-navbar-expanded]=\"isMenuExpanded\"\n [class.has-submenu]=\"hasSubmenu\"\n [class.open]=\"item.open\">\n\n <a\n class=\"tcloud-ui-navbar-item-link\"\n [class.selected]=\"item.active\"\n [routerLink]=\"hasSubmenu ? null : (item.link ?? null)\"\n routerLinkActive=\"active\"\n [queryParams]=\"item.queryParams ?? null\"\n [routerLinkActiveOptions]=\"{ exact: true }\"\n [title]=\"item.label\"\n (click)=\"handleClick($event)\">\n\n <div class=\"navbar-item-icon-container\">\n @if (item.icon) {\n <i [class]=\"item.icon\"></i>\n }\n </div>\n\n @if (isMenuExpanded) {\n <div class=\"navbar-item-label\">\n <span class=\"navbar-item-text\">{{ item.label }}</span>\n @if (hasSubmenu) {\n <i class=\"navbar-item-chevron fas\"\n [class.fa-chevron-down]=\"item.open\"\n [class.fa-chevron-right]=\"!item.open\"></i>\n }\n </div>\n }\n </a>\n\n @if (hasSubmenu && isMenuExpanded) {\n <ul class=\"tcloud-ui-navbar-submenu\" [class.open]=\"item.open\">\n @for (child of item.submenu; track $index) {\n @if (child.enable !== false) {\n <tcloud-ui-navbar-item\n [item]=\"child\"\n [isMenuExpanded]=\"isMenuExpanded\"\n [level]=\"level + 1\"\n (onItemClick)=\"bubbleClick($event)\">\n </tcloud-ui-navbar-item>\n }\n }\n </ul>\n }\n</li>\n", styles: [":host{display:block}.tcloud-ui-navbar-item{list-style:none;margin:0;padding:0}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link{align-items:center;border-radius:var(--bor-radius-4);color:var(--c-neutral-700);cursor:pointer;font-family:var(--f-family);display:flex;transition:all .2s ease;text-decoration:none}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link .navbar-item-icon-container{text-align:center;align-content:center;background-color:var(--c-neutral-50);border-radius:var(--bor-radius-4);font-size:var(--f-size-20);height:var(--size-36);width:var(--size-36);transition:all .2s ease;min-height:var(--size-36);min-width:var(--size-36);max-height:var(--size-36);max-width:var(--size-36)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link .navbar-item-label{align-items:center;display:flex;justify-content:space-between;width:100%;color:var(--c-neutral-700);font-size:var(--f-size-14);height:var(--size-36);padding-left:var(--size-8);transition:all .2s ease;min-height:var(--size-36);max-height:var(--size-36)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link .navbar-item-label .navbar-item-chevron{font-size:var(--f-size-12);padding-right:var(--size-8);transition:transform .2s ease}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link:hover,.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link:focus{color:var(--c-primary-500)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link:hover .navbar-item-icon-container,.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link:focus .navbar-item-icon-container{background-color:var(--c-neutral-200);color:var(--c-primary-500)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link.active .navbar-item-
|
|
9818
|
+
args: [{ selector: 'tcloud-ui-navbar-item', standalone: true, imports: [CommonModule, RouterModule], template: "<li\n class=\"tcloud-ui-navbar-item\"\n [class.tcloud-ui-navbar-expanded]=\"isMenuExpanded\"\n [class.tcloud-ui-navbar-subitem]=\"level > 0\"\n [class.has-submenu]=\"hasSubmenu\"\n [class.open]=\"item.open\">\n\n <a\n class=\"tcloud-ui-navbar-item-link\"\n [class.selected]=\"item.active\"\n [routerLink]=\"hasSubmenu ? null : (item.link ?? null)\"\n routerLinkActive=\"active\"\n [queryParams]=\"item.queryParams ?? null\"\n [routerLinkActiveOptions]=\"{ exact: true }\"\n [title]=\"item.label\"\n (click)=\"handleClick($event)\">\n\n <div class=\"navbar-item-icon-container\">\n @if (item.icon) {\n <i [class]=\"item.icon\"></i>\n }\n </div>\n\n @if (isMenuExpanded) {\n <div class=\"navbar-item-label\">\n <span class=\"navbar-item-text\">{{ item.label }}</span>\n @if (item.badge) {\n <span class=\"navbar-item-badge\">{{ item.badge }}</span>\n }\n @if (hasSubmenu) {\n <i class=\"navbar-item-chevron fas\"\n [class.fa-chevron-down]=\"item.open\"\n [class.fa-chevron-right]=\"!item.open\"></i>\n }\n </div>\n }\n </a>\n\n @if (hasSubmenu && isMenuExpanded) {\n <ul class=\"tcloud-ui-navbar-submenu\" [class.open]=\"item.open\">\n @for (child of item.submenu; track $index) {\n @if (child.enable !== false) {\n <tcloud-ui-navbar-item\n [item]=\"child\"\n [isMenuExpanded]=\"isMenuExpanded\"\n [level]=\"level + 1\"\n (onItemClick)=\"bubbleClick($event)\">\n </tcloud-ui-navbar-item>\n }\n }\n </ul>\n }\n</li>\n", styles: [":host{display:block}.tcloud-ui-navbar-item{list-style:none;margin:0;padding:0}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link{align-items:center;border-radius:var(--bor-radius-4);color:var(--c-neutral-700);cursor:pointer;font-family:var(--f-family);display:flex;transition:all .2s ease;text-decoration:none}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link .navbar-item-icon-container{text-align:center;align-content:center;background-color:var(--c-neutral-50);border-radius:var(--bor-radius-4);font-size:var(--f-size-20);height:var(--size-36);width:var(--size-36);transition:all .2s ease;min-height:var(--size-36);min-width:var(--size-36);max-height:var(--size-36);max-width:var(--size-36)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link .navbar-item-label{align-items:center;display:flex;gap:var(--size-4);justify-content:space-between;width:100%;min-width:0;color:var(--c-neutral-700);font-size:var(--f-size-14);height:var(--size-36);padding-left:var(--size-8);transition:all .2s ease;min-height:var(--size-36);max-height:var(--size-36)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link .navbar-item-label .navbar-item-text{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link .navbar-item-label .navbar-item-badge{flex:0 0 auto;background-color:var(--c-primary-500);border-radius:var(--bor-radius-4);color:var(--c-neutral-50);font-size:var(--f-size-12);font-weight:var(--f-weight-700);line-height:1;padding:var(--size-4) var(--size-8)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link .navbar-item-label .navbar-item-chevron{flex:0 0 auto;font-size:var(--f-size-12);padding-right:var(--size-8);transition:transform .2s ease}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link:hover,.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link:focus{color:var(--c-primary-500)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link:hover .navbar-item-icon-container,.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link:focus .navbar-item-icon-container{background-color:var(--c-neutral-200);color:var(--c-primary-500)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link.active,.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link.selected{background-color:var(--c-primary-300)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link.active .navbar-item-icon-container,.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link.selected .navbar-item-icon-container{background-color:transparent;color:var(--c-primary-500)}.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link.active .navbar-item-label,.tcloud-ui-navbar-item .tcloud-ui-navbar-item-link.selected .navbar-item-label{color:var(--c-primary-500);font-weight:var(--f-weight-700)}.tcloud-ui-navbar-item .tcloud-ui-navbar-submenu{display:none;flex-direction:column;gap:var(--size-4);list-style:none;margin:var(--size-4) 0 0 0;padding:0 0 0 var(--size-8)}.tcloud-ui-navbar-item .tcloud-ui-navbar-submenu.open{display:flex}.tcloud-ui-navbar-item.tcloud-ui-navbar-subitem .tcloud-ui-navbar-item-link{border-left:2px solid var(--c-neutral-200);border-radius:0 var(--bor-radius-4) var(--bor-radius-4) 0}.tcloud-ui-navbar-item.tcloud-ui-navbar-subitem .tcloud-ui-navbar-item-link .navbar-item-icon-container{display:none}.tcloud-ui-navbar-item.tcloud-ui-navbar-subitem .tcloud-ui-navbar-item-link .navbar-item-label{padding-left:var(--size-12)}.tcloud-ui-navbar-item.tcloud-ui-navbar-subitem .tcloud-ui-navbar-item-link.active,.tcloud-ui-navbar-item.tcloud-ui-navbar-subitem .tcloud-ui-navbar-item-link.selected{border-left-color:var(--c-primary-500)}\n"] }]
|
|
9819
9819
|
}], propDecorators: { item: [{
|
|
9820
9820
|
type: Input
|
|
9821
9821
|
}], isMenuExpanded: [{
|
|
@@ -9828,33 +9828,112 @@ class TCloudUiNavbarComponent {
|
|
|
9828
9828
|
constructor() {
|
|
9829
9829
|
/** Itens do menu (data-driven). Submenu é renderizado recursivamente. */
|
|
9830
9830
|
this.menuItems = [];
|
|
9831
|
+
/**
|
|
9832
|
+
* Grupos de itens separados por divisor. Quando informado, tem precedência
|
|
9833
|
+
* sobre `menuItems`. Use para reproduzir as seções do layout (primária,
|
|
9834
|
+
* secundária, etc.).
|
|
9835
|
+
*/
|
|
9836
|
+
this.groups = [];
|
|
9831
9837
|
/** Menu expandido (labels visíveis) x minimizado (só ícones). */
|
|
9832
9838
|
this.isMenuExpanded = true;
|
|
9833
9839
|
/** Exibe o botão interno de minimizar/expandir. */
|
|
9834
9840
|
this.showToggle = true;
|
|
9841
|
+
/** Caminho da imagem do logo exibido no header (tema claro). */
|
|
9842
|
+
this.logoSrc = 'https://tcloud.totvs.com.br/plataforma/assets/img/totvs-logo-black.svg';
|
|
9843
|
+
/**
|
|
9844
|
+
* Caminho da imagem do logo para o tema escuro (`body.tc-dark`). Quando
|
|
9845
|
+
* informado, o header alterna automaticamente entre `logoSrc` (claro) e
|
|
9846
|
+
* `logoSrcDark` (escuro).
|
|
9847
|
+
*/
|
|
9848
|
+
this.logoSrcDark = 'https://tcloud.totvs.com.br/plataforma/assets/img/totvs-logo-white.svg';
|
|
9849
|
+
/** Texto alternativo do logo. */
|
|
9850
|
+
this.logoAlt = 'Logo';
|
|
9835
9851
|
/** Emitido quando o menu é expandido/minimizado. */
|
|
9836
9852
|
this.onExpandChange = output();
|
|
9837
9853
|
/** Emitido ao clicar num item folha (sem submenu). */
|
|
9838
9854
|
this.onItemClick = output();
|
|
9839
9855
|
}
|
|
9856
|
+
/**
|
|
9857
|
+
* Grupos efetivamente renderizados: usa `groups` quando informado; caso
|
|
9858
|
+
* contrário embrulha `menuItems` num único grupo (backward-compat).
|
|
9859
|
+
*/
|
|
9860
|
+
get resolvedGroups() {
|
|
9861
|
+
if (this.groups.length > 0) {
|
|
9862
|
+
return this.groups;
|
|
9863
|
+
}
|
|
9864
|
+
return this.menuItems.length > 0 ? [{ items: this.menuItems }] : [];
|
|
9865
|
+
}
|
|
9840
9866
|
handleExpand() {
|
|
9841
9867
|
this.isMenuExpanded = !this.isMenuExpanded;
|
|
9842
9868
|
this.onExpandChange.emit(this.isMenuExpanded);
|
|
9843
9869
|
}
|
|
9844
9870
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: TCloudUiNavbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9845
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.17", type: TCloudUiNavbarComponent, isStandalone: true, selector: "tcloud-ui-navbar", inputs: { menuItems: "menuItems", isMenuExpanded: "isMenuExpanded", showToggle: "showToggle" }, outputs: { onExpandChange: "onExpandChange", onItemClick: "onItemClick" }, ngImport: i0, template: "<nav class=\"tcloud-ui-navbar\">\n <
|
|
9871
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.17", type: TCloudUiNavbarComponent, isStandalone: true, selector: "tcloud-ui-navbar", inputs: { menuItems: "menuItems", groups: "groups", isMenuExpanded: "isMenuExpanded", showToggle: "showToggle", logoSrc: "logoSrc", logoSrcDark: "logoSrcDark", logoAlt: "logoAlt" }, outputs: { onExpandChange: "onExpandChange", onItemClick: "onItemClick" }, ngImport: i0, template: "<nav class=\"tcloud-ui-navbar\" [class.tcloud-ui-navbar-expanded]=\"isMenuExpanded\">\n\n <!-- Header (logo): via [logoSrc]/[logoSrcDark] ou conte\u00FAdo em [navbar-header]. -->\n <div class=\"tcloud-ui-navbar-header\">\n @if (logoSrc) {\n <img class=\"tcloud-ui-navbar-logo\"\n [class.tcloud-ui-navbar-logo--light]=\"!!logoSrcDark\"\n [src]=\"logoSrc\" [alt]=\"logoAlt\" />\n }\n @if (logoSrcDark) {\n <img class=\"tcloud-ui-navbar-logo tcloud-ui-navbar-logo--dark\"\n [src]=\"logoSrcDark\" [alt]=\"logoAlt\" />\n }\n <ng-content select=\"[navbar-header]\"></ng-content>\n </div>\n\n <!-- Conte\u00FAdo rol\u00E1vel: grupos separados por divisor + toggle de minimizar. -->\n <div class=\"tcloud-ui-navbar-content\">\n\n\n @if (showToggle) {\n <ul class=\"tcloud-ui-navbar-list tcloud-ui-navbar-toggle-list\">\n <li class=\"tcloud-ui-navbar-item tcloud-ui-navbar-toggle\">\n <a class=\"tcloud-ui-navbar-item-link\"\n (click)=\"handleExpand()\"\n [title]=\"isMenuExpanded ? 'Minimizar' : 'Expandir'\">\n <div class=\"navbar-item-icon-container\">\n <i class=\"fa-light\"\n [class.fa-arrow-left-to-line]=\"isMenuExpanded\"\n [class.fa-arrow-right-to-line]=\"!isMenuExpanded\"></i>\n </div>\n @if (isMenuExpanded) {\n <div class=\"navbar-item-label\">Minimizar</div>\n }\n </a>\n </li>\n </ul>\n }\n\n\n @for (group of resolvedGroups; track $index; let last = $last) {\n <ul class=\"tcloud-ui-navbar-list\">\n @if (group.label && isMenuExpanded) {\n <li class=\"tcloud-ui-navbar-group-label\">{{ group.label }}</li>\n }\n @for (item of group.items; track $index) {\n @if (item.enable !== false) {\n <tcloud-ui-navbar-item\n [item]=\"item\"\n [isMenuExpanded]=\"isMenuExpanded\"\n (onItemClick)=\"onItemClick.emit($event)\">\n </tcloud-ui-navbar-item>\n }\n }\n </ul>\n\n @if (!last || showToggle) {\n <hr class=\"tcloud-ui-navbar-divider\" />\n }\n }\n\n \n </div>\n\n <!-- Footer (perfil/logout) \u2014 projetado pelo consumidor via [navbar-footer]. -->\n <div class=\"tcloud-ui-navbar-footer\">\n <ng-content select=\"[navbar-footer]\"></ng-content>\n </div>\n</nav>\n", styles: [":host{display:block;height:100%}.tcloud-ui-navbar{box-sizing:border-box;color:var(--c-neutral-700);display:flex;flex-direction:column;height:100%;margin:var(--size-0);padding:var(--size-0);transition:width .2s ease;width:var(--size-48)}.tcloud-ui-navbar.tcloud-ui-navbar-expanded{width:15.625rem}.tcloud-ui-navbar .tcloud-ui-navbar-header{flex:0 0 auto;align-items:center;display:flex;min-height:var(--size-56, 56px);overflow:hidden;padding:var(--size-8)}.tcloud-ui-navbar .tcloud-ui-navbar-header:empty{display:none}.tcloud-ui-navbar .tcloud-ui-navbar-header .tcloud-ui-navbar-logo{display:block;flex:0 0 auto;width:8.5rem;height:auto;transition:width .2s ease}.tcloud-ui-navbar .tcloud-ui-navbar-header .tcloud-ui-navbar-logo--dark{display:none}:host-context(.tc-dark) .tcloud-ui-navbar .tcloud-ui-navbar-logo--light{display:none}:host-context(.tc-dark) .tcloud-ui-navbar .tcloud-ui-navbar-logo--dark{display:block}.tcloud-ui-navbar .tcloud-ui-navbar-content{display:flex;flex:1 1 auto;flex-direction:column;gap:var(--size-8);overflow:hidden auto;padding:var(--size-8)}.tcloud-ui-navbar .tcloud-ui-navbar-content::-webkit-scrollbar{display:none}.tcloud-ui-navbar .tcloud-ui-navbar-list{display:flex;flex-direction:column;gap:var(--size-8);list-style:none;margin:var(--size-0);padding:var(--size-0)}.tcloud-ui-navbar .tcloud-ui-navbar-group-label{color:var(--c-neutral-500);font-family:var(--f-family);font-size:var(--f-size-12);font-weight:var(--f-weight-700);padding:0 var(--size-8);text-transform:uppercase}.tcloud-ui-navbar .tcloud-ui-navbar-divider{border:0;border-top:1px solid var(--c-neutral-200);margin:var(--size-0);width:100%}.tcloud-ui-navbar .tcloud-ui-navbar-toggle{list-style:none;margin:0;padding:0}.tcloud-ui-navbar .tcloud-ui-navbar-toggle .tcloud-ui-navbar-item-link{align-items:center;border-radius:var(--bor-radius-4);color:var(--c-neutral-700);cursor:pointer;display:flex;font-family:var(--f-family);text-decoration:none;transition:all .2s ease}.tcloud-ui-navbar .tcloud-ui-navbar-toggle .tcloud-ui-navbar-item-link .navbar-item-icon-container{align-content:center;background-color:var(--c-neutral-50);border-radius:var(--bor-radius-4);font-size:var(--f-size-20);height:var(--size-36);width:var(--size-36);text-align:center;transition:all .2s ease;min-height:var(--size-36);min-width:var(--size-36);max-height:var(--size-36);max-width:var(--size-36)}.tcloud-ui-navbar .tcloud-ui-navbar-toggle .tcloud-ui-navbar-item-link .navbar-item-label{align-items:center;display:flex;color:var(--c-neutral-700);font-size:var(--f-size-14);height:var(--size-36);padding-left:var(--size-8);min-height:var(--size-36);max-height:var(--size-36)}.tcloud-ui-navbar .tcloud-ui-navbar-toggle .tcloud-ui-navbar-item-link:hover,.tcloud-ui-navbar .tcloud-ui-navbar-toggle .tcloud-ui-navbar-item-link:focus{color:var(--c-primary-500)}.tcloud-ui-navbar .tcloud-ui-navbar-toggle .tcloud-ui-navbar-item-link:hover .navbar-item-icon-container,.tcloud-ui-navbar .tcloud-ui-navbar-toggle .tcloud-ui-navbar-item-link:focus .navbar-item-icon-container{background-color:var(--c-neutral-200);color:var(--c-primary-500)}.tcloud-ui-navbar .tcloud-ui-navbar-footer{flex:0 0 auto;border-top:1px solid var(--c-neutral-200);padding:var(--size-8)}.tcloud-ui-navbar .tcloud-ui-navbar-footer:empty{display:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: TCloudUiNavbarItemComponent, selector: "tcloud-ui-navbar-item", inputs: ["item", "isMenuExpanded", "level"], outputs: ["onItemClick"] }] }); }
|
|
9846
9872
|
}
|
|
9847
9873
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: TCloudUiNavbarComponent, decorators: [{
|
|
9848
9874
|
type: Component,
|
|
9849
|
-
args: [{ selector: 'tcloud-ui-navbar', standalone: true, imports: [CommonModule, TCloudUiNavbarItemComponent], template: "<nav class=\"tcloud-ui-navbar\">\n <
|
|
9875
|
+
args: [{ selector: 'tcloud-ui-navbar', standalone: true, imports: [CommonModule, TCloudUiNavbarItemComponent], template: "<nav class=\"tcloud-ui-navbar\" [class.tcloud-ui-navbar-expanded]=\"isMenuExpanded\">\n\n <!-- Header (logo): via [logoSrc]/[logoSrcDark] ou conte\u00FAdo em [navbar-header]. -->\n <div class=\"tcloud-ui-navbar-header\">\n @if (logoSrc) {\n <img class=\"tcloud-ui-navbar-logo\"\n [class.tcloud-ui-navbar-logo--light]=\"!!logoSrcDark\"\n [src]=\"logoSrc\" [alt]=\"logoAlt\" />\n }\n @if (logoSrcDark) {\n <img class=\"tcloud-ui-navbar-logo tcloud-ui-navbar-logo--dark\"\n [src]=\"logoSrcDark\" [alt]=\"logoAlt\" />\n }\n <ng-content select=\"[navbar-header]\"></ng-content>\n </div>\n\n <!-- Conte\u00FAdo rol\u00E1vel: grupos separados por divisor + toggle de minimizar. -->\n <div class=\"tcloud-ui-navbar-content\">\n\n\n @if (showToggle) {\n <ul class=\"tcloud-ui-navbar-list tcloud-ui-navbar-toggle-list\">\n <li class=\"tcloud-ui-navbar-item tcloud-ui-navbar-toggle\">\n <a class=\"tcloud-ui-navbar-item-link\"\n (click)=\"handleExpand()\"\n [title]=\"isMenuExpanded ? 'Minimizar' : 'Expandir'\">\n <div class=\"navbar-item-icon-container\">\n <i class=\"fa-light\"\n [class.fa-arrow-left-to-line]=\"isMenuExpanded\"\n [class.fa-arrow-right-to-line]=\"!isMenuExpanded\"></i>\n </div>\n @if (isMenuExpanded) {\n <div class=\"navbar-item-label\">Minimizar</div>\n }\n </a>\n </li>\n </ul>\n }\n\n\n @for (group of resolvedGroups; track $index; let last = $last) {\n <ul class=\"tcloud-ui-navbar-list\">\n @if (group.label && isMenuExpanded) {\n <li class=\"tcloud-ui-navbar-group-label\">{{ group.label }}</li>\n }\n @for (item of group.items; track $index) {\n @if (item.enable !== false) {\n <tcloud-ui-navbar-item\n [item]=\"item\"\n [isMenuExpanded]=\"isMenuExpanded\"\n (onItemClick)=\"onItemClick.emit($event)\">\n </tcloud-ui-navbar-item>\n }\n }\n </ul>\n\n @if (!last || showToggle) {\n <hr class=\"tcloud-ui-navbar-divider\" />\n }\n }\n\n \n </div>\n\n <!-- Footer (perfil/logout) \u2014 projetado pelo consumidor via [navbar-footer]. -->\n <div class=\"tcloud-ui-navbar-footer\">\n <ng-content select=\"[navbar-footer]\"></ng-content>\n </div>\n</nav>\n", styles: [":host{display:block;height:100%}.tcloud-ui-navbar{box-sizing:border-box;color:var(--c-neutral-700);display:flex;flex-direction:column;height:100%;margin:var(--size-0);padding:var(--size-0);transition:width .2s ease;width:var(--size-48)}.tcloud-ui-navbar.tcloud-ui-navbar-expanded{width:15.625rem}.tcloud-ui-navbar .tcloud-ui-navbar-header{flex:0 0 auto;align-items:center;display:flex;min-height:var(--size-56, 56px);overflow:hidden;padding:var(--size-8)}.tcloud-ui-navbar .tcloud-ui-navbar-header:empty{display:none}.tcloud-ui-navbar .tcloud-ui-navbar-header .tcloud-ui-navbar-logo{display:block;flex:0 0 auto;width:8.5rem;height:auto;transition:width .2s ease}.tcloud-ui-navbar .tcloud-ui-navbar-header .tcloud-ui-navbar-logo--dark{display:none}:host-context(.tc-dark) .tcloud-ui-navbar .tcloud-ui-navbar-logo--light{display:none}:host-context(.tc-dark) .tcloud-ui-navbar .tcloud-ui-navbar-logo--dark{display:block}.tcloud-ui-navbar .tcloud-ui-navbar-content{display:flex;flex:1 1 auto;flex-direction:column;gap:var(--size-8);overflow:hidden auto;padding:var(--size-8)}.tcloud-ui-navbar .tcloud-ui-navbar-content::-webkit-scrollbar{display:none}.tcloud-ui-navbar .tcloud-ui-navbar-list{display:flex;flex-direction:column;gap:var(--size-8);list-style:none;margin:var(--size-0);padding:var(--size-0)}.tcloud-ui-navbar .tcloud-ui-navbar-group-label{color:var(--c-neutral-500);font-family:var(--f-family);font-size:var(--f-size-12);font-weight:var(--f-weight-700);padding:0 var(--size-8);text-transform:uppercase}.tcloud-ui-navbar .tcloud-ui-navbar-divider{border:0;border-top:1px solid var(--c-neutral-200);margin:var(--size-0);width:100%}.tcloud-ui-navbar .tcloud-ui-navbar-toggle{list-style:none;margin:0;padding:0}.tcloud-ui-navbar .tcloud-ui-navbar-toggle .tcloud-ui-navbar-item-link{align-items:center;border-radius:var(--bor-radius-4);color:var(--c-neutral-700);cursor:pointer;display:flex;font-family:var(--f-family);text-decoration:none;transition:all .2s ease}.tcloud-ui-navbar .tcloud-ui-navbar-toggle .tcloud-ui-navbar-item-link .navbar-item-icon-container{align-content:center;background-color:var(--c-neutral-50);border-radius:var(--bor-radius-4);font-size:var(--f-size-20);height:var(--size-36);width:var(--size-36);text-align:center;transition:all .2s ease;min-height:var(--size-36);min-width:var(--size-36);max-height:var(--size-36);max-width:var(--size-36)}.tcloud-ui-navbar .tcloud-ui-navbar-toggle .tcloud-ui-navbar-item-link .navbar-item-label{align-items:center;display:flex;color:var(--c-neutral-700);font-size:var(--f-size-14);height:var(--size-36);padding-left:var(--size-8);min-height:var(--size-36);max-height:var(--size-36)}.tcloud-ui-navbar .tcloud-ui-navbar-toggle .tcloud-ui-navbar-item-link:hover,.tcloud-ui-navbar .tcloud-ui-navbar-toggle .tcloud-ui-navbar-item-link:focus{color:var(--c-primary-500)}.tcloud-ui-navbar .tcloud-ui-navbar-toggle .tcloud-ui-navbar-item-link:hover .navbar-item-icon-container,.tcloud-ui-navbar .tcloud-ui-navbar-toggle .tcloud-ui-navbar-item-link:focus .navbar-item-icon-container{background-color:var(--c-neutral-200);color:var(--c-primary-500)}.tcloud-ui-navbar .tcloud-ui-navbar-footer{flex:0 0 auto;border-top:1px solid var(--c-neutral-200);padding:var(--size-8)}.tcloud-ui-navbar .tcloud-ui-navbar-footer:empty{display:none}\n"] }]
|
|
9850
9876
|
}], propDecorators: { menuItems: [{
|
|
9851
9877
|
type: Input
|
|
9878
|
+
}], groups: [{
|
|
9879
|
+
type: Input
|
|
9852
9880
|
}], isMenuExpanded: [{
|
|
9853
9881
|
type: Input
|
|
9854
9882
|
}], showToggle: [{
|
|
9855
9883
|
type: Input
|
|
9884
|
+
}], logoSrc: [{
|
|
9885
|
+
type: Input
|
|
9886
|
+
}], logoSrcDark: [{
|
|
9887
|
+
type: Input
|
|
9888
|
+
}], logoAlt: [{
|
|
9889
|
+
type: Input
|
|
9856
9890
|
}], onExpandChange: [{ type: i0.Output, args: ["onExpandChange"] }], onItemClick: [{ type: i0.Output, args: ["onItemClick"] }] } });
|
|
9857
9891
|
|
|
9892
|
+
/**
|
|
9893
|
+
* Rodapé de perfil do `tcloud-ui-navbar`: avatar, nome, papel e botão de sair.
|
|
9894
|
+
*
|
|
9895
|
+
* Projetado no slot `[navbar-footer]` do navbar. Respeita o modo minimizado
|
|
9896
|
+
* (`isMenuExpanded = false`), quando só o avatar é exibido.
|
|
9897
|
+
*/
|
|
9898
|
+
class TCloudUiNavbarFooterComponent {
|
|
9899
|
+
constructor() {
|
|
9900
|
+
/** Texto alternativo do avatar. */
|
|
9901
|
+
this.avatarAlt = '';
|
|
9902
|
+
/** Nome do usuário. */
|
|
9903
|
+
this.name = '';
|
|
9904
|
+
/** Papel/subtítulo do usuário (ex.: 'Operadora'). */
|
|
9905
|
+
this.role = '';
|
|
9906
|
+
/** Menu expandido: mostra nome/papel e o botão de sair. */
|
|
9907
|
+
this.isMenuExpanded = true;
|
|
9908
|
+
/** Exibe o botão de sair. */
|
|
9909
|
+
this.showLogout = true;
|
|
9910
|
+
/** Título/tooltip do botão de sair. */
|
|
9911
|
+
this.logoutTitle = 'Sair';
|
|
9912
|
+
/** Emitido ao clicar no botão de sair. */
|
|
9913
|
+
this.onLogout = output();
|
|
9914
|
+
}
|
|
9915
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: TCloudUiNavbarFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9916
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.17", type: TCloudUiNavbarFooterComponent, isStandalone: true, selector: "tcloud-ui-navbar-footer", inputs: { avatarSrc: "avatarSrc", avatarAlt: "avatarAlt", name: "name", role: "role", isMenuExpanded: "isMenuExpanded", showLogout: "showLogout", logoutTitle: "logoutTitle" }, outputs: { onLogout: "onLogout" }, ngImport: i0, template: "@if (avatarSrc) {\n <img class=\"tcloud-ui-navbar-footer-avatar\" [src]=\"avatarSrc\" [alt]=\"avatarAlt\" />\n}\n\n@if (isMenuExpanded) {\n <div class=\"tcloud-ui-navbar-footer-info\">\n <strong>{{ name }}</strong>\n <span>{{ role }}</span>\n </div>\n\n @if (showLogout) {\n <button type=\"button\"\n class=\"tcloud-ui-navbar-footer-logout\"\n [title]=\"logoutTitle\"\n (click)=\"onLogout.emit()\">\n <i class=\"fas fa-arrow-right-from-bracket\"></i>\n </button>\n }\n}\n", styles: [":host{align-items:center;display:flex;font-family:var(--f-family);gap:var(--size-8);width:100%}.tcloud-ui-navbar-footer-avatar{border-radius:50%;flex:0 0 auto;height:var(--size-36);width:var(--size-36);object-fit:cover}.tcloud-ui-navbar-footer-info{display:flex;flex:1 1 auto;flex-direction:column;min-width:0}.tcloud-ui-navbar-footer-info strong{color:var(--c-neutral-700);font-size:var(--f-size-14);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tcloud-ui-navbar-footer-info span{color:var(--c-neutral-500);font-size:var(--f-size-12);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tcloud-ui-navbar-footer-logout{background:transparent;border:0;color:var(--c-danger-500);cursor:pointer;flex:0 0 auto;font-size:var(--f-size-20);padding:var(--size-4);transition:color .2s ease}.tcloud-ui-navbar-footer-logout:hover,.tcloud-ui-navbar-footer-logout:focus{color:var(--c-danger-400)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
|
|
9917
|
+
}
|
|
9918
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImport: i0, type: TCloudUiNavbarFooterComponent, decorators: [{
|
|
9919
|
+
type: Component,
|
|
9920
|
+
args: [{ selector: 'tcloud-ui-navbar-footer', standalone: true, imports: [CommonModule], template: "@if (avatarSrc) {\n <img class=\"tcloud-ui-navbar-footer-avatar\" [src]=\"avatarSrc\" [alt]=\"avatarAlt\" />\n}\n\n@if (isMenuExpanded) {\n <div class=\"tcloud-ui-navbar-footer-info\">\n <strong>{{ name }}</strong>\n <span>{{ role }}</span>\n </div>\n\n @if (showLogout) {\n <button type=\"button\"\n class=\"tcloud-ui-navbar-footer-logout\"\n [title]=\"logoutTitle\"\n (click)=\"onLogout.emit()\">\n <i class=\"fas fa-arrow-right-from-bracket\"></i>\n </button>\n }\n}\n", styles: [":host{align-items:center;display:flex;font-family:var(--f-family);gap:var(--size-8);width:100%}.tcloud-ui-navbar-footer-avatar{border-radius:50%;flex:0 0 auto;height:var(--size-36);width:var(--size-36);object-fit:cover}.tcloud-ui-navbar-footer-info{display:flex;flex:1 1 auto;flex-direction:column;min-width:0}.tcloud-ui-navbar-footer-info strong{color:var(--c-neutral-700);font-size:var(--f-size-14);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tcloud-ui-navbar-footer-info span{color:var(--c-neutral-500);font-size:var(--f-size-12);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tcloud-ui-navbar-footer-logout{background:transparent;border:0;color:var(--c-danger-500);cursor:pointer;flex:0 0 auto;font-size:var(--f-size-20);padding:var(--size-4);transition:color .2s ease}.tcloud-ui-navbar-footer-logout:hover,.tcloud-ui-navbar-footer-logout:focus{color:var(--c-danger-400)}\n"] }]
|
|
9921
|
+
}], propDecorators: { avatarSrc: [{
|
|
9922
|
+
type: Input
|
|
9923
|
+
}], avatarAlt: [{
|
|
9924
|
+
type: Input
|
|
9925
|
+
}], name: [{
|
|
9926
|
+
type: Input
|
|
9927
|
+
}], role: [{
|
|
9928
|
+
type: Input
|
|
9929
|
+
}], isMenuExpanded: [{
|
|
9930
|
+
type: Input
|
|
9931
|
+
}], showLogout: [{
|
|
9932
|
+
type: Input
|
|
9933
|
+
}], logoutTitle: [{
|
|
9934
|
+
type: Input
|
|
9935
|
+
}], onLogout: [{ type: i0.Output, args: ["onLogout"] }] } });
|
|
9936
|
+
|
|
9858
9937
|
class TCloudUiTabGroupComponent {
|
|
9859
9938
|
constructor() {
|
|
9860
9939
|
this.isCarouselOverflowed = false;
|
|
@@ -10492,6 +10571,7 @@ const COMPONENTS = [
|
|
|
10492
10571
|
TCloudUiSubNavbarItemComponent,
|
|
10493
10572
|
TCloudUiNavbarComponent,
|
|
10494
10573
|
TCloudUiNavbarItemComponent,
|
|
10574
|
+
TCloudUiNavbarFooterComponent,
|
|
10495
10575
|
TCloudUiTabGroupComponent,
|
|
10496
10576
|
TCloudUiTabItemComponent,
|
|
10497
10577
|
TCloudUiWizardStepsComponent,
|
|
@@ -10631,6 +10711,7 @@ class TCloudUiModule {
|
|
|
10631
10711
|
TCloudUiSubNavbarItemComponent,
|
|
10632
10712
|
TCloudUiNavbarComponent,
|
|
10633
10713
|
TCloudUiNavbarItemComponent,
|
|
10714
|
+
TCloudUiNavbarFooterComponent,
|
|
10634
10715
|
TCloudUiTabGroupComponent,
|
|
10635
10716
|
TCloudUiTabItemComponent,
|
|
10636
10717
|
TCloudUiWizardStepsComponent,
|
|
@@ -10732,6 +10813,7 @@ class TCloudUiModule {
|
|
|
10732
10813
|
TCloudUiSubNavbarItemComponent,
|
|
10733
10814
|
TCloudUiNavbarComponent,
|
|
10734
10815
|
TCloudUiNavbarItemComponent,
|
|
10816
|
+
TCloudUiNavbarFooterComponent,
|
|
10735
10817
|
TCloudUiTabGroupComponent,
|
|
10736
10818
|
TCloudUiTabItemComponent,
|
|
10737
10819
|
TCloudUiWizardStepsComponent,
|
|
@@ -10807,6 +10889,7 @@ class TCloudUiModule {
|
|
|
10807
10889
|
TCloudUiSubNavbarItemComponent,
|
|
10808
10890
|
TCloudUiNavbarComponent,
|
|
10809
10891
|
TCloudUiNavbarItemComponent,
|
|
10892
|
+
TCloudUiNavbarFooterComponent,
|
|
10810
10893
|
TCloudUiTabItemComponent,
|
|
10811
10894
|
TCloudUiBreadcrumbComponent,
|
|
10812
10895
|
TCloudUiSearchInputComponent,
|
|
@@ -12822,5 +12905,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.17", ngImpo
|
|
|
12822
12905
|
* Generated bundle index. Do not edit.
|
|
12823
12906
|
*/
|
|
12824
12907
|
|
|
12825
|
-
export { AcceptedFileType, BytesPipe, CNPJPipe, CPFPipe, CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$2 as CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR, DateBRPipe, DropdownGroupedSize, DropdownMultiSize$1 as DropdownMultiSize, DropdownSize$1 as DropdownSize, MonthNamePipe, MultiLevelDropdownSize$1 as MultiLevelDropdownSize, ProductActionPipe, ProgressStatusBarGradientStatus$1 as ProgressStatusBarGradientStatus, RespectivePipe, StatusInfoPipe, TCCondition, TCFiltersType, TCLOUD_UI_CONFIG, TCLOUD_UI_LAYOUT_SERVICE, TCLOUD_UI_LOCALE_SERVICE, TCLOUD_UI_USER_SERVICE, TCLOUD_UI_VIEWPORT_SERVICE, TCloudUiAccordionBodyComponent, TCloudUiAccordionComponent, TCloudUiAccordionTitleComponent, TCloudUiAlertBannerComponent, TCloudUiAlignDirective, TCloudUiBreadcrumbComponent, TCloudUiBreadcrumbService, TCloudUiButtonDirective, TCloudUiCalendarComponent, TCloudUiCardAccordionComponent, TCloudUiCardComponent, TCloudUiCardTitleComponent, TCloudUiCarouselComponent, TCloudUiCheckAccessDirective, TCloudUiCheckAccessService, TCloudUiCheckboxDirective, TCloudUiChoiceIssuesComponent, TCloudUiContainerColComponent, TCloudUiContainerComponent, TCloudUiContainerContentComponent, TCloudUiCubesComponent, TCloudUiCurrencyDirective, TCloudUiDataListComponent, TCloudUiDataListOptionComponent, TCloudUiDatepickerComponent, TCloudUiDatepickerTimeComponent, TCloudUiDialogComponent, TCloudUiDialogEventsEnum, TCloudUiDialogHostComponent, TCloudUiDialogModel, TCloudUiDialogService, TCloudUiDialogStatusEnum, TCloudUiDialogTextConfirmationEnum, TCloudUiDigitOnlyDirective, TCloudUiDropdownComponent, TCloudUiDropdownMultiComponent, TCloudUiDropdownMultiLevelComponent, TCloudUiEditorComponent, TCloudUiEditorDiffComponent, TCloudUiElCopyDirective, TCloudUiEmptyContentComponent, TCloudUiFaqComponent, TCloudUiFilterBarComponent, TCloudUiFiltersComponent, TCloudUiFormDirective, TCloudUiHighLightDirective, TCloudUiHoverParentDirective, TCloudUiIconButtonDirective, TCloudUiInputContainerComponent, TCloudUiInputDirective, TCloudUiInputPasswordComponent, TCloudUiInputSearchComponent, TCloudUiIpMaskDirective, TCloudUiLabelTokenComponent, TCloudUiLegendComponent, TCloudUiLineStepCircleComponent, TCloudUiLineStepTitleComponent, TCloudUiLinhaLogoComponent, TCloudUiLoadingComponent, TCloudUiLoadingTransitionsService, TCloudUiMarkReadmeComponent, TCloudUiMessageComponent, TCloudUiModalBodyComponent, TCloudUiModalComponent, TCloudUiModalFooterComponent, TCloudUiModalHeaderComponent, TCloudUiModule, TCloudUiMultiInputComponent, TCloudUiMultiSelectComponent, TCloudUiMultiplesValuesComponent, TCloudUiNavbarComponent, TCloudUiNavbarItemComponent, TCloudUiNgCheckAccessDirective, TCloudUiNgFeatureFlagsDirective, TCloudUiNotFoundComponent, TCloudUiNumberStepComponent, TCloudUiPaginationComponent, TCloudUiPaginationPipe, TCloudUiPopoverComponent, TCloudUiProgressBarComponent, TCloudUiProgressStatusBarComponent, TCloudUiRadioDirective, TCloudUiRangeDateComponent, TCloudUiReorderItemsComponent, TCloudUiScrollBoxComponent, TCloudUiSearchBarComponent, TCloudUiSearchInObjectService, TCloudUiSearchInputComponent, TCloudUiSkeletonLoadingComponent, TCloudUiSkeletonLoadingComponentStyle, TCloudUiSlideToggleDirective, TCloudUiSubNavbarComponent, TCloudUiSubNavbarGroupComponent, TCloudUiSubNavbarItemComponent, TCloudUiTabContentComponent, TCloudUiTabGroupComponent, TCloudUiTabHeadComponent, TCloudUiTabItemComponent, TCloudUiTabMenuComponent, TCloudUiTabSubtitleComponent, TCloudUiTabTitleComponent, TCloudUiTableComponent, TCloudUiTagComponent, TCloudUiToastComponent, TCloudUiTooltipDirective, TCloudUiUploadAreaComponent, TCloudUiWelcomeComponent, TCloudUiWizardStepsComponent, TagColorsEnum, TcRevButtonDirective, TcRevCalendarComponent, TcRevCardAccordionComponent, TcRevCardComponent, TcRevCardTitleComponent, TcRevCheckboxDirective, TcRevComponentsLibModule, TcRevDropdownComponent, TcRevDropdownGroupedComponent, TcRevDropdownMultiComponent, TcRevDropdownMultiLevelComponent, TcRevEmptyContentComponent, TcRevFaqComponent, TcRevIconButtonDirective, TcRevInputContainerComponent, TcRevInputDirective, TcRevLoadingComponent, TcRevMessageComponent, TcRevMultiInputComponent, TcRevPaginationComponent, TcRevProgressStatusBarComponent, TcRevRadioDirective, TcRevSearchInputComponent, TcRevSideDrawerComponent, TcRevSkeletonLoadingComponent, TcRevSkeletonLoadingComponentStyle, TcRevSlideToggleDirective, TcRevSmallLoadingComponent, TcRevSmallLoadingComponentStyle, TcRevSubNavbarComponent, TcRevSubNavbarItemComponent, TcRevTabGroupComponent, TcRevTabItemComponent, TcRevTagComponent, TcRevToastComponent, TcRevTooltipDirective, TcRevWizardStepsComponent, ToTextPipe, TopologyEnvironmentPipe, TopologyProductPipe, TopologyRegionPipe, TopologyStatusPipe, echartBarConfig, isTextEllipsed, provideTCloudUi };
|
|
12908
|
+
export { AcceptedFileType, BytesPipe, CNPJPipe, CPFPipe, CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$2 as CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR, DateBRPipe, DropdownGroupedSize, DropdownMultiSize$1 as DropdownMultiSize, DropdownSize$1 as DropdownSize, MonthNamePipe, MultiLevelDropdownSize$1 as MultiLevelDropdownSize, ProductActionPipe, ProgressStatusBarGradientStatus$1 as ProgressStatusBarGradientStatus, RespectivePipe, StatusInfoPipe, TCCondition, TCFiltersType, TCLOUD_UI_CONFIG, TCLOUD_UI_LAYOUT_SERVICE, TCLOUD_UI_LOCALE_SERVICE, TCLOUD_UI_USER_SERVICE, TCLOUD_UI_VIEWPORT_SERVICE, TCloudUiAccordionBodyComponent, TCloudUiAccordionComponent, TCloudUiAccordionTitleComponent, TCloudUiAlertBannerComponent, TCloudUiAlignDirective, TCloudUiBreadcrumbComponent, TCloudUiBreadcrumbService, TCloudUiButtonDirective, TCloudUiCalendarComponent, TCloudUiCardAccordionComponent, TCloudUiCardComponent, TCloudUiCardTitleComponent, TCloudUiCarouselComponent, TCloudUiCheckAccessDirective, TCloudUiCheckAccessService, TCloudUiCheckboxDirective, TCloudUiChoiceIssuesComponent, TCloudUiContainerColComponent, TCloudUiContainerComponent, TCloudUiContainerContentComponent, TCloudUiCubesComponent, TCloudUiCurrencyDirective, TCloudUiDataListComponent, TCloudUiDataListOptionComponent, TCloudUiDatepickerComponent, TCloudUiDatepickerTimeComponent, TCloudUiDialogComponent, TCloudUiDialogEventsEnum, TCloudUiDialogHostComponent, TCloudUiDialogModel, TCloudUiDialogService, TCloudUiDialogStatusEnum, TCloudUiDialogTextConfirmationEnum, TCloudUiDigitOnlyDirective, TCloudUiDropdownComponent, TCloudUiDropdownMultiComponent, TCloudUiDropdownMultiLevelComponent, TCloudUiEditorComponent, TCloudUiEditorDiffComponent, TCloudUiElCopyDirective, TCloudUiEmptyContentComponent, TCloudUiFaqComponent, TCloudUiFilterBarComponent, TCloudUiFiltersComponent, TCloudUiFormDirective, TCloudUiHighLightDirective, TCloudUiHoverParentDirective, TCloudUiIconButtonDirective, TCloudUiInputContainerComponent, TCloudUiInputDirective, TCloudUiInputPasswordComponent, TCloudUiInputSearchComponent, TCloudUiIpMaskDirective, TCloudUiLabelTokenComponent, TCloudUiLegendComponent, TCloudUiLineStepCircleComponent, TCloudUiLineStepTitleComponent, TCloudUiLinhaLogoComponent, TCloudUiLoadingComponent, TCloudUiLoadingTransitionsService, TCloudUiMarkReadmeComponent, TCloudUiMessageComponent, TCloudUiModalBodyComponent, TCloudUiModalComponent, TCloudUiModalFooterComponent, TCloudUiModalHeaderComponent, TCloudUiModule, TCloudUiMultiInputComponent, TCloudUiMultiSelectComponent, TCloudUiMultiplesValuesComponent, TCloudUiNavbarComponent, TCloudUiNavbarFooterComponent, TCloudUiNavbarItemComponent, TCloudUiNgCheckAccessDirective, TCloudUiNgFeatureFlagsDirective, TCloudUiNotFoundComponent, TCloudUiNumberStepComponent, TCloudUiPaginationComponent, TCloudUiPaginationPipe, TCloudUiPopoverComponent, TCloudUiProgressBarComponent, TCloudUiProgressStatusBarComponent, TCloudUiRadioDirective, TCloudUiRangeDateComponent, TCloudUiReorderItemsComponent, TCloudUiScrollBoxComponent, TCloudUiSearchBarComponent, TCloudUiSearchInObjectService, TCloudUiSearchInputComponent, TCloudUiSkeletonLoadingComponent, TCloudUiSkeletonLoadingComponentStyle, TCloudUiSlideToggleDirective, TCloudUiSubNavbarComponent, TCloudUiSubNavbarGroupComponent, TCloudUiSubNavbarItemComponent, TCloudUiTabContentComponent, TCloudUiTabGroupComponent, TCloudUiTabHeadComponent, TCloudUiTabItemComponent, TCloudUiTabMenuComponent, TCloudUiTabSubtitleComponent, TCloudUiTabTitleComponent, TCloudUiTableComponent, TCloudUiTagComponent, TCloudUiToastComponent, TCloudUiTooltipDirective, TCloudUiUploadAreaComponent, TCloudUiWelcomeComponent, TCloudUiWizardStepsComponent, TagColorsEnum, TcRevButtonDirective, TcRevCalendarComponent, TcRevCardAccordionComponent, TcRevCardComponent, TcRevCardTitleComponent, TcRevCheckboxDirective, TcRevComponentsLibModule, TcRevDropdownComponent, TcRevDropdownGroupedComponent, TcRevDropdownMultiComponent, TcRevDropdownMultiLevelComponent, TcRevEmptyContentComponent, TcRevFaqComponent, TcRevIconButtonDirective, TcRevInputContainerComponent, TcRevInputDirective, TcRevLoadingComponent, TcRevMessageComponent, TcRevMultiInputComponent, TcRevPaginationComponent, TcRevProgressStatusBarComponent, TcRevRadioDirective, TcRevSearchInputComponent, TcRevSideDrawerComponent, TcRevSkeletonLoadingComponent, TcRevSkeletonLoadingComponentStyle, TcRevSlideToggleDirective, TcRevSmallLoadingComponent, TcRevSmallLoadingComponentStyle, TcRevSubNavbarComponent, TcRevSubNavbarItemComponent, TcRevTabGroupComponent, TcRevTabItemComponent, TcRevTagComponent, TcRevToastComponent, TcRevTooltipDirective, TcRevWizardStepsComponent, ToTextPipe, TopologyEnvironmentPipe, TopologyProductPipe, TopologyRegionPipe, TopologyStatusPipe, echartBarConfig, isTextEllipsed, provideTCloudUi };
|
|
12826
12909
|
//# sourceMappingURL=dev-tcloud-tcloud-ui.mjs.map
|