@elliemae/ssf-host 2.0.0-next.29
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/app.config.json +20 -0
- package/dist/cjs/guest.js +196 -0
- package/dist/cjs/host.js +930 -0
- package/dist/cjs/ihost.js +16 -0
- package/dist/cjs/index.html +183 -0
- package/dist/cjs/index.js +33 -0
- package/dist/cjs/package.json +4 -0
- package/dist/cjs/tests/guest.html +14 -0
- package/dist/cjs/tests/logger.js +31 -0
- package/dist/cjs/tests/scriptingObjects/appEvents.js +16 -0
- package/dist/cjs/tests/scriptingObjects/appObjects.js +16 -0
- package/dist/cjs/tests/scriptingObjects/appraisalServiceModule.js +127 -0
- package/dist/cjs/tests/scriptingObjects/constant.js +38 -0
- package/dist/cjs/tests/scriptingObjects/floodServiceModule.js +49 -0
- package/dist/cjs/tests/server.js +29 -0
- package/dist/cjs/tests/serverHandlers.js +50 -0
- package/dist/cjs/tests/utils.js +76 -0
- package/dist/cjs/types.js +46 -0
- package/dist/cjs/utils.js +57 -0
- package/dist/esm/app.config.json +20 -0
- package/dist/esm/guest.js +177 -0
- package/dist/esm/host.js +919 -0
- package/dist/esm/ihost.js +0 -0
- package/dist/esm/index.html +183 -0
- package/dist/esm/index.js +13 -0
- package/dist/esm/package.json +4 -0
- package/dist/esm/tests/guest.html +14 -0
- package/dist/esm/tests/logger.js +15 -0
- package/dist/esm/tests/scriptingObjects/appEvents.js +0 -0
- package/dist/esm/tests/scriptingObjects/appObjects.js +0 -0
- package/dist/esm/tests/scriptingObjects/appraisalServiceModule.js +112 -0
- package/dist/esm/tests/scriptingObjects/constant.js +18 -0
- package/dist/esm/tests/scriptingObjects/floodServiceModule.js +29 -0
- package/dist/esm/tests/server.js +9 -0
- package/dist/esm/tests/serverHandlers.js +20 -0
- package/dist/esm/tests/utils.js +56 -0
- package/dist/esm/types.js +26 -0
- package/dist/esm/utils.js +37 -0
- package/dist/public/app.config.json +20 -0
- package/dist/public/autoFill.js +3 -0
- package/dist/public/autoFill.js.br +0 -0
- package/dist/public/autoFill.js.gz +0 -0
- package/dist/public/autoFill.js.map +1 -0
- package/dist/public/index.html +1 -0
- package/dist/public/init.js +3 -0
- package/dist/public/init.js.br +0 -0
- package/dist/public/init.js.gz +0 -0
- package/dist/public/init.js.map +1 -0
- package/dist/public/js/emuiSsfHost.c8f735724b6fe44f4dd6.js +3 -0
- package/dist/public/js/emuiSsfHost.c8f735724b6fe44f4dd6.js.br +0 -0
- package/dist/public/js/emuiSsfHost.c8f735724b6fe44f4dd6.js.gz +0 -0
- package/dist/public/js/emuiSsfHost.c8f735724b6fe44f4dd6.js.map +1 -0
- package/dist/public/loan-object.js +3 -0
- package/dist/public/loan-object.js.br +1 -0
- package/dist/public/loan-object.js.gz +0 -0
- package/dist/public/loan-object.js.map +1 -0
- package/dist/public/utils.js +3 -0
- package/dist/public/utils.js.br +0 -0
- package/dist/public/utils.js.gz +0 -0
- package/dist/public/utils.js.map +1 -0
- package/dist/types/guest.d.ts +140 -0
- package/dist/types/host.d.ts +107 -0
- package/dist/types/ihost.d.ts +138 -0
- package/dist/types/index.d.ts +8 -0
- package/dist/types/tests/event.test.d.ts +1 -0
- package/dist/types/tests/guest.test.d.ts +1 -0
- package/dist/types/tests/guestAsHost.test.d.ts +1 -0
- package/dist/types/tests/host.test.d.ts +1 -0
- package/dist/types/tests/logger.d.ts +3 -0
- package/dist/types/tests/scriptingObject.test.d.ts +1 -0
- package/dist/types/tests/scriptingObjects/appEvents.d.ts +3 -0
- package/dist/types/tests/scriptingObjects/appObjects.d.ts +7 -0
- package/dist/types/tests/scriptingObjects/appraisalServiceModule.d.ts +46 -0
- package/dist/types/tests/scriptingObjects/constant.d.ts +8 -0
- package/dist/types/tests/scriptingObjects/floodServiceModule.d.ts +17 -0
- package/dist/types/tests/server.d.ts +1 -0
- package/dist/types/tests/serverHandlers.d.ts +1 -0
- package/dist/types/tests/utils.d.ts +28 -0
- package/dist/types/types.d.ts +145 -0
- package/dist/types/utils.d.ts +8 -0
- package/dist/umd/app.config.json +20 -0
- package/dist/umd/autoFill.js +3 -0
- package/dist/umd/autoFill.js.br +0 -0
- package/dist/umd/autoFill.js.gz +0 -0
- package/dist/umd/autoFill.js.map +1 -0
- package/dist/umd/index.html +1 -0
- package/dist/umd/index.js +3 -0
- package/dist/umd/index.js.br +0 -0
- package/dist/umd/index.js.gz +0 -0
- package/dist/umd/index.js.map +1 -0
- package/dist/umd/init.js +3 -0
- package/dist/umd/init.js.br +0 -0
- package/dist/umd/init.js.gz +0 -0
- package/dist/umd/init.js.map +1 -0
- package/dist/umd/loan-object.js +3 -0
- package/dist/umd/loan-object.js.br +1 -0
- package/dist/umd/loan-object.js.gz +0 -0
- package/dist/umd/loan-object.js.map +1 -0
- package/dist/umd/utils.js +3 -0
- package/dist/umd/utils.js.br +0 -0
- package/dist/umd/utils.js.gz +0 -0
- package/dist/umd/utils.js.map +1 -0
- package/package.json +69 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"appId": "ssf-host",
|
|
3
|
+
"activeEnv": "localhost",
|
|
4
|
+
"options": {
|
|
5
|
+
"guestUrl": "http://localhost:4001"
|
|
6
|
+
},
|
|
7
|
+
"env": {
|
|
8
|
+
"localhost": {
|
|
9
|
+
"options": {
|
|
10
|
+
"guestUrl": "http://localhost:4001"
|
|
11
|
+
}
|
|
12
|
+
},
|
|
13
|
+
"dev2": {},
|
|
14
|
+
"qa2": {},
|
|
15
|
+
"qa3": {},
|
|
16
|
+
"int": {},
|
|
17
|
+
"stage": {},
|
|
18
|
+
"prod": {}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
+
var __publicField = (obj, key, value) => {
|
|
21
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
22
|
+
return value;
|
|
23
|
+
};
|
|
24
|
+
var __accessCheck = (obj, member, msg) => {
|
|
25
|
+
if (!member.has(obj))
|
|
26
|
+
throw TypeError("Cannot " + msg);
|
|
27
|
+
};
|
|
28
|
+
var __privateGet = (obj, member, getter) => {
|
|
29
|
+
__accessCheck(obj, member, "read from private field");
|
|
30
|
+
return getter ? getter.call(obj) : member.get(obj);
|
|
31
|
+
};
|
|
32
|
+
var __privateAdd = (obj, member, value) => {
|
|
33
|
+
if (member.has(obj))
|
|
34
|
+
throw TypeError("Cannot add the same private member more than once");
|
|
35
|
+
member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
36
|
+
};
|
|
37
|
+
var __privateSet = (obj, member, value, setter) => {
|
|
38
|
+
__accessCheck(obj, member, "write to private field");
|
|
39
|
+
setter ? setter.call(obj, value) : member.set(obj, value);
|
|
40
|
+
return value;
|
|
41
|
+
};
|
|
42
|
+
var guest_exports = {};
|
|
43
|
+
__export(guest_exports, {
|
|
44
|
+
Guest: () => Guest
|
|
45
|
+
});
|
|
46
|
+
module.exports = __toCommonJS(guest_exports);
|
|
47
|
+
var import_ssf_common = require("@elliemae/ssf-common");
|
|
48
|
+
var import_types = require("./types.js");
|
|
49
|
+
var import_utils = require("./utils.js");
|
|
50
|
+
var _remoting;
|
|
51
|
+
class Guest {
|
|
52
|
+
/**
|
|
53
|
+
* Create object representing guest application
|
|
54
|
+
*
|
|
55
|
+
* @param {GuestOption} option - options for creating a guest application
|
|
56
|
+
*/
|
|
57
|
+
constructor(option) {
|
|
58
|
+
/**
|
|
59
|
+
* unique id of the guest application
|
|
60
|
+
*/
|
|
61
|
+
__publicField(this, "id");
|
|
62
|
+
/**
|
|
63
|
+
* page title of the guest application
|
|
64
|
+
*/
|
|
65
|
+
__publicField(this, "title");
|
|
66
|
+
/**
|
|
67
|
+
* url of the guest application
|
|
68
|
+
*/
|
|
69
|
+
__publicField(this, "url");
|
|
70
|
+
/**
|
|
71
|
+
* properties of the guest application
|
|
72
|
+
*/
|
|
73
|
+
__publicField(this, "params");
|
|
74
|
+
/**
|
|
75
|
+
* iframe element of the guest application
|
|
76
|
+
*/
|
|
77
|
+
__publicField(this, "domElement");
|
|
78
|
+
/**
|
|
79
|
+
* window object of the guest application
|
|
80
|
+
*/
|
|
81
|
+
__publicField(this, "window");
|
|
82
|
+
/**
|
|
83
|
+
* open mode of the guest application
|
|
84
|
+
*/
|
|
85
|
+
__publicField(this, "openMode");
|
|
86
|
+
/**
|
|
87
|
+
* origin of the guest application
|
|
88
|
+
*/
|
|
89
|
+
__publicField(this, "origin");
|
|
90
|
+
/**
|
|
91
|
+
* flag indicating if the guest application is initialized
|
|
92
|
+
*/
|
|
93
|
+
__publicField(this, "initialized", false);
|
|
94
|
+
/**
|
|
95
|
+
* flag indicating if the guest application is ready
|
|
96
|
+
*/
|
|
97
|
+
__publicField(this, "ready", false);
|
|
98
|
+
/**
|
|
99
|
+
* capabilities of the guest application
|
|
100
|
+
*/
|
|
101
|
+
__publicField(this, "capabilities");
|
|
102
|
+
/**
|
|
103
|
+
* remoting object
|
|
104
|
+
*/
|
|
105
|
+
__privateAdd(this, _remoting, void 0);
|
|
106
|
+
/**
|
|
107
|
+
* clean up resources
|
|
108
|
+
*/
|
|
109
|
+
__publicField(this, "dispose", () => {
|
|
110
|
+
__privateGet(this, _remoting).removeSender({ origin: this.origin, window: this.window });
|
|
111
|
+
if (this.openMode === import_types.OpenMode.Popup) {
|
|
112
|
+
this.window.close();
|
|
113
|
+
} else {
|
|
114
|
+
this.domElement?.remove?.();
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
/**
|
|
118
|
+
* Get information about the guest application
|
|
119
|
+
*
|
|
120
|
+
* @returns guest properties
|
|
121
|
+
*/
|
|
122
|
+
__publicField(this, "getInfo", () => ({
|
|
123
|
+
guestId: this.id,
|
|
124
|
+
guestTitle: this.title,
|
|
125
|
+
guestUrl: this.url
|
|
126
|
+
}));
|
|
127
|
+
/**
|
|
128
|
+
* initialize guest messaging
|
|
129
|
+
*/
|
|
130
|
+
__publicField(this, "init", () => {
|
|
131
|
+
__privateGet(this, _remoting).addSender({ origin: this.origin, window: this.window });
|
|
132
|
+
if (this.openMode === import_types.OpenMode.Popup) {
|
|
133
|
+
const handShakeInterval = setInterval(() => {
|
|
134
|
+
__privateGet(this, _remoting).send({
|
|
135
|
+
targetWin: this.window,
|
|
136
|
+
targetOrigin: this.origin,
|
|
137
|
+
messageType: import_ssf_common.MessageType.HandShake,
|
|
138
|
+
messageBody: {}
|
|
139
|
+
});
|
|
140
|
+
}, 1e3);
|
|
141
|
+
__privateGet(this, _remoting).listen({
|
|
142
|
+
messageType: import_ssf_common.MessageType.HandShakeAck,
|
|
143
|
+
callback: () => {
|
|
144
|
+
clearInterval(handShakeInterval);
|
|
145
|
+
}
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
});
|
|
149
|
+
/**
|
|
150
|
+
* invokes event callback on the guest application
|
|
151
|
+
*
|
|
152
|
+
* @param {EventObject} event - event object
|
|
153
|
+
* @param {number} timeout - timeout in milliseconds
|
|
154
|
+
*/
|
|
155
|
+
__publicField(this, "dispatchEvent", (event, timeout) => __privateGet(this, _remoting).invoke({
|
|
156
|
+
targetWin: this.window,
|
|
157
|
+
targetOrigin: this.origin,
|
|
158
|
+
messageType: import_ssf_common.MessageType.ObjectEvent,
|
|
159
|
+
messageBody: event,
|
|
160
|
+
responseTimeoutMs: timeout
|
|
161
|
+
}));
|
|
162
|
+
/**
|
|
163
|
+
* Send a message without any form of response. fire and forget
|
|
164
|
+
*
|
|
165
|
+
* @param {MessageParam} param - message to be sent
|
|
166
|
+
*/
|
|
167
|
+
__publicField(this, "send", (param) => {
|
|
168
|
+
__privateGet(this, _remoting).send({
|
|
169
|
+
targetWin: this.window,
|
|
170
|
+
targetOrigin: this.origin,
|
|
171
|
+
...param
|
|
172
|
+
});
|
|
173
|
+
});
|
|
174
|
+
const {
|
|
175
|
+
guestId,
|
|
176
|
+
domElement = null,
|
|
177
|
+
title,
|
|
178
|
+
url,
|
|
179
|
+
window,
|
|
180
|
+
params = {},
|
|
181
|
+
openMode = import_types.OpenMode.Embed,
|
|
182
|
+
remoting
|
|
183
|
+
} = option;
|
|
184
|
+
this.id = guestId;
|
|
185
|
+
this.title = title;
|
|
186
|
+
this.url = url;
|
|
187
|
+
this.origin = (0, import_utils.getOrigin)(url);
|
|
188
|
+
this.params = params;
|
|
189
|
+
this.domElement = domElement;
|
|
190
|
+
this.window = window;
|
|
191
|
+
this.openMode = openMode;
|
|
192
|
+
this.capabilities = {};
|
|
193
|
+
__privateSet(this, _remoting, remoting);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
_remoting = new WeakMap();
|