Skip to content

Instantly share code, notes, and snippets.

View dmitry-stepanenko's full-sized avatar

Dmitriy Stepanenko dmitry-stepanenko

View GitHub Profile
import { Observable, EMPTY } from 'rxjs';
import { expand, reduce } from 'rxjs/operators';
export type Request<T> = (pageNumber: number, response?: T) => Observable<T>;
export type HasMore<T> = (response: T, pageNumber: number) => boolean;
export type JoinResults<T> = (accumulator: T, response: T) => T;
export interface Config<T> {
/**
@dmitry-stepanenko
dmitry-stepanenko / typescript-OAuth-popup.ts
Created September 25, 2020 10:27
Typescript utility class to run OAuth process in popup
import { fromEvent, Subject, Observable, OperatorFunction, merge } from 'rxjs';
import { take, takeUntil, filter, map } from 'rxjs/operators';
interface OAuthData {
source: string;
success: boolean;
listingSourceId?: string;
}
type OAuthEvent = Event & { data?: OAuthData; origin: string };