@dev-tcloud/tcloud-ui 6.14.3 → 6.17.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/docs/tcloud-ui-accordion.md +345 -0
- package/docs/tcloud-ui-actions.md +88 -0
- package/docs/tcloud-ui-alert-banner.md +104 -0
- package/docs/tcloud-ui-array-to-text.md +361 -0
- package/docs/tcloud-ui-breadcrumb.md +103 -0
- package/docs/tcloud-ui-bytes.md +109 -0
- package/docs/tcloud-ui-calendar.md +387 -0
- package/docs/tcloud-ui-card-accordion.md +266 -0
- package/docs/tcloud-ui-card-title.md +47 -0
- package/docs/tcloud-ui-card.md +40 -0
- package/docs/tcloud-ui-choice-issues.md +59 -0
- package/docs/tcloud-ui-cnpj.md +102 -0
- package/docs/tcloud-ui-container.md +171 -0
- package/docs/tcloud-ui-cpf.md +102 -0
- package/docs/tcloud-ui-currency.md +271 -0
- package/docs/tcloud-ui-data-list.md +91 -0
- package/docs/tcloud-ui-datebr.md +139 -0
- package/docs/tcloud-ui-datepicker-time.md +191 -0
- package/docs/tcloud-ui-datepicker.md +186 -0
- package/docs/tcloud-ui-dropdown-multi.md +444 -0
- package/docs/tcloud-ui-dropdown.md +369 -0
- package/docs/tcloud-ui-el-copy.md +113 -0
- package/docs/tcloud-ui-empty-content.md +412 -0
- package/docs/tcloud-ui-faq.md +496 -0
- package/docs/tcloud-ui-filter-bar.md +86 -0
- package/docs/tcloud-ui-filters.md +337 -0
- package/docs/tcloud-ui-hover-parent.md +467 -0
- package/docs/tcloud-ui-icon-button.md +104 -0
- package/docs/tcloud-ui-input-container.md +520 -0
- package/docs/tcloud-ui-input-password.md +258 -0
- package/docs/tcloud-ui-input-search.md +314 -0
- package/docs/tcloud-ui-label-token.md +286 -0
- package/docs/tcloud-ui-legend.md +72 -0
- package/docs/tcloud-ui-line-step-circle.md +98 -0
- package/docs/tcloud-ui-line-step-title.md +194 -0
- package/docs/tcloud-ui-linha-logo.md +550 -0
- package/docs/tcloud-ui-loading.md +88 -0
- package/docs/tcloud-ui-message.md +539 -0
- package/docs/tcloud-ui-modal.md +196 -0
- package/docs/tcloud-ui-monthname.md +123 -0
- package/docs/tcloud-ui-multi-input.md +290 -0
- package/docs/tcloud-ui-multi-select.md +311 -0
- package/docs/tcloud-ui-multiples-values.md +157 -0
- package/docs/tcloud-ui-not-found.md +88 -0
- package/docs/tcloud-ui-number-step.md +134 -0
- package/docs/tcloud-ui-pagination.md +579 -0
- package/docs/tcloud-ui-progress-bar.md +65 -0
- package/docs/tcloud-ui-radio.md +83 -0
- package/docs/tcloud-ui-reorder-items.md +418 -0
- package/docs/tcloud-ui-respective.md +167 -0
- package/docs/tcloud-ui-scroll-box.md +109 -0
- package/docs/tcloud-ui-search-bar.md +88 -0
- package/docs/tcloud-ui-search-in-object.md +143 -0
- package/docs/tcloud-ui-search-input.md +74 -0
- package/docs/tcloud-ui-skeleton-loading.md +394 -0
- package/docs/tcloud-ui-slide-toggle.md +210 -0
- package/docs/tcloud-ui-statusinfo.md +138 -0
- package/docs/tcloud-ui-tab-group.md +376 -0
- package/docs/tcloud-ui-tab-menu.md +109 -0
- package/docs/tcloud-ui-table.md +96 -0
- package/docs/tcloud-ui-tag.md +379 -0
- package/docs/tcloud-ui-tc-badge.md +168 -0
- package/docs/tcloud-ui-tc-btn.md +189 -0
- package/docs/tcloud-ui-tc-colors.md +204 -0
- package/docs/tcloud-ui-tc-form-control.md +200 -0
- package/docs/tcloud-ui-tc-text.md +139 -0
- package/docs/tcloud-ui-tc-title.md +118 -0
- package/docs/tcloud-ui-tcloud-form.md +55 -0
- package/docs/tcloud-ui-toast.md +83 -0
- package/docs/tcloud-ui-tooltip.md +88 -0
- package/docs/tcloud-ui-topology.md +232 -0
- package/docs/tcloud-ui-upload-area.md +195 -0
- package/docs/tcloud-ui-welcome.md +112 -0
- package/docs/tcloud-ui-wizard-steps.md +103 -0
- package/js/tcloud-ui-app.js +11 -0
- package/package.json +1 -1
- package/scss/tcloud-ui/styles/_claus-badge.scss +117 -0
- package/scss/tcloud-ui/styles/_claus-btn.scss +207 -0
- package/scss/tcloud-ui/styles/_claus-card.scss +12 -0
- package/scss/tcloud-ui/styles/_claus-colors.scss +192 -0
- package/scss/tcloud-ui/styles/_claus-form.scss +88 -0
- package/scss/tcloud-ui/styles/_claus-sizes.scss +28 -0
- package/scss/tcloud-ui/styles/_claus-spacers.scss +49 -0
- package/scss/tcloud-ui/styles/_claus-themes.scss +36 -0
- package/scss/tcloud-ui/styles/_claus-title.scss +24 -0
- package/scss/tcloud-ui/styles/_claus-typography.scss +70 -0
- package/scss/tcloud-ui/styles/_claus-variables.scss +131 -0
- package/scss/tcloud-ui/styles/_colors.scss +123 -0
- package/scss/tcloud-ui/styles/_tc-btn.scss +210 -0
- package/scss/tcloud-ui/styles/_tc-card.scss +7 -0
- package/scss/tcloud-ui/styles/_tc-title.scss +49 -0
- package/scss/tcloud-ui/styles.scss +35 -0
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
# Tipografia — Utilitários de Texto
|
|
2
|
+
|
|
3
|
+
## Características
|
|
4
|
+
|
|
5
|
+
- Sistema de classes utilitárias para estilização de texto, sem dependência de componente Angular — aplicáveis diretamente em qualquer tag HTML.
|
|
6
|
+
- Classes de **tamanho** prefixadas com `.f-*` (ex: `.f-16`), cobrindo da escala micro (0.5rem) ao display grande (3.5rem).
|
|
7
|
+
- Classes de **peso** prefixadas com `.font-*` (ex: `.font-bold`), mapeando os cinco níveis tipográficos do projeto.
|
|
8
|
+
- Classes de **cor** seguindo o padrão `.text-{cor}-{tom}` (ex: `.text-neutral-700`), vinculadas aos tokens CSS de design.
|
|
9
|
+
- Não há componente Angular envolvido — as classes são fornecidas pelo stylesheet global do projeto e aplicadas diretamente no HTML.
|
|
10
|
+
|
|
11
|
+
## Instalação
|
|
12
|
+
|
|
13
|
+
As classes são fornecidas pelo stylesheet global do projeto. Nenhuma importação de módulo Angular é necessária.
|
|
14
|
+
Certifique-se de que o stylesheet principal do `tcloud-ui` está incluído na aplicação:
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
// angular.json — styles
|
|
18
|
+
"styles": [
|
|
19
|
+
"projects/tcloud-ui/assets/scss/tcloud-ui.scss"
|
|
20
|
+
]
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## API — Classes Utilitárias
|
|
26
|
+
|
|
27
|
+
### Tags e classes padrão recomendadas
|
|
28
|
+
|
|
29
|
+
| Tag HTML | Classes recomendadas | Uso |
|
|
30
|
+
|---|---|---|
|
|
31
|
+
| `<p>` | `f-16 font-regular` | Parágrafo — corpo de texto principal |
|
|
32
|
+
| `<label>` | `f-14 font-semibold` | Rótulo de campo — formulários e inputs |
|
|
33
|
+
| `<span>` | `f-16 font-regular` | Texto inline — destaques dentro de parágrafo |
|
|
34
|
+
| `<small>` | `f-12 font-regular` | Texto auxiliar — legendas, dicas, metadados |
|
|
35
|
+
| `<strong>` | `f-16 font-bold` | Ênfase forte — palavras-chave em negrito |
|
|
36
|
+
| `<em>` | `f-16 font-regular` | Ênfase suave — citações e termos técnicos |
|
|
37
|
+
| `<code>` | `f-14 font-regular` | Código inline — nomes de classes e variáveis |
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
### Tamanhos — `.f-*`
|
|
42
|
+
|
|
43
|
+
| Classe | Valor | Uso recomendado |
|
|
44
|
+
|---|---|---|
|
|
45
|
+
| `.f-08` | `0.5rem` | Micro — badges, tooltips |
|
|
46
|
+
| `.f-10` | `0.625rem` | Extra-pequeno — carimbo, meta |
|
|
47
|
+
| `.f-12` | `0.75rem` | Pequeno — legenda, auxiliar |
|
|
48
|
+
| `.f-14` | `0.875rem` | Base — labels, inputs |
|
|
49
|
+
| `.f-16` | `1rem` | Padrão — corpo de texto |
|
|
50
|
+
| `.f-20` | `1.25rem` | Médio — subtítulos de bloco |
|
|
51
|
+
| `.f-24` | `1.5rem` | Grande — leads, destaques |
|
|
52
|
+
| `.f-32` | `2rem` | Extra-grande — headings de seção |
|
|
53
|
+
| `.f-40` | `2.5rem` | Título — pages principais |
|
|
54
|
+
| `.f-48` | `3rem` | Display — hero sections |
|
|
55
|
+
| `.f-56` | `3.5rem` | Display grande — landing pages |
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
### Pesos — `.font-*`
|
|
60
|
+
|
|
61
|
+
| Classe | `font-weight` | Uso recomendado |
|
|
62
|
+
|---|---|---|
|
|
63
|
+
| `.font-light` | `200` | Fino — decorativo, grandes tamanhos |
|
|
64
|
+
| `.font-regular` | `300` | Regular — corpo de texto padrão |
|
|
65
|
+
| `.font-semibold` | `400` | Semi-negrito — labels e botões |
|
|
66
|
+
| `.font-bold` | `500` | Negrito — títulos e destaques |
|
|
67
|
+
| `.font-black` | `600` | Extra-negrito — impacto visual |
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
### Cores de texto — `.text-{cor}-{tom}`
|
|
72
|
+
|
|
73
|
+
| Classe | Token CSS | Uso recomendado |
|
|
74
|
+
|---|---|---|
|
|
75
|
+
| `.text-neutral-700` | `--c-neutral-700` | Texto principal — padrão do body |
|
|
76
|
+
| `.text-neutral-500` | `--c-neutral-500` | Texto secundário — descrições, labels |
|
|
77
|
+
| `.text-neutral-400` | `--c-neutral-400` | Texto desabilitado / placeholder |
|
|
78
|
+
| `.text-primary-500` | `--c-primary-500` | Texto de ação / links primários |
|
|
79
|
+
| `.text-primary-600` | `--c-primary-600` | Texto primário com mais contraste |
|
|
80
|
+
| `.text-danger-500` | `--c-danger-500` | Erro — mensagens de validação |
|
|
81
|
+
| `.text-alert-500` | `--c-alert-500` | Aviso — atenção do usuário |
|
|
82
|
+
| `.text-success-500` | `--c-success-500` | Sucesso — confirmações e feedback |
|
|
83
|
+
| `.text-info-500` | `--c-info-500` | Informação — dicas e contexto |
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## Exemplos de Uso
|
|
88
|
+
|
|
89
|
+
### Uso Básico
|
|
90
|
+
|
|
91
|
+
```html
|
|
92
|
+
<!-- Parágrafo padrão -->
|
|
93
|
+
<p class="f-16 font-regular text-neutral-700">Texto corrido do parágrafo.</p>
|
|
94
|
+
|
|
95
|
+
<!-- Rótulo de campo de formulário -->
|
|
96
|
+
<label class="f-14 font-semibold text-neutral-700">Nome completo</label>
|
|
97
|
+
|
|
98
|
+
<!-- Texto auxiliar / legenda -->
|
|
99
|
+
<small class="f-12 font-regular text-neutral-500">Última atualização: hoje</small>
|
|
100
|
+
|
|
101
|
+
<!-- Código inline -->
|
|
102
|
+
<code class="f-14 font-regular text-primary-500">.tc-btn-primary</code>
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
### Uso Avançado
|
|
108
|
+
|
|
109
|
+
#### Hierarquia tipográfica combinada
|
|
110
|
+
|
|
111
|
+
```html
|
|
112
|
+
<p class="f-16 font-regular text-neutral-700">
|
|
113
|
+
Parágrafo padrão com <strong class="font-bold">negrito</strong>
|
|
114
|
+
e <em class="font-regular text-neutral-500">itálico suave</em>.
|
|
115
|
+
</p>
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
#### Feedback semântico por cor
|
|
119
|
+
|
|
120
|
+
```html
|
|
121
|
+
<p class="f-16 font-regular text-danger-500">Mensagem de erro — campo obrigatório.</p>
|
|
122
|
+
<p class="f-16 font-regular text-success-500">Operação realizada com sucesso.</p>
|
|
123
|
+
<p class="f-16 font-regular text-alert-500">Atenção: verifique os dados antes de continuar.</p>
|
|
124
|
+
<p class="f-16 font-regular text-info-500">Dica: este campo aceita CPF ou CNPJ.</p>
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
#### Escala de display para headings
|
|
128
|
+
|
|
129
|
+
```html
|
|
130
|
+
<p class="f-40 font-bold text-neutral-700">Título principal da página</p>
|
|
131
|
+
<p class="f-24 font-semibold text-neutral-700">Subtítulo de seção</p>
|
|
132
|
+
<p class="f-16 font-regular text-neutral-500">Descrição de apoio ao conteúdo.</p>
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
#### Texto desabilitado / placeholder
|
|
136
|
+
|
|
137
|
+
```html
|
|
138
|
+
<span class="f-14 font-regular text-neutral-400">Nenhum item selecionado</span>
|
|
139
|
+
```
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
# Tipografia — `.tc-title`
|
|
2
|
+
|
|
3
|
+
## Características
|
|
4
|
+
|
|
5
|
+
- Classe tipográfica aplicada às tags `h1`–`h6` para padronizar a hierarquia visual de títulos no projeto.
|
|
6
|
+
- Cada nível herda automaticamente a cor do tema via `var(--c-neutral-700)`, adaptando-se a temas claro e escuro.
|
|
7
|
+
- Remove margem padrão do browser e define `line-height` compacto para títulos.
|
|
8
|
+
- Herda a fonte definida no `body`, mantendo consistência com o design system.
|
|
9
|
+
- Não há componente Angular envolvido — `.tc-title` é uma classe CSS global aplicada diretamente nas tags de heading.
|
|
10
|
+
|
|
11
|
+
## Instalação
|
|
12
|
+
|
|
13
|
+
A classe é fornecida pelo stylesheet global do projeto. Nenhuma importação de módulo Angular é necessária.
|
|
14
|
+
Certifique-se de que o stylesheet principal do `tcloud-ui` está incluído na aplicação:
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
// angular.json — styles
|
|
18
|
+
"styles": [
|
|
19
|
+
"projects/tcloud-ui/assets/scss/tcloud-ui.scss"
|
|
20
|
+
]
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## API — Variantes por Tag
|
|
26
|
+
|
|
27
|
+
| Tag | `font-size` | `font-weight` | `letter-spacing` | Uso recomendado |
|
|
28
|
+
|---|---|---|---|---|
|
|
29
|
+
| `h1` | `2.5rem` | `700` | `-0.03em` | Título principal de página |
|
|
30
|
+
| `h2` | `2rem` | `700` | `-0.02em` | Título de seção |
|
|
31
|
+
| `h3` | `1.5rem` | `600` | `-0.01em` | Subtítulo de seção |
|
|
32
|
+
| `h4` | `1.25rem` | `600` | `0` | Título de bloco / card |
|
|
33
|
+
| `h5` | `1rem` | `600` | `0` | Título de grupo interno |
|
|
34
|
+
| `h6` | `0.875rem` | `600` | `0.01em` | Label de categoria (uppercase) |
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## Propriedades comuns a todas as variantes
|
|
39
|
+
|
|
40
|
+
| Propriedade CSS | Valor | Descrição |
|
|
41
|
+
|---|---|---|
|
|
42
|
+
| `color` | `var(--c-neutral-700)` | Cor adaptável ao tema claro/escuro |
|
|
43
|
+
| `line-height` | `1.2` | Altura de linha compacta para títulos |
|
|
44
|
+
| `margin` | `0` | Remove margem padrão do browser |
|
|
45
|
+
| `font-family` | `inherit` | Herda a fonte definida no `body` |
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## Exemplos de Uso
|
|
50
|
+
|
|
51
|
+
### Uso Básico
|
|
52
|
+
|
|
53
|
+
```html
|
|
54
|
+
<h1 class="tc-title">Título principal</h1>
|
|
55
|
+
<h2 class="tc-title">Título de seção</h2>
|
|
56
|
+
<h3 class="tc-title">Subtítulo</h3>
|
|
57
|
+
<h4 class="tc-title">Título de card</h4>
|
|
58
|
+
<h5 class="tc-title">Título interno</h5>
|
|
59
|
+
<h6 class="tc-title">Label de categoria</h6>
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
### Uso Avançado
|
|
65
|
+
|
|
66
|
+
#### Hierarquia de página completa
|
|
67
|
+
|
|
68
|
+
```html
|
|
69
|
+
<h1 class="tc-title">Gestão de Usuários</h1>
|
|
70
|
+
<p class="f-16 font-regular text-neutral-500">Gerencie os usuários e permissões do sistema.</p>
|
|
71
|
+
|
|
72
|
+
<section>
|
|
73
|
+
<h2 class="tc-title">Usuários ativos</h2>
|
|
74
|
+
|
|
75
|
+
<div>
|
|
76
|
+
<h3 class="tc-title">Filtros</h3>
|
|
77
|
+
<!-- conteúdo de filtros -->
|
|
78
|
+
</div>
|
|
79
|
+
|
|
80
|
+
<div>
|
|
81
|
+
<h3 class="tc-title">Resultados</h3>
|
|
82
|
+
<!-- listagem -->
|
|
83
|
+
</div>
|
|
84
|
+
</section>
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
#### Título em card
|
|
88
|
+
|
|
89
|
+
```html
|
|
90
|
+
<div class="tc-card">
|
|
91
|
+
<h4 class="tc-title">Resumo financeiro</h4>
|
|
92
|
+
<p class="f-14 font-regular text-neutral-500">Período: abril 2026</p>
|
|
93
|
+
</div>
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
#### Combinação com classes de cor utilitárias
|
|
97
|
+
|
|
98
|
+
```html
|
|
99
|
+
<!-- Título com cor semântica de alerta -->
|
|
100
|
+
<h3 class="tc-title text-danger-500">Atenção: ação irreversível</h3>
|
|
101
|
+
|
|
102
|
+
<!-- Título com cor primária para destaque -->
|
|
103
|
+
<h2 class="tc-title text-primary-500">Novo recurso disponível</h2>
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
#### Label de categoria com `h6`
|
|
107
|
+
|
|
108
|
+
```html
|
|
109
|
+
<h6 class="tc-title">Informações pessoais</h6>
|
|
110
|
+
<div>
|
|
111
|
+
<!-- campos do formulário -->
|
|
112
|
+
</div>
|
|
113
|
+
|
|
114
|
+
<h6 class="tc-title">Endereço</h6>
|
|
115
|
+
<div>
|
|
116
|
+
<!-- campos de endereço -->
|
|
117
|
+
</div>
|
|
118
|
+
```
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# Tcloud Form
|
|
2
|
+
|
|
3
|
+
## Características
|
|
4
|
+
|
|
5
|
+
A diretiva `tcloudForm` aplica classes CSS dinâmicas a elementos de formulário com base no layout ativo do sistema. Quando o layout é `modern`, a diretiva remove classes legadas (`form-control`, `tc-form-control`) e aplica a classe `tc-rev-input-control`. Suporta a opção `fullWidth` para expandir o input em toda a largura disponível. No layout `classic`, a diretiva não realiza alterações.
|
|
6
|
+
|
|
7
|
+
## Instalação
|
|
8
|
+
|
|
9
|
+
Importe o `TCloudUiModule` ou a diretiva standalone `TCloudUiFormDirective`:
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
import { TCloudUiModule } from 'tcloud-ui';
|
|
13
|
+
// ou
|
|
14
|
+
import { TCloudUiFormDirective } from 'tcloud-ui';
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## API
|
|
18
|
+
|
|
19
|
+
### Inputs
|
|
20
|
+
|
|
21
|
+
| Nome | Tipo | Descrição | Valor Default |
|
|
22
|
+
| ----------- | --------- | --------------------------------------------------------------- | ------------- |
|
|
23
|
+
| `fullWidth` | `boolean` | Adiciona a classe `tc-rev-input-control--full-width` ao elemento. | `false` |
|
|
24
|
+
|
|
25
|
+
## Exemplos de Uso
|
|
26
|
+
|
|
27
|
+
### Uso Básico
|
|
28
|
+
|
|
29
|
+
```html
|
|
30
|
+
<input type="text" tcloudForm placeholder="Input com tcloudForm" />
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
### Uso Avançado
|
|
34
|
+
|
|
35
|
+
Input com largura total:
|
|
36
|
+
|
|
37
|
+
```html
|
|
38
|
+
<input type="text" tcloudForm [fullWidth]="true" placeholder="Input full width" />
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
Aplicando em um select:
|
|
42
|
+
|
|
43
|
+
```html
|
|
44
|
+
<select tcloudForm>
|
|
45
|
+
<option value="">Selecione...</option>
|
|
46
|
+
<option value="1">Opção 1</option>
|
|
47
|
+
<option value="2">Opção 2</option>
|
|
48
|
+
</select>
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Aplicando em um textarea:
|
|
52
|
+
|
|
53
|
+
```html
|
|
54
|
+
<textarea tcloudForm [fullWidth]="true" placeholder="Descrição..."></textarea>
|
|
55
|
+
```
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
# TCloud UI Toast
|
|
2
|
+
|
|
3
|
+
Componente Angular standalone para exibir notificações breves com ícone e conteúdo projetado, suportando tamanhos e variações de cor.
|
|
4
|
+
|
|
5
|
+
## Características
|
|
6
|
+
|
|
7
|
+
- ✅ Inputs reativos (`input()`) para `type`, `size` e `fullWidth`
|
|
8
|
+
- ✅ Suporte a quatro tipos: `info`, `success`, `alert`, `danger`
|
|
9
|
+
- ✅ Três tamanhos: `sm`, `md`, `lg`, ajustando padding e tipografia
|
|
10
|
+
- ✅ Área de ícone e conteúdo via projeção (`[icon]` e conteúdo padrão)
|
|
11
|
+
- ✅ Opcionais: expandir conteúdo com `fullWidth`
|
|
12
|
+
- ✅ Standalone e também exportado pelo `TCloudUiModule`
|
|
13
|
+
|
|
14
|
+
## Instalação
|
|
15
|
+
|
|
16
|
+
Importe o módulo agregador:
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
import { TCloudUiModule } from 'projects/tcloud-ui/src/public-api';
|
|
20
|
+
|
|
21
|
+
@NgModule({
|
|
22
|
+
imports: [TCloudUiModule]
|
|
23
|
+
})
|
|
24
|
+
export class MyModule {}
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Ou importe apenas o componente standalone:
|
|
28
|
+
|
|
29
|
+
```typescript
|
|
30
|
+
import { TCloudUiToastComponent } from 'projects/tcloud-ui/src/lib/_modules/tcloud-ui-toast/tcloud-ui-toast.component';
|
|
31
|
+
|
|
32
|
+
@Component({
|
|
33
|
+
standalone: true,
|
|
34
|
+
imports: [TCloudUiToastComponent]
|
|
35
|
+
})
|
|
36
|
+
export class MyStandaloneComponent {}
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Uso Básico
|
|
40
|
+
|
|
41
|
+
```html
|
|
42
|
+
<tcloud-ui-toast type="success" size="lg">
|
|
43
|
+
<i class="fas fa-circle-check" icon></i>
|
|
44
|
+
Operação concluída com sucesso.
|
|
45
|
+
</tcloud-ui-toast>
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Uso Avançado
|
|
49
|
+
|
|
50
|
+
Controle de largura e tipo dinâmicos:
|
|
51
|
+
|
|
52
|
+
```typescript
|
|
53
|
+
export class ToastDemoComponent {
|
|
54
|
+
toastType: 'info' | 'success' | 'alert' | 'danger' = 'info';
|
|
55
|
+
isFullWidth = true;
|
|
56
|
+
}
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
```html
|
|
60
|
+
<tcloud-ui-toast
|
|
61
|
+
[type]="toastType"
|
|
62
|
+
size="md"
|
|
63
|
+
[fullWidth]="isFullWidth">
|
|
64
|
+
<span icon>ℹ️</span>
|
|
65
|
+
Atualize os campos pendentes antes de prosseguir.
|
|
66
|
+
</tcloud-ui-toast>
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## API
|
|
70
|
+
|
|
71
|
+
### Componente: `tcloud-ui-toast`
|
|
72
|
+
|
|
73
|
+
#### Inputs
|
|
74
|
+
|
|
75
|
+
| Nome | Tipo | Descrição | Valor Default |
|
|
76
|
+
|------|------|-----------|---------------|
|
|
77
|
+
| `type` | `'info' \| 'success' \| 'alert' \| 'danger'` | Define a paleta da notificação. | `'info'` |
|
|
78
|
+
| `size` | `'sm' \| 'md' \| 'lg'` | Ajusta padding e tipografia. | `'md'` |
|
|
79
|
+
| `fullWidth` | `boolean` | Faz o conteúdo ocupar todo o espaço restante na linha. | `false` |
|
|
80
|
+
|
|
81
|
+
#### Outputs
|
|
82
|
+
|
|
83
|
+
Nenhum output público disponível.
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
# TCloud UI Tooltip
|
|
2
|
+
|
|
3
|
+
Diretiva Angular standalone para exibir tooltips posicionados em quatro direções, suportando disparo por hover ou clique e atualização dinâmica de conteúdo.
|
|
4
|
+
|
|
5
|
+
## Características
|
|
6
|
+
|
|
7
|
+
- ✅ Suporte a modos `hover` (padrão) e `click`, com fechamento por clique externo
|
|
8
|
+
- ✅ Posicionamento automático em `top`, `bottom`, `left` ou `right`, recalculado ao abrir/atualizar
|
|
9
|
+
- ✅ Conteúdo aceita texto ou HTML; atualização em tempo real quando o tooltip já está visível
|
|
10
|
+
- ✅ Marcações leves: adiciona elementos no `document.body` e remove ao sair/fechar
|
|
11
|
+
- ✅ Disponível via `TCloudUiModule` ou importável como diretiva standalone
|
|
12
|
+
|
|
13
|
+
## Instalação
|
|
14
|
+
|
|
15
|
+
Importe o módulo agregador:
|
|
16
|
+
|
|
17
|
+
```typescript
|
|
18
|
+
import { TCloudUiModule } from 'projects/tcloud-ui/src/public-api';
|
|
19
|
+
|
|
20
|
+
@NgModule({
|
|
21
|
+
imports: [TCloudUiModule]
|
|
22
|
+
})
|
|
23
|
+
export class MyModule {}
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Ou importe apenas a diretiva standalone:
|
|
27
|
+
|
|
28
|
+
```typescript
|
|
29
|
+
import { TCloudUiTooltipDirective } from 'projects/tcloud-ui/src/lib/_directives/tooltip/tooltip.directive';
|
|
30
|
+
|
|
31
|
+
@Component({
|
|
32
|
+
standalone: true,
|
|
33
|
+
imports: [TCloudUiTooltipDirective]
|
|
34
|
+
})
|
|
35
|
+
export class MyStandaloneComponent {}
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Uso Básico
|
|
39
|
+
|
|
40
|
+
```html
|
|
41
|
+
<span TCtooltip="Tooltip TOP" TCdirection="top">Topo</span>
|
|
42
|
+
<span TCtooltip="Tooltip RIGHT" TCdirection="right">Direita</span>
|
|
43
|
+
<span TCtooltip="Tooltip BOTTOM" TCdirection="bottom">Base</span>
|
|
44
|
+
<span TCtooltip="Tooltip LEFT" TCdirection="left">Esquerda</span>
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Uso Avançado
|
|
48
|
+
|
|
49
|
+
Tooltip acionado por clique com conteúdo carregado de forma assíncrona:
|
|
50
|
+
|
|
51
|
+
```typescript
|
|
52
|
+
export class TooltipDemoComponent {
|
|
53
|
+
tooltipContent = '';
|
|
54
|
+
|
|
55
|
+
loadTooltip() {
|
|
56
|
+
this.tooltipContent = "<i class='fa fa-spinner fa-spin'></i>";
|
|
57
|
+
setTimeout(() => {
|
|
58
|
+
this.tooltipContent = 'Tooltip carregado!';
|
|
59
|
+
}, 3000);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
```html
|
|
65
|
+
<span
|
|
66
|
+
[TCtooltip]="tooltipContent"
|
|
67
|
+
TCdirection="top"
|
|
68
|
+
tooltipMode="click"
|
|
69
|
+
(click)="loadTooltip()">
|
|
70
|
+
Clique para abrir
|
|
71
|
+
</span>
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## API
|
|
75
|
+
|
|
76
|
+
### Diretiva: `TCtooltip`
|
|
77
|
+
|
|
78
|
+
#### Inputs
|
|
79
|
+
|
|
80
|
+
| Nome | Tipo | Descrição | Valor Default |
|
|
81
|
+
|------|------|-----------|---------------|
|
|
82
|
+
| `TCtooltip` | `string | HTMLElement | TemplateRef | any` | Conteúdo exibido no tooltip; aceita texto ou HTML. | `''` |
|
|
83
|
+
| `TCdirection` | `'top' | 'bottom' | 'left' | 'right'` | Direção de exibição do tooltip. | `'top'` |
|
|
84
|
+
| `tooltipMode` | `'hover' | 'click'` | Define se o tooltip abre ao passar o mouse ou ao clicar. | `'hover'` |
|
|
85
|
+
|
|
86
|
+
#### Outputs
|
|
87
|
+
|
|
88
|
+
Nenhum output público disponível.
|