@elliemae/pui-app-sdk 5.21.0-beta.7 → 5.21.1

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 (149) hide show
  1. package/dist/cjs/analytics/index.js +1 -2
  2. package/dist/cjs/index.js +0 -3
  3. package/dist/cjs/utils/app-config/config.js +4 -4
  4. package/dist/cjs/utils/decorators/functionDecorators.js +35 -2
  5. package/dist/cjs/utils/decorators/index.js +2 -1
  6. package/dist/cjs/utils/micro-frontend/guest.js +14 -101
  7. package/dist/cjs/{view/tests/scriptingObjects/constant.js → utils/micro-frontend/host-app.js} +10 -5
  8. package/dist/cjs/utils/micro-frontend/host.js +3 -36
  9. package/dist/cjs/utils/micro-frontend/scripting-objects/analytics.js +12 -2
  10. package/dist/cjs/{view/tests/utils.js → utils/micro-frontend/ssfguest-adapter.js} +29 -34
  11. package/dist/cjs/utils/testing/index.js +1 -15
  12. package/dist/cjs/view/micro-iframe-app/iframe/index.js +1 -1
  13. package/dist/cjs/view/micro-iframe-app/iframe.html +1 -5
  14. package/dist/cjs/view/micro-iframe-app/use-frame-loaded.js +1 -3
  15. package/dist/esm/analytics/index.js +1 -2
  16. package/dist/esm/index.js +1 -7
  17. package/dist/esm/utils/app-config/config.js +4 -4
  18. package/dist/esm/utils/decorators/functionDecorators.js +35 -2
  19. package/dist/esm/utils/decorators/index.js +4 -2
  20. package/dist/esm/utils/micro-frontend/guest.js +14 -101
  21. package/dist/esm/utils/micro-frontend/host-app.js +9 -0
  22. package/dist/esm/utils/micro-frontend/host.js +3 -36
  23. package/dist/esm/utils/micro-frontend/scripting-objects/analytics.js +2 -2
  24. package/dist/esm/utils/micro-frontend/ssfguest-adapter.js +28 -0
  25. package/dist/esm/utils/testing/index.js +1 -5
  26. package/dist/esm/view/micro-iframe-app/iframe/index.js +1 -1
  27. package/dist/esm/view/micro-iframe-app/iframe.html +1 -5
  28. package/dist/esm/view/micro-iframe-app/use-frame-loaded.js +1 -3
  29. package/dist/types/lib/index.d.ts +1 -2
  30. package/dist/types/lib/utils/decorators/functionDecorators.d.ts +28 -0
  31. package/dist/types/lib/utils/decorators/index.d.ts +2 -1
  32. package/dist/types/lib/utils/micro-frontend/guest.d.ts +11 -46
  33. package/dist/types/lib/utils/micro-frontend/host-app.d.ts +11 -0
  34. package/dist/types/lib/utils/micro-frontend/host.d.ts +10 -27
  35. package/dist/types/lib/utils/micro-frontend/scripting-objects/analytics.d.ts +2 -2
  36. package/dist/types/lib/utils/micro-frontend/ssfguest-adapter.d.ts +7 -0
  37. package/dist/types/lib/utils/micro-frontend/types.d.ts +1 -2
  38. package/dist/types/lib/utils/testing/index.d.ts +1 -57
  39. package/dist/types/lib/utils/window.d.ts +6 -13
  40. package/dist/types/lib/view/micro-app/index.d.ts +0 -5
  41. package/dist/types/lib/view/micro-iframe-app/index.d.ts +0 -5
  42. package/dist/types/tsconfig.tsbuildinfo +1 -1
  43. package/package.json +48 -43
  44. package/dist/cjs/utils/micro-frontend/app-bridge.js +0 -40
  45. package/dist/cjs/utils/micro-frontend/tests/app.config.json +0 -200
  46. package/dist/cjs/utils/micro-frontend/tests/utils.js +0 -116
  47. package/dist/cjs/view/guest-microapp.js +0 -126
  48. package/dist/cjs/view/tests/__snapshots__/guest-microapp.test.tsx.snap +0 -21
  49. package/dist/cjs/view/tests/__snapshots__/micro-iframe-app.test.tsx.snap +0 -208
  50. package/dist/cjs/view/tests/app.config.json +0 -200
  51. package/dist/cjs/view/tests/constants.js +0 -44
  52. package/dist/cjs/view/tests/flights/23.1/app.checksum1.css +0 -3
  53. package/dist/cjs/view/tests/flights/23.1/app.checksum1.js +0 -52
  54. package/dist/cjs/view/tests/flights/23.1/manifest.json +0 -4
  55. package/dist/cjs/view/tests/flights/latest/app.checksum.css +0 -3
  56. package/dist/cjs/view/tests/flights/latest/app.checksum.js +0 -52
  57. package/dist/cjs/view/tests/flights/latest/manifest.json +0 -4
  58. package/dist/cjs/view/tests/hotels/23.1/app.checksum.css +0 -3
  59. package/dist/cjs/view/tests/hotels/23.1/app.checksum.js +0 -52
  60. package/dist/cjs/view/tests/hotels/23.1/manifest.json +0 -4
  61. package/dist/cjs/view/tests/hotels/latest/app.checksum.css +0 -3
  62. package/dist/cjs/view/tests/hotels/latest/app.checksum.js +0 -52
  63. package/dist/cjs/view/tests/hotels/latest/manifest.json +0 -4
  64. package/dist/cjs/view/tests/loan/latest/index.js +0 -116
  65. package/dist/cjs/view/tests/loan/latest/manifest.json +0 -3
  66. package/dist/cjs/view/tests/scriptingObjects/appraisalServiceModule.js +0 -85
  67. package/dist/cjs/view/tests/scriptingObjects/global.js +0 -40
  68. package/dist/cjs/view/tests/scriptingObjects/loan.js +0 -207
  69. package/dist/cjs/view/tests/server.js +0 -29
  70. package/dist/cjs/view/tests/serverHandlers.js +0 -210
  71. package/dist/cjs/view/tests/task/latest/index.dev.js +0 -67
  72. package/dist/cjs/view/tests/task/latest/index.js +0 -67
  73. package/dist/cjs/view/tests/task/latest/manifest.json +0 -4
  74. package/dist/cjs/view/tests/travelhub/23.1/app.checksum.css +0 -3
  75. package/dist/cjs/view/tests/travelhub/23.1/app.checksum.js +0 -25
  76. package/dist/cjs/view/tests/travelhub/23.1/landing.checksum1.css +0 -3
  77. package/dist/cjs/view/tests/travelhub/23.1/landing.checksum1.js +0 -6
  78. package/dist/cjs/view/tests/travelhub/23.1/manifest.json +0 -6
  79. package/dist/cjs/view/tests/travelhub/latest/app.checksum.css +0 -3
  80. package/dist/cjs/view/tests/travelhub/latest/app.checksum.js +0 -30
  81. package/dist/cjs/view/tests/travelhub/latest/landing.checksum.css +0 -3
  82. package/dist/cjs/view/tests/travelhub/latest/landing.checksum.js +0 -8
  83. package/dist/cjs/view/tests/travelhub/latest/manifest.json +0 -6
  84. package/dist/esm/utils/micro-frontend/app-bridge.js +0 -20
  85. package/dist/esm/utils/micro-frontend/tests/app.config.json +0 -200
  86. package/dist/esm/utils/micro-frontend/tests/utils.js +0 -96
  87. package/dist/esm/view/guest-microapp.js +0 -96
  88. package/dist/esm/view/tests/__snapshots__/guest-microapp.test.tsx.snap +0 -21
  89. package/dist/esm/view/tests/__snapshots__/micro-iframe-app.test.tsx.snap +0 -208
  90. package/dist/esm/view/tests/app.config.json +0 -200
  91. package/dist/esm/view/tests/constants.js +0 -24
  92. package/dist/esm/view/tests/flights/23.1/app.checksum1.css +0 -3
  93. package/dist/esm/view/tests/flights/23.1/app.checksum1.js +0 -51
  94. package/dist/esm/view/tests/flights/23.1/manifest.json +0 -4
  95. package/dist/esm/view/tests/flights/latest/app.checksum.css +0 -3
  96. package/dist/esm/view/tests/flights/latest/app.checksum.js +0 -51
  97. package/dist/esm/view/tests/flights/latest/manifest.json +0 -4
  98. package/dist/esm/view/tests/hotels/23.1/app.checksum.css +0 -3
  99. package/dist/esm/view/tests/hotels/23.1/app.checksum.js +0 -51
  100. package/dist/esm/view/tests/hotels/23.1/manifest.json +0 -4
  101. package/dist/esm/view/tests/hotels/latest/app.checksum.css +0 -3
  102. package/dist/esm/view/tests/hotels/latest/app.checksum.js +0 -51
  103. package/dist/esm/view/tests/hotels/latest/manifest.json +0 -4
  104. package/dist/esm/view/tests/loan/latest/index.js +0 -115
  105. package/dist/esm/view/tests/loan/latest/manifest.json +0 -3
  106. package/dist/esm/view/tests/scriptingObjects/appraisalServiceModule.js +0 -67
  107. package/dist/esm/view/tests/scriptingObjects/constant.js +0 -4
  108. package/dist/esm/view/tests/scriptingObjects/global.js +0 -20
  109. package/dist/esm/view/tests/scriptingObjects/loan.js +0 -187
  110. package/dist/esm/view/tests/server.js +0 -9
  111. package/dist/esm/view/tests/serverHandlers.js +0 -180
  112. package/dist/esm/view/tests/task/latest/index.dev.js +0 -66
  113. package/dist/esm/view/tests/task/latest/index.js +0 -66
  114. package/dist/esm/view/tests/task/latest/manifest.json +0 -4
  115. package/dist/esm/view/tests/travelhub/23.1/app.checksum.css +0 -3
  116. package/dist/esm/view/tests/travelhub/23.1/app.checksum.js +0 -24
  117. package/dist/esm/view/tests/travelhub/23.1/landing.checksum1.css +0 -3
  118. package/dist/esm/view/tests/travelhub/23.1/landing.checksum1.js +0 -5
  119. package/dist/esm/view/tests/travelhub/23.1/manifest.json +0 -6
  120. package/dist/esm/view/tests/travelhub/latest/app.checksum.css +0 -3
  121. package/dist/esm/view/tests/travelhub/latest/app.checksum.js +0 -29
  122. package/dist/esm/view/tests/travelhub/latest/landing.checksum.css +0 -3
  123. package/dist/esm/view/tests/travelhub/latest/landing.checksum.js +0 -7
  124. package/dist/esm/view/tests/travelhub/latest/manifest.json +0 -6
  125. package/dist/esm/view/tests/utils.js +0 -33
  126. package/dist/types/lib/utils/micro-frontend/app-bridge.d.ts +0 -4
  127. package/dist/types/lib/utils/micro-frontend/tests/utils.d.ts +0 -39
  128. package/dist/types/lib/view/guest-microapp.d.ts +0 -13
  129. package/dist/types/lib/view/tests/constants.d.ts +0 -11
  130. package/dist/types/lib/view/tests/flights/23.1/app.checksum1.d.ts +0 -7
  131. package/dist/types/lib/view/tests/flights/latest/app.checksum.d.ts +0 -7
  132. package/dist/types/lib/view/tests/hotels/23.1/app.checksum.d.ts +0 -7
  133. package/dist/types/lib/view/tests/hotels/latest/app.checksum.d.ts +0 -7
  134. package/dist/types/lib/view/tests/loan/latest/index.d.ts +0 -11
  135. package/dist/types/lib/view/tests/micro-iframe-app.test.d.ts +0 -1
  136. package/dist/types/lib/view/tests/scriptingObjects/appraisalServiceModule.d.ts +0 -36
  137. package/dist/types/lib/view/tests/scriptingObjects/constant.d.ts +0 -1
  138. package/dist/types/lib/view/tests/scriptingObjects/global.d.ts +0 -9
  139. package/dist/types/lib/view/tests/scriptingObjects/loan.d.ts +0 -31
  140. package/dist/types/lib/view/tests/server.d.ts +0 -1
  141. package/dist/types/lib/view/tests/serverHandlers.d.ts +0 -5
  142. package/dist/types/lib/view/tests/task/latest/index.d.ts +0 -10
  143. package/dist/types/lib/view/tests/task/latest/index.dev.d.ts +0 -10
  144. package/dist/types/lib/view/tests/travelhub/23.1/app.checksum.d.ts +0 -7
  145. package/dist/types/lib/view/tests/travelhub/23.1/landing.checksum1.d.ts +0 -2
  146. package/dist/types/lib/view/tests/travelhub/latest/app.checksum.d.ts +0 -0
  147. package/dist/types/lib/view/tests/travelhub/latest/landing.checksum.d.ts +0 -0
  148. package/dist/types/lib/view/tests/utils.d.ts +0 -7
  149. /package/dist/types/lib/{view/tests/guest-microapp.test.d.ts → utils/micro-frontend/tests/guest-ssf-host.test.d.ts} +0 -0
@@ -1,4 +0,0 @@
1
- {
2
- "app.js": "23.1/app.checksum1.js",
3
- "app.css": "23.1/app.checksum1.css"
4
- }
@@ -1,3 +0,0 @@
1
- h1 {
2
- color: green;
3
- }
@@ -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
- };