@harbor/ui
Version:
Harbor shared UI components based on Clarity and Angular6
43 lines (42 loc) • 4.69 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
/** @type {?} */
export const errorHandler = function (error) {
if (!error) {
return "UNKNOWN_ERROR";
}
if (!(error.statusCode || error.status)) {
// treat as string message
return '' + error;
}
else {
switch (error.statusCode || error.status) {
case 400:
return "BAD_REQUEST_ERROR";
case 401:
return "UNAUTHORIZED_ERROR";
case 403:
return "FORBIDDEN_ERROR";
case 404:
return "NOT_FOUND_ERROR";
case 412:
return "PRECONDITION_FAILED";
case 409:
return "CONFLICT_ERROR";
case 500:
return "SERVER_ERROR";
default:
return "UNKNOWN_ERROR";
}
}
};
/** @type {?} */
export const extractJson = (res) => {
if (res.text() === '') {
return [];
}
return (res.json() || []);
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLnV0aWxzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGhhcmJvci91aS8iLCJzb3VyY2VzIjpbInNyYy9zaGFyZWQvc2hhcmVkLnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBcUJBLGFBQWEsWUFBWSxHQUFHLFVBQVUsS0FBVTtJQUM1QyxJQUFJLENBQUMsS0FBSyxFQUFFO1FBQ1IsT0FBTyxlQUFlLENBQUM7S0FDMUI7SUFDRCxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRTs7UUFFckMsT0FBTyxFQUFFLEdBQUcsS0FBSyxDQUFDO0tBQ3JCO1NBQU07UUFDSCxRQUFRLEtBQUssQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRTtZQUN0QyxLQUFLLEdBQUc7Z0JBQ0osT0FBTyxtQkFBbUIsQ0FBQztZQUMvQixLQUFLLEdBQUc7Z0JBQ0osT0FBTyxvQkFBb0IsQ0FBQztZQUNoQyxLQUFLLEdBQUc7Z0JBQ0osT0FBTyxpQkFBaUIsQ0FBQztZQUM3QixLQUFLLEdBQUc7Z0JBQ0osT0FBTyxpQkFBaUIsQ0FBQztZQUM3QixLQUFLLEdBQUc7Z0JBQ0osT0FBTyxxQkFBcUIsQ0FBQztZQUNqQyxLQUFLLEdBQUc7Z0JBQ0osT0FBTyxnQkFBZ0IsQ0FBQztZQUM1QixLQUFLLEdBQUc7Z0JBQ0osT0FBTyxjQUFjLENBQUM7WUFDMUI7Z0JBQ0ksT0FBTyxlQUFlLENBQUM7U0FDOUI7S0FDSjtDQUNKLENBQUM7O0FBRUYsYUFBYSxXQUFXLEdBQUcsQ0FBQyxHQUFhLEVBQUUsRUFBRTtJQUN6QyxJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUU7UUFDbkIsT0FBTyxFQUFFLENBQUM7S0FDYjtJQUNELE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7Q0FDN0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAxNyBWTXdhcmUsIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbi8vXG4vLyBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuLy8geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuLy8gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4vL1xuLy8gICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4vL1xuLy8gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuLy8gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuLy8gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4vLyBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4vLyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbi8qKlxuICogVG8gaGFuZGxlIHRoZSBlcnJvciBtZXNzYWdlIGJvZHlcbiAqXG4gKipcbiAqIHJldHVybnMge3N0cmluZ31cbiAqL1xuaW1wb3J0IHsgUmVzcG9uc2UgfSBmcm9tIFwiQGFuZ3VsYXIvaHR0cFwiO1xuXG5leHBvcnQgY29uc3QgZXJyb3JIYW5kbGVyID0gZnVuY3Rpb24gKGVycm9yOiBhbnkpOiBzdHJpbmcge1xuICAgIGlmICghZXJyb3IpIHtcbiAgICAgICAgcmV0dXJuIFwiVU5LTk9XTl9FUlJPUlwiO1xuICAgIH1cbiAgICBpZiAoIShlcnJvci5zdGF0dXNDb2RlIHx8IGVycm9yLnN0YXR1cykpIHtcbiAgICAgICAgLy8gdHJlYXQgYXMgc3RyaW5nIG1lc3NhZ2VcbiAgICAgICAgcmV0dXJuICcnICsgZXJyb3I7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgc3dpdGNoIChlcnJvci5zdGF0dXNDb2RlIHx8IGVycm9yLnN0YXR1cykge1xuICAgICAgICAgICAgY2FzZSA0MDA6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFwiQkFEX1JFUVVFU1RfRVJST1JcIjtcbiAgICAgICAgICAgIGNhc2UgNDAxOlxuICAgICAgICAgICAgICAgIHJldHVybiBcIlVOQVVUSE9SSVpFRF9FUlJPUlwiO1xuICAgICAgICAgICAgY2FzZSA0MDM6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFwiRk9SQklEREVOX0VSUk9SXCI7XG4gICAgICAgICAgICBjYXNlIDQwNDpcbiAgICAgICAgICAgICAgICByZXR1cm4gXCJOT1RfRk9VTkRfRVJST1JcIjtcbiAgICAgICAgICAgIGNhc2UgNDEyOlxuICAgICAgICAgICAgICAgIHJldHVybiBcIlBSRUNPTkRJVElPTl9GQUlMRURcIjtcbiAgICAgICAgICAgIGNhc2UgNDA5OlxuICAgICAgICAgICAgICAgIHJldHVybiBcIkNPTkZMSUNUX0VSUk9SXCI7XG4gICAgICAgICAgICBjYXNlIDUwMDpcbiAgICAgICAgICAgICAgICByZXR1cm4gXCJTRVJWRVJfRVJST1JcIjtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFwiVU5LTk9XTl9FUlJPUlwiO1xuICAgICAgICB9XG4gICAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGV4dHJhY3RKc29uID0gKHJlczogUmVzcG9uc2UpID0+IHtcbiAgICBpZiAocmVzLnRleHQoKSA9PT0gJycpIHtcbiAgICAgICAgcmV0dXJuIFtdO1xuICAgIH1cbiAgICByZXR1cm4gKHJlcy5qc29uKCkgfHwgW10pO1xufTtcbiJdfQ==