epp-lib 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,74 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import { Domain } from '../model/domain';
4
+ import { ApiRoute } from '../api-route.const';
5
+ import { PaymentType } from '../model/payment-type';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "./vodds-http.service";
8
+ export class IframeMessageService {
9
+ constructor(ngZone, http) {
10
+ this.ngZone = ngZone;
11
+ this.http = http;
12
+ this.messages$ = new Subject();
13
+ this.thirdPartyMessages$ = new Subject();
14
+ this.listener = (event) => {
15
+ if (!this.domain.allowedOrigins.includes(event.origin)) {
16
+ if (this.domain.jetonDomain == event.origin) {
17
+ this.ngZone.run(() => {
18
+ this.thirdPartyMessages$.next(event);
19
+ });
20
+ return;
21
+ }
22
+ return;
23
+ }
24
+ this.ngZone.run(() => {
25
+ this.messages$.next(event.data);
26
+ });
27
+ };
28
+ this.domain = new Domain();
29
+ this.http.get(ApiRoute.GET_DOMAIN.url).subscribe({
30
+ next: (resp) => {
31
+ if (resp.data) {
32
+ this.domain = resp.data;
33
+ }
34
+ },
35
+ error: err => { }
36
+ });
37
+ window.addEventListener('message', this.listener);
38
+ }
39
+ messages() {
40
+ return this.messages$.asObservable();
41
+ }
42
+ thirdPartyMessages() {
43
+ return this.thirdPartyMessages$.asObservable();
44
+ }
45
+ ngOnDestroy() {
46
+ window.removeEventListener('message', this.listener);
47
+ this.messages$.complete();
48
+ this.thirdPartyMessages$.complete();
49
+ }
50
+ isValidDomain(paymentType, origin) {
51
+ if (paymentType == null)
52
+ return false;
53
+ switch (paymentType) {
54
+ case PaymentType.JETON:
55
+ return this.domain.jetonDomain == origin;
56
+ default:
57
+ return false;
58
+ }
59
+ }
60
+ sendMessageToIframe(iframe, message) {
61
+ if (iframe == undefined)
62
+ return;
63
+ iframe.nativeElement.contentWindow?.postMessage(message, window.location.hostname);
64
+ }
65
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IframeMessageService, deps: [{ token: i0.NgZone }, { token: i1.VoddsHttpService }], target: i0.ɵɵFactoryTarget.Injectable }); }
66
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IframeMessageService, providedIn: 'root' }); }
67
+ }
68
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IframeMessageService, decorators: [{
69
+ type: Injectable,
70
+ args: [{
71
+ providedIn: 'root'
72
+ }]
73
+ }], ctorParameters: () => [{ type: i0.NgZone }, { type: i1.VoddsHttpService }] });
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZyYW1lLW1lc3NhZ2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VwcC1saWIvc3JjL2xpYi9zZXJ2aWNlL2lmcmFtZS1tZXNzYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFVBQVUsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMvRCxPQUFPLEVBQUUsT0FBTyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDOUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7QUFLcEQsTUFBTSxPQUFPLG9CQUFvQjtJQW9CN0IsWUFBNkIsTUFBYyxFQUFVLElBQXNCO1FBQTlDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxTQUFJLEdBQUosSUFBSSxDQUFrQjtRQW5CMUQsY0FBUyxHQUFHLElBQUksT0FBTyxFQUFpQixDQUFDO1FBQ3pDLHdCQUFtQixHQUFHLElBQUksT0FBTyxFQUFnQixDQUFDO1FBR2xELGFBQVEsR0FBRyxDQUFDLEtBQW1CLEVBQUUsRUFBRTtZQUNoRCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO2dCQUNyRCxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztvQkFDMUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO3dCQUNqQixJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUN6QyxDQUFDLENBQUMsQ0FBQztvQkFDSCxPQUFPO2dCQUNYLENBQUM7Z0JBQ0QsT0FBTztZQUNYLENBQUM7WUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNwQyxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQztRQUdFLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxNQUFNLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUM3QyxJQUFJLEVBQUUsQ0FBQyxJQUFTLEVBQUUsRUFBRTtnQkFDaEIsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ1osSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO2dCQUM1QixDQUFDO1lBQ0wsQ0FBQztZQUNELEtBQUssRUFBRSxHQUFHLENBQUMsRUFBRSxHQUFFLENBQUM7U0FDbkIsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELFFBQVE7UUFDSixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDekMsQ0FBQztJQUNELGtCQUFrQjtRQUNkLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ25ELENBQUM7SUFFRCxXQUFXO1FBQ1AsTUFBTSxDQUFDLG1CQUFtQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVELGFBQWEsQ0FBQyxXQUF3QixFQUFFLE1BQWM7UUFDbEQsSUFBSSxXQUFXLElBQUksSUFBSTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ3RDLFFBQU8sV0FBVyxFQUFFLENBQUM7WUFDakIsS0FBSyxXQUFXLENBQUMsS0FBSztnQkFDbEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsSUFBSSxNQUFNLENBQUM7WUFDN0M7Z0JBQ0ksT0FBTyxLQUFLLENBQUM7UUFDckIsQ0FBQztJQUVMLENBQUM7SUFDRCxtQkFBbUIsQ0FBQyxNQUFxQyxFQUFFLE9BQXNCO1FBQzdFLElBQUksTUFBTSxJQUFJLFNBQVM7WUFBRSxPQUFPO1FBQ2hDLE1BQU0sQ0FBQyxhQUFhLENBQUMsYUFBYSxFQUFFLFdBQVcsQ0FDM0MsT0FBTyxFQUNQLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUMzQixDQUFDO0lBQ04sQ0FBQzsrR0E5RFEsb0JBQW9CO21IQUFwQixvQkFBb0IsY0FGbkIsTUFBTTs7NEZBRVAsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZW1lbnRSZWYsIEluamVjdGFibGUsIE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IElmcmFtZU1lc3NhZ2UgfSBmcm9tICcuLi9tb2RlbC9pZnJhbWUtbWVzc2FnZSc7XHJcbmltcG9ydCB7IERvbWFpbiB9IGZyb20gJy4uL21vZGVsL2RvbWFpbic7XHJcbmltcG9ydCB7IFZvZGRzSHR0cFNlcnZpY2UgfSBmcm9tICcuL3ZvZGRzLWh0dHAuc2VydmljZSc7XHJcbmltcG9ydCB7IEFwaVJvdXRlIH0gZnJvbSAnLi4vYXBpLXJvdXRlLmNvbnN0JztcclxuaW1wb3J0IHsgUGF5bWVudFR5cGUgfSBmcm9tICcuLi9tb2RlbC9wYXltZW50LXR5cGUnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgSWZyYW1lTWVzc2FnZVNlcnZpY2Uge1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBtZXNzYWdlcyQgPSBuZXcgU3ViamVjdDxJZnJhbWVNZXNzYWdlPigpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSB0aGlyZFBhcnR5TWVzc2FnZXMkID0gbmV3IFN1YmplY3Q8TWVzc2FnZUV2ZW50PigpO1xyXG4gICAgcHJpdmF0ZSBkb21haW46IERvbWFpbjtcclxuXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxpc3RlbmVyID0gKGV2ZW50OiBNZXNzYWdlRXZlbnQpID0+IHtcclxuICAgICAgICBpZiAoIXRoaXMuZG9tYWluLmFsbG93ZWRPcmlnaW5zLmluY2x1ZGVzKGV2ZW50Lm9yaWdpbikpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuZG9tYWluLmpldG9uRG9tYWluID09IGV2ZW50Lm9yaWdpbikge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnRoaXJkUGFydHlNZXNzYWdlcyQubmV4dChldmVudCk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMubWVzc2FnZXMkLm5leHQoZXZlbnQuZGF0YSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgbmdab25lOiBOZ1pvbmUsIHByaXZhdGUgaHR0cDogVm9kZHNIdHRwU2VydmljZSkge1xyXG4gICAgICAgIHRoaXMuZG9tYWluID0gbmV3IERvbWFpbigpO1xyXG4gICAgICAgIHRoaXMuaHR0cC5nZXQoQXBpUm91dGUuR0VUX0RPTUFJTi51cmwpLnN1YnNjcmliZSh7XHJcbiAgICAgICAgICAgIG5leHQ6IChyZXNwOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChyZXNwLmRhdGEpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRvbWFpbiA9IHJlc3AuZGF0YTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgZXJyb3I6IGVyciA9PiB7fVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgdGhpcy5saXN0ZW5lcik7XHJcbiAgICB9XHJcblxyXG4gICAgbWVzc2FnZXMoKTogT2JzZXJ2YWJsZTxJZnJhbWVNZXNzYWdlPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMubWVzc2FnZXMkLmFzT2JzZXJ2YWJsZSgpO1xyXG4gICAgfVxyXG4gICAgdGhpcmRQYXJ0eU1lc3NhZ2VzKCk6IE9ic2VydmFibGU8TWVzc2FnZUV2ZW50PiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMudGhpcmRQYXJ0eU1lc3NhZ2VzJC5hc09ic2VydmFibGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIHRoaXMubGlzdGVuZXIpO1xyXG4gICAgICAgIHRoaXMubWVzc2FnZXMkLmNvbXBsZXRlKCk7XHJcbiAgICAgICAgdGhpcy50aGlyZFBhcnR5TWVzc2FnZXMkLmNvbXBsZXRlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgaXNWYWxpZERvbWFpbihwYXltZW50VHlwZTogUGF5bWVudFR5cGUsIG9yaWdpbjogc3RyaW5nKSB7XHJcbiAgICAgICAgaWYgKHBheW1lbnRUeXBlID09IG51bGwpIHJldHVybiBmYWxzZTtcclxuICAgICAgICBzd2l0Y2gocGF5bWVudFR5cGUpIHtcclxuICAgICAgICAgICAgY2FzZSBQYXltZW50VHlwZS5KRVRPTjpcclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmRvbWFpbi5qZXRvbkRvbWFpbiA9PSBvcmlnaW47XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuICAgIHNlbmRNZXNzYWdlVG9JZnJhbWUoaWZyYW1lOiBFbGVtZW50UmVmPEhUTUxJRnJhbWVFbGVtZW50PiwgbWVzc2FnZTogSWZyYW1lTWVzc2FnZSkge1xyXG4gICAgICAgIGlmIChpZnJhbWUgPT0gdW5kZWZpbmVkKSByZXR1cm47XHJcbiAgICAgICAgaWZyYW1lLm5hdGl2ZUVsZW1lbnQuY29udGVudFdpbmRvdz8ucG9zdE1lc3NhZ2UoXHJcbiAgICAgICAgICAgIG1lc3NhZ2UsXHJcbiAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -0,0 +1,57 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { HttpHeaders } from '@angular/common/http';
3
+ import { Observable } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common/http";
6
+ export class VoddsHttpService {
7
+ constructor(httpClient) {
8
+ this.httpClient = httpClient;
9
+ }
10
+ postJson(url, request) {
11
+ const headers = new HttpHeaders({ 'Content-type': 'application/json' });
12
+ return this.httpClient.post(url, request.toJson(), { headers });
13
+ }
14
+ get(url, param) {
15
+ if (param) {
16
+ url = url + '?' + param.toFormUrlEncoded();
17
+ }
18
+ return this.httpClient.get(url);
19
+ }
20
+ get2(url, option) {
21
+ const observable = new Observable(observer => {
22
+ this.httpClient.get(url, option).subscribe(res => {
23
+ observer.next(res);
24
+ }, err => {
25
+ observer.next(err);
26
+ });
27
+ });
28
+ return observable;
29
+ }
30
+ postFormUrlEncoded(url, request) {
31
+ let options = {
32
+ headers: new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded')
33
+ };
34
+ return this.httpClient.post(url, request.toFormUrlEncoded(), options);
35
+ }
36
+ getMainDomain(url) {
37
+ let mainDomain = url;
38
+ let domain = window.location.origin;
39
+ if (domain.includes("promo.")) {
40
+ domain = domain.replace("promo.", "");
41
+ mainDomain = domain + url;
42
+ }
43
+ return mainDomain;
44
+ }
45
+ getFullUrl(url, param) {
46
+ return `${url}?${param.toFormUrlEncoded()}`;
47
+ }
48
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: VoddsHttpService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
49
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: VoddsHttpService, providedIn: 'root' }); }
50
+ }
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: VoddsHttpService, decorators: [{
52
+ type: Injectable,
53
+ args: [{
54
+ providedIn: 'root',
55
+ }]
56
+ }], ctorParameters: () => [{ type: i1.HttpClient }] });
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidm9kZHMtaHR0cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXBwLWxpYi9zcmMvbGliL3NlcnZpY2Uvdm9kZHMtaHR0cC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLFdBQVcsRUFBZ0IsTUFBTSxzQkFBc0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFNbEMsTUFBTSxPQUFPLGdCQUFnQjtJQUV6QixZQUFtQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQUksQ0FBQztJQUU5QyxRQUFRLENBQUMsR0FBVyxFQUFFLE9BQWU7UUFDakMsTUFBTSxPQUFPLEdBQUcsSUFBSSxXQUFXLENBQUMsRUFBRSxjQUFjLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDO1FBQ3hFLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVELEdBQUcsQ0FBSSxHQUFXLEVBQUUsS0FBYztRQUM5QixJQUFHLEtBQUssRUFBRSxDQUFDO1lBQ1AsR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsS0FBSyxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDL0MsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUksR0FBRyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUNELElBQUksQ0FBSSxHQUFXLEVBQUUsTUFBWTtRQUM3QixNQUFNLFVBQVUsR0FBb0IsSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDMUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQU0sR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDLFNBQVMsQ0FDM0MsR0FBRyxDQUFDLEVBQUU7Z0JBQ0YsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN2QixDQUFDLEVBQ0QsR0FBRyxDQUFDLEVBQUU7Z0JBQ0YsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN2QixDQUFDLENBQ0osQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxVQUFVLENBQUM7SUFDdEIsQ0FBQztJQUVELGtCQUFrQixDQUFDLEdBQVcsRUFBRSxPQUFlO1FBQzNDLElBQUksT0FBTyxHQUFHO1lBQ1YsT0FBTyxFQUFFLElBQUksV0FBVyxFQUFFLENBQUMsR0FBRyxDQUFDLGNBQWMsRUFBRSxtQ0FBbUMsQ0FBQztTQUN0RixDQUFDO1FBQ0YsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLGdCQUFnQixFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVELGFBQWEsQ0FBQyxHQUFXO1FBQ3JCLElBQUksVUFBVSxHQUFHLEdBQUcsQ0FBQztRQUNyQixJQUFJLE1BQU0sR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztRQUNwQyxJQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUMsQ0FBQztZQUMxQixNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDdEMsVUFBVSxHQUFHLE1BQU0sR0FBRyxHQUFHLENBQUM7UUFDOUIsQ0FBQztRQUVELE9BQU8sVUFBVSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxVQUFVLENBQUMsR0FBVyxFQUFFLEtBQWE7UUFDakMsT0FBTyxHQUFHLEdBQUcsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDO0lBQ2hELENBQUM7K0dBakRRLGdCQUFnQjttSEFBaEIsZ0JBQWdCLGNBRmIsTUFBTTs7NEZBRVQsZ0JBQWdCO2tCQUg1QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEhlYWRlcnMsIEh0dHBSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBJUGFyYW0gfSBmcm9tICcuLi9tb2RlbC9pcGFyYW0nO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVm9kZHNIdHRwU2VydmljZSB7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHVibGljIGh0dHBDbGllbnQ6IEh0dHBDbGllbnQpIHsgfVxyXG5cclxuICAgIHBvc3RKc29uKHVybDogc3RyaW5nLCByZXF1ZXN0OiBJUGFyYW0pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoeyAnQ29udGVudC10eXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0pO1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdCh1cmwsIHJlcXVlc3QudG9Kc29uKCksIHsgaGVhZGVycyB9KTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQ8VD4odXJsOiBzdHJpbmcsIHBhcmFtPzogSVBhcmFtKTogT2JzZXJ2YWJsZTxUPiB7XHJcbiAgICAgICAgaWYocGFyYW0pIHtcclxuICAgICAgICAgICAgdXJsID0gdXJsICsgJz8nICsgcGFyYW0udG9Gb3JtVXJsRW5jb2RlZCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldDxUPih1cmwpO1xyXG4gICAgfVxyXG4gICAgZ2V0MjxUPih1cmw6IHN0cmluZywgb3B0aW9uPzogYW55KTogT2JzZXJ2YWJsZTxUPiB7XHJcbiAgICAgICAgY29uc3Qgb2JzZXJ2YWJsZTogT2JzZXJ2YWJsZTxhbnk+ID0gbmV3IE9ic2VydmFibGUob2JzZXJ2ZXIgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmh0dHBDbGllbnQuZ2V0PGFueT4odXJsLCBvcHRpb24pLnN1YnNjcmliZShcclxuICAgICAgICAgICAgICAgIHJlcyA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChyZXMpO1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIGVyciA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChlcnIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJldHVybiBvYnNlcnZhYmxlO1xyXG4gICAgfVxyXG5cclxuICAgIHBvc3RGb3JtVXJsRW5jb2RlZCh1cmw6IHN0cmluZywgcmVxdWVzdDogSVBhcmFtKSB7XHJcbiAgICAgICAgbGV0IG9wdGlvbnMgPSB7XHJcbiAgICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycygpLnNldCgnQ29udGVudC1UeXBlJywgJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcpXHJcbiAgICAgICAgfTtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QodXJsLCByZXF1ZXN0LnRvRm9ybVVybEVuY29kZWQoKSwgb3B0aW9ucyk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0TWFpbkRvbWFpbih1cmw6IHN0cmluZyl7XHJcbiAgICAgICAgbGV0IG1haW5Eb21haW4gPSB1cmw7XHJcbiAgICAgICAgbGV0IGRvbWFpbiA9IHdpbmRvdy5sb2NhdGlvbi5vcmlnaW47XHJcbiAgICAgICAgaWYoZG9tYWluLmluY2x1ZGVzKFwicHJvbW8uXCIpKXtcclxuICAgICAgICAgICAgZG9tYWluID0gZG9tYWluLnJlcGxhY2UoXCJwcm9tby5cIiwgXCJcIik7XHJcbiAgICAgICAgICAgIG1haW5Eb21haW4gPSBkb21haW4gKyB1cmw7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gbWFpbkRvbWFpbjtcclxuICAgIH1cclxuXHJcbiAgICBnZXRGdWxsVXJsKHVybDogc3RyaW5nLCBwYXJhbTogSVBhcmFtKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gYCR7dXJsfT8ke3BhcmFtLnRvRm9ybVVybEVuY29kZWQoKX1gO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -11,7 +11,7 @@ export * from './lib/model/iframe-message-type';
11
11
  export * from './lib/model/iparam';
12
12
  export * from './lib/model/payment-type';
13
13
  // Services
14
- export * from './lib/iframe-message.service';
14
+ export * from './lib/service/iframe-message.service';
15
15
  // Constants
16
16
  export * from './lib/api-route.const';
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2VwcC1saWIvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxTQUFTO0FBQ1QsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLDBCQUEwQixDQUFDO0FBRXpDLFdBQVc7QUFDWCxjQUFjLDhCQUE4QixDQUFDO0FBRTdDLFlBQVk7QUFDWixjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGVwcC1saWJcclxuICovXHJcblxyXG4vLyBNb2RlbHNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWwvYmFzZS1mb3JtJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWwvY2FsbGJhY2stbWVzc2FnZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVsL2NoZWNrb3V0JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWwvZG9tYWluJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWwvaWZyYW1lLW1lc3NhZ2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbC9pZnJhbWUtbWVzc2FnZS10eXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWwvaXBhcmFtJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWwvcGF5bWVudC10eXBlJztcclxuXHJcbi8vIFNlcnZpY2VzXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lmcmFtZS1tZXNzYWdlLnNlcnZpY2UnO1xyXG5cclxuLy8gQ29uc3RhbnRzXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FwaS1yb3V0ZS5jb25zdCc7Il19
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2VwcC1saWIvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxTQUFTO0FBQ1QsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLDBCQUEwQixDQUFDO0FBRXpDLFdBQVc7QUFDWCxjQUFjLHNDQUFzQyxDQUFDO0FBRXJELFlBQVk7QUFDWixjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGVwcC1saWJcclxuICovXHJcblxyXG4vLyBNb2RlbHNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWwvYmFzZS1mb3JtJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWwvY2FsbGJhY2stbWVzc2FnZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVsL2NoZWNrb3V0JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWwvZG9tYWluJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWwvaWZyYW1lLW1lc3NhZ2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbC9pZnJhbWUtbWVzc2FnZS10eXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWwvaXBhcmFtJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWwvcGF5bWVudC10eXBlJztcclxuXHJcbi8vIFNlcnZpY2VzXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2UvaWZyYW1lLW1lc3NhZ2Uuc2VydmljZSc7XHJcblxyXG4vLyBDb25zdGFudHNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBpLXJvdXRlLmNvbnN0JzsiXX0=
@@ -1 +1 @@
1
- {"version":3,"file":"epp-lib.mjs","sources":["../../../projects/epp-lib/src/lib/model/iparam.ts","../../../projects/epp-lib/src/lib/model/base-form.ts","../../../projects/epp-lib/src/lib/model/callback-message.ts","../../../projects/epp-lib/src/lib/model/payment-type.ts","../../../projects/epp-lib/src/lib/model/checkout.ts","../../../projects/epp-lib/src/lib/model/domain.ts","../../../projects/epp-lib/src/lib/model/iframe-message-type.ts","../../../projects/epp-lib/src/lib/api-route.const.ts","../../../projects/epp-lib/src/lib/vodds-http.service.ts","../../../projects/epp-lib/src/lib/iframe-message.service.ts","../../../projects/epp-lib/src/public-api.ts","../../../projects/epp-lib/src/epp-lib.ts"],"sourcesContent":["export class IParam {\r\n getMobileFlag(): boolean {\r\n return /android|mobi/i.test(navigator.userAgent.toLowerCase());\r\n }\r\n \r\n toJson(): string {\r\n return JSON.stringify(this);\r\n }\r\n\r\n toFormUrlEncoded(): string {\r\n return new URLSearchParams(Object.entries(this).map(([key, value]) => [key, String(value)])).toString();\r\n }\r\n}\r\n","import { HttpParams, HttpHeaders } from '@angular/common/http';\r\nimport { IParam } from './iparam';\r\n\r\nexport class BaseForm extends IParam {\r\n\tisMobile: string;\r\n\r\n\tconstructor() {\r\n super();\r\n\t\tthis.isMobile = 'false';\r\n\t}\r\n\r\n\t/**\r\n\t * Use this function for building POST params with form url encoded content type.\r\n\t * Remeber to call params.toString() when passing to http request\r\n\t */\r\n\tgetUrlSearchParam() {\r\n\t\tconst params = new URLSearchParams();\r\n\t\tparams.set('isMobile', this.isMobile);\r\n\t\treturn params;\r\n\t}\r\n\r\n\t/**\r\n\t * Use this function for building GET params\r\n\t */\r\n\tgetHttpParams() {\r\n\t\tlet params = new HttpParams();\r\n\t\tparams = params.append('isMobile', this.isMobile);\r\n\t\treturn params;\r\n\t}\r\n\r\n\t/**\r\n\t * Add isMobile = 'true' to paramters\r\n\t * @param params : object\r\n\t */\r\n\taddIsMobile(params: any) {\r\n\t\tparams['isMobile'] = this.isMobile;\r\n\t}\r\n\r\n\t/**\r\n\t * For POST request with form-urlencoded\r\n\t */\r\n\tgetHeaderWithContentTypeForm() {\r\n\t\tconst headers = new HttpHeaders()\r\n\t\t\t.set('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');\r\n\t\treturn headers;\r\n\t}\r\n\r\n\t/**\r\n\t * For POST request with json body\r\n\t */\r\n\tgetHeaderWithContentTypeJson() {\r\n\t\tconst headers = new HttpHeaders()\r\n\t\t\t.set('Content-Type', 'application/json; charset=utf-8');\r\n\t\treturn headers;\r\n\t}\r\n}","export class CallbackMessage {\r\n errorMessage: string = '';\r\n \r\n constructor(errorMessage: string) {\r\n this.errorMessage = errorMessage;\r\n }\r\n}\r\n","export enum PaymentType {\r\n NA,\r\n JETON\r\n}\r\n","import { PaymentType } from \"./payment-type\";\r\n\r\nexport class Checkout {\r\n requestId: string = '';\r\n paymentType: PaymentType = PaymentType.NA;\r\n url: string = '';\r\n errorMessage: string = '';\r\n callback: any;\r\n popup: any;\r\n}\r\n","export class Domain {\r\n defaultDomain: string = '';\r\n allowedOrigins: string[] = [];\r\n specialDomain: string[] = [];\r\n jetonDomain: string = '';\r\n constructor() {}\r\n}\r\n","export enum IframeMessageType {\r\n OPEN_PAYMENT_FORM,\r\n PAYMENT_CALLBACK\r\n}\r\n","export const ApiRoute = {\r\n GET_DOMAIN: { url: \"/getDomain\", method: \"get\" }\r\n}\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpResponse } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { IParam } from './model/iparam';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class VoddsHttpService {\r\n\r\n constructor(public httpClient: HttpClient) { }\r\n\r\n postJson(url: string, request: IParam): Observable<any> {\r\n const headers = new HttpHeaders({ 'Content-type': 'application/json' });\r\n return this.httpClient.post(url, request.toJson(), { headers });\r\n }\r\n\r\n get<T>(url: string, param?: IParam): Observable<T> {\r\n if(param) {\r\n url = url + '?' + param.toFormUrlEncoded();\r\n }\r\n return this.httpClient.get<T>(url);\r\n }\r\n get2<T>(url: string, option?: any): Observable<T> {\r\n const observable: Observable<any> = new Observable(observer => {\r\n this.httpClient.get<any>(url, option).subscribe(\r\n res => {\r\n observer.next(res);\r\n },\r\n err => {\r\n observer.next(err);\r\n }\r\n );\r\n });\r\n return observable;\r\n }\r\n\r\n postFormUrlEncoded(url: string, request: IParam) {\r\n let options = {\r\n headers: new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded')\r\n };\r\n return this.httpClient.post(url, request.toFormUrlEncoded(), options);\r\n }\r\n\r\n getMainDomain(url: string){\r\n let mainDomain = url;\r\n let domain = window.location.origin;\r\n if(domain.includes(\"promo.\")){\r\n domain = domain.replace(\"promo.\", \"\");\r\n mainDomain = domain + url;\r\n }\r\n\r\n return mainDomain;\r\n }\r\n\r\n getFullUrl(url: string, param: IParam): string {\r\n return `${url}?${param.toFormUrlEncoded()}`;\r\n }\r\n}\r\n","import { ElementRef, Injectable, NgZone } from '@angular/core';\r\nimport { Subject, Observable } from 'rxjs';\r\nimport { IframeMessage } from './model/iframe-message';\r\nimport { Domain } from './model/domain';\r\nimport { VoddsHttpService } from './vodds-http.service';\r\nimport { ApiRoute } from './api-route.const';\r\nimport { PaymentType } from './model/payment-type';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IframeMessageService {\r\n private readonly messages$ = new Subject<IframeMessage>();\r\n private readonly thirdPartyMessages$ = new Subject<MessageEvent>();\r\n private domain: Domain;\r\n\r\n private readonly listener = (event: MessageEvent) => {\r\n if (!this.domain.allowedOrigins.includes(event.origin)) {\r\n if (this.domain.jetonDomain == event.origin) {\r\n this.ngZone.run(() => {\r\n this.thirdPartyMessages$.next(event);\r\n });\r\n return;\r\n }\r\n return;\r\n }\r\n this.ngZone.run(() => {\r\n this.messages$.next(event.data);\r\n });\r\n };\r\n\r\n constructor(private readonly ngZone: NgZone, private http: VoddsHttpService) {\r\n this.domain = new Domain();\r\n this.http.get(ApiRoute.GET_DOMAIN.url).subscribe({\r\n next: (resp: any) => {\r\n if (resp.data) {\r\n this.domain = resp.data;\r\n }\r\n },\r\n error: err => {}\r\n });\r\n window.addEventListener('message', this.listener);\r\n }\r\n\r\n messages(): Observable<IframeMessage> {\r\n return this.messages$.asObservable();\r\n }\r\n thirdPartyMessages(): Observable<MessageEvent> {\r\n return this.thirdPartyMessages$.asObservable();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n window.removeEventListener('message', this.listener);\r\n this.messages$.complete();\r\n this.thirdPartyMessages$.complete();\r\n }\r\n\r\n isValidDomain(paymentType: PaymentType, origin: string) {\r\n if (paymentType == null) return false;\r\n switch(paymentType) {\r\n case PaymentType.JETON:\r\n return this.domain.jetonDomain == origin;\r\n default:\r\n return false;\r\n }\r\n\r\n }\r\n sendMessageToIframe(iframe: ElementRef<HTMLIFrameElement>, message: IframeMessage) {\r\n if (iframe == undefined) return;\r\n iframe.nativeElement.contentWindow?.postMessage(\r\n message,\r\n window.location.hostname\r\n );\r\n }\r\n}\r\n","/*\r\n * Public API Surface of epp-lib\r\n */\r\n\r\n// Models\r\nexport * from './lib/model/base-form';\r\nexport * from './lib/model/callback-message';\r\nexport * from './lib/model/checkout';\r\nexport * from './lib/model/domain';\r\nexport * from './lib/model/iframe-message';\r\nexport * from './lib/model/iframe-message-type';\r\nexport * from './lib/model/iparam';\r\nexport * from './lib/model/payment-type';\r\n\r\n// Services\r\nexport * from './lib/iframe-message.service';\r\n\r\n// Constants\r\nexport * from './lib/api-route.const';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.VoddsHttpService"],"mappings":"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"}
1
+ {"version":3,"file":"epp-lib.mjs","sources":["../../../projects/epp-lib/src/lib/model/iparam.ts","../../../projects/epp-lib/src/lib/model/base-form.ts","../../../projects/epp-lib/src/lib/model/callback-message.ts","../../../projects/epp-lib/src/lib/model/payment-type.ts","../../../projects/epp-lib/src/lib/model/checkout.ts","../../../projects/epp-lib/src/lib/model/domain.ts","../../../projects/epp-lib/src/lib/model/iframe-message-type.ts","../../../projects/epp-lib/src/lib/api-route.const.ts","../../../projects/epp-lib/src/lib/service/vodds-http.service.ts","../../../projects/epp-lib/src/lib/service/iframe-message.service.ts","../../../projects/epp-lib/src/public-api.ts","../../../projects/epp-lib/src/epp-lib.ts"],"sourcesContent":["export class IParam {\r\n getMobileFlag(): boolean {\r\n return /android|mobi/i.test(navigator.userAgent.toLowerCase());\r\n }\r\n \r\n toJson(): string {\r\n return JSON.stringify(this);\r\n }\r\n\r\n toFormUrlEncoded(): string {\r\n return new URLSearchParams(Object.entries(this).map(([key, value]) => [key, String(value)])).toString();\r\n }\r\n}\r\n","import { HttpParams, HttpHeaders } from '@angular/common/http';\r\nimport { IParam } from './iparam';\r\n\r\nexport class BaseForm extends IParam {\r\n\tisMobile: string;\r\n\r\n\tconstructor() {\r\n super();\r\n\t\tthis.isMobile = 'false';\r\n\t}\r\n\r\n\t/**\r\n\t * Use this function for building POST params with form url encoded content type.\r\n\t * Remeber to call params.toString() when passing to http request\r\n\t */\r\n\tgetUrlSearchParam() {\r\n\t\tconst params = new URLSearchParams();\r\n\t\tparams.set('isMobile', this.isMobile);\r\n\t\treturn params;\r\n\t}\r\n\r\n\t/**\r\n\t * Use this function for building GET params\r\n\t */\r\n\tgetHttpParams() {\r\n\t\tlet params = new HttpParams();\r\n\t\tparams = params.append('isMobile', this.isMobile);\r\n\t\treturn params;\r\n\t}\r\n\r\n\t/**\r\n\t * Add isMobile = 'true' to paramters\r\n\t * @param params : object\r\n\t */\r\n\taddIsMobile(params: any) {\r\n\t\tparams['isMobile'] = this.isMobile;\r\n\t}\r\n\r\n\t/**\r\n\t * For POST request with form-urlencoded\r\n\t */\r\n\tgetHeaderWithContentTypeForm() {\r\n\t\tconst headers = new HttpHeaders()\r\n\t\t\t.set('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');\r\n\t\treturn headers;\r\n\t}\r\n\r\n\t/**\r\n\t * For POST request with json body\r\n\t */\r\n\tgetHeaderWithContentTypeJson() {\r\n\t\tconst headers = new HttpHeaders()\r\n\t\t\t.set('Content-Type', 'application/json; charset=utf-8');\r\n\t\treturn headers;\r\n\t}\r\n}","export class CallbackMessage {\r\n errorMessage: string = '';\r\n \r\n constructor(errorMessage: string) {\r\n this.errorMessage = errorMessage;\r\n }\r\n}\r\n","export enum PaymentType {\r\n NA,\r\n JETON\r\n}\r\n","import { PaymentType } from \"./payment-type\";\r\n\r\nexport class Checkout {\r\n requestId: string = '';\r\n paymentType: PaymentType = PaymentType.NA;\r\n url: string = '';\r\n errorMessage: string = '';\r\n callback: any;\r\n popup: any;\r\n}\r\n","export class Domain {\r\n defaultDomain: string = '';\r\n allowedOrigins: string[] = [];\r\n specialDomain: string[] = [];\r\n jetonDomain: string = '';\r\n constructor() {}\r\n}\r\n","export enum IframeMessageType {\r\n OPEN_PAYMENT_FORM,\r\n PAYMENT_CALLBACK\r\n}\r\n","export const ApiRoute = {\r\n GET_DOMAIN: { url: \"/getDomain\", method: \"get\" }\r\n}\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpResponse } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { IParam } from '../model/iparam';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class VoddsHttpService {\r\n\r\n constructor(public httpClient: HttpClient) { }\r\n\r\n postJson(url: string, request: IParam): Observable<any> {\r\n const headers = new HttpHeaders({ 'Content-type': 'application/json' });\r\n return this.httpClient.post(url, request.toJson(), { headers });\r\n }\r\n\r\n get<T>(url: string, param?: IParam): Observable<T> {\r\n if(param) {\r\n url = url + '?' + param.toFormUrlEncoded();\r\n }\r\n return this.httpClient.get<T>(url);\r\n }\r\n get2<T>(url: string, option?: any): Observable<T> {\r\n const observable: Observable<any> = new Observable(observer => {\r\n this.httpClient.get<any>(url, option).subscribe(\r\n res => {\r\n observer.next(res);\r\n },\r\n err => {\r\n observer.next(err);\r\n }\r\n );\r\n });\r\n return observable;\r\n }\r\n\r\n postFormUrlEncoded(url: string, request: IParam) {\r\n let options = {\r\n headers: new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded')\r\n };\r\n return this.httpClient.post(url, request.toFormUrlEncoded(), options);\r\n }\r\n\r\n getMainDomain(url: string){\r\n let mainDomain = url;\r\n let domain = window.location.origin;\r\n if(domain.includes(\"promo.\")){\r\n domain = domain.replace(\"promo.\", \"\");\r\n mainDomain = domain + url;\r\n }\r\n\r\n return mainDomain;\r\n }\r\n\r\n getFullUrl(url: string, param: IParam): string {\r\n return `${url}?${param.toFormUrlEncoded()}`;\r\n }\r\n}\r\n","import { ElementRef, Injectable, NgZone } from '@angular/core';\r\nimport { Subject, Observable } from 'rxjs';\r\nimport { IframeMessage } from '../model/iframe-message';\r\nimport { Domain } from '../model/domain';\r\nimport { VoddsHttpService } from './vodds-http.service';\r\nimport { ApiRoute } from '../api-route.const';\r\nimport { PaymentType } from '../model/payment-type';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IframeMessageService {\r\n private readonly messages$ = new Subject<IframeMessage>();\r\n private readonly thirdPartyMessages$ = new Subject<MessageEvent>();\r\n private domain: Domain;\r\n\r\n private readonly listener = (event: MessageEvent) => {\r\n if (!this.domain.allowedOrigins.includes(event.origin)) {\r\n if (this.domain.jetonDomain == event.origin) {\r\n this.ngZone.run(() => {\r\n this.thirdPartyMessages$.next(event);\r\n });\r\n return;\r\n }\r\n return;\r\n }\r\n this.ngZone.run(() => {\r\n this.messages$.next(event.data);\r\n });\r\n };\r\n\r\n constructor(private readonly ngZone: NgZone, private http: VoddsHttpService) {\r\n this.domain = new Domain();\r\n this.http.get(ApiRoute.GET_DOMAIN.url).subscribe({\r\n next: (resp: any) => {\r\n if (resp.data) {\r\n this.domain = resp.data;\r\n }\r\n },\r\n error: err => {}\r\n });\r\n window.addEventListener('message', this.listener);\r\n }\r\n\r\n messages(): Observable<IframeMessage> {\r\n return this.messages$.asObservable();\r\n }\r\n thirdPartyMessages(): Observable<MessageEvent> {\r\n return this.thirdPartyMessages$.asObservable();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n window.removeEventListener('message', this.listener);\r\n this.messages$.complete();\r\n this.thirdPartyMessages$.complete();\r\n }\r\n\r\n isValidDomain(paymentType: PaymentType, origin: string) {\r\n if (paymentType == null) return false;\r\n switch(paymentType) {\r\n case PaymentType.JETON:\r\n return this.domain.jetonDomain == origin;\r\n default:\r\n return false;\r\n }\r\n\r\n }\r\n sendMessageToIframe(iframe: ElementRef<HTMLIFrameElement>, message: IframeMessage) {\r\n if (iframe == undefined) return;\r\n iframe.nativeElement.contentWindow?.postMessage(\r\n message,\r\n window.location.hostname\r\n );\r\n }\r\n}\r\n","/*\r\n * Public API Surface of epp-lib\r\n */\r\n\r\n// Models\r\nexport * from './lib/model/base-form';\r\nexport * from './lib/model/callback-message';\r\nexport * from './lib/model/checkout';\r\nexport * from './lib/model/domain';\r\nexport * from './lib/model/iframe-message';\r\nexport * from './lib/model/iframe-message-type';\r\nexport * from './lib/model/iparam';\r\nexport * from './lib/model/payment-type';\r\n\r\n// Services\r\nexport * from './lib/service/iframe-message.service';\r\n\r\n// Constants\r\nexport * from './lib/api-route.const';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.VoddsHttpService"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { ElementRef, NgZone } from '@angular/core';
2
2
  import { Observable } from 'rxjs';
3
- import { IframeMessage } from './model/iframe-message';
3
+ import { IframeMessage } from '../model/iframe-message';
4
4
  import { VoddsHttpService } from './vodds-http.service';
5
- import { PaymentType } from './model/payment-type';
5
+ import { PaymentType } from '../model/payment-type';
6
6
  import * as i0 from "@angular/core";
7
7
  export declare class IframeMessageService {
8
8
  private readonly ngZone;
@@ -1,6 +1,6 @@
1
1
  import { HttpClient } from '@angular/common/http';
2
2
  import { Observable } from 'rxjs';
3
- import { IParam } from './model/iparam';
3
+ import { IParam } from '../model/iparam';
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class VoddsHttpService {
6
6
  httpClient: HttpClient;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "epp-lib",
3
- "version": "0.0.1",
3
+ "version": "0.0.2",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^17.3.0",
6
6
  "@angular/core": "^17.3.0"
package/public-api.d.ts CHANGED
@@ -6,5 +6,5 @@ export * from './lib/model/iframe-message';
6
6
  export * from './lib/model/iframe-message-type';
7
7
  export * from './lib/model/iparam';
8
8
  export * from './lib/model/payment-type';
9
- export * from './lib/iframe-message.service';
9
+ export * from './lib/service/iframe-message.service';
10
10
  export * from './lib/api-route.const';
@@ -1,74 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { Subject } from 'rxjs';
3
- import { Domain } from './model/domain';
4
- import { ApiRoute } from './api-route.const';
5
- import { PaymentType } from './model/payment-type';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "./vodds-http.service";
8
- export class IframeMessageService {
9
- constructor(ngZone, http) {
10
- this.ngZone = ngZone;
11
- this.http = http;
12
- this.messages$ = new Subject();
13
- this.thirdPartyMessages$ = new Subject();
14
- this.listener = (event) => {
15
- if (!this.domain.allowedOrigins.includes(event.origin)) {
16
- if (this.domain.jetonDomain == event.origin) {
17
- this.ngZone.run(() => {
18
- this.thirdPartyMessages$.next(event);
19
- });
20
- return;
21
- }
22
- return;
23
- }
24
- this.ngZone.run(() => {
25
- this.messages$.next(event.data);
26
- });
27
- };
28
- this.domain = new Domain();
29
- this.http.get(ApiRoute.GET_DOMAIN.url).subscribe({
30
- next: (resp) => {
31
- if (resp.data) {
32
- this.domain = resp.data;
33
- }
34
- },
35
- error: err => { }
36
- });
37
- window.addEventListener('message', this.listener);
38
- }
39
- messages() {
40
- return this.messages$.asObservable();
41
- }
42
- thirdPartyMessages() {
43
- return this.thirdPartyMessages$.asObservable();
44
- }
45
- ngOnDestroy() {
46
- window.removeEventListener('message', this.listener);
47
- this.messages$.complete();
48
- this.thirdPartyMessages$.complete();
49
- }
50
- isValidDomain(paymentType, origin) {
51
- if (paymentType == null)
52
- return false;
53
- switch (paymentType) {
54
- case PaymentType.JETON:
55
- return this.domain.jetonDomain == origin;
56
- default:
57
- return false;
58
- }
59
- }
60
- sendMessageToIframe(iframe, message) {
61
- if (iframe == undefined)
62
- return;
63
- iframe.nativeElement.contentWindow?.postMessage(message, window.location.hostname);
64
- }
65
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IframeMessageService, deps: [{ token: i0.NgZone }, { token: i1.VoddsHttpService }], target: i0.ɵɵFactoryTarget.Injectable }); }
66
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IframeMessageService, providedIn: 'root' }); }
67
- }
68
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IframeMessageService, decorators: [{
69
- type: Injectable,
70
- args: [{
71
- providedIn: 'root'
72
- }]
73
- }], ctorParameters: () => [{ type: i0.NgZone }, { type: i1.VoddsHttpService }] });
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZyYW1lLW1lc3NhZ2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2VwcC1saWIvc3JjL2xpYi9pZnJhbWUtbWVzc2FnZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDL0QsT0FBTyxFQUFFLE9BQU8sRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUUzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBS25ELE1BQU0sT0FBTyxvQkFBb0I7SUFvQjdCLFlBQTZCLE1BQWMsRUFBVSxJQUFzQjtRQUE5QyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsU0FBSSxHQUFKLElBQUksQ0FBa0I7UUFuQjFELGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBaUIsQ0FBQztRQUN6Qyx3QkFBbUIsR0FBRyxJQUFJLE9BQU8sRUFBZ0IsQ0FBQztRQUdsRCxhQUFRLEdBQUcsQ0FBQyxLQUFtQixFQUFFLEVBQUU7WUFDaEQsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztnQkFDckQsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQzFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTt3QkFDakIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDekMsQ0FBQyxDQUFDLENBQUM7b0JBQ0gsT0FBTztnQkFDWCxDQUFDO2dCQUNELE9BQU87WUFDWCxDQUFDO1lBQ0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO2dCQUNqQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDcEMsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUM7UUFHRSxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksTUFBTSxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDN0MsSUFBSSxFQUFFLENBQUMsSUFBUyxFQUFFLEVBQUU7Z0JBQ2hCLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO29CQUNaLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztnQkFDNUIsQ0FBQztZQUNMLENBQUM7WUFDRCxLQUFLLEVBQUUsR0FBRyxDQUFDLEVBQUUsR0FBRSxDQUFDO1NBQ25CLENBQUMsQ0FBQztRQUNILE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxRQUFRO1FBQ0osT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFDRCxrQkFBa0I7UUFDZCxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNuRCxDQUFDO0lBRUQsV0FBVztRQUNQLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxhQUFhLENBQUMsV0FBd0IsRUFBRSxNQUFjO1FBQ2xELElBQUksV0FBVyxJQUFJLElBQUk7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUN0QyxRQUFPLFdBQVcsRUFBRSxDQUFDO1lBQ2pCLEtBQUssV0FBVyxDQUFDLEtBQUs7Z0JBQ2xCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLElBQUksTUFBTSxDQUFDO1lBQzdDO2dCQUNJLE9BQU8sS0FBSyxDQUFDO1FBQ3JCLENBQUM7SUFFTCxDQUFDO0lBQ0QsbUJBQW1CLENBQUMsTUFBcUMsRUFBRSxPQUFzQjtRQUM3RSxJQUFJLE1BQU0sSUFBSSxTQUFTO1lBQUUsT0FBTztRQUNoQyxNQUFNLENBQUMsYUFBYSxDQUFDLGFBQWEsRUFBRSxXQUFXLENBQzNDLE9BQU8sRUFDUCxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FDM0IsQ0FBQztJQUNOLENBQUM7K0dBOURRLG9CQUFvQjttSEFBcEIsb0JBQW9CLGNBRm5CLE1BQU07OzRGQUVQLG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbGVtZW50UmVmLCBJbmplY3RhYmxlLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBJZnJhbWVNZXNzYWdlIH0gZnJvbSAnLi9tb2RlbC9pZnJhbWUtbWVzc2FnZSc7XHJcbmltcG9ydCB7IERvbWFpbiB9IGZyb20gJy4vbW9kZWwvZG9tYWluJztcclxuaW1wb3J0IHsgVm9kZHNIdHRwU2VydmljZSB9IGZyb20gJy4vdm9kZHMtaHR0cC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXBpUm91dGUgfSBmcm9tICcuL2FwaS1yb3V0ZS5jb25zdCc7XHJcbmltcG9ydCB7IFBheW1lbnRUeXBlIH0gZnJvbSAnLi9tb2RlbC9wYXltZW50LXR5cGUnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgSWZyYW1lTWVzc2FnZVNlcnZpY2Uge1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBtZXNzYWdlcyQgPSBuZXcgU3ViamVjdDxJZnJhbWVNZXNzYWdlPigpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSB0aGlyZFBhcnR5TWVzc2FnZXMkID0gbmV3IFN1YmplY3Q8TWVzc2FnZUV2ZW50PigpO1xyXG4gICAgcHJpdmF0ZSBkb21haW46IERvbWFpbjtcclxuXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxpc3RlbmVyID0gKGV2ZW50OiBNZXNzYWdlRXZlbnQpID0+IHtcclxuICAgICAgICBpZiAoIXRoaXMuZG9tYWluLmFsbG93ZWRPcmlnaW5zLmluY2x1ZGVzKGV2ZW50Lm9yaWdpbikpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuZG9tYWluLmpldG9uRG9tYWluID09IGV2ZW50Lm9yaWdpbikge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnRoaXJkUGFydHlNZXNzYWdlcyQubmV4dChldmVudCk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMubWVzc2FnZXMkLm5leHQoZXZlbnQuZGF0YSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgbmdab25lOiBOZ1pvbmUsIHByaXZhdGUgaHR0cDogVm9kZHNIdHRwU2VydmljZSkge1xyXG4gICAgICAgIHRoaXMuZG9tYWluID0gbmV3IERvbWFpbigpO1xyXG4gICAgICAgIHRoaXMuaHR0cC5nZXQoQXBpUm91dGUuR0VUX0RPTUFJTi51cmwpLnN1YnNjcmliZSh7XHJcbiAgICAgICAgICAgIG5leHQ6IChyZXNwOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChyZXNwLmRhdGEpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRvbWFpbiA9IHJlc3AuZGF0YTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgZXJyb3I6IGVyciA9PiB7fVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgdGhpcy5saXN0ZW5lcik7XHJcbiAgICB9XHJcblxyXG4gICAgbWVzc2FnZXMoKTogT2JzZXJ2YWJsZTxJZnJhbWVNZXNzYWdlPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMubWVzc2FnZXMkLmFzT2JzZXJ2YWJsZSgpO1xyXG4gICAgfVxyXG4gICAgdGhpcmRQYXJ0eU1lc3NhZ2VzKCk6IE9ic2VydmFibGU8TWVzc2FnZUV2ZW50PiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMudGhpcmRQYXJ0eU1lc3NhZ2VzJC5hc09ic2VydmFibGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIHRoaXMubGlzdGVuZXIpO1xyXG4gICAgICAgIHRoaXMubWVzc2FnZXMkLmNvbXBsZXRlKCk7XHJcbiAgICAgICAgdGhpcy50aGlyZFBhcnR5TWVzc2FnZXMkLmNvbXBsZXRlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgaXNWYWxpZERvbWFpbihwYXltZW50VHlwZTogUGF5bWVudFR5cGUsIG9yaWdpbjogc3RyaW5nKSB7XHJcbiAgICAgICAgaWYgKHBheW1lbnRUeXBlID09IG51bGwpIHJldHVybiBmYWxzZTtcclxuICAgICAgICBzd2l0Y2gocGF5bWVudFR5cGUpIHtcclxuICAgICAgICAgICAgY2FzZSBQYXltZW50VHlwZS5KRVRPTjpcclxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmRvbWFpbi5qZXRvbkRvbWFpbiA9PSBvcmlnaW47XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuICAgIHNlbmRNZXNzYWdlVG9JZnJhbWUoaWZyYW1lOiBFbGVtZW50UmVmPEhUTUxJRnJhbWVFbGVtZW50PiwgbWVzc2FnZTogSWZyYW1lTWVzc2FnZSkge1xyXG4gICAgICAgIGlmIChpZnJhbWUgPT0gdW5kZWZpbmVkKSByZXR1cm47XHJcbiAgICAgICAgaWZyYW1lLm5hdGl2ZUVsZW1lbnQuY29udGVudFdpbmRvdz8ucG9zdE1lc3NhZ2UoXHJcbiAgICAgICAgICAgIG1lc3NhZ2UsXHJcbiAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -1,57 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { HttpHeaders } from '@angular/common/http';
3
- import { Observable } from 'rxjs';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common/http";
6
- export class VoddsHttpService {
7
- constructor(httpClient) {
8
- this.httpClient = httpClient;
9
- }
10
- postJson(url, request) {
11
- const headers = new HttpHeaders({ 'Content-type': 'application/json' });
12
- return this.httpClient.post(url, request.toJson(), { headers });
13
- }
14
- get(url, param) {
15
- if (param) {
16
- url = url + '?' + param.toFormUrlEncoded();
17
- }
18
- return this.httpClient.get(url);
19
- }
20
- get2(url, option) {
21
- const observable = new Observable(observer => {
22
- this.httpClient.get(url, option).subscribe(res => {
23
- observer.next(res);
24
- }, err => {
25
- observer.next(err);
26
- });
27
- });
28
- return observable;
29
- }
30
- postFormUrlEncoded(url, request) {
31
- let options = {
32
- headers: new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded')
33
- };
34
- return this.httpClient.post(url, request.toFormUrlEncoded(), options);
35
- }
36
- getMainDomain(url) {
37
- let mainDomain = url;
38
- let domain = window.location.origin;
39
- if (domain.includes("promo.")) {
40
- domain = domain.replace("promo.", "");
41
- mainDomain = domain + url;
42
- }
43
- return mainDomain;
44
- }
45
- getFullUrl(url, param) {
46
- return `${url}?${param.toFormUrlEncoded()}`;
47
- }
48
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: VoddsHttpService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
49
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: VoddsHttpService, providedIn: 'root' }); }
50
- }
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: VoddsHttpService, decorators: [{
52
- type: Injectable,
53
- args: [{
54
- providedIn: 'root',
55
- }]
56
- }], ctorParameters: () => [{ type: i1.HttpClient }] });
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidm9kZHMtaHR0cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZXBwLWxpYi9zcmMvbGliL3ZvZGRzLWh0dHAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxXQUFXLEVBQWdCLE1BQU0sc0JBQXNCLENBQUM7QUFDN0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBTWxDLE1BQU0sT0FBTyxnQkFBZ0I7SUFFekIsWUFBbUIsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUFJLENBQUM7SUFFOUMsUUFBUSxDQUFDLEdBQVcsRUFBRSxPQUFlO1FBQ2pDLE1BQU0sT0FBTyxHQUFHLElBQUksV0FBVyxDQUFDLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLENBQUMsQ0FBQztRQUN4RSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxHQUFHLENBQUksR0FBVyxFQUFFLEtBQWM7UUFDOUIsSUFBRyxLQUFLLEVBQUUsQ0FBQztZQUNQLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQy9DLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFDRCxJQUFJLENBQUksR0FBVyxFQUFFLE1BQVk7UUFDN0IsTUFBTSxVQUFVLEdBQW9CLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzFELElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFNLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxTQUFTLENBQzNDLEdBQUcsQ0FBQyxFQUFFO2dCQUNGLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDdkIsQ0FBQyxFQUNELEdBQUcsQ0FBQyxFQUFFO2dCQUNGLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDdkIsQ0FBQyxDQUNKLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sVUFBVSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxHQUFXLEVBQUUsT0FBZTtRQUMzQyxJQUFJLE9BQU8sR0FBRztZQUNWLE9BQU8sRUFBRSxJQUFJLFdBQVcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsbUNBQW1DLENBQUM7U0FDdEYsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFRCxhQUFhLENBQUMsR0FBVztRQUNyQixJQUFJLFVBQVUsR0FBRyxHQUFHLENBQUM7UUFDckIsSUFBSSxNQUFNLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7UUFDcEMsSUFBRyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFDLENBQUM7WUFDMUIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3RDLFVBQVUsR0FBRyxNQUFNLEdBQUcsR0FBRyxDQUFDO1FBQzlCLENBQUM7UUFFRCxPQUFPLFVBQVUsQ0FBQztJQUN0QixDQUFDO0lBRUQsVUFBVSxDQUFDLEdBQVcsRUFBRSxLQUFhO1FBQ2pDLE9BQU8sR0FBRyxHQUFHLElBQUksS0FBSyxDQUFDLGdCQUFnQixFQUFFLEVBQUUsQ0FBQztJQUNoRCxDQUFDOytHQWpEUSxnQkFBZ0I7bUhBQWhCLGdCQUFnQixjQUZiLE1BQU07OzRGQUVULGdCQUFnQjtrQkFINUIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzLCBIdHRwUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgSVBhcmFtIH0gZnJvbSAnLi9tb2RlbC9pcGFyYW0nO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVm9kZHNIdHRwU2VydmljZSB7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHVibGljIGh0dHBDbGllbnQ6IEh0dHBDbGllbnQpIHsgfVxyXG5cclxuICAgIHBvc3RKc29uKHVybDogc3RyaW5nLCByZXF1ZXN0OiBJUGFyYW0pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoeyAnQ29udGVudC10eXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0pO1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdCh1cmwsIHJlcXVlc3QudG9Kc29uKCksIHsgaGVhZGVycyB9KTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQ8VD4odXJsOiBzdHJpbmcsIHBhcmFtPzogSVBhcmFtKTogT2JzZXJ2YWJsZTxUPiB7XHJcbiAgICAgICAgaWYocGFyYW0pIHtcclxuICAgICAgICAgICAgdXJsID0gdXJsICsgJz8nICsgcGFyYW0udG9Gb3JtVXJsRW5jb2RlZCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldDxUPih1cmwpO1xyXG4gICAgfVxyXG4gICAgZ2V0MjxUPih1cmw6IHN0cmluZywgb3B0aW9uPzogYW55KTogT2JzZXJ2YWJsZTxUPiB7XHJcbiAgICAgICAgY29uc3Qgb2JzZXJ2YWJsZTogT2JzZXJ2YWJsZTxhbnk+ID0gbmV3IE9ic2VydmFibGUob2JzZXJ2ZXIgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmh0dHBDbGllbnQuZ2V0PGFueT4odXJsLCBvcHRpb24pLnN1YnNjcmliZShcclxuICAgICAgICAgICAgICAgIHJlcyA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChyZXMpO1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIGVyciA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChlcnIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJldHVybiBvYnNlcnZhYmxlO1xyXG4gICAgfVxyXG5cclxuICAgIHBvc3RGb3JtVXJsRW5jb2RlZCh1cmw6IHN0cmluZywgcmVxdWVzdDogSVBhcmFtKSB7XHJcbiAgICAgICAgbGV0IG9wdGlvbnMgPSB7XHJcbiAgICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycygpLnNldCgnQ29udGVudC1UeXBlJywgJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcpXHJcbiAgICAgICAgfTtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QodXJsLCByZXF1ZXN0LnRvRm9ybVVybEVuY29kZWQoKSwgb3B0aW9ucyk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0TWFpbkRvbWFpbih1cmw6IHN0cmluZyl7XHJcbiAgICAgICAgbGV0IG1haW5Eb21haW4gPSB1cmw7XHJcbiAgICAgICAgbGV0IGRvbWFpbiA9IHdpbmRvdy5sb2NhdGlvbi5vcmlnaW47XHJcbiAgICAgICAgaWYoZG9tYWluLmluY2x1ZGVzKFwicHJvbW8uXCIpKXtcclxuICAgICAgICAgICAgZG9tYWluID0gZG9tYWluLnJlcGxhY2UoXCJwcm9tby5cIiwgXCJcIik7XHJcbiAgICAgICAgICAgIG1haW5Eb21haW4gPSBkb21haW4gKyB1cmw7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gbWFpbkRvbWFpbjtcclxuICAgIH1cclxuXHJcbiAgICBnZXRGdWxsVXJsKHVybDogc3RyaW5nLCBwYXJhbTogSVBhcmFtKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gYCR7dXJsfT8ke3BhcmFtLnRvRm9ybVVybEVuY29kZWQoKX1gO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==