@guajiritos/services
v18.0.6
Published
`Guajiritos Services` es una librería para Angular que proporciona los servicios, interfaces, pipes y utilidades necesarios para el correcto funcionamiento de las plataformas de Guajiritos S.R.L.
Downloads
327
Readme
Guajiritos Services
Guajiritos Services
es una librería para Angular que proporciona los servicios, interfaces, pipes y utilidades necesarios para el correcto funcionamiento de las plataformas de Guajiritos S.R.L.
Instalación
Con npm
npm i @guajiritos/services --save
Con yarn
yarn add @guajiritos/services
Con pnpm
pnpm add @guajiritos/services
Dependencias
Guajiritos Services
tiene dependencias de @angular/material
y lodash.merge
. Es recomendable instalar @angular/material usando el cli de angular.
ng add @angular/material
Con npm
npm i lodash.merge --save
Con yarn
yarn add lodash.merge
Con pnpm
pnpm add lodash.merge
Utilidades
Guajiritos Services
contiene las siguientes utilidades.
Rest Full Service
Rest Full Service
es un servicio que contiene los elementos necesarios para hacer peticiones a un API-REST así como las peticiones básicas.
Para el correcto funcionamiento es necesario extender de la clase RestFullService, notar que contiene dos interfaces, una sería para la respuesta a la petición GET y la otra sería el cuerpo de la petición POST.
import {Injectable} from '@angular/core';
import {RestFullService} from "@guajiritos/services";
@Injectable({
providedIn: 'root'
})
export class AudienceService extends RestFullService<AudienceOut, AudienceIn> {
override url: string = URL_AUDIENCE;
override urlId: string = URL_AUDIENCE_ID;
private urlShare: string = URL_SHARE_AUDIENCE
public shareAudience(body: ShareAudienceDto) {
return this.http.post(this.urlShare, body);
}
}
Pipes
@guajiritos/services
contiene las siguientes pipes
:
- CapitalizePipe
- I18nPipe
CapitalizePipe
permite convertir una cadena de texto con solo su primera letra en mayúsculas.
<button *ngIf="action?.isCreate || action?.isClone" [matTooltip]="'cancelar' | translate | capitalize"
color="accent" mat-stroked-button>
{{ "atrás" | translate | titlecase }}
</button>
I18nPipe
permite hacer la traducción de un texto que contenga la llave para diferentes idiomas.
<mat-option *ngFor="let language of languages()" [value]="language.alpha2">
{{ language.name | i18n: translateService.currentLang }}
</mat-option>
Classes
@guajiritos/services
contiene las clases:
- ObservableDestroy
- MatPaginatorI18nService
ObservableDestroy
es una clase que permite destruir los observables de forma eficiente y con el mínimo de desarrollo.
private isLoadingSubscribe(): void {
this._loadingService.isLoading$
.pipe(ObservableDestroy.unregisterFn())
.subscribe({
next: (isLoading: boolean): void => {
this.loading.set(isLoading);
}
});
}
MatPaginatorI18nService
es una clase que permite hacer la traducción del módulo Paginator
de @angular/material
.
Interfaces
- GuajiritosAutocompleteMultipleConfig
- RestrictionFilter
- ApiFormData
- Filter
- ServiceOptions
- DisplayOptionItem
- DisplayOption
- SelectionOptions
- CssClass
- CssStyle
- IterableOptions
- TemplateDataSelector
- TemplateData
- FooterOption
- ColumnOptions
- SpecificCondition
- CustomAction
- BasicBtn
- BasicActions
- SelectOption
- CustomOptions
- ToggleOptions
- ColumnFilterOptions
- CrudOptions
- StaticFilter
- StaticFiltersOut
- DataTableOptions
- Pagination
Enums
- DisplayOptionItemType
- TemplateDataSelectorType
- ColumnOptionsType
- SpecificConditionOperator
- CustomActionType
- ButtonMode
- ColumnFilterOptionsType