@nativescript/payments
Version:
In-App Purchase and Subscriptions for NativeScript
54 lines • 2.42 kB
JavaScript
import { Utils } from '@nativescript/core';
import { Observable, ReplaySubject } from 'rxjs';
import { publish } from 'rxjs/operators';
export function toMainThread() {
return (source) => new Observable((observer) => source.subscribe({
next: (x) => Utils.executeOnMainThread(() => observer.next(x)),
error: (err) => Utils.executeOnMainThread(() => observer.error(err)),
complete: () => Utils.executeOnMainThread(() => observer.complete()),
}));
}
export var PaymentEvent;
(function (PaymentEvent) {
let Context;
(function (Context) {
Context["CONNECTING_STORE"] = "CONNECTING_STORE";
Context["RETRIEVING_ITEMS"] = "RETRIEVING_ITEMS";
Context["PROCESSING_ORDER"] = "PROCESSING_ORDER";
Context["FINALIZING_ORDER"] = "FINALIZING_ORDER";
Context["RESTORING_ORDERS"] = "RESTORING_ORDERS";
})(Context = PaymentEvent.Context || (PaymentEvent.Context = {}));
let Result;
(function (Result) {
Result["STARTED"] = "STARTED";
Result["PENDING"] = "PENDING";
Result["SUCCESS"] = "SUCCESS";
Result["FAILURE"] = "FAILURE";
})(Result = PaymentEvent.Result || (PaymentEvent.Result = {}));
})(PaymentEvent || (PaymentEvent = {}));
// TODO publishReplay and regular Subject instead?
/**
* @private DO NOT USE!
*/
export const _payments$ = new ReplaySubject(128);
/**
* ConnectableObservable to receive results and events
* @deprecated - Use paymentEvents instead.
*/
export const payments$ = _payments$.pipe(publish());
/**
* ConnectableObservable to receive results and events
*/
export const paymentEvents = payments$;
// const _storeConnecting$: Subject<any> = new Subject<any>();
// const _itemsRetrieving$: Subject<any> = new Subject<any>();
// const _orderProcessing$: Subject<any> = new Subject<any>();
// const _orderFinalizing$: Subject<any> = new Subject<any>();
// const _ordersRestoring$: Subject<any> = new Subject<any>();
//
// export const storeConnecting$: Observable<any> = _storeConnecting$.asObservable();
// export const itemsRetrieving$: Observable<any> = _itemsRetrieving$.asObservable();
// export const orderProcessing$: Observable<any> = _orderProcessing$.asObservable();
// export const orderFinalizing$: Observable<any> = _orderFinalizing$.asObservable();
// export const ordersRestoring$: Observable<any> = _ordersRestoring$.asObservable();
//# sourceMappingURL=common.js.map