ngx-mat-lib
Version:
A bunch of utilities and components to use in your Angular 7+ apps!
84 lines (83 loc) • 4.47 kB
TypeScript
import { ParamMap } from "@angular/router";
import { MatDialog, MatSnackBar, MatSnackBarRef, MatDialogRef } from "@angular/material";
import { XmatConfirmDialogComponent, XmatAlertDialogComponent } from "../components/xmat-dialog/index";
import { XmatAlertDialogData, XmatAlertDialogActions, XmatConfirmDialogData, XmatSnackBarData, XmatFileReaderEvent, XmatGenericObject, XmatSelect } from "../models/index";
import { XmatConstantsService } from "./xmat-constants.service";
import { XmatSnackBarComponent } from "../components/xmat-snack-bar/index";
import { Observable } from "rxjs";
declare type XmatObservablesMap = XmatGenericObject<Observable<any>>;
/**
* THIS SERVICE REQUIRES 3 DEPENDENCIES:
* XmatConstantsService, XmatSnackBarModule and XmatDialogModule
*/
export declare class XmatFunctionsService {
protected _dialog: MatDialog;
protected _snackBar: MatSnackBar;
protected _xmatConstants: XmatConstantsService;
protected _confirmDialogDefaults: XmatConfirmDialogData;
private _colorDb;
private _defaultAlertData;
constructor(_dialog: MatDialog, _snackBar: MatSnackBar, _xmatConstants: XmatConstantsService);
/**
* PUBLIC FUNCTIONS
*/
addLeadingZeroes(n: number | string): string;
createReflectionModel(source: any, level?: number): any;
dateAddMonths(date?: Date, months?: number): Date;
eachEnum(srcEnum: any, iteratee: any): any[];
eachFrom<T = any>(array: T[], index: number, iteratee: (item: T, index: number, source: T[]) => any): T[];
extractQueryParams(queryString?: string): ParamMap;
filterProps(original: XmatGenericObject, exclude?: string[]): XmatGenericObject;
/**
* This function generates vibrant, "evenly spaced" colours (i.e. no clustering).
* This is ideal for creating easily distinguishable vibrant markers in Google Maps and other apps.
* */
getRainbow(steps?: number, step?: number): string;
getRandomNonConsecutiveHex(phase?: number): string;
isNumeric(value: any): boolean;
isValidLength(value: any): boolean;
logWithStyle(title: string, msg: string, color: string, content: any): void;
/**
*
* @param source the source object
* @param keys allows to order the result and/or include only certain props
*/
objectToArray<T = any>(source: XmatGenericObject<any>, keys?: string[], keepVoid?: boolean): XmatSelect<T>[];
openAlertDialog(data: XmatAlertDialogData, returnRef?: false): Observable<XmatAlertDialogActions>;
openAlertDialog(data: XmatAlertDialogData, returnRef: true): MatDialogRef<XmatAlertDialogComponent, XmatAlertDialogActions>;
openConfirmDialog(data: XmatConfirmDialogData, disableClose?: boolean, width?: string, returnRef?: false): Observable<boolean>;
openConfirmDialog(data: XmatConfirmDialogData, disableClose: boolean, width: string, returnRef: true): MatDialogRef<XmatConfirmDialogComponent, boolean>;
parseDate(value: string | number): Date;
readAsUrl(source: Blob | File): Observable<XmatFileReaderEvent>;
replaceAll(haystack: string, mapObj: XmatGenericObject<string>): string;
showSnackBar(data?: XmatSnackBarData): MatSnackBarRef<XmatSnackBarComponent>;
/**
* Shortcut to open an XmatAlertDialog passing only an error message
* @param msg
*/
showErrorSnackBar(msg?: string, duration?: number): MatSnackBarRef<XmatSnackBarComponent>;
/**
* Shortcut to open an XmatAlertDialog passing only an error message
* @param msg
*/
showErrorAlert(msg?: string | HTMLElement): Observable<XmatAlertDialogActions>;
/**
* Returns a formatted string using the first argument as a printf-like format.
*
* The first argument is a string that contains zero or more placeholders.
* Each placeholder is replaced with the converted value from its corresponding argument.
*
* Supported placeholders are:
*
* %s - String.
* %d - Number (both integer and float).
* %% - single percent sign ('%'). This does not consume an argument.
*/
sprintf(...args: any[]): string;
stripEmojis(str: string): string;
stripSpecialChars(str: string): string;
$qMap<T extends XmatGenericObject<any> = XmatGenericObject<any>>(source: XmatObservablesMap): Observable<T>;
$qArray<T = any>(source: Observable<T>[]): Observable<T[]>;
private _parseDateFallback;
}
export {};