@seniorsistemas/components-ai 0.0.0-master-d4a804fe

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/CHANGELOG.md +101 -0
  2. package/CONTRIBUTING.md +317 -0
  3. package/README.md +161 -0
  4. package/docs/API.md +486 -0
  5. package/docs/COMPONENTS.md +272 -0
  6. package/docs/EXAMPLES.md +559 -0
  7. package/docs/MIGRATION.md +367 -0
  8. package/esm2022/lib/angular-components.module.mjs +25 -0
  9. package/esm2022/lib/components/breadcrumb/breadcrumb.component.mjs +121 -0
  10. package/esm2022/lib/components/bulk-delete-dialog/bulk-delete-dialog.component.mjs +176 -0
  11. package/esm2022/lib/components/dynamic-form/dynamic-form.component.mjs +625 -0
  12. package/esm2022/lib/components/dynamic-form/fields/dynamic-field-date.component.mjs +86 -0
  13. package/esm2022/lib/components/dynamic-form/fields/dynamic-field-dropdown.component.mjs +103 -0
  14. package/esm2022/lib/components/dynamic-form/fields/dynamic-field-lookup.component.mjs +599 -0
  15. package/esm2022/lib/components/dynamic-form/fields/dynamic-field-number.component.mjs +92 -0
  16. package/esm2022/lib/components/dynamic-form/fields/dynamic-field-text.component.mjs +163 -0
  17. package/esm2022/lib/components/dynamic-form/fields/dynamic-field-textarea.component.mjs +81 -0
  18. package/esm2022/lib/components/dynamic-form/fields/dynamic-field-wrapper.component.mjs +93 -0
  19. package/esm2022/lib/components/dynamic-form/fields/index.mjs +8 -0
  20. package/esm2022/lib/components/dynamic-form/models/dynamic-form.models.mjs +2 -0
  21. package/esm2022/lib/components/export-dialog/export-dialog.component.mjs +219 -0
  22. package/esm2022/lib/config/translation.config.mjs +70 -0
  23. package/esm2022/lib/directives/cep-mask.directive.mjs +79 -0
  24. package/esm2022/lib/directives/document-mask.directive.mjs +62 -0
  25. package/esm2022/lib/directives/phone-mask.directive.mjs +59 -0
  26. package/esm2022/lib/interceptors/api.interceptor.mjs +55 -0
  27. package/esm2022/lib/models/base-entity.interface.mjs +2 -0
  28. package/esm2022/lib/models/entity-list.config.mjs +2 -0
  29. package/esm2022/lib/pipes/translate.pipe.mjs +74 -0
  30. package/esm2022/lib/services/auth.service.mjs +169 -0
  31. package/esm2022/lib/services/cookie.service.mjs +90 -0
  32. package/esm2022/lib/services/entity.service.mjs +208 -0
  33. package/esm2022/lib/services/mask.service.mjs +121 -0
  34. package/esm2022/lib/services/permission.service.mjs +180 -0
  35. package/esm2022/lib/services/senior-token.service.mjs +209 -0
  36. package/esm2022/lib/services/theme.service.mjs +85 -0
  37. package/esm2022/lib/services/translation.service.mjs +232 -0
  38. package/esm2022/public-api.mjs +90 -0
  39. package/esm2022/seniorsistemas-components-ai.mjs +5 -0
  40. package/fesm2022/seniorsistemas-components-ai.mjs +4006 -0
  41. package/fesm2022/seniorsistemas-components-ai.mjs.map +1 -0
  42. package/index.d.ts +5 -0
  43. package/lib/angular-components.module.d.ts +13 -0
  44. package/lib/components/breadcrumb/breadcrumb.component.d.ts +23 -0
  45. package/lib/components/bulk-delete-dialog/bulk-delete-dialog.component.d.ts +46 -0
  46. package/lib/components/dynamic-form/dynamic-form.component.d.ts +97 -0
  47. package/lib/components/dynamic-form/fields/dynamic-field-date.component.d.ts +16 -0
  48. package/lib/components/dynamic-form/fields/dynamic-field-dropdown.component.d.ts +17 -0
  49. package/lib/components/dynamic-form/fields/dynamic-field-lookup.component.d.ts +52 -0
  50. package/lib/components/dynamic-form/fields/dynamic-field-number.component.d.ts +16 -0
  51. package/lib/components/dynamic-form/fields/dynamic-field-text.component.d.ts +17 -0
  52. package/lib/components/dynamic-form/fields/dynamic-field-textarea.component.d.ts +16 -0
  53. package/lib/components/dynamic-form/fields/dynamic-field-wrapper.component.d.ts +20 -0
  54. package/lib/components/dynamic-form/fields/index.d.ts +7 -0
  55. package/lib/components/dynamic-form/models/dynamic-form.models.d.ts +178 -0
  56. package/lib/components/export-dialog/export-dialog.component.d.ts +56 -0
  57. package/lib/config/translation.config.d.ts +24 -0
  58. package/lib/directives/cep-mask.directive.d.ts +13 -0
  59. package/lib/directives/document-mask.directive.d.ts +19 -0
  60. package/lib/directives/phone-mask.directive.d.ts +11 -0
  61. package/lib/interceptors/api.interceptor.d.ts +2 -0
  62. package/lib/models/base-entity.interface.d.ts +7 -0
  63. package/lib/models/entity-list.config.d.ts +161 -0
  64. package/lib/pipes/translate.pipe.d.ts +21 -0
  65. package/lib/services/auth.service.d.ts +82 -0
  66. package/lib/services/cookie.service.d.ts +31 -0
  67. package/lib/services/entity.service.d.ts +99 -0
  68. package/lib/services/mask.service.d.ts +36 -0
  69. package/lib/services/permission.service.d.ts +91 -0
  70. package/lib/services/senior-token.service.d.ts +70 -0
  71. package/lib/services/theme.service.d.ts +16 -0
  72. package/lib/services/translation.service.d.ts +54 -0
  73. package/package.json +53 -0
  74. package/public-api.d.ts +17 -0
  75. package/src/lib/styles/entity-list.shared.scss +383 -0
  76. package/src/lib/styles/index.scss +10 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,101 @@
1
+ # Changelog
2
+
3
+ Todas as mudanças notáveis neste projeto serão documentadas neste arquivo.
4
+
5
+ O formato é baseado em [Keep a Changelog](https://keepachangelog.com/pt-BR/1.0.0/),
6
+ e este projeto adere ao [Semantic Versioning](https://semver.org/lang/pt-BR/).
7
+
8
+ ## [1.0.0] - 2026-02-13
9
+
10
+ ### 🎉 Lançamento Inicial
11
+
12
+ Primeira versão da biblioteca `@seniorsistemas/components-ia`.
13
+
14
+ ### ✨ Adicionado
15
+
16
+ #### Componentes
17
+ - **DynamicFormComponent** - Formulário dinâmico com suporte a:
18
+ - Múltiplos tipos de campo (text, number, date, select, lookup, etc)
19
+ - Modos: create, edit, filter, inline-edit
20
+ - Display modes: inline, dialog, drawer
21
+ - Suporte a seções colapsáveis
22
+ - Validações customizadas
23
+ - Máscaras de input
24
+
25
+ - **ExportDialogComponent** - Exportação de dados em Excel e PDF
26
+ - **BulkDeleteDialogComponent** - Exclusão em massa com confirmação
27
+ - **BreadcrumbComponent** - Navegação breadcrumb
28
+
29
+ #### Serviços
30
+ - **EntityService<T>** - Serviço base genérico para CRUD
31
+ - `list()` - Listagem com paginação
32
+ - `getById()` - Buscar por ID
33
+ - `insert()` - Criar registro
34
+ - `update()` - Atualizar registro
35
+ - `delete()` - Excluir registro
36
+ - `bulkDelete()` - Exclusão em massa
37
+
38
+ - **TranslationService** - Internacionalização (i18n)
39
+ - **ThemeService** - Gerenciamento de temas light/dark
40
+ - **AuthService** - Autenticação e tokens
41
+ - **PermissionService** - Controle de permissões
42
+ - **CookieService** - Gerenciamento de cookies
43
+ - **SeniorTokenService** - Tokens Senior
44
+ - **MaskService** - Máscaras de input
45
+
46
+ #### Diretivas
47
+ - **CepMaskDirective** - Máscara de CEP (00000-000)
48
+ - **DocumentMaskDirective** - Máscara de CPF/CNPJ
49
+ - **PhoneMaskDirective** - Máscara de telefone
50
+
51
+ #### Pipes
52
+ - **TranslatePipe** - Pipe de tradução
53
+
54
+ #### Interceptors
55
+ - **apiInterceptor** - Interceptor HTTP para API
56
+
57
+ #### Modelos
58
+ - **BaseEntity** - Interface base para entidades
59
+ - **DynamicFormFieldConfig** - Configuração de campos
60
+ - **DynamicFormSection** - Configuração de seções
61
+ - **FieldType** - Enum de tipos de campo
62
+ - **ColumnOption** - Configuração de colunas
63
+
64
+ #### Documentação
65
+ - **COMPONENTS.md** - Documentação completa de componentes
66
+ - **EXAMPLES.md** - Exemplos práticos
67
+ - **API.md** - Referência da API
68
+ - **MIGRATION.md** - Guia de migração
69
+ - **README.md** - Documentação principal
70
+
71
+ ### 📦 Configuração
72
+ - Suporte a Angular 18.2+
73
+ - Integração com PrimeNG 18.0+
74
+ - Prefixo de componentes: `sia-`
75
+ - Build otimizado com ng-packagr
76
+ - Assets incluem estilos SCSS e documentação
77
+
78
+ ### 🎨 Estilos
79
+ - Estilos compartilhados para listagens
80
+ - Suporte a temas PrimeNG
81
+ - Responsividade mobile-first
82
+ - Acessibilidade (ARIA)
83
+
84
+ ---
85
+
86
+ ## Tipos de Mudanças
87
+
88
+ - `✨ Adicionado` - Novas funcionalidades
89
+ - `🔄 Modificado` - Mudanças em funcionalidades existentes
90
+ - `🗑️ Removido` - Funcionalidades removidas
91
+ - `🐛 Corrigido` - Correções de bugs
92
+ - `🔒 Segurança` - Correções de vulnerabilidades
93
+ - `⚠️ Descontinuado` - Funcionalidades que serão removidas
94
+
95
+ ---
96
+
97
+ ## Links
98
+
99
+ - [Documentação](./docs/COMPONENTS.md)
100
+ - [Exemplos](./docs/EXAMPLES.md)
101
+ - [API Reference](./docs/API.md)
@@ -0,0 +1,317 @@
1
+ # Guia de Contribuição
2
+
3
+ Obrigado por considerar contribuir com `@seniorsistemas/components-ia`! 🎉
4
+
5
+ ## 📋 Índice
6
+
7
+ - [Código de Conduta](#código-de-conduta)
8
+ - [Como Contribuir](#como-contribuir)
9
+ - [Padrões de Código](#padrões-de-código)
10
+ - [Processo de Pull Request](#processo-de-pull-request)
11
+ - [Estrutura do Projeto](#estrutura-do-projeto)
12
+
13
+ ---
14
+
15
+ ## 📜 Código de Conduta
16
+
17
+ Este projeto adere a um código de conduta. Ao participar, você concorda em manter um ambiente respeitoso e colaborativo.
18
+
19
+ ---
20
+
21
+ ## 🤝 Como Contribuir
22
+
23
+ ### Reportar Bugs
24
+
25
+ Se encontrar um bug, por favor abra uma issue com:
26
+
27
+ - Descrição clara do problema
28
+ - Passos para reproduzir
29
+ - Comportamento esperado vs atual
30
+ - Versão da biblioteca e Angular
31
+ - Screenshots (se aplicável)
32
+
33
+ ### Sugerir Melhorias
34
+
35
+ Para sugerir novas funcionalidades:
36
+
37
+ - Descreva o caso de uso
38
+ - Explique por que seria útil
39
+ - Forneça exemplos de uso
40
+ - Considere alternativas
41
+
42
+ ### Contribuir com Código
43
+
44
+ 1. **Fork o repositório**
45
+ 2. **Clone seu fork**
46
+ ```bash
47
+ git clone https://github.com/seu-usuario/components-ia.git
48
+ ```
49
+ 3. **Crie uma branch**
50
+ ```bash
51
+ git checkout -b feature/minha-feature
52
+ ```
53
+ 4. **Faça suas alterações**
54
+ 5. **Commit suas mudanças**
55
+ ```bash
56
+ git commit -m "feat: adiciona nova funcionalidade"
57
+ ```
58
+ 6. **Push para o GitHub**
59
+ ```bash
60
+ git push origin feature/minha-feature
61
+ ```
62
+ 7. **Abra um Pull Request**
63
+
64
+ ---
65
+
66
+ ## 💻 Padrões de Código
67
+
68
+ ### Convenções de Nomenclatura
69
+
70
+ - **Componentes**: PascalCase (ex: `DynamicFormComponent`)
71
+ - **Serviços**: PascalCase com sufixo Service (ex: `EntityService`)
72
+ - **Interfaces**: PascalCase (ex: `DynamicFormFieldConfig`)
73
+ - **Enums**: PascalCase (ex: `FieldType`)
74
+ - **Variáveis**: camelCase (ex: `formFields`)
75
+ - **Constantes**: UPPER_SNAKE_CASE (ex: `DEFAULT_PAGE_SIZE`)
76
+
77
+ ### Estrutura de Arquivos
78
+
79
+ ```
80
+ component-name/
81
+ ├── component-name.component.ts
82
+ ├── component-name.component.html
83
+ ├── component-name.component.scss
84
+ ├── component-name.component.spec.ts
85
+ └── README.md (opcional)
86
+ ```
87
+
88
+ ### TypeScript
89
+
90
+ - Use tipos explícitos sempre que possível
91
+ - Evite `any` (use `unknown` se necessário)
92
+ - Use interfaces para objetos complexos
93
+ - Documente funções públicas com JSDoc
94
+
95
+ ```typescript
96
+ /**
97
+ * Cria um novo registro
98
+ * @param entity - Dados da entidade
99
+ * @returns Observable com a entidade criada
100
+ */
101
+ insert(entity: Partial<T>): Observable<T> {
102
+ return this.http.post<T>(this.apiUrl, entity);
103
+ }
104
+ ```
105
+
106
+ ### HTML/Templates
107
+
108
+ - Use formatação consistente
109
+ - Prefira `*ngIf` e `*ngFor` ao invés de `ng-template`
110
+ - Use `trackBy` em `*ngFor` para performance
111
+ - Mantenha templates simples (lógica no component)
112
+
113
+ ### SCSS
114
+
115
+ - Use variáveis para cores e espaçamentos
116
+ - Siga a metodologia BEM quando apropriado
117
+ - Evite seletores profundos
118
+ - Use mixins para código reutilizável
119
+
120
+ ### Commits
121
+
122
+ Siga o padrão [Conventional Commits](https://www.conventionalcommits.org/):
123
+
124
+ ```
125
+ <tipo>(<escopo>): <descrição>
126
+
127
+ [corpo opcional]
128
+
129
+ [rodapé opcional]
130
+ ```
131
+
132
+ **Tipos:**
133
+ - `feat`: Nova funcionalidade
134
+ - `fix`: Correção de bug
135
+ - `docs`: Documentação
136
+ - `style`: Formatação (não afeta código)
137
+ - `refactor`: Refatoração
138
+ - `test`: Testes
139
+ - `chore`: Manutenção
140
+
141
+ **Exemplos:**
142
+ ```
143
+ feat(dynamic-form): adiciona suporte a validação assíncrona
144
+ fix(export-dialog): corrige exportação de datas
145
+ docs(readme): atualiza exemplos de uso
146
+ refactor(entity-service): melhora tipagem genérica
147
+ test(breadcrumb): adiciona testes unitários
148
+ ```
149
+
150
+ ---
151
+
152
+ ## 🔄 Processo de Pull Request
153
+
154
+ ### Checklist
155
+
156
+ Antes de submeter um PR, verifique:
157
+
158
+ - [ ] Código segue os padrões do projeto
159
+ - [ ] Testes foram adicionados/atualizados
160
+ - [ ] Documentação foi atualizada
161
+ - [ ] Build passa sem erros
162
+ - [ ] Testes passam
163
+ - [ ] Commit messages seguem o padrão
164
+ - [ ] Branch está atualizada com main
165
+
166
+ ### Revisão
167
+
168
+ - PRs serão revisados por mantenedores
169
+ - Feedback será fornecido via comentários
170
+ - Mudanças podem ser solicitadas
171
+ - Após aprovação, o PR será merged
172
+
173
+ ### Após o Merge
174
+
175
+ - Sua contribuição será incluída no próximo release
176
+ - Você será creditado no CHANGELOG
177
+ - Obrigado pela contribuição! 🎉
178
+
179
+ ---
180
+
181
+ ## 📁 Estrutura do Projeto
182
+
183
+ ```
184
+ components-ia/
185
+ ├── projects/
186
+ │ └── seniorsistemas/
187
+ │ └── components-ia/
188
+ │ ├── src/
189
+ │ │ ├── lib/
190
+ │ │ │ ├── components/ # Componentes
191
+ │ │ │ ├── services/ # Serviços
192
+ │ │ │ ├── directives/ # Diretivas
193
+ │ │ │ ├── pipes/ # Pipes
194
+ │ │ │ ├── models/ # Interfaces/Types
195
+ │ │ │ ├── interceptors/ # Interceptors
196
+ │ │ │ ├── config/ # Configurações
197
+ │ │ │ └── styles/ # Estilos globais
198
+ │ │ └── public-api.ts # API pública
199
+ │ ├── docs/ # Documentação
200
+ │ ├── package.json
201
+ │ ├── README.md
202
+ │ ├── CHANGELOG.md
203
+ │ └── CONTRIBUTING.md
204
+ ├── angular.json
205
+ ├── package.json
206
+ └── tsconfig.json
207
+ ```
208
+
209
+ ---
210
+
211
+ ## 🧪 Testes
212
+
213
+ ### Executar Testes
214
+
215
+ ```bash
216
+ npm run test
217
+ ```
218
+
219
+ ### Cobertura
220
+
221
+ ```bash
222
+ npm run test:coverage
223
+ ```
224
+
225
+ ### Escrever Testes
226
+
227
+ - Teste comportamento, não implementação
228
+ - Use mocks para dependências
229
+ - Teste casos de sucesso e erro
230
+ - Mantenha testes simples e legíveis
231
+
232
+ ```typescript
233
+ describe('DynamicFormComponent', () => {
234
+ it('should create form with fields', () => {
235
+ const fields: DynamicFormFieldConfig[] = [
236
+ { name: 'name', label: 'Nome', type: FieldType.TEXT, cols: 12 }
237
+ ];
238
+ component.formFields = fields;
239
+ component.ngOnInit();
240
+ expect(component.getForm().get('name')).toBeDefined();
241
+ });
242
+ });
243
+ ```
244
+
245
+ ---
246
+
247
+ ## 📖 Documentação
248
+
249
+ ### Atualizar Documentação
250
+
251
+ Ao adicionar/modificar funcionalidades:
252
+
253
+ 1. Atualize `docs/COMPONENTS.md`
254
+ 2. Adicione exemplos em `docs/EXAMPLES.md`
255
+ 3. Atualize `docs/API.md` se necessário
256
+ 4. Atualize `CHANGELOG.md`
257
+ 5. Atualize `README.md` se relevante
258
+
259
+ ### Escrever Documentação
260
+
261
+ - Use linguagem clara e objetiva
262
+ - Forneça exemplos práticos
263
+ - Inclua casos de uso comuns
264
+ - Documente parâmetros e retornos
265
+ - Adicione screenshots quando útil
266
+
267
+ ---
268
+
269
+ ## 🚀 Build e Publicação
270
+
271
+ ### Build Local
272
+
273
+ ```bash
274
+ npm run build
275
+ ```
276
+
277
+ ### Testar Localmente
278
+
279
+ ```bash
280
+ # Na biblioteca
281
+ cd dist/seniorsistemas/components-ia
282
+ npm link
283
+
284
+ # No projeto de teste
285
+ npm link @seniorsistemas/components-ia
286
+ ```
287
+
288
+ ### Publicação
289
+
290
+ Apenas mantenedores podem publicar:
291
+
292
+ ```bash
293
+ npm run build:prod
294
+ cd dist/seniorsistemas/components-ia
295
+ npm publish
296
+ ```
297
+
298
+ ---
299
+
300
+ ## 💡 Dicas
301
+
302
+ - Comece com issues marcadas como `good first issue`
303
+ - Pergunte se tiver dúvidas
304
+ - Mantenha PRs focados e pequenos
305
+ - Seja paciente durante a revisão
306
+ - Aprenda com o feedback
307
+
308
+ ---
309
+
310
+ ## 📞 Contato
311
+
312
+ - Issues: [GitHub Issues](https://github.com/senior-sistemas/components-ia/issues)
313
+ - Discussões: [GitHub Discussions](https://github.com/senior-sistemas/components-ia/discussions)
314
+
315
+ ---
316
+
317
+ Obrigado por contribuir! 🙏
package/README.md ADDED
@@ -0,0 +1,161 @@
1
+ # @seniorsistemas/components-ia
2
+
3
+ Biblioteca de componentes reutilizáveis com inteligência artificial para aplicações da Senior Sistemas.
4
+
5
+ ## 📦 Instalação
6
+
7
+ ```bash
8
+ npm install @seniorsistemas/components-ia
9
+ ```
10
+
11
+ ## 🎯 Objetivo
12
+
13
+ Esta biblioteca fornece componentes, serviços e utilitários comuns para acelerar o desenvolvimento de aplicações, eliminando duplicação de código e garantindo consistência entre projetos.
14
+
15
+ ## 🚀 Recursos
16
+
17
+ ### Componentes
18
+ - **DynamicFormComponent** - Formulário dinâmico com múltiplos modos e tipos de campo
19
+ - **ExportDialogComponent** - Exportação de dados (Excel, PDF)
20
+ - **BulkDeleteDialogComponent** - Exclusão em massa
21
+ - **BreadcrumbComponent** - Navegação breadcrumb
22
+
23
+ ### Serviços
24
+ - **EntityService** - Serviço base genérico para CRUD
25
+ - **AuthService** - Autenticação
26
+ - **TranslationService** - Internacionalização
27
+ - **ThemeService** - Gerenciamento de temas
28
+ - **PermissionService** - Controle de permissões
29
+
30
+ ### Diretivas
31
+ - **CepMaskDirective** - Máscara de CEP
32
+ - **DocumentMaskDirective** - Máscara de CPF/CNPJ
33
+ - **PhoneMaskDirective** - Máscara de telefone
34
+
35
+ ### Pipes
36
+ - **TranslatePipe** - Pipe de tradução
37
+
38
+ ## 📖 Uso Básico
39
+
40
+ ### Importar o módulo
41
+
42
+ ```typescript
43
+ import { AngularComponentsModule } from '@seniorsistemas/components-ia';
44
+
45
+ @NgModule({
46
+ imports: [
47
+ AngularComponentsModule
48
+ ]
49
+ })
50
+ export class AppModule { }
51
+ ```
52
+
53
+ ### Exemplo: Formulário Dinâmico
54
+
55
+ ```typescript
56
+ import { Component } from '@angular/core';
57
+ import { DynamicFormFieldConfig, FieldType } from '@seniorsistemas/components-ia';
58
+
59
+ @Component({
60
+ selector: 'app-product-form',
61
+ template: `
62
+ <sia-dynamic-form
63
+ [formFields]="formFields"
64
+ [mode]="'create'"
65
+ (onSubmit)="handleSubmit($event)"
66
+ ></sia-dynamic-form>
67
+ `
68
+ })
69
+ export class ProductFormComponent {
70
+ formFields: DynamicFormFieldConfig[] = [
71
+ {
72
+ name: 'name',
73
+ label: 'Nome do Produto',
74
+ type: FieldType.TEXT,
75
+ required: true,
76
+ cols: 12
77
+ },
78
+ {
79
+ name: 'price',
80
+ label: 'Preço',
81
+ type: FieldType.NUMBER,
82
+ required: true,
83
+ cols: 6
84
+ }
85
+ ];
86
+
87
+ handleSubmit(formValue: any): void {
88
+ console.log('Produto criado:', formValue);
89
+ }
90
+ }
91
+ ```
92
+
93
+ ### Exemplo: Formulário em Dialog
94
+
95
+ ```typescript
96
+ <sia-dynamic-form
97
+ [(visible)]="showDialog"
98
+ [formFields]="formFields"
99
+ [entity]="selectedEntity"
100
+ [mode]="selectedEntity ? 'edit' : 'create'"
101
+ [displayMode]="'dialog'"
102
+ [dialogHeader]="'Novo Produto'"
103
+ (onSubmit)="handleSubmit($event)"
104
+ ></sia-dynamic-form>
105
+ ```
106
+
107
+ ## 📚 Documentação Completa
108
+
109
+ A biblioteca inclui documentação detalhada na pasta `docs/`:
110
+
111
+ - **[COMPONENTS.md](./docs/COMPONENTS.md)** - Documentação completa de cada componente
112
+ - **[EXAMPLES.md](./docs/EXAMPLES.md)** - Exemplos práticos de uso
113
+ - **[API.md](./docs/API.md)** - Referência completa da API
114
+ - **[MIGRATION.md](./docs/MIGRATION.md)** - Guia de migração
115
+
116
+ ### Acessando a Documentação
117
+
118
+ Após instalar a biblioteca, a documentação estará disponível em:
119
+ ```
120
+ node_modules/@seniorsistemas/components-ia/docs/
121
+ ```
122
+
123
+ Você pode abrir os arquivos diretamente no seu editor:
124
+ ```bash
125
+ code node_modules/@seniorsistemas/components-ia/docs/COMPONENTS.md
126
+ code node_modules/@seniorsistemas/components-ia/docs/EXAMPLES.md
127
+ ```
128
+
129
+ ## 🛠️ Desenvolvimento
130
+
131
+ ### Build
132
+
133
+ ```bash
134
+ npm run build
135
+ ```
136
+
137
+ ### Testes
138
+
139
+ ```bash
140
+ npm run test
141
+ ```
142
+
143
+ ## 📋 Requisitos
144
+
145
+ - Angular 18.2+
146
+ - PrimeNG 18.0+
147
+ - RxJS 7.8+
148
+
149
+ ## 🤝 Contribuindo
150
+
151
+ Contribuições são bem-vindas! Por favor, leia o [guia de contribuição](./CONTRIBUTING.md) antes de submeter PRs.
152
+
153
+ ## 📄 Licença
154
+
155
+ MIT © Senior Sistemas
156
+
157
+ ## 🔗 Links
158
+
159
+ - [Documentação Completa](./docs/COMPONENTS.md)
160
+ - [Exemplos](./docs/EXAMPLES.md)
161
+ - [Changelog](./CHANGELOG.md)