export function jsonapiResponse(_options, body?, timeout?) { let options; let response; if (typeof _options === 'number') { options = { status: _options }; } else { options = _options || {}; } options.statusText = options.statusText || statusText(options.status); options.headers = options.headers || {}; if (body) { options.headers['Content-Type'] = 'application/vnd.api+json'; response = new Orbit.globals.Response(JSON.stringify(body), options); } else { response = new Orbit.globals.Response(options); } // console.log('jsonapiResponse', body, options, response.headers.get('Content-Type')); if (timeout) { return new Orbit.Promise((resolve, reject) => { let timer = Orbit.globals.setTimeout(() => { Orbit.globals.clearTimeout(timer); resolve(response); }, timeout); }); } else { return Orbit.Promise.resolve(response); } }
removeItem(key: string): Promise<void> { const fullKey: string = this.getFullKeyForItem(key); Orbit.globals.localStorage.removeItem(fullKey); return Orbit.Promise.resolve(); }
setItem(key: string, value: any): Promise<void> { const fullKey: string = this.getFullKeyForItem(key); Orbit.globals.localStorage.setItem(fullKey, JSON.stringify(value)); return Orbit.Promise.resolve(); }
getItem(key: string): Promise<any> { const fullKey: string = this.getFullKeyForItem(key); return Orbit.Promise.resolve(JSON.parse(Orbit.globals.localStorage.getItem(fullKey))); }
upgrade() { assert.ok(false, 'upgrade should not be called'); return Orbit.Promise.resolve(); }
upgrade() { assert.ok(true, 'upgrade called'); return Orbit.Promise.resolve(); }