@guajiritos/services
v19.0.26
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.
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 --saveCon yarn
yarn add @guajiritos/servicesCon pnpm
pnpm add @guajiritos/servicesDependencias
Guajiritos Services tiene dependencias de @angular/material y lodash.merge. Es recomendable instalar @angular/material usando el cli de angular.
ng add @angular/materialCon npm
npm i lodash.merge --saveCon yarn
yarn add lodash.mergeCon pnpm
pnpm add lodash.mergeUtilidades
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
- PaginationEnums
- DisplayOptionItemType
- TemplateDataSelectorType
- ColumnOptionsType
- SpecificConditionOperator
- CustomActionType
- ButtonMode
- ColumnFilterOptionsType