1 | import { observeOn, startWith, map } from 'rxjs/operators';
|
2 | import { Observable, queueScheduler, observable } from 'rxjs';
|
3 | export function fromPromise(promiseFn) {
|
4 | return new Observable((subscriber) => {
|
5 | promiseFn().then((result) => {
|
6 | if (!subscriber.closed) {
|
7 | subscriber.next(result);
|
8 | subscriber.complete();
|
9 | }
|
10 | }, (error) => {
|
11 | if (!subscriber.closed) {
|
12 | subscriber.error(error);
|
13 | }
|
14 | });
|
15 | return () => subscriber.unsubscribe();
|
16 | });
|
17 | }
|
18 | export function useMutationLoading(source, enabled) {
|
19 | if (!enabled) {
|
20 | return source.pipe(map((result) => ({
|
21 | ...result,
|
22 | loading: false,
|
23 | })));
|
24 | }
|
25 | return source.pipe(startWith({
|
26 | loading: true,
|
27 | }), map((result) => ({
|
28 | ...result,
|
29 | loading: !!result.loading,
|
30 | })));
|
31 | }
|
32 | export class ZoneScheduler {
|
33 | constructor(zone) {
|
34 | this.zone = zone;
|
35 | this.now = Date.now ? Date.now : () => +new Date();
|
36 | }
|
37 | schedule(work, delay = 0, state) {
|
38 | return this.zone.run(() => queueScheduler.schedule(work, delay, state));
|
39 | }
|
40 | }
|
41 | export function fixObservable(obs) {
|
42 | obs[observable] = () => obs;
|
43 | return obs;
|
44 | }
|
45 | export function wrapWithZone(obs, ngZone) {
|
46 | return obs.pipe(observeOn(new ZoneScheduler(ngZone)));
|
47 | }
|
48 | export function pickFlag(flags, flag, defaultValue) {
|
49 | return flags && typeof flags[flag] !== 'undefined'
|
50 | ? flags[flag]
|
51 | : defaultValue;
|
52 | }
|
53 | //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFRekQsT0FBTyxFQUFDLFVBQVUsRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRzVELE1BQU0sVUFBVSxXQUFXLENBQUksU0FBMkI7SUFDeEQsT0FBTyxJQUFJLFVBQVUsQ0FBSSxDQUFDLFVBQVUsRUFBRSxFQUFFO1FBQ3RDLFNBQVMsRUFBRSxDQUFDLElBQUksQ0FDZCxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ1QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUU7Z0JBQ3RCLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3hCLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQzthQUN2QjtRQUNILENBQUMsRUFDRCxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ1IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUU7Z0JBQ3RCLFVBQVUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDekI7UUFDSCxDQUFDLENBQ0YsQ0FBQztRQUVGLE9BQU8sR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3hDLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELE1BQU0sVUFBVSxrQkFBa0IsQ0FDaEMsTUFBa0MsRUFDbEMsT0FBZ0I7SUFFaEIsSUFBSSxDQUFDLE9BQU8sRUFBRTtRQUNaLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FDaEIsR0FBRyxDQUFvQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNsRCxHQUFHLE1BQU07WUFDVCxPQUFPLEVBQUUsS0FBSztTQUNmLENBQUMsQ0FBQyxDQUNKLENBQUM7S0FDSDtJQUVELE9BQU8sTUFBTSxDQUFDLElBQUksQ0FDaEIsU0FBUyxDQUFvQjtRQUMzQixPQUFPLEVBQUUsSUFBSTtLQUNkLENBQUMsRUFDRixHQUFHLENBQXVDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3JELEdBQUcsTUFBTTtRQUNULE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU87S0FDMUIsQ0FBQyxDQUFDLENBQ0osQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLE9BQU8sYUFBYTtJQUN4QixZQUFvQixJQUFZO1FBQVosU0FBSSxHQUFKLElBQUksQ0FBUTtRQUV6QixRQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDO0lBRmxCLENBQUM7SUFJN0IsUUFBUSxDQUNiLElBQW1ELEVBQ25ELFFBQWdCLENBQUMsRUFDakIsS0FBUztRQUVULE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQ3hCLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FDNUIsQ0FBQztJQUNwQixDQUFDO0NBQ0Y7QUFTRCxNQUFNLFVBQVUsYUFBYSxDQUMzQixHQUF3QztJQUV2QyxHQUFXLENBQUMsVUFBVSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDO0lBQ3JDLE9BQU8sR0FBVSxDQUFDO0FBQ3BCLENBQUM7QUFFRCxNQUFNLFVBQVUsWUFBWSxDQUMxQixHQUFrQixFQUNsQixNQUFjO0lBRWQsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDeEQsQ0FBQztBQUVELE1BQU0sVUFBVSxRQUFRLENBQ3RCLEtBQXlCLEVBQ3pCLElBQU8sRUFDUCxZQUF1QjtJQUV2QixPQUFPLEtBQUssSUFBSSxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxXQUFXO1FBQ2hELENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ2IsQ0FBQyxDQUFDLFlBQVksQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ1pvbmV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtvYnNlcnZlT24sIHN0YXJ0V2l0aCwgbWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgdHlwZSB7XG4gIE9ic2VydmFibGVRdWVyeSxcbiAgQXBvbGxvUXVlcnlSZXN1bHQsXG4gIEZldGNoUmVzdWx0LFxuICBPYnNlcnZhYmxlIGFzIEFPYnNlcnZhYmxlLFxufSBmcm9tICdAYXBvbGxvL2NsaWVudC9jb3JlJztcbmltcG9ydCB0eXBlIHtTdWJzY3JpcHRpb24sIFNjaGVkdWxlckxpa2UsIFNjaGVkdWxlckFjdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge09ic2VydmFibGUsIHF1ZXVlU2NoZWR1bGVyLCBvYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB0eXBlIHtNdXRhdGlvblJlc3VsdH0gZnJvbSAnLi90eXBlcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBmcm9tUHJvbWlzZTxUPihwcm9taXNlRm46ICgpID0+IFByb21pc2U8VD4pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlPFQ+KChzdWJzY3JpYmVyKSA9PiB7XG4gICAgcHJvbWlzZUZuKCkudGhlbihcbiAgICAgIChyZXN1bHQpID0+IHtcbiAgICAgICAgaWYgKCFzdWJzY3JpYmVyLmNsb3NlZCkge1xuICAgICAgICAgIHN1YnNjcmliZXIubmV4dChyZXN1bHQpO1xuICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIChlcnJvcikgPT4ge1xuICAgICAgICBpZiAoIXN1YnNjcmliZXIuY2xvc2VkKSB7XG4gICAgICAgICAgc3Vic2NyaWJlci5lcnJvcihlcnJvcik7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgKTtcblxuICAgIHJldHVybiAoKSA9PiBzdWJzY3JpYmVyLnVuc3Vic2NyaWJlKCk7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdXNlTXV0YXRpb25Mb2FkaW5nPFQ+KFxuICBzb3VyY2U6IE9ic2VydmFibGU8RmV0Y2hSZXN1bHQ8VD4+LFxuICBlbmFibGVkOiBib29sZWFuLFxuKSB7XG4gIGlmICghZW5hYmxlZCkge1xuICAgIHJldHVybiBzb3VyY2UucGlwZShcbiAgICAgIG1hcDxGZXRjaFJlc3VsdDxUPiwgTXV0YXRpb25SZXN1bHQ8VD4+KChyZXN1bHQpID0+ICh7XG4gICAgICAgIC4uLnJlc3VsdCxcbiAgICAgICAgbG9hZGluZzogZmFsc2UsXG4gICAgICB9KSksXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiBzb3VyY2UucGlwZShcbiAgICBzdGFydFdpdGg8TXV0YXRpb25SZXN1bHQ8VD4+KHtcbiAgICAgIGxvYWRpbmc6IHRydWUsXG4gICAgfSksXG4gICAgbWFwPE11dGF0aW9uUmVzdWx0PFQ+LCBNdXRhdGlvblJlc3VsdDxUPj4oKHJlc3VsdCkgPT4gKHtcbiAgICAgIC4uLnJlc3VsdCxcbiAgICAgIGxvYWRpbmc6ICEhcmVzdWx0LmxvYWRpbmcsXG4gICAgfSkpLFxuICApO1xufVxuXG5leHBvcnQgY2xhc3MgWm9uZVNjaGVkdWxlciBpbXBsZW1lbnRzIFNjaGVkdWxlckxpa2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHpvbmU6IE5nWm9uZSkge31cblxuICBwdWJsaWMgbm93ID0gRGF0ZS5ub3cgPyBEYXRlLm5vdyA6ICgpID0+ICtuZXcgRGF0ZSgpO1xuXG4gIHB1YmxpYyBzY2hlZHVsZTxUPihcbiAgICB3b3JrOiAodGhpczogU2NoZWR1bGVyQWN0aW9uPFQ+LCBzdGF0ZT86IFQpID0+IHZvaWQsXG4gICAgZGVsYXk6IG51bWJlciA9IDAsXG4gICAgc3RhdGU/OiBULFxuICApOiBTdWJzY3JpcHRpb24ge1xuICAgIHJldHVybiB0aGlzLnpvbmUucnVuKCgpID0+XG4gICAgICBxdWV1ZVNjaGVkdWxlci5zY2hlZHVsZSh3b3JrLCBkZWxheSwgc3RhdGUpLFxuICAgICkgYXMgU3Vic2NyaXB0aW9uO1xuICB9XG59XG5cbi8vIFhYWDogQXBvbGxvJ3MgUXVlcnlPYnNlcnZhYmxlIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggUnhKU1xuLy8gVE9ETzogcmVtb3ZlIGl0IGluIG9uZSBvZiBmdXR1cmUgcmVsZWFzZXNcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9SZWFjdGl2ZVgvcnhqcy9ibG9iLzlmYjBjZTllMDljODY1OTIwY2YzNzkxNWNjNjc1ZTNiM2E3NTA1MGIvc3JjL2ludGVybmFsL3V0aWwvc3Vic2NyaWJlVG8udHMjTDMyXG5leHBvcnQgZnVuY3Rpb24gZml4T2JzZXJ2YWJsZTxUPihcbiAgb2JzOiBPYnNlcnZhYmxlUXVlcnk8VD4sXG4pOiBPYnNlcnZhYmxlPEFwb2xsb1F1ZXJ5UmVzdWx0PFQ+PjtcbmV4cG9ydCBmdW5jdGlvbiBmaXhPYnNlcnZhYmxlPFQ+KG9iczogQU9ic2VydmFibGU8VD4pOiBPYnNlcnZhYmxlPFQ+O1xuZXhwb3J0IGZ1bmN0aW9uIGZpeE9ic2VydmFibGU8VD4oXG4gIG9iczogQU9ic2VydmFibGU8VD4gfCBPYnNlcnZhYmxlUXVlcnk8VD4sXG4pOiBPYnNlcnZhYmxlPEFwb2xsb1F1ZXJ5UmVzdWx0PFQ+PiB8IE9ic2VydmFibGU8VD4ge1xuICAob2JzIGFzIGFueSlbb2JzZXJ2YWJsZV0gPSAoKSA9PiBvYnM7XG4gIHJldHVybiBvYnMgYXMgYW55O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gd3JhcFdpdGhab25lPFQ+KFxuICBvYnM6IE9ic2VydmFibGU8VD4sXG4gIG5nWm9uZTogTmdab25lLFxuKTogT2JzZXJ2YWJsZTxUPiB7XG4gIHJldHVybiBvYnMucGlwZShvYnNlcnZlT24obmV3IFpvbmVTY2hlZHVsZXIobmdab25lKSkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGlja0ZsYWc8VEZsYWdzLCBLIGV4dGVuZHMga2V5b2YgVEZsYWdzPihcbiAgZmxhZ3M6IFRGbGFncyB8IHVuZGVmaW5lZCxcbiAgZmxhZzogSyxcbiAgZGVmYXVsdFZhbHVlOiBURmxhZ3NbS10sXG4pOiBURmxhZ3NbS10ge1xuICByZXR1cm4gZmxhZ3MgJiYgdHlwZW9mIGZsYWdzW2ZsYWddICE9PSAndW5kZWZpbmVkJ1xuICAgID8gZmxhZ3NbZmxhZ11cbiAgICA6IGRlZmF1bHRWYWx1ZTtcbn1cbiJdfQ== |
\ | No newline at end of file |