UNPKG

@jcbautistam/custom-table

Version:

Librería de tabla reutilizable con acciones, filtros, exportación y más.

31 lines 4.42 kB
import { Pipe } from '@angular/core'; import * as i0 from "@angular/core"; export class EspaciadoPipe { transform(value, ...args) { // Dividimos la ruta en segmentos separados por '/' const segments = value.split('/'); // Iteramos a través de los segmentos y formateamos cada uno const formattedSegments = segments.map(segment => { // Si el segmento es ":id" o un UUID, lo ignoramos if (segment === ':id' || /^[A-Fa-f0-9-]{36}$/.test(segment)) { return ''; } // Aplicamos el formateo para agregar espacios antes de las mayúsculas return segment.replace(/([A-Z])/g, ' $1'); }); // Filtramos los segmentos vacíos (donde estaba ":id" o el UUID) const filteredSegments = formattedSegments.filter(segment => segment !== ''); // Unimos los segmentos formateados nuevamente con '/' const formattedValue = filteredSegments.join('/').trim().toLowerCase(); return formattedValue; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: EspaciadoPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); } static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.2", ngImport: i0, type: EspaciadoPipe, name: "espaciado" }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: EspaciadoPipe, decorators: [{ type: Pipe, args: [{ name: 'espaciado' }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNwYWNpYWRvLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jdXN0b20tdGFibGUvc3JjL2xpYi9waXBlcy9lc3BhY2lhZG8ucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFLcEQsTUFBTSxPQUFPLGFBQWE7SUFDeEIsU0FBUyxDQUFDLEtBQWEsRUFBRSxHQUFHLElBQVc7UUFDckMsbURBQW1EO1FBQ25ELE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFbEMsNERBQTREO1FBQzVELE1BQU0saUJBQWlCLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUMvQyxrREFBa0Q7WUFDbEQsSUFBSSxPQUFPLEtBQUssS0FBSyxJQUFJLG9CQUFvQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDM0QsT0FBTyxFQUFFLENBQUM7YUFDWDtZQUVELHNFQUFzRTtZQUN0RSxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVDLENBQUMsQ0FBQyxDQUFDO1FBRUgsZ0VBQWdFO1FBQ2hFLE1BQU0sZ0JBQWdCLEdBQUcsaUJBQWlCLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBRTdFLHNEQUFzRDtRQUN0RCxNQUFNLGNBQWMsR0FBRyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFdkUsT0FBTyxjQUFjLENBQUM7SUFDeEIsQ0FBQzs4R0F2QlUsYUFBYTs0R0FBYixhQUFhOzsyRkFBYixhQUFhO2tCQUh6QixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxXQUFXO2lCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiAnZXNwYWNpYWRvJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRXNwYWNpYWRvUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nLCAuLi5hcmdzOiBhbnlbXSk6IHN0cmluZyB7XHJcbiAgICAvLyBEaXZpZGltb3MgbGEgcnV0YSBlbiBzZWdtZW50b3Mgc2VwYXJhZG9zIHBvciAnLydcclxuICAgIGNvbnN0IHNlZ21lbnRzID0gdmFsdWUuc3BsaXQoJy8nKTtcclxuICAgIFxyXG4gICAgLy8gSXRlcmFtb3MgYSB0cmF2w6lzIGRlIGxvcyBzZWdtZW50b3MgeSBmb3JtYXRlYW1vcyBjYWRhIHVub1xyXG4gICAgY29uc3QgZm9ybWF0dGVkU2VnbWVudHMgPSBzZWdtZW50cy5tYXAoc2VnbWVudCA9PiB7XHJcbiAgICAgIC8vIFNpIGVsIHNlZ21lbnRvIGVzIFwiOmlkXCIgbyB1biBVVUlELCBsbyBpZ25vcmFtb3NcclxuICAgICAgaWYgKHNlZ21lbnQgPT09ICc6aWQnIHx8IC9eW0EtRmEtZjAtOS1dezM2fSQvLnRlc3Qoc2VnbWVudCkpIHtcclxuICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgIC8vIEFwbGljYW1vcyBlbCBmb3JtYXRlbyBwYXJhIGFncmVnYXIgZXNwYWNpb3MgYW50ZXMgZGUgbGFzIG1hecO6c2N1bGFzXHJcbiAgICAgIHJldHVybiBzZWdtZW50LnJlcGxhY2UoLyhbQS1aXSkvZywgJyAkMScpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgLy8gRmlsdHJhbW9zIGxvcyBzZWdtZW50b3MgdmFjw61vcyAoZG9uZGUgZXN0YWJhIFwiOmlkXCIgbyBlbCBVVUlEKVxyXG4gICAgY29uc3QgZmlsdGVyZWRTZWdtZW50cyA9IGZvcm1hdHRlZFNlZ21lbnRzLmZpbHRlcihzZWdtZW50ID0+IHNlZ21lbnQgIT09ICcnKTtcclxuICAgIFxyXG4gICAgLy8gVW5pbW9zIGxvcyBzZWdtZW50b3MgZm9ybWF0ZWFkb3MgbnVldmFtZW50ZSBjb24gJy8nXHJcbiAgICBjb25zdCBmb3JtYXR0ZWRWYWx1ZSA9IGZpbHRlcmVkU2VnbWVudHMuam9pbignLycpLnRyaW0oKS50b0xvd2VyQ2FzZSgpO1xyXG4gICAgXHJcbiAgICByZXR1cm4gZm9ybWF0dGVkVmFsdWU7XHJcbiAgfVxyXG59XHJcbiJdfQ==