UNPKG

apollo-angular

Version:

Use your GraphQL data in your Angular app, with the Apollo Client

37 lines 4 kB
import { ApolloError } from '@apollo/client/core'; const isApolloError = (err) => err && err.hasOwnProperty('graphQLErrors'); export class TestOperation { operation; observer; constructor(operation, observer) { this.operation = operation; this.observer = observer; } flush(result) { if (isApolloError(result)) { this.observer.error(result); } else { const fetchResult = result ? { ...result } : result; this.observer.next(fetchResult); this.observer.complete(); } } flushData(data) { this.flush({ data, }); } networkError(error) { const apolloError = new ApolloError({ networkError: error, }); this.flush(apolloError); } graphqlErrors(errors) { this.flush({ errors, }); } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdGVzdGluZy9zcmMvb3BlcmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxXQUFXLEVBQTJDLE1BQU0scUJBQXFCLENBQUM7QUFFM0YsTUFBTSxhQUFhLEdBQUcsQ0FBQyxHQUFRLEVBQXNCLEVBQUUsQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUMsQ0FBQztBQU1uRyxNQUFNLE9BQU8sYUFBYTtJQUVOO0lBQ0M7SUFGbkIsWUFDa0IsU0FBb0IsRUFDbkIsUUFBa0M7UUFEbkMsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNuQixhQUFRLEdBQVIsUUFBUSxDQUEwQjtJQUNsRCxDQUFDO0lBRUcsS0FBSyxDQUFDLE1BQXFDO1FBQ2hELElBQUksYUFBYSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDMUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDOUIsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1lBQ3BELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQWtCLENBQUMsQ0FBQztZQUN2QyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzNCLENBQUM7SUFDSCxDQUFDO0lBRU0sU0FBUyxDQUFDLElBQW1DO1FBQ2xELElBQUksQ0FBQyxLQUFLLENBQUM7WUFDVCxJQUFJO1NBQ0wsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFlBQVksQ0FBQyxLQUFZO1FBQzlCLE1BQU0sV0FBVyxHQUFHLElBQUksV0FBVyxDQUFDO1lBQ2xDLFlBQVksRUFBRSxLQUFLO1NBQ3BCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVNLGFBQWEsQ0FBQyxNQUFzQjtRQUN6QyxJQUFJLENBQUMsS0FBSyxDQUFDO1lBQ1QsTUFBTTtTQUNQLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV4ZWN1dGlvblJlc3VsdCwgR3JhcGhRTEVycm9yIH0gZnJvbSAnZ3JhcGhxbCc7XG5pbXBvcnQgeyBPYnNlcnZlciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQXBvbGxvRXJyb3IsIEZldGNoUmVzdWx0LCBPcGVyYXRpb24gYXMgTGlua09wZXJhdGlvbiB9IGZyb20gJ0BhcG9sbG8vY2xpZW50L2NvcmUnO1xuXG5jb25zdCBpc0Fwb2xsb0Vycm9yID0gKGVycjogYW55KTogZXJyIGlzIEFwb2xsb0Vycm9yID0+IGVyciAmJiBlcnIuaGFzT3duUHJvcGVydHkoJ2dyYXBoUUxFcnJvcnMnKTtcblxuZXhwb3J0IHR5cGUgT3BlcmF0aW9uID0gTGlua09wZXJhdGlvbiAmIHtcbiAgY2xpZW50TmFtZTogc3RyaW5nO1xufTtcblxuZXhwb3J0IGNsYXNzIFRlc3RPcGVyYXRpb248VCA9IHsgW2tleTogc3RyaW5nXTogYW55IH0+IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IG9wZXJhdGlvbjogT3BlcmF0aW9uLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgb2JzZXJ2ZXI6IE9ic2VydmVyPEZldGNoUmVzdWx0PFQ+PixcbiAgKSB7fVxuXG4gIHB1YmxpYyBmbHVzaChyZXN1bHQ6IEV4ZWN1dGlvblJlc3VsdCB8IEFwb2xsb0Vycm9yKTogdm9pZCB7XG4gICAgaWYgKGlzQXBvbGxvRXJyb3IocmVzdWx0KSkge1xuICAgICAgdGhpcy5vYnNlcnZlci5lcnJvcihyZXN1bHQpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBmZXRjaFJlc3VsdCA9IHJlc3VsdCA/IHsgLi4ucmVzdWx0IH0gOiByZXN1bHQ7XG4gICAgICB0aGlzLm9ic2VydmVyLm5leHQoZmV0Y2hSZXN1bHQgYXMgYW55KTtcbiAgICAgIHRoaXMub2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZmx1c2hEYXRhKGRhdGE6IHsgW2tleTogc3RyaW5nXTogYW55IH0gfCBudWxsKTogdm9pZCB7XG4gICAgdGhpcy5mbHVzaCh7XG4gICAgICBkYXRhLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5ldHdvcmtFcnJvcihlcnJvcjogRXJyb3IpOiB2b2lkIHtcbiAgICBjb25zdCBhcG9sbG9FcnJvciA9IG5ldyBBcG9sbG9FcnJvcih7XG4gICAgICBuZXR3b3JrRXJyb3I6IGVycm9yLFxuICAgIH0pO1xuXG4gICAgdGhpcy5mbHVzaChhcG9sbG9FcnJvcik7XG4gIH1cblxuICBwdWJsaWMgZ3JhcGhxbEVycm9ycyhlcnJvcnM6IEdyYXBoUUxFcnJvcltdKTogdm9pZCB7XG4gICAgdGhpcy5mbHVzaCh7XG4gICAgICBlcnJvcnMsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==