ngx-opalbytes-components 1.12.0 → 1.14.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/README.md CHANGED
@@ -85,6 +85,7 @@ src/
85
85
  | ├── base-button/
86
86
  | ├── base-input/
87
87
  | ├── base-time-range/
88
+ | ├── base-toggle/
88
89
  | ├── drop-down/
89
90
  | ├── footer/
90
91
  | ├── links-button/
@@ -421,16 +422,52 @@ Um campo de preenchimento automático que funciona com `ngModel` ou `formControl
421
422
 
422
423
  **Seletor:** `<cao-autocomplete>`
423
424
 
425
+ **Interface `ICaoAutoCompleteOption`**
426
+
427
+ | Propriedade | Tipo | Descrição |
428
+ | --- | --- | --- |
429
+ | `id` | `string \| number` | (Opcional) Identificador único da opção. |
430
+ | `nome` | `string` | Texto exibido (usado para filtro e exibição). |
431
+ | `icon` | `string` | (Opcional) Caminho ou nome do ícone. |
432
+ | `iconPosition` | `string` | (Opcional) Posição do ícone na opção. |
433
+
424
434
  **Atributos (Inputs)**
425
435
 
426
- | Atributo | Tipo | Descrição |
436
+ | Atributo | Tipo | Padrão | Descrição |
437
+ | --- | --- | --- | --- |
438
+ | `label` | `string` | `''` | O rótulo do campo. |
439
+ | `placeholder` | `string` | `''` | O texto de placeholder. |
440
+ | `options` | `ICaoAutoCompleteOption[]` | `[]` | A lista de opções para o autocomplete. |
441
+ | `control` | `AbstractControl` | `new FormControl()` | O `FormControl` associado. |
442
+ | `controlName` | `string` | `''` | O nome do controle de formulário. |
443
+ | `dataCy` | `string` | `''` | Atributo para testes E2E. |
444
+ | `isLucideIcon` | `boolean` | `false` | Define se `leadingIcon`/`trailingIcon` são ícones Lucide. |
445
+ | `iconColor` | `string` | `''` | Cor aplicada aos ícones SVG Lucide. |
446
+ | `leadingIcon` | `string` | `undefined` | Ícone exibido antes do texto. |
447
+ | `trailingIcon` | `string` | `undefined` | Ícone exibido após o texto. |
448
+ | `optionIcon` | `string` | `undefined` | Ícone exibido dentro de cada opção do dropdown. |
449
+ | `optionIConColor` | `string` | `undefined` | Cor do ícone das opções. |
450
+ | `isLucideOptionIcon` | `boolean` | `undefined` | Define se `optionIcon` é um ícone Lucide. |
451
+
452
+ **Eventos (Outputs)**
453
+
454
+ | Evento | Tipo | Descrição |
427
455
  | --- | --- | --- |
428
- | `label` | `string` | O rótulo do campo. |
429
- | `placeholder` | `string` | O texto de placeholder. |
430
- | `options` | `IAutoCompleteOption[]` | A lista de opções para o autocomplete. |
431
- | `control` | `AbstractControl` | O `FormControl` associado. |
432
- | `dataCy` | `string` | Atributo para testes E2E. |
433
- | `controlName` | `string` | O nome do controle de formulário. |
456
+ | `OnItemSelected` | `EventEmitter<ICaoAutoCompleteOption>` | Emitido quando uma opção é selecionada. |
457
+ | `OnBlur` | `EventEmitter<void>` | Emitido quando o campo perde o foco. |
458
+ | `OnFocus` | `EventEmitter<void>` | Emitido quando o campo recebe o foco. |
459
+
460
+ **Métodos**
461
+
462
+ | Método | Descrição |
463
+ | --- | --- |
464
+ | `setInputHeight(height: string)` | Define a altura do campo via CSS custom property `--form-field-height`. |
465
+
466
+ **Getter**
467
+
468
+ | Getter | Tipo | Descrição |
469
+ | --- | --- | --- |
470
+ | `errorText` | `string \| null` | Retorna mensagens de erro de validação (requerido, CPF, CNPJ, email, etc). |
434
471
 
435
472
  ---
436
473
 
@@ -517,27 +554,93 @@ Um seletor de intervalo de datas.
517
554
 
518
555
  ---
519
556
 
557
+ ### `BaseToggle`
558
+ Um componente de alternância (toggle switch) que funciona com `ngModel` ou `formControlName`, com suporte a ícones, máscaras e validação.
559
+
560
+ **Seletor:** `<cao-base-toggle>`
561
+
562
+ **Atributos (Inputs)**
563
+
564
+ | Atributo | Tipo | Padrão | Descrição |
565
+ | --- | --- | --- | --- |
566
+ | `type` | `string` | `'text'` | O tipo de input. |
567
+ | `placeholder` | `string` | `''` | O texto de placeholder. |
568
+ | `inputClass` | `string` | `''` | Classes CSS customizadas para o input. |
569
+ | `value` | `string \| number \| boolean \| Date` | `''` | O valor do componente. |
570
+ | `errorMessage` | `string` | `''` | Mensagem de erro a ser exibida. |
571
+ | `isDisabled` | `boolean` | `false` | Desabilita o toggle. |
572
+ | `maxLength` | `number` | `undefined` | Número máximo de caracteres. |
573
+ | `searchMode` | `boolean` | `false` | Ativa o modo de busca. |
574
+ | `showBorder` | `boolean` | `false` | Exibe uma borda no input. |
575
+ | `isLucideIcon` | `boolean` | `false` | Define se o ícone é do pacote Lucide. |
576
+ | `iconColor` | `string` | `''` | Cor do ícone. |
577
+ | `mask` | `string` | `undefined` | Máscara a ser aplicada ao input. |
578
+ | `control` | `AbstractControl \| null` | `undefined` | O `FormControl` associado. |
579
+ | `tooltip` | `string` | `''` | Texto a ser exibido em uma tooltip. |
580
+ | `dataCy` | `string` | `''` | Atributo para testes E2E com Cypress. |
581
+ | `textareaRows` | `string` | `''` | Número de linhas para um textarea. |
582
+ | `decimalMarker` | `'.' \| ',' \| ['.', ',']` | `','` | Marcador decimal para números. |
583
+ | `thousandSeparator` | `string` | `'.'` | Separador de milhares para números. |
584
+ | `allowNegativeNumbers` | `boolean` | `false` | Permite números negativos. |
585
+ | `separatorLimit` | `string` | `''` | Limite do separador. |
586
+ | `controlName` | `string` | `''` | O nome do controle de formulário. |
587
+ | `isChecked` | `boolean` | `false` | Define se o toggle está ativado. |
588
+ | `checkedTextPlaceholder` | `string` | `''` | Texto exibido quando o toggle está ativado. |
589
+ | `uncheckedTextPlaceholder` | `string` | `''` | Texto exibido quando o toggle está desativado. |
590
+ | `leadingIcon` | `string` | `undefined` | Ícone exibido antes do texto. |
591
+ | `trailingIcon` | `string` | `undefined` | Ícone exibido após o texto. |
592
+
593
+ **Eventos (Outputs)**
594
+
595
+ | Evento | Tipo | Descrição |
596
+ | --- | --- | --- |
597
+ | `valueChange` | `EventEmitter<string>` | Emitido quando o valor do input muda. |
598
+ | `searchClick` | `EventEmitter<void>` | Emitido quando o ícone de busca é clicado. |
599
+ | `inputChange` | `EventEmitter<string>` | Emitido a cada mudança no input. |
600
+ | `statusChanged` | `EventEmitter<CaoBaseToggleComponent>` | Emitido quando o toggle é alternado. |
601
+
602
+ ---
603
+
520
604
  ### `DropDown`
521
605
  Um menu suspenso (dropdown) com busca, que funciona com `ngModel` ou `formControlName`.
522
606
 
523
607
  **Seletor:** `<cao-drop-down>`
524
608
 
525
- **Atributos (Inputs)**
609
+ **Interface `ICaoDropDownOption`**
526
610
 
527
- | Atributo | Tipo | Descrição |
611
+ | Propriedade | Tipo | Descrição |
528
612
  | --- | --- | --- |
529
- | `textHeader` | `string` | Texto do cabeçalho do dropdown. |
530
- | `options` | `IDropDownOption[]` | Lista de opções. |
531
- | `isDisabled` | `boolean` | Desabilita o componente. |
532
- | `tooltip` | `string` | Texto para a tooltip. |
533
- | `dropDirectionInput`| `'up' \| 'down'` | Direção em que o dropdown abrirá. |
534
- | `control` | `AbstractControl` | O `FormControl` associado. |
613
+ | `id` | `string \| number` | (Opcional) Identificador único da opção. |
614
+ | `nome` | `string` | Texto exibido da opção. |
615
+ | `icon` | `string` | (Opcional) Caminho ou nome do ícone. |
616
+ | `iconPosition` | `string` | (Opcional) Posição do ícone (`left` ou `right`). |
617
+ | `dataCy` | `string` | (Opcional) Atributo para testes E2E. |
618
+
619
+ **Atributos (Inputs)**
620
+
621
+ | Atributo | Tipo | Padrão | Descrição |
622
+ | --- | --- | --- | --- |
623
+ | `textHeader` | `string` | `'SELECIONE UM ITEM'` | Texto do cabeçalho do dropdown. |
624
+ | `options` | `ICaoDropDownOption[]` | `[]` | Lista de opções. |
625
+ | `dropDownClass` | `string` | `''` | Classe CSS para o container do dropdown. |
626
+ | `styleDropDown` | `{ [klass: string]: unknown }` | `{}` | Estilos inline para o container. |
627
+ | `control` | `AbstractControl \| null` | `undefined` | O `FormControl` associado. |
628
+ | `controlName` | `string` | `''` | O nome do controle de formulário. |
629
+ | `isDisabled` | `boolean` | `false` | Desabilita o componente. |
630
+ | `tooltip` | `string` | `''` | Texto para a tooltip. |
631
+ | `dropDirectionInput`| `'up' \| 'down'` | `'down'` | Direção em que o dropdown abrirá. |
632
+ | `dataCy` | `string` | `''` | Atributo para testes E2E. |
633
+ | `trackByFn` | `(index: number, item: ICaoDropDownOption) => unknown` | `undefined` | Função personalizada de `trackBy`. |
634
+ | `compareWith` | `(option: unknown, value: unknown) => boolean` | `undefined` | Função comparadora personalizada. |
635
+ | `ariaLabel` | `string` | `undefined` | Atributo `aria-label` do combobox. |
636
+ | `ariaLabelledBy` | `string` | `undefined` | Atributo `aria-labelledby` do combobox. |
637
+ | `listAriaLabel` | `string` | `undefined` | Atributo `aria-label` da lista de opções. |
535
638
 
536
639
  **Eventos (Outputs)**
537
640
 
538
641
  | Evento | Tipo | Descrição |
539
642
  | --- | --- | --- |
540
- | `itemSelected`| `EventEmitter<IDropDownOption>` | Emitido quando um item é selecionado. |
643
+ | `itemSelected`| `EventEmitter<ICaoDropDownOption>` | Emitido quando um item é selecionado. |
541
644
 
542
645
  ---
543
646