heimdall-tide 0.13.15 → 0.13.16
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/dist/cjs/enclaves/RequestEnclave.d.ts +1 -0
- package/dist/cjs/enclaves/RequestEnclave.js +64 -46
- package/dist/cjs/enclaves/RequestEnclave.js.map +1 -1
- package/dist/cjs/heimdall.js +3 -1
- package/dist/cjs/heimdall.js.map +1 -1
- package/dist/esm/enclaves/RequestEnclave.d.ts +1 -0
- package/dist/esm/enclaves/RequestEnclave.js +64 -46
- package/dist/esm/enclaves/RequestEnclave.js.map +1 -1
- package/dist/esm/heimdall.js +3 -1
- package/dist/esm/heimdall.js.map +1 -1
- package/heimdall-tide-0.13.16.tgz +0 -0
- package/package.json +2 -2
- package/package.json.bak +1 -1
- package/src/enclaves/RequestEnclave.ts +61 -43
- package/src/heimdall.ts +3 -2
- package/heimdall-tide-0.13.15.tgz +0 -0
|
@@ -5,6 +5,7 @@ export declare class RequestEnclave extends Heimdall<RequestEnclave> {
|
|
|
5
5
|
protected doken: string;
|
|
6
6
|
protected dokenRefreshCallback: () => Promise<string> | undefined;
|
|
7
7
|
protected requireReloginCallback: () => Promise<string>;
|
|
8
|
+
private state;
|
|
8
9
|
_windowType: windowType;
|
|
9
10
|
protected initDone: Promise<any>;
|
|
10
11
|
init(data: HiddenInit): RequestEnclave;
|
|
@@ -4,10 +4,20 @@ exports.RequestEnclave = void 0;
|
|
|
4
4
|
const asgard_tide_1 = require("asgard-tide");
|
|
5
5
|
const heimdall_1 = require("../heimdall");
|
|
6
6
|
const asgard_tide_2 = require("asgard-tide");
|
|
7
|
+
var State;
|
|
8
|
+
(function (State) {
|
|
9
|
+
State[State["Closed"] = 0] = "Closed";
|
|
10
|
+
State[State["InitializingIFrame"] = 1] = "InitializingIFrame";
|
|
11
|
+
State[State["FailedIFrameInitialization"] = 2] = "FailedIFrameInitialization";
|
|
12
|
+
State[State["InitializingPopUp"] = 3] = "InitializingPopUp";
|
|
13
|
+
State[State["FailedPopUpInitialization"] = 4] = "FailedPopUpInitialization";
|
|
14
|
+
State[State["Ready"] = 5] = "Ready";
|
|
15
|
+
})(State || (State = {}));
|
|
7
16
|
class RequestEnclave extends heimdall_1.Heimdall {
|
|
8
17
|
constructor() {
|
|
9
18
|
super(...arguments);
|
|
10
19
|
this.name = "request";
|
|
20
|
+
this.state = State.Closed;
|
|
11
21
|
this._windowType = heimdall_1.windowType.Hidden;
|
|
12
22
|
this.initDone = this.recieve("init done");
|
|
13
23
|
}
|
|
@@ -20,34 +30,12 @@ class RequestEnclave extends heimdall_1.Heimdall {
|
|
|
20
30
|
this.enclaveOrigin = parsedDoken["t.uho"]; // use tidecloak set user home ork from doken
|
|
21
31
|
this.dokenRefreshCallback = data.dokenRefreshCallback;
|
|
22
32
|
this.requireReloginCallback = data.requireReloginCallback;
|
|
23
|
-
this.
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
doken: this.doken
|
|
30
|
-
}
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
this.close();
|
|
35
|
-
// If injecting iframe fails, try setting it as a popup and opening it
|
|
36
|
-
this._windowType = heimdall_1.windowType.Popup;
|
|
37
|
-
this.open().then((success) => {
|
|
38
|
-
if (success) {
|
|
39
|
-
this.send({
|
|
40
|
-
type: "init",
|
|
41
|
-
message: {
|
|
42
|
-
doken: this.doken
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
else
|
|
47
|
-
throw 'Error opening all types of Request Enclave';
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
});
|
|
33
|
+
if (this.state !== State.Closed)
|
|
34
|
+
return; // someone has already called init
|
|
35
|
+
if (this._windowType === heimdall_1.windowType.Hidden) {
|
|
36
|
+
this.recieve("hidden enclave").then((data) => this.handleHiddenEnclaveResponse(data));
|
|
37
|
+
this.checkEnclaveOpen(); // try iframe immediately
|
|
38
|
+
}
|
|
51
39
|
return this;
|
|
52
40
|
}
|
|
53
41
|
async handleHiddenEnclaveResponse(msg) {
|
|
@@ -95,26 +83,16 @@ class RequestEnclave extends heimdall_1.Heimdall {
|
|
|
95
83
|
// }
|
|
96
84
|
if (msg == "session key mismatch") {
|
|
97
85
|
this.close();
|
|
86
|
+
console.log(`[HEIMDALL] Session key mismatch between enclave and doken. Reinitiating login`);
|
|
98
87
|
this.requireReloginCallback(); // should initiate a full client page reload, killing this
|
|
88
|
+
this.state = State.Closed;
|
|
99
89
|
}
|
|
100
90
|
else if (msg == "storage issue") {
|
|
101
91
|
// Convert hidden enclave into popup
|
|
102
92
|
this.close();
|
|
103
|
-
|
|
104
|
-
this.
|
|
105
|
-
|
|
106
|
-
this.send({
|
|
107
|
-
type: "init",
|
|
108
|
-
message: {
|
|
109
|
-
doken: this.doken
|
|
110
|
-
}
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
else {
|
|
114
|
-
window.alert("There was an issue opening the fallback popup on this page. Please enable popups or let the administrator know about this problem. For more information, visit https://tide.org/browserwindow");
|
|
115
|
-
throw "Could not open popup";
|
|
116
|
-
}
|
|
117
|
-
});
|
|
93
|
+
console.log(`[HEIMDALL] Storage issue found on hidden iframe. Trying popup window next`);
|
|
94
|
+
this.state = State.FailedIFrameInitialization;
|
|
95
|
+
this.checkEnclaveOpen();
|
|
118
96
|
}
|
|
119
97
|
this.recieve("hidden enclave").then((data) => this.handleHiddenEnclaveResponse(data));
|
|
120
98
|
}
|
|
@@ -137,9 +115,38 @@ class RequestEnclave extends heimdall_1.Heimdall {
|
|
|
137
115
|
}
|
|
138
116
|
checkEnclaveOpen() {
|
|
139
117
|
if (this.enclaveClosed()) {
|
|
140
|
-
|
|
118
|
+
switch (this.state) {
|
|
119
|
+
case State.InitializingIFrame:
|
|
120
|
+
case State.InitializingPopUp:
|
|
121
|
+
return;
|
|
122
|
+
case State.Closed:
|
|
123
|
+
// if closed try iframe
|
|
124
|
+
if (this._windowType === heimdall_1.windowType.Hidden)
|
|
125
|
+
this.state = State.InitializingIFrame;
|
|
126
|
+
else if (this._windowType === heimdall_1.windowType.Popup)
|
|
127
|
+
this.state = State.InitializingPopUp;
|
|
128
|
+
break;
|
|
129
|
+
case State.FailedIFrameInitialization:
|
|
130
|
+
// if failed iframe try popup
|
|
131
|
+
this.state = State.InitializingPopUp;
|
|
132
|
+
this._windowType = heimdall_1.windowType.Popup;
|
|
133
|
+
break;
|
|
134
|
+
case State.FailedPopUpInitialization:
|
|
135
|
+
// if failed popup give up
|
|
136
|
+
console.warn("[HEIMDALL] Failed to initialize the popup enclave");
|
|
137
|
+
window.alert("There was an issue opening the fallback popup on this page. Please enable popups or let the administrator know about this problem. For more information, visit https://tide.org/browserwindow");
|
|
138
|
+
return;
|
|
139
|
+
case State.Ready:
|
|
140
|
+
// if ready (but no enclave) try popup again
|
|
141
|
+
console.error("[HEIMDALL] State says ready but no enclave open. Trying popup again");
|
|
142
|
+
this.state = State.InitializingPopUp;
|
|
143
|
+
this._windowType = heimdall_1.windowType.Popup;
|
|
144
|
+
break;
|
|
145
|
+
}
|
|
146
|
+
// Enclave is closed!
|
|
141
147
|
// We need to reopen the enclave and await the init again
|
|
142
148
|
this.initDone = this.recieve("init done");
|
|
149
|
+
console.log(`[HEIMDALL] Attempting to open ${heimdall_1.windowType[this._windowType]} window`);
|
|
143
150
|
this.open().then((success) => {
|
|
144
151
|
if (success) {
|
|
145
152
|
this.send({
|
|
@@ -148,9 +155,20 @@ class RequestEnclave extends heimdall_1.Heimdall {
|
|
|
148
155
|
doken: this.doken
|
|
149
156
|
}
|
|
150
157
|
});
|
|
158
|
+
console.log(`[HEIMDALL] Successfully opened ${heimdall_1.windowType[this._windowType]} window`);
|
|
159
|
+
this.state = State.Ready;
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
if (this.state === State.InitializingIFrame) {
|
|
163
|
+
this.state = State.FailedIFrameInitialization;
|
|
164
|
+
console.error('Error opening enclave of type: ' + heimdall_1.windowType[this._windowType] + '. Trying popup.');
|
|
165
|
+
this.checkEnclaveOpen();
|
|
166
|
+
}
|
|
167
|
+
else if (this.state === State.InitializingPopUp) {
|
|
168
|
+
this.state = State.FailedIFrameInitialization; // so next checkEnclaveOpen call tries popup again
|
|
169
|
+
console.error('Error opening enclave of type: ' + heimdall_1.windowType[this._windowType]);
|
|
170
|
+
}
|
|
151
171
|
}
|
|
152
|
-
else
|
|
153
|
-
throw 'Error opening enclave';
|
|
154
172
|
});
|
|
155
173
|
}
|
|
156
174
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestEnclave.js","sourceRoot":"","sources":["../../../src/enclaves/RequestEnclave.ts"],"names":[],"mappings":";;;AAAA,6CAA8C;AAC9C,0CAA+D;AAC/D,6CAAyC;AAEzC,MAAa,cAAe,SAAQ,mBAAwB;IAA5D;;QACI,SAAI,GAAW,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"RequestEnclave.js","sourceRoot":"","sources":["../../../src/enclaves/RequestEnclave.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/heimdall.js
CHANGED
|
@@ -25,6 +25,8 @@ class Heimdall {
|
|
|
25
25
|
this.isRunningLocal = init.isRunningLocal != null ? init.isRunningLocal : false;
|
|
26
26
|
}
|
|
27
27
|
enclaveClosed() {
|
|
28
|
+
if (!this.enclaveWindow)
|
|
29
|
+
return true;
|
|
28
30
|
return this.enclaveWindow.closed;
|
|
29
31
|
}
|
|
30
32
|
getOrkUrl() {
|
|
@@ -153,7 +155,7 @@ class Heimdall {
|
|
|
153
155
|
});
|
|
154
156
|
}
|
|
155
157
|
sendPostWindowMessage(message) {
|
|
156
|
-
this.enclaveWindow
|
|
158
|
+
this.enclaveWindow?.postMessage(message, this.enclaveOrigin);
|
|
157
159
|
}
|
|
158
160
|
processEvent(data, origin, expectedType) {
|
|
159
161
|
if (origin !== new URL(this.enclaveOrigin).origin) {
|
package/dist/cjs/heimdall.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heimdall.js","sourceRoot":"","sources":["../../src/heimdall.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"heimdall.js","sourceRoot":"","sources":["../../src/heimdall.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ export declare class RequestEnclave extends Heimdall<RequestEnclave> {
|
|
|
5
5
|
protected doken: string;
|
|
6
6
|
protected dokenRefreshCallback: () => Promise<string> | undefined;
|
|
7
7
|
protected requireReloginCallback: () => Promise<string>;
|
|
8
|
+
private state;
|
|
8
9
|
_windowType: windowType;
|
|
9
10
|
protected initDone: Promise<any>;
|
|
10
11
|
init(data: HiddenInit): RequestEnclave;
|
|
@@ -1,10 +1,20 @@
|
|
|
1
1
|
import { BaseTideRequest } from "asgard-tide";
|
|
2
2
|
import { Heimdall, windowType } from "../heimdall";
|
|
3
3
|
import { TideMemory } from "asgard-tide";
|
|
4
|
+
var State;
|
|
5
|
+
(function (State) {
|
|
6
|
+
State[State["Closed"] = 0] = "Closed";
|
|
7
|
+
State[State["InitializingIFrame"] = 1] = "InitializingIFrame";
|
|
8
|
+
State[State["FailedIFrameInitialization"] = 2] = "FailedIFrameInitialization";
|
|
9
|
+
State[State["InitializingPopUp"] = 3] = "InitializingPopUp";
|
|
10
|
+
State[State["FailedPopUpInitialization"] = 4] = "FailedPopUpInitialization";
|
|
11
|
+
State[State["Ready"] = 5] = "Ready";
|
|
12
|
+
})(State || (State = {}));
|
|
4
13
|
export class RequestEnclave extends Heimdall {
|
|
5
14
|
constructor() {
|
|
6
15
|
super(...arguments);
|
|
7
16
|
this.name = "request";
|
|
17
|
+
this.state = State.Closed;
|
|
8
18
|
this._windowType = windowType.Hidden;
|
|
9
19
|
this.initDone = this.recieve("init done");
|
|
10
20
|
}
|
|
@@ -17,34 +27,12 @@ export class RequestEnclave extends Heimdall {
|
|
|
17
27
|
this.enclaveOrigin = parsedDoken["t.uho"]; // use tidecloak set user home ork from doken
|
|
18
28
|
this.dokenRefreshCallback = data.dokenRefreshCallback;
|
|
19
29
|
this.requireReloginCallback = data.requireReloginCallback;
|
|
20
|
-
this.
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
doken: this.doken
|
|
27
|
-
}
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
else {
|
|
31
|
-
this.close();
|
|
32
|
-
// If injecting iframe fails, try setting it as a popup and opening it
|
|
33
|
-
this._windowType = windowType.Popup;
|
|
34
|
-
this.open().then((success) => {
|
|
35
|
-
if (success) {
|
|
36
|
-
this.send({
|
|
37
|
-
type: "init",
|
|
38
|
-
message: {
|
|
39
|
-
doken: this.doken
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
else
|
|
44
|
-
throw 'Error opening all types of Request Enclave';
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
});
|
|
30
|
+
if (this.state !== State.Closed)
|
|
31
|
+
return; // someone has already called init
|
|
32
|
+
if (this._windowType === windowType.Hidden) {
|
|
33
|
+
this.recieve("hidden enclave").then((data) => this.handleHiddenEnclaveResponse(data));
|
|
34
|
+
this.checkEnclaveOpen(); // try iframe immediately
|
|
35
|
+
}
|
|
48
36
|
return this;
|
|
49
37
|
}
|
|
50
38
|
async handleHiddenEnclaveResponse(msg) {
|
|
@@ -92,26 +80,16 @@ export class RequestEnclave extends Heimdall {
|
|
|
92
80
|
// }
|
|
93
81
|
if (msg == "session key mismatch") {
|
|
94
82
|
this.close();
|
|
83
|
+
console.log(`[HEIMDALL] Session key mismatch between enclave and doken. Reinitiating login`);
|
|
95
84
|
this.requireReloginCallback(); // should initiate a full client page reload, killing this
|
|
85
|
+
this.state = State.Closed;
|
|
96
86
|
}
|
|
97
87
|
else if (msg == "storage issue") {
|
|
98
88
|
// Convert hidden enclave into popup
|
|
99
89
|
this.close();
|
|
100
|
-
|
|
101
|
-
this.
|
|
102
|
-
|
|
103
|
-
this.send({
|
|
104
|
-
type: "init",
|
|
105
|
-
message: {
|
|
106
|
-
doken: this.doken
|
|
107
|
-
}
|
|
108
|
-
});
|
|
109
|
-
}
|
|
110
|
-
else {
|
|
111
|
-
window.alert("There was an issue opening the fallback popup on this page. Please enable popups or let the administrator know about this problem. For more information, visit https://tide.org/browserwindow");
|
|
112
|
-
throw "Could not open popup";
|
|
113
|
-
}
|
|
114
|
-
});
|
|
90
|
+
console.log(`[HEIMDALL] Storage issue found on hidden iframe. Trying popup window next`);
|
|
91
|
+
this.state = State.FailedIFrameInitialization;
|
|
92
|
+
this.checkEnclaveOpen();
|
|
115
93
|
}
|
|
116
94
|
this.recieve("hidden enclave").then((data) => this.handleHiddenEnclaveResponse(data));
|
|
117
95
|
}
|
|
@@ -134,9 +112,38 @@ export class RequestEnclave extends Heimdall {
|
|
|
134
112
|
}
|
|
135
113
|
checkEnclaveOpen() {
|
|
136
114
|
if (this.enclaveClosed()) {
|
|
137
|
-
|
|
115
|
+
switch (this.state) {
|
|
116
|
+
case State.InitializingIFrame:
|
|
117
|
+
case State.InitializingPopUp:
|
|
118
|
+
return;
|
|
119
|
+
case State.Closed:
|
|
120
|
+
// if closed try iframe
|
|
121
|
+
if (this._windowType === windowType.Hidden)
|
|
122
|
+
this.state = State.InitializingIFrame;
|
|
123
|
+
else if (this._windowType === windowType.Popup)
|
|
124
|
+
this.state = State.InitializingPopUp;
|
|
125
|
+
break;
|
|
126
|
+
case State.FailedIFrameInitialization:
|
|
127
|
+
// if failed iframe try popup
|
|
128
|
+
this.state = State.InitializingPopUp;
|
|
129
|
+
this._windowType = windowType.Popup;
|
|
130
|
+
break;
|
|
131
|
+
case State.FailedPopUpInitialization:
|
|
132
|
+
// if failed popup give up
|
|
133
|
+
console.warn("[HEIMDALL] Failed to initialize the popup enclave");
|
|
134
|
+
window.alert("There was an issue opening the fallback popup on this page. Please enable popups or let the administrator know about this problem. For more information, visit https://tide.org/browserwindow");
|
|
135
|
+
return;
|
|
136
|
+
case State.Ready:
|
|
137
|
+
// if ready (but no enclave) try popup again
|
|
138
|
+
console.error("[HEIMDALL] State says ready but no enclave open. Trying popup again");
|
|
139
|
+
this.state = State.InitializingPopUp;
|
|
140
|
+
this._windowType = windowType.Popup;
|
|
141
|
+
break;
|
|
142
|
+
}
|
|
143
|
+
// Enclave is closed!
|
|
138
144
|
// We need to reopen the enclave and await the init again
|
|
139
145
|
this.initDone = this.recieve("init done");
|
|
146
|
+
console.log(`[HEIMDALL] Attempting to open ${windowType[this._windowType]} window`);
|
|
140
147
|
this.open().then((success) => {
|
|
141
148
|
if (success) {
|
|
142
149
|
this.send({
|
|
@@ -145,9 +152,20 @@ export class RequestEnclave extends Heimdall {
|
|
|
145
152
|
doken: this.doken
|
|
146
153
|
}
|
|
147
154
|
});
|
|
155
|
+
console.log(`[HEIMDALL] Successfully opened ${windowType[this._windowType]} window`);
|
|
156
|
+
this.state = State.Ready;
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
if (this.state === State.InitializingIFrame) {
|
|
160
|
+
this.state = State.FailedIFrameInitialization;
|
|
161
|
+
console.error('Error opening enclave of type: ' + windowType[this._windowType] + '. Trying popup.');
|
|
162
|
+
this.checkEnclaveOpen();
|
|
163
|
+
}
|
|
164
|
+
else if (this.state === State.InitializingPopUp) {
|
|
165
|
+
this.state = State.FailedIFrameInitialization; // so next checkEnclaveOpen call tries popup again
|
|
166
|
+
console.error('Error opening enclave of type: ' + windowType[this._windowType]);
|
|
167
|
+
}
|
|
148
168
|
}
|
|
149
|
-
else
|
|
150
|
-
throw 'Error opening enclave';
|
|
151
169
|
});
|
|
152
170
|
}
|
|
153
171
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestEnclave.js","sourceRoot":"","sources":["../../../src/enclaves/RequestEnclave.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAc,UAAU,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,OAAO,cAAe,SAAQ,QAAwB;IAA5D;;QACI,SAAI,GAAW,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"RequestEnclave.js","sourceRoot":"","sources":["../../../src/enclaves/RequestEnclave.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAc,UAAU,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,IAAK,KAOJ;AAPD,WAAK,KAAK;IACN,qCAAM,CAAA;IACN,6DAAkB,CAAA;IAClB,6EAA0B,CAAA;IAC1B,2DAAiB,CAAA;IACjB,2EAAyB,CAAA;IACzB,mCAAK,CAAA;AACT,CAAC,EAPI,KAAK,KAAL,KAAK,QAOT;AAED,MAAM,OAAO,cAAe,SAAQ,QAAwB;IAA5D;;QACI,SAAI,GAAW,SAAS,CAAC;QAIjB,UAAK,GAAU,KAAK,CAAC,MAAM,CAAC;QAEpC,gBAAW,GAAe,UAAU,CAAC,MAAM,CAAC;QAElC,aAAQ,GAAiB,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAiRjE,CAAC;IA/QG,IAAI,CAAC,IAAgB;QACjB,IAAG,CAAC,IAAI,CAAC,KAAK;YAAE,MAAM,oBAAoB,CAAC;QAE3C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAG,WAAW,CAAC,OAAO,CAAC;YAAE,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,6CAA6C;QACjH,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACtD,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,sBAAsB,CAAC;QAE1D,IAAG,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,MAAM;YAAE,OAAO,CAAC,kCAAkC;QAE1E,IAAG,IAAI,CAAC,WAAW,KAAK,UAAU,CAAC,MAAM,EAAC,CAAC;YACvC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC,CAAC;YACtF,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,yBAAyB;QACtD,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,2BAA2B,CAAC,GAAQ;QACtC,uHAAuH;QACvH,wHAAwH;QACxH,wGAAwG;QACxG,uCAAuC;QACvC,8EAA8E;QAC9E,uGAAuG;QACvG,2JAA2J;QAC3J,0EAA0E;QAE1E,kCAAkC;QAClC,oBAAoB;QAEpB,0FAA0F;QAC1F,2FAA2F;QAC3F,2CAA2C;QAE3C,oBAAoB;QACpB,yBAAyB;QACzB,+BAA+B;QAC/B,kBAAkB;QAClB,wBAAwB;QACxB,oBAAoB;QACpB,gCAAgC;QAChC,YAAY;QACZ,UAAU;QACV,4BAA4B;QAC5B,2DAA2D;QAC3D,+BAA+B;QAC/B,qEAAqE;QAErE,8BAA8B;QAC9B,oBAAoB;QAEpB,qCAAqC;QACrC,4CAA4C;QAC5C,4BAA4B;QAC5B,+CAA+C;QAC/C,uBAAuB;QACvB,0BAA0B;QAC1B,gCAAgC;QAChC,6BAA6B;QAC7B,wCAAwC;QACxC,oBAAoB;QACpB,kBAAkB;QAClB,+CAA+C;QAC/C,UAAU;QAEV,IAAI;QACJ,IAAG,GAAG,IAAI,sBAAsB,EAAC,CAAC;YAC9B,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,+EAA+E,CAAC,CAAC;YAC7F,IAAI,CAAC,sBAAsB,EAAE,CAAC,CAAC,0DAA0D;YACzF,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;QAC9B,CAAC;aACI,IAAG,GAAG,IAAI,eAAe,EAAC,CAAC;YAC5B,oCAAoC;YACpC,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,2EAA2E,CAAC,CAAC;YACzF,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,0BAA0B,CAAC;YAC9C,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC5B,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1F,CAAC;IAED,SAAS;QACL,oBAAoB;QACpB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAExC,oBAAoB;QACpB,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAEzF,oBAAoB;QACpB,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEhD,oBAAoB;QACpB,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QAE3E,0CAA0C;QAC1C,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,kBAAkB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAEjF,kBAAkB;QAClB,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,EAAE,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAExE,yBAAyB;QACzB,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAExC,OAAO,GAAG,CAAC;IACf,CAAC;IACD,gBAAgB;QACZ,IAAG,IAAI,CAAC,aAAa,EAAE,EAAC,CAAC;YACrB,QAAO,IAAI,CAAC,KAAK,EAAC,CAAC;gBACf,KAAK,KAAK,CAAC,kBAAkB,CAAC;gBAC9B,KAAK,KAAK,CAAC,iBAAiB;oBACxB,OAAO;gBACX,KAAK,KAAK,CAAC,MAAM;oBACb,uBAAuB;oBACvB,IAAG,IAAI,CAAC,WAAW,KAAK,UAAU,CAAC,MAAM;wBAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,kBAAkB,CAAC;yBAC5E,IAAG,IAAI,CAAC,WAAW,KAAK,UAAU,CAAC,KAAK;wBAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,iBAAiB,CAAC;oBACpF,MAAM;gBACV,KAAK,KAAK,CAAC,0BAA0B;oBACjC,6BAA6B;oBAC7B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,iBAAiB,CAAC;oBACrC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC;oBACpC,MAAM;gBACV,KAAK,KAAK,CAAC,yBAAyB;oBAChC,0BAA0B;oBAC1B,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAA;oBACjE,MAAM,CAAC,KAAK,CAAC,+LAA+L,CAAC,CAAC;oBAC9M,OAAO;gBACX,KAAK,KAAK,CAAC,KAAK;oBACZ,4CAA4C;oBAC5C,OAAO,CAAC,KAAK,CAAC,qEAAqE,CAAC,CAAC;oBACrF,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,iBAAiB,CAAC;oBACrC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC;oBACpC,MAAM;YACd,CAAC;YACD,qBAAqB;YACrB,yDAAyD;YACzD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,iCAAiC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YACpF,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,OAAgB,EAAE,EAAE;gBAClC,IAAG,OAAO,EAAC,CAAC;oBACR,IAAI,CAAC,IAAI,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAC;4BACJ,KAAK,EAAE,IAAI,CAAC,KAAK;yBACpB;qBACJ,CAAC,CAAC;oBACH,OAAO,CAAC,GAAG,CAAC,kCAAkC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;oBACrF,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;gBAC7B,CAAC;qBAAK,CAAC;oBACH,IAAG,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,kBAAkB,EAAC,CAAC;wBACxC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,0BAA0B,CAAC;wBAC9C,OAAO,CAAC,KAAK,CAAC,iCAAiC,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,iBAAiB,CAAC,CAAC;wBACpG,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBAC5B,CAAC;yBAAK,IAAG,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,iBAAiB,EAAC,CAAC;wBAC7C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,0BAA0B,CAAC,CAAC,kDAAkD;wBACjG,OAAO,CAAC,KAAK,CAAC,iCAAiC,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;oBACpF,CAAC;gBACL,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,OAAmB;QACvC,oDAAoD;QACpD,MAAM,mBAAmB,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5D,MAAM,0BAA0B,GAAG,MAAM,mBAAmB,CAAC,qBAAqB,EAAE,CAAC;QACrF,MAAM,WAAW,GAAG,IAAI,eAAe,CACnC,2BAA2B,EAC3B,GAAG,EACH,SAAS,EACT,UAAU,CAAC,eAAe,CAAC;YACvB,0BAA0B,CAAC,YAAY;YACvC,0BAA0B,CAAC,UAAU;YACrC,0BAA0B,CAAC,OAAO;YAClC,0BAA0B,CAAC,SAAS;SACvC,CAAC,EACF,IAAI,UAAU,EAAE,CACnB,CAAC;QAEF,MAAM,WAAW,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAElE,8FAA8F;QAC9F,OAAO,mBAAmB,CAAC,oBAAoB,CAAC,0BAA0B,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,MAAM,EAAE,CAAC;IACnH,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAgB,EAAE,aAAsB,KAAK;QACvD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,MAAM,IAAI,CAAC,QAAQ,CAAC;QACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QACxD,IAAI,CAAC,IAAI,CAAC;YACN,IAAI,EAAE,SAAS;YACf,OAAO,EAAC;gBACJ,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,IAAI;gBACb,UAAU;aACb;SACJ,CAAC,CAAA;QACF,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC;QAC5B,IAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YAAE,MAAM,sDAAsD,GAAG,IAAI,CAAC;QAC7F,IAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,YAAY,UAAU,CAAC;YAAE,MAAM,qDAAqD,CAAC;QACjH,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,KAAK,CAAC,OAAO,CAAC,IAAoB;QAC9B,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,MAAM,IAAI,CAAC,QAAQ,CAAC;QACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;QAC3D,IAAI,CAAC,IAAI,CAAC;YACN,IAAI,EAAE,SAAS;YACf,OAAO,EAAC;gBACJ,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;aAChB;SACJ,CAAC,CAAA;QACF,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC;QAC5B,IAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YAAE,MAAM,sDAAsD,GAAG,IAAI,CAAC;QAC7F,IAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,YAAY,UAAU,CAAC;YAAE,MAAM,qDAAqD,CAAC;QACjH,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,KAAK,CAAC,OAAO,CAAC,IAAoB;QAC9B,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,MAAM,IAAI,CAAC,QAAQ,CAAC;QACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;QAC3D,IAAI,CAAC,IAAI,CAAC;YACN,IAAI,EAAE,SAAS;YACf,OAAO,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;aAChB;SACJ,CAAC,CAAA;QACF,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC;QAC5B,IAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YAAE,MAAM,sDAAsD,GAAG,IAAI,CAAC;QAC7F,IAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,YAAY,UAAU,CAAC;YAAE,MAAM,qDAAqD,CAAC;QACjH,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAa;QAC3B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,CAAC;YACN,IAAI,EAAE,eAAe;YACrB,OAAO,EAAC;gBACJ,KAAK,EAAE,IAAI,CAAC,KAAK;aACpB;SACJ,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAS;QACnB,IAAG,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAC,CAAC;YACjC,QAAO,IAAI,CAAC,OAAO,EAAC,CAAC;gBACjB,KAAK,SAAS;oBACV,IAAG,CAAC,IAAI,CAAC,oBAAoB,EAAC,CAAC;wBAC3B,OAAO,CAAC,KAAK,CAAC,2FAA2F,CAAC,CAAC;wBAC3G,OAAO;oBACX,CAAC;oBACD,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;oBAC3C,IAAI,CAAC,KAAK,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBAC/C,IAAI,CAAC,IAAI,CAAC;wBACN,IAAI,EAAE,eAAe;wBACrB,OAAO,EAAC;4BACJ,KAAK,EAAE,IAAI,CAAC,KAAK;yBACpB;qBACJ,CAAC,CAAC;oBACH,MAAM;gBACV;oBACI,IAAI,CAAC,KAAK,EAAE,CAAC;oBACb,MAAM,IAAI,KAAK,CAAC,qCAAqC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;YAC9E,CAAC;QACL,CAAC;IACL,CAAC;CACJ;AAED,SAAS,WAAW,CAAC,KAAa;IAC9B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAE3C,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,OAAO,CAAC;IAEZ,IAAI,CAAC;QACD,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,yEAAyE,GAAG,KAAK,CAAC,CAAC;IACvG,CAAC;IAED,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,oEAAoE,GAAG,KAAK,CAAC,CAAC;IAClG,CAAC;AACL,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IAClC,IAAI,MAAM,GAAG,KAAK;SACb,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;SAClB,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAExB,QAAQ,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,KAAK,CAAC;YACF,MAAM;QACV,KAAK,CAAC;YACF,MAAM,IAAI,IAAI,CAAC;YACf,MAAM;QACV,KAAK,CAAC;YACF,MAAM,IAAI,GAAG,CAAC;YACd,MAAM;QACV;YACI,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,CAAC;QACD,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa;IACnC,OAAO,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC3D,IAAI,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QAEtD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClB,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC;QACtB,CAAC;QAED,OAAO,GAAG,GAAG,IAAI,CAAC;IACtB,CAAC,CAAC,CAAC,CAAC;AACR,CAAC"}
|
package/dist/esm/heimdall.js
CHANGED
|
@@ -22,6 +22,8 @@ export class Heimdall {
|
|
|
22
22
|
this.isRunningLocal = init.isRunningLocal != null ? init.isRunningLocal : false;
|
|
23
23
|
}
|
|
24
24
|
enclaveClosed() {
|
|
25
|
+
if (!this.enclaveWindow)
|
|
26
|
+
return true;
|
|
25
27
|
return this.enclaveWindow.closed;
|
|
26
28
|
}
|
|
27
29
|
getOrkUrl() {
|
|
@@ -150,7 +152,7 @@ export class Heimdall {
|
|
|
150
152
|
});
|
|
151
153
|
}
|
|
152
154
|
sendPostWindowMessage(message) {
|
|
153
|
-
this.enclaveWindow
|
|
155
|
+
this.enclaveWindow?.postMessage(message, this.enclaveOrigin);
|
|
154
156
|
}
|
|
155
157
|
processEvent(data, origin, expectedType) {
|
|
156
158
|
if (origin !== new URL(this.enclaveOrigin).origin) {
|
package/dist/esm/heimdall.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heimdall.js","sourceRoot":"","sources":["../../src/heimdall.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"heimdall.js","sourceRoot":"","sources":["../../src/heimdall.ts"],"names":[],"mappings":"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"}
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "heimdall-tide",
|
|
3
|
-
"version": "0.13.
|
|
3
|
+
"version": "0.13.16",
|
|
4
4
|
"description": "SDK for communicating with a Tide Enclave",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
},
|
|
40
40
|
"homepage": "https://github.com/tide-foundation/heimdall#readme",
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"asgard-tide": "^0.13.
|
|
42
|
+
"asgard-tide": "^0.13.16"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
45
|
"typescript": "^5.8.3"
|
package/package.json.bak
CHANGED
|
@@ -2,11 +2,21 @@ import { BaseTideRequest } from "asgard-tide";
|
|
|
2
2
|
import { Heimdall, HiddenInit, windowType } from "../heimdall";
|
|
3
3
|
import { TideMemory } from "asgard-tide";
|
|
4
4
|
|
|
5
|
+
enum State{
|
|
6
|
+
Closed,
|
|
7
|
+
InitializingIFrame,
|
|
8
|
+
FailedIFrameInitialization,
|
|
9
|
+
InitializingPopUp,
|
|
10
|
+
FailedPopUpInitialization,
|
|
11
|
+
Ready
|
|
12
|
+
}
|
|
13
|
+
|
|
5
14
|
export class RequestEnclave extends Heimdall<RequestEnclave>{
|
|
6
15
|
name: string = "request";
|
|
7
16
|
protected doken: string;
|
|
8
17
|
protected dokenRefreshCallback: () => Promise<string> | undefined;
|
|
9
18
|
protected requireReloginCallback: () => Promise<string>;
|
|
19
|
+
private state: State = State.Closed;
|
|
10
20
|
|
|
11
21
|
_windowType: windowType = windowType.Hidden;
|
|
12
22
|
|
|
@@ -21,33 +31,12 @@ export class RequestEnclave extends Heimdall<RequestEnclave>{
|
|
|
21
31
|
this.dokenRefreshCallback = data.dokenRefreshCallback;
|
|
22
32
|
this.requireReloginCallback = data.requireReloginCallback;
|
|
23
33
|
|
|
24
|
-
this.
|
|
25
|
-
|
|
26
|
-
this.
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
message: {
|
|
31
|
-
doken: this.doken
|
|
32
|
-
}
|
|
33
|
-
});
|
|
34
|
-
}else{
|
|
35
|
-
this.close();
|
|
36
|
-
// If injecting iframe fails, try setting it as a popup and opening it
|
|
37
|
-
this._windowType = windowType.Popup;
|
|
38
|
-
this.open().then((success: boolean) => {
|
|
39
|
-
if(success){
|
|
40
|
-
this.send({
|
|
41
|
-
type: "init",
|
|
42
|
-
message: {
|
|
43
|
-
doken: this.doken
|
|
44
|
-
}
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
else throw 'Error opening all types of Request Enclave';
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
});
|
|
34
|
+
if(this.state !== State.Closed) return; // someone has already called init
|
|
35
|
+
|
|
36
|
+
if(this._windowType === windowType.Hidden){
|
|
37
|
+
this.recieve("hidden enclave").then((data) => this.handleHiddenEnclaveResponse(data));
|
|
38
|
+
this.checkEnclaveOpen(); // try iframe immediately
|
|
39
|
+
}
|
|
51
40
|
|
|
52
41
|
return this;
|
|
53
42
|
}
|
|
@@ -103,25 +92,16 @@ export class RequestEnclave extends Heimdall<RequestEnclave>{
|
|
|
103
92
|
// }
|
|
104
93
|
if(msg == "session key mismatch"){
|
|
105
94
|
this.close();
|
|
95
|
+
console.log(`[HEIMDALL] Session key mismatch between enclave and doken. Reinitiating login`);
|
|
106
96
|
this.requireReloginCallback(); // should initiate a full client page reload, killing this
|
|
97
|
+
this.state = State.Closed;
|
|
107
98
|
}
|
|
108
99
|
else if(msg == "storage issue"){
|
|
109
100
|
// Convert hidden enclave into popup
|
|
110
101
|
this.close();
|
|
111
|
-
|
|
112
|
-
this.
|
|
113
|
-
|
|
114
|
-
this.send({
|
|
115
|
-
type: "init",
|
|
116
|
-
message: {
|
|
117
|
-
doken: this.doken
|
|
118
|
-
}
|
|
119
|
-
});
|
|
120
|
-
}else{
|
|
121
|
-
window.alert("There was an issue opening the fallback popup on this page. Please enable popups or let the administrator know about this problem. For more information, visit https://tide.org/browserwindow");
|
|
122
|
-
throw "Could not open popup";
|
|
123
|
-
}
|
|
124
|
-
});
|
|
102
|
+
console.log(`[HEIMDALL] Storage issue found on hidden iframe. Trying popup window next`);
|
|
103
|
+
this.state = State.FailedIFrameInitialization;
|
|
104
|
+
this.checkEnclaveOpen();
|
|
125
105
|
}
|
|
126
106
|
|
|
127
107
|
this.recieve("hidden enclave").then((data) => this.handleHiddenEnclaveResponse(data));
|
|
@@ -153,9 +133,36 @@ export class RequestEnclave extends Heimdall<RequestEnclave>{
|
|
|
153
133
|
}
|
|
154
134
|
checkEnclaveOpen(){
|
|
155
135
|
if(this.enclaveClosed()){
|
|
156
|
-
|
|
136
|
+
switch(this.state){
|
|
137
|
+
case State.InitializingIFrame:
|
|
138
|
+
case State.InitializingPopUp:
|
|
139
|
+
return;
|
|
140
|
+
case State.Closed:
|
|
141
|
+
// if closed try iframe
|
|
142
|
+
if(this._windowType === windowType.Hidden) this.state = State.InitializingIFrame;
|
|
143
|
+
else if(this._windowType === windowType.Popup) this.state = State.InitializingPopUp;
|
|
144
|
+
break;
|
|
145
|
+
case State.FailedIFrameInitialization:
|
|
146
|
+
// if failed iframe try popup
|
|
147
|
+
this.state = State.InitializingPopUp;
|
|
148
|
+
this._windowType = windowType.Popup;
|
|
149
|
+
break;
|
|
150
|
+
case State.FailedPopUpInitialization:
|
|
151
|
+
// if failed popup give up
|
|
152
|
+
console.warn("[HEIMDALL] Failed to initialize the popup enclave")
|
|
153
|
+
window.alert("There was an issue opening the fallback popup on this page. Please enable popups or let the administrator know about this problem. For more information, visit https://tide.org/browserwindow");
|
|
154
|
+
return;
|
|
155
|
+
case State.Ready:
|
|
156
|
+
// if ready (but no enclave) try popup again
|
|
157
|
+
console.error("[HEIMDALL] State says ready but no enclave open. Trying popup again");
|
|
158
|
+
this.state = State.InitializingPopUp;
|
|
159
|
+
this._windowType = windowType.Popup;
|
|
160
|
+
break;
|
|
161
|
+
}
|
|
162
|
+
// Enclave is closed!
|
|
157
163
|
// We need to reopen the enclave and await the init again
|
|
158
164
|
this.initDone = this.recieve("init done");
|
|
165
|
+
console.log(`[HEIMDALL] Attempting to open ${windowType[this._windowType]} window`);
|
|
159
166
|
this.open().then((success: boolean) => {
|
|
160
167
|
if(success){
|
|
161
168
|
this.send({
|
|
@@ -164,7 +171,18 @@ export class RequestEnclave extends Heimdall<RequestEnclave>{
|
|
|
164
171
|
doken: this.doken
|
|
165
172
|
}
|
|
166
173
|
});
|
|
167
|
-
|
|
174
|
+
console.log(`[HEIMDALL] Successfully opened ${windowType[this._windowType]} window`);
|
|
175
|
+
this.state = State.Ready;
|
|
176
|
+
}else {
|
|
177
|
+
if(this.state === State.InitializingIFrame){
|
|
178
|
+
this.state = State.FailedIFrameInitialization;
|
|
179
|
+
console.error('Error opening enclave of type: ' + windowType[this._windowType] + '. Trying popup.');
|
|
180
|
+
this.checkEnclaveOpen();
|
|
181
|
+
}else if(this.state === State.InitializingPopUp){
|
|
182
|
+
this.state = State.FailedIFrameInitialization; // so next checkEnclaveOpen call tries popup again
|
|
183
|
+
console.error('Error opening enclave of type: ' + windowType[this._windowType]);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
168
186
|
});
|
|
169
187
|
}
|
|
170
188
|
}
|
package/src/heimdall.ts
CHANGED
|
@@ -32,7 +32,7 @@ export abstract class Heimdall<T> implements EnclaveFlow<T> {
|
|
|
32
32
|
vendorId: string;
|
|
33
33
|
isRunningLocal: boolean;
|
|
34
34
|
|
|
35
|
-
private enclaveWindow: WindowProxy;
|
|
35
|
+
private enclaveWindow: WindowProxy | undefined;
|
|
36
36
|
|
|
37
37
|
constructor(init: HeimdallConstructor){
|
|
38
38
|
this.enclaveOrigin = init.homeOrkOrigin;
|
|
@@ -44,6 +44,7 @@ export abstract class Heimdall<T> implements EnclaveFlow<T> {
|
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
enclaveClosed(){
|
|
47
|
+
if(!this.enclaveWindow) return true;
|
|
47
48
|
return this.enclaveWindow.closed;
|
|
48
49
|
}
|
|
49
50
|
|
|
@@ -185,7 +186,7 @@ export abstract class Heimdall<T> implements EnclaveFlow<T> {
|
|
|
185
186
|
}
|
|
186
187
|
|
|
187
188
|
private sendPostWindowMessage(message: any) {
|
|
188
|
-
this.enclaveWindow
|
|
189
|
+
this.enclaveWindow?.postMessage(message, this.enclaveOrigin);
|
|
189
190
|
}
|
|
190
191
|
|
|
191
192
|
private processEvent(data: any, origin: string, expectedType: string){
|
|
Binary file
|