@deuna/react-native-sdk 2.0.4 → 2.0.5
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.
- package/lib/module/helpers/ExternalUrlHelper.js +4 -1
- package/lib/module/helpers/ExternalUrlHelper.js.map +1 -1
- package/lib/typescript/deuna-sdk-react-native/src/helpers/ExternalUrlHelper.d.ts +1 -0
- package/lib/typescript/deuna-sdk-react-native/src/helpers/ExternalUrlHelper.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/helpers/ExternalUrlHelper.ts +5 -1
|
@@ -14,6 +14,7 @@ export class ExternalUrlHelper {
|
|
|
14
14
|
completer = null;
|
|
15
15
|
lastInAppBrowserSignature = null;
|
|
16
16
|
lastInAppBrowserClosedAt = 0;
|
|
17
|
+
isBrowserActive = false;
|
|
17
18
|
constructor(inAppBrowserAdapter) {
|
|
18
19
|
this.inAppBrowserAdapter = inAppBrowserAdapter;
|
|
19
20
|
this.startCloseChecker();
|
|
@@ -40,7 +41,7 @@ export class ExternalUrlHelper {
|
|
|
40
41
|
*/
|
|
41
42
|
startCloseChecker() {
|
|
42
43
|
AppState.addEventListener('change', state => {
|
|
43
|
-
if (state === 'active' && this.manager?.type === ExternalUrlBrowser.IN_APP_BROWSER) {
|
|
44
|
+
if (state === 'active' && this.manager?.type === ExternalUrlBrowser.IN_APP_BROWSER && !this.isBrowserActive) {
|
|
44
45
|
this.manager = null;
|
|
45
46
|
this.lastInAppBrowserClosedAt = Date.now();
|
|
46
47
|
this.completeClose();
|
|
@@ -100,7 +101,9 @@ export class ExternalUrlHelper {
|
|
|
100
101
|
this.manager = {
|
|
101
102
|
type: ExternalUrlBrowser.IN_APP_BROWSER
|
|
102
103
|
};
|
|
104
|
+
this.isBrowserActive = true;
|
|
103
105
|
await this.inAppBrowserAdapter.openUrl(url);
|
|
106
|
+
this.isBrowserActive = false;
|
|
104
107
|
if (Platform.OS === 'ios') {
|
|
105
108
|
this.lastInAppBrowserClosedAt = Date.now();
|
|
106
109
|
this.manager = null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AppState","Platform","ExternalUrlController","Completer","ExternalUrlBrowser","ExternalUrlHelper","IN_APP_BROWSER_REOPEN_GUARD_MS","manager","completer","lastInAppBrowserSignature","lastInAppBrowserClosedAt","constructor","inAppBrowserAdapter","startCloseChecker","externalUrlWebViewController","type","WEB_VIEW","controller","waitForClose","wait","addEventListener","state","IN_APP_BROWSER","Date","now","completeClose","getUrlSignature","url","parsed","URL","host","pathname","canOpenInAppBrowserUrl","options","bypassReopenGuard","signature","wasSameUrlOpenedRecently","resetInAppBrowserReopenGuard","openUrl","params","browser","delegate","mapper","OS","complete","closeWebView","dispose"],"sourceRoot":"../../../src","sources":["helpers/ExternalUrlHelper.ts"],"mappings":";;AAAA,SAASA,QAAQ,EAAEC,QAAQ,QAAQ,cAAc;AAEjD,SAASC,qBAAqB,QAAQ,yCAAsC;AAC5E,SAASC,SAAS,QAAQ,gBAAa;AAGvC,WAAYC,kBAAkB,0BAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAA,OAAlBA,kBAAkB;AAAA;AAyB9B,OAAO,MAAMC,iBAAiB,CAAC;EAC7B,OAAwBC,8BAA8B,GAAG,IAAI;EAErDC,OAAO,GAAkD,IAAI;EAC7DC,SAAS,GAA2B,IAAI;EACxCC,yBAAyB,GAAkB,IAAI;EAC/CC,wBAAwB,GAAG,CAAC;
|
|
1
|
+
{"version":3,"names":["AppState","Platform","ExternalUrlController","Completer","ExternalUrlBrowser","ExternalUrlHelper","IN_APP_BROWSER_REOPEN_GUARD_MS","manager","completer","lastInAppBrowserSignature","lastInAppBrowserClosedAt","isBrowserActive","constructor","inAppBrowserAdapter","startCloseChecker","externalUrlWebViewController","type","WEB_VIEW","controller","waitForClose","wait","addEventListener","state","IN_APP_BROWSER","Date","now","completeClose","getUrlSignature","url","parsed","URL","host","pathname","canOpenInAppBrowserUrl","options","bypassReopenGuard","signature","wasSameUrlOpenedRecently","resetInAppBrowserReopenGuard","openUrl","params","browser","delegate","mapper","OS","complete","closeWebView","dispose"],"sourceRoot":"../../../src","sources":["helpers/ExternalUrlHelper.ts"],"mappings":";;AAAA,SAASA,QAAQ,EAAEC,QAAQ,QAAQ,cAAc;AAEjD,SAASC,qBAAqB,QAAQ,yCAAsC;AAC5E,SAASC,SAAS,QAAQ,gBAAa;AAGvC,WAAYC,kBAAkB,0BAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAA,OAAlBA,kBAAkB;AAAA;AAyB9B,OAAO,MAAMC,iBAAiB,CAAC;EAC7B,OAAwBC,8BAA8B,GAAG,IAAI;EAErDC,OAAO,GAAkD,IAAI;EAC7DC,SAAS,GAA2B,IAAI;EACxCC,yBAAyB,GAAkB,IAAI;EAC/CC,wBAAwB,GAAG,CAAC;EAC5BC,eAAe,GAAG,KAAK;EAE/BC,WAAWA,CAAUC,mBAAwC,EAAE;IAAA,KAA1CA,mBAAwC,GAAxCA,mBAAwC;IAC3D,IAAI,CAACC,iBAAiB,CAAC,CAAC;EAC1B;EAEA,IAAIC,4BAA4BA,CAAA,EAAG;IACjC,IAAI,IAAI,CAACR,OAAO,EAAES,IAAI,KAAKZ,kBAAkB,CAACa,QAAQ,EAAE;MACtD,OAAQ,IAAI,CAACV,OAAO,CAAoBW,UAAU;IACpD;IACA,OAAO,IAAI;EACb;;EAEA;AACF;AACA;EACE,MAAMC,YAAYA,CAAA,EAAG;IACnB,IAAI,IAAI,CAACX,SAAS,EAAE;MAClB,MAAM,IAAI,CAACA,SAAS,CAACY,IAAI;MACzB,IAAI,CAACZ,SAAS,GAAG,IAAI;IACvB;EACF;;EAEA;AACF;AACA;EACUM,iBAAiBA,CAAA,EAAG;IAC1Bd,QAAQ,CAACqB,gBAAgB,CAAC,QAAQ,EAAGC,KAAK,IAAK;MAC7C,IACEA,KAAK,KAAK,QAAQ,IAClB,IAAI,CAACf,OAAO,EAAES,IAAI,KAAKZ,kBAAkB,CAACmB,cAAc,IACxD,CAAC,IAAI,CAACZ,eAAe,EACrB;QACA,IAAI,CAACJ,OAAO,GAAG,IAAI;QACnB,IAAI,CAACG,wBAAwB,GAAGc,IAAI,CAACC,GAAG,CAAC,CAAC;QAC1C,IAAI,CAACC,aAAa,CAAC,CAAC;MACtB;IACF,CAAC,CAAC;EACJ;EAEQC,eAAeA,CAACC,GAAW,EAAU;IAC3C,IAAI;MACF,MAAMC,MAAM,GAAG,IAAIC,GAAG,CAACF,GAAG,CAAC;MAC3B,OAAO,GAAGC,MAAM,CAACE,IAAI,GAAGF,MAAM,CAACG,QAAQ,EAAE;IAC3C,CAAC,CAAC,MAAM;MACN,OAAOJ,GAAG;IACZ;EACF;EAEAK,sBAAsBA,CACpBL,GAAW,EACXM,OAAyC,EAChC;IACT,IAAI,IAAI,CAAC3B,OAAO,EAAES,IAAI,KAAKZ,kBAAkB,CAACmB,cAAc,EAAE;MAC5D,OAAO,KAAK;IACd;IAEA,IAAIW,OAAO,EAAEC,iBAAiB,EAAE;MAC9B,OAAO,IAAI;IACb;IAEA,MAAMC,SAAS,GAAG,IAAI,CAACT,eAAe,CAACC,GAAG,CAAC;IAC3C,MAAMS,wBAAwB,GAC5B,IAAI,CAAC5B,yBAAyB,KAAK2B,SAAS,IAC5CZ,IAAI,CAACC,GAAG,CAAC,CAAC,GAAG,IAAI,CAACf,wBAAwB,GACxCL,iBAAiB,CAACC,8BAA8B;IAEpD,OAAO,CAAC+B,wBAAwB;EAClC;EAEAC,4BAA4BA,CAAA,EAAS;IACnC,IAAI,IAAI,CAAC/B,OAAO,EAAES,IAAI,KAAKZ,kBAAkB,CAACmB,cAAc,EAAE;MAC5D,IAAI,CAAChB,OAAO,GAAG,IAAI;MACnB,IAAI,CAACmB,aAAa,CAAC,CAAC;IACtB;IACA,IAAI,CAAClB,SAAS,GAAG,IAAI;IACrB,IAAI,CAACC,yBAAyB,GAAG,IAAI;IACrC,IAAI,CAACC,wBAAwB,GAAG,CAAC;EACnC;;EAEA;AACF;AACA;EACE,MAAM6B,OAAOA,CAACC,MAAqB,EAAE;IACnC,MAAM;MAAEZ,GAAG;MAAEa,OAAO;MAAEC;IAAS,CAAC,GAAGF,MAAM;IAEzC,MAAMG,MAAM,GAAG;MACb,CAACvC,kBAAkB,CAACa,QAAQ,GAAG,YAAY;QACzC,MAAMC,UAAU,GAAG,IAAIhB,qBAAqB,CAAC0B,GAAG,CAAC;QACjDV,UAAU,CAACwB,QAAQ,GAAGA,QAAQ;QAC9B,IAAI,CAACnC,OAAO,GAAG;UACbS,IAAI,EAAEZ,kBAAkB,CAACa,QAAQ;UACjCC;QACF,CAAmB;MACrB,CAAC;MACD,CAACd,kBAAkB,CAACmB,cAAc,GAAG,YAAY;QAC/C,IAAI,CAACd,yBAAyB,GAAG,IAAI,CAACkB,eAAe,CAACC,GAAG,CAAC;QAC1D,IAAI,CAACpB,SAAS,GAAG,IAAIL,SAAS,CAAO,CAAC;QACtC,IAAI,CAACI,OAAO,GAAG;UACbS,IAAI,EAAEZ,kBAAkB,CAACmB;QAC3B,CAAC;QAED,IAAI,CAACZ,eAAe,GAAG,IAAI;QAC3B,MAAM,IAAI,CAACE,mBAAmB,CAAC0B,OAAO,CAACX,GAAG,CAAC;QAC3C,IAAI,CAACjB,eAAe,GAAG,KAAK;QAC5B,IAAIV,QAAQ,CAAC2C,EAAE,KAAK,KAAK,EAAE;UACzB,IAAI,CAAClC,wBAAwB,GAAGc,IAAI,CAACC,GAAG,CAAC,CAAC;UAC1C,IAAI,CAAClB,OAAO,GAAG,IAAI;UACnB,IAAI,CAACmB,aAAa,CAAC,CAAC;QACtB;MACF;IACF,CAAC;IACD,MAAMiB,MAAM,CAACF,OAAO,CAAC,CAAC,CAAC;EACzB;;EAEA;AACF;AACA;EACUf,aAAaA,CAAA,EAAG;IACtB,IAAI,CAAClB,SAAS,EAAEqC,QAAQ,CAAC,CAAC;EAC5B;;EAEA;AACF;AACA;EACE,MAAMC,YAAYA,CAAA,EAAG;IACnB,IAAI,IAAI,CAACvC,OAAO,EAAES,IAAI,KAAKZ,kBAAkB,CAACa,QAAQ,EAAE;MACrD,IAAI,CAACV,OAAO,CAAoBW,UAAU,EAAE6B,OAAO,CAAC,CAAC;MACtD,IAAI,CAACxC,OAAO,GAAG,IAAI;IACrB;EACF;AACF","ignoreList":[]}
|
|
@@ -26,6 +26,7 @@ export declare class ExternalUrlHelper {
|
|
|
26
26
|
private completer;
|
|
27
27
|
private lastInAppBrowserSignature;
|
|
28
28
|
private lastInAppBrowserClosedAt;
|
|
29
|
+
private isBrowserActive;
|
|
29
30
|
constructor(inAppBrowserAdapter: InAppBrowserAdapter);
|
|
30
31
|
get externalUrlWebViewController(): ExternalUrlController | null;
|
|
31
32
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExternalUrlHelper.d.ts","sourceRoot":"","sources":["../../../../../src/helpers/ExternalUrlHelper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAE7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAEtE,oBAAY,kBAAkB;IAC5B,QAAQ,aAAa;IACrB,cAAc,mBAAmB;CAClC;AAED,UAAU,aAAa;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,kBAAkB,CAAC;IAC5B,QAAQ,EAAE,eAAe,CAAC;CAC3B;AAED,UAAU,kBAAkB,CAAC,CAAC,SAAS,kBAAkB;IACvD,IAAI,EAAE,CAAC,CAAC;CACT;AAED,MAAM,WAAW,cACf,SAAQ,kBAAkB,CAAC,kBAAkB,CAAC,QAAQ,CAAC;IACvD,UAAU,EAAE,qBAAqB,CAAC;CACnC;AAED,MAAM,WAAW,mBACf,SAAQ,kBAAkB,CAAC,kBAAkB,CAAC,cAAc,CAAC;IAC7D,IAAI,EAAE,kBAAkB,CAAC,cAAc,CAAC;CACzC;AAED,qBAAa,iBAAiB;
|
|
1
|
+
{"version":3,"file":"ExternalUrlHelper.d.ts","sourceRoot":"","sources":["../../../../../src/helpers/ExternalUrlHelper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAE7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAEtE,oBAAY,kBAAkB;IAC5B,QAAQ,aAAa;IACrB,cAAc,mBAAmB;CAClC;AAED,UAAU,aAAa;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,kBAAkB,CAAC;IAC5B,QAAQ,EAAE,eAAe,CAAC;CAC3B;AAED,UAAU,kBAAkB,CAAC,CAAC,SAAS,kBAAkB;IACvD,IAAI,EAAE,CAAC,CAAC;CACT;AAED,MAAM,WAAW,cACf,SAAQ,kBAAkB,CAAC,kBAAkB,CAAC,QAAQ,CAAC;IACvD,UAAU,EAAE,qBAAqB,CAAC;CACnC;AAED,MAAM,WAAW,mBACf,SAAQ,kBAAkB,CAAC,kBAAkB,CAAC,cAAc,CAAC;IAC7D,IAAI,EAAE,kBAAkB,CAAC,cAAc,CAAC;CACzC;AAED,qBAAa,iBAAiB;IAShB,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB;IAR7D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,8BAA8B,CAAQ;IAE9D,OAAO,CAAC,OAAO,CAAuD;IACtE,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,yBAAyB,CAAuB;IACxD,OAAO,CAAC,wBAAwB,CAAK;IACrC,OAAO,CAAC,eAAe,CAAS;gBAEX,mBAAmB,EAAE,mBAAmB;IAI7D,IAAI,4BAA4B,iCAK/B;IAED;;OAEG;IACG,YAAY;IAOlB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,eAAe;IASvB,sBAAsB,CACpB,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE;QAAE,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAAE,GACxC,OAAO;IAkBV,4BAA4B,IAAI,IAAI;IAUpC;;OAEG;IACG,OAAO,CAAC,MAAM,EAAE,aAAa;IAgCnC;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACG,YAAY;CAMnB"}
|
package/package.json
CHANGED
|
@@ -36,6 +36,7 @@ export class ExternalUrlHelper {
|
|
|
36
36
|
private completer: Completer<void> | null = null;
|
|
37
37
|
private lastInAppBrowserSignature: string | null = null;
|
|
38
38
|
private lastInAppBrowserClosedAt = 0;
|
|
39
|
+
private isBrowserActive = false;
|
|
39
40
|
|
|
40
41
|
constructor(readonly inAppBrowserAdapter: InAppBrowserAdapter) {
|
|
41
42
|
this.startCloseChecker();
|
|
@@ -65,7 +66,8 @@ export class ExternalUrlHelper {
|
|
|
65
66
|
AppState.addEventListener('change', (state) => {
|
|
66
67
|
if (
|
|
67
68
|
state === 'active' &&
|
|
68
|
-
this.manager?.type === ExternalUrlBrowser.IN_APP_BROWSER
|
|
69
|
+
this.manager?.type === ExternalUrlBrowser.IN_APP_BROWSER &&
|
|
70
|
+
!this.isBrowserActive
|
|
69
71
|
) {
|
|
70
72
|
this.manager = null;
|
|
71
73
|
this.lastInAppBrowserClosedAt = Date.now();
|
|
@@ -136,7 +138,9 @@ export class ExternalUrlHelper {
|
|
|
136
138
|
type: ExternalUrlBrowser.IN_APP_BROWSER,
|
|
137
139
|
};
|
|
138
140
|
|
|
141
|
+
this.isBrowserActive = true;
|
|
139
142
|
await this.inAppBrowserAdapter.openUrl(url);
|
|
143
|
+
this.isBrowserActive = false;
|
|
140
144
|
if (Platform.OS === 'ios') {
|
|
141
145
|
this.lastInAppBrowserClosedAt = Date.now();
|
|
142
146
|
this.manager = null;
|