@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.
Files changed (76) hide show
  1. package/accordion/README.md +166 -0
  2. package/alert/README.md +92 -0
  3. package/autocomplete/README.md +162 -0
  4. package/badge/README.md +126 -0
  5. package/bignumber-input/README.md +122 -0
  6. package/breadcrumb/README.md +144 -0
  7. package/button/README.md +159 -0
  8. package/calendar-mask/README.md +89 -0
  9. package/card/README.md +133 -0
  10. package/chat/README.md +130 -0
  11. package/checkbox/README.md +108 -0
  12. package/checkbox-list/README.md +149 -0
  13. package/chips/README.md +152 -0
  14. package/code-editor/README.md +149 -0
  15. package/collapse-link/README.md +128 -0
  16. package/confirm-dialog/README.md +105 -0
  17. package/content-generator/README.md +111 -0
  18. package/control-errors/README.md +92 -0
  19. package/country-phone-picker/README.md +121 -0
  20. package/currency/README.md +90 -0
  21. package/custom-fields/README.md +142 -0
  22. package/dialog/README.md +152 -0
  23. package/dynamic-form/README.md +176 -0
  24. package/editable-overlay/README.md +98 -0
  25. package/empty-state/README.md +134 -0
  26. package/esm2022/loading-state/lib/loading-state/loading-state.component.mjs +4 -4
  27. package/fesm2022/seniorsistemas-angular-components-loading-state.mjs +3 -3
  28. package/fesm2022/seniorsistemas-angular-components-loading-state.mjs.map +1 -1
  29. package/fieldset/README.md +135 -0
  30. package/file-picker/README.md +162 -0
  31. package/file-upload/README.md +23 -7
  32. package/gantt/README.md +173 -0
  33. package/global-search/README.md +151 -0
  34. package/grid-menu/README.md +123 -0
  35. package/help-popover/README.md +134 -0
  36. package/ia-insight/README.md +24 -6
  37. package/image-cropper/README.md +140 -0
  38. package/infinite-scroll/README.md +130 -0
  39. package/info-sign/README.md +111 -0
  40. package/inline-edit/README.md +139 -0
  41. package/insights/README.md +159 -0
  42. package/interactive-content/README.md +120 -0
  43. package/kanban/README.md +184 -0
  44. package/label-value/README.md +154 -0
  45. package/loading-state/README.md +141 -0
  46. package/localized-number-input/README.md +128 -0
  47. package/mouse-events/README.md +157 -0
  48. package/navigation-button/README.md +160 -0
  49. package/numeric/README.md +147 -0
  50. package/numeric-mask/README.md +170 -0
  51. package/object-card/README.md +158 -0
  52. package/package.json +1 -1
  53. package/paginator/README.md +121 -0
  54. package/panel/README.md +147 -0
  55. package/password-strength/README.md +144 -0
  56. package/picklist/README.md +170 -0
  57. package/pin-code-field/README.md +137 -0
  58. package/product-header/README.md +33 -6
  59. package/profile-picture-picker/README.md +159 -0
  60. package/progressbar/README.md +136 -0
  61. package/radio-button/README.md +117 -0
  62. package/rating-scale/README.md +154 -0
  63. package/select/README.md +147 -0
  64. package/select-button/README.md +137 -0
  65. package/sidebar/README.md +117 -0
  66. package/slide-in-bar/README.md +122 -0
  67. package/slider/README.md +127 -0
  68. package/speech-recognition/README.md +104 -0
  69. package/split-button/README.md +126 -0
  70. package/spotlight/README.md +200 -0
  71. package/star-rating/README.md +127 -0
  72. package/stats-card/README.md +135 -0
  73. package/stepper/README.md +164 -0
  74. package/switch/README.md +125 -0
  75. package/table/README.md +185 -0
  76. package/text-area-ia/README.md +17 -6
@@ -0,0 +1,185 @@
1
+ # Table
2
+
3
+ ![Status](https://img.shields.io/badge/status-stable-brightgreen)
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
@@ -1,17 +1,28 @@
1
- # text-area-ia
1
+ # TextAreaIA
2
2
 
3
- > **⚠️ Descontinuado** — Este pacote será removido na versão 20.0.0.
3
+ ![Status](https://img.shields.io/badge/status-deprecated-red)
4
4
 
5
- `text-area-ia` é um alias de compatibilidade para `content-generator`. Use o pacote substituto em novos projetos.
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
- Consulte a documentação do [Content Generator](/docs/components-feedback-content-generator--docs) para a lista completa de inputs e exemplos de uso.
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