18.0.3 • Published 10 months ago

@guajiritos/services v18.0.3

Weekly downloads
-
License
-
Repository
-
Last release
10 months ago

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
18.0.3

10 months ago

18.0.2

10 months ago

18.0.1

1 year ago

17.1.10

11 months ago

17.1.9

11 months ago

17.1.8

1 year ago

16.3.0

1 year ago

17.1.6

1 year ago

16.2.0

1 year ago

17.1.5

1 year ago

16.1.0

1 year ago

17.1.4

1 year ago

17.1.3

1 year ago

16.0.6

1 year ago

17.1.2

1 year ago

17.1.1

1 year ago

17.1.0

1 year ago

17.0.3

1 year ago

17.0.4

1 year ago

17.0.2

1 year ago

17.0.1

1 year ago

16.0.5

1 year ago

16.0.2

1 year ago

16.0.1

1 year ago

16.0.4

1 year ago

16.0.3

1 year ago

16.0.0

1 year ago

17.0.0

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago

0.0.1

1 year ago