@rubeusteam/rb-angular-components 0.0.1 → 0.0.2

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
@@ -1,184 +1,118 @@
1
1
  # RbAngularComponents
2
2
 
3
- **PT-BR**
4
- O `rb-angular-components` é uma biblioteca de componentes Angular reutilizáveis criada para acelerar o desenvolvimento de aplicações com base no Angular Material.
3
+ Este projeto foi gerado usando o [Angular CLI](https://github.com/angular/angular-cli) versão 19.1.8.
5
4
 
6
- **EN**
7
- `rb-angular-components` is a reusable Angular component library designed to speed up application development using Angular Material.
5
+ This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 19.1.8.
8
6
 
9
- ---
10
-
11
- ## Instalação | Installation
12
-
13
- **PT-BR**
14
- Para instalar a biblioteca em seu projeto Angular, execute:
15
-
16
- ```bash
17
- npm install rb-angular-components
18
- ```
7
+ ## Visão Geral | Overview
19
8
 
20
- **EN**
21
- To install the library in your Angular project, run:
9
+ RbAngularComponents é uma biblioteca de componentes, diretivas, serviços e pipes Angular criada para acelerar o desenvolvimento de interfaces com consistência e boas práticas.
22
10
 
23
- ```bash
24
- npm install rb-angular-components
25
- ```
11
+ RbAngularComponents is a library of Angular components, directives, services, and pipes designed to accelerate UI development with consistency and best practices.
26
12
 
27
- ---
13
+ ## Requisitos
28
14
 
29
- ## Uso Básico | Basic Usage
15
+ - Angular >= 15 (suporta componentes standalone)
16
+ - Node.js >= 18.x
17
+ - npm >= 9.x
18
+ - Angular Material (alguns componentes são baseados nele)
30
19
 
31
- **PT-BR**
32
- Importe os módulos desejados no seu `AppModule` ou no módulo onde deseja usar os componentes:
20
+ ## Requirements
33
21
 
34
- ```ts
35
- import { RbCrudModule } from 'rb-angular-components';
36
- ```
22
+ - Angular >= 15 (supports standalone components)
23
+ - Node.js >= 18.x
24
+ - npm >= 9.x
25
+ - Angular Material (some components are based on it)
37
26
 
38
- **EN**
39
- Import the desired modules into your `AppModule` or the module where you want to use the components:
40
-
41
- ```ts
42
- import { RbCrudModule } from 'rb-angular-components';
43
- ```
44
-
45
- ---
46
-
47
- ## Componentes Disponíveis | Available Components
48
-
49
- **PT-BR**
50
- - `RbCrudComponent`: Componente de CRUD genérico com filtros, tabela e paginação.
51
- - `RbFilterComponent`: Barra de pesquisa/filtros integrável ao CRUD.
52
- - `RbContentCardComponent`: Quadro de conteúdo estilizado.
53
- - E mais...
54
-
55
- **EN**
56
- - `RbCrudComponent`: Generic CRUD component with filters, table, and pagination.
57
- - `RbFilterComponent`: Search/filter bar that integrates with the CRUD.
58
- - `RbContentCardComponent`: Styled content card.
59
- - And more...
60
-
61
- Para detalhes específicos de uso, veja os READMEs individuais:
62
- **To learn more about each, see the individual READMEs:**
63
-
64
- - [`docs/components/rb-crud`](./projects/rb-angular-components/src/lib/rb-crud/README.md)
65
- - [`docs/components/rb-filter`](./projects/rb-angular-components/src/lib/rb-filter/README.md)
66
-
67
- ---
27
+ ## Instalação | Installation
68
28
 
69
- ## Gerando Componentes | Code Scaffolding
29
+ Instale a biblioteca via npm:
70
30
 
71
- **PT-BR**
72
- Use o Angular CLI para gerar novos componentes, diretivas ou pipes:
31
+ Install the library via npm:
73
32
 
74
33
  ```bash
75
- ng generate component component-name
34
+ npm install rb-angular-components
76
35
  ```
77
36
 
78
- **EN**
79
- Use Angular CLI to generate new components, directives, or pipes:
37
+ ## Uso em Componentes Standalone | Usage in Standalone Components
80
38
 
81
- ```bash
82
- ng generate component component-name
83
- ```
39
+ Você pode importar qualquer componente, diretiva ou pipe diretamente em seu componente standalone.
84
40
 
85
- Para ver todos os esquemas disponíveis:
86
- **To list all available schematics:**
41
+ You can import any component, directive, or pipe directly into your standalone component.
87
42
 
88
- ```bash
89
- ng generate --help
43
+ ```ts
44
+ import { RbCrudComponent } from 'rb-angular-components';
45
+
46
+ @Component({
47
+ standalone: true,
48
+ imports: [RbCrudComponent],
49
+ selector: 'app-demo',
50
+ template: '<rb-crud></rb-crud>'
51
+ })
52
+ export class DemoComponent {}
90
53
  ```
91
54
 
92
- ---
55
+ ## Uso em Módulos Angular (NgModules) | Usage in Angular Modules (NgModules)
93
56
 
94
- ## Build da Biblioteca | Building the Library
57
+ Se seu projeto usa NgModules, ainda assim você pode usar os componentes standalone importando-os no array `imports`.
95
58
 
96
- **PT-BR**
97
- Para construir a biblioteca, execute:
59
+ If your project uses NgModules, you can still use the standalone components by importing them in the `imports` array.
98
60
 
99
- ```bash
100
- ng build rb-angular-components
101
- ```
102
-
103
- **EN**
104
- To build the library, run:
105
-
106
- ```bash
107
- ng build rb-angular-components
61
+ ```ts
62
+ import { NgModule } from '@angular/core';
63
+ import { CommonModule } from '@angular/common';
64
+ import { RbCrudComponent } from 'rb-angular-components';
65
+
66
+ @NgModule({
67
+ imports: [
68
+ CommonModule,
69
+ RbCrudComponent // standalone component
70
+ ]
71
+ })
72
+ export class MyModule {}
108
73
  ```
109
74
 
110
- Os arquivos compilados serão gerados em `dist/`.
111
- **The compiled files will be placed in `dist/`.**
112
-
113
- ---
75
+ > Opcionalmente, você pode criar um módulo compartilhado que agrupe e exporte todos os componentes standalone para conveniência.
114
76
 
115
- ### Publicação no NPM | Publishing to NPM
116
-
117
- **PT-BR**
118
- 1. Navegue até a pasta da biblioteca:
119
- ```bash
120
- cd dist/rb-angular-components
121
- ```
122
- 2. Publique com:
123
- ```bash
124
- npm publish
125
- ```
126
-
127
- **EN**
128
- 1. Navigate to the library folder:
129
- ```bash
130
- cd dist/rb-angular-components
131
- ```
132
- 2. Publish using:
133
- ```bash
134
- npm publish
135
- ```
77
+ > Optionally, you can create a shared module that groups and exports all standalone components for convenience.
136
78
 
137
- ---
138
79
 
139
- ## Testes Unitários | Running Unit Tests
80
+ ## Recursos Disponíveis
140
81
 
141
- **PT-BR**
142
- Para rodar os testes unitários com o Karma:
82
+ - Componentes (ex: `RbCrudComponent`, `RbFilterComponent`)
83
+ - Diretivas (ex: `RbDynamicButtonDirective`)
84
+ - Pipes (ex: `RbCustomPipe`)
85
+ - Serviços (ex: `ClientFilterService`)
86
+ - Traduções (ex: `PaginatorPtbrIntlService`)
143
87
 
144
- ```bash
145
- ng test
146
- ```
88
+ ## Available Resources
147
89
 
148
- **EN**
149
- To run unit tests with Karma:
90
+ - Components (e.g., `RbCrudComponent`, `RbFilterComponent`)
91
+ - Directives (e.g., `RbDynamicButtonDirective`)
92
+ - Pipes (e.g., `RbCustomPipe`)
93
+ - Services (e.g., `ClientFilterService`)
94
+ - Translations (e.g., `PaginatorPtbrIntlService`)
150
95
 
151
- ```bash
152
- ng test
153
- ```
154
96
 
155
- ---
97
+ ## Documentação por Recurso | Documentation by Feature
156
98
 
157
- ## Testes de Integração (e2e) | Running End-to-End Tests
99
+ Você pode acessar a documentação de cada recurso em sua respectiva pasta:
158
100
 
159
- **PT-BR**
160
- Para rodar testes end-to-end:
101
+ You can access documentation for each feature in its respective folder:
161
102
 
162
- ```bash
163
- ng e2e
164
- ```
165
-
166
- **EN**
167
- To run end-to-end tests:
168
-
169
- ```bash
170
- ng e2e
171
- ```
103
+ - [`components/rb-content-box`](./src/lib/components/rb-content-box/README.md)
104
+ - [`components/rb-crud`](./src/lib/components/rb-crud/README.md)
105
+ - [`components/rb-filter`](./src/lib/components/rb-filter/README.md)
106
+ - [`directives/rb-dynamic-button`](./src/lib/directives/rb-dynamic-button/README.md)
107
+ - [`pipes/rb-custom`](./src/lib/pipes/rb-custom/README.md)
108
+ - [`services/client-filter`](./src/lib/services/client-filter/README.md)
109
+ - [`i18n/paginator-ptbr-intl`](./src/lib/i18n/paginator-ptbr-intl/README.md)
172
110
 
173
111
  ---
174
112
 
175
- ## Recursos Adicionais | Additional Resources
113
+ ## Recursos Adicionais | Additional Resources
176
114
 
177
- **PT-BR**
178
- Para mais informações sobre o Angular CLI, acesse:
179
- [Angular CLI Overview and Command Reference](https://angular.dev/tools/cli)
115
+ Para uso do Angular CLI e comandos, veja a [Referência do Angular CLI](https://angular.dev/tools/cli).
180
116
 
181
- **EN**
182
- For more information on Angular CLI, visit:
183
- [Angular CLI Overview and Command Reference](https://angular.dev/tools/cli)
117
+ For Angular CLI usage and commands, see the [Angular CLI Reference](https://angular.dev/tools/cli).
184
118
 
@@ -1 +1 @@
1
- {"version":3,"file":"rubeusteam-rb-angular-components.mjs","sources":["../../../projects/rb-angular-components/src/lib/pipes/rb-custom.pipe.ts","../../../projects/rb-angular-components/src/lib/directives/rb-dynamic-button.directive.ts","../../../projects/rb-angular-components/src/lib/services/translates/paginator-ptbr-intl.service.ts","../../../projects/rb-angular-components/src/lib/services/filter/client-filter.service.ts","../../../projects/rb-angular-components/src/lib/components/rb-crud/rb-crud.component.ts","../../../projects/rb-angular-components/src/lib/components/rb-crud/rb-crud.component.html","../../../projects/rb-angular-components/src/lib/components/rb-filter/rb-filter.component.ts","../../../projects/rb-angular-components/src/lib/components/rb-filter/rb-filter.component.html","../../../projects/rb-angular-components/src/lib/components/rb-content-box/rb-content-box.component.ts","../../../projects/rb-angular-components/src/lib/components/rb-content-box/rb-content-box.component.html","../../../projects/rb-angular-components/src/public-api.ts","../../../projects/rb-angular-components/src/rubeusteam-rb-angular-components.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'rbCustomPipe',\n standalone: true\n})\nexport class RbCustomPipe implements PipeTransform {\n\n transform(value: any, type: string): any {\n switch (type) {\n case 'date':\n return this.dateTransform(value);\n case 'currency':\n return this.currencyTransform(value);\n case 'cpf':\n return this.cpfTransform(value);\n case 'cnpj':\n return this.cnpjTransform(value);\n case 'phone':\n return this.phoneTransform(value);\n case 'cep':\n return this.cepTransform(value);\n case 'mask':\n return this.maskTransform(value);\n case 'relativeTime':\n return this.relativeTimeTransform(value);\n case 'lastModifiedBy':\n return this.lastModifiedTransform(value);\n default:\n return value;\n }\n }\n\n dateTransform(value: any): any {\n if (!value) return '';\n return new Intl.DateTimeFormat('pt-BR').format(new Date(value));\n }\n\n currencyTransform(value: any): any {\n if (!value) return '';\n return new Intl.NumberFormat('pt-BR', { style: 'currency', currency: 'BRL' }).format(value);\n }\n\n cpfTransform(value: any): any {\n if (!value) return '';\n return value.replace(/(\\d{3})(\\d{3})(\\d{3})(\\d{2})/, \"$1.$2.$3-$4\");\n }\n\n cnpjTransform(value: any): any {\n if (!value) return '';\n return value.replace(/(\\d{2})(\\d{3})(\\d{3})(\\d{4})(\\d{2})/, \"$1.$2.$3/$4-$5\");\n }\n\n phoneTransform(value: any): any {\n if (!value) return '';\n return value.replace(/(\\d{2})(\\d{5})(\\d{4})/, \"($1) $2-$3\");\n }\n\n cepTransform(value: any): any {\n if (!value) return '';\n return value.replace(/(\\d{5})(\\d{3})/, \"$1-$2\");\n }\n\n maskTransform(value: any): any {\n if (!value) return '';\n return '*'.repeat(value.toString().length);\n }\n\n relativeTimeTransform(value: any): any {\n if (!value) return '';\n const date = new Date(value);\n const now = new Date();\n const diff = Math.floor((now.getTime() - date.getTime()) / 1000);\n\n switch (true) {\n case diff < 60:\n return `${diff} segundos atrás`;\n case diff < 3600:\n return `${Math.floor(diff / 60)} minutos atrás`;\n case diff < 86400:\n return `${Math.floor(diff / 3600)} horas atrás`;\n case diff < 2592000:\n return `${Math.floor(diff / 86400)} dias atrás`;\n case diff < 31536000:\n return `${Math.floor(diff / 2592000)} meses atrás`;\n default:\n return `${Math.floor(diff / 31536000)} anos atrás`;\n }\n }\n\n lastModifiedTransform(value: { date: string; author: string }): string {\n if (!value || !value.date) return '';\n const formattedDate = new Intl.DateTimeFormat('pt-BR', {\n dateStyle: 'short',\n // timeStyle: 'short',\n }).format(new Date(value.date));\n if(!value.author) {\n return `${formattedDate}`;\n }\n return `${formattedDate} por ${value.author}`;\n }\n\n}\n","import { Directive, Input, ElementRef, Renderer2, OnChanges, SimpleChanges } from '@angular/core';\n\n@Directive({\n selector: '[rbDynamicButton]'\n})\nexport class RbDynamicButtonDirective implements OnChanges {\n @Input('rbDynamicButton') set buttonType(value: string | null) {\n const validTypes = ['float', 'confirm', 'cancel', 'menuTrigger'] as const;\n this._buttonType = validTypes.includes(value as any) ? (value as any) : null;\n }\n private _buttonType: 'float' | 'confirm' | 'cancel' | 'menuTrigger' | null = null;\n\n buttonTypes: Record<string, { directive: string; classes: string[] }> = {\n float: {\n directive: 'mat-raised-button',\n classes: ['mdc-button--raised', 'mat-mdc-raised-button']\n },\n confirm: {\n directive: 'mat-flat-button',\n classes: ['mdc-button--unelevated', 'mat-mdc-unelevated-button']\n },\n cancel: {\n directive: 'mat-stroked-button',\n classes: ['mdc-button--outlined', 'mat-mdc-outlined-button']\n },\n menuTrigger: {\n directive: 'mat-icon-button',\n classes: ['mdc-icon-button', 'mat-mdc-icon-button']\n }\n };\n\n constructor(private el: ElementRef, private renderer: Renderer2) {\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['buttonType']?.currentValue) {\n this.renderButtons(this._buttonType || '');\n }\n }\n\n private renderButtons(key: string) {\n if (key?.trim() && typeof this.buttonTypes[key] === 'object') {\n this.renderer.setAttribute(this.el.nativeElement, this.buttonTypes[key].directive, '');\n this.buttonTypes[key].classes.forEach(cls => this.renderer.addClass(this.el.nativeElement, cls));\n }\n }\n\n}\n\n","import { Injectable } from '@angular/core';\nimport { MatPaginatorIntl } from '@angular/material/paginator';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PaginatorPtbrIntlService extends MatPaginatorIntl{\n override itemsPerPageLabel = 'Itens por página:';\n override nextPageLabel = 'Próxima';\n override previousPageLabel = 'Anterior';\n override firstPageLabel = 'Primeira página';\n override lastPageLabel = 'Última página';\n\n override getRangeLabel = (page: number, pageSize: number, length: number) => {\n\n if (length === 0) {\n return `Página 0 de ${length}`;\n }\n const start = page * pageSize + 1;\n const totalPages = ((length / pageSize) + (length % pageSize > 0 ? 1 : 0)).toFixed(0);\n return `Página ${start} de ${totalPages}`;\n };\n}\n","import { Injectable, signal, Signal } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ClientFilterService {\n\n private searchText = signal<string>('');\n\n setSearchText(text: string): void {\n this.searchText.set(text.trim().toLowerCase());\n }\n\n getSearchText(): Signal<string> {\n return this.searchText;\n }\n}\n","import { Component, Input, Output, EventEmitter, AfterViewInit, OnChanges, ViewChild, effect, Signal } from '@angular/core';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatPaginatorModule, MatPaginator } from '@angular/material/paginator';\nimport { MatSortModule, MatSort } from '@angular/material/sort';\nimport { CommonModule } from '@angular/common';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { RbCustomPipe } from '../../pipes/rb-custom.pipe';\nimport { MatPaginatorIntl } from '@angular/material/paginator';\nimport { PaginatorPtbrIntlService } from '../../services/translates/paginator-ptbr-intl.service';\nimport { ClientFilterService } from '../../services/filter/client-filter.service';\n\nexport interface CrudColumn {\n key: string;\n label: string;\n sortable?: boolean;\n pipe?: 'date' | 'currency' | 'cpf' | 'cnpj' | 'phone' | 'cep' | 'mask' | 'relativeTime' | 'lastModifiedBy';\n action?: string;\n // actions?: Array<CrudAction>;\n}\n\nexport interface CrudAction {\n label: string;\n icon?: string;\n action: string;\n}\n\nexport interface CrudActionEvent {\n action: string;\n row: any;\n}\n\nexport interface CrudFilter {\n key: string;\n label: string;\n type: 'text' | 'select' | 'date';\n options?: any[]; // Para selects\n}\n\n@Component({\n selector: 'rb-crud',\n templateUrl: './rb-crud.component.html',\n styleUrl: './rb-crud.component.scss',\n standalone: true,\n imports: [\n CommonModule,\n MatTableModule,\n MatMenuModule,\n MatInputModule,\n MatPaginatorModule,\n MatSortModule,\n MatIconModule,\n MatButtonModule,\n RbCustomPipe,\n ],\n providers: [\n { provide: MatPaginatorIntl, useClass: PaginatorPtbrIntlService }\n ]\n})\nexport class RbCrudComponent implements AfterViewInit, OnChanges {\n @Input() columns: CrudColumn[] = [];\n @Input() data: any[] = [];\n @Input() actionsMenu: CrudAction[] = [];\n @Input() pagination: boolean = true;\n @Input() pageSize: number = 10;\n @Input() infiniteScroll: boolean = false;\n @Input() textLineBreakable: boolean = false;\n @Input() filters: CrudFilter[] = [];\n\n @Output() actionClick = new EventEmitter<CrudActionEvent>();\n // @Output() filterChange = new EventEmitter<any>();\n @Output() pageChange = new EventEmitter<number>();\n\n @ViewChild(MatPaginator) paginator!: MatPaginator;\n @ViewChild(MatSort) sort!: MatSort;\n\n displayedColumns: string[] = [];\n dataSource = new MatTableDataSource<any>(this.data);\n filterText: Signal<string>;\n\n constructor(private clientFilterService: ClientFilterService) {\n this.filterText = this.clientFilterService.getSearchText();\n effect(() => {\n this.applyFilter();\n });\n }\n\n ngAfterViewInit() {\n this.dataSource.paginator = this.paginator;\n this.dataSource.sort = this.sort;\n this.defineSortRule();\n }\n\n ngOnChanges(): void {\n this.dataSource.data = this.data;\n this.displayedColumns = this.columns.map(col => col.key);\n if (this.actionsMenu.length) {\n this.displayedColumns.push('actions');\n }\n }\n\n defineSortRule() {\n this.dataSource.sortingDataAccessor = (item, property) => {\n if (item[property]?.date) {\n return new Date(item[property]?.date || 0).getTime();\n }\n return item[property];\n };\n }\n\n onActionClick(action: CrudAction, row: any): void {\n this.actionClick.emit({ action: action.action, row });\n }\n\n onClickCell(action: string, row: any): void {\n this.actionClick.emit({ action: action, row });\n }\n\n applyFilter() {\n this.dataSource.filter = this.filterText().trim().toLowerCase();\n }\n}\n","<div class=\"rb-crud-container\">\n <div class=\"rb-table-container\">\n <table mat-table [dataSource]=\"dataSource\" matSort class=\"rb-table\">\n <!-- Colunas Dinâmicas -->\n @for (column of columns; track column.key) {\n <ng-container [matColumnDef]=\"column.key\">\n <th mat-header-cell *matHeaderCellDef mat-sort-header>\n {{ column.label }}\n </th>\n <td mat-cell *matCellDef=\"let row\"\n [class.rb-clickable-cell]=\"column.action\"\n [class.rb-break-line-cell]=\"textLineBreakable\"\n (click)=\"column.action ? onClickCell(column.action, row) : null\"\n title=\"{{ column.pipe ? (row[column.key] | rbCustomPipe:column.pipe) : row[column.key] }}\">\n @if (column.pipe) {\n {{ row[column.key] | rbCustomPipe:column.pipe }}\n } @else {\n {{ row[column.key] }}\n }\n </td>\n </ng-container>\n }\n\n <!-- Coluna de Ações -->\n @if (actionsMenu.length) {\n <ng-container matColumnDef=\"actions\" stickyEnd>\n <th mat-header-cell *matHeaderCellDef> Ações </th>\n <td mat-cell *matCellDef=\"let row\">\n <button mat-icon-button [matMenuTriggerFor]=\"menu\">\n <mat-icon>{{ 'more_vert' }}</mat-icon>\n </button>\n <mat-menu #menu=\"matMenu\">\n @for (action of actionsMenu; track action.label) {\n <button mat-menu-item (click)=\"onActionClick(action, row)\">\n @if (action.icon) {\n <mat-icon>{{ action.icon }}</mat-icon>\n }\n {{ action.label }}\n </button>\n }\n </mat-menu>\n </td>\n </ng-container>\n }\n\n <!-- Cabeçalho e Corpo da Tabela -->\n <thead>\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n </thead>\n <tbody>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\n </tbody>\n </table>\n </div>\n\n @if (dataSource.data.length === 0) {\n <div class=\"empty-message\">\n Nenhum dado disponível no momento.\n </div>\n }\n</div>\n\n<!-- Paginação -->\n@if (pagination) {\n <mat-paginator #paginator\n class=\"rb-paginator\"\n [pageSize]=\"pageSize\"\n (page)=\"pageChange.emit($event.pageIndex)\"\n [showFirstLastButtons]=\"true\"\n [pageSizeOptions]=\"[10,25,50,100]\"\n aria-label=\"Selecione a página\">\n </mat-paginator>\n}\n","import { Component, Input, Output, signal, EventEmitter } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ClientFilterService } from '../../services/filter/client-filter.service';\nimport { RbDynamicButtonDirective } from '../../directives/rb-dynamic-button.directive';\n\nexport interface ButtonSettings {\n label: string;\n icon?: string;\n action: string;\n directive?: string;\n}\nexport interface ButtonActionEvent {\n action: string;\n}\n@Component({\n selector: 'rb-filter',\n standalone: true,\n imports: [\n CommonModule,\n MatFormFieldModule,\n MatInputModule,\n MatIconModule,\n MatButtonModule,\n RbDynamicButtonDirective,\n ],\n templateUrl: './rb-filter.component.html',\n styleUrl: './rb-filter.component.scss'\n})\nexport class RbFilterComponent {\n @Input() searchPlaceholder: string = 'Digite para pesquisar...';\n @Input() buttonSettings: ButtonSettings[] = [];\n @Input() iconButton: string = 'add';\n @Input() titleButton: string = 'Adicionar';\n @Output() buttonClick = new EventEmitter<ButtonActionEvent>();\n\n searchText = signal<string>('');\n\n constructor(private clientFilterService: ClientFilterService) {\n }\n\n onSearchChange(event: Event) {\n const value = (event.target as HTMLInputElement).value;\n this.searchText.set(value);\n this.clientFilterService.setSearchText(value);\n }\n\n onClickButton(action: ButtonSettings) {\n this.buttonClick.emit(action);\n }\n}\n","<div class=\"rb-filter-container\">\n <div class=\"rb-flex-line-space-between\">\n <div class=\"rb-flex-align-items-center\">\n @for (btn of buttonSettings; track btn.label) {\n <button mat-button [rbDynamicButton]=\"btn.directive || null\" (click)=\"onClickButton(btn)\">\n @if (btn.icon) {\n <mat-icon>{{ btn.icon }}</mat-icon>\n }\n {{ btn.label }}\n </button>\n }\n </div>\n\n <div class=\"rb-search-box rb-flex-align-items-center\">\n <mat-form-field class=\"rb-search-field\">\n <mat-label>Pesquisar</mat-label>\n <input\n matInput\n [value]=\"searchText()\"\n (input)=\"onSearchChange($event)\"\n placeholder={{searchPlaceholder}}\n />\n <mat-icon matPrefix>search</mat-icon>\n </mat-form-field>\n </div>\n </div>\n</div>\n\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'rb-content-box',\n imports: [],\n templateUrl: './rb-content-box.component.html',\n styleUrl: './rb-content-box.component.scss'\n})\nexport class RbContentBoxComponent {\n\n}\n","<div class=\"rb-content-box\">\n <ng-content></ng-content>\n</div>\n","/*\n * Public API Surface of rb-angular-components\n */\n\nexport * from './lib/pipes/rb-custom.pipe';\nexport * from './lib/directives/rb-dynamic-button.directive';\nexport * from './lib/components/rb-crud/rb-crud.component';\nexport * from './lib/components/rb-filter/rb-filter.component';\nexport * from './lib/components/rb-content-box/rb-content-box.component';\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.ClientFilterService","i2","i3","i4"],"mappings":"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"}
1
+ {"version":3,"file":"rubeusteam-rb-angular-components.mjs","sources":["../../../projects/rb-angular-components/src/lib/pipes/rb-custom/rb-custom.pipe.ts","../../../projects/rb-angular-components/src/lib/directives/rb-dynamic-button/rb-dynamic-button.directive.ts","../../../projects/rb-angular-components/src/lib/i18n/paginator-ptbr-intl/paginator-ptbr-intl.service.ts","../../../projects/rb-angular-components/src/lib/services/filter/client-filter.service.ts","../../../projects/rb-angular-components/src/lib/components/rb-crud/rb-crud.component.ts","../../../projects/rb-angular-components/src/lib/components/rb-crud/rb-crud.component.html","../../../projects/rb-angular-components/src/lib/components/rb-filter/rb-filter.component.ts","../../../projects/rb-angular-components/src/lib/components/rb-filter/rb-filter.component.html","../../../projects/rb-angular-components/src/lib/components/rb-content-box/rb-content-box.component.ts","../../../projects/rb-angular-components/src/lib/components/rb-content-box/rb-content-box.component.html","../../../projects/rb-angular-components/src/public-api.ts","../../../projects/rb-angular-components/src/rubeusteam-rb-angular-components.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'rbCustomPipe',\n standalone: true\n})\nexport class RbCustomPipe implements PipeTransform {\n\n transform(value: any, type: string): any {\n switch (type) {\n case 'date':\n return this.dateTransform(value);\n case 'currency':\n return this.currencyTransform(value);\n case 'cpf':\n return this.cpfTransform(value);\n case 'cnpj':\n return this.cnpjTransform(value);\n case 'phone':\n return this.phoneTransform(value);\n case 'cep':\n return this.cepTransform(value);\n case 'mask':\n return this.maskTransform(value);\n case 'relativeTime':\n return this.relativeTimeTransform(value);\n case 'lastModifiedBy':\n return this.lastModifiedTransform(value);\n default:\n return value;\n }\n }\n\n dateTransform(value: any): any {\n if (!value) return '';\n return new Intl.DateTimeFormat('pt-BR').format(new Date(value));\n }\n\n currencyTransform(value: any): any {\n if (!value) return '';\n return new Intl.NumberFormat('pt-BR', { style: 'currency', currency: 'BRL' }).format(value);\n }\n\n cpfTransform(value: any): any {\n if (!value) return '';\n return value.replace(/(\\d{3})(\\d{3})(\\d{3})(\\d{2})/, \"$1.$2.$3-$4\");\n }\n\n cnpjTransform(value: any): any {\n if (!value) return '';\n return value.replace(/(\\d{2})(\\d{3})(\\d{3})(\\d{4})(\\d{2})/, \"$1.$2.$3/$4-$5\");\n }\n\n phoneTransform(value: any): any {\n if (!value) return '';\n return value.replace(/(\\d{2})(\\d{5})(\\d{4})/, \"($1) $2-$3\");\n }\n\n cepTransform(value: any): any {\n if (!value) return '';\n return value.replace(/(\\d{5})(\\d{3})/, \"$1-$2\");\n }\n\n maskTransform(value: any): any {\n if (!value) return '';\n return '*'.repeat(value.toString().length);\n }\n\n relativeTimeTransform(value: any): any {\n if (!value) return '';\n const date = new Date(value);\n const now = new Date();\n const diff = Math.floor((now.getTime() - date.getTime()) / 1000);\n\n switch (true) {\n case diff < 60:\n return `${diff} segundos atrás`;\n case diff < 3600:\n return `${Math.floor(diff / 60)} minutos atrás`;\n case diff < 86400:\n return `${Math.floor(diff / 3600)} horas atrás`;\n case diff < 2592000:\n return `${Math.floor(diff / 86400)} dias atrás`;\n case diff < 31536000:\n return `${Math.floor(diff / 2592000)} meses atrás`;\n default:\n return `${Math.floor(diff / 31536000)} anos atrás`;\n }\n }\n\n lastModifiedTransform(value: { date: string; author: string }): string {\n if (!value || !value.date) return '';\n const formattedDate = new Intl.DateTimeFormat('pt-BR', {\n dateStyle: 'short',\n // timeStyle: 'short',\n }).format(new Date(value.date));\n if(!value.author) {\n return `${formattedDate}`;\n }\n return `${formattedDate} por ${value.author}`;\n }\n\n}\n","import { Directive, Input, ElementRef, Renderer2, OnChanges, SimpleChanges } from '@angular/core';\n\n@Directive({\n selector: '[rbDynamicButton]'\n})\nexport class RbDynamicButtonDirective implements OnChanges {\n @Input('rbDynamicButton') set buttonType(value: string | null) {\n const validTypes = ['float', 'confirm', 'cancel', 'menuTrigger'] as const;\n this._buttonType = validTypes.includes(value as any) ? (value as any) : null;\n }\n private _buttonType: 'float' | 'confirm' | 'cancel' | 'menuTrigger' | null = null;\n\n buttonTypes: Record<string, { directive: string; classes: string[] }> = {\n float: {\n directive: 'mat-raised-button',\n classes: ['mdc-button--raised', 'mat-mdc-raised-button']\n },\n confirm: {\n directive: 'mat-flat-button',\n classes: ['mdc-button--unelevated', 'mat-mdc-unelevated-button']\n },\n cancel: {\n directive: 'mat-stroked-button',\n classes: ['mdc-button--outlined', 'mat-mdc-outlined-button']\n },\n menuTrigger: {\n directive: 'mat-icon-button',\n classes: ['mdc-icon-button', 'mat-mdc-icon-button']\n }\n };\n\n constructor(private el: ElementRef, private renderer: Renderer2) {\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['buttonType']?.currentValue) {\n this.renderButtons(this._buttonType || '');\n }\n }\n\n private renderButtons(key: string) {\n if (key?.trim() && typeof this.buttonTypes[key] === 'object') {\n this.renderer.setAttribute(this.el.nativeElement, this.buttonTypes[key].directive, '');\n this.buttonTypes[key].classes.forEach(cls => this.renderer.addClass(this.el.nativeElement, cls));\n }\n }\n\n}\n\n","import { Injectable } from '@angular/core';\nimport { MatPaginatorIntl } from '@angular/material/paginator';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PaginatorPtbrIntlService extends MatPaginatorIntl{\n override itemsPerPageLabel = 'Itens por página:';\n override nextPageLabel = 'Próxima';\n override previousPageLabel = 'Anterior';\n override firstPageLabel = 'Primeira página';\n override lastPageLabel = 'Última página';\n\n override getRangeLabel = (page: number, pageSize: number, length: number) => {\n\n if (length === 0) {\n return `Página 0 de ${length}`;\n }\n const start = page * pageSize + 1;\n const totalPages = ((length / pageSize) + (length % pageSize > 0 ? 1 : 0)).toFixed(0);\n return `Página ${start} de ${totalPages}`;\n };\n}\n","import { Injectable, signal, Signal } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ClientFilterService {\n\n private searchText = signal<string>('');\n\n setSearchText(text: string): void {\n this.searchText.set(text.trim().toLowerCase());\n }\n\n getSearchText(): Signal<string> {\n return this.searchText;\n }\n}\n","import { Component, Input, Output, EventEmitter, AfterViewInit, OnChanges, ViewChild, effect, Signal } from '@angular/core';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatPaginatorModule, MatPaginator } from '@angular/material/paginator';\nimport { MatSortModule, MatSort } from '@angular/material/sort';\nimport { CommonModule } from '@angular/common';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { RbCustomPipe } from '../../pipes/rb-custom/rb-custom.pipe';\nimport { MatPaginatorIntl } from '@angular/material/paginator';\nimport { PaginatorPtbrIntlService } from '../../i18n/paginator-ptbr-intl/paginator-ptbr-intl.service';\nimport { ClientFilterService } from '../../services/filter/client-filter.service';\n\nexport interface CrudColumn {\n key: string;\n label: string;\n sortable?: boolean;\n pipe?: 'date' | 'currency' | 'cpf' | 'cnpj' | 'phone' | 'cep' | 'mask' | 'relativeTime' | 'lastModifiedBy';\n action?: string;\n // actions?: Array<CrudAction>;\n}\n\nexport interface CrudAction {\n label: string;\n icon?: string;\n action: string;\n}\n\nexport interface CrudActionEvent {\n action: string;\n row: any;\n}\n\nexport interface CrudFilter {\n key: string;\n label: string;\n type: 'text' | 'select' | 'date';\n options?: any[]; // Para selects\n}\n\n@Component({\n selector: 'rb-crud',\n templateUrl: './rb-crud.component.html',\n styleUrl: './rb-crud.component.scss',\n standalone: true,\n imports: [\n CommonModule,\n MatTableModule,\n MatMenuModule,\n MatInputModule,\n MatPaginatorModule,\n MatSortModule,\n MatIconModule,\n MatButtonModule,\n RbCustomPipe,\n ],\n providers: [\n { provide: MatPaginatorIntl, useClass: PaginatorPtbrIntlService }\n ]\n})\nexport class RbCrudComponent implements AfterViewInit, OnChanges {\n @Input() columns: CrudColumn[] = [];\n @Input() data: any[] = [];\n @Input() actionsMenu: CrudAction[] = [];\n @Input() pagination: boolean = true;\n @Input() pageSize: number = 10;\n @Input() infiniteScroll: boolean = false;\n @Input() textLineBreakable: boolean = false;\n @Input() filters: CrudFilter[] = [];\n\n @Output() actionClick = new EventEmitter<CrudActionEvent>();\n // @Output() filterChange = new EventEmitter<any>();\n @Output() pageChange = new EventEmitter<number>();\n\n @ViewChild(MatPaginator) paginator!: MatPaginator;\n @ViewChild(MatSort) sort!: MatSort;\n\n displayedColumns: string[] = [];\n dataSource = new MatTableDataSource<any>(this.data);\n filterText: Signal<string>;\n\n constructor(private clientFilterService: ClientFilterService) {\n this.filterText = this.clientFilterService.getSearchText();\n effect(() => {\n this.applyFilter();\n });\n }\n\n ngAfterViewInit() {\n this.dataSource.paginator = this.paginator;\n this.dataSource.sort = this.sort;\n this.defineSortRule();\n }\n\n ngOnChanges(): void {\n this.dataSource.data = this.data;\n this.displayedColumns = this.columns.map(col => col.key);\n if (this.actionsMenu.length) {\n this.displayedColumns.push('actions');\n }\n }\n\n defineSortRule() {\n this.dataSource.sortingDataAccessor = (item, property) => {\n if (item[property]?.date) {\n return new Date(item[property]?.date || 0).getTime();\n }\n return item[property];\n };\n }\n\n onActionClick(action: CrudAction, row: any): void {\n this.actionClick.emit({ action: action.action, row });\n }\n\n onClickCell(action: string, row: any): void {\n this.actionClick.emit({ action: action, row });\n }\n\n applyFilter() {\n this.dataSource.filter = this.filterText().trim().toLowerCase();\n }\n}\n","<div class=\"rb-crud-container\">\n <div class=\"rb-table-container\">\n <table mat-table [dataSource]=\"dataSource\" matSort class=\"rb-table\">\n <!-- Colunas Dinâmicas -->\n @for (column of columns; track column.key) {\n <ng-container [matColumnDef]=\"column.key\">\n <th mat-header-cell *matHeaderCellDef mat-sort-header>\n {{ column.label }}\n </th>\n <td mat-cell *matCellDef=\"let row\"\n [class.rb-clickable-cell]=\"column.action\"\n [class.rb-break-line-cell]=\"textLineBreakable\"\n (click)=\"column.action ? onClickCell(column.action, row) : null\"\n title=\"{{ column.pipe ? (row[column.key] | rbCustomPipe:column.pipe) : row[column.key] }}\">\n @if (column.pipe) {\n {{ row[column.key] | rbCustomPipe:column.pipe }}\n } @else {\n {{ row[column.key] }}\n }\n </td>\n </ng-container>\n }\n\n <!-- Coluna de Ações -->\n @if (actionsMenu.length) {\n <ng-container matColumnDef=\"actions\" stickyEnd>\n <th mat-header-cell *matHeaderCellDef> Ações </th>\n <td mat-cell *matCellDef=\"let row\">\n <button mat-icon-button [matMenuTriggerFor]=\"menu\">\n <mat-icon>{{ 'more_vert' }}</mat-icon>\n </button>\n <mat-menu #menu=\"matMenu\">\n @for (action of actionsMenu; track action.label) {\n <button mat-menu-item (click)=\"onActionClick(action, row)\">\n @if (action.icon) {\n <mat-icon>{{ action.icon }}</mat-icon>\n }\n {{ action.label }}\n </button>\n }\n </mat-menu>\n </td>\n </ng-container>\n }\n\n <!-- Cabeçalho e Corpo da Tabela -->\n <thead>\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n </thead>\n <tbody>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\n </tbody>\n </table>\n </div>\n\n @if (dataSource.data.length === 0) {\n <div class=\"empty-message\">\n Nenhum dado disponível no momento.\n </div>\n }\n</div>\n\n<!-- Paginação -->\n@if (pagination) {\n <mat-paginator #paginator\n class=\"rb-paginator\"\n [pageSize]=\"pageSize\"\n (page)=\"pageChange.emit($event.pageIndex)\"\n [showFirstLastButtons]=\"true\"\n [pageSizeOptions]=\"[10,25,50,100]\"\n aria-label=\"Selecione a página\">\n </mat-paginator>\n}\n","import { Component, Input, Output, signal, EventEmitter } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ClientFilterService } from '../../services/filter/client-filter.service';\nimport { RbDynamicButtonDirective } from '../../directives/rb-dynamic-button/rb-dynamic-button.directive';\n\nexport interface ButtonSettings {\n label: string;\n icon?: string;\n action: string;\n directive?: string;\n}\nexport interface ButtonActionEvent {\n action: string;\n}\n@Component({\n selector: 'rb-filter',\n standalone: true,\n imports: [\n CommonModule,\n MatFormFieldModule,\n MatInputModule,\n MatIconModule,\n MatButtonModule,\n RbDynamicButtonDirective,\n ],\n templateUrl: './rb-filter.component.html',\n styleUrl: './rb-filter.component.scss'\n})\nexport class RbFilterComponent {\n @Input() searchPlaceholder: string = 'Digite para pesquisar...';\n @Input() buttonSettings: ButtonSettings[] = [];\n @Input() iconButton: string = 'add';\n @Input() titleButton: string = 'Adicionar';\n @Output() buttonClick = new EventEmitter<ButtonActionEvent>();\n\n searchText = signal<string>('');\n\n constructor(private clientFilterService: ClientFilterService) {\n }\n\n onSearchChange(event: Event) {\n const value = (event.target as HTMLInputElement).value;\n this.searchText.set(value);\n this.clientFilterService.setSearchText(value);\n }\n\n onClickButton(action: ButtonSettings) {\n this.buttonClick.emit(action);\n }\n}\n","<div class=\"rb-filter-container\">\n <div class=\"rb-flex-line-space-between\">\n <div class=\"rb-flex-align-items-center\">\n @for (btn of buttonSettings; track btn.label) {\n <button mat-button [rbDynamicButton]=\"btn.directive || null\" (click)=\"onClickButton(btn)\">\n @if (btn.icon) {\n <mat-icon>{{ btn.icon }}</mat-icon>\n }\n {{ btn.label }}\n </button>\n }\n </div>\n\n <div class=\"rb-search-box rb-flex-align-items-center\">\n <mat-form-field class=\"rb-search-field\">\n <mat-label>Pesquisar</mat-label>\n <input\n matInput\n [value]=\"searchText()\"\n (input)=\"onSearchChange($event)\"\n placeholder={{searchPlaceholder}}\n />\n <mat-icon matPrefix>search</mat-icon>\n </mat-form-field>\n </div>\n </div>\n</div>\n\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'rb-content-box',\n imports: [],\n templateUrl: './rb-content-box.component.html',\n styleUrl: './rb-content-box.component.scss'\n})\nexport class RbContentBoxComponent {\n\n}\n","<div class=\"rb-content-box\">\n <ng-content></ng-content>\n</div>\n","/*\n * Public API Surface of rb-angular-components\n */\n\nexport * from './lib/pipes/rb-custom/rb-custom.pipe';\nexport * from './lib/directives/rb-dynamic-button/rb-dynamic-button.directive';\nexport * from './lib/components/rb-crud/rb-crud.component';\nexport * from './lib/components/rb-filter/rb-filter.component';\nexport * from './lib/components/rb-content-box/rb-content-box.component';\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.ClientFilterService","i2","i3","i4"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rubeusteam/rb-angular-components",
3
- "version": "0.0.1",
3
+ "version": "0.0.2",
4
4
  "description": "Componentes Angular reutilizáveis da Rubeus",
5
5
  "license": "MIT",
6
6
  "keywords": [
package/public-api.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- export * from './lib/pipes/rb-custom.pipe';
2
- export * from './lib/directives/rb-dynamic-button.directive';
1
+ export * from './lib/pipes/rb-custom/rb-custom.pipe';
2
+ export * from './lib/directives/rb-dynamic-button/rb-dynamic-button.directive';
3
3
  export * from './lib/components/rb-crud/rb-crud.component';
4
4
  export * from './lib/components/rb-filter/rb-filter.component';
5
5
  export * from './lib/components/rb-content-box/rb-content-box.component';