@seniorsistemas/angular-components 19.3.3 → 19.3.4
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/accordion/README.md +166 -0
- package/alert/README.md +92 -0
- package/autocomplete/README.md +162 -0
- package/badge/README.md +126 -0
- package/bignumber-input/README.md +122 -0
- package/breadcrumb/README.md +144 -0
- package/button/README.md +159 -0
- package/calendar-mask/README.md +89 -0
- package/card/README.md +133 -0
- package/chat/README.md +130 -0
- package/checkbox/README.md +108 -0
- package/checkbox-list/README.md +149 -0
- package/chips/README.md +152 -0
- package/code-editor/README.md +149 -0
- package/collapse-link/README.md +128 -0
- package/confirm-dialog/README.md +105 -0
- package/content-generator/README.md +111 -0
- package/control-errors/README.md +92 -0
- package/country-phone-picker/README.md +121 -0
- package/currency/README.md +90 -0
- package/custom-fields/README.md +142 -0
- package/dialog/README.md +152 -0
- package/dynamic-form/README.md +176 -0
- package/editable-overlay/README.md +98 -0
- package/empty-state/README.md +134 -0
- package/esm2022/loading-state/lib/loading-state/loading-state.component.mjs +4 -4
- package/fesm2022/seniorsistemas-angular-components-loading-state.mjs +3 -3
- package/fesm2022/seniorsistemas-angular-components-loading-state.mjs.map +1 -1
- package/fieldset/README.md +135 -0
- package/file-picker/README.md +162 -0
- package/file-upload/README.md +23 -7
- package/gantt/README.md +173 -0
- package/global-search/README.md +151 -0
- package/grid-menu/README.md +123 -0
- package/help-popover/README.md +134 -0
- package/ia-insight/README.md +24 -6
- package/image-cropper/README.md +140 -0
- package/infinite-scroll/README.md +130 -0
- package/info-sign/README.md +111 -0
- package/inline-edit/README.md +139 -0
- package/insights/README.md +159 -0
- package/interactive-content/README.md +120 -0
- package/kanban/README.md +184 -0
- package/label-value/README.md +154 -0
- package/loading-state/README.md +141 -0
- package/localized-number-input/README.md +128 -0
- package/mouse-events/README.md +157 -0
- package/navigation-button/README.md +160 -0
- package/numeric/README.md +147 -0
- package/numeric-mask/README.md +170 -0
- package/object-card/README.md +158 -0
- package/package.json +1 -1
- package/paginator/README.md +121 -0
- package/panel/README.md +147 -0
- package/password-strength/README.md +144 -0
- package/picklist/README.md +170 -0
- package/pin-code-field/README.md +137 -0
- package/product-header/README.md +33 -6
- package/profile-picture-picker/README.md +159 -0
- package/progressbar/README.md +136 -0
- package/radio-button/README.md +117 -0
- package/rating-scale/README.md +154 -0
- package/select/README.md +147 -0
- package/select-button/README.md +137 -0
- package/sidebar/README.md +117 -0
- package/slide-in-bar/README.md +122 -0
- package/slider/README.md +127 -0
- package/speech-recognition/README.md +104 -0
- package/split-button/README.md +126 -0
- package/spotlight/README.md +200 -0
- package/star-rating/README.md +127 -0
- package/stats-card/README.md +135 -0
- package/stepper/README.md +164 -0
- package/switch/README.md +125 -0
- package/table/README.md +185 -0
- package/text-area-ia/README.md +17 -6
package/table/README.md
ADDED
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
# Table
|
|
2
|
+
|
|
3
|
+

|
|
4
|
+
|
|
5
|
+
Módulo de tabela que estende o `p-table` do PrimeNG com componentes e diretivas para formatação localizada de colunas, paginação customizada e navegação por teclado.
|
|
6
|
+
|
|
7
|
+
## Quando usar
|
|
8
|
+
|
|
9
|
+
- Listagens de dados com formatação automática e localizada (datas, moedas, números, booleanos)
|
|
10
|
+
- Tabelas que precisam de paginação customizada com ações de exportação
|
|
11
|
+
- Listagens onde a navegação por teclado entre células é necessária
|
|
12
|
+
- Tabelas com linhas expansíveis (row expand)
|
|
13
|
+
|
|
14
|
+
## Quando não usar
|
|
15
|
+
|
|
16
|
+
- Exibição de dados simples sem necessidade de formatação — use `<table>` nativo ou `p-table` diretamente
|
|
17
|
+
- Listas de itens sem estrutura tabular — prefira listas ou cards
|
|
18
|
+
|
|
19
|
+
## Instalação
|
|
20
|
+
|
|
21
|
+
```typescript
|
|
22
|
+
import { TableModule } from '@seniorsistemas/angular-components/table';
|
|
23
|
+
|
|
24
|
+
@NgModule({ imports: [TableModule] })
|
|
25
|
+
export class MeuModule {}
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Uso básico
|
|
29
|
+
|
|
30
|
+
```html
|
|
31
|
+
<p-table [value]="dados" [columns]="colunas">
|
|
32
|
+
<ng-template pTemplate="header">
|
|
33
|
+
<tr>
|
|
34
|
+
@for (col of colunas; track col.header) {
|
|
35
|
+
<th [style]="col.style">{{ col.header }}</th>
|
|
36
|
+
}
|
|
37
|
+
</tr>
|
|
38
|
+
</ng-template>
|
|
39
|
+
<ng-template pTemplate="body" let-row>
|
|
40
|
+
<tr>
|
|
41
|
+
<s-table-columns [columns]="colunas" [rowValue]="row" />
|
|
42
|
+
</tr>
|
|
43
|
+
</ng-template>
|
|
44
|
+
</p-table>
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Componentes e Diretivas
|
|
48
|
+
|
|
49
|
+
### `s-table-columns`
|
|
50
|
+
|
|
51
|
+
Renderiza as células de uma linha com formatação automática por tipo de coluna.
|
|
52
|
+
|
|
53
|
+
| Input | Tipo | Padrão | Obrigatório | Descrição |
|
|
54
|
+
|-------|------|--------|:-----------:|-----------|
|
|
55
|
+
| `columns` | `Column[]` | `[]` | Sim | Lista de configurações das colunas a serem renderizadas |
|
|
56
|
+
| `rowValue` | `any` | — | Sim | Objeto da linha com os valores a serem exibidos |
|
|
57
|
+
| `locale` | `TableColumnLocaleOptions \| null` | `null` | Não | Opções de localização (calendário e número) para formatação |
|
|
58
|
+
|
|
59
|
+
### `s-table-paging`
|
|
60
|
+
|
|
61
|
+
Componente de paginação customizado com suporte a ações extras e exportação.
|
|
62
|
+
|
|
63
|
+
| Input | Tipo | Padrão | Obrigatório | Descrição |
|
|
64
|
+
|-------|------|--------|:-----------:|-----------|
|
|
65
|
+
| `totalRecords` | `number` | — | Sim | Total de registros para exibição no rodapé |
|
|
66
|
+
| `table` | `Table` | — | Sim | Referência à instância do `p-table` |
|
|
67
|
+
| `exportFileName` | `string` | `undefined` | Não | Nome do arquivo ao exportar |
|
|
68
|
+
| `exportable` | `boolean` | `true` | Não | Habilita opções de exportação |
|
|
69
|
+
| `enableExportSelectedRecords` | `boolean` | `true` | Não | Habilita exportação dos registros selecionados |
|
|
70
|
+
| `customActions` | `CustomAction[]` | `undefined` | Não | Ações adicionais no menu do rodapé |
|
|
71
|
+
| `loadAllRecords` | `() => Promise<any[]>` | `undefined` | Não | Função para carregar todos os registros para exportação |
|
|
72
|
+
| `loadCurrentPageRecords` | `() => any[]` | `undefined` | Não | Função para obter os registros da página atual |
|
|
73
|
+
| `loadSelectedRecords` | `() => any[]` | `undefined` | Não | Função para obter os registros selecionados |
|
|
74
|
+
|
|
75
|
+
### `[sNavigation]` (diretiva)
|
|
76
|
+
|
|
77
|
+
Habilita navegação por teclado entre células e linhas da tabela.
|
|
78
|
+
|
|
79
|
+
```html
|
|
80
|
+
<p-table sNavigation ...>
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
### `[sRowToggler]` (diretiva)
|
|
84
|
+
|
|
85
|
+
Controla a expansão de linhas na tabela PrimeNG.
|
|
86
|
+
|
|
87
|
+
### Tipos
|
|
88
|
+
|
|
89
|
+
```typescript
|
|
90
|
+
interface Column {
|
|
91
|
+
header: string; // Cabeçalho da coluna. Obrigatório.
|
|
92
|
+
attributes: string[]; // Propriedades do objeto a exibir. Obrigatório.
|
|
93
|
+
type: EnumColumnFieldType; // Tipo de formatação. Obrigatório.
|
|
94
|
+
style?: object; // Estilos CSS da célula
|
|
95
|
+
separator?: string; // Separador entre múltiplos atributos (padrão: ' - ')
|
|
96
|
+
scale?: number | ((row) => number); // Casas decimais para NUMBER/CURRENCY
|
|
97
|
+
dateFormat?: string; // Formato de data customizado
|
|
98
|
+
tooltip?: string | ((row) => string); // Tooltip da célula
|
|
99
|
+
badgeConfigs?: BadgeConfigs[]; // Configuração de badges para ENUM
|
|
100
|
+
sequence?: number; // Ordem de exibição da coluna
|
|
101
|
+
prefix?: string; // Prefixo de tradução para ENUM/BOOLEAN
|
|
102
|
+
enumPrefix?: string; // Prefixo de tradução específico para ENUM
|
|
103
|
+
numberFormatOptions?: Intl.NumberFormatOptions | ((row) => Intl.NumberFormatOptions);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
enum EnumColumnFieldType {
|
|
107
|
+
STRING = 'string', // Texto simples
|
|
108
|
+
NUMBER = 'number', // Número formatado com locale
|
|
109
|
+
CURRENCY = 'currency', // Valor monetário com símbolo
|
|
110
|
+
DATE = 'date', // Data formatada com locale
|
|
111
|
+
BOOLEAN = 'boolean', // Sim/Não traduzido
|
|
112
|
+
ENUM = 'enum', // Valor traduzido via i18n
|
|
113
|
+
TOKENS = 'tokens', // Lista de tokens coloridos
|
|
114
|
+
LINK = 'link', // Texto clicável
|
|
115
|
+
}
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
## Exemplos
|
|
119
|
+
|
|
120
|
+
### Tabela com formatação localizada
|
|
121
|
+
|
|
122
|
+
```typescript
|
|
123
|
+
const colunas: Column[] = [
|
|
124
|
+
{ header: 'Nome', attributes: ['nome'], type: EnumColumnFieldType.STRING, style: {} },
|
|
125
|
+
{ header: 'Cargo', attributes: ['cargo'], type: EnumColumnFieldType.STRING, style: {} },
|
|
126
|
+
{ header: 'Salário', attributes: ['salario'], type: EnumColumnFieldType.CURRENCY, style: { textAlign: 'right' } },
|
|
127
|
+
{ header: 'Ativo', attributes: ['ativo'], type: EnumColumnFieldType.BOOLEAN, style: { textAlign: 'center' } },
|
|
128
|
+
{ header: 'Admissão', attributes: ['admissao'], type: EnumColumnFieldType.DATE, style: {} },
|
|
129
|
+
];
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
```html
|
|
133
|
+
<p-table [value]="funcionarios" [columns]="colunas" styleClass="p-datatable-sm p-datatable-striped">
|
|
134
|
+
<ng-template pTemplate="header">
|
|
135
|
+
<tr>
|
|
136
|
+
@for (col of colunas; track col.header) {
|
|
137
|
+
<th [style]="col.style">{{ col.header }}</th>
|
|
138
|
+
}
|
|
139
|
+
</tr>
|
|
140
|
+
</ng-template>
|
|
141
|
+
<ng-template pTemplate="body" let-row>
|
|
142
|
+
<tr>
|
|
143
|
+
<s-table-columns [columns]="colunas" [rowValue]="row" />
|
|
144
|
+
</tr>
|
|
145
|
+
</ng-template>
|
|
146
|
+
</p-table>
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
### Com paginação customizada
|
|
150
|
+
|
|
151
|
+
```html
|
|
152
|
+
<p-table #tabela [value]="dados" [columns]="colunas" [lazy]="true" (onLazyLoad)="carregar($event)">
|
|
153
|
+
<!-- cabeçalho e corpo -->
|
|
154
|
+
<ng-template pTemplate="footer">
|
|
155
|
+
<tr>
|
|
156
|
+
<td [attr.colspan]="colunas.length">
|
|
157
|
+
<s-table-paging
|
|
158
|
+
[table]="tabela"
|
|
159
|
+
[totalRecords]="totalRegistros"
|
|
160
|
+
exportFileName="relatorio"
|
|
161
|
+
[loadAllRecords]="carregarTodos"
|
|
162
|
+
></s-table-paging>
|
|
163
|
+
</td>
|
|
164
|
+
</tr>
|
|
165
|
+
</ng-template>
|
|
166
|
+
</p-table>
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
### Com navegação por teclado
|
|
170
|
+
|
|
171
|
+
```html
|
|
172
|
+
<p-table sNavigation [value]="dados" [columns]="colunas">
|
|
173
|
+
<!-- cabeçalho e corpo -->
|
|
174
|
+
</p-table>
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
## Acessibilidade
|
|
178
|
+
|
|
179
|
+
- A diretiva `[sNavigation]` adiciona suporte completo a navegação por teclado: `ArrowUp`/`ArrowDown` para linhas, `ArrowLeft`/`ArrowRight` para células
|
|
180
|
+
- As colunas do tipo `BOOLEAN` são traduzidas automaticamente via i18n (`yes`/`no`)
|
|
181
|
+
- O `s-table-paging` exibe o total de registros em texto legível por leitores de tela
|
|
182
|
+
|
|
183
|
+
## Componentes relacionados
|
|
184
|
+
|
|
185
|
+
- [`Paginator`](../paginator/README.md) — paginação standalone
|
package/text-area-ia/README.md
CHANGED
|
@@ -1,17 +1,28 @@
|
|
|
1
|
-
#
|
|
1
|
+
# TextAreaIA
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+

|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Alias de compatibilidade para o componente `ContentGenerator`. Este pacote está descontinuado e será removido na versão 20.0.0.
|
|
6
|
+
|
|
7
|
+
## Quando usar
|
|
8
|
+
|
|
9
|
+
- Não use este componente em projetos novos
|
|
10
|
+
|
|
11
|
+
## Quando não usar
|
|
12
|
+
|
|
13
|
+
- Em todos os casos novos — prefira `ContentGenerator` diretamente
|
|
6
14
|
|
|
7
15
|
## Migração
|
|
8
16
|
|
|
9
17
|
```typescript
|
|
10
|
-
// Antes
|
|
18
|
+
// Antes (descontinuado)
|
|
11
19
|
import { TextAreaIAModule } from '@seniorsistemas/angular-components/text-area-ia';
|
|
12
20
|
|
|
13
|
-
// Depois
|
|
21
|
+
// Depois (substituto)
|
|
14
22
|
import { ContentGeneratorModule } from '@seniorsistemas/angular-components/content-generator';
|
|
15
23
|
```
|
|
16
24
|
|
|
17
|
-
|
|
25
|
+
## Componentes relacionados
|
|
26
|
+
|
|
27
|
+
- [`ContentGenerator`](../content-generator/README.md) — substituto recomendado com suporte completo a IA
|
|
28
|
+
- [`TextArea`](../text-area/README.md) — área de texto simples sem assistente de IA
|