@elliemae/pui-app-sdk 5.21.0-beta.4 → 5.21.0

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.
Files changed (145) hide show
  1. package/dist/cjs/analytics/index.js +1 -2
  2. package/dist/cjs/index.js +0 -2
  3. package/dist/cjs/utils/decorators/functionDecorators.js +35 -2
  4. package/dist/cjs/utils/decorators/index.js +2 -1
  5. package/dist/cjs/utils/micro-frontend/guest.js +14 -100
  6. package/dist/cjs/{view/tests/scriptingObjects/constant.js → utils/micro-frontend/host-app.js} +10 -5
  7. package/dist/cjs/utils/micro-frontend/host.js +3 -36
  8. package/dist/cjs/utils/micro-frontend/scripting-objects/analytics.js +12 -2
  9. package/dist/cjs/{view/tests/utils.js → utils/micro-frontend/ssfguest-adapter.js} +29 -34
  10. package/dist/cjs/utils/testing/index.js +1 -15
  11. package/dist/cjs/view/micro-iframe-app/iframe/index.js +1 -1
  12. package/dist/cjs/view/micro-iframe-app/iframe.html +1 -5
  13. package/dist/cjs/view/micro-iframe-app/use-frame-loaded.js +1 -3
  14. package/dist/esm/analytics/index.js +1 -2
  15. package/dist/esm/index.js +0 -2
  16. package/dist/esm/utils/decorators/functionDecorators.js +35 -2
  17. package/dist/esm/utils/decorators/index.js +4 -2
  18. package/dist/esm/utils/micro-frontend/guest.js +14 -100
  19. package/dist/esm/utils/micro-frontend/host-app.js +9 -0
  20. package/dist/esm/utils/micro-frontend/host.js +3 -36
  21. package/dist/esm/utils/micro-frontend/scripting-objects/analytics.js +2 -2
  22. package/dist/esm/utils/micro-frontend/ssfguest-adapter.js +28 -0
  23. package/dist/esm/utils/testing/index.js +1 -5
  24. package/dist/esm/view/micro-iframe-app/iframe/index.js +1 -1
  25. package/dist/esm/view/micro-iframe-app/iframe.html +1 -5
  26. package/dist/esm/view/micro-iframe-app/use-frame-loaded.js +1 -3
  27. package/dist/types/lib/index.d.ts +0 -1
  28. package/dist/types/lib/utils/decorators/functionDecorators.d.ts +28 -0
  29. package/dist/types/lib/utils/decorators/index.d.ts +2 -1
  30. package/dist/types/lib/utils/micro-frontend/guest.d.ts +11 -46
  31. package/dist/types/lib/utils/micro-frontend/host-app.d.ts +11 -0
  32. package/dist/types/lib/utils/micro-frontend/host.d.ts +10 -27
  33. package/dist/types/lib/utils/micro-frontend/scripting-objects/analytics.d.ts +2 -2
  34. package/dist/types/lib/utils/micro-frontend/ssfguest-adapter.d.ts +7 -0
  35. package/dist/types/lib/utils/micro-frontend/types.d.ts +1 -2
  36. package/dist/types/lib/utils/testing/index.d.ts +1 -57
  37. package/dist/types/lib/utils/window.d.ts +6 -13
  38. package/dist/types/tsconfig.tsbuildinfo +1 -1
  39. package/package.json +48 -43
  40. package/dist/cjs/utils/micro-frontend/app-bridge.js +0 -40
  41. package/dist/cjs/utils/micro-frontend/tests/app.config.json +0 -200
  42. package/dist/cjs/utils/micro-frontend/tests/utils.js +0 -116
  43. package/dist/cjs/view/microapp-v2.js +0 -91
  44. package/dist/cjs/view/tests/__snapshots__/micro-iframe-app.test.tsx.snap +0 -208
  45. package/dist/cjs/view/tests/__snapshots__/microapp-v2.test.tsx.snap +0 -21
  46. package/dist/cjs/view/tests/app.config.json +0 -200
  47. package/dist/cjs/view/tests/constants.js +0 -44
  48. package/dist/cjs/view/tests/flights/23.1/app.checksum1.css +0 -3
  49. package/dist/cjs/view/tests/flights/23.1/app.checksum1.js +0 -52
  50. package/dist/cjs/view/tests/flights/23.1/manifest.json +0 -4
  51. package/dist/cjs/view/tests/flights/latest/app.checksum.css +0 -3
  52. package/dist/cjs/view/tests/flights/latest/app.checksum.js +0 -52
  53. package/dist/cjs/view/tests/flights/latest/manifest.json +0 -4
  54. package/dist/cjs/view/tests/hotels/23.1/app.checksum.css +0 -3
  55. package/dist/cjs/view/tests/hotels/23.1/app.checksum.js +0 -52
  56. package/dist/cjs/view/tests/hotels/23.1/manifest.json +0 -4
  57. package/dist/cjs/view/tests/hotels/latest/app.checksum.css +0 -3
  58. package/dist/cjs/view/tests/hotels/latest/app.checksum.js +0 -52
  59. package/dist/cjs/view/tests/hotels/latest/manifest.json +0 -4
  60. package/dist/cjs/view/tests/loan/latest/index.js +0 -116
  61. package/dist/cjs/view/tests/loan/latest/manifest.json +0 -3
  62. package/dist/cjs/view/tests/scriptingObjects/appraisalServiceModule.js +0 -85
  63. package/dist/cjs/view/tests/scriptingObjects/global.js +0 -40
  64. package/dist/cjs/view/tests/scriptingObjects/loan.js +0 -207
  65. package/dist/cjs/view/tests/server.js +0 -29
  66. package/dist/cjs/view/tests/serverHandlers.js +0 -210
  67. package/dist/cjs/view/tests/task/latest/index.dev.js +0 -67
  68. package/dist/cjs/view/tests/task/latest/index.js +0 -67
  69. package/dist/cjs/view/tests/task/latest/manifest.json +0 -4
  70. package/dist/cjs/view/tests/travelhub/23.1/app.checksum.css +0 -3
  71. package/dist/cjs/view/tests/travelhub/23.1/app.checksum.js +0 -25
  72. package/dist/cjs/view/tests/travelhub/23.1/landing.checksum1.css +0 -3
  73. package/dist/cjs/view/tests/travelhub/23.1/landing.checksum1.js +0 -6
  74. package/dist/cjs/view/tests/travelhub/23.1/manifest.json +0 -6
  75. package/dist/cjs/view/tests/travelhub/latest/app.checksum.css +0 -3
  76. package/dist/cjs/view/tests/travelhub/latest/app.checksum.js +0 -30
  77. package/dist/cjs/view/tests/travelhub/latest/landing.checksum.css +0 -3
  78. package/dist/cjs/view/tests/travelhub/latest/landing.checksum.js +0 -8
  79. package/dist/cjs/view/tests/travelhub/latest/manifest.json +0 -6
  80. package/dist/esm/utils/micro-frontend/app-bridge.js +0 -20
  81. package/dist/esm/utils/micro-frontend/tests/app.config.json +0 -200
  82. package/dist/esm/utils/micro-frontend/tests/utils.js +0 -96
  83. package/dist/esm/view/microapp-v2.js +0 -71
  84. package/dist/esm/view/tests/__snapshots__/micro-iframe-app.test.tsx.snap +0 -208
  85. package/dist/esm/view/tests/__snapshots__/microapp-v2.test.tsx.snap +0 -21
  86. package/dist/esm/view/tests/app.config.json +0 -200
  87. package/dist/esm/view/tests/constants.js +0 -24
  88. package/dist/esm/view/tests/flights/23.1/app.checksum1.css +0 -3
  89. package/dist/esm/view/tests/flights/23.1/app.checksum1.js +0 -51
  90. package/dist/esm/view/tests/flights/23.1/manifest.json +0 -4
  91. package/dist/esm/view/tests/flights/latest/app.checksum.css +0 -3
  92. package/dist/esm/view/tests/flights/latest/app.checksum.js +0 -51
  93. package/dist/esm/view/tests/flights/latest/manifest.json +0 -4
  94. package/dist/esm/view/tests/hotels/23.1/app.checksum.css +0 -3
  95. package/dist/esm/view/tests/hotels/23.1/app.checksum.js +0 -51
  96. package/dist/esm/view/tests/hotels/23.1/manifest.json +0 -4
  97. package/dist/esm/view/tests/hotels/latest/app.checksum.css +0 -3
  98. package/dist/esm/view/tests/hotels/latest/app.checksum.js +0 -51
  99. package/dist/esm/view/tests/hotels/latest/manifest.json +0 -4
  100. package/dist/esm/view/tests/loan/latest/index.js +0 -115
  101. package/dist/esm/view/tests/loan/latest/manifest.json +0 -3
  102. package/dist/esm/view/tests/scriptingObjects/appraisalServiceModule.js +0 -67
  103. package/dist/esm/view/tests/scriptingObjects/constant.js +0 -4
  104. package/dist/esm/view/tests/scriptingObjects/global.js +0 -20
  105. package/dist/esm/view/tests/scriptingObjects/loan.js +0 -187
  106. package/dist/esm/view/tests/server.js +0 -9
  107. package/dist/esm/view/tests/serverHandlers.js +0 -180
  108. package/dist/esm/view/tests/task/latest/index.dev.js +0 -66
  109. package/dist/esm/view/tests/task/latest/index.js +0 -66
  110. package/dist/esm/view/tests/task/latest/manifest.json +0 -4
  111. package/dist/esm/view/tests/travelhub/23.1/app.checksum.css +0 -3
  112. package/dist/esm/view/tests/travelhub/23.1/app.checksum.js +0 -24
  113. package/dist/esm/view/tests/travelhub/23.1/landing.checksum1.css +0 -3
  114. package/dist/esm/view/tests/travelhub/23.1/landing.checksum1.js +0 -5
  115. package/dist/esm/view/tests/travelhub/23.1/manifest.json +0 -6
  116. package/dist/esm/view/tests/travelhub/latest/app.checksum.css +0 -3
  117. package/dist/esm/view/tests/travelhub/latest/app.checksum.js +0 -29
  118. package/dist/esm/view/tests/travelhub/latest/landing.checksum.css +0 -3
  119. package/dist/esm/view/tests/travelhub/latest/landing.checksum.js +0 -7
  120. package/dist/esm/view/tests/travelhub/latest/manifest.json +0 -6
  121. package/dist/esm/view/tests/utils.js +0 -33
  122. package/dist/types/lib/utils/micro-frontend/app-bridge.d.ts +0 -4
  123. package/dist/types/lib/utils/micro-frontend/tests/utils.d.ts +0 -39
  124. package/dist/types/lib/view/microapp-v2.d.ts +0 -16
  125. package/dist/types/lib/view/tests/constants.d.ts +0 -11
  126. package/dist/types/lib/view/tests/flights/23.1/app.checksum1.d.ts +0 -7
  127. package/dist/types/lib/view/tests/flights/latest/app.checksum.d.ts +0 -7
  128. package/dist/types/lib/view/tests/hotels/23.1/app.checksum.d.ts +0 -7
  129. package/dist/types/lib/view/tests/hotels/latest/app.checksum.d.ts +0 -7
  130. package/dist/types/lib/view/tests/loan/latest/index.d.ts +0 -11
  131. package/dist/types/lib/view/tests/microapp-v2.test.d.ts +0 -1
  132. package/dist/types/lib/view/tests/scriptingObjects/appraisalServiceModule.d.ts +0 -36
  133. package/dist/types/lib/view/tests/scriptingObjects/constant.d.ts +0 -1
  134. package/dist/types/lib/view/tests/scriptingObjects/global.d.ts +0 -9
  135. package/dist/types/lib/view/tests/scriptingObjects/loan.d.ts +0 -31
  136. package/dist/types/lib/view/tests/server.d.ts +0 -1
  137. package/dist/types/lib/view/tests/serverHandlers.d.ts +0 -5
  138. package/dist/types/lib/view/tests/task/latest/index.d.ts +0 -10
  139. package/dist/types/lib/view/tests/task/latest/index.dev.d.ts +0 -10
  140. package/dist/types/lib/view/tests/travelhub/23.1/app.checksum.d.ts +0 -7
  141. package/dist/types/lib/view/tests/travelhub/23.1/landing.checksum1.d.ts +0 -2
  142. package/dist/types/lib/view/tests/travelhub/latest/app.checksum.d.ts +0 -0
  143. package/dist/types/lib/view/tests/travelhub/latest/landing.checksum.d.ts +0 -0
  144. package/dist/types/lib/view/tests/utils.d.ts +0 -7
  145. /package/dist/types/lib/{view/tests/micro-iframe-app.test.d.ts → utils/micro-frontend/tests/guest-ssf-host.test.d.ts} +0 -0
@@ -1,51 +0,0 @@
1
- const appId = "flights";
2
- const appName = "Flights App";
3
- const getWindow = () => {
4
- try {
5
- window.parent.document;
6
- return window.parent;
7
- } catch (err) {
8
- return window;
9
- }
10
- };
11
- let host = null;
12
- let parentHistory = null;
13
- let logger = null;
14
- const browserWindow = getWindow();
15
- browserWindow.__TEST__ = browserWindow.__TEST__ ?? {
16
- logs: []
17
- };
18
- window.emui = window.emui || { uuid: crypto.randomUUID() };
19
- window.emui.app = {
20
- uuid: window.emui.uuid,
21
- init: async (options) => {
22
- browserWindow.__TEST__.logs.push(`${appId} initializing`);
23
- host = options.host;
24
- parentHistory = options.history;
25
- logger = options.logger;
26
- return Promise.resolve();
27
- },
28
- mount: async () => {
29
- browserWindow.__TEST__.logs.push(`${appId} mounting`);
30
- const mainElement = document.createElement("main");
31
- const pageHeaderEle = document.createElement("h1");
32
- pageHeaderEle.textContent = appName;
33
- pageHeaderEle.id = "header";
34
- mainElement.appendChild(pageHeaderEle);
35
- const versionEle = document.createElement("p");
36
- versionEle.textContent = "Version: Latest";
37
- versionEle.id = "version";
38
- mainElement.appendChild(versionEle);
39
- document.body.appendChild(mainElement);
40
- browserWindow.__TEST__.logs.push(`${appId} mounted`);
41
- return Promise.resolve();
42
- },
43
- unmount: () => {
44
- browserWindow.__TEST__.logs.push(`${appId} unmounting`);
45
- const mainEle = document.getElementsByTagName("main")[0];
46
- if (mainEle) mainEle.remove();
47
- browserWindow.__TEST__.logs.push(`${appId} unmounted`);
48
- return Promise.resolve();
49
- }
50
- };
51
- browserWindow.emui?.registerApp?.({ appId, app: window.emui.app });
@@ -1,4 +0,0 @@
1
- {
2
- "app.js": "latest/app.checksum.js",
3
- "app.css": "latest/app.checksum.css"
4
- }
@@ -1,3 +0,0 @@
1
- h1 {
2
- color: red;
3
- }
@@ -1,51 +0,0 @@
1
- const appId = "hotels";
2
- const appName = "Hotels App";
3
- const getWindow = () => {
4
- try {
5
- window.parent.document;
6
- return window.parent;
7
- } catch (err) {
8
- return window;
9
- }
10
- };
11
- let host = null;
12
- let parentHistory = null;
13
- let logger = null;
14
- const browserWindow = getWindow();
15
- browserWindow.__TEST__ = browserWindow.__TEST__ ?? {
16
- logs: []
17
- };
18
- window.emui = window.emui || { uuid: crypto.randomUUID() };
19
- window.emui.app = {
20
- uuid: window.emui.uuid,
21
- init: async (options) => {
22
- browserWindow.__TEST__.logs.push(`${appId} initializing`);
23
- host = options.host;
24
- parentHistory = options.history;
25
- logger = options.logger;
26
- return Promise.resolve();
27
- },
28
- mount: async () => {
29
- browserWindow.__TEST__.logs.push(`${appId} mounting`);
30
- const mainElement = document.createElement("main");
31
- const pageHeaderEle = document.createElement("h1");
32
- pageHeaderEle.textContent = appName;
33
- pageHeaderEle.id = "header";
34
- mainElement.appendChild(pageHeaderEle);
35
- const versionEle = document.createElement("p");
36
- versionEle.textContent = "Version: 23.1";
37
- versionEle.id = "version";
38
- mainElement.appendChild(versionEle);
39
- document.body.appendChild(mainElement);
40
- browserWindow.__TEST__.logs.push(`${appId} mounted`);
41
- return Promise.resolve();
42
- },
43
- unmount: () => {
44
- browserWindow.__TEST__.logs.push(`${appId} unmounting`);
45
- const mainEle = document.getElementsByTagName("main")[0];
46
- if (mainEle) mainEle.remove();
47
- browserWindow.__TEST__.logs.push(`${appId} unmounted`);
48
- return Promise.resolve();
49
- }
50
- };
51
- browserWindow.emui?.registerApp?.({ appId, app: window.emui.app });
@@ -1,4 +0,0 @@
1
- {
2
- "app.js": "23.1/app.checksum.js",
3
- "app.css": "23.1/app.checksum.css"
4
- }
@@ -1,3 +0,0 @@
1
- h1 {
2
- color: blue;
3
- }
@@ -1,51 +0,0 @@
1
- const appId = "hotels";
2
- const appName = "Hotels App";
3
- const getWindow = () => {
4
- try {
5
- window.parent.document;
6
- return window.parent;
7
- } catch (err) {
8
- return window;
9
- }
10
- };
11
- let host = null;
12
- let parentHistory = null;
13
- let logger = null;
14
- const browserWindow = getWindow();
15
- browserWindow.__TEST__ = browserWindow.__TEST__ ?? {
16
- logs: []
17
- };
18
- window.emui = window.emui || { uuid: crypto.randomUUID() };
19
- window.emui.app = {
20
- uuid: window.emui.uuid,
21
- init: async (options) => {
22
- browserWindow.__TEST__.logs.push(`${appId} initializing`);
23
- host = options.host;
24
- parentHistory = options.history;
25
- logger = options.logger;
26
- return Promise.resolve();
27
- },
28
- mount: async () => {
29
- browserWindow.__TEST__.logs.push(`${appId} mounting`);
30
- const mainElement = document.createElement("main");
31
- const pageHeaderEle = document.createElement("h1");
32
- pageHeaderEle.textContent = appName;
33
- pageHeaderEle.id = "header";
34
- mainElement.appendChild(pageHeaderEle);
35
- const versionEle = document.createElement("p");
36
- versionEle.textContent = "Version: Latest";
37
- versionEle.id = "version";
38
- mainElement.appendChild(versionEle);
39
- document.body.appendChild(mainElement);
40
- browserWindow.__TEST__.logs.push(`${appId} mounted`);
41
- return Promise.resolve();
42
- },
43
- unmount: () => {
44
- browserWindow.__TEST__.logs.push(`${appId} unmounting`);
45
- const mainEle = document.getElementsByTagName("main")[0];
46
- if (mainEle) mainEle.remove();
47
- browserWindow.__TEST__.logs.push(`${appId} unmounted`);
48
- return Promise.resolve();
49
- }
50
- };
51
- browserWindow.emui?.registerApp?.({ appId, app: window.emui.app });
@@ -1,4 +0,0 @@
1
- {
2
- "app.js": "latest/app.checksum.js",
3
- "app.css": "latest/app.checksum.css"
4
- }
@@ -1,115 +0,0 @@
1
- const appId = "loanapp";
2
- const appName = "Loan App";
3
- const appElementId = `pui-app-container-${appId}`;
4
- const pipelinePath = "/pipeline";
5
- const pipelineLinkText = "Pipeline";
6
- const getWindow = () => {
7
- let winObj = window;
8
- try {
9
- window.parent.document;
10
- winObj = window.parent;
11
- } catch (err) {
12
- }
13
- winObj.__TEST__ = winObj.__TEST__ ?? {};
14
- winObj.__TEST__.logs = winObj.__TEST__.logs ?? [];
15
- winObj.__TEST__[appId] = [];
16
- winObj.addTestLog = (log) => {
17
- winObj.__TEST__.logs.push(log);
18
- };
19
- winObj.addAppLog = (log) => {
20
- winObj.__TEST__[appId].push(log);
21
- };
22
- return winObj;
23
- };
24
- let host = null;
25
- let parentHistory = null;
26
- let logger = null;
27
- const browserWindow = getWindow(appId);
28
- window.__TEST__ = {};
29
- const setFrameSize = () => {
30
- const { document: document2 } = window;
31
- const iframeBody = document2.body;
32
- const iframeHTML = document2.documentElement;
33
- const size = {
34
- height: Math.max(
35
- iframeBody.scrollHeight,
36
- iframeBody.offsetHeight,
37
- iframeHTML.offsetHeight
38
- ),
39
- width: Math.max(
40
- iframeBody.scrollWidth,
41
- iframeBody.offsetWidth,
42
- iframeHTML.offsetWidth
43
- )
44
- };
45
- host.setAppWindowSize?.({
46
- appId,
47
- size
48
- });
49
- };
50
- window.emui = window.emui || { uuid: crypto.randomUUID() };
51
- window.emui.app = {
52
- uuid: window.emui.uuid,
53
- init: async (options) => {
54
- browserWindow.addTestLog(`${appId} initializing`);
55
- host = options.host;
56
- parentHistory = options.history;
57
- logger = options.logger;
58
- window.__TEST__.initOptions = options;
59
- setFrameSize();
60
- },
61
- mount: async (options) => {
62
- browserWindow.addTestLog(`${appId} mounting`);
63
- window.__TEST__.mountOptions = options;
64
- const appContainer = document.getElementById(appElementId);
65
- if (appContainer) {
66
- const mainElement = document.createElement("main");
67
- appContainer.appendChild(mainElement);
68
- const pageHeaderEle = document.createElement("h1");
69
- pageHeaderEle.textContent = appName;
70
- mainElement.appendChild(pageHeaderEle);
71
- const contentEle = document.createElement("p");
72
- contentEle.textContent = "Go to ";
73
- mainElement.appendChild(contentEle);
74
- const linkEle = document.createElement("a");
75
- linkEle.href = "#";
76
- linkEle.onclick = () => {
77
- parentHistory?.push?.(pipelinePath);
78
- };
79
- linkEle.textContent = pipelineLinkText;
80
- contentEle.appendChild(linkEle);
81
- browserWindow.addTestLog(`${appId} mounted`);
82
- const loanObj = await host.getObject("loan");
83
- if (loanObj) {
84
- const loanData = await loanObj.all();
85
- browserWindow.addAppLog(
86
- `loan.all():returns:${JSON.stringify(loanData)}`
87
- );
88
- host.subscribe({
89
- eventId: "loan.precommit",
90
- callback: (data) => {
91
- browserWindow.addAppLog(
92
- `loan.precommit:event:received: eventName:${data.eventName} eventParams:${JSON.stringify(data.eventParams)}`
93
- );
94
- return true;
95
- }
96
- });
97
- await loanObj.commit();
98
- }
99
- } else {
100
- throw new Error(
101
- `App container element with id ${appElementId} not found`
102
- );
103
- }
104
- },
105
- unmount: () => {
106
- browserWindow.addTestLog(`${appId} unmounting`);
107
- const appContainer = document.getElementById(appElementId);
108
- if (appContainer) {
109
- appContainer.removeChild(appContainer.getElementsByTagName("main")[0]);
110
- }
111
- browserWindow.addTestLog(`${appId} unmounted`);
112
- return Promise.resolve();
113
- }
114
- };
115
- browserWindow.emui?.registerApp?.({ appId, app: window.emui.app });
@@ -1,3 +0,0 @@
1
- {
2
- "index.js": "latest/index.js"
3
- }
@@ -1,67 +0,0 @@
1
- import {
2
- ScriptingObjectNames
3
- } from "@elliemae/pui-scripting-object";
4
- import { ScriptingObject, Event } from "@elliemae/microfe-common";
5
- class AppraisalService extends ScriptingObject {
6
- #loanId;
7
- #creditScore;
8
- Close = new Event({
9
- name: "Close",
10
- requiresFeedback: false,
11
- so: this
12
- });
13
- Unloading = new Event({
14
- name: "Unloading",
15
- requiresFeedback: false,
16
- so: this
17
- });
18
- onPreCommit = new Event({
19
- name: "onPreCommit",
20
- requiresFeedback: true,
21
- so: this
22
- });
23
- onSaved = new Event({
24
- name: "onSaved",
25
- requiresFeedback: false,
26
- so: this
27
- });
28
- constructor({
29
- loanId,
30
- creditScore
31
- }) {
32
- super(ScriptingObjectNames.Module);
33
- this.#loanId = loanId;
34
- this.#creditScore = creditScore;
35
- }
36
- getCapabilities = () => Promise.resolve({
37
- isAdmin: true,
38
- los: "Encompass"
39
- });
40
- getParameters = () => Promise.resolve({
41
- moduleId: "appraisalService",
42
- loanId: this.#loanId,
43
- creditScore: this.#creditScore
44
- });
45
- setCreditScore = (creditScore) => {
46
- this.#creditScore = creditScore;
47
- return Promise.resolve();
48
- };
49
- saveLoan = () => Promise.resolve();
50
- commit = () => new Promise((resolve) => {
51
- setTimeout(() => {
52
- resolve({ loanId: this.#loanId });
53
- }, 1e3);
54
- });
55
- delete = () => {
56
- throw new Error("Not implemented");
57
- };
58
- log = async (message, level) => {
59
- console.log(message, level);
60
- return Promise.resolve();
61
- };
62
- unload = async () => {
63
- };
64
- }
65
- export {
66
- AppraisalService
67
- };
@@ -1,4 +0,0 @@
1
- const UNLOADING_EVENT_NAME = "Unloading";
2
- export {
3
- UNLOADING_EVENT_NAME
4
- };
@@ -1,20 +0,0 @@
1
- import { ScriptingObject, Event } from "@elliemae/microfe-common";
2
- class Global extends ScriptingObject {
3
- #data = /* @__PURE__ */ new Map();
4
- constructor() {
5
- super("Global");
6
- }
7
- Change = new Event({
8
- name: "Change",
9
- requiresFeedback: false,
10
- so: this
11
- });
12
- set = (key, value) => {
13
- this.#data.set(key, value);
14
- return Promise.resolve();
15
- };
16
- get = (key) => Promise.resolve(this.#data.get(key) || "");
17
- }
18
- export {
19
- Global
20
- };
@@ -1,187 +0,0 @@
1
- import { ScriptingObject, Event } from "@elliemae/pui-app-bridge";
2
- class Loan extends ScriptingObject {
3
- #loanData;
4
- #appBridge;
5
- constructor(appBridge) {
6
- super("loan");
7
- this.#appBridge = appBridge;
8
- this.#loanData = {
9
- id: "1234567890",
10
- status: "active",
11
- loanAmount: 1e5,
12
- interestRate: 3.5,
13
- term: 30
14
- };
15
- window.__TEST__ = window.__TEST__ ?? {};
16
- window.__TEST__.soLogs = window.__TEST__.soLogs ?? [];
17
- }
18
- #log(message) {
19
- window.__TEST__.soLogs.push(message);
20
- }
21
- ApplicationSelected = new Event({
22
- name: "applicationselected",
23
- requiresFeedback: false,
24
- so: this
25
- });
26
- Close = new Event({
27
- name: "close",
28
- requiresFeedback: false,
29
- so: this
30
- });
31
- Change = new Event({
32
- name: "change",
33
- requiresFeedback: false,
34
- so: this
35
- });
36
- Committed = new Event({
37
- name: "committed",
38
- requiresFeedback: false,
39
- so: this
40
- });
41
- EditModeChange = new Event({
42
- name: "editmodechange",
43
- requiresFeedback: false,
44
- so: this
45
- });
46
- MilestoneCompleted = new Event({
47
- name: "milestonecompleted",
48
- requiresFeedback: false,
49
- so: this
50
- });
51
- Open = new Event({
52
- name: "open",
53
- requiresFeedback: false,
54
- so: this
55
- });
56
- PreCommit = new Event({
57
- name: "precommit",
58
- requiresFeedback: true,
59
- so: this
60
- });
61
- PreMilestoneComplete = new Event({
62
- name: "premilestonecomplete",
63
- requiresFeedback: true,
64
- so: this
65
- });
66
- Sync = new Event({
67
- name: "sync",
68
- requiresFeedback: false,
69
- so: this
70
- });
71
- all() {
72
- this.#log("loan.all");
73
- return Promise.resolve(this.#loanData);
74
- }
75
- applyLock(fieldId, lock) {
76
- this.#log(`loan.applyLock: fieldId: ${fieldId}, lock: ${String(lock)}`);
77
- return Promise.resolve();
78
- }
79
- calculate() {
80
- this.#log("loan.calculate");
81
- return Promise.resolve(this.#loanData);
82
- }
83
- async commit() {
84
- this.#log("loan.commit");
85
- const feedBack = await this.#appBridge.dispatchEvent({
86
- event: this.PreCommit,
87
- eventParams: {
88
- id: this.#loanData.id
89
- }
90
- });
91
- this.#log(`loan.precommit:event:feedback: ${JSON.stringify(feedBack)}`);
92
- if (feedBack.every((item) => item === true)) {
93
- this.#log("loan.commit:succeed");
94
- } else {
95
- this.#log("loan.commit:failed");
96
- }
97
- return this.#loanData.id;
98
- }
99
- execAction(type, params) {
100
- this.#log(
101
- `loan.execAction: type: ${type}, params: ${JSON.stringify(params)}`
102
- );
103
- return Promise.resolve({
104
- status: "success",
105
- message: "Action executed successfully"
106
- });
107
- }
108
- getCollection(name) {
109
- this.#log(`loan.getCollection: name: ${name}`);
110
- return Promise.resolve({
111
- name,
112
- data: [],
113
- id: "collection-id",
114
- objectType: "LoanCollection",
115
- removeAt: (index) => {
116
- this.#log(`loan.getCollection.removeAt: index: ${index}`);
117
- }
118
- });
119
- }
120
- getCurrentApplication() {
121
- this.#log("loan.getCurrentApplication");
122
- return Promise.resolve({
123
- ...this.#loanData,
124
- index: 0,
125
- legacyId: "legacy-id"
126
- });
127
- }
128
- getField(id) {
129
- this.#log(`loan.getField: id: ${id}`);
130
- return Promise.resolve(this.#loanData.name);
131
- }
132
- getFieldOptions(param) {
133
- this.#log(`loan.getFieldOptions: param: ${JSON.stringify(param)}`);
134
- return Promise.resolve({
135
- fieldId: [
136
- {
137
- id: "option1",
138
- label: "Option 1",
139
- name: "OptionName1",
140
- value: "OptionValue1"
141
- },
142
- {
143
- id: "option2",
144
- label: "Option 2",
145
- name: "OptionName2",
146
- value: "OptionValue2"
147
- }
148
- ]
149
- });
150
- }
151
- getFields(ids) {
152
- this.#log(`loan.getFields: ids: ${JSON.stringify(ids)}`);
153
- const fields = ids.reduce((acc, id) => {
154
- acc[id] = this.#loanData.name;
155
- return acc;
156
- }, {});
157
- return Promise.resolve(fields);
158
- }
159
- isReadOnly() {
160
- this.#log("loan.isReadOnly");
161
- return Promise.resolve(false);
162
- }
163
- merge() {
164
- this.#log("loan.merge");
165
- return Promise.resolve();
166
- }
167
- setCurrentApplication(options) {
168
- this.#log(
169
- `loan.setCurrentApplication: options: ${JSON.stringify(options)}`
170
- );
171
- return Promise.resolve();
172
- }
173
- setEditMode(options) {
174
- this.#log(`loan.setEditMode: options: ${JSON.stringify(options)}`);
175
- return Promise.resolve();
176
- }
177
- setFields(fields) {
178
- this.#log(`loan.setFields: fields: ${JSON.stringify(fields)}`);
179
- Object.keys(fields).forEach((key) => {
180
- const field = fields[key];
181
- });
182
- return Promise.resolve();
183
- }
184
- }
185
- export {
186
- Loan
187
- };
@@ -1,9 +0,0 @@
1
- import { setupServer } from "msw/node";
2
- import { serverHandlers } from "./serverHandlers.js";
3
- const initServer = () => {
4
- const server = setupServer(...serverHandlers);
5
- return server;
6
- };
7
- export {
8
- initServer
9
- };