UNPKG

@apollo-orbit/angular

Version:

A fully-featured GraphQL client for Angular with modular state management.

20 lines 4.63 kB
import { Observable } from 'rxjs'; export function extendCache(cache) { return Object.defineProperties(cache, { watchQuery: { value: watchQuery, writable: false, configurable: false } }); } function watchQuery(options) { const { immediate = true, optimistic = true } = options; return new Observable(subscriber => this.watch({ ...options, optimistic, immediate, callback: ({ result, ...rest }) => subscriber.next({ ...rest, data: result }) })); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGVFeC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2NvcmUvc3JjL2NhY2hlRXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQThCbEMsTUFBTSxVQUFVLFdBQVcsQ0FBYyxLQUErQjtJQUN0RSxPQUFPLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUU7UUFDcEMsVUFBVSxFQUFFO1lBQ1YsS0FBSyxFQUFFLFVBQVU7WUFDakIsUUFBUSxFQUFFLEtBQUs7WUFDZixZQUFZLEVBQUUsS0FBSztTQUNwQjtLQUNGLENBQStCLENBQUM7QUFDbkMsQ0FBQztBQUVELFNBQVMsVUFBVSxDQUVqQixPQUFxQztJQUVyQyxNQUFNLEVBQUUsU0FBUyxHQUFHLElBQUksRUFBRSxVQUFVLEdBQUcsSUFBSSxFQUFFLEdBQUcsT0FBTyxDQUFDO0lBQ3hELE9BQU8sSUFBSSxVQUFVLENBQ25CLFVBQVUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBTztRQUM3QixHQUFHLE9BQU87UUFDVixVQUFVO1FBQ1YsU0FBUztRQUNULFFBQVEsRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLEdBQUcsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUM7S0FDOUUsQ0FBQyxDQUFDLENBQUM7QUFDUixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXBvbGxvQ2FjaGUsIE1pc3NpbmdGaWVsZEVycm9yLCBPcGVyYXRpb25WYXJpYWJsZXMgYXMgVmFyaWFibGVzIH0gZnJvbSAnQGFwb2xsby9jbGllbnQvY29yZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgUHVyZVF1ZXJ5T3B0aW9ucyB9IGZyb20gJy4vdHlwZXMnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDYWNoZVdhdGNoUXVlcnlPcHRpb25zPFQsIFY+IGV4dGVuZHMgUHVyZVF1ZXJ5T3B0aW9uczxULCBWPiB7XHJcbiAgb3B0aW1pc3RpYz86IGJvb2xlYW47XHJcbiAgaW1tZWRpYXRlPzogYm9vbGVhbjtcclxuICAvKipcclxuICAgKiBJZiBzZXQgdG8gdHJ1ZSwgdGhlIG9ic2VydmFibGUgd2lsbCBlbWl0IHRoZSBwYXJ0aWFsIGRhdGEgdGhhdCBpcyBhdmFpbGFibGUgaW4gdGhlIGNhY2hlLlxyXG4gICAqIElmIHNldCB0byBmYWxzZSwgdGhlIG9ic2VydmFibGUgd2lsbCB0aHJvdyBhbiBlcnJvciBpZiB0aGUgY29tcGxldGUgZGF0YSBpcyBub3QgYXZhaWxhYmxlIGluIHRoZSBjYWNoZS5cclxuICAgKiBAZGVmYXVsdCBmYWxzZVxyXG4gICAqL1xyXG4gIHJldHVyblBhcnRpYWxEYXRhPzogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDYWNoZVdhdGNoUXVlcnlSZXN1bHQ8VD4ge1xyXG4gIGRhdGE6IFQ7XHJcbiAgY29tcGxldGU/OiBib29sZWFuO1xyXG4gIG1pc3Npbmc/OiBBcnJheTxNaXNzaW5nRmllbGRFcnJvcj47XHJcbiAgZnJvbU9wdGltaXN0aWNUcmFuc2FjdGlvbj86IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQXBvbGxvQ2FjaGVFeDxUQ2FjaGVTaGFwZT4gZXh0ZW5kcyBBcG9sbG9DYWNoZTxUQ2FjaGVTaGFwZT4ge1xyXG4gIC8qKlxyXG4gICAqIFdhdGNoZXMgdGhlIGNhY2hlIHN0b3JlIGZvciB0aGUgcXVlcnkgZG9jdW1lbnQgcHJvdmlkZWQuXHJcbiAgICovXHJcbiAgd2F0Y2hRdWVyeTxUID0gYW55LCBWIGV4dGVuZHMgVmFyaWFibGVzID0gVmFyaWFibGVzPihvcHRpb25zOiBDYWNoZVdhdGNoUXVlcnlPcHRpb25zPFQsIFY+ICYgeyByZXR1cm5QYXJ0aWFsRGF0YT86IGZhbHNlIH0pOiBPYnNlcnZhYmxlPENhY2hlV2F0Y2hRdWVyeVJlc3VsdDxUPj47XHJcbiAgd2F0Y2hRdWVyeTxUID0gYW55LCBWIGV4dGVuZHMgVmFyaWFibGVzID0gVmFyaWFibGVzPihvcHRpb25zOiBDYWNoZVdhdGNoUXVlcnlPcHRpb25zPFQsIFY+ICYgeyByZXR1cm5QYXJ0aWFsRGF0YTogdHJ1ZSB9KTogT2JzZXJ2YWJsZTxDYWNoZVdhdGNoUXVlcnlSZXN1bHQ8VCB8IHVuZGVmaW5lZD4+O1xyXG4gIHdhdGNoUXVlcnk8VCA9IGFueSwgViBleHRlbmRzIFZhcmlhYmxlcyA9IFZhcmlhYmxlcz4ob3B0aW9uczogQ2FjaGVXYXRjaFF1ZXJ5T3B0aW9uczxULCBWPiAmIHsgcmV0dXJuUGFydGlhbERhdGE6IGJvb2xlYW4gfSk6IE9ic2VydmFibGU8Q2FjaGVXYXRjaFF1ZXJ5UmVzdWx0PFQ+PjtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGV4dGVuZENhY2hlPFRDYWNoZVNoYXBlPihjYWNoZTogQXBvbGxvQ2FjaGU8VENhY2hlU2hhcGU+KTogQXBvbGxvQ2FjaGVFeDxUQ2FjaGVTaGFwZT4ge1xyXG4gIHJldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydGllcyhjYWNoZSwge1xyXG4gICAgd2F0Y2hRdWVyeToge1xyXG4gICAgICB2YWx1ZTogd2F0Y2hRdWVyeSxcclxuICAgICAgd3JpdGFibGU6IGZhbHNlLFxyXG4gICAgICBjb25maWd1cmFibGU6IGZhbHNlXHJcbiAgICB9XHJcbiAgfSkgYXMgQXBvbGxvQ2FjaGVFeDxUQ2FjaGVTaGFwZT47XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHdhdGNoUXVlcnk8VCwgVj4oXHJcbiAgdGhpczogQXBvbGxvQ2FjaGU8YW55PixcclxuICBvcHRpb25zOiBDYWNoZVdhdGNoUXVlcnlPcHRpb25zPFQsIFY+XHJcbik6IE9ic2VydmFibGU8Q2FjaGVXYXRjaFF1ZXJ5UmVzdWx0PFQgfCB1bmRlZmluZWQ+PiB7XHJcbiAgY29uc3QgeyBpbW1lZGlhdGUgPSB0cnVlLCBvcHRpbWlzdGljID0gdHJ1ZSB9ID0gb3B0aW9ucztcclxuICByZXR1cm4gbmV3IE9ic2VydmFibGU8Q2FjaGVXYXRjaFF1ZXJ5UmVzdWx0PFQgfCB1bmRlZmluZWQ+PihcclxuICAgIHN1YnNjcmliZXIgPT4gdGhpcy53YXRjaDxULCBWPih7XHJcbiAgICAgIC4uLm9wdGlvbnMsXHJcbiAgICAgIG9wdGltaXN0aWMsXHJcbiAgICAgIGltbWVkaWF0ZSxcclxuICAgICAgY2FsbGJhY2s6ICh7IHJlc3VsdCwgLi4ucmVzdCB9KSA9PiBzdWJzY3JpYmVyLm5leHQoeyAuLi5yZXN0LCBkYXRhOiByZXN1bHQgfSlcclxuICAgIH0pKTtcclxufVxyXG4iXX0=