ngx-pwa
Version:
Provides functionality around the progressive web app functionality in angular. Most notably the an approach to cache POST, UPDATE and DELETE requests.
36 lines • 4.24 kB
JavaScript
import { HttpMethod } from './http-method.enum';
/**
* The internal request metadata.
* Sets default values.
*/
export class RequestMetadataInternal {
idKey;
type;
displayValue;
constructor(request, data) {
this.idKey = data?.idKey ?? 'id';
this.type = data?.type ?? '';
this.displayValue = data?.displayValue ?? defaultCachedRequestMetadata(request);
}
}
function defaultCachedRequestMetadata(req) {
const color = getColorForHttpMethod(req.method);
return `<b style="color: ${color};">${req.method}</b> ${req.url}`;
}
function getColorForHttpMethod(method) {
switch (method) {
case HttpMethod.POST: {
return 'green';
}
case HttpMethod.PATCH: {
return 'black';
}
case HttpMethod.DELETE: {
return 'red';
}
default: {
return 'black';
}
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC1tZXRhZGF0YS1pbnRlcm5hbC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1wd2Evc3JjL21vZGVscy9yZXF1ZXN0LW1ldGFkYXRhLWludGVybmFsLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUloRDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sdUJBQXVCO0lBQ2hDLEtBQUssQ0FBZ0M7SUFDckMsSUFBSSxDQUFTO0lBQ2IsWUFBWSxDQUFTO0lBRXJCLFlBQVksT0FBNkIsRUFBRSxJQUFzQjtRQUM3RCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksRUFBRSxLQUFLLElBQUksSUFBcUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxFQUFFLFlBQVksSUFBSSw0QkFBNEIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwRixDQUFDO0NBQ0o7QUFFRCxTQUFTLDRCQUE0QixDQUFDLEdBQXlCO0lBQzNELE1BQU0sS0FBSyxHQUFXLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4RCxPQUFPLG9CQUFvQixLQUFLLE1BQU0sR0FBRyxDQUFDLE1BQU0sUUFBUSxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7QUFDdEUsQ0FBQztBQUVELFNBQVMscUJBQXFCLENBQUMsTUFBYztJQUN6QyxRQUFRLE1BQU0sRUFBRSxDQUFDO1FBQ2IsS0FBSyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUNuQixPQUFPLE9BQU8sQ0FBQztRQUNuQixDQUFDO1FBQ0QsS0FBSyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUNwQixPQUFPLE9BQU8sQ0FBQztRQUNuQixDQUFDO1FBQ0QsS0FBSyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUNyQixPQUFPLEtBQUssQ0FBQztRQUNqQixDQUFDO1FBQ0QsT0FBTyxDQUFDLENBQUMsQ0FBQztZQUNOLE9BQU8sT0FBTyxDQUFDO1FBQ25CLENBQUM7SUFDTCxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIGpzZG9jL3JlcXVpcmUtanNkb2MgKi9cbmltcG9ydCB7IEh0dHBSZXF1ZXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuXG5pbXBvcnQgeyBIdHRwTWV0aG9kIH0gZnJvbSAnLi9odHRwLW1ldGhvZC5lbnVtJztcbmltcG9ydCB7IFJlcXVlc3RNZXRhZGF0YSB9IGZyb20gJy4vcmVxdWVzdC1tZXRhZGF0YS5tb2RlbCc7XG5pbXBvcnQgeyBCYXNlRW50aXR5VHlwZSB9IGZyb20gJy4uL3NlcnZpY2VzL29mZmxpbmUuc2VydmljZSc7XG5cbi8qKlxuICogVGhlIGludGVybmFsIHJlcXVlc3QgbWV0YWRhdGEuXG4gKiBTZXRzIGRlZmF1bHQgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgUmVxdWVzdE1ldGFkYXRhSW50ZXJuYWwgaW1wbGVtZW50cyBSZXF1ZXN0TWV0YWRhdGEge1xuICAgIGlkS2V5OiBrZXlvZiBCYXNlRW50aXR5VHlwZTx1bmtub3duPjtcbiAgICB0eXBlOiBzdHJpbmc7XG4gICAgZGlzcGxheVZhbHVlOiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcihyZXF1ZXN0OiBIdHRwUmVxdWVzdDx1bmtub3duPiwgZGF0YT86IFJlcXVlc3RNZXRhZGF0YSkge1xuICAgICAgICB0aGlzLmlkS2V5ID0gZGF0YT8uaWRLZXkgPz8gJ2lkJyBhcyBrZXlvZiBCYXNlRW50aXR5VHlwZTx1bmtub3duPjtcbiAgICAgICAgdGhpcy50eXBlID0gZGF0YT8udHlwZSA/PyAnJztcbiAgICAgICAgdGhpcy5kaXNwbGF5VmFsdWUgPSBkYXRhPy5kaXNwbGF5VmFsdWUgPz8gZGVmYXVsdENhY2hlZFJlcXVlc3RNZXRhZGF0YShyZXF1ZXN0KTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGRlZmF1bHRDYWNoZWRSZXF1ZXN0TWV0YWRhdGEocmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPik6IHN0cmluZyB7XG4gICAgY29uc3QgY29sb3I6IHN0cmluZyA9IGdldENvbG9yRm9ySHR0cE1ldGhvZChyZXEubWV0aG9kKTtcbiAgICByZXR1cm4gYDxiIHN0eWxlPVwiY29sb3I6ICR7Y29sb3J9O1wiPiR7cmVxLm1ldGhvZH08L2I+ICR7cmVxLnVybH1gO1xufVxuXG5mdW5jdGlvbiBnZXRDb2xvckZvckh0dHBNZXRob2QobWV0aG9kOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHN3aXRjaCAobWV0aG9kKSB7XG4gICAgICAgIGNhc2UgSHR0cE1ldGhvZC5QT1NUOiB7XG4gICAgICAgICAgICByZXR1cm4gJ2dyZWVuJztcbiAgICAgICAgfVxuICAgICAgICBjYXNlIEh0dHBNZXRob2QuUEFUQ0g6IHtcbiAgICAgICAgICAgIHJldHVybiAnYmxhY2snO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgSHR0cE1ldGhvZC5ERUxFVEU6IHtcbiAgICAgICAgICAgIHJldHVybiAncmVkJztcbiAgICAgICAgfVxuICAgICAgICBkZWZhdWx0OiB7XG4gICAgICAgICAgICByZXR1cm4gJ2JsYWNrJztcbiAgICAgICAgfVxuICAgIH1cbn0iXX0=