static serverUnavailable(fetchOptions, e) {
        const protocolPattern = /^[a-z]+:\/\//i,
            originPattern = /^[a-z]+:\/\/[^/]+/i,
            match = fetchOptions.url.match(originPattern),
            origin = match ? match[0] :
                protocolPattern.test(XH.baseUrl) ? XH.baseUrl :
                    window.location.origin,
            message = `Unable to contact the server at ${origin}`;

        return this.createInternal({
            name: 'Server Unavailable',
            message,
            httpStatus: 0,  // native fetch doesn't put status on its Error
            originalMessage: e.message,
            fetchOptions,
            stack: null
        });
    }
/**
     * Create an Error for when the server called by fetch does not respond
     * @param {Object} fetchOptions - original options the app passed to FetchService.fetch
     * @param {Error} e - Error object created by native fetch
     * @returns {Error}
     */
Create an Error for when the server called by fetch does not respond
@param {Object} fetchOptions - original options the app passed to FetchService.fetch
@param {Error} e - Error object created by native fetch
@returns {Error}
Create an Error for when the server called by fetch does not respond @param { Object } fetchOptions - original options the app passed to FetchService . fetch @param { Error } e - Error object created by native fetch @returns { Error }
static serverUnavailable(fetchOptions, e) {
        const protocolPattern = /^[a-z]+:\/\//i,
            originPattern = /^[a-z]+:\/\/[^/]+/i,
            match = fetchOptions.url.match(originPattern),
            origin = match ? match[0] :
                protocolPattern.test(XH.baseUrl) ? XH.baseUrl :
                    window.location.origin,
            message = `Unable to contact the server at ${origin}`;
        return this.createInternal({
            name: 'Server Unavailable',
            message,
            httpStatus: 0,  
            originalMessage: e.message,
            fetchOptions,
            stack: null
        });
    }
static serverUnavailable ( fetchOptions , e ) { const protocolPattern = / ^[a-z]+:\/\/ / i , originPattern = / ^[a-z]+:\/\/[^/]+ / i , match = fetchOptions . url . match ( originPattern ) , origin = match ? match [ 0 ] : protocolPattern . test ( XH . baseUrl ) ? XH . baseUrl : window . location . origin , message = ` ${ origin } ` ; return this . createInternal ( { name : 'Server Unavailable' , message , httpStatus : 0 , originalMessage : e . message , fetchOptions , stack : null } ) ; }
Create an Error for when the server called by fetch does not respond
 @param {Object} fetchOptions - original options the app passed to FetchService.fetch
 @param {Error} e - Error object created by native fetch
 @returns {Error}
Create an Error for when the server called by fetch does not respond @param { Object } fetchOptions - original options the app passed to FetchService . fetch @param { Error } e - Error object created by native fetch @returns { Error }
// native fetch doesn't put status on its Error